当前位置: 首页 > news >正文

zkPass案例实战之合约篇

目录

一、contracts/contracts/ProofVerifier.sol

1. License 和 Solidity 版本

2. 导入依赖

3. 合约声明和默认分配器地址

4. 验证证明

5. 验证分配器签名

6. 验证验证者签名

7. 签名前缀处理

8. 签名恢复

总结

二、contracts/contracts/SampleAttestation.sol

1. License 和 Solidity 版本

2. 导入依赖

3. Attestation 结构体

4. 合约声明和存储

5. 构造函数

6. 创建声明

功能:

7. 获取声明

8. 生成 UID

总结

三、contracts/contracts/Common.sol


一、contracts/contracts/ProofVerifier.sol

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;import {Proof} from "./Common.sol";contract ProofVerifier {address public defaultAllocator = 0x19a567b3b212a5b35bA0E3B600FbEd5c2eE9083d;constructor() {}function verify(Proof calldata _proof) public view returns (bool) {return (verifyAllocatorSignature(_proof.taskId, _proof.schemaId, _proof.validator, _proof.allocatorSignature) &&verifyValidatorSignature(

相关文章:

  • 【论文#目标检测】Attention Is All You Need
  • 【泊松过程和指数分布】
  • 力扣DAY63-67 | 热100 | 二分:搜索插入位置、搜索二维矩阵、排序数组查找元素、搜索旋转排序数组、搜索最小值
  • OpenCV 图形API(52)颜色空间转换-----将 NV12 格式的图像数据转换为 RGB 格式的图像
  • 计算机视觉基础
  • 提高Spring Boot开发效率的实践
  • MsQuick编译和使用
  • c++概念——模板的进阶讲解
  • django软件开发招聘数据分析与可视化系统设计与实现(源码+lw+部署文档+讲解),源码可白嫖!
  • 香港科技大学广州|金融科技学域博士招生宣讲会—南开大学专场
  • ThinkPHP快速使用手册
  • VUE的创建
  • 【C语言】文本操作函数fgetc、fputc、fgets、fputs、fprintf、fscanf、fread、fwrite
  • 【Linux应用】RADXA ZERO 3快速上手:镜像烧录、串口shell、外设挂载、WiFi配置、SSH连接、文件交互
  • JavaEE学习笔记(第二课)
  • linux磁盘挂载
  • 【25软考网工】第三章(2)以太网帧结构与封装、以太网物理层标准
  • Java 集合:泛型、Set 集合及其实现类详解
  • 信息系统项目管理工程师备考计算类真题讲解六
  • 用交换机连接两台电脑,电脑A读取/写电脑B的数据
  • 上海车展迎来超百款首发新车,全市多区开展汽车促消费活动
  • 打造“旧书朋友圈”,“淘书乐”为旧书找“新朋友”
  • “75后”遂宁市长刘会英调任四川省人社厅党组副书记
  • 蔚来第三品牌萤火虫上市:对标宝马MINI,预期贡献10%销量
  • AI换脸侵权案入选最高法典型案例:明晰人工智能使用边界
  • 史蒂夫·麦奎因透露罹患前列腺癌,呼吁同胞莫受困于男性气概