Выпуск криптографической библиотеки OpenSSL 4.0.0

Состоялся релиз библиотеки OpenSSL 4.0.0, предлагающей с реализацию протоколов TLS и различных алгоритмов шифрования. OpenSSL 4.0 отнесён к выпускам с обычным сроком поддержки, обновления для которых выпускаются в течение 13 месяцев. Поддержка прошлых веток OpenSSL 3.6, 3.5 LTS, 3.4 и 3.0 LTS продлится до ноября 2026 года, апреля 2030 года, октября 2026 года и сентября 2026 года соответственно. Код проекта распространяется под лицензией Apache 2.0.

Основные новшества:

  • Добавлена поддержка TLS-расширения ECH (Encrypted ClientHello, RFC 9849), предназначенного для шифрования информации о параметрах TLS-сеансов, таких как запрошенное доменное имя. В отличие от расширения ESNI (Encrypted Server Name Indication) в ECH вместо шифрования на уровне отдельных полей, целиком шифруется всё TLS-сообщение ClientHello, что позволяет блокировать утечки через поля, которые не охватывает ESNI, например, поле PSK (Pre-Shared Key).

  • Добавлена поддержка определённых в RFC 8998 алгоритмов, использующих стандартизированный в Китае набор криптоалгоритмов SM2: алгоритма формирования цифровой подписи sm2sig_sm3, группы обмена ключами curveSM2 и постквантовой группы curveSM2MLKEM768.

  • Добавлена криптографическая функция хэширования cSHAKE, основанная на алгоритме SHA-3 и позволяющая формировать разные хэши на основе одинаковых входных данных для защиты от атак, манипулирующих повторным использованием данных.

  • Добавлен гибридный алгоритм «ML-DSA-MU», сочетающий постквантовый алгоритм формирования цифровой подписи ML-DSA (CRYSTALS-Dilithium) с классической хеш-функцией SHAKE256.
  • Добавлена поддержка функций формирования ключей SNMP KDF на основе HMAC-SHA и SRTP KDF на основе AES-CM, используемых в сетевых протоколах SNMPv3 и SRTP.

  • В команду «openssl fipsinstall» добавлена опция »-defer_tests», позволяющая отложить запуск тестов при установке FIPS-модулей.

  • Для платформы Windows реализована поддержка статического или динамического связывания с Visual C++ Runtime.

  • В TLS 1.2 добавлена поддержка согласуемого обмена ключами на основе алгоритма FFDHE (Finite Field Diffie-Hellman Ephemeral), соответствующая RFC 7919.

  • Прекращена поддержка SSLv3 и SSLv2 Client Hello.

  • Удалена поддержка динамически загружаемых движков, вместо которых для расширения функциональности OpenSSL следует использовать концепцию подключаемых провайдеров.

  • В TLS на этапе компиляции отключена поддержка устаревших эллиптических кривых. Для возвращения можно использовать опцию «enable-tls-deprecated-ec».

  • Удалена утилита c_rehash, вместо которой следуют использовать команду «openssl rehash».
  • Из команды «openssl ca» удалена устаревшая опция «msie-hack».

  • Удалена поддержка собственных методов EVP_CIPHER, EVP_MD, EVP_PKEY и EVP_PKEY_ASN1.

  • Удалены устаревшие функции SSL/TLS, привязанные к фиксированным версиями протоколов, например, «TLSv1_client_method ()».

  • Удалены устаревшие функции ERR_get_state (), ERR_remove_state () и ERR_remove_thread_state ().

  • Прекращена поддержка целевых платформ darwin-i386{,-cc} и darwin-ppc{,64}{,-cc}.



Источник: http://www.opennet.ru/opennews/art.shtml? num=65208

© OpenNet