19 个版本 (4 个破坏性更新)
0.5.0 | 2024 年 7 月 1 日 |
---|---|
0.4.0 | 2024 年 5 月 7 日 |
0.3.0 | 2024 年 3 月 31 日 |
0.2.4 | 2023 年 12 月 23 日 |
0.1.4 | 2023 年 6 月 18 日 |
#71 在 #cbor
每月下载量 480
用于 6 crates
29KB
441 行
区块链通用统一资源 ("UR") 用于 Rust
由 Wolf McNally 编写
简介
统一资源 (UR) 是 Blockchain Commons 开发的 URI 编码的 CBOR 结构。这个 crate 是由 Dominik Spicher 开发的 ur crate 的一个有观点的包装,主要用于 Blockchain Commmons 的更高级项目,如 Gordian Envelope。
UR 规范要求 UR 中的 CBOR 编码符合 Gordian dCBOR,这是目前指定在 这个 IETF 互联网草案 中的 CBOR 的确定性配置文件。可以直接使用 dcbor
crate 来实现这个目的。这个 crate 提供了基于 dcbor
crate 的特质的特质,如 CBORTaggedEncodable
和 CBORTaggedDecodable
,提供了 UREncodable
、URDecodable
和 URCodable
。强烈建议 UR 的采用者为其类型实现这些特质。
这个 crate 目前不提供使用喷泉码的多部分 UR 的有观点的便利性,但可以直接使用 ur
crate 来实现这个目的。
入门
[dependencies]
bc-ur = "0.5.0"
规范
UR 的主要规范是 BCR-2020-005: Uniform Resources 和 Swift 实现 URKit。
相关项目
使用此 crate 的高层 Blockchain Commons 项目包括
状态 - 社区审查
bc-ur
目前处于社区评审阶段。我们非常感谢您考虑并/或测试这些库。显然,如果您发现任何错误或问题,请让我们知道。但也请告诉我们,API 是否满足您的需求,功能是否易于使用,Rust 的使用是否感觉得到了适当的标准化,以及这个库是否解决了您在进行此类编码时遇到的问题。同时,也请告诉我们如何改进以及您还需要什么才能使其完全符合您的使用需求。您可以在 Gordian 开发者社区 中发表评论。
由于这个库仍在社区评审阶段,它不应在生产任务中使用,直到经过进一步测试和审计。
财务支持
bc-ur
是 Blockchain Commons 的一个项目。我们自豪地是一个“非营利性”的社会福利公司,致力于开源和开放开发。我们的工作完全由捐赠和与您这样的人的协作伙伴关系资助。每一笔捐款都将用于构建支持并推动区块链和互联网安全基础设施的工具、技术和方法,并促进开放网络。
为了进一步开发和资助 bc-ur
和其他项目,请考虑通过 GitHub 赞助商 的持续每月赞助成为 Blockchain Commons 的赞助者。您也可以在我们的 BTCPay 服务器 上使用比特币来支持 Blockchain Commons。
贡献
我们鼓励通过问题和拉取请求进行公开贡献!请查看 CONTRIBUTING.md 了解我们的开发过程细节。所有对存储库的贡献都需要 GPG 签名的 贡献者许可协议。
讨论
在 GitHub Discussions 区域讨论 Blockchain Commons 和其项目是最好的地方。
Gordian 开发者社区。对于想要讨论互操作钱包规范的标准化和开源开发者,请使用 Gordian 开发者社区存储库的讨论区域。这是您讨论 Gordian 规范(如 Gordian 封装、bc-shamir、分片密钥重建 和 bc-ur)以及更大的 Gordian 架构、其独立、隐私、弹性和开放原则,以及其宏架构思想(包括空气隔离,这个社区的原始名称)的地方。
戈迪安用户社区。面向戈迪安参考应用的用户,包括 戈迪安协调器、戈迪安种子工具、戈迪安服务器、戈迪安钱包 以及我们的整个 命令行应用 系列。这是讨论错误报告和功能请求的场所,也是探讨我们的参考应用如何体现 戈迪安原则 的地方。
区块链共同体讨论区。面向区块链共同体的开发者、实习生和赞助者,请使用 社区仓库 的讨论区来讨论区块链共同体的普通问题、实习生项目或其他不在 戈迪安开发者社区 或 戈迪安用户社区 范围内的问题。
其他问题 & 问题
作为一个开源、开放开发的社区,区块链共同体没有资源直接为我们项目提供支持。请将讨论区视为可能获得答案的地方。或者,请使用此仓库的 问题 功能。不幸的是,我们无法保证响应时间。
如果贵公司需要支持使用我们的项目,请随时直接联系我们就选项进行咨询。我们可能能够提供来自我们贡献者之一的支持合同,或者我们可能能指向可以提供所需合同支持的另一实体。
鸣谢
以下人员直接参与了此仓库。您可以通过参与其中来在此处添加您的名字。第一步是学习如何从我们的 CONTRIBUTING.md 文档中了解如何贡献。
姓名 | 角色 | Github | 电子邮件 | GPG指纹 |
---|---|---|---|---|
Christopher Allen | 主要架构师 | @ChristopherA | <[email protected]> | FDFE 14A5 4ECB 30FC 5D22 74EF F8D3 6C91 3574 05ED |
Wolf McNally | 首席研究员/工程师 | @WolfMcNally | <[email protected]> | 9436 52EE 3844 1760 C3DC 3536 4B6C 2FCF 8947 80AE |
负责任披露
我们希望让所有人都能安全使用我们的软件。如果您发现了安全漏洞,我们感谢您以负责任的方式向我们披露。遗憾的是,我们目前无法提供赏金。
我们要求您提供善意,并尽最大努力不泄露信息或损害任何用户、他们的数据或我们的开发者社区。在您公布之前,请给我们一定的时间来修复问题。在发现过程中,不要欺诈我们的用户或我们。我们承诺不对指出问题的研究人员采取法律行动,前提是他们尽力遵循这些指南。
报告漏洞
请通过电子邮件私下向 [email protected] 报告疑似安全漏洞(请不要用此邮箱寻求支持)。请不要为疑似安全漏洞创建公开可见的问题。
以下密钥可用于向开发者传达敏感信息
姓名 | 指纹 |
---|---|
Christopher Allen | FDFE 14A5 4ECB 30FC 5D22 74EF F8D3 6C91 3574 05ED |
您可以通过运行以下命令导入个人的指纹:gpg --recv-keys "<fingerprint>"
确保您将包含空格的指纹用引号括起来。
依赖项
~4.5MB
~109K SLoC