梳理下BSN-DID提供的能力
1 DID
创建公钥、私钥
本地手动计算DID,服务端创建DID
验证DID 标识符
2 DOC
手动组装DOC, 通过类DidDocument创建DOC,
验证DOC: 对离线生成的DOC进行内容格式和签名值的验证
DOC上链:存储到链上。
访问DOC: 任何人都可通过DID标识符查询链上对应的DID Document。可用于验证DID身份、获取DID公钥。
密钥更新: 用备私钥更新主私钥
3 发证方
注册发证方
查询发证方
4 凭证模板
注册凭证模板
查询凭证模板,查询凭证模板列表
更新凭证模板
5 凭证VC
签发凭证
验证: 一般由验证方调用,可验证某个凭证是否有效。分别验证凭证的签名、凭证是否过期、凭证是否吊销。
吊销:由发证方调用,对已签发的某个凭证进行吊销或者作废。由于已签发的凭证已经由用户保管,所以吊销凭证后将对其凭证ID进行上链。
查询已吊销的凭证:验证凭证时调用。通过发证方的DID标识符,查出其所有已吊销的凭证ID。
无法查询已颁发的凭证???
6 隐私区域--数据保护区,称之为Hub,Hub内的数据受加密
隐私区域的操作者称之为用户, 提供三种注册方式:使用DID注册、公钥注册、自定义id注册, 注册后生成uid。
资源: 要保护的数据内容称之为资源, 需要加密存储。
保存资源涉及到操作者uid、拥有者owner两方。 举个详细例子:
发证方给用户did颁发了一个凭证VC, 现在想把凭证VC保存在Hub内供其他人访问,那么这个凭证VC就是资源。
如果用户自己保存资源,那么操作者uid是自己did,拥有者也是自己did。 这属于操作者和拥有者二合一
如果是发证方保存资源,那么操作者uid是发证方did, 拥有者是用户did。 这属于操作者和拥有者分离。
资源: 存储、删除、获取、变更所有者、查询资源操作历史、解密内容
权限:可读、可写、可修改。 资源的Owner为第三方访问Hub内的资源所创建的权限
创建、删除、
查询授权记录:owner查询自己创建过的权限列表
查询被授权记录: 别人授权给自己的记录。