2个版本

0.0.0 2019年8月6日
0.0.0-sol152019年7月27日
0.0.0-sol13 2019年7月26日

#31 in #libra


17 个crate中使用 (2 直接使用)

Apache-2.0

115KB
2K SLoC


id: crypto title: NextGen Crypto custom_edit_url: https://github.com/libra/libra/edit/master/crypto/nextgen_crypto/README.md

NextGen

nextgen文件夹包含Libra加密API的未来版本以及将在后续版本中使用的几个算法。

概览

Nextgen包含以下实现

  • traits.rs引入了新的加密API抽象。
  • Ed25519使用基于ed25519-dalek库的新API设计进行签名,并增加了额外的安全检查(例如,对于可塑性的检查)。
  • BLS12381使用基于threshold_crypto库的新API设计进行签名。BLS签名目前正在进行标准化流程
  • ECVRF实现了根据draft-irtf-cfrg-vrf-04在curve25519上实现的可验证随机函数(VRF)。
  • SLIP-0010根据SLIP-0010实现了Ed25519的通用分层密钥推导。

这个模块是如何组织的?

nextgen_crypto/src
├── bls12381.rs         # Bls12-381 implementation of the signing/verification API in traits.rs
├── ed25519.rs          # Ed25519 implementation of the signing/verification API in traits.rs
├── lib.rs
├── slip0010.rs         # SLIP-0010 universal hierarchical key derivation for Ed25519
├── test_utils.rs
├── traits.rs           # New API design and the necessary abstractions
├── unit_tests/         # Tests
└── vrf/                
    ├── ecvrf.rs        # ECVRF implementation using curve25519 and SHA512
    ├── mod.rs
    └── unit_tests      # Tests

依赖关系

~9MB
~156K SLoC