LibreSSL — библиотека с реализацией протоколов SSL/TLS. Эта библиотека является продуктом команды OpenBSD, в рамках которого развивается форк OpenSSL, нацеленный на обеспечение высшего уровня безопасности.
Проект LibreSSL ориентирован на качественную поддержку протоколов SSL/TLS с удалением излишней функциональности, добавлением дополнительных средств защиты и проведением значительной чистки и переработки кодовой базы.
Заметки по LibreSSL 3.3.0:
- Реализована поддержка экспорта ключей для TLSv1.3.
- Проведена чистка обработчика записей DTLS и продолжена переработка обработчиков записей TLSv1.2. Функция DTLSv1_enc_data() заменена на TLSv1_1_enc_data().
- Упрощён метод TLS, за счёт удаления специфичных для клиента и сервера внутренних методов.
- Улучшена реализация команды "openssl ocsp" и переработана утилита ocspcheck.
- Реализации функции getentropy на платформе Windows переведена на использование генератора псевдослучайных чисел CNG (Cryptography Next Generation). Поддержка wincrypt объявлена устаревшей.
- В новом коде проверки X.509 реализованы дополнительные обработчики ошибок в сертификатах и реализован вывод кодов ошибок для проблем, специфичных для самоподписанных сертификатов.
- Устранены утечки памяти в обработчиках X.509.
В соответствии с общепринятыми практиками безопасного программирования, по умолчанию включены опции и флаги компилятора, направленные на обнаружение потенциальных проблем на этапе сборки (-Wall, -Werror, -Wextra, -Wuninitialized). Улучшена читаемость кода, что должно облегчить проверку кода в будущем. Исправление или удаление ненужных макросов и обёрток методов также улучшает читаемость кода и облегчает аудит.