为什么indy / sovrin在分类帐中存储声明/可验证凭证/证明

问题描述 投票:0回答:1

视频和文档总是说声明存储在分类帐中,但仅存储在“凭据定义”或“模式和声明定义”中。这真的需要吗?

hyperledger-fabric hyperledger hyperledger-indy
1个回答
2
投票
  • 由于可验证凭证通常包含私有数据,因此可验证的声明不会存储在分类帐中。
  • 凭证架构写在分类帐上。它们不包含任何私有数据,仅指定特定类型的文档包含的内容。例如,它可能指定驾驶执照文件应包含持有人的姓名,出生日期,以及持有人有资格驾驶的车辆类别。模式只是一个模板,根据该模板,发行人可以发布可验证的声明。
  • 凭证定义也写在分类帐上。它也不包含任何私人数据。凭证定义链接到1 Credential Schema(必须已存在于分类帐中)。凭证定义包含发行人用于发出特定类型的可验证声明的公钥。

上下文的示例

  • 政府决定该国的每所大学文凭都有以下领域:NameSurnameUniversity nameProgramDegree。他们在分类帐上写了Credential Schema Diploma:1.0.0。任何人都可以看到文凭的样子。大学可以用它来为学生颁发文凭(作为可核实的证书)。
  • Faber Uni.是该国的大学。它想根据政府规定文凭应该如何发行大学学位。所以Faber Uni写了分类帐凭证定义Faber:Diploma:1.0.0。此凭证定义还包含123的公钥Faber Uni,用于颁发此类凭证(Faber Uni将安全地保留私有部分456)。每次Faber Uni颁发学生证书作为可验证的证书时,它都会使用密钥的私有部分456签署数据。
  • Faber Uni为其毕业生Bob颁发文凭时,在分类帐上没有这个事件的痕迹。 Faber Uni只使用私钥Diploma:1.0.0签署符合456模式的文件,该模式位于分类帐上,其公共对应123位于分类帐上。
  • 现在,Bob希望在Abcd找到一份工作,并被要求证明他的教育。他提交了由Faber Uni发布的凭证,并将其安全地存储在他的设备上。 Abcd可以从分类帐Faber Uni的文凭签名密钥中读取并使用它来验证Bob提出的可验证索赔的签名。