След година и половина разработка, беше пусната библиотеката OpenSSL 3.1.0 с реализация на протоколите SSL/TLS и различни алгоритми за криптиране. Поддръжката на OpenSSL 3.1 ще продължи до март 2025 година. Поддръжката на предишните версии OpenSSL 3.0 и 1.1.1 ще продължи до септември 2026 и септември 2023 година съответно. Кодът на проекта се разпространява под лицензия Apache 2.0.
Основни нововъведения в OpenSSL 3.1.0:
- В модула FIPS е реализирана поддръжка на криптографски алгоритми, отговарящи на стандарта за сигурност FIPS 140-3. Започна процесът на сертификация на модула за получаване на сертификат за съответствие с изискванията на FIPS 140-3. До завършването на сертификацията след обновлението на OpenSSL до версия 3.1, потребителите могат да продължат да използват модула FIPS, сертифициран за FIPS 140-2. Между промените в новата версия на модула са добавени алгоритмите Triple DES ECB, Triple DES CBC и EdDSA, които все още не са проверени по отношение на изискванията на FIPS. Освен това в новата версия са направени оптимизации за повишаване на производителността и е осъществен преход към извършване на вътрешни тестове при всяко зареждане на модула, а не само след инсталиране.
- Преработен е кодът OSSL_LIB_CTX. Новият вариант е освободен от излишни блокировки и позволява постигането на по-висока производителност.
- Повишена е производителността на кодиращите и декодиращите фреймворкове.
- Проведена е оптимизация на производителността, свързана с използването на вътрешни структури (хеш-таблици) и кеширане.
- Увеличена е скоростта на генериране на RSA-ключове в режим FIPS.
- За различни архитектури на процесори в реализацията на алгоритмите AES-GCM, ChaCha20, SM3, SM4 и SM4-GCM са внесени специфични асемблерни оптимизации. Например, кодът на AES-GCM е ускорен с помощта на инструкциите AVX512 vAES и vPCLMULQDQ.
- В KBKDF (Функция за произход на ключове на база ключ) е добавена поддръжка за алгоритъма KMAC (KECCAK Message Authentication Code).
- Различни функции “OBJ_*” са адаптирани за работа в многопоточен код.
- Добавена е възможност за генериране на псевдослучайни числа с инструкцията RNDR и регистрите RNDRRS, налични в процесори, базирани на архитектурата AArch64.
- Функции OPENSSL_LH_stats, OPENSSL_LH_node_stats, OPENSSL_LH_node_usage_stats, OPENSSL_LH_stats_bio, OPENSSL_LH_node_stats_bio и OPENSSL_LH_node_usage_stats_bio са обявени за остарели. Деклариран е като остарял макросът DEFINE_LHASH_OF.
Източник: opennet.ru
