7 个版本
0.3.2 | 2023年8月8日 |
---|---|
0.3.1 | 2023年3月21日 |
0.2.0 | 2022年11月5日 |
0.1.3 | 2022年7月12日 |
0.1.2 | 2022年6月28日 |
#453 in 密码学
143 每月下载量
在 15 crates 中使用
16KB
234 行
灵活转写
灵活转写是一个提供
Transcript
的crate,它提供了一个转写应该实现的特质。DigestTranscript
,一个针对提供的哈希函数实例化的有能力的转写格式。MerlinTranscript
,一个将merlin
包装到特质中的包装器(通过merlin
功能可用)。RecommendedTranscript
,一个推荐在应用程序中使用转写的转写。目前,这是DigestTranscript<Blake2b512>
(通过recommended
功能可用)。
在开发一个定义了非常简单的转写格式的IETF草案时创建了该特质。协议的扩展很快就需要一个更强大的格式,但实现指定的格式是满足规范所必需的。因此,实现草案的库定义了一个 IetfTranscript
,删除了标签且不允许连续挑战,但由于特质的引入,允许在协议之上构建的协议根据需要提供自己的转写格式。
DigestTranscript
接受任何实现了 Digest
的哈希函数,在其周围提供了一个安全的转写格式。所有项都以前缀标志开头,表示其类型和长度。
MerlinTranscript
被用来证明API,如果 DigestTranscript
存在任何问题,则启用回退。它也被视为与现有使用 merlin
的Rust项目兼容的一种方式。
该库在2023年3月由Cypher Stack进行了审计,审计结果在提交 669d2dbffc1dafb82a09d9419ea182667115df06 中体现。任何后续更改都没有经过审计。
该库可以在无_std环境下使用。
依赖项
~340–580KB
~13K SLoC