12个稳定版本 (4个主要)
5.0.0 | 2024年3月25日 |
---|---|
4.0.0 | 2024年1月22日 |
3.2.0 | 2023年11月23日 |
2.0.0 | 2023年6月16日 |
1.0.0 | 2023年3月20日 |
#634 in 魔法豆
每月491次下载
在 3 个crate中使用 (2个直接)
2MB
38K SLoC
concordium_base
一个库,定义了Concordium Rust项目所需的基本类型和功能。此库的范围限于大多数用户所需的核心定义。
其功能旨在由高级库(如 concordium-rust-sdk
)重新导出。
该库涵盖了以下领域
- 身份层密码学的完整实现。特别是,该库实现了不同各方之间的数据结构、数据交换格式和零知识证明。
- 加密转账的实现,包括数据交换格式和零知识证明。
- 在库中定义的曲线抽象上实现ElGamal加密。
- 在曲线抽象上实现bulletproofs。
- 定义Concordium支持的交易,包括它们的哈希、签名和序列化。
- 定义链使用的通用序列化格式。
- 实现共识协议使用的VRF(可验证随机函数)。
特性
该库没有默认特性,以下为可选特性
encryption
- 额外导出用于处理Concordium工具(如钱包导出)使用的加密格式的common::encryption
模块。此特性受semver指南的约束。ffi
- 启用此功能将向库添加一些外部导出。这些导出不保证稳定性,仅在将库集成到node时使用。internal-test-helpers
- 启用此功能将暴露一些库内部实现,这些实现是在基准测试中需要的。此功能暴露的功能没有稳定性保证。
保证
此库应始终能够编译为 android/ARM、iOS、Wasm 和 x86 代码。尽管如此,某些部分可能受到平台特定限制的限制,需要使用功能门。
最低支持的 Rust 版本
最低支持的 Rust 版本在 Cargo.toml
清单中声明。此最低支持版本的更改将伴随着至少一个次要版本的增加。
依赖项
~14MB
~254K SLoC