15 个版本 (4 个重大变更)
新版本 0.8.3 | 2024 年 8 月 18 日 |
---|---|
0.8.1 | 2024 年 5 月 11 日 |
0.8.0 | 2024 年 4 月 24 日 |
0.7.3 | 2024 年 3 月 25 日 |
0.0.0 | 2022 年 6 月 4 日 |
199 在 算法 中
每月 129 次下载
5MB
13K SLoC
cryptocol crate 提供了密码学库
字节序
该 crate 优化用于小端字节序的 CPU,因为小端字节序的 CPU 比大端字节序的 CPU 更受欢迎。有关字节序(包括小端和大端)的信息 了解更多。
大端问题
该 crate 仅针对大端字节序进行实验。因此,不鼓励您将此 crate 用于大端字节序的 CPU 的严肃目的。仅在使用者完全责任下使用此 crate 于大端字节序的 CPU。
1.0 版本路线图
Cryptocol crate 计划提供以下功能。已勾选的项目已经实现,包括至少 95% 的文档。未勾选的项目已实现,包括文档,但实现和文档少于 95%,或者尚未开始实施。
小数:具有自身意义,同时也是大数以及其他模块的基础
- 原始数据类型的联合及其实现,以及 trait SmallUInt 的实现 ——
ShortUnion
、IntUnion
、LongUnion
、LongerUnion
、SizeUnion
、SharedValues
和SharedArrays
- trait SmallUInt,其原始数据类型的实现,以及其联合的实现 ——
SmallUInt
大数:具有自身意义,同时也是非对称密钥算法的基础
- 固定大小的无符号大整数运算 ---
BigUInt
哈希算法
- 基于128位的MD4哈希算法 --- 包括MD4及其扩展版本。
MD4_Generic
- 基于128位的MD5哈希算法 --- 包括MD5及其扩展版本。
MD5_Generic
- 基于160位的SHA-1哈希算法 --- 包括SHA-1, SHA-0及其扩展版本。
SHA1_Generic
- 基于256位的SHA-2哈希算法 --- 包括SHA-256, SHA-224及其扩展版本。
SHA2_256_Generic
- 基于512位的SHA-2哈希算法 --- 包括SHA-512, SHA-384, SHA-512/256及其扩展版本。
SHA2_512_Generic
- 基于512/t位的SHA-2哈希算法 --- 包括512/256, SHA-512/224及其扩展版本。
SHA2_512_t_Generic
- SHA-3 (SHA3-224)
- SHA-3 (SHA3-256)
- SHA-3 (SHA3-384)
- SHA-3 (SHA3-512)
- SHA-3 (SHAKE 128)
- SHA-3 (SHAKE 256)
用于数字数据加密/解密的对称密钥算法
- DES对称密钥加密/解密算法 --- 包括DES及其扩展版本。
DES_Generic
- NDES对称密钥加密/解密算法 --- 包括2DES, 3DES, 4DES等及其扩展版本。
NDES_Generic
- AES对称密钥加密/解密算法 --- 包括AES及其扩展版本。
AES_Generic
- NAES对称密钥加密/解密算法 --- 包括2DES, 3DES, 4AES等及其扩展版本。
NAES_Generic
伪随机数生成器算法
- 伪随机数生成器 --- 结构体
Random_Generic
和特质Random_Engine
- 使用哈希算法的伪随机数生成器引擎 ---
Any_MD4
,Any_MD5
,Any_SHA0
,Any_SHA1
,Any_SHA2_256
,Any_SHA2_512
, 以及Random_SHA2_512
。 - 使用对称密钥加密算法的伪随机数生成器引擎 ---
Any_DES
,Any_NDES
,Any_AES
,Any_NAES
,Random_AES
, 和Random_NAES
。 - 使用简单随机化算法的伪随机数生成器引擎 ---
Any_Num_C
用于数字数据加密/解密的非对称密钥算法
- RSA (Ron Rivest, Adi Shamir, Leonard Adleman)
- ECC (椭圆曲线密码系统)
完成上述所有功能的实现后,将给出版本号1.0.0.0。之后,每当向此crate添加另一个功能时,版本号将高于1.0.0.0。在版本号1.0.0.0之前,最大版本号将是0.25.x.x,因为列出了上述所有25个功能。因此,例如,即使版本号是0.5.0.0,这也并不意味着实现了所有功能的50%。
破坏性变更
请参阅此crate中的文件BreakingChanges.md
。