Google перешел c OpenSSL на BoringSSL

21 октября 2015 года

Wikinews-logo-ru.svg

Разработчики BoringSSL, форка OpenSSL от компании Google, опубликовали обзор состояния проекта. В последнее время на BoringSSL уже переведены все программные продукты Google, как внутренние сервисы, так и такие проекты как Chrome/Chromium и Android. BoringSSL используется как единый TLS-стек для всех продуктов Google, что позволило значительно упростить сопровождение кодовой базы.

При этом использование BoringSSL в сторонних проектах может предоставлять трудности, так как код достаточно сильно почищен, а разработчики не ставят перед собой цель полной совместимости с OpenSSL и ABI может меняться в зависимости от потребностей компании. В отличие от LibreSSL, создание BoringSSL не заключалось в копировании имеющихся исходных текстов OpenSSL для их последующей переработки и чистки. Вместо этого BoringSSL развивался путём создания пустого проекта и поэтапного переноса кода из OpenSSL, функции за функцией с проведением их аудита, документирования и переработки.

В итоге, размер BoringSSL составляет около 200 тысяч строк кода, в то время как кодовая база OpenSSL оценивается в 468 тысяч строк. Подобное уменьшение размера заметно сказывается на потреблении памяти, например, при пересборке проектов с BoringSSL их размер уменьшается на 300 Кб по сравнению минимальной конфигурацией OpenSSL.

В BoringSSL прекращена поддержка Blowfish, Camellia, CMS, функций сжатия, движков, IDEA, JPAKE, Kerberos, MD2, MDC2, OCSP, PKCS#7, RC5, RIPE-MD, SEED, SRP, Whirlpool. Переработаны такие механизмы, как система блокировок, поддержка многопоточности, обработка ошибок, добавлены механизмы динамического изменения размеров буферов и контроля за выходом за границы выделенных областей памяти. Вместо собственной реализации генератора псевдослучайных чисел в BoringSSL задействован штатный системный urandom. Из планов на ближайшее будущее отмечается продолжение чистки кода, реализация поддержки ChaCha20-Poly1305, Curve25519 и Ed25519, увеличение охвата функций тестовым набором.

 

ИсточникиПравить


Эта статья содержит материалы из статьи «Google перешел c OpenSSL на BoringSSL», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
 

Комментарии:Google перешел c OpenSSL на BoringSSL