OpenSSL 3.0 был выпущен только после трех лет разработки, и более 7500 коммитов и вкладов от более чем 350 разных авторов с новым модулем FIPS, который ожидает проверки FIPS 140-2 к концу года, улучшенной документацией и изменением лицензией Apache 2.0.
Репутация OpenSSL серьезно пострадала в 2014 году из-за ошибки Hearbleed, которая позволила злоумышленникам украсть информацию, защищенную шифрованием SSL/TLS, используемым для наиболее безопасной связи в Интернете. Ошибка появилась в 2012 году, и на ее исправление ушло почти два года. Тем не менее, несмотря на исправление, многие проекты перешли на другие библиотеки SSL, такие как LibreSSL, WolfSSL или mbedTLS.
Но хорошо, что проект все еще очень активен, и OpenSSL 3.0 приходит на смену OpenSSL 1.1.1, выпущенному в сентябре 2018 года. Кто знает, что такое OpenSSL 2.0…
Одним из основных изменений является поддержка концепции модулей, и OpenSSL 3.0 в стандартной комплектации поставляется с 5 различными модулями:
- Модуль по умолчанию – реализует набор алгоритмов по умолчанию.
- Модуль FIPS – реализует набор алгоритмов, прошедших проверку FIPS, и включает следующие вспомогательные службы:
- POST: Самотестирование при включении
- KAT: известные тесты ответов
- Проверка целостности
- Низкоуровневые реализации (реализации криптографических примитивов)
- Модуль движков – прокладка, которая позволяет существующим движкам работать при вызове через ядро.
- Устаревший модуль – предоставляет реализации старых алгоритмов, которые будут доступны через API уровня EVP.
- Сторонние модули
Стандарт FIPS 140-2 определяет требования безопасности для криптографических модулей, и последнее тестирование состоится 22 сентября 2021 года, после чего будут выполняться только проверки на соответствие FIPS 140-3 согласно веб-сайту NIST. Таким образом, времени остается мало, чтобы уложиться в крайний срок для OpenSSL 3.0, и разработчики ожидают, что сертификат будет доставлен только в следующем году.
В объявлении также говорится, что документация была значительно улучшена: количество документации увеличилось на 94% по сравнению с OpenSSL 1.1.1. Примером может служить проектная документация для OpenSSL 3.0.0, в которой описывается архитектура и особенности библиотеки.
OpenSSL 1.1.1 или более ранние версии были выпущены под двойной лицензией OpenSSL и SSLeay, но теперь проект (объявленный в 2017 году) перешел на стандартную лицензию Apache 2.0, что означает, что проект можно использовать в коммерческих и некоммерческих целях. Это уже имело место для более ранней лицензии, но считается, что этот шаг поощряет использование OpenSSL в большем количестве проектов с открытым исходным кодом, поскольку лицензия Apache 2.0 широко используется в индустрии программного обеспечения.
Вы можете загрузить исходный код и интегрировать его в свой код, но обратите внимание, что, поскольку OpenSSL 3.0 является основным выпуском, он не полностью обратно совместим с предыдущим выпуском OpenSSL 1.1.1. Тем не менее, разработчики по-прежнему ожидают, что большинство приложений будут работать без изменений и их просто нужно будет перекомпилировать.
Выражаем свою благодарность источнику из которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.