После пяти месяцев разработки сформирован релиз библиотеки OpenSSL 3.3.0 с реализацией протоколов SSL/TLS и различных алгоритмов шифрования. Поддержка OpenSSL 3.3 будет осуществляться до апреля 2026 года. Поддержка прошлых веток OpenSSL 3.2, 3.1 и 3.0 LTS продлится до ноября 2025 года, марта 2025 года и сентября 2026 года соответственно. Код проекта распространяется под лицензией Apache 2.0.
Основные новшества OpenSSL 3.3.0:
- Продолжена интеграция поддержки протокола QUIC (RFC 9000), представляющего собой надстройку над протоколом UDP, используемую в качестве транспорта в протоколе HTTP/3. В новом выпуске:
- Добавлена поддержка трассировки QUIC-соединений через ведение диагностического лога в формате qlog.
- Добавлена поддержка полинга в неблокирующем режиме соединений QUIC и потоковых объектов.
- Реализована возможность оптимизированной генерации кадров окончания потока для QUIC-соединений.
- Предоставлена возможность отключения обработки событий QUIC при выполнении обращений к API.
- Добавлена поддержка настройки таймаута неактивности для QUIC.
- Добавлен API для запроса размера и степени заполнения буфера записи для потоков QUIC.
- Реализованы расширения протокола управления сертификатами CMP (Certificate Management Protocol), определённые в спецификациях RFC 9480 (определение протокола CMPv3) и RFC 9483 (легковесный профиль для маломощных устройств).
- Добавлена возможность отключения на этапе сборки использования функции atexit.
- Добавлен вариант API SSL_SESSION, не подверженный проблеме 2038 года: добавлены функции SSL_SESSION_get_time_ex() и SSL_SESSION_set_time_ex(), использующие 64-разрядных тип time_t на 32-разрядных системах.
- В функции EVP_PKEY_fromdata реализована возможность автоматического получения параметров китайской теоремы об остатках (CRT, Chinese Remainder Theorem).
- Добавлена возможность игнорирования неизвестных названий алгоритмов подписей, заданных в параметрах конфигурации TLS SignatureAlgorithms и ClientSignatureAlgorithms.
- Добавлена возможность настройки приоритетного использования PSK-ключей на сервере TLS 1.3 во время восстановления сеанса.
- Добавлена функция EVP_DigestSqueeze(), позволяющая сократить размер хэша SHAKE (удаление старших битов), используя несколько итераций с разными размерами вывода.
- Добавлена поддержка экспорта сборочных файлов для CMake на Unix-подобных системах и Windows (в дополнение к экспорту на базе pkg-config).
- Внесены оптимизации производительности: Оптимизирована работа алгоритма AES-GCM на устройствах с чипами Microsoft Azure Cobalt 100. В реализации AES-CTR появилась поддержка ускорения с использованием расширений ARM Neoverse V1 и V2. Включены оптимизации AES и SHA3 для систем Apple с чипами M3. В различных криптографических функциях задействованы векторные расширения RISC-V. Добавлена ассемблерная реализация md5 для CPU Loongarch64.
Источник: opennet.ru