1 个不稳定版本
0.1.0 | 2022 年 5 月 6 日 |
---|
#37 in #did
在 2 个 crate 中使用 (通过 vade-sidetree)
31KB
714 行
Rust 客户端库,用于管理 Sidetree API 服务中的 DID 操作
此库提供了一套客户端服务,用于帮助处理与 Sidetree REST API 的 DID 操作。目标是使用跨平台库提供基于 Sidetree 的 DID 方法。
要求
此库需要 sidetree 节点正在运行并公开 API 接口。请检查 ION 和 Element 实现,以在本地运行节点。
用法
您可以直接在您的代码中使用此库,或使用提供的 CLI 在控制台生成请求。
在您的代码中使用此库
从 crates.io 安装
sidetree-client = "*"
从终端使用 CLI
使用以下命令安装 CLI
cargo install sidetree-client
生成 create
请求
sidetree-client create
查看所有支持的命令列表
sidetree-client --help
规范
Sidetree 操作
此库提供与 API 规范兼容的对象。可以使用 Rust 的 serde_json
crate 将这些对象转换为 JSON。
创建操作
要生成新的 DID,可以使用 create()
或 create_config(OperationInput)
方法。
创建新的 DID
要生成新的 DID 请求,请使用 create()
函数。它将生成一个请求和文档,带有用于 secp256k1
曲线的随机 EC 密钥
use sidetree_client::*;
let create_operation = operations::create().unwrap();
// generate JSON request for use with API spec
let json = serde_json::to_string_pretty(&create_operation.operation_request);
println!("did:ion:{}", create_operation.did_suffix);
println!("{}", json);
此操作返回一个类型为 OperationOutput
的对象,该对象具有以下字段
operation_request
- 一个可以序列化为JSON并发送到Sidetree服务POST /operations
端点的对象did_suffix
- 这是你DID中标识符的唯一DID后缀。你应该将其附加到你的DID上以获取完整的DID标识符,例如:did:ion:123abc
signing_key
- 此字段将包含将成为你的DID文档一部分的随机密钥。默认情况下,此密钥将为类型EcdsaSecp256k1VerificationKey2019
,密钥ID为key-1
。要传递自己的密钥,请使用create_config()
方法update_key
- 此密钥是更新你的DID文档所必需的。它不会成为你的公共DID文档的一部分,它仅用于Sidetree操作。请将此密钥存储在安全的地方。recovery_key
- 此密钥是恢复对你的DID文档访问所必需的。它不会成为你的公共DID文档的一部分,它仅用于Sidetree操作。请将此密钥存储在安全的地方。
更新操作
将密钥添加到你的DID文档
待办事项
从你的DID文档中删除密钥
待办事项
将服务条目添加到你的DID文档
待办事项
从你的DID文档中删除服务条目
待办事项
恢复操作
待办事项
停用操作
待办事项
许可证
依赖项
~3–4.5MB
~84K SLoC