sismo-protocol - シスモ認証プロトコルの契約

(Contracts of the Sismo Attestation Protocol )

Created at: 2022-06-16 23:46:44
Language: TypeScript
License: MIT

ロゴ

シスモ議定書契約

シスモ


このリポジトリには、Sismoプロトコルのスマートコントラクトが含まれています。

コア契約には次の 3 つがあります。

  • core/AttestationsRegistry.sol
    : レジストリにはすべての証明が格納されます。これは、発行者が記録することを許可/許可しないガバナンスによって所有されています
  • core/Attester.sol
    標準の抽象契約は、アテスターによって継承されなければなりません。証明者は証明の発行者です。ユーザーの要求を確認し、レジストリに記録される構成証明を作成します
  • core/Badges.sol
    レジストリを読み取ります。構成証明のステートレスな譲渡不可能なトークン ビュー (ERC1155)

また、次のアテスターの実装も含まれています。

attesters/

  • HydraS1SimpleAttester.sol
    :ハイドラS1証明スキームとチケット(無効化子)の概念を使用したZKアテスター。ユーザーは、構成証明を生成するために、要求に沿ってZKプルーフを提供する必要があります
  • HydraS1AccountboundAttester.sol
    :シンプルハイドラS1シンプルアテスターのアカウントバウンドバージョン。(ユーザーは、構成証明が保存されている場所を自由に更新できます)



シスモプロトコル

プロトコルの完全な概要は、ドキュメントで入手できます。

デプロイされたコントラクト

デプロイされたコントラクトはここにあります

使い

取り付け

yarn

契約書のコンパイル

ハードハットを使用して契約書を編集する

yarn compile

試験

すべてのテストを起動する

yarn test

印刷ストレージレイアウト

yarn storage-layout

ローカルチェーンにデプロイする

ターミナルタブ 1

yarn chain

ターミナルタブ 2

yarn deploy:local

新しいアテスターを作成する

新しいアテスターを開発するには、抽象契約を継承し、以下の機能を実装する必要があります。

core/Attester.sol

  • _verifyRequest(request, proofData)
    : ユーザーから提供された証明に対してユーザー要求の検証を実装する必要があります
  • buildAttestations(request, proofData)
    : 検証済みユーザーの要求から記録される構成証明を作成する必要があります

実装できるオプションのフック関数は他にもあります。

  • _beforeRecordAttestations(request, proofData)
  • _afterRecordAttestations(request, proofData)

は、これらの機能を実装するアテスターの良い例です。

/attesters/hydra-s1/HydraS1SimpleAttester.sol

ガイドはドキュメントで提供されています。

新しいアテスターと一緒にPRを自由に開いてください!

/attester

ライセンス

MITライセンスの下で配布されています。

貢献する

問題やPRを開くか、単にフィードバックを提供してください!

接触

不和ツイッターを好む


底