Выпуск LibreSSL 2.7.0
Разработчики проекта OpenBSD представили выпуск переносимой редакции пакета LibreSSL 2.7.0, в рамках которого развивается форк OpenSSL, нацеленный на обеспечение более высокого уровня безопасности. Проект LibreSSL ориентирован на качественную поддержку протоколов SSL/TLS с удалением излишней функциональности, добавлением дополнительных средств защиты и проведением значительной чистки и переработки кодовой базы. Выпуск LibreSSL 2.7.0 рассматривается как экспериментальный, в котором развиваются возможности, которые войдут в состав OpenBSD 6.3.
Особенности LibreSSL 2.7.0:
- Обеспечена поддержка многих API OpenSSL 1.0.2 и 1.1, которые нашли применение в существующих приложениях. Поддержка новых API не повлияет на работу кода, написанного для старых API, так как старые структуры оставлены в неизменном виде, а новые API реализованы параллельно;
- Заметно дополнена, улучшена и откорректирована документация на API;
- В libcrypto, libssl и libtls реализована поддержка автоматической инициализации библиотеки. Для работы на целевых платформах теперь требуется наличие pthread_once или эквивалентной функциональности, в связи с чем прекращена поддержка выпусков Windows до Vista;
- Очередной набор методов обработки пакетов переведён на использование подсистемы CBB, что положительно повлияло на надёжности при генерации TLS-сообщений;
- Заверешена переработка кода обработки расширений TLS, улучшено качество выявления некорректных или дублирующихся расширений;
- Функции ASN1_TYPE_{get, set}_octetstring () переписаны с использованием реализации ASN.1 на базе шаблонов, что позволило избавиться от макросов M_ASN1_*;
- В libtls добавлена возможность восстановления сеанса на стороне клиента. Клиент на базе libtls теперь может указать файловый дескриптор сеанса и библиотека будет использовать его для чтения и записи сессионных данных при согласовании TLS-соединения;
- Улучшена поддержка строгого выравнивания на архитектурах ARMv7;
- Устранена утечка памяти в libtls, проявляющаяся при повторном использовании tls_config.
© OpenNet