Значительный выпуск криптографической библиотеки OpenSSL 1.1.1
11 сентября 2018 года
После двух лет разработки состоялся релиз библиотеки OpenSSL 1.1.1 с реализацией протоколов SSL/TLS и различных алгоритмов шифрования. Новая ветка включает изменения, не нарушающие обратную совместимость на уровне API и ABI, т.е. все приложения, собранные с OpenSSL 1.1.0, продолжат работу без пересборки и в большинстве случаев смогут обеспечить поддержку TLSv1.3 путём замены версии библиотеки. Поддержка выпуска OpenSSL 1.1.1 будет осуществляться в течение как минимум пяти лет.
Основные новшества OpenSSL 1.1.1:
- Поддержка TLS 1.3 ( RFC 8446), который представляет собой улучшенную версию протокола TLS и отличается удалением устаревших и ненадёжных криптографических примитивов (MD5, SHA-224) и возможностей (сжатие, повторное согласование, не-AEAD шифры, статический обмен ключами RSA и DH, указание unix-времени в Hello-сообщениях и т.п.), работает только в режиме forward secrecy (компрометации одного из долговременных ключей не позволяет расшифровать перехваченный сеанс),
обеспечивает более высокую производительность, поддерживает режим 0-RTT (устраняет задержки при возобновлении ранее установленных HTTPS-соединений), поддерживает потоковый шифр ChaCha20, алгоритм аутентификации сообщений (MAC) Poly1305, ключи аутентификации на основе цифровых подписей Ed25519, HKDF (HMAC-based Extract-and-Expand Key Derivation Function), ключи на основе алгоритмов x25519 ( RFC 7748) и x448 ( RFC 8031);
- Значительная переработка встроенного генератора псевдослучайных чисел. По умолчанию для генерации случайных чисел задействован метод AES-CTR DRBG (Deterministic Random Bit Generator), соответствующий требованиям стандарта
NIST SP 800-90Ar1. Поддерживается использование цепочки из нескольких экземпляров DRBG, а также публичные и закрытые экземпляры DRBG и привязка отдельных экземпляров DRBG к каждому потоку. DRBG корректно обрабатывает операции fork() и может размещаться в отдельной защищённой области памяти;
- Настройки конфигурации перенесены в файл configdata.pm;
- Обеспечена возможность использования в сборочном скрипте Configure переменных для утилиты make в стиле GNU;
- Определены пространства имён OSSL и OPENSSL, реализованные в виде префиксов;
- Добавлена поддержка формирования ключей RSA на основе более чем двух случайных простых чисел (multi-prime, RFC 8017);
- Реализованы криптографические хэши SM2, SM3 (GB/T 32905-2016) и SM4 (GB/T 32907-2016), стандартизированные для учреждений Китая;
- Поддержка расширения TLS для согласования максимального размера фрагмента (Maximum Fragment Length);
- Значительно усилена защита от атак по сторонним каналам;
- Добавлен модуль STORE (OSSL_STORE), предоставляющий унифицированный API для доступа к ключам, сертификатам, CRL и другим объектам в хранилищах, используя схему на базе URI;
- Поддержка алгоритма симметричного блочного шифрования ARIA;
- Поддержка алгоритмов хэширования SHA3, SHA512/224 и SHA512/256;
- Поддержка алгоритма создания цифровых подписей EdDSA, включая схемы Ed25519 и Ed448;
- Поддержка хеш-функции SipHash;
- Переписан движок devcrypto.
Источники[править]
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии[править]
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.