#摘要 #哈希 #cryptonote #cryptonight #aes-ni

cryptonight-hash

纯Rust实现的CryptoNight摘要算法

1 个不稳定版本

0.1.2 2019年10月25日
0.1.1 2019年10月25日
0.1.0 2019年10月25日

#12 in #cryptonote

MIT 许可证

27KB
528

cryptonight-hash

Build Status Crates.io Documentation Crates.io

CryptoNight摘要算法的纯Rust实现。该实现基于CryptoNote标准8中的规范。

如果平台支持,该包将支持AES CPU扩展进行编译,目前仅在x86和x86_64上支持。可以通过禁用默认功能来禁用此功能。

特性

  • digest兼容的CryptoNight摘要实现。
  • 无非Rust依赖。
  • 支持SSE2和AES CPU扩展。
  • 为其他平台提供完整的回退实现。
  • 性能与竞争对手相当。

与其他产品比较

已经存在不同的包也实现了这个摘要算法,但有一些差异。按下载量降序排列(截至2019-10-25)

  • cryptonight-rs简单地封装了原始Monero C代码中的函数。它也声称是不稳定的。
  • yellowsun完全在Rust中实现摘要,但需要使用AES CPU扩展。如果您的平台不支持这些扩展,则无法使用它。
  • cryptonight需要SSE(但不是AES)扩展来进行哈希处理。它间接依赖于某些C代码来生成二级哈希。

除此之外,这个包是唯一一个可以轻松计算哈希并使用digest包中的特性进行操作的。

愿望清单

  • 支持密钥生成的CPU扩展
  • nostd支持

依赖

~3MB
~24K SLoC