Crypto++(也称作CryptoPPlibcrypto++libcryptopp)是一套自由开源C++ 密码学函式库。在学术界、学生专案、开源专案,甚至是商业用途,Crypto++ 都被广泛地使用。

Quick Facts 开发者, 首次发布 ...
Crypto++
Thumb
开发者最初由戴维英语Wei Dai开发,2015 年后为 Crypto 专案团队开发
首次发布1995
当前版本
  • 5.6.5(2018年4月8日)[1]
  • 8.7.0(2022年8月7日;稳定版本)[2]
编辑维基数据链接
源代码库 编辑维基数据链接
编程语言C++
操作系统Cross-platform
类型安全性加密函式库
许可协议Boost授权条款(原为 Crypto++ 授权)/ 独立档案为 公有领域 授权
网站www.cryptopp.com
Close

算法

除了完整支持常见的算法,Crypto++ 也包含了较冷门、较少被使用的算法,例如 CamelliaISO/NESSIE英语NESSIE/IETF 核可的 区块加密法,与 AES 大致相同;而 Whirlpool英语Whirlpool (cryptography)ISO/NESSIE英语NESSIE/IETF 核可的 密码杂凑函式,与 SHA 大致相同。这两套冷门的算法都包含在 Crypto++ 之中。 [3][4]

另外,Crypto++ 函式库有时也会提出很先进的算法、实作供密码学界研究。例如 VMAC英语VMAC 以杂凑为基础的通用 讯息认证码,在将其提交给 IETF 的过程中,就被 Crypto++ 函式库支持了。另外还有 ECC Brainpool英语ECC Brainpool 曲线,于 2009 年被加入 RFC 5639 草稿中,在同月被加入 Crypto++ 5.6.0 中。 [5] [6]

More information 理论或操作, 算法及实作 ...
Crypto++ 算法及实作
理论或操作 算法及实作
伪随机数生成英语Pseudorandom number generator LCG, KDF2, Blum Blum Shub, ANSI X9.17, 梅森旋转算法, RDRAND, RDSEED
串流加密法 ChaCha8/12/20, ChaCha20 (IETF version), HC-128 and HC-256英语HC-256, Panama英语Panama (cryptography), Rabbit英语Rabbit (cipher), Salsa20, SOSEMANUK英语SOSEMANUK, XSalsa20
AES候选标准 Rijndael (高级加密标准评选过程), RC6, MARS英语MARS (cryptography), Twofish, Serpent, CAST-256英语CAST-256
其他区块加密法 ARIA英语ARIA_(cipher), Blowfish, Camellia, CHAM, HIGHT, IDEA, Kalyna (128/256/512), LEA, RC5, 3DES (2- and 3-key), SEED, SHACAL-2, Simon (64/128), Speck (64/128), SIMECK, Skipjack, SM4, TEA, Threefish (256/512/1024), XTEA
区块加密法工作模式 ECB, CBC, CTS, CFB, OFB, CTR, XTS
认证加密模式 CCM英语CCM mode, GCM英语Galois/Counter Mode, EAX英语EAX mode, ChaCha20Poly1305
区块加密法填充模式 PKCS#5, PKCS#7, Zeros, One and zeros, W3C Padding
讯息识别码 VMAC, HMAC, CMAC, CBC-MAC英语CBC-MAC, DMAC, Two-Track-MAC
密码杂凑函式 BLAKE2 (BLAKE2b and BLAKE2s), Keccak, SHA-1, SHA-2 (SHA-224, SHA-256, SHA-384, and SHA-512), SHA3, Tiger英语Tiger (hash function), WHIRLPOOL英语Whirlpool (cryptography), RIPEMD (RIPEMD-128, RIPEMD-160, RIPEMD-256, and RIPEMD-320)
金钥衍生函式 PBKDF1 and PBKDF2 from PKCS #5, PBKDF from PKCS #12 appendix B, Krawczyk and Eronen's HKDF
公开金钥加密 RSA, DSA, ElGamal, Nyberg-Rueppel (NR), Rabin-Williams (RW), LUC, LUCELG, DLIES (DHAES 的变体), ESIGN, curve25519
公钥密码学填充模式 PKCS#1 v2.0, OAEP, PSS, PSSR, IEEE P1363 EMSA2 and EMSA5
金钥交换协定英语Key-agreement protocol Diffie–Hellman (DH), Unified Diffie–Hellman (DH2), Menezes–Qu–Vanstone (MQV), Hashed MQV (HMQV), Fully Hashed MQV (FHMQV), LUCDIF, XTR-DH, x25519
椭圆曲线密码学 ECDSA, ECNR, ECIES, ECDH, ECMQV, Ed25519
私钥分享协定英语Secret sharing Shamir's Secret Sharing英语Shamir's Secret Sharing, Rabin's information dispersal algorithm英语information dispersal algorithm (IDA)
Close

参考

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.