Протокол Transport Layer Security (TLS) обеспечивает возможность защиты коммуникаций между сетями или внутри них. Это сравнение реализаций TLS сравнивает несколько наиболее известных библиотек . Существует несколько реализаций TLS, которые являются бесплатным программным обеспечением и имеют открытый исходный код .
Все категории сравнения используют стабильную версию каждой реализации, указанной в разделе обзора. Сравнение ограничено функциями, которые напрямую связаны с протоколом TLS.
Обзор
Поддержка версии протокола TLS/SSL
Существует несколько версий протокола TLS. SSL 2.0 — устаревшая [28] версия протокола со значительными недостатками. SSL 3.0 (1996) и TLS 1.0 (1999) — преемники с двумя недостатками в CBC-padding, которые были объяснены в 2001 году Сержем Воденаем. [29] TLS 1.1 (2006) исправил только одну из проблем, переключившись на случайные векторы инициализации (IV) для блочных шифров CBC, тогда как более проблемное использование mac-pad-encrypt вместо безопасного pad-mac-encrypt было устранено в RFC 7366. [30] Обходной путь для SSL 3.0 и TLS 1.0, примерно эквивалентный случайным IV из TLS 1.1, был широко принят многими реализациями в конце 2011 года. [31] В 2014 году была обнаружена уязвимость POODLE в SSL 3.0, которая использует известные уязвимости в CBC и небезопасное согласование резервного варианта, используемое в браузерах. [32]
TLS 1.2 (2008) представил средство для идентификации хэша, используемого для цифровых подписей. Разрешая использование более сильных хэш-функций для цифровых подписей в будущем (rsa, sha256/sha384/sha512) по сравнению с консервативным выбором SSL 3.0 (rsa, sha1+md5), изменение протокола TLS 1.2 непреднамеренно и существенно ослабило цифровые подписи по умолчанию и предоставляет (rsa, sha1) и даже (rsa, md5). [33]
Datagram Transport Layer Security (DTLS или Datagram TLS) 1.0 — это модификация TLS 1.1 для пакетно-ориентированного транспортного уровня, где необходимо допускать потерю пакетов и переупорядочивание пакетов. Ревизия DTLS 1.2, основанная на TLS 1.2, была опубликована в январе 2012 года. [34]
TLS 1.3 (2018), указанный в RFC 8446, включает в себя основные оптимизации и улучшения безопасности. QUIC (2021), указанный в RFC 9000, и DTLS 1.3 (2022), указанный в RFC 9147, основаны на TLS 1.3. Публикация TLS 1.3 и DTLS 1.3 сделала TLS 1.2 и DTLS 1.2 устаревшими.
Обратите внимание, что в SSL 2.0 и SSL 3.0 есть известные уязвимости. В 2021 году IETF опубликовал RFC 8996, также запрещающий согласование TLS 1.0, TLS 1.1 и DTLS 1.0 из-за известных уязвимостей. NIST SP 800-52 требует поддержки TLS 1.3 к январю 2024 года. Поддержка TLS 1.3 означает, что два совместимых узла никогда не будут согласовывать TLS 1.2.
- ^ ab Начиная с SSL-J 7.0 поддержка TLS 1.0 и 1.1 была удалена.
- ^ ab SSL 2.0 client hello поддерживается в целях обратной совместимости, хотя SSL 2.0 не поддерживается.
- ^ Реализация протокола SSL/TLS на стороне сервера по-прежнему поддерживает обработку полученных v2-совместимых клиентских приветственных сообщений. "NSS 3.24 release notes". Mozilla Developer Network . Mozilla. Архивировано из оригинала 2016-08-26 . Получено 2016-06-19 .
- ^ abcdef Secure Transport: SSL 2.0 был прекращен в OS X 10.8. SSL 3.0 был прекращен в OS X 10.11 и iOS 9. TLS 1.1, 1.2 и DTLS доступны в iOS 5.0 и более поздних версиях, а также в OS X 10.9 и более поздних версиях. "Техническое примечание TN2287: Проблемы взаимодействия iOS 5 и TLS 1.2". Библиотека разработчиков iOS . Apple Inc . Получено 2012-05-03 .
- ^ abcd Начиная с OTP 22
- ^ С OTP 23
- ^ "Таблица соответствия TLS 1.3 приложения Erlang OTP SSL".
Криптография NSA Suite B
Необходимые компоненты для криптографии NSA Suite B (RFC 6460):
Согласно CNSSP-15, 256-битная эллиптическая кривая (указанная в FIPS 186-2), SHA-256 и AES с 128-битными ключами достаточны для защиты секретной информации вплоть до уровня «Секретно» , в то время как 384-битная эллиптическая кривая (указанная в FIPS 186-2), SHA-384 и AES с 256-битными ключами необходимы для защиты совершенно секретной информации.
Сертификаты
Обратите внимание, что некоторые сертификации получили серьезную негативную критику со стороны людей, которые фактически в них участвуют. [76]
- ^ с Sun Sparc 5 с Sun Solaris v 2.4SE (рейтинг ITSEC)
- ^ с Sun Ultra-5 с Sun Trusted Solaris версии 2.5.1 (рейтинг ITSEC)
- ^ с Solaris v8.0 с AdminSuite 3.0.1, как указано в отчете UK IT SEC CC № P148 EAL4 на SUN SPARC Ultra-1
- ^ с этими платформами; Red Hat Enterprise Linux версии 4, обновление 1 AS на IBM xSeries 336 с процессором Intel Xeon, Trusted Solaris 8 4/01 на рабочей станции Sun Blade 2500 с процессором UltraSPARC IIIi
- ^ с этими платформами; Red Hat Enterprise Linux v5, работающий на IBM System x 3550, Red Hat Enterprise Linux v5, работающий на HP ProLiant DL145 , Sun Solaris 10 5/08, работающий на рабочей станции Sun SunBlade 2000 , Sun Solaris 10 5/08, работающий на рабочей станции Sun W2100z
Алгоритмы обмена ключами (только сертификаты)
В этом разделе перечислены функции проверки сертификатов, доступные в различных реализациях.
Алгоритмы обмена ключами (альтернативные обмены ключами)
Методы проверки сертификата
Алгоритмы шифрования
- Примечания
- ^ ab Этот алгоритм пока не определен как набор шифров TLS в RFC, предлагается в черновиках.
- ^ Только аутентификация ab, без шифрования
- ^ Этот алгоритм реализован в форке NSS, используемом Pale Moon .
Устаревшие алгоритмы
- Примечания
- ^ abcd IDEA и DES были удалены из TLS 1.2. [153]
- ^ abcdef 40-битные наборы шифров были разработаны для работы с уменьшенной длиной ключа, чтобы соответствовать правилам США об экспорте криптографического программного обеспечения, содержащего определенные сильные алгоритмы шифрования (см. Экспорт криптографии из США ). Эти слабые наборы запрещены в TLS 1.1 и более поздних версиях.
- ^ ab Атаки RC4 ослабляют или нарушают RC4, используемый в SSL/TLS. Использование RC4 запрещено RFC 7465.
- ^ ab Атаки RC4 ослабляют или нарушают RC4, используемый в SSL/TLS.
Поддерживаемые эллиптические кривые
В этом разделе перечислены поддерживаемые эллиптические кривые каждой реализацией.
Определенные кривые в RFC 8446 (для TLS 1.3) и RFC 8422, 7027 (для TLS 1.2 и более ранних версий)
Предлагаемые кривые
Устаревшие кривые в RFC 8422
- Примечания
- ^ abcdefghijklmnopqrstu v Эти эллиптические кривые были «отключены по умолчанию» в текущих семействах JDK как часть JDK-8236730. [185]
- ^ abcdefghijklmnopqrstu v Эти эллиптические кривые были впоследствии удалены в JDK 16+ как часть JDK-8252601. [186]
Целостность данных
Сжатие
Обратите внимание, что эксплойт безопасности CRIME использует сжатие TLS, поэтому консервативные реализации не включают сжатие на уровне TLS. Сжатие HTTP не связано и не затрагивается этим эксплойтом, но эксплуатируется связанной атакой BREACH .
Расширения
В этом разделе перечислены расширения, поддерживаемые каждой реализацией. Обратите внимание, что расширение Secure Renegotiation имеет решающее значение для безопасности HTTPS-клиента [ требуется ссылка ] . Клиенты TLS, не реализующие его, уязвимы для атак, независимо от того, реализует ли клиент повторное согласование TLS.
Вспомогательная криптография
В этом разделе перечислены известные возможности реализации по использованию наборов инструкций ЦП, оптимизирующих шифрование, или использованию системно-специфичных устройств, которые обеспечивают доступ к базовому криптографическому оборудованию для ускорения или разделения данных.
- ^ Реализации на чистом Java опираются на возможности оптимизации процессора JVM , такие как поддержка OpenJDK для AES-NI [229]
- ^ BSAFE SSL-J можно настроить для работы в собственном режиме, используя BSAFE Crypto-C Micro Edition, чтобы воспользоваться преимуществами оптимизации процессора. [230]
Системно-специфические бэкэнды
В этом разделе описывается способность реализации использовать доступные бэкэнды, специфичные для операционной системы, или даже бэкэнды, предоставляемые другой реализацией.
Поддержка криптографического модуля/токена
Зависимости кода
Среда разработки
Проблемы переносимости
Смотрите также
- SCTP — с поддержкой DTLS
- DCCP — с поддержкой DTLS
- SRTP — с поддержкой DTLS (DTLS-SRTP) и Secure Real-Time Transport Control Protocol (SRTCP)
Ссылки
- ^ "Botan: Примечания к выпуску" . Получено 2024-08-13 .
- ^ "Заметки о выпуске - bouncycastle.org". 2023-11-13 . Получено 2023-11-18 .
- ^ "Ресурсы Java LTS - bouncycastle.org". 2024-03-01 . Получено 2024-03-31 .
- ^ "Ресурсы Java FIPS - bouncycastle.org". 2023-09-28 . Получено 2022-09-29 .
- ^ "The Legion of the Bouncy Castle C# Cryptography APIs". 2024-02-05 . Получено 2024-02-06 .
- ^ "Ресурсы C# .NET FIPS - bouncycastle.org". 2023-02-28 . Получено 2023-02-28 .
- ^ "Рекомендация по выпуску Dell BSAFE SSL-J 6.6". Dell .
- ^ "Dell BSAFE SSL-J 7.3.1 Release Advisory". Dell .
- ^ «Информация о выпуске Dell BSAFE Micro Edition Suite 4.6.2».
- ^ «Информация о выпуске Dell BSAFE Micro Edition Suite 5.0.2.1».
- ^ Гутманн, Питер (2019). «Загрузка». cryptlib. Школа компьютерных наук Оклендского университета . Получено 07.08.2019 .
- ^ "gnutls 3.8.5".
- ^ "Java™ SE Development Kit 23, 23.0.1 Release Notes". Oracle Corporation . Получено 2024-10-16 .
- ^ "Java™ SE Development Kit 21, 21.0.5 Release Notes". Oracle Corporation . Получено 2024-10-16 .
- ^ "Java™ SE Development Kit 17, 17.0.13 Release Notes". Oracle Corporation . Получено 2024-10-16 .
- ^ "Java™ SE Development Kit 11, 11.0.25 Release Notes". Oracle Corporation . Получено 2024-10-16 .
- ^ "Java™ SE Development Kit 8, Update 431 Release Notes". Oracle Corporation . Получено 2024-10-16 .
- ^ "LibreSSL 4.0.0 Released". 14 октября 2024 г. Получено 15 октября 2024 г.
- ^ Перечисленные функции относятся к версии с закрытым исходным кодом.
- ^ "MatrixSSL 4.2.2 Открытый релиз". 2019-09-11 . Получено 2020-03-20 .
- ^ "Release 3.6.2". 15 октября 2024 г. Получено 22 октября 2024 г.
- ^ ab "NSS:Release versions". Mozilla Wiki . Получено 7 ноября 2022 г.
- ^ "OpenSSL 3.4.0". 22 октября 2024 г. Получено 22 октября 2024 г.
- ^ "rustls/rustls releases". Github . Получено 28 августа 2024 г.
- ^ "описание продукта wolfSSL" . Получено 2016-05-03 .
- ^ "wolfSSL Embedded SSL/TLS" . Получено 2016-05-03 .
- ^ "wolfSSL ChangeLog". 2023-10-31 . Получено 2023-10-31 .
- ^ Запрет на использование протокола SSL версии 2.0. doi : 10.17487/RFC6176 . RFC 6176.
- ^ Воденай, Серж (2001). «CBC-Padding: недостатки безопасности в SSL, IPsec, WTLS,...» (PDF) .
- ^ ab Encrypt-then-MAC для безопасности транспортного уровня (TLS) и безопасности датаграмм транспортного уровня. doi : 10.17487/RFC7366 . RFC 7366.
- ^ "Rizzo/Duong BEAST Countermeasures". Архивировано из оригинала 2016-03-11.
- ^ Мёллер, Бодо; Дуонг, Тай; Котович, Кшиштоф (сентябрь 2014 г.). "This POODLE Bites: Exploiting The SSL 3.0 Fallback" (PDF) . Архивировано из оригинала (PDF) 15 октября 2014 г. . Получено 15 октября 2014 г. .
- ^ "Основные отличия TLSv1.2 от TLSv1.1". Протокол Transport Layer Security (TLS) версии 1.2. раздел 1.2. doi : 10.17487/RFC5246 . RFC 5246.
- ^ abc RFC 6347. doi : 10.17487/RFC6347 .
- ^ ab Elgamal, Taher; Hickman, Kipp EB (19 апреля 1995 г.). Протокол SSL. ID draft-hickman-netscape-ssl-00.
- ^ ab RFC 6101. doi : 10.17487/RFC6101 .
- ^ ab RFC 2246. doi : 10.17487/RFC2246 .
- ^ ab RFC 4346. doi : 10.17487/RFC4346 .
- ^ abcdefghijkl RFC 5246. doi : 10.17487/RFC5246 .
- ^ ab RFC 4347. doi : 10.17487/RFC4347 .
- ^ "Версия 1.11.13, 2015-01-11 — Botan". 2015-01-11. Архивировано из оригинала 2015-01-09 . Получено 2015-01-16 .
- ^ abc "RSA BSAFE Технические спецификации Сравнительные таблицы" (PDF) . Архивировано из оригинала (PDF) 2015-09-24 . Получено 2015-01-09 .
- ^ abcdef "[gnutls-devel] GnuTLS 3.4.0 выпущен". 2015-04-08 . Получено 2015-04-16 .
- ^ "[gnutls-devel] GnuTLS 3.6.3". 2018-07-16 . Получено 2018-09-16 .
- ^ "Java SE Development Kit 8, примечания к выпуску обновления 31" . Получено 14.01.2024 .
- ^ ab "Примечание к выпуску: отключение TLS 1.0 и 1.1" . Получено 2024-01-14 .
- ^ abcdefghijklm "OpenBSD 5.6 Released". 2014-11-01 . Получено 2015-01-20 .
- ^ "LibreSSL 2.3.0 Released". 2015-09-23 . Получено 2015-09-24 .
- ^ "LibreSSL 3.3.3 Released". 2021-05-04 . Получено 2021-05-04 .
- ^ "MatrixSSL - Новости". Архивировано из оригинала 2015-02-14 . Получено 2014-11-09 .
- ^ abcd "Mbed TLS 3.0.0 branch released". GitHub . 2021-07-07 . Получено 2021-08-13 .
- ^ abcd "mbed TLS 2.0.0 выпущен". 2015-07-10 . Получено 2015-07-14 .
- ^ "NSS 3.19 release notes". Mozilla Developer Network . Mozilla. Архивировано из оригинала 2015-06-05 . Получено 2015-05-06 .
- ^ ab "NSS 3.14 release notes". Mozilla Developer Network . Mozilla. Архивировано из оригинала 2013-01-17 . Получено 2012-10-27 .
- ^ "NSS 3.15.1 release notes". Mozilla Developer Network . Mozilla . Получено 2013-08-10 .
- ^ "NSS 3.39 release notes". Mozilla Developer Network . Mozilla. 2018-08-31. Архивировано из оригинала 2021-12-07 . Получено 2018-09-15 .
- ^ "NSS 3.16.2 release notes". Mozilla Developer Network . Mozilla. 2014-06-30. Архивировано из оригинала 2021-12-07 . Получено 2014-06-30 .
- ^ abcdefghijklm "Заметки о выпуске серии OpenSSL 1.1.0". www.openssl.org . Архивировано из оригинала 2018-03-17 . Получено 2016-09-03 .
- ^ ab "Основные изменения между OpenSSL 1.0.0h и OpenSSL 1.0.1 [14 марта 2012 г.]". 2012-03-14. Архивировано из оригинала 5 декабря 2014 г. Получено 2015-01-20 .
- ^ abcdef "Основные изменения между OpenSSL 1.0.1l и OpenSSL 1.0.2 [22 января 2015 г.]". Архивировано из оригинала 4 сентября 2014 г. Получено 22 января 2015 г.
- ^ abcdefghijk "документация по реализованным и нереализованным функциям Rustls" . Получено 28.08.2024 .
- ^ "S2N Readme". GitHub . 2019-12-21.
- ^ «Наборы шифров TLS (Windows)». msdn.microsoft.com . 14 июля 2023 г.
- ^ ab "Наборы шифров TLS в Windows Vista (Windows)". msdn.microsoft.com . 25 октября 2021 г.
- ^ abc «Наборы шифров в TLS/SSL (Schannel SSP) (Windows)». msdn.microsoft.com . 14 июля 2023 г.
- ^ ab "Доступно обновление, которое добавляет поддержку DTLS в Windows 7 SP1 и Windows Server 2008 R2 SP1". Microsoft . Получено 13 ноября 2012 г. .
- ^ "Протоколы в TLS/SSL (Schannel SSP)". Microsoft. 2022-05-25 . Получено 2023-11-18 .
- ^ "Протоколы в TLS/SSL (Schannel SSP)". 25 мая 2022 г. Получено 6 ноября 2022 г.
- ^ "@badger: похоже, что версия 1.3 есть в iOS 11 и macOS 10.13". 2018-03-09 . Получено 2018-03-09 .
- ^ "[wolfssl] wolfSSL 3.6.6 Выпущен". 20.08.2015 . Получено 24.08.2015 .
- ^ "[wolfssl] wolfSSL 3.13.0 Выпущен". 2017-12-21 . Получено 2022-01-17 .
- ^ «Erlang — Соответствие стандартам».
- ^ abc "Улучшения безопасности в JDK 8". docs.oracle.com .
- ^ "Ошибка 663320 - (NSA-Suite-B-TLS) Реализовать RFC6460 (профиль NSA Suite B для TLS)". Mozilla . Получено 2014-05-19 .
- ^ «Введение в соответствие с криптографией Suite B». 18 сентября 2012 г.
- ^ "Speeds and Feeds › Secure or Compliant, Pick One". Архивировано из оригинала 27 декабря 2013 г.
- ^ "Search - Cryptographic Module Validation Program - CSRC". csrc.nist.gov . Архивировано из оригинала 2014-12-26 . Получено 2014-03-18 .
- ^ ""Сертифицирован ли Botan FIPS 140?" Часто задаваемые вопросы — Botan". Архивировано из оригинала 29.11.2014 . Получено 16.11.2014 .
- ^ "Поиск - Программа проверки криптографических модулей - CSRC". csrc.nist.gov . 11 октября 2016 г.
- ^ "cryptlib". 11 октября 2013 г. Архивировано из оригинала 11 октября 2013 г.
- ^ "B.5 Certification". GnuTLS 3.7.7 . Получено 26 сентября 2022 г. .
- ^ «Набор инструментов Matrix SSL» (PDF) .
- ^ "Сертифицирован ли mbed TLS FIPS? - Документация Mbed TLS". Документация Mbed TLS .
- ^ "Проверка FIPS - MozillaWiki". wiki.mozilla.org .
- ^ "OpenSSL и FIPS 140-2". Архивировано из оригинала 2013-05-28 . Получено 2014-11-15 .
- ^ "rustls FIPS documentation" . Получено 2024-08-28 .
- ^ «Проверенные криптографические модули Microsoft FIPS 140».
- ^ «Информация о wolfCrypt FIPS 140-2 — встроенная библиотека SSL/TLS wolfSSL».
- ^ abcdefghijklmnopqrstu vwxyz aa ab ac ad ae af ag ah RFC 4492. doi : 10.17487/RFC4492 .
- ^ abcdef ГОСТ 28147-89 Наборы шифров для защиты транспортного уровня (TLS). Идентификатор draft-chudov-cryptopro-cptls-04.
- ^ abcde "LibreSSL 2.1.2 выпущен". 2014-12-09 . Получено 2015-01-20 .
- ^ "NSS 3.20 release notes". Mozilla . 2015-08-19. Архивировано из оригинала 2021-12-07 . Получено 2015-08-20 .
- ^ abcd Mozilla.org. "Ошибка 518787 - Добавить поддержку алгоритма шифрования ГОСТ в NSS" . Получено 01.07.2014 .
- ^ abcd Mozilla.org. "Ошибка 608725 - Добавить российские криптоалгоритмы ГОСТ в NSS и Thunderbird" . Получено 01.07.2014 .
- ^ abcd "OpenSSL: CVS Web Interface". Архивировано из оригинала 2013-04-15 . Получено 2014-11-12 .
- ^ abcdefghijklmno Могут быть доступны расширения для поддержки ГОСТ в Schannel. [ необходима цитата ]
- ^ abcd "Советы по безопасности Microsoft 3174644". 14 октября 2022 г.
- ^ abc "Microsoft Security Bulletin MS14-066 - Критический (Часто задаваемые вопросы об обновлении раздела)". Microsoft. 11 ноября 2014 г. Получено 11 ноября 2014 г.
- ^ abc Томлинсон, Мэтт (11 ноября 2014 г.). «Сотни миллионов клиентов Microsoft теперь получают выгоду от лучшего в своем классе шифрования». Microsoft Security . Получено 11 ноября 2014 г. .
- ^ ab "Обновление добавляет новые наборы шифров TLS и изменяет приоритеты наборов шифров в Windows 8.1 и Windows Server 2012 R2". support.microsoft.com .
- ^ abcdef RFC 5054. doi : 10.17487/RFC5054 .
- ^ abcdef RFC 4279. doi : 10.17487/RFC4279 .
- ^ ab RFC 5489. doi : 10.17487/RFC5489 .
- ^ ab RFC 2712. doi : 10.17487/RFC2712 .
- ^ "RSA BSAFE SSL-J 6.2.4 Release Notes". 2018-09-05. Архивировано из оригинала 2018-09-10.
- ^ abc "LibreSSL 2.0.4 выпущен" . Получено 2014-08-04 .
- ^ abc "Ошибка 405155 - добавить поддержку TLS-SRP, rfc5054". Mozilla . Получено 2014-01-25 .
- ^ abcd "Ошибка 306435 — браузеры Mozilla должны поддерживать новый протокол IETF TLS-PSK, чтобы помочь сократить фишинг". Mozilla . Получено 25.01.2014 .
- ^ "Ошибка 1170510 - Реализация поддержки NSS на стороне сервера для DH_anon". Mozilla . Получено 2015-06-03 .
- ^ "Ошибка 236245 - Обновите ECC/TLS для соответствия RFC 4492". Mozilla . Получено 2014-06-09 .
- ^ "Изменения между 0.9.6h и 0.9.7 [31 декабря 2002 г.]" . Получено 29.01.2016 .
- ^ ab "Изменения между 0.9.8n и 1.0.0 [29 марта 2010 г.]" . Получено 29.01.2016 .
- ^ "wolfSSL (ранее CyaSSL) Release 3.9.0 (18.03.2016)". 2016-03-18 . Получено 2016-04-05 .
- ^ RFC 5280. doi : 10.17487/RFC5280 .
- ^ RFC 3280. doi : 10.17487/RFC3280 .
- ^ RFC 2560. doi : 10.17487/RFC2560 .
- ^ RFC 6698. doi : 10.17487/RFC6698 .
- ^ RFC 7218. doi : 10.17487/RFC7218 .
- ^ Лори, Б.; Лэнгли, А.; Каспер, Э. (июнь 2013 г.). Прозрачность сертификатов. IETF . doi : 10.17487/RFC6962 . ISSN 2070-1721. RFC 6962. Получено 31 августа 2020 г.
- ^ "MatrixSSL 3.8.3". Архивировано из оригинала 2017-01-19 . Получено 2017-01-18 .
- ^ "mbed TLS 2.0 defaults реализует лучшие практики" . Получено 2017-01-18 .
- ^ "Ошибка 672600 - Использование цепочки DNSSEC/DANE, вшитой в рукопожатие TLS при проверке цепочки сертификатов". Mozilla . Получено 2014-06-18 .
- ^ "Проверка CRL · Проблема № 3499 · aws/s2n-tls". GitHub . Получено 2022-11-01 .
- ^ "Поддержка дайджеста OCSP для SHA-256 · Проблема № 2854 · aws/s2n-tls · GitHub". GitHub . Получено 01.11.2022 .
- ^ "[RFC 6962] Клиент s2n может проверять расширение TLS временной метки подписанного сертификата · Проблема № 457 · aws/s2n-tls · GitHub". GitHub . Получено 01.11.2022 .
- ^ ab "Как работает отзыв сертификата". Microsoft TechNet . Microsoft . 16 марта 2012 г. . Получено 10 июля 2013 г. .
- ^ аб
- RFC 5288. doi : 10.17487/RFC5288 .
- RFC 5289. doi : 10.17487/RFC5289 .
- ^ ab RFC 6655, RFC 7251
- ^ abcd RFC 6367. doi : 10.17487/RFC6367 .
- ^ ab RFC 5932. doi : 10.17487/RFC5932 .
- ^ abcd RFC 6209. doi : 10.17487/RFC6209 .
- ^ ab RFC 4162. doi : 10.17487/RFC4162 .
- ^ ab "Sweet32: атаки методом "дней рождения" на 64-битные блочные шифры в TLS и OpenVPN". sweet32.info .
- ^ ab RFC 7905. doi : 10.17487/RFC7905 .
- ^ ab «Версия 1.11.12, 02.01.2015 — Ботан». 2015-01-02 . Проверено 9 января 2015 г.
- ^ "gnutls 3.6.0". 2017-09-21 . Получено 2018-01-07 .
- ^ "gnutls 3.4.12". 2016-05-20. Архивировано из оригинала 2016-10-13 . Получено 2016-05-29 .
- ^ "Java SE DevelopmentK Kit 10 - 10.0.1 Заметки о выпуске". 2018-04-17 . Получено 2024-01-14 .
- ^ "Заметки о выпуске JDK 12" . Получено 2024-01-14 .
- ^ abcd "Изменения в 3.8.3". GitHub . Получено 2016-06-19 .[ постоянная мертвая ссылка ]
- ^ ab "Mbed TLS 2.11.0, 2.7.4 и 2.1.13 выпущены" . Получено 2018-08-30 .
- ^ "Mbed TLS 2.12.0, 2.7.5 и 2.1.14 выпущены" . Получено 2018-08-30 .
- ^ "NSS 3.25 release notes". Mozilla Developer Network . Mozilla. Архивировано из оригинала 2021-12-07 . Получено 2016-07-01 .
- ^ "Ошибка 940119 - libssl не поддерживает ни один набор шифров TLS_ECDHE_*_CAMELLIA_*_GCM". Mozilla . Получено 2013-11-19 .
- ^ "NSS 3.12 выпущен" . Получено 2013-11-19 .
- ^ "NSS 3.12.3 Release Notes". Mozilla Developer Network . Mozilla. Архивировано из оригинала 2023-04-02 . Получено 2023-04-01 .
- ^ "NSS 3.23 release notes". Mozilla Developer Network . Mozilla. Архивировано из оригинала 2021-04-14 . Получено 2016-03-09 .
- ^ "openssl/CHANGES в OpenSSL_1_0_1-stable · openssl/openssl". GitHub . Получено 20.01.2015 .
- ^ "Заметки о выпуске серии OpenSSL 1.1.1". www.openssl.org . Архивировано из оригинала 2024-01-16.
- ^ «Наборы шифров в TLS/SSL (Schannel SSP) — приложения Win32». docs.microsoft.com . 14 июля 2023 г.
- ^ abc "Qualys SSL Labs - Проекты / Возможности пользовательского агента: IE 11 / Win 10 Preview". dev.ssllabs.com . Архивировано из оригинала 2023-07-14.
- ^ RFC 5469
- ^ ab "Sweet32: атаки методом «дней рождения» на 64-битные блочные шифры в TLS и OpenVPN".
- ^ "Версия 1.11.15, 2015-03-08 — Botan". 2015-03-08 . Получено 2015-03-11 .
- ^ «Документация поставщиков Oracle для архитектуры криптографии Java». docs.oracle.com .
- ^ "NSS 3.15.3 release notes". Mozilla Developer Network . Mozilla. Архивировано из оригинала 2014-06-05 . Получено 2014-07-13 .
- ^ "MFSA 2013-103: Различные уязвимости служб сетевой безопасности (NSS)". Mozilla . Получено 2014-07-13 .
- ^ abc "RC4 теперь отключен в Microsoft Edge и Internet Explorer 11 - Блог разработчиков Microsoft EdgeБлог разработчиков Microsoft Edge". blogs.windows.com . 2016-08-09.
- ^ ab "wolfSSL (ранее CyaSSL) Release 3.7.0 (26.10.2015)". 2015-10-26 . Получено 2015-11-19 .
- ^ abcde RFC 8446
- ^ abcde RFC 8422
- ^ abc RFC 7027
- ^ abc «Версия 1.11.5, 10 ноября 2013 г. — Ботан». 10 ноября 2013 г. Проверено 23 января 2015 г.
- ^ "Обзор новых функций в GnuTLS 3.5.0". 2016-05-02 . Получено 2016-12-09 .
- ^ "gnutls 3.6.12". 2020-02-01 . Получено 2021-08-31 .
- ^ ab "JDK 13 Early-Access Release Notes". Архивировано из оригинала 2020-04-01 . Получено 2019-06-20 .
- ^ ab "JEP 339: алгоритм цифровой подписи по кривой Эдвардса (EdDSA)" . Получено 14.01.2024 .
- ^ "Заметки о выпуске LibreSSL 2.5.1". OpenBSD. 2017-01-31 . Получено 2017-02-23 .
- ^ "MatrixSSL 4.0 changelog". GitHub . Получено 2018-09-18 .
- ^ "Mbed TLS 2.9.0, 2.7.3 и 2.1.12 выпущены" . Получено 2018-08-30 .
- ^ "Ошибка 957105 - Добавить поддержку для curve25519 Key Exchange и поддержку UMAC MAC для TLS". Mozilla . Получено 23.02.2017 .
- ^ "Ошибка 1305243 - Поддержка X448". Mozilla . Получено 2022-08-04 .
- ^ "Ошибка 1597057 - Требуется поддержка Curve448 или названного Ed448-Goldilocks (как обмена ключами X448, так и алгоритма подписи Ed448)". Mozilla . Получено 04.08.2022 .
- ^ abc "Ошибка 943639 - Поддержка Brainpool ECC Curve (rfc5639)". Mozilla . Получено 25.01.2014 .
- ^ "OpenSSL 1.1.0x Release Notes". 25 августа 2016 г. Архивировано из оригинала 18 мая 2018 г. Получено 18 мая 2018 г.
- ^ "OpenSSL GitHub Issue #487 Tracker". GitHub . 2 декабря 2015 г. Получено 18 мая 2018 г.
- ^ "OpenSSL CHANGES". 1 мая 2018 г. Архивировано из оригинала 18 мая 2018 г. Получено 18 мая 2018 г.
- ^ "OpenSSL GitHub Issue #5049 Tracker". GitHub . 9 января 2018 . Получено 18 мая 2018 .
- ^ "wolfSSL (ранее CyaSSL) Release 3.4.6 (30.03.2015)". 2015-03-30 . Получено 2015-11-19 .
- ^ "wolfSSL Release 4.4.0 (22.04.2020)". 2020-04-22 . Получено 2022-10-18 .
- ^ abcdefghi Саймон, Йозефссон; Мануэль, Пегурье-Гоннар. Дополнительные эллиптические кривые для соглашения о ключах безопасности транспортного уровня (TLS). ID draft-josefsson-tls-additional-curves.
- ^ "Замечание к выпуску: Слабые именованные кривые в TLS, CertPath и подписанном JAR-файле отключены по умолчанию. (Java 7u281, 8u271, 11.0.9, 14)". Система ошибок JDK (JBS) . Получено 6 января 2022 г. .
- ^ "Release Note: Removal of Legacy Elliptic Curves (Java 16)". JDK Bug System (JBS) . Получено 6 января 2022 г. .
- ^ ab Показано, что согласование произвольных кривых небезопасно для определенных размеров кривых Mavrogiannopoulos, Nikos и Vercautern, Frederik и Velichkov, Vesselin и Preneel, Bart (2012). "A cross-protocol attack on the TLS protocol" (PDF) . Труды конференции ACM 2012 года по компьютерной и коммуникационной безопасности . Association for Computing Machinery. стр. 62–72. doi :10.1145/2382196.2382206. ISBN 978-1-4503-1651-4.
{{cite conference}}
: CS1 maint: multiple names: authors list (link) - ^ "SHA2 и Windows" . Получено 2024-04-28 .
- ^ RFC3749
- ^ RFC 5746
- ^ abcd RFC 6066
- ^ RFC7301
- ^ RFC6091
- ^ RFC 4680
- ^ RFC 5077. doi : 10.17487/RFC5077 .
- ^ RFC 5705. doi : 10.17487/RFC5705 .
- ^ RFC 7507. doi : 10.17487/RFC7507 .
- ^ RFC7627
- ^ RFC7685
- ^ RFC7250
- ^ "Версия 1.11.16, 2015-03-29 — Botan". 2016-03-29 . Получено 2016-09-08 .
- ^ "Версия 1.11.10, 2014-12-10 — Botan". 2014-12-10 . Получено 2014-12-14 .
- ^ ab «Версия 1.11.26, 04.01.2016 — Ботан». 04.01.2016 . Проверено 25 февраля 2016 г.
- ^ Присутствует, но отключено по умолчанию из-за отсутствия использования в какой-либо реализации.
- ^ "gnutls 3.2.0". Архивировано из оригинала 2016-01-31 . Получено 2015-01-26 .
- ^ Маврояннопулос, Никос (21 августа 2017 г.). «[gnutls-help] Выпущен GnuTLS 3.6.0».
- ^ "gnutls 3.4.4". Архивировано из оригинала 2017-07-17 . Получено 2015-08-25 .
- ^ "Приоритетное ключевое слово %DUMBFW" . Получено 2017-04-30 .
- ^ "gnutls 3.6.6". 2019-01-25 . Получено 2019-09-01 .
- ^ "LibreSSL 2.1.3 выпущен". 2015-01-22 . Получено 2015-01-22 .
- ^ "LibreSSL 2.1.4 выпущен". 2015-03-04 . Получено 2015-03-04 .
- ^ "MatrixSSL - Новости". 2014-12-04. Архивировано из оригинала 2015-02-14 . Получено 2015-01-26 .
- ^ abc "mbed TLS 1.3.10 released". 2015-02-08. Архивировано из оригинала 2015-02-09 . Получено 2015-02-09 .
- ^ ab "NSS 3.15.5 release notes". Mozilla Developer Network . Mozilla. Архивировано из оригинала 26 января 2015 г. Получено 2015-01-26 .
- ^ "Ошибка 961416 - Поддержка RFC6091 - Использование ключей OpenPGP для аутентификации Transport Layer Security (TLS1.2)". Mozilla . Получено 2014-06-18 .
- ^ "Ошибка 972145 - Реализуйте расширение TLS encrypt-then-MAC". Mozilla . Получено 2014-11-06 .
- ^ "NSS 3.17.1 release notes". Архивировано из оригинала 2019-04-19 . Получено 2014-10-17 .
- ^ "NSS 3.21 release notes". Архивировано из оригинала 2021-12-07 . Получено 2015-11-14 .
- ^ «Совет по безопасности OpenSSL [15 октября 2014 г.]». 2014-10-15.
- ^ "Основные изменения между OpenSSL 1.0.1f и OpenSSL 1.0.1g [7 апреля 2014 г.]". 2014-04-07. Архивировано из оригинала 2015-01-20 . Получено 2015-02-10 .
- ^ "OpenSSL объявляет о выпуске финальной версии OpenSSL 3.2.0". 2023-11-23 . Получено 2024-10-11 .
- ^ rustls не реализует более ранние версии, которые гарантировали бы защиту от небезопасного понижения версии
- ^ abcd "Microsoft Security Bulletin MS15-121". Март 2023 г. Получено 28.04.2024 г.
- ^ ab "Что нового в TLS/SSL (Schannel SSP)". 31 августа 2016 г. Получено 28 апреля 2024 г.
- ^ "wolfSSL версии 4.2.0 уже доступна!". 22 октября 2019 г. Получено 13 августа 2021 г.
- ^ "wolfSSL поддерживает необработанные открытые ключи" . Получено 2024-10-25 .
- ^ "Версия 1.11.31, 2015-08-30 — Botan". 2016-08-30 . Получено 2016-09-08 .
- ^ "JEP 164: Использование инструкций ЦП для криптографии AES". openjdk.java.net .
- ^ "Запрос КОДА ПАРОЛЯ RSA SecurID". sso.rsasecurity.com .
- ↑ Маврояннопулос, Никос (9 октября 2016 г.). «[gnutls-devel] gnutls 3.5.5».
- ^ "Java SSL-провайдер с поддержкой AES-NI". stackoverflow.com .
- ^ "PolarSSL 1.3.3 released". 2013-12-31. Архивировано из оригинала 2014-01-07 . Получено 2014-01-07 .
Мы включили поддержку AES-NI в наши модули AES и GCM.
- ^ Обычно libssl NSS выполняет все операции через интерфейс PKCS#11, как с аппаратными, так и с программными токенами.
- ^ "Ошибка 706024 - Улучшения AES-NI для NSS в системах Sandy Bridge" . Получено 28.09.2013 .
- ^ "Ошибка 479744 - RFE: поддержка VIA Padlock ACE (аппаратный RNG, AES, SHA1 и SHA256)" . Получено 11.04.2014 .
- ^ https://habrahabr.ru/post/134725/, http://forum.rutoken.ru/topic/1639/, https://dev.rutoken.ru/pages/viewpage.action?pageId=18055184 (на русском языке)
- ^ "git.openssl.org Git - openssl.git/commitdiff". git.openssl.org .
- ^ https://opensource.apple.com/source/Security/Security-55179.13/sec/Security/SecECKey.c
- ^ «Руководство по роли криптографа для соответствия FIPS 140-2 OS X Mountain Lion v10.8» (PDF) . Apple Inc. 2013.
- ^ "Поддержка асинхронного Intel QuickAssist wolfSSL - wolfSSL". 18 января 2017 г.
- ^ "Поддержка CAAM в wolfSSL". 10 марта 2020 г.
- ^ "LibreSSL 2.2.1 Released". 2015-07-08 . Получено 2016-01-30 .
- ^ "интеграция ktls для rustls" . Получено 2024-08-29 .
- ^ "wolfProvider". 2021-11-10 . Получено 2022-01-17 .
- ^ ab Схема URI PKCS #11. doi : 10.17487/RFC7512 . RFC 7512.
- ^ "libp11: библиотека-оболочка PKCS#11". 19 января 2018 г. – через GitHub.
- ^ "Windows CNG bridge for rustls" . Получено 2024-08-29 .
- ^ Возможность замены/дополнения «на лету».
- ^ "Nss compat ossl - Fedora Project Wiki". fedoraproject.org .
- ^ "уровень совместимости rustls-openssl" . Получено 2024-08-29 .
- ^ ab "NSPR". Сеть разработчиков Mozilla .
- ^ Для Unix/Linux он использует /dev/urandom, если он доступен, для Windows он использует CAPI. Для других платформ он получает данные от часов и пытается открыть системные файлы. NSS имеет набор платформенно-зависимых функций, которые он использует для определения случайности.