Loading AI tools
来自维基百科,自由的百科全书
wolfSSL (原名 CyaSSL 或 yet another SSL),是一個提供傳輸層安全協議(SSL/TLS)功能的軟體庫,主要針對嵌入式系系統發展。以開放原始碼及商用許可兩種方式釋出,提供SSL/TLS功能(SSL 3.0、TLS 1.0、TLS 1.1、TLS 1.2、TLS 1.3以及DTLS 1.0、DTLS 1.2),以C語言寫成。提供了與OpenSSL兼容的API界面,讓原有使用OpenSSL的軟體可以容易的移植過來。
wolfSSL的早期版本, yaSSL,基於C++,為嵌入式環境和資源限制的實時作業系統提供SSL功能庫。
wolfSSL 現在支持 Win32/64, Linux, macOS, Solaris, ThreadX, VxWorks, FreeBSD, NetBSD, OpenBSD, embedded Linux, WinCE, Haiku, OpenWrt, 蘋果iPhone, 安卓Android, Nintendo Wii 和 Gamecube系統。通過 DevKitPro 的支持, QNX, MontaVista, Tron variants, NonStop, OpenCL, Micrium's MicroC/OS-II, FreeRTOS, SafeRTOS, Freescale MQX, Nucleus, TinyOS, TI-RTOS, HP-UX, uTasker, 和 embOS.
yaSSL, 或 yet another SSL, 始建於2004. OpenSSL 當時可用, 並且根據OpenSSL許可證和SSLeay許可證獲得雙重許可。[3] 然而,yaSSL是在商業和GPL許可下開發的。[4] yaSSL提供了更現代的API和商業風格的開發人員支持,並含有OpenSSL兼容層。[5] wolfSSL / CyaSSL / yaSSL的第一個主要用戶是MySQL.[6] 通過捆綁MySQL,yaSSL已經實現了數百萬的極高分發量。
wolfSSL 輕量級SSL庫實現以下協議:[7]
協議說明:
wolfSSL 使用以下加密庫:
默認情況下,wolfSSL使用wolfCrypt提供的加密服務。[9] wolfCrypt 提供 RSA, ECC, DSS, Diffie–Hellman, EDH, NTRU, DES, Triple DES, AES (CBC, CTR, CCM, GCM), Camellia, IDEA, ARC4, HC-128, ChaCha20, MD2, MD4, MD5, SHA-1, SHA-2, BLAKE2, RIPEMD-160, Poly1305, 隨機數生成,大整數支持和基本16/64編碼/解碼。還包含一個來自歐盟eSTREAM項目的公共領域軟體流密碼(public domain software)的實驗密碼,Rabbit。 Rabbit對於那些在高性能,高需求環境中對流媒體進行加密的潛在用戶非常有用。
wolfCrypt 還支持最近的 Curve25519 和 Ed25519 算法。
wolfCrypt 充當幾個流行軟體包和庫的後端加密實現,包括MIT Kerberos[10](可使用構建選項啟用)。
CyaSSL+ 包含 NTRU[11] 公鑰加密。在CyaSSL + 中增加NTRU是yaSSL和Security Innovation之間合作的結果。[11] NTRU在行動電話和嵌入式環境中運行良好,這是因為與其他公鑰系統相比,提供相同安全性所需的位數大小減少了。另外,還不知道它易受到量子攻擊。CyaSSL + 中含有包括AES-256,RC4和HC-128在內的幾種使用NTRU的密碼套件。
wolfSSL 支持使用英特爾SGX (軟體防護擴展[12]). 英特爾SGX Intel SGX 允許更小的攻擊表面積,並且已被證明為執行代碼提供更高級別的安全性,而對性能沒有顯著的負面影響。
AES-GCM | 128, 192, 256 bit | |
AES-CCM | 128, 192, 256 bit | |
AES-CBC | 128, 192, 256 bit | |
AES-ECB | 128, 192, 256 bit | |
AES-CTR | 128, 192, 256 bit |
SHA-256 | |
SHA-384 | |
SHA-512 |
SHA-256 | |
SHA-512 |
SHA-256 | |
SHA-512 |
DES-CBC | 64 bit | |
3DES-CBC | 192 bit | |
AES-CBC | 128, 192, 256 bit |
MD5 | 128 bit 摘要 | |
SHA1 | 160 bit 摘要 | |
SHA256 | ||
DES-CBC | 64 bit | |
3DES-CBC | 192 bit | |
AES-CBC | 128, 192, 256 bit | |
AES-CCM | 128, 192, 256 bit | |
AES-GCM | 128, 192, 256 bit | |
AES-ECB | 128, 192, 256 bit |
RNG | ||
DES-CBC | 64 bit | |
DES-ECB | 64 bit 加密 | |
3DES-CBC | 192 bit | |
MD5 | 128 bit | |
SHA1 | 160 bit | |
AES-CBC | 128, 192, 256 bit | |
AES-CTR | 128, 192, 256 bit |
RNG | ||
AES-CBC | 128, 192, 256 bit | |
3DES-CBC | 192 bit | |
RC4 | 2048 bit 上限 | |
HMAC | MD5, SHA1, SHA256, SHA3 | |
RSA | 512 - 4096 bit | |
ECC | NIST Prime 192, 224, 256, 384 and 521 |
MD5 | 128 bit 摘要 | |
SHA1 | 160 bit 摘要 | |
SHA256 | ||
HMAC | MD5, SHA1, SHA256 | |
DES-CBC | 64 bit | |
3DES-CBC | 192 bit | |
AES-CBC | 128, 192, 256 bit | |
AES-CTR | 128, 192, 256 bit | |
AES-GCM | 128, 192, 256 bit |
DES-CBC | 64 bit | |
3DES-CBC | 192 bit | |
AES-CCM | 128, 192, 256 bit | |
AES-GCM | 128, 192, 256 bit | |
AES-ECB | 128, 192, 256 bit | |
AES-CTR | 128, 192, 256 bit | |
AES-CBC | 128, 192, 256 bit |
AES-ECB | 128 bit | |
RNG |
ECC | 256 bit (NIST-P256) |
AES-CBC | 128, 192, 256 bit | |
AES-CTR | 128, 192, 256 bit | |
AES-GCM | 128, 192, 256 bit | |
SHA256 |
RSA | 512 - 4096 bit | |
SHA1 | 160 bit 摘要 | |
SHA2 | 224, 256, 384 和 512 bit | |
AES-CBC | 128, 192, 256 bit | |
AES-GCM | 128, 192, 256 bit | |
ECC | 任意位數 | |
HMAC | SHA1, SHA2 | |
MD5 |
Curve25519 | 256 bit | |
Ed25519 | 256 bit | |
AES-CCM | 128, 192, 256 bit | |
AES-ECB | 128, 192, 256 bit | |
AES-CBC | 128, 192, 256 bit | |
AES-CTR | 128, 192, 256 bit | |
AES-GCM | 128, 192, 256 bit | |
SHA1 | 160 bit 摘要 | |
SHA256 | ||
ECC | 128, 256 bit | |
ECC-DHE | 128, 256 bit | |
RSA | 512 - 4096 bit |
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.