Sismo Badge Minting Protocol 使用教程
1. 项目介绍
Sismo Badge Minting Protocol 是一个用于创建和管理数字徽章的智能合约协议。该项目的主要目标是提供一个去中心化的平台,允许用户通过验证其身份或其他特定条件来获得独特的数字徽章。这些徽章可以用于各种场景,如身份验证、社区参与证明等。
该项目的主要智能合约包括:
AttestationsRegistry.sol
: 存储所有验证记录的注册表,由治理合约管理。Attester.sol
: 抽象合约,必须由验证者继承,用于验证用户请求并生成验证记录。Badges.sol
: 读取注册表,提供不可转移的ERC1155代币视图。
2. 项目快速启动
安装依赖
首先,克隆项目仓库并安装依赖:
git clone https://github.com/sismo-core/sismo-badges.git
cd sismo-badges
yarn install
编译合约
使用 Hardhat 编译合约:
yarn compile
启动本地测试链
在终端中启动本地测试链:
yarn chain
部署合约到本地链
在另一个终端中部署合约到本地链:
yarn deploy:local
运行测试
运行所有测试以确保一切正常:
yarn test
3. 应用案例和最佳实践
应用案例
- 身份验证:用户可以通过提供ZK证明来验证其身份,并获得相应的徽章。
- 社区参与:社区成员可以通过参与特定活动或完成任务来获得徽章,作为其参与的证明。
最佳实践
- 安全性:确保所有验证逻辑和ZK证明的生成过程都是安全的,防止恶意用户伪造徽章。
- 可扩展性:设计验证系统时,考虑未来的扩展需求,确保系统能够支持更多的验证者和用户。
4. 典型生态项目
- HydraS1SimpleAttester:使用Hydra S1证明方案的简单验证者,用户必须提供ZK证明以生成验证记录。
- HydraS1AccountboundAttester:账户绑定的Hydra S1简单验证者,用户可以随时更新验证记录的存储位置。
这些项目展示了如何在Sismo Badge Minting Protocol上构建自定义验证者,并为不同的应用场景提供解决方案。