#decentralized-identity #did #document #toolkit #specification #compliant #w3c

bin+lib did-toolkit

did-toolkit 是符合W3C '去中心化身份文档'规范的 did-core 实现

2 个不稳定版本

0.2.0 2023年5月3日
0.1.0 2023年4月28日

#2103 in Web编程

每月33次下载

MIT 许可证

120KB
2.5K SLoC

did-toolkit:Rust语言中用于去中心化身份文档的工具集

DID 是一个相对较新的去中心化身份规范。这个工具集旨在尽可能多地支持该规范,让您能够构建符合规范的服务和其他工具。

该工具集努力最大化与 did-core 的合规性,并最终符合 did-method-web 规范。还包括去中心化身份基金会规范,如 DWN 以及其他我希望能跟进的规范。

当前支持的功能

  • DID(仅标识符)语法
    • 从字符串解析
    • 从预填充的结构生成
    • 在提供额外的URL属性时,从DID构建DID URL
  • DID URL(不同于DID)
    • 解析绝对URL,并将相对URL映射到绝对URL
    • 从预填充的结构生成
    • 分解成URL所构成的DID
  • DID文档序列化和反序列化
    • 初步支持 注册支持类型
      • 出于实现安全的考虑,省略了有“问题”的类型
    • 能够生成P256曲线的JWK ECDSA密钥。更多功能即将到来。
  • 初步、基本、内存中的注册。提供
    • 将文档映射到DID
    • 将complementary DIDs中的alsoKnownAs交叉引用为等效
    • 控制器验证
    • 查找验证方法
    • 按需缓存远程文档
    • 从JSON或CBOR加载文档
  • 命令行工具 did-toolkit 生成用于模糊测试您的注册或DID合规实现的文档
    • 通过 alsoKnownAscontroller 属性生成互连文档
    • 为每个需要它们的属性生成验证方法
      • 对于也可以使用DID URL代替验证方法的属性,偶尔生成属性属性,这些属性只是链接到其他验证方法
    • 它还生成了不合规于UTF-8的ASCII百分编码DID
      • 可能会破坏一些使用UTF-8字符串解析这些DID的实现
    • 可选生成到CBOR(默认为JSON)

计划功能

关于一般支持

  • 格式消耗
    • 由于现有的JSON-LD解析器实现需要非标准的JSON库,这些库不能与其他任何东西集成,包括用于定位远程文档的reqwest,因此不计划支持JSON-LD。如果有人设计了一个我可以简单消费的JSON-LD实现,我会感到困扰。作为一个曾经饱受XML标准折磨的消费者,我对这个标准有个人和尖锐的感受,我绝对不尝试自己实现它。

作者

Erik Hollensbe [email protected]

许可证

MIT

依赖项

~11-26MB
~413K SLoC