от DeepUltramarine(14-04-2026)
Днес - 14 април 2026 - излезе OpenSSL 4.0.
Версията идва с важни нови функции, подобрения в сигурността и производителността, но също така има и доста премахвания на остарели неща. Като продължение на почистването, започнато в OpenSSL 3.0.
Какви са по-важните нови функции?
Encrypted Client Hello (ECH) поддръжка според RFC 9849.
Важно подобрение за поверителност в TLS.
Позволява криптиране на Client Hello съобщението още в началото на handshake-а, така че Server Name Indication (SNI) (т.е. името на сайта, към който се свързвате) да не се вижда в прав текст.
Това се явява наследник на стария ESNI и помага срещу цензура, проследяване и пасивно наблюдение това, кой сайт посещавате.
NMP KDF и SRTP KDF
Добавена е поддръжка за Key Derivation Functions, използвани в SNMP (мрежово управление) и SRTP (защитен RTP за VoIP/видео).
Добавени са китайски алгоритми, разработени и одобрени от Държавната криптографска администрация на Китай и post-quantum криптографски алгоритми.
Версия 4.0 осигурява поддръжка на signature алгоритъм sm2sig_sm3 (RFC 8998), Key exchange curveSM2 и Hybrid post-quantum curveSM2MLKEM768 (tls-hybrid-sm2-mlkem) — комбинация от класически SM2 и post-quantum ML-KEM.
Също така, осигурена е поддръжка на cSHAKE функция (SP 800-185).
Добавен е нов digest алгоритъм "ML-DSA-MU".
Поддръжка на negotiated FFDHE key exchange в TLS 1.2 (RFC 7919).
По-добри проверки при верификация на сертификати (AKID, augmented CRL verification).
FIPS модулът вече позволява отлагане на self-tests с опция -defer_tests.
Някои промени при API и подобрения в производителността:
BIO_snprintf() вече използва стандартния snprintf() от libc - подобрение в бързината.
Премахнато е глобалното почистване чрез atexit() в libcrypto.
Много API функции са направени opaque или с добавени const квалификатори.
ASN1_STRING вече е opaque.
Какво е премахнато (важно за разработчици)?
Напълно премахнати са:
SSLv2 Client Hello и SSLv3 (отдавна deprecated).
Поддръжката за engines (старият начин за hardware acceleration).
Стари конфигурационни target-и за macOS (darwin-i386, ppc и т.н.).
Скриптът c_rehash (заменен от openssl rehash).
Някои неработещи или остарели BIO и EVP методи.
Тагнати като Deprecated:
Поддръжка на стари elliptic curves в TLS (RFC 8422) – по подразбиране се изключва при компилация.
Някои функции за сравнение на време в X509 сертификати.
Custom EVP_CIPHER, EVP_MD, EVP_PKEY методи (вече не се препоръчват).
При печатане на ключове (hex dump) е премахнат допълнителният '00:' отпред в някои случаи и е стандартизирана ширината на dump-овете.
OpenSSL 4.0 има промени, които са несъвместими, особено ако ползвате стари deprecated API-та или engines. Затова официално се препоръчва да инсталирате версията от пакетите на вашата Linux дистрибуция (когато я обновят), вместо да компилирате ръчно, за да се избегнат проблеми със съвместимостта на приложенията.
Ако разработвате софтуер, който зависи от OpenSSL, прегледайте внимателно migration упътването и release notes на GitHub.
doc/designs/ech-api.md в сорс кода.
Обобщение на промените на: https://github.com/openssl/openssl/blob/master/NEWS.md
Подробен changelog: https://github.com/openssl/openssl/blob/master/CHANGES.md
Ако искате да видите точно какво се е променило от OpenSSL 3.6 към 4.0, най-добре отворете NEWS.md и релиз тага на GitHub (първият линк, който пуснах тук
Източник: https://9to5linux.com/openssl-4-0-released-with-support-for-encrypted-client-hello-snmp-kdf-and-more
<< Nginx 1.30.0 бе пусната днес | KDE - виртуални десктопи за всеки екран >>
|