Porovnání implementací TLS - Comparison of TLS implementations
The Zabezpečení transportní vrstvy (TLS) protokol poskytuje schopnost zabezpečit komunikaci napříč sítěmi. Tento srovnání implementací TLS srovnává několik nejpozoruhodnějších knihovny. Existuje několik implementací TLS, které jsou svobodný software a otevřený zdroj.
Všechny srovnávací kategorie používají stabilní verzi každé implementace uvedené v části přehledu. Porovnání je omezeno na funkce, které přímo souvisejí s protokolem TLS.
Přehled
Implementace | Vyvinul | Otevřený zdroj | Softwarová licence | Držitel autorských práv | Napsáno | Nejnovější stabilní verze, datum vydání | Původ | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Botan | Jack Lloyd | Ano | Zjednodušená licence BSD | Jack Lloyd | C ++ | 2.16.0 (6. října 2020[1]) [±] | USA (Vermont) | ||||||||
Nudné SSL | Ano | Dvojitá licence OpenSSL-SSLeay, Licence ISC | Eric Young, Tim Hudson, Sun, projekt OpenSSL, Google a další | C, C ++, Jít, shromáždění | ?? | Austrálie / EU | |||||||||
Skákací hrad | The Legion of the Bouncy Castle Inc. | Ano | Licence MIT | Legion of the Bouncy Castle Inc. | Jáva, C# |
| Austrálie | ||||||||
cryptlib | Peter Gutmann | Ano | Licence Sleepycat a komerční licence | Peter Gutmann | C | 3.4.5 (2019[6]) [±] | NZ | ||||||||
GnuTLS | Projekt GnuTLS | Ano | GNU LGPLv2.1 + | Free Software Foundation | C | 3.6.14 (3. června 2020[7]) [±] | EU (Řecko a Švédsko) | ||||||||
Rozšíření Java Secure Socket (JSSE) | Věštec | Ano | GNU GPLv2 a komerční licence | Věštec | Jáva | 15.0.1 (20. října 2020[8]) [±] 11.0.9.1 (4. listopadu 2020[9]) [±] | NÁS | ||||||||
LibreSSL | Projekt OpenBSD | Ano | Licence Apache 1,0, 4-klauzule Licence BSD, Licence ISC a některé jsou veřejná doména | Eric Young, Tim Hudson, Sun, projekt OpenSSL, OpenBSD Project a další | C, shromáždění | 3.2.3 (8. prosince 2020[11][12]) [±] | Kanada | ||||||||
MatrixSSL[13] | Sítě PeerSec | Ano | GNU GPLv2 + a komerční licence | Sítě PeerSec | C | 4.2.2 (11. září 2019[14]) [±] | NÁS | ||||||||
Mbed TLS (dříve PolarSSL) | Paže | Ano | Licence Apache 2.0, GNU GPLv2 + a komerční licence | Držení paží | C | 2.24.0 (1. září 2020[15]) [±] | EU (Nizozemsko) | ||||||||
Služby zabezpečení sítě (NSS) | Mozilla, AOL, červená čepice, slunce, Věštec, Google a další | Ano | MPL 2.0 | Přispěvatelé NSS | C, shromáždění | 3,59 (13. listopadu 2020[16]) [±] | NÁS | ||||||||
OpenSSL | Projekt OpenSSL | Ano | Dvojitá licence OpenSSL-SSLeay | Eric Young, Tim Hudson, Sun, projekt OpenSSL a další | C, shromáždění | 1.1.1h (22. září 2020[17]) [±] | Austrálie / EU | ||||||||
RSA BSAFE | Dell, dříve Zabezpečení RSA | Ne | Proprietární | Dell | Jáva, C, shromáždění | SSL-J 6.2.7 (28. června 2020[±] | )Austrálie | ||||||||
S2n | Amazonka | Ano | Licence Apache 2.0, GNU GPLv2 + a komerční licence | Amazon, Inc. | C | Kontinuální | NÁS | ||||||||
SChannel | Microsoft | Ne | Proprietární | Microsoft Inc. | Windows 10, 29. 7. 2015 | NÁS | |||||||||
Bezpečná přeprava | Apple Inc. | Ano | APSL 2.0 | Apple Inc. | 57337.20.44 (OS X 10.11.2), 2015-12-08 | NÁS | |||||||||
wolfSSL (dříve CyaSSL) | wolfSSL[19] | Ano | GNU GPLv2 + a komerční licence | wolfSSL Inc.[20] | C | 4.5.0 (19. srpna 2020[21]) [±] | NÁS | ||||||||
Erlang / OTP SSL aplikace | Ericsson | Ano | Licence Apache 2.0 | Ericsson | Erlang | OTP-21, 2018-06-19 | Švédsko | ||||||||
Implementace | Vyvinul | Otevřený zdroj | Softwarová licence | Vlastník autorských práv | Napsáno | Nejnovější stabilní verze, datum vydání | Původ |
Podpora protokolu
Existuje několik verzí protokolu TLS. SSL 2.0 je zastaralý[22] verze protokolu se značnými slabinami. SSL 3.0 (1996) a TLS 1.0 (1999) jsou nástupci se dvěma slabostmi v CBC-padding, které v roce 2001 vysvětlil Serge Vaudenay.[23] TLS 1.1 (2006) opravil pouze jeden z problémů přepnutím na náhodný inicializační vektory (IV) pro blokové šifry CBC, zatímco problematičtější použití šifrování mac-pad-šifrování namísto zabezpečeného šifrování pad-mac bylo šifrováno RFC 7366.[24] Koncem roku 2011 bylo mnoho implementací široce přijato řešení pro SSL 3.0 a TLS 1.0, což je zhruba ekvivalent k náhodným IV z TLS 1.1,[25] z hlediska zabezpečení tedy všechny stávající verze TLS 1.0, 1.1 a 1.2 poskytují ekvivalentní sílu v základním protokolu a jsou vhodné pro 128bitové zabezpečení podle NIST SP800-57 až do roku 2030. V roce 2014 PUDL byla objevena chyba zabezpečení SSL 3.0, která využívá známé chyby zabezpečení v CBC a nezabezpečené záložní vyjednávání používané v prohlížečích.[26]
TLS 1.2 (2008) zavedl prostředek k identifikaci hash použitého pro digitální podpisy. I když v budoucnu umožňuje použití silnějších hashovacích funkcí pro digitální podpisy (rsa, sha256 / sha384 / sha512) přes konzervativní volbu SSL 3.0 (rsa, sha1 + md5), změna protokolu TLS 1.2 nechtěně a podstatně oslabila výchozí digitální podpisy a poskytuje (rsa, sha1) a dokonce (rsa, md5).[27]
Zabezpečení transportní vrstvy datagramu (DTLS nebo Datagram TLS) 1.0 je modifikace TLS 1.1 pro transportní vrstvu orientovanou na pakety, kde musí být tolerována ztráta paketu a přeskupování paketů. Revize DTLS 1.2 založená na TLS 1.2 byla zveřejněna v lednu 2012.[28]
Upozorňujeme, že v protokolech SSL 2.0 a SSL 3.0 jsou známá zranitelná místa. S výjimkou předvídatelných IV (pro které existuje snadné řešení) všechny aktuálně známé chyby zabezpečení ovlivňují všechny verze TLS 1.0 / 1.1 / 1.2.[29]
Implementace | SSL 2.0 (nejistý)[30] | SSL 3.0 (nejistý)[31] | TLS 1.0[32] | TLS 1.1[33] | TLS 1.2[34] | TLS 1.3 | DTLS 1.0[35] | DTLS 1.2[28] |
---|---|---|---|---|---|---|---|---|
Botan | Ne | Ne[36] | Ano | Ano | Ano | Ano | Ano | |
Nudné SSL | Ano | Ano | Ano | Ano | Ano | Ano | ||
Skákací hrad | Ne | Ne | Ano | Ano | Ano | Ano (koncept verze) | Ano | Ano |
cryptlib | Ne | Zakázáno ve výchozím nastavení v době kompilace | Ano | Ano | Ano | Ne | Ne | |
GnuTLS | Ne[A] | Ve výchozím nastavení zakázáno[37] | Ano | Ano | Ano | Ano[38] | Ano | Ano |
JSSE | Ne[A] | Ve výchozím nastavení zakázáno[39] | Ano | Ano | Ano | Ano (JDK 11+)[40] | Ano | Ano |
LibreSSL | Ne[41] | Ne[42] | Ano | Ano | Ano | Ano | Ano | Ne |
MatrixSSL | Ne | Zakázáno ve výchozím nastavení v době kompilace[43] | Ano | Ano | Ano | Ano | Ano | Ano |
Mbed TLS | Ne | Ve výchozím nastavení zakázáno[44] | Ano | Ano | Ano | Ne | Ano[44] | Ano[44] |
NSS | Ne[b] | Ve výchozím nastavení zakázáno[45] | Ano | Ano[46] | Ano[47] | Ano[48] | Ano[46] | Ano[49] |
OpenSSL | Ne[50] | Ve výchozím nastavení zakázáno | Ano | Ano[51] | Ano[51] | Ano | Ano | Ano[52] |
RSA BSAFE[53] | Ne | Ve výchozím nastavení zakázáno | Ano | Ano | Ano | Ne | Ne | Ne |
S2n[54] | Ne | Ve výchozím nastavení zakázáno | Ano | Ano | Ano | Ne | Ne | |
SChannel XP, 2003[55] | Ve výchozím nastavení zakázáno v MSIE 7 | Ve výchozím nastavení povoleno | Ve výchozím nastavení povoleno v MSIE 7 | Ne | Ne | Ne | Ne | |
SChannel Průhled[56] | Ve výchozím nastavení zakázáno | Ve výchozím nastavení povoleno | Ano | Ne | Ne | Ne | Ne | |
SChannel 2008[56] | Ve výchozím nastavení zakázáno | Ve výchozím nastavení povoleno | Ano | Ve výchozím nastavení zakázáno (KB4019276) | Ve výchozím nastavení zakázáno (KB4019276) | Ne | Ne | |
SChannel 7. 2008R2[57] | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno v MSIE 11 | Ano | Ve výchozím nastavení povoleno v MSIE 11 | Ve výchozím nastavení povoleno v MSIE 11 | Ano[58] | Ne[58] | |
SChannel 8, 2012[57] | Ve výchozím nastavení zakázáno | Ve výchozím nastavení povoleno | Ano | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ano | Ne | |
SChannel 8.1, 2012R2, 10 v1507 a v1511[57] | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno v MSIE 11 | Ano | Ano | Ano | Ano | Ne | |
SChannel 10 v1607 / 2016[59] | Ne | Ve výchozím nastavení zakázáno | Ano | Ano | Ano | Ano | Ano | |
Bezpečná přeprava OS X 10.2-10.7, iOS 1-4 | Ano | Ano | Ano | Ne | Ne | Ne | Ne | |
Secure Transport OS X 10.8-10.10, iOS 5-8 | Ne[C] | Ano | Ano | Ano[C] | Ano[C] | Ano[C] | Ne | |
Zabezpečený transport OS X 10.11, iOS 9 | Ne | Ne[C] | Ano | Ano | Ano | Ano | Neznámý | |
Secure Transport OS X 10.13, iOS 11 | Ne | Ne[C] | Ano | Ano | Ano | Ano (koncept verze)[60] | Ano | Neznámý |
wolfSSL | Ne | Ve výchozím nastavení zakázáno[61] | Ano | Ano | Ano | Ano | Ano | Ano |
Erlang / OTP SSL aplikace | Ne | Ve výchozím nastavení zakázáno | Ano | Ano | Ano | Ještě ne | Ano | Ano |
Implementace | SSL 2.0 (nejistý)[30] | SSL 3.0 (nejistý)[31] | TLS 1.0[32] | TLS 1.1[33] | TLS 1.2[34] | TLS 1.3 | DTLS 1.0[35] | DTLS 1.2[28] |
- ^ Klient SSL 2.0 ahoj je podporován, i když SSL 2.0 není podporován nebo je zakázán z důvodu zpětné kompatibility.
- ^ Implementace protokolu SSL / TLS na straně serveru stále podporuje zpracování přijatých v2 kompatibilních zpráv klienta Hello.[62]
- ^ Zabezpečený transport: SSL 2.0 byl v OS X 10.8 ukončen. SSL 3.0 bylo ukončeno v OS X 10.11 a iOS 9. TLS 1.1, 1.2 a DTLS jsou k dispozici pro iOS 5.0 a novější a OS X 10.9 a novější.[63][64]
Kryptografie NSA Suite B.
Potřebné komponenty pro Kryptografie NSA Suite B. (RFC 6460 ) jsou:
- Advanced Encryption Standard (AES) s velikostí klíče 128 a 256 bitů. Pro tok provozu by se AES měl používat buď s režimem čítače (CTR) pro provoz s nízkou šířkou pásma, nebo Režim Galois / Counter (GCM) provozní režim pro provoz s velkou šířkou pásma (viz Blokové šifrovací režimy provozu ) — symetrické šifrování
- Alliptický algoritmus digitálního podpisu (ECDSA) - digitální podpisy
- Eliptická křivka Diffie – Hellman (ECDH) - klíčová dohoda
- Secure Hash Algorithm 2 (SHA-256 a SHA-384) - přehled zpráv
Na CNSSP-15 stačí k ochraně utajovaných informací až 256bitová eliptická křivka (specifikovaná v FIPS 186-2), SHA-256 a AES se 128bitovými klíči. Tajný úrovni, zatímco 384bitová eliptická křivka (specifikovaná v FIPS 186-2), SHA-384 a AES s 256bitovými klíči jsou nezbytné pro ochranu Přísně tajné informace.
Implementace | TLS 1.2 Suite B |
---|---|
Botan | Ano |
Skákací hrad | Ano |
cryptlib | Ano |
GnuTLS | Ano |
JSSE | Ano[65] |
LibreSSL | Ano |
MatrixSSL | Ano |
Mbed TLS | Ano |
NSS | Ne[66] |
OpenSSL | Ano[52] |
RSA BSAFE | Ano[53] |
S2n | |
SChannel | Ano[67] |
Bezpečná přeprava | Ne |
wolfSSL | Ano |
Implementace | TLS 1.2 Suite B |
Certifikace
Uvědomte si, že některá certifikace byla vážně negativně kritizována od lidí, kteří se na nich skutečně podílejí.[68]
Implementace | FIPS 140-1, FIPS 140-2[69] | Společná kritéria | Integrované řešení FIPS | |
---|---|---|---|---|
Úroveň 1 | Úroveň 2[sporný ] | |||
Botan[70] | ||||
Skákací hrad | BC-FJA 1.0.0 (# 2768) BC-FJA 1.0.1 (# 3152) | |||
cryptlib[71] | ||||
GnuTLS[72] | Kryptografický modul Red Hat Enterprise Linux GnuTLS (# 2780) | |||
JSSE | ||||
LibreSSL[41] | bez podpory | |||
MatrixSSL[73] | Kryptografický modul SafeZone FIPS: 1.1 (# 2389) | |||
Mbed TLS[74] | ||||
NSS[75] | Služby zabezpečení sítě: 3.2.2 (# 247) Kryptografický modul Network Security Services: 3.11.4 (# 815), 3.12.4 (# 1278), 3.12.9.1 (# 1837) | Bezpečnostní modul Netscape: 1 (# 7[poznámky 1]), 1.01 (#47[poznámky 2]) Služby zabezpečení sítě: 3.2.2 (# 248[poznámky 3]) Kryptografický modul Network Security Services: 3.11.4 (# 814[poznámky 4]), 3.12.4 (#1279, #1280[poznámky 5]) | ||
OpenSSL[76] | Objektový modul OpenSSL FIPS: 1.0 (# 624), 1.1.1 (# 733), 1.1.2 (# 918), 1.2, 1.2.1, 1.2.2, 1.2.3 nebo 1.2.4 (# 1051) 2.0, 2.0.1, 2.0.2, 2.0.3, 2.0.4, 2.0.5, 2.0.6, 2.0.7 nebo 2.0.8 (# 1747) | |||
RSA BSAFE Sada Micro-Edition[77] | Crypto-C ME 3.0.0.1 (# 1092) Crypto-C ME 4.0.1 / 4.0.2.5 (# 2047, # 2056, # 2097, # 2217) Crypto-C ME 4.1 / 4.1.0.1 / 4.1.2 / 4.1.3.2 (# 2294, # 2300) | Ano | ||
RSA BSAFE SSL-J[78] | Crypto-J 6.0 (# 1785, # 1786) Crypto-J 6.1 / 6.1.1.0.1 (# 2057, # 2058) Crypto-J 6.2 / 6.2.1.1 (# 2468, # 2469) Crypto-J 6.2.4 (# 3172, # 3184) | Ano | ||
SChannel[79] | Kryptografické moduly ve Windows NT 4.0, 95, 95, 2000, XP, Server 2003, CE 5, CE 6, Mobile 6.x, Vista, Server 2008, 7, Server 2008 R2, 8, Server 2012, RT, Surface, Phone 8 Viz podrobnosti na Kryptografické moduly ověřené Microsoft FIPS 140 | |||
Bezpečná přeprava | Kryptografický modul Apple FIPS: 1.0 (OS X 10.6, # 1514), 1.1 (OS X 10.7, # 1701) Apple OS X CoreCrypto Module; Modul jádra CoreCrypto: 3.0 (OS X 10.8, # 1964, # 1956), 4.0 (OS X 10.9, # 2015, # 2016) Apple iOS CoreCrypto Module; Modul jádra CoreCrypto: 3.0 (iOS 6, # 1963, # 1944), 4.0 (iOS 7, # 2020, # 2021) | |||
wolfSSL[80] | wolfCrypt FIPS modul: 4.0 (# 3389) Viz podrobnosti na Certifikát NIST pro ověřená provozní prostředí wolfCrypt FIPS modul: 3.6.0 (# 2425) Viz podrobnosti na Certifikát NIST pro ověřená provozní prostředí | Ano | ||
Implementace | Úroveň 1 | Úroveň 2 | Společná kritéria | Integrované řešení FIPS |
FIPS 140-1, FIPS 140-2 |
- ^ se Sluncem Sparc 5 w / slunce Solaris v 2.4SE (hodnoceno ITSEC)
- ^ se Sluncem Ultra-5 w / slunce Důvěryhodný Solaris verze 2.5.1 (hodnoceno ITSEC)
- ^ s Solaris v8.0 s AdminSuite 3.0.1, jak je uvedeno ve zprávě UK IT SEC CC č. P148 EAL4 o SLUNCI SPARC Ultra-1
- ^ s těmito platformami; Red Hat Enterprise Linux Verze 4 Aktualizace 1 AS zapnuta IBM xSeries 336 s procesorem Intel Xeon, Důvěryhodný Solaris 8 4/01 dne Pracovní stanice Sun Blade 2500 s UltraSPARC IIIi procesor
- ^ s těmito platformami; Red Hat Enterprise Linux v5 běžící na IBM System x 3550, Red Hat Enterprise Linux v5 běžící na HP ProLiant DL145, Slunce Solaris 10 5/08 běžící na Slunci Pracovní stanice SunBlade 2000, Slunce Solaris 10 5/08 běží na a Pracovní stanice Sun W2100z
Algoritmy výměny klíčů (pouze certifikát)
Tato část uvádí seznam funkcí ověření certifikátu, které jsou k dispozici v různých implementacích.
Implementace | RSA[34] | RSA -EXPORT (nejistý)[34] | DHE -RSA (dopředu tajemství )[34] | DHE -DSS (dopředu tajemství )[34] | ECDH -ECDSA[81] | ECDHE -ECDSA (dopředu tajemství )[81] | ECDH -RSA[81] | ECDHE -RSA (dopředu tajemství )[81] | GOST R 34.10-94, 34.10-2001[82] |
---|---|---|---|---|---|---|---|---|---|
Botan | Ve výchozím nastavení zakázáno | Ne | Ano | Ve výchozím nastavení zakázáno | Ne | Ano | Ne | Ano | Ne |
cryptlib | Ano | Ne | Ano | Ano | Ne | Ano | Ne | Ne | Ne |
GnuTLS | Ano | Ne | Ano | Ve výchozím nastavení zakázáno[37] | Ne | Ano | Ne | Ano | Ne |
JSSE | Ano | Ve výchozím nastavení zakázáno | Ano | Ano | Ano | Ano | Ano | Ano | Ne[83] |
LibreSSL | Ano | Ne[41] | Ano | Ano | Ano | Ano | Ano | Ano | Ano[84] |
MatrixSSL | Ano | Ne | Ano | Ne | Ano | Ano | Ano | Ano | Ne |
Mbed TLS | Ano | Ne | Ano | Ne | Ano | Ano | Ano | Ano | Ne |
NSS | Ano | Ve výchozím nastavení zakázáno | Ano[85] | Ano | Ano | Ano | Ano | Ano | Ne[86][87] |
OpenSSL | Ano | Ne[50] | Ano | Ve výchozím nastavení zakázáno[50] | Ano | Ano | Ano | Ano | Ano[88] |
RSA BSAFE | Ano | Ne | Ano | Ano | Ano | Ano | Ano | Ano | Ne |
SChannel XP / 2003 | Ano | Ano | Ne | XP: Max 1024 bitů 2003: pouze 1024 bitů | Ne | Ne | Ne | Ne | Ne[89] |
SChannel Vista / 2008 | Ano | Ve výchozím nastavení zakázáno | Ne | 1024 bitů ve výchozím nastavení[90] | Ne | Ano | Ne | kromě AES_GCM | Ne[89] |
SChannel 8/2012 | Ano | Ve výchozím nastavení zakázáno | Pouze AES_GCM[91][92][93] | 1024 bitů ve výchozím nastavení[90] | Ne | Ano | Ne | kromě AES_GCM | Ne[89] |
SChannel 7 / 2008R2, 8.1 / 2012R2 | Ano | Ve výchozím nastavení zakázáno | Ano | 2048 bitů ve výchozím nastavení[90] | Ne | Ano | Ne | kromě AES_GCM | Ne[89] |
SCannel 10 | Ano | Ve výchozím nastavení zakázáno | Ano | 2048 bitů ve výchozím nastavení[90] | Ne | Ano | Ne | Ano | Ne[89] |
Bezpečná přeprava OS X 10.6 | Ano | Ano | kromě AES_GCM | Ano | Ano | kromě AES_GCM | Ano | kromě AES_GCM | Ne |
Zabezpečený transport OS X 10.8-10.10 | Ano | Ne | kromě AES_GCM | Ne | Ano | kromě AES_GCM | Ano | kromě AES_GCM | Ne |
Zabezpečený transport OS X 10.11 | Ano | Ne | Ano | Ne | Ne | Ano | Ne | Ano | Ne |
wolfSSL | Ano | Ne | Ano | Ne | Ano | Ano | Ano | Ano | Ne |
Erlang / OTP SSL aplikace | Ano | Ne | Ano | Ano | Ano | Ano | Ano | Ano | Ne |
Implementace | RSA[34] | RSA -EXPORT (nejistý)[34] | DHE -RSA (dopředu tajemství )[34] | DHE -DSS (dopředu tajemství )[34] | ECDH -ECDSA[81] | ECDHE -ECDSA (dopředu tajemství )[81] | ECDH -RSA[81] | ECDHE -RSA (dopředu tajemství )[81] | GOST R 34.10-94, 34.10-2001[82] |
Algoritmy výměny klíčů (alternativní výměny klíčů)
Implementace | SRP[94] | SRP -DSS[94] | SRP -RSA[94] | PSK -RSA[95] | PSK[95] | DHE -PSK (dopředu tajemství )[95] | ECDHE -PSK (dopředu tajemství )[96] | KRB5[97] | DH -ANON[34] (nejistý) | ECDH -ANON[81] (nejistý) |
---|---|---|---|---|---|---|---|---|---|---|
Botan | Ano | Ano | Ano | Ne | Ano | Ano | Ano | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno |
cryptlib | Ne | Ne | Ne | Ne | Ano | Ano | Ne | Neznámý | Ne | Ne |
GnuTLS | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno |
JSSE | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Neznámý | Ve výchozím nastavení v Javě 8 zakázáno | Ve výchozím nastavení v Javě 8 zakázáno |
LibreSSL | Ne[98] | Ne[98] | Ne[98] | Ne | Ne | Ne | Ne | Ne | Ano | Ano |
MatrixSSL | Ne | Ne | Ne | Ano | Ano | Ano | Ne | Ne | Ve výchozím nastavení zakázáno | Ne |
Mbed TLS | Ne | Ne | Ne | Ano | Ano | Ano | Ano | Ne | Ne | Ne |
NSS | Ne[99] | Ne[99] | Ne[99] | Ne[100] | Ne[100] | Ne[100] | Ne[100] | Ne | Pouze na straně klienta, ve výchozím nastavení zakázáno[101] | Ve výchozím nastavení zakázáno[102] |
OpenSSL | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano[103] | Ve výchozím nastavení zakázáno[104] | Ve výchozím nastavení zakázáno[104] |
RSA BSAFE Sada Micro Edition | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno |
RSA BSAFE SSL-J | Ne | Ne | Ne | Ne | Ano[105] | Ne | Ne | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno |
SChannel | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ano | Ne | Ne |
Bezpečná přeprava | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Neznámý | Ano | Ano |
wolfSSL | Ne | Ne | Ne | Ne | Ano | Ne | Ano[106] | Ne | Ne | Ne |
Erlang / OTP SSL aplikace | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ne | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno |
Implementace | SRP[94] | SRP -DSS[94] | SRP -RSA[94] | PSK -RSA[95] | PSK[95] | DHE -PSK (dopředu tajemství )[95] | ECDHE -PSK (dopředu tajemství )[96] | KRB5[97] | DH -ANON[34] (nejistý) | ECDH -ANON[81] (nejistý) |
Metody ověřování certifikátů
Implementace | Definováno aplikací | Ověření cesty PKIX[107] | CRL[108] | OCSP[109] | DÁN (DNSSEC)[110] | Důvěra při prvním použití (TOFU) | CT[111] |
---|---|---|---|---|---|---|---|
Botan | Ano | Ano | Ano | Ano | Ne | Ne | Neznámý |
Skákací hrad | Ano | Ano | Ano | Ano | Ano | Ne | Neznámý |
cryptlib | Ano | Ano | Ano | Ano | Ne | Ne | Neznámý |
GnuTLS | Ano | Ano | Ano | Ano | Ano | Ano | Neznámý |
JSSE | Ano | Ano | Ano | Ano | Ne | Ne | Neznámý |
LibreSSL | Ano | Ano | Ano | Ano | Ne | Ne | Neznámý |
MatrixSSL | Ano | Ano | Ano | Ano[112] | Ne | Ne | Neznámý |
Mbed TLS | Ano | Ano | Ano | Ne[113] | Ne | Ne | Neznámý |
NSS | Ano | Ano | Ano | Ano | Ne[114] | Ne | Neznámý |
OpenSSL | Ano | Ano | Ano | Ano | Ano | Ne | Ano |
RSA BSAFE | Ano | Ano | Ano | Ano | Ne | Ne | Neznámý |
SChannel | Neznámý | Ano | Ano[115] | Ano[115] | Ne | Ne | Neznámý |
Bezpečná přeprava | Ano | Ano | Ano | Ano | Ne | Ne | Neznámý |
wolfSSL | Ano | Ano | Ano | Ano | Ne | Ne | Neznámý |
Erlang / OTP SSL aplikace | Ano | Ano | Ano | Ne | Ne | Ne | Neznámý |
Implementace | Definováno aplikací | Ověření cesty PKIX | CRL | OCSP | DANE (DNSSEC) | Důvěra při prvním použití (TOFU) | CT |
Šifrovací algoritmy
Implementace | Bloková šifra s provozní režim | Streamujte šifru | Žádný | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
AES GCM [116] | AES CCM [117] | AES CBC | Kamélie GCM [118] | Kamélie CBC [119] | ÁRIE GCM [120] | ÁRIE CBC [120] | SEMÍNKO CBC [121] | 3DES EDE CBC (nejistý)[122] | GOST 28147-89 CNT (navrhováno) [82][n 1] | ChaCha20 -Poly1305 [123] | Nula (nejistý) [č. 2] | |
Botan | Ano | Ano | Ano | Ano | Ano | Ne | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ne | Ano[124] | Není implementováno |
Nudné SSL | Ano | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ano | Ne | Ano | |
cryptlib | Ano | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ano | Ne | Ne | Není implementováno |
GnuTLS | Ano | Ano[37] | Ano | Ano | Ano | Ne | Ne | Ne | Ve výchozím nastavení zakázáno[125] | Ne | Ano[126] | Ve výchozím nastavení zakázáno |
JSSE | Ano | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ve výchozím nastavení zakázáno[127] | Ne[83] | Ano (JDK 12+)[128] | Ve výchozím nastavení zakázáno |
LibreSSL | Ano[41] | Ne | Ano | Ne | Ano[84] | Ne | Ne | Ne[41] | Ano | Ano[84] | Ano[41] | Ve výchozím nastavení zakázáno |
MatrixSSL | Ano | Ne | Ano | Ne | Ne | Ne | Ne | Ano | Ve výchozím nastavení zakázáno | Ne | Ano[129] | Ve výchozím nastavení zakázáno |
Mbed TLS | Ano | Ano [130] | Ano | Ano | Ano | Ano[131] | Ano[131] | Ne | Ano | Ne | Ano[132] | Zakázáno ve výchozím nastavení v době kompilace |
NSS | Ano[133] | Ne | Ano | Ne[134][č. 3] | Ano[135] | Ne | Ne | Ano[136] | Ano | Ne[86][87] | Ano[137] | Ve výchozím nastavení zakázáno |
OpenSSL | Ano[138] | Ve výchozím nastavení zakázáno[50] | Ano | Ne | Ve výchozím nastavení zakázáno[50] | Ve výchozím nastavení zakázáno[139] | Ne | Ve výchozím nastavení zakázáno[50] | Ve výchozím nastavení zakázáno[50] | Ano[88] | Ano[50] | Ve výchozím nastavení zakázáno |
RSA BSAFE Sada Micro-Edition | Ano | Ano | Ano | Ne | Ne | Ne | Ano | Ano | Nejnižší priorita | Ne | Ne | Ve výchozím nastavení zakázáno |
RSA BSAFE SSL-J | Ano | Ano | Ano | Ne | Ne | Ne | Ne | Ne | Ve výchozím nastavení zakázáno | Ne | Ne | Ve výchozím nastavení zakázáno |
SChannel XP / 2003 | Ne | Ne | Pouze 2003[140] | Ne | Ne | Ne | Ne | Ne | Ano | Ne[89] | Ne | Ve výchozím nastavení zakázáno |
SChannel Vista / 2008, 2008R2, 2012 | Ne | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ano | Ne[89] | Ne | Ve výchozím nastavení zakázáno |
SChannel 7, 8, 8.1 / 2012 R2 | Ano, kromě ECDHE_RSA [91][92] | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ano | Ne[89] | Ne | Ve výchozím nastavení zakázáno |
Schannel 10[141] | Ano | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ano | Ne[89] | Ne | Ve výchozím nastavení zakázáno |
Bezpečná přeprava OS X 10.6 - 10.10 | Ne | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ano | Ne | Ne | Ve výchozím nastavení zakázáno |
Bezpečná přeprava OS X 10.11 | Ano | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ano | Ne | Ne | Ve výchozím nastavení zakázáno |
wolfSSL | Ano | Ano | Ano | Ne | Ano | Ne | Ne | Ne | Ano | Ne | Ano | Ve výchozím nastavení zakázáno |
Erlang / OTP SSL aplikace | Ano | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ve výchozím nastavení zakázáno | Ne | Experimentální | Ve výchozím nastavení zakázat |
Implementace | Bloková šifra s provozní režim | Streamujte šifru | Žádný | |||||||||
AES GCM [116] | AES CCM [117] | AES CBC | Kamélie GCM [118] | Kamélie CBC [119] | ÁRIE GCM [120] | ÁRIE CBC [120] | SEMÍNKO CBC [121] | 3DES EDE CBC (nejistý)[122] | GOST 28147-89 CNT (navrhováno) [82][n 1] | ChaCha20 -Poly1305 [123] | Nula (nejistý) [č. 2] |
- Poznámky
Zastaralé algoritmy
Implementace | Bloková šifra s provozní režim | Streamujte šifru | ||||
---|---|---|---|---|---|---|
NÁPAD CBC [n 1](nejistý)[143] | DES CBC (nejistý) [n 1] | DES -40 CBC (EXPORT, nejistá) [č. 2] | RC2 -40 CBC (EXPORT, nejistá) [č. 2] | RC4 -128 (nejistý) [č. 3] | RC4 -40 (EXPORT, nejistá) [č. 4][č. 2] | |
Botan | Ne | Ne | Ne | Ne | Ne[144] | Ne |
Nudné SSL | Ne | Ne | Ne | Ne | Zakázáno ve výchozím nastavení v době kompilace | Ne |
cryptlib | Ne | Zakázáno ve výchozím nastavení v době kompilace | Ne | Ne | Zakázáno ve výchozím nastavení v době kompilace | Ne |
GnuTLS | Ne | Ne | Ne | Ne | Ve výchozím nastavení zakázáno[37] | Ne |
JSSE | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno [145] |
LibreSSL | Ano | Ano | Ne[41] | Ne[41] | Ano | Ne[41] |
MatrixSSL | Ano | Ne | Ne | Ne | Ve výchozím nastavení zakázáno | Ne |
Mbed TLS | Ne | Zakázáno ve výchozím nastavení v době kompilace | Ne | Ne | Zakázáno ve výchozím nastavení v době kompilace[44] | Ne |
NSS | Ano | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Nejnižší priorita[146][147] | Ve výchozím nastavení zakázáno |
OpenSSL | Ve výchozím nastavení zakázáno[50] | Ve výchozím nastavení zakázáno | Ne[50] | Ne[50] | Ve výchozím nastavení zakázáno | Ne[50] |
RSA BSAFE Sada Micro-Edition | Ne | Ne | Ne | Ne | Ve výchozím nastavení zakázáno | Ne |
RSA BSAFE SSL-J | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno |
SChannel XP / 2003 | Ne | Ano | Ano | Ano | Ano | Ano |
SChannel Vista / 2008 | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ano | Ve výchozím nastavení zakázáno |
SChannel 7 / 2008R2 | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Nejnižší priorita bude brzy deaktivován[148] | Ve výchozím nastavení zakázáno |
SChannel 8/2012 | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Pouze jako záložní | Ve výchozím nastavení zakázáno |
SChannel 8.1 / 2012 R2 | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno[148] | Ve výchozím nastavení zakázáno |
Schannel 10[141] | Ne | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno[148] | Ve výchozím nastavení zakázáno |
Bezpečná přeprava OS X 10.6 | Ano | Ano | Ano | Ano | Ano | Ano |
Bezpečná přeprava OS X 10.7 | Ano | Neznámý | Neznámý | Neznámý | Ano | Neznámý |
Bezpečná přeprava OS X 10.8-10.9 | Ano | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ano | Ve výchozím nastavení zakázáno |
Bezpečná přeprava OS X 10.10-10.11 | Ano | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Nejnižší priorita | Ve výchozím nastavení zakázáno |
Bezpečná přeprava macOS 10.12 | Ano | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno | Ve výchozím nastavení zakázáno |
wolfSSL | Ve výchozím nastavení zakázáno[149] | Ne | Ne | Ne | Ve výchozím nastavení zakázáno | Ne |
Erlang / OTP SSL aplikace | Ne | Ve výchozím nastavení zakázáno | Ne | Ne | Ve výchozím nastavení zakázáno | Ne |
Implementace | Bloková šifra s provozní režim | Streamujte šifru | ||||
NÁPAD CBC [n 1](nejistý)[143] | DES CBC (nejistý) [n 1] | DES -40 CBC (EXPORT, nejistá) [č. 2] | RC2 -40 CBC (EXPORT, nejistá) [č. 2] | RC4 -128 (nejistý) [č. 3] | RC4 -40 (EXPORT, nejistá) [č. 4][č. 2] |
- Poznámky
- ^ A b C d IDEA a DES byly odstraněny z TLS 1.2.[142]
- ^ A b C d E F 40bitová síla šifrovacích sad byla navržena tak, aby fungovala se sníženou délkou klíče, aby vyhovovala předpisům USA o exportu kryptografického softwaru obsahujícího určité silné šifrovací algoritmy (viz Export kryptografie ze Spojených států ). Tyto slabé sady jsou v TLS 1.1 a novějších zakázány.
- ^ A b The RC4 útoky oslabit nebo rozbít RC4 použitý v SSL / TLS. Používání RC4 je zakázáno RFC 7465.
- ^ A b The RC4 útoky oslabit nebo rozbít RC4 použitý v SSL / TLS.
Podporované eliptické křivky
V této části jsou uvedeny podporované eliptické křivky podle jednotlivých implementací.
Implementace | sect163k1 NIST K-163 (1)[81] | sect163r1 (2)[81] | sect163r2 NIST B-163 (3)[81] | sect193r1 (4)[81] | sect193r2 (5)[81] | sect233k1 NIST K-233 (6)[81] | sect233r1 NIST B-233 (7)[81] | sect239k1 (8)[81] | sect283k1 NIST K-283 (9)[81] | sect283r1 NIST B-283 (10)[81] | sect409k1 NIST K-409 (11)[81] | sect409r1 NIST B-409 (12)[81] | sect571k1 NIST K-571 (13)[81] | sect571r1 NIST B-571 (14)[81] |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Botan | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
Nudné SSL | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
GnuTLS | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
JSSE | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano |
LibreSSL | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano |
MatrixSSL | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
Mbed TLS | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
NSS | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano |
OpenSSL | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano |
RSA BSAFE | Ano | Ne | Ano | Ne | Ne | Ano | Ano | Ne | Ano | Ano | Ano | Ano | Ano | Ano |
SChannel Vista / 2008, 7 / 2008R2, 8/2012, 8.1 / 2012R2, 10 | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
Bezpečná přeprava | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
wolfSSL | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
Erlang / OTP SSL aplikace | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano |
Implementace | sect163k1 NIST K-163 (1) | sect163r1 (2) | sect163r2 NIST B-163 (3) | sect193r1 (4) | sect193r2 (5) | sect233k1 NIST K-233 (6) | sect233r1 NIST B-233 (7) | sect239k1 (8) | sect283k1 NIST K-283 (9) | sect283r1 NIST B-283 (10) | sect409k1 NIST K-409 (11) | sect409r1 NIST B-409 (12) | sect571k1 NIST K-571 (13) | sect571r1 NIST B-571 (14) |
Implementace | secp160k1 (15)[81] | secp160r1 (16)[81] | secp160r2 (17)[81] | secp192k1 (18)[81] | secp192r1 prime192v1 NIST P-192 (19)[81] | secp224k1 (20)[81] | secp224r1 NIST P-244 (21)[81] | secp256k1 (22)[81] | secp256r1 prime256v1 NIST P-256 (23)[81] | secp384r1 NIST P-384 (24)[81] | secp521r1 NIST P-521 (25)[81] | libovolné primární křivky (0xFF01)[81][150] | libovolné char2 křivky (0xFF02)[81][150] |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Botan | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ano | Ano | Ano | Ne | Ne |
Nudné SSL | Ne | Ne | Ne | Ne | Ne | Ne | Ano | Ne | Ano | Ano | Ano (ve výchozím nastavení zakázáno) | Ne | Ne |
GnuTLS | Ne | Ne | Ne | Ne | Ano | Ne | Ano | Ne | Ano | Ano | Ano | Ne | Ne |
JSSE | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ne | Ne |
LibreSSL | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ne | Ne |
MatrixSSL | Ne | Ne | Ne | Ne | Ano | Ne | Ano | Ne | Ano | Ano | Ano | Ne | Ne |
Mbed TLS | Ne | Ne | Ne | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ne | Ne |
NSS | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ne | Ne |
OpenSSL | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ne | Ne |
RSA BSAFE | Ne | Ne | Ne | Ne | Ano | Ne | Ano | Ne | Ano | Ano | Ano | Ne | Ne |
SChannel Vista / 2008, 7 / 2008R2, 8/2012, 8.1 / 2012R2, 10 | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ano | Ano | Ano | Ne | Ne |
Bezpečná přeprava | Ne | Ne | Ne | Ne | Ano | Ne | Ne | Ne | Ano | Ano | Ano | Ne | Ne |
wolfSSL | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ne | Ne |
Erlang / OTP SSL aplikace | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ano | Ne | Ne |
Implementace | secp160k1 (15) | secp160r1 (16) | secp160r2 (17) | secp192k1 (18) | secp192r1 prime192v1 NIST P-192 (19) | secp224k1 (20) | secp224r1 NIST P-244 (21) | secp256k1 (22) | secp256r1 prime256v1 NIST P-256 (23) | secp384r1 NIST P-384 (24) | secp521r1 NIST P-521 (25) | libovolné primární křivky (0xFF01) | libovolné char2 křivky (0xFF02) |
Implementace | brainpool P256r1 (26)[151] | brainpool P384r1 (27)[151] | brainpool P512r1 (28)[151] | X25519 [152] | Křivka448 Ed448-Zlatovláska [153] | M221 Křivka 2213 [154] | E222 [154] | Křivka 1174 [154] | E382 [154] | M383 [154] | Křivka383187 [154] | Křivka41417 Křivka3617 [154] | M511 Křivka 511187 [154] | E521 [154] |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Botan | Ano[155] | Ano[155] | Ano[155] | Ano[124] | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
Nudné SSL | Ne | Ne | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
GnuTLS | Ne | Ne | Ne | Ano[156] | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
JSSE | Ne | Ne | Ne | Ano (JDK 13+)[157] | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
LibreSSL | Ano[41] | Ano[41] | Ano[41] | Ano[158] | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
MatrixSSL | Ano | Ano | Ano | Pouze TLS 1.3[159] | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
Mbed TLS | Ano[160] | Ano[160] | Ano[160] | Pouze primitivní[161] | Pouze primitivní[162] | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
NSS | Ne[163] | Ne[163] | Ne[163] | Ano[164] | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
OpenSSL | Ano[52] | Ano[52] | Ano[52] | Ano[165][166] | Ano[167][168] | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
RSA BSAFE | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
SChannel Vista / 2008, 7 / 2008R2, 8/2012, 8.1 / 2012R2, 10 | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
Bezpečná přeprava | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
wolfSSL | Ano | Ano | Ano | Ano[169] | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
Erlang / OTP SSL aplikace | Ano | Ano | Ano | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne |
Implementace | brainpool P256r1 (26) | brainpool P384r1 (27) | brainpool P512r1 (28) | Křivka25519 | Křivka448 Ed448-Zlatovláska | M221 Křivka 2213 | E222 | Křivka 1174 | E382 | M383 | Křivka383187 | Křivka41417 Křivka3617 | M511 Křivka 511187 | E521 |
Integrita dat
Implementace | HMAC -MD5 | HMAC -SHA1 | HMAC -SHA256 / 384 | AEAD | GOST 28147-89 IMIT[82] | GOST R 34.11-94[82] |
---|---|---|---|---|---|---|
Botan | Ne | Ano | Ano | Ano | Ne | Ne |
cryptlib | Ano | Ano | Ano | Ano | Ne | Ne |
GnuTLS | Ano | Ano | Ano | Ano | Ne | Ne |
JSSE | Ano | Ano | Ano | Ano | Ne[83] | Ne[83] |
LibreSSL | Ano | Ano | Ano | Ano | Ano[84] | Ano[84] |
MatrixSSL | Ano | Ano | Ano | Ano | Ne | Ne |
Mbed TLS | Ano | Ano | Ano | Ano | Ne | Ne |
NSS | Ano | Ano | Ano | Ano | Ne[86][87] | Ne[86][87] |
OpenSSL | Ano | Ano | Ano | Ano | Ano[88] | Ano[88] |
RSA BSAFE | Ano | Ano | Ano | Ano | Ne | Ne |
SChannel XP / 2003, Vista / 2008 | Ano | Ano | XP SP3, 2003 SP2 prostřednictvím opravy hotfix[170] | Ne | Ne[89] | Ne[89] |
SChannel 7 / 2008R2, 8/2012, 8.1 / 2012R2 | Ano | Ano | Ano | kromě ECDHE_RSA[91][92][93] | Ne[89] | Ne[89] |
SCannel 10 | Ano | Ano | Ano | Ano[141] | Ne[89] | Ne[89] |
Bezpečná přeprava | Ano | Ano | Ano | Ano | Ne | Ne |
wolfSSL | Ano | Ano | Ano | Ano | Ne | Ne |
Erlang / OTP SSL aplikace | Ano | Ano | Ano | Ano | Ne | Ne |
Implementace | HMAC-MD5 | HMAC-SHA1 | HMAC-SHA256 / 384 | AEAD | GOST 28147-89 IMIT | GOST R 34.11-94 |
Komprese
Všimněte si Zločin zabezpečení CRIME využívá kompresi TLS, takže konzervativní implementace neumožňují kompresi na úrovni TLS. HTTP komprese není spojen a není ovlivněn tímto zneužitím, ale je využíván souvisejícím PORUŠENÍ útoku.
Implementace | DEFLATE[171] (nejistý) |
---|---|
Botan | Ne |
cryptlib | Ne |
GnuTLS | Ve výchozím nastavení zakázáno |
JSSE | Ne |
LibreSSL | Ne[41] |
MatrixSSL | Ve výchozím nastavení zakázáno |
Mbed TLS | Ve výchozím nastavení zakázáno |
NSS | Ve výchozím nastavení zakázáno |
OpenSSL | Ve výchozím nastavení zakázáno |
RSA BSAFE[53] | Ne |
SChannel | Ne |
Bezpečná přeprava | Ne |
wolfSSL | Ve výchozím nastavení zakázáno |
Erlang / OTP SSL aplikace | Ne |
Implementace | DEFLATE |
Rozšíření
V této části jsou uvedena rozšíření, která každá implementace podporuje. Všimněte si, že rozšíření Zabezpečené opětovné vyjednávání je zásadní pro zabezpečení klienta HTTPS[Citace je zapotřebí ]. Klienti TLS, kteří jej neimplementují, jsou zranitelní útoky, bez ohledu na to, zda klient implementuje nové vyjednávání TLS.
Implementace | Bezpečné opětovné vyjednávání [172] | Indikace názvu serveru [173] | ALPN [174] | Žádost o status certifikátu [173] | OpenPGP [175] | Doplňkové údaje [176] | Session Ticket [177] | Vývozce klíčového materiálu [178] | Maximální délka fragmentu [173] | Zkráceno HMAC [173] | Šifrovat pak MAC [179] | TLS Záložní SCSV [180] | Rozšířené hlavní tajemství [181] | Ahoj polstrování [182] | Surové veřejné klíče [183] |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Botan | Ano | Ano | Ano[184] | Ne | Ne | Ne | Ano | Ano | Ano | Ne | Ano | Ano[185] | Ano[186] | Ne | Neznámý |
cryptlib | Ano | Ano | Ne | Ne | Ne | Ano | Ne | Ne | Ne[187] | Ne | Ano | Ano | Ano | Ne | Neznámý |
GnuTLS | Ano | Ano | Ano[188] | Ano | Ne[189] | Ano | Ano | Ano | Ano | Ne | Ano[37] | Ano[190] | Ano[37] | Ano[191] | Ano[192] |
JSSE | Ano | Ano[65] | Ano[65] | Ano | Ne | Ne | Ano | Ne | Ano | Ne | Ne | Ne | Ano | Ne | Ne |
LibreSSL | Ano | Ano | Ano[193] | Ano | Ne | Ne? | Ano | Ano? | Ne | Ne | Ne | Pouze na straně serveru[194] | Ne | Ano | Ne |
MatrixSSL | Ano | Ano | Ano[195] | Ano[129] | Ne | Ne | Ano | Ne | Ano | Ano | Ne | Ano[129] | Ano[129] | Ne | Neznámý |
Mbed TLS | Ano | Ano | Ano[196] | Ne | Ne | Ne | Ano | Ne | Ano | Ve výchozím nastavení zakázáno[44] | Ano[197] | Ano[197] | Ano[197] | Ne | Ne |
NSS | Ano | Ano | Ano[198] | Ano | Ne[199] | Ne | Ano | Ano | Ne | Ne | Ne[200] | Ano[201] | Ano[202] | Ano[198] | Neznámý |
OpenSSL | Ano | Ano | Ano[52] | Ano | Ne | Ne? | Ano | Ano | Ano | Ne | Ano | Ano[203] | Ano[204] | Ano[205] | Ne |
RSA BSAFE Sada Micro-Edition | Ano | Ano | Ne | Ano | Ne | Ne | Ano | Ne | Ano | Ano | Ne | Ne | Ne | Ne | Ne |
RSA BSAFE SSL-J | Ano | Ano | Ne | Ne | Ne | Ne | Ne | Ne | Ano | Ano | Ne | Ne | Ne | Ne | Ne |
SChannel XP / 2003 | Ne | Ne | Ne | Ne | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Neznámý |
SChannel Vista / 2008 | Ano | Ano | Ne | Ne | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ne | Ano[206] | Ne | Neznámý |
SChannel 7 / 2008R2 | Ano | Ano | Ne | Ano | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ne | Ano[206] | Ne | Neznámý |
SChannel 8/2012 | Ano | Ano | Ne | Ano | Ne | Ano | Pouze na straně klienta[207] | Ne | Ne | Ne | Ne | Ne | Ano[206] | Ne | Neznámý |
SChannel 8.1 / 2012R2, 10 | Ano | Ano | Ano | Ano | Ne | Ano | Ano[207] | Ne | Ne | Ne | Ne | Ne | Ano[206] | Ne | Neznámý |
Bezpečná přeprava | Ano | Ano | Neznámý | Ne | Ne | Ano | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Neznámý |
wolfSSL | Ano | Ano | Ano[149] | Ano | Ne | Ne | Ano | Ne | Ano | Ano | Ne | Ne | Ano | Ne | Neznámý |
Aplikace Erlang / OTP SSL | Ano | Ano | Ano | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ne | Ano | Ne | Ne | Neznámý |
Implementace | Bezpečné opětovné vyjednávání | Indikace názvu serveru | ALPN | Žádost o status certifikátu | OpenPGP | Doplňkové údaje | Session Ticket | Vývozce klíčového materiálu | Maximální délka fragmentu | Zkrácený HMAC | Šifrovat pak MAC | TLS Záložní SCSV | Rozšířené hlavní tajemství | Ahoj polstrování | Surové veřejné klíče |
Asistovaná kryptografie
Tato část uvádí známou schopnost implementace využívat sady instrukcí CPU, které optimalizují šifrování, nebo využívají zařízení specifická pro systém, která umožňují přístup k podkladovému kryptografickému hardwaru pro akceleraci nebo pro oddělení dat.
Implementace | Zařízení PKCS # 11 | Intel AES-NI | VIA PadLock | ARMv8-A | Intel SGX | Intel QAT | Intel SHA |
---|---|---|---|---|---|---|---|
Botan | Ano[208] | Ano | Ne | Ano | Ne | Ne | |
cryptlib | Ano | Ano | Ano | Ne | Ne | ||
Crypto ++ | Ano | Ne | Ano | ||||
GnuTLS | Ano | Ano | Ano | Ano[209] | Ne | Ne | |
JSSE | Ano | Ano[210] | Ne | Ne | Ne | ||
LibreSSL | Ne | Ano | Ano | Ne | Ne | ||
MatrixSSL | Ano | Ano | Ne | Ano | Ne | ||
Mbed TLS | Ano | Ano[211] | Ano | Ne | Ne | ||
NSS | Ano[212] | Ano[213] | Ne[214] | Ne | Ne | ||
OpenSSL | Ano[215] | Ano | Ano | Ano[216] | Ne | Ano | |
RSA BSAFE Sada Micro Edition | Ano | Ano | Ne | Ano | Ne | Ne | Ano |
RSA BSAFE SSL-J [A][b] | Ano | Ano | Ne | Ano | Ne | Ne | Ano |
SChannel | Ne | Ano | Ne | Ne | Ne | ||
Bezpečná přeprava | Ne | Ano[219][220] | Ne | Ano | Ne | ||
wolfSSL | Ano | Ano | Ne | Ano | Ano | Ano[221] | |
Implementace | Zařízení PKCS # 11 | Intel AES-NI | VIA PadLock | ARMv8-A | Intel SGX | Intel QAT | Intel SHA |
Systémově specifické backendy
V této části je uvedena schopnost implementace využívat dostupné back-endy specifické pro operační systém nebo dokonce back-endy poskytované jinou implementací.
Implementace | / dev / krypto | af_alg | Windows CSP | CommonCrypto | OpenSSL engine |
---|---|---|---|---|---|
Botan | Ne | Ne | Ne | Ne | Částečný |
cryptlib | Ne | Ne | Ne | Ne | Ne |
GnuTLS | Ano | Ne | Ne | Ne | Ne |
JSSE | Ne | Ne | Ano | Ne | Ne |
LibreSSL | Ne | Ne | Ne | Ne | Ne[222] |
MatrixSSL | Ne | Ne | Ne | Ano | Ano |
Mbed TLS | Ne | Ne | Ne | Ne | Ne |
NSS | Ne | Ne | Ne | Ne | Ne |
OpenSSL | Ano | Ano | Ne | Ne | Ano |
RSA BSAFE | Ne | Ne | Ne | Ne | Ne |
SChannel | Ne | Ne | Ano | Ne | Ne |
Bezpečná přeprava | Ne | Ne | Ne | Ano | Ne |
wolfSSL | Ano | Ano | Částečný | Ne | Ne |
Erlang / OTP SSL aplikace | Ne | Ne | Ne | Ne | Ano |
Implementace | / dev / krypto | af_alg | Windows CSP | CommonCrypto | OpenSSL engine |
Podpora kryptografických modulů / tokenů
Implementace | TPM Podpěra, podpora | Podpora hardwarových tokenů | Objekty identifikované prostřednictvím |
---|---|---|---|
Botan | Částečný[186] | PKCS11 | |
cryptlib | Ne | PKCS11 | Uživatelem definovaný štítek |
GnuTLS | Ano | PKCS11 | RFC 7512 PKCS # 11 URL[223] |
JSSE | Ne | PKCS11 Java kryptografická architektura, Rozšíření kryptografie Java | |
LibreSSL | Ano | PKCS11 (přes modul třetí strany) | Vlastní metoda |
MatrixSSL | Ne | PKCS11 | |
Mbed TLS | Ne | PKCS11 (přes libpkcs11-helper) nebo standardní háčky | Vlastní metoda |
NSS | Ne | PKCS11 | |
OpenSSL | Ano | PKCS11 (přes modul třetí strany)[224] | RFC 7512 PKCS # 11 URL[223] |
RSA BSAFE Sada Micro-Edition | Ne | PKCS11 (přes modul třetí strany) | Uživatelem definovaný štítek |
RSA BSAFE SSL-J | Ne | Ne | |
SChannel | Ne | Microsoft CryptoAPI | UUID, uživatelsky definovaný štítek |
Bezpečná přeprava | |||
wolfSSL | Ano | PKCS11 | |
Implementace | Podpora TPM | Podpora hardwarových tokenů | Objekty identifikované prostřednictvím |
Závislosti kódu
Implementace | Závislosti | Volitelné závislosti |
---|---|---|
Botan | C ++ 11 | sqlite zlib (komprese) bzip2 (komprese) liblzma (komprese) podpora openssl (krypto backend) kalhoty (TPM) |
GnuTLS | libc kopřiva gmp | zlib (komprese) sada p11 (PKCS # 11) kalhoty (TPM) libunbound (DÁN) |
JSSE | Jáva | |
MatrixSSL | žádný | zlib (komprese) |
MatrixSSL-open | libc nebo newlib | |
Mbed TLS | libc | libpkcs11-helper (PKCS # 11) zlib (komprese) |
NSS | libc libnspr4 libsoftokn3 libplc4 libplds4 | zlib (komprese) |
OpenSSL | libc | zlib (komprese) |
wolfSSL | Žádný | libc zlib (komprese) |
Erlang / OTP ssl aplikace | libcrypto (z OpenSSL), Erlang / OTP a jeho public_key, krypto a asn1 aplikace | Erlang / OTP -inety (načítání CRL pomocí protokolu HTTP) |
Implementace | Závislosti | Volitelné závislosti |
Vývojové prostředí
Implementace | Jmenný prostor | Sestavte nástroje | Manuál API | Krypto back-end | Vrstva kompatibility s OpenSSL[vyjasnit ] |
---|---|---|---|---|---|
Botan | Botan :: TLS | Makefile | Sfinga | Zahrnuto (připojitelné) | Ne |
Skákací hrad | org.bouncycastle | Vývojové prostředí Java | Referenční příručka k programátorům (PDF) | Zahrnuto (připojitelné) | Ne |
cryptlib | krypta* | makefile, pracovní prostory projektu MSVC | Referenční příručka k programátorům (PDF), příručka pro návrh architektury (PDF) | Zahrnuto (monolitické) | Ne |
GnuTLS | gnutls_ * | Autoconf, automake, libtool | Manuální a API reference (HTML, PDF) | Externí, libnettle | Ano (omezeno) |
JSSE | javax.net.ssl sun.security.ssl | Makefile | Reference API (HTML) + | Java kryptografická architektura, Rozšíření kryptografie Java | Ne |
MatrixSSL | matrixSsl_ * ps * | Makefile, pracovní prostory projektů MSVC, projekty Xcode pro OS X a iOS | Referenční příručka k API (PDF), Průvodce integrací | Zahrnuto (připojitelné) | Ano (podmnožina: SSL_read, SSL_write atd.) |
Mbed TLS | mbedtls_ssl_ * mbedtls_sha1_ * | Makefile, CMake, Pracovní prostory projektu MSVC, yotta | Reference API + dokumentace na vysoké úrovni a na úrovni modulu (HTML) | Zahrnuto (monolitické) | Ne |
NSS | CERT_ * SEC_ * | Makefile | Ruční (HTML) | Zahrnuto, založené na PKCS # 11[225] | Ano (samostatný balíček s názvem nss_compat_ossl[226]) |
OpenSSL | SSL_ * SHA1_ * | Makefile | Man stránky | Zahrnuto (monolitické) | N / A |
RSA BSAFE Sada Micro-Edition | R_ * | Makefile | Příručka pro vývojáře | Zahrnuta | Ne |
RSA BSAFE SSL-J | com.rsa.asn1[A] com.rsa.certj[b] | Java Classloader | Javadoc, příručka pro vývojáře (HTML) | Zahrnuta | Ne |
wolfSSL | wolfSSL_ * CyaSSL_ * | Autoconf, automake, libtool, pracovní prostory projektů MSVC, projekty XCode, projekty CodeWarrior, projekty MPLAB X, Keil, IAR, Clang, GCC, e2Studio | Příručka a reference k rozhraní API (HTML, PDF) | Zahrnuto (monolitické) | Ano (přibližně 10% API) |
Implementace | Jmenný prostor | Sestavte nástroje | Manuál API | Krypto back-end | Vrstva kompatibility OpenSSL |
Obavy z přenositelnosti
Implementace | Požadavky na platformu | Síťové požadavky | Bezpečnost závitu | Náhodné semeno | Možnost křížové kompilace | Žádný OS (holý kov) | Podporované operační systémy |
---|---|---|---|---|---|---|---|
Botan | C ++ 11 | Žádný | Bezpečné pro závit | Závisí na platformě | Ano | Windows, Linux, macOS, Android, iOS, FreeBSD, OpenBSD, Solaris, AIX, HP-UX, QNX, BeOS, IncludeOS | |
cryptlib | C89 | POSIX send () a recv (). API pro dodání vaší vlastní náhrady | Bezpečné pro závit | Závisí na platformě, včetně hardwarových zdrojů | Ano | Ano | AMX, BeOS, ChorusOS, DOS, eCos, FreeRTOS / OpenRTOS, uItron, MVS, OS / 2, Palm OS, QNX Neutrino, RTEMS, Tandem NonStop, ThreadX, uC / OS II, Unix (AIX, FreeBSD, HPUX, Linux, OS X, Solaris atd.), VDK, VM / CMS, VxWorks, Win16, Win32, Win64, WinCE / PocketPC / atd., XMK |
GnuTLS | C89 | POSIX send () a recv (). API pro dodání vaší vlastní náhrady. | Bezpečné pro vlákna, potřebuje vlastní háčky mutex, pokud nejsou k dispozici vlákna POSIX ani Windows. | Závisí na platformě | Ano | Ne | Obecně jakékoli platformy POSIX nebo Windows, běžně testované platformy zahrnují GNU / Linux, Win32 / 64, OS X, Solaris, OpenWRT, FreeBSD, NetBSD, OpenBSD. |
JSSE | Jáva | Síťové komponenty Java SE | Bezpečné pro závit | Závisí na java.security.SecureRandom | Ano | Java, nezávislá na platformě | |
MatrixSSL | C89 | Žádný | Bezpečné pro závit | Závisí na platformě | Ano | Ano | Všechno |
Mbed TLS | C89 | POSIX čtení () a zápis (). API pro dodání vaší vlastní náhrady. | K dispozici je závitová vrstva (POSIX nebo vlastní háčky) | Náhodné semeno nastaveno prostřednictvím entropického fondu | Ano | Ano | Je známo, že funguje na: Win32 / 64, Linux, OS X, Solaris, FreeBSD, NetBSD, OpenBSD, OpenWRT, iPhone (iOS), Xbox, Android, SeggerOS |
NSS | C89, NSPR[227] | NSPR[227] PR_Send () a PR_Recv (). API pro dodání vaší vlastní náhrady. | Bezpečné pro závit | Závisí na platformě[228] | Ano (ale těžkopádné) | Ne | AIX, Android, FreeBSD, NetBSD, OpenBSD, BeOS, HP-UX, IRIX, Linux, OS X, OS / 2, Solaris, OpenVMS, Amiga DE, Windows, WinCE, Sony PlayStation |
OpenSSL | C89 | Žádný | Bezpečné pro závit | Závisí na platformě | Ano | Ne | Unix, DOS (s djgpp), Windows, OpenVMS, MacOS, NetWare, eCos |
RSA BSAFE Sada Micro Edition | C89 | Žádný | Bezpečné pro závit | Závisí na platformě | Ano | Ne | FreeBSD, Linux, macOS, Microsoft Windows, Android, iOS, AIX, Solaris |
RSA BSAFE SSL-J | Jáva | Síťové komponenty Java SE | Bezpečné pro závit | Závisí na java.security.SecureRandom | Ano | Ne | FreeBSD, Linux, macOS, Microsoft Windows, Android, AIX, Solaris |
wolfSSL | C89 | POSIX send () a recv (). API pro dodání vaší vlastní náhrady. | Bezpečné pro vlákna, potřebuje háčky mutex, pokud nejsou k dispozici PThreads nebo WinThreads, lze vypnout | Náhodné semeno je nastaveno přes wolfCrypt | Ano | Ano | Win32 / 64, Linux, OS X, Solaris, ThreadX, VxWorks, FreeBSD, NetBSD, OpenBSD, vestavěný Linux, Yocto Project, OpenEmbedded, WinCE, Haiku, OpenWRT, iPhone (iOS), Android, Nintendo Wii a Gamecube prostřednictvím DevKitPro, QNX , MontaVista, NonStop, TRON / ITRON / µITRON, Micrium µC / OS-III, FreeRTOS, SafeRTOS, NXP / Freescale MQX, Nucleus, TinyOS, HP / UX, AIX, ARC MQX, Keil RTX, TI-RTOS, uTasker, embOS , INtime, Mbed, uT-Kernel, RIOT, CMSIS-RTOS, FROSTED, Green Hills INTEGRITY, TOPPERS, PetaLinux, Apache mynewt |
Implementace | Požadavky na platformu | Síťové požadavky | Bezpečnost závitu | Náhodné semeno | Možnost křížové kompilace | Žádný OS (holý kov) | Podporované operační systémy |
Viz také
- SCTP - s podporou DTLS
- DCCP - s podporou DTLS
- SRTP - s podporou DTLS (DTLS-SRTP) a Secure Real-Time Transport Control Protocol (SRTCP)
Reference
- ^ „Botan: Notes Release“. Citováno 2020-10-29.
- ^ „Poznámky k verzi - bouncycastle.org“. 2020-11-01. Citováno 2020-11-01.
- ^ „Prostředky Java FIPS - bouncycastle.org“. 2019-08-24. Citováno 2019-08-29.
- ^ „Legion of the Bouncy Castle C # Cryptography APIs“. 2020-09-22. Citováno 2020-11-01.
- ^ „Prostředky C # .NET FIPS - bouncycastle.org“. 2016-11-11. Citováno 2017-08-28.
- ^ Gutmann, Peter (2019). „Stahování“. cryptlib. University of Auckland School of Computer Science. Citováno 2019-08-07.
- ^ „Knihovna zabezpečení transportní vrstvy GnuTLS“. Citováno 30. června 2020.
- ^ „Aktualizace OpenJDK 15“. Oracle Corporation. Citováno 2020-09-15.
- ^ „Aktualizace OpenJDK 11“. Oracle Corporation. Citováno 2020-11-08.
- ^ „Aktualizace OpenJDK 8“. Oracle Corporation. Citováno 2020-11-08.
- ^ "LibreSSL". Citováno 9. prosince 2020.
- ^ „Vydání LibreSSL“. Citováno 9. prosince 2020.
- ^ Uvedené funkce jsou pro uzavřenou zdrojovou verzi
- ^ „Otevřené vydání MatrixSSL 4.2.2“. 2019-09-11. Citováno 2020-03-20.
- ^ „Release Mbed TLS 2.24.0 · ARMmbed / mbedtls“. Citováno 2020-09-08.
- ^ A b „Poznámky k verzi pro nejnovější verze NSS“. Mozilla Developer Network. 13. listopadu 2020. Citováno 29. listopadu 2020.
- ^ „OpenSSL: Newslog“. Citováno 2020-09-22.
- ^ „Doporučení k vydání sady Dell BSAFE Micro Edition Suite 4.5.1“.
- ^ "popis produktu wolfSSL". Citováno 2016-05-03.
- ^ „wolfSSL Embedded SSL / TLS“. Citováno 2016-05-03.
- ^ "wolfSSL ChangeLog". 2020-08-19. Citováno 2020-08-22.
- ^ RFC 6176: Zákaz protokolu Secure Sockets Layer (SSL) verze 2.0
- ^ ""CBC-Padding: Bezpečnostní chyby v SSL, IPsec, WTLS, ... ", Serge Vaudenay, 2001" (PDF).
- ^ RFC 7366: Šifrování pak MAC pro zabezpečení transportní vrstvy (TLS) a zabezpečení datové transportní vrstvy
- ^ „Rizzo / Duong BEAST Protiopatření“.
- ^ Möller, Bodo; Duong, thajština; Kotowicz, Krzysztof (září 2014). „This POODLE Bites: Exploiting the SSL 3.0 Fallback“ (PDF). Citováno 15. října 2014.
- ^ Hlavní rozdíly TLSv1.2 od TLSv1.1
- ^ A b C RFC 6347
- ^ „Bardův útok“. 2006: 7–10. CiteSeerX 10.1.1.61.5887. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ A b „draft-hickman-netscape-ssl-00“. tools.ietf.org.
- ^ A b RFC 6101
- ^ A b RFC 2246
- ^ A b RFC 4346
- ^ A b C d E F G h i j k l RFC 5246
- ^ A b RFC 4347
- ^ „Verze 1.11.13, 11. 1. 2015 - Botan“. 2015-01-11. Archivovány od originál dne 01.01.2015. Citováno 2015-01-16.
- ^ A b C d E F „Vydána [gnutls-devel] GnuTLS 3.4.0“. 2015-04-08. Citováno 2015-04-16.
- ^ „[gnutls-devel] GnuTLS 3.6.3“. 2018-07-16. Citováno 2018-09-16.
- ^ „Java ™ SE Development Kit 8, Update 31 Release Notes“. Citováno 2015-01-22.
- ^ „JEP 332: Transport Layer Security (TLS) 1.3“. Citováno 2018-08-27.
- ^ A b C d E F G h i j k l m „Vydáno OpenBSD 5.6“. 2014-11-01. Citováno 2015-01-20.
- ^ „Vydáno LibreSSL 2.3.0“. 2015-09-23. Citováno 2015-09-24.
- ^ "MatrixSSL - novinky". Archivovány od originál dne 2015-02-14. Citováno 2014-11-09.
- ^ A b C d E „uvolněna mbed TLS 2.0.0“. 2015-07-10. Citováno 2015-07-14.
- ^ „Poznámky k verzi NSS 3.19“. Mozilla Developer Network. Mozilla. Citováno 2015-05-06.
- ^ A b „Poznámky k verzi NSS 3.14“. Mozilla Developer Network. Mozilla. Citováno 2012-10-27.
- ^ „Poznámky k vydání NSS 3.15.1“. Mozilla Developer Network. Mozilla. Citováno 2013-08-10.
- ^ „Poznámky k verzi NSS 3.39“. Mozilla Developer Network. Mozilla. 31. 8. 2018. Citováno 2018-09-15.
- ^ „Poznámky k vydání NSS 3.16.2“. Mozilla Developer Network. Mozilla. 2014-06-30. Citováno 2014-06-30.
- ^ A b C d E F G h i j k l Inc., OpenSSL Foundation. „/news/openssl-1.1.0-notes.html“. www.openssl.org.
- ^ A b „Hlavní změny mezi OpenSSL 1.0.0h a OpenSSL 1.0.1 [14. března 2012]“. 14.03.2012. Archivovány od originál 5. prosince 2014. Citováno 2015-01-20.
- ^ A b C d E F „Hlavní změny mezi OpenSSL 1.0.1l a OpenSSL 1.0.2 [22. ledna 2015]“. Archivovány od originál 4. září 2014. Citováno 2015-01-22.
- ^ A b C „Porovnávací tabulky technické specifikace RSA BSAFE“ (PDF). Archivovány od originál (PDF) dne 2015-09-24. Citováno 2015-01-09.
- ^ „Soubor Readme S2N“. 2019-12-21.
- ^ „TLS Cipher Suites (Windows)“. msdn.microsoft.com.
- ^ A b „TLS Cipher Suites v systému Windows Vista (Windows)“. msdn.microsoft.com.
- ^ A b C „Cipher Suites in TLS / SSL (Schannel SSP) (Windows)“. msdn.microsoft.com.
- ^ A b „Je k dispozici aktualizace, která přidává podporu pro DTLS v systému Windows 7 SP1 a Windows Server 2008 R2 SP1“. Microsoft. Citováno 13. listopadu 2012.
- ^ „Změny TLS (Schannel SSP) ve Windows 10 a Windows Server 2016“. Microsoft. 21. 3. 2017. Archivovány od originál dne 30. 3. 2017. Citováno 2017-03-29.
- ^ „@badger: obsah 1.3 je zjevně v iOS 11 a macOS 10.13“. 2018-03-09. Citováno 2018-03-09.
- ^ „[wolfssl] wolfSSL 3.6.6 Vydáno“. 2015-08-20. Citováno 2015-08-24.
- ^ „Poznámky k verzi NSS 3.24“. Mozilla Developer Network. Mozilla. Citováno 2016-06-19.
- ^ „Technická poznámka TN2287: Problémy s interoperabilitou iOS 5 a TLS 1.2“. Knihovna vývojářů pro iOS. Apple Inc.. Citováno 2012-05-03.
- ^ „Qualys SSL Labs - Projects / User Agent Capabilities“. dev.ssllabs.com.
- ^ A b C „Vylepšení zabezpečení v JDK 8“. docs.oracle.com.
- ^ „Bug 663320 - (NSA-Suite-B-TLS) Implement RFC6460 (NSA Suite B profile for TLS)“. Mozilla. Citováno 2014-05-19.
- ^ „Představujeme soulad s kryptografií Suite B“.
- ^ „Zabezpečený nebo vyhovující, vyberte si“ blog Steve Marquess Archivováno 27 prosince 2013, na Wayback Machine
- ^ „Vyhledávání - program pro ověření kryptografického modulu - CSRC“. csrc.nist.gov. Archivovány od originál dne 2014-12-26. Citováno 2014-03-18.
- ^ ""Je botan FIPS 140 certifikován? "Často kladené otázky - Botan". Archivovány od originál dne 2014-11-29. Citováno 2014-11-16.
- ^ "cryptlib". 11. října 2013. Archivovány od originál dne 11. října 2013.
- ^ „Zatímco jako bezplatný softwarový projekt tento druh certifikace aktivně neprovádíme, společnost GnuTLS získala certifikát FIPS-140-2 v několika systémech od třetích stran.“ Certifikace GnuTLS 3.5.6 B.5
- ^ „Matrix SSL Toolkit“ (PDF).
- ^ Limited, ARM. „Je certifikace mbed TLS FIPS? - Znalostní databáze“. polarssl.org.
- ^ „Ověření FIPS - MozillaWiki“. wiki.mozilla.org.
- ^ „OpenSSL a FIPS 140-2“. Archivovány od originál dne 2013-05-28. Citováno 2014-11-15.
- ^ „Vyhledávání - program pro ověření kryptografického modulu - CSRC“. csrc.nist.gov.
- ^ „Vyhledávání - program pro ověření kryptografického modulu - CSRC“. csrc.nist.gov.
- ^ Kryptografické moduly ověřené Microsoft FIPS 140
- ^ "wolfCrypt FIPS 140-2 Informace - wolfSSL vestavěná knihovna SSL / TLS".
- ^ A b C d E F G h i j k l m n Ó p q r s t u proti w X y z aa ab ac inzerát ae af ag ah ai aj ak RFC 4492
- ^ A b C d E F draft-chudov-cryptopro-cptls-04 - GOST 28147-89 Cipher Suite pro zabezpečení transportní vrstvy (TLS)
- ^ A b C d Mohou být k dispozici rozšíření na podporu JSSE v SChannel.[Citace je zapotřebí ]
- ^ A b C d E „Vydán LibreSSL 2.1.2“. 2014-12-09. Citováno 2015-01-20.
- ^ „Poznámky k verzi NSS 3.20“. Mozilla. 2015-08-19. Citováno 2015-08-20.
- ^ A b C d Mozilla.org. „Chyba 518787 - Přidání podpory kryptografického algoritmu GOST v NSS“. Citováno 2014-07-01.
- ^ A b C d Mozilla.org. „Chyba 608725 - přidání ruských kryptoalgoritmů GOST do NSS a Thunderbird“. Citováno 2014-07-01.
- ^ A b C d openssl / engine / ccgost / README.gost
- ^ A b C d E F G h i j k l m n Ó Mohou být k dispozici rozšíření na podporu GOST v SChannel.[Citace je zapotřebí ]
- ^ A b C d „Informační zpravodaj Microsoft Security 3174644“.
- ^ A b C „Bulletin zabezpečení společnosti Microsoft MS14-066 - kritický (nejčastější dotazy k aktualizaci sekce)“. Microsoft. 11. listopadu 2014. Citováno 11. listopadu 2014.
- ^ A b C Thomlinson, Matt (11. listopadu 2014). „Stovky milionů zákazníků společnosti Microsoft nyní těží z nejlepšího šifrování ve své třídě“. Zabezpečení společnosti Microsoft. Citováno 11. listopadu 2014.
- ^ A b Aktualizace přidává nové šifrovací sady TLS a mění priority šifrovacích sad v systému Windows 8.1 a Windows Server 2012 R2
- ^ A b C d E F RFC 5054
- ^ A b C d E F RFC 4279
- ^ A b RFC 5489
- ^ A b RFC 2712
- ^ A b C „Vydání LibreSSL 2.0.4“. Citováno 2014-08-04.
- ^ A b C „Bug 405155 - add support for TLS-SRP, rfc5054“. Mozilla. Citováno 2014-01-25.
- ^ A b C d „Chyba 306435 - Prohlížeče Mozilla by měly podporovat nový protokol IETF TLS-PSK, aby pomohly omezit phishing.“. Mozilla. Citováno 2014-01-25.
- ^ „Chyba 1170510 - Implementace podpory NSS na straně serveru pro DH_anon“. Mozilla. Citováno 2015-06-03.
- ^ „Chyba 236245 - Aktualizace ECC / TLS podle RFC 4492“. Mozilla. Citováno 2014-06-09.
- ^ „Změny mezi 0,9,6 h a 0,9,7 [31. prosince 2002]“. Citováno 2016-01-29.
- ^ A b „Změny mezi 0.9.8n a 1.0.0 [29. března 2010]“. Citováno 2016-01-29.
- ^ „Poznámky k verzi RSA BSAFE SSL-J 6.2.4“. 2018-09-05.
- ^ „wolfSSL (Formerly CyaSSL) Release 3.9.0 (18.03.2016)“. 2016-03-18. Citováno 2016-04-05.
- ^ RFC 5280
- ^ RFC 3280
- ^ RFC 2560
- ^ RFC 6698, RFC 7218
- ^ Laurie, B.; Langley, A .; Kasper, E. (červen 2013). Transparentnost certifikátu. IETF. doi:10.17487 / RFC6962. ISSN 2070-1721. RFC 6962. Citováno 2020-08-31.
- ^ „MatrixSSL 3.8.3“. Archivovány od originál dne 2017-01-19. Citováno 2017-01-18.
- ^ „výchozí nastavení mbed TLS 2.0 implementují osvědčené postupy“. Citováno 2017-01-18.
- ^ „Bug 672600 - Use DNSSEC / DANE chain stapled into TLS handshake in certificate chain validation“. Mozilla. Citováno 2014-06-18.
- ^ A b „Jak zrušení certifikátu funguje“. Microsoft TechNet. Microsoft. 16. března 2012. Citováno 10. července 2013.
- ^ A b RFC 5288, RFC 5289
- ^ A b RFC 6655, RFC 7251
- ^ A b RFC 6367
- ^ A b RFC 5932, RFC 6367
- ^ A b C d RFC 6209
- ^ A b RFC 4162
- ^ A b „Sweet32: Narozeninové útoky na 64bitové blokové šifry v TLS a OpenVPN“. sweet32.info.
- ^ A b RFC 7905
- ^ A b „Verze 1.11.12, 02.01.2015 - Botan“. 2015-01-02. Citováno 2015-01-09.
- ^ „gnutls 3.6.0“. 2017-09-21. Citováno 2018-01-07.
- ^ „ořechy 3.4.12“. 2016-05-20. Archivovány od originál dne 2016-10-13. Citováno 2016-05-29.
- ^ „Poznámky k verzi JDK 10.0.1“. 2018-04-18. Citováno 2018-08-27.
- ^ „Poznámky k verzi JDK 12“. Citováno 2019-06-20.
- ^ A b C d „Změny v 3.8.3“. Citováno 2016-06-19.[trvalý mrtvý odkaz ]
- ^ „Poznámky k verzi PolarSSL 1.3.8“.
- ^ A b „Vydáno Mbed TLS 2.11.0, 2.7.4 a 2.1.13“. Citováno 2018-08-30.
- ^ „Vydáno Mbed TLS 2.12.0, 2.7.5 a 2.1.14“. Citováno 2018-08-30.
- ^ „Poznámky k verzi NSS 3.25“. Mozilla Developer Network. Mozilla. Citováno 2016-07-01.
- ^ „Bug 940119 - libssl nepodporuje žádné šifrovací sady TLS_ECDHE _ * _ CAMELLIA _ * _ GCM“. Mozilla. Citováno 2013-11-19.
- ^ „Je vydána NSS 3.12“. Citováno 2013-11-19.
- ^ „Poznámky k verzi NSS 3.12.3“. Mozilla Developer Network. Mozilla. Citováno 2014-07-01.
- ^ „Poznámky k verzi NSS 3.23“. Mozilla Developer Network. Mozilla. Citováno 2016-03-09.
- ^ "openssl / CHANGES na OpenSSL_1_0_1-stabilní · openssl / openssl". Citováno 2015-01-20.
- ^ Inc., OpenSSL Foundation. „/news/openssl-1.1.1-notes.html“. www.openssl.org.
- ^ Hofix 984963: Šifrovací sady TLS AES pro Microsoft Windows 2003
- ^ A b C „Qualys SSL Labs - Projects / User Agent Capabilities: IE 11 / Win 10 Preview“. dev.ssllabs.com.
- ^ RFC 5469
- ^ A b „Sweet32: Narozeninové útoky na 64bitové blokové šifry v TLS a OpenVPN“.
- ^ „Verze 1.11.15, 2015-03-08 - Botan“. 2015-03-08. Citováno 2015-03-11.
- ^ „Java Cryptography Architecture Dokumentace poskytovatelů Oracle“. docs.oracle.com.
- ^ „Poznámky k vydání NSS 3.15.3“. Mozilla Developer Network. Mozilla. Citováno 2014-07-13.
- ^ „MFSA 2013-103: Miscellaneous Network Security Services (NSS) zranitelnosti“. Mozilla. Mozilla. Citováno 2014-07-13.
- ^ A b C „RC4 je nyní zakázán v Microsoft Edge a Internet Explorer 11 - Blog Microsoft Edge Dev Blog Blog Microsoft Edge Dev“. blogs.windows.com. 2016-08-09.
- ^ A b „wolfSSL (Formerly CyaSSL) Release 3.7.0 (10/26/2015)“. 2015-10-26. Citováno 2015-11-19.
- ^ A b Ukázalo se, že vyjednávání libovolných křivek je pro určité velikosti křivek nejisté Mavrogiannopoulos, Nikos a Vercautern, Frederik a Velichkov, Vesselin a Preneel, Bart (2012). Křížový protokol útoku na protokol TLS. Sborník příspěvků z konference ACM 2012 o počítačové a komunikační bezpečnosti (PDF). 62–72. ISBN 978-1-4503-1651-4.CS1 maint: více jmen: seznam autorů (odkaz)
- ^ A b C RFC 7027
- ^ Simon, Josefsson; Yoav, Nir; Manuel, Pégourié-Gonnard. „Šifrovací sady eliptické křivky (ECC) pro zabezpečení transportní vrstvy (TLS) verze 1.2 a starší“. tools.ietf.org.
- ^ Simon, Josefsson; Manuel, Pégourié-Gonnard. „Curve25519 and Curve448 for Transport Layer Security (TLS)“. tools.ietf.org.
- ^ A b C d E F G h i Simon, Josefsson; Manuel, Pégourié-Gonnard. „Další eliptické křivky pro klíčovou dohodu o zabezpečení transportní vrstvy (TLS)“. tools.ietf.org.
- ^ A b C „Verze 1.11.5, 10. 11. 2013 - Botan“. 2013-11-10. Citováno 2015-01-23.
- ^ „Přehled nových funkcí v GnuTLS 3.5.0“. 2016-05-02. Citováno 2016-12-09.
- ^ „Poznámky k vydání JDK 13 pro předčasný přístup“. Citováno 2019-06-20.
- ^ „Poznámky k verzi LibreSSL 2.5.1“. OpenBSD. 2017-01-31. Citováno 2017-02-23.
- ^ "Seznam změn MatrixSSL 4.0". Citováno 2018-09-18.
- ^ A b C „Vydání PolarSSL 1.3.1“. 2013-10-15. Citováno 2015-01-23.
- ^ „Vydání PolarSSL 1.3.3“. 2013-12-31. Citováno 2015-01-23.
- ^ „Vydáno Mbed TLS 2.9.0, 2.7.3 a 2.1.12“. Citováno 2018-08-30.
- ^ A b C „Chyba 943639 - Podpora křivky Brainpool ECC (rfc5639)“. Mozilla. Citováno 2014-01-25.
- ^ „Bug 957105 - Add support for curve25519 Key Exchange and UMAC MAC support for TLS“. Mozilla. Citováno 2017-02-23.
- ^ „Poznámky k verzi OpenSSL 1.1.0x“. 25. srpna 2016. Citováno 18. května 2018.
- ^ „Sledovač OpenSSL GitHub # 487“. 2. prosince 2015. Citováno 18. května 2018.
- ^ „Poznámky k verzi OpenSSL 1.1.1x“. 1. května 2018. Citováno 18. května 2018.
- ^ „Sledovač OpenSSL GitHub # 5049“. 9. ledna 2018. Citováno 18. května 2018.
- ^ „wolfSSL (Formerly CyaSSL) Release 3.4.6 (03/30/2015)“. 2015-03-30. Citováno 2015-11-19.
- ^ „SHA2 a Windows“. Citováno 2014-09-08.
- ^ RFC 3749
- ^ RFC 5746
- ^ A b C d RFC 6066
- ^ RFC 7301
- ^ RFC 6091
- ^ RFC 4680
- ^ RFC 5077
- ^ RFC 5705
- ^ RFC 7366
- ^ RFC 7507
- ^ RFC 7627
- ^ RFC 7685
- ^ RFC 7250
- ^ „Verze 1.11.16, 29.03.2015 - Botan“. 2016-03-29. Citováno 2016-09-08.
- ^ „Verze 1.11.10, 10.12.2014 - Botan“. 2014-12-10. Citováno 2014-12-14.
- ^ A b „Verze 1.11.26, 2016-01-04 - Botan“. 2016-01-04. Citováno 2016-02-25.
- ^ Je přítomen, ale ve výchozím nastavení deaktivován z důvodu nedostatečného použití jakoukoli implementací.
- ^ „ořechy 3.2.0“. Archivovány od originál dne 31.01.2016. Citováno 2015-01-26.
- ^ https://lists.gnupg.org/pipermail/gnutls-help/2017-August/004364.html
- ^ „ořechy 3.4.4“. Archivovány od originál dne 2017-07-17. Citováno 2015-08-25.
- ^ "% DUMBFW prioritní klíčové slovo". Citováno 2017-04-30.
- ^ „ořechy 3.6.6“. 2019-01-25. Citováno 2019-09-01.
- ^ „Vydán LibreSSL 2.1.3“. 2015-01-22. Citováno 2015-01-22.
- ^ „Vydán LibreSSL 2.1.4“. 2015-03-04. Citováno 2015-03-04.
- ^ "MatrixSSL - novinky". 04.12.2014. Archivovány od originál dne 2015-02-14. Citováno 2015-01-26.
- ^ "Přehled stahování - PolarSSL". 2014-04-11. Citováno 2015-01-26.
- ^ A b C „uvolněna mbed TLS 1.3.10“. 2015-02-08. Citováno 2015-02-09.
- ^ A b „Poznámky k vydání NSS 3.15.5“. Mozilla Developer Network. Mozilla. Citováno 2015-01-26.
- ^ „Chyba 961416 - Podpora RFC6091 - Používání klíčů OpenPGP pro ověřování zabezpečení transportní vrstvy (TLS1.2)“. Mozilla. Citováno 2014-06-18.
- ^ „Bug 972145 - Implement the encrypt-then-MAC TLS extension“. Mozilla. Citováno 2014-11-06.
- ^ „Poznámky k vydání NSS 3.17.1“. Citováno 2014-10-17.
- ^ „Poznámky k verzi NSS 3.21“. Citováno 2015-11-14.
- ^ http://www.openssl.org/news/secadv_20141015.txt
- ^ „OpenSSL 1.1.0 Release Notesl“.[trvalý mrtvý odkaz ]
- ^ „Hlavní změny mezi OpenSSL 1.0.1f a OpenSSL 1.0.1g [7. dubna 2014]“. 07.04.2014. Archivovány od originál dne 2015-01-20. Citováno 2015-02-10.
- ^ A b C d „Bulletin zabezpečení společnosti Microsoft MS15-121“. Citováno 2017-11-29.
- ^ A b „Co je nového v TLS / SSL (Schannel SSP)“. Citováno 2014-06-18.
- ^ „Verze 1.11.31, 2015-08-30 - Botan“. 2016-08-30. Citováno 2016-09-08.
- ^ https://lists.gnupg.org/pipermail/gnutls-devel/2016-October/008194.html
- ^ „Poskytovatel Java SSL s podporou AES-NI“. stackoverflow.com.
- ^ „Začlenili jsme podporu pro AES-NI do našich modulů AES a GCM“. 2013-12-31. Citováno 2014-01-07.
- ^ Normálně libssl NSS provádí všechny operace přes rozhraní PKCS # 11, ať už s hardwarovými nebo softwarovými tokeny
- ^ „Bug 706024 - AES-NI enhancements to NSS on Sandy Bridge systems“. Citováno 2013-09-28.
- ^ „Bug 479744 - RFE: VIA Padlock ACE support (hardware RNG, AES, SHA1 and SHA256)“. Citováno 2014-04-11.
- ^ https://habrahabr.ru/post/134725/, http://forum.rutoken.ru/topic/1639/, https://dev.rutoken.ru/pages/viewpage.action?pageId=18055184 (v Rusku)
- ^ „git.openssl.org Git - openssl.git / commitdiff“. git.openssl.org.
- ^ „Využijte pokyny CPU pro kryptografii AES“.
- ^ „RSA BSAFE SSL-J 6.2.5 - poznámky k verzi“.
- ^ https://opensource.apple.com/source/Security/Security-55179.13/sec/Security/SecECKey.c
- ^ http://km.support.apple.com/library/APPLE/APPLECARE_ALLGEOS/HT5396/Crypto_Officer_Role_Guide_for_FIPS_140-2_Compliance_OS_X_Mountain_Lion_v10.8.pdf
- ^ „wolfSSL Asynchronous Intel QuickAssist Support - wolfSSL“. 18. ledna 2017.
- ^ "LibreSSL 2.2.1 Vydáno". 2015-07-08. Citováno 2016-01-30.
- ^ A b RFC 7512
- ^ "libp11: knihovna obálky PKCS # 11". 19. ledna 2018 - prostřednictvím GitHub.
- ^ Za běhu vyměnitelné / rozšířitelné.
- ^ "Nss compat ossl - Fedora Project Wiki". fedoraproject.org.
- ^ A b „NSPR“. Mozilla Developer Network.
- ^ Pro Unix / Linux používá / dev / urandom, pokud je k dispozici, pro Windows používá CAPI. U jiných platforem získává data z hodin a pokouší se otevřít systémové soubory. NSS má sadu funkcí závislých na platformě, které používá k určení náhodnosti.