Loading AI tools
来自维基百科,自由的百科全书
Crypto++(也稱作CryptoPP、libcrypto++或libcryptopp)是一套自由開源的 C++ 密碼學函式庫。在學術界、學生專案、開源專案,甚至是商業用途,Crypto++ 都被廣泛地使用。
開發者 | 最初由戴維開發,2015 年後為 Crypto 專案團隊開發 |
---|---|
首次發布 | 1995 |
當前版本 | |
原始碼庫 | |
程式語言 | C++ |
作業系統 | Cross-platform |
類型 | 安全性加密函式庫 |
許可協議 | Boost授權條款(原為 Crypto++ 授權)/ 獨立檔案為 公有領域 授權 |
網站 | www |
除了完整支持常見的演算法,Crypto++ 也包含了較冷門、較少被使用的演算法,例如 Camellia 是 ISO/NESSIE/IETF 核可的 區塊加密法,與 AES 大致相同;而 Whirlpool 是 ISO/NESSIE/IETF 核可的 密碼雜湊函式,與 SHA 大致相同。這兩套冷門的演算法都包含在 Crypto++ 之中。 [3][4]
另外,Crypto++ 函式庫有時也會提出很先進的演算法、實作供密碼學界研究。例如 VMAC 以雜湊為基礎的通用 訊息認證碼,在將其提交給 IETF 的過程中,就被 Crypto++ 函式庫支持了。另外還有 ECC Brainpool 曲線,於 2009 年被加入 RFC 5639 草稿中,在同月被加入 Crypto++ 5.6.0 中。 [5] [6]
理論或操作 | 演算法及實作 |
---|---|
偽隨機數生成 | LCG, KDF2, Blum Blum Shub, ANSI X9.17, 梅森旋轉算法, RDRAND, RDSEED |
串流加密法 | ChaCha8/12/20, ChaCha20 (IETF version), HC-128 and HC-256, Panama, Rabbit, Salsa20, SOSEMANUK, XSalsa20 |
AES 及候選標準 | Rijndael (高級加密標準評選過程), RC6, MARS, Twofish, Serpent, CAST-256 |
其他區塊加密法 | ARIA, 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, GCM, EAX, ChaCha20Poly1305 |
區塊加密法填充模式 | PKCS#5, PKCS#7, Zeros, One and zeros, W3C Padding |
訊息識別碼 | VMAC, HMAC, CMAC, 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, WHIRLPOOL, 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 |
金鑰交換協定 | 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 |
私鑰分享協定 | Shamir's Secret Sharing, Rabin's information dispersal algorithm (IDA) |
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.