The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск криптографических библиотек LibreSSL 3.1.0 и Botan 2.14.0

09.04.2020 08:52

Разработчики проекта OpenBSD представили выпуск переносимой редакции пакета LibreSSL 3.1.0, в рамках которого развивается форк OpenSSL, нацеленный на обеспечение более высокого уровня безопасности. Проект LibreSSL ориентирован на качественную поддержку протоколов SSL/TLS с удалением излишней функциональности, добавлением дополнительных средств защиты и проведением значительной чистки и переработки кодовой базы. Выпуск LibreSSL 3.1.0 рассматривается как экспериментальный, в котором развиваются возможности, которые войдут в состав OpenBSD 6.7.

Особенности LibreSSL 3.1.0:

  • Предложена начальная реализация TLS 1.3 на базе нового конечного автомата и подсистемы работы с записями. По умолчанию пока включена лишь клиентская часть TLS 1.3, серверную часть планируют активировать по умолчанию в одном из будущих выпусков.
  • Проведена чистка кода, улучшены парсинг протоколов и работа с памятью.
  • Из OpenSSL 1.1.1 перенесены методы RSA-PSS и RSA-OAEP.
  • Из OpenSSL 1.1.1 перенесена и включена по умолчанию реализация CMS (Cryptographic Message Syntax). В утилиту openssl добавлена команда "cms".
  • Улучшена совместимость с OpenSSL 1.1.1 через бэкпортирование некоторых изменений.
  • Добавлен большой набор новых тестов криптографических функций.
  • Поведение EVP_chacha20() приближено к семантике OpenSSL.
  • Добавлена возможность настройки местоположения набора с сертификатами удостоверяющих центров.
  • В утилите openssl в команде "req" реализована опция "-addext".



Кроме того, можно отметить выпуск криптографической библиотеки Botan 2.14.0, применяемой в проекте NeoPG, форке GnuPG 2. Библиотека предоставляет большую коллекцию готовых примитивов, используемых в протоколе TLS, сертификатах X.509, шифрах AEAD, модулях TPM, PKCS#11, хэшировании паролей и постквантовой криптографии (подписи на основе хэша и согласование ключей на основе McEliece и NewHope). Библиотека написана на языке C++11 и поставляется под лицензией BSD.

Среди изменений в новом выпуске Botan:

  • Добавлена реализация режима GCM (Galois/Counter Mode), ускоренная для процессоров POWER8 при помощи векторной инструкции VPSUMD.
  • Для систем ARM и POWER значительно ускорена реализация операции перестановки векторов для AES с постоянным временем выполнения.
  • Предложен новый алгоритм инверсии по модулю, который быстрее и лучше защищает от атак по сторонним каналам.
  • Внесены оптимизации, ускоряющие ECDSA/ECDH за счёт сокращения поля NIST.


  1. Главная ссылка к новости (https://www.mail-archive.com/a...)
  2. OpenNews: Выпуск криптографической библиотеки LibreSSL 3.0.0
  3. OpenNews: Ошибка в OpenSSL нарушила работу некоторых приложений openSUSE Tumbleweed после обновления
  4. OpenNews: Обновление OpenSSL с устранением уязвимости в реализации TLS
  5. OpenNews: Уязвимость в библиотеке MatrixSSL
  6. OpenNews: Google представил открытый стек OpenSK для создания криптографических токенов
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/52700-libressl
Ключевые слова: libressl, crypt, botan
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (23) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Ананимус (?), 09:01, 09/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Meh, уже есть rustls и он быстрее.
     
     
  • 2.3, Ivan_83 (ok), 09:22, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Он хотя бы к чему то прикручивается?
    Ну там nginx, openssh, curl или ещё куда то к нужному софту?
     
  • 2.4, Аноним (4), 09:39, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Быстрее ассемблера?
     
     
  • 3.6, Owlet (?), 10:43, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Программы на C/C++/Rust уже много лет как могут быть быстрее написанных вручную на ассемблере. Компиляторы поумнее рядового программиста будут.
     
     
  • 4.8, Аноним (4), 10:49, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Программы на C/C++/Rust уже много лет как могут быть быстрее написанных вручную

    Вообще-то это миф. Да и по логике, в таком случае не приходилось бы переписывать значительные участки программ с ручной оптимизацией.

    >Компиляторы поумнее

    Смахивает на шутку из Аншлага, но я не уверен.

     
     
  • 5.14, Аноним84701 (ok), 14:15, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >> Программы на C/C++/Rust уже много лет как могут быть быстрее написанных вручную
    > Вообще-то это миф.

    С разморозкой:
    https://software.intel.com/sites/landingpage/IntrinsicsGuide/#cats=Arithmetic
    http://gcc.gnu.org/onlinedocs/gcc/Target-Builtins.html#Target-Builtins

    >>Компиляторы поумнее
    > Смахивает на шутку из Аншлага, но я не уверен.

    Учитывая, какие "шыдевры" они умеют оптимизировать в шустрый код - никакая это не шутка.

     
     
  • 6.15, Аноним (4), 14:29, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Это и есть "вручную". А то, что некоторый код проще автоматически оптимизировать на эффективное выполнение, так это ничего удивительного. Это не мешает компиляторам генерировать неэффективную дичь в зависимости от погоды на Марсе -- никого ума тем нет, только правила, которые иногда в некоторых условиях работают. Лучше или хуже. Сегодня уже и процессоры подстраивают под определённые паттерны компиляторов, вот они и сражаются друг с другом, производители процессоров и компиляторов, это вечный процесс.
     
     
  • 7.16, Аноним84701 (ok), 15:07, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Это и есть "вручную".

    В оригинале было "написанных вручную на ассемблере".
    Там таки довольно существенная разница в объеме мудоханья.
    Плюс, компилятор организует не только распределение по регистрам, но и вполне эффективный для целевой железки порядок инструкций/пайплайн и прочее -- "вручную" это требует нудного копания в доках с довольно сомнительной эффективностью (можно вполне "переоптимизировать" код для определенной модели CPU)

     
  • 6.18, Сишник (?), 16:06, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Какая разница, как они "шедевры" оптимизируют, если у них с оптимизацией нормального кода плоховато? Вот хороший пример: https://habr.com/ru/post/490458/ разница просто между разными компиляторами плюсов на 1 коде в 2 раза может быть.
     
     
  • 7.20, Аноним84701 (ok), 16:47, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Какая разница, как они "шедевры" оптимизируют, если у них с оптимизацией нормального кода плоховато?
    > Вот хороший пример: https://habr.com/ru/post/490458/ разница просто
    > между разными компиляторами плюсов на 1 коде в 2 раза может быть.

    Нормально оптимизируют:
    https://habr.com/ru/post/483864/



    clang++ -O3 test.cpp
    #clang 7
    ./a.out  4,42s user 0,00s system 99% cpu 4,422 total
    # clang 9
    ./a.out  4,86s user 0,00s system 99% cpu 4,859 total
    g++ -O2 test.cpp   #gcc 9
    ./a.out  2,67s user 0,02s system 99% cpu 2,683 total



    и  (барабанная дробь):



    clang++ -O0 test.cpp
    # clang 9
    ./a.out  75,65s user 0,00s system 99% cpu 1:15,65 total
    g++ -O0 test.cpp  # gcc9
    ./a.out  49,56s user 0,01s system 99% cpu 49,577 total



    Если для кого-то ускорение в 10-30 раз "плоховато", то этот кто-то похоже "зажрался" ;-)

     
  • 4.9, нах. (?), 11:29, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    рядового - да. Но, к сожалению, "рядовые" неспособны написать openssl. Вот сделать бесполезный дырявый форк - у таких получилось.

    Да и компиляторы за последние пятнадцать лет изрядно отупели, посмотрите ЧТО полагается написать для "автоматической" оптимизации с использованием sse, чтобы хваленый интеловский (!) компилятор вас понял (гуглите или сразу ищите по интеловскому сайту, там были примеры).

     
  • 4.17, Сишник (?), 16:00, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Декодер av1 на расте на 60% из ассемлерного кода состоит, если что.
     
  • 4.19, псевдонимус (?), 16:19, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >поумнее рядового программиста будут

    Зачем ты так низко себя оцениваешь?

    Ну и если ты не вкурсе,у компилятора нет вообще никакого ума.

     

  • 1.2, Ivan_83 (ok), 09:18, 09/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Надеюсь не будет много приключений с пересборкой зависимого софта :)
     
     
  • 2.5, Аноним (4), 09:40, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Конечно не будет, этот хлам нигде не используется и только бандлится статически. Как ты его обновлять будешь? :)
     
     
  • 3.11, Ivan_83 (ok), 11:49, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Вообще то на фре его можно использовать вместо OpenSSL для всех портов, и в прошлые разы частенько приходилось пересобирать все заивисомсти.
    А ещё они онигда не собирались после апдейта потому что апи ломался.
     
  • 2.22, Аноним (22), 08:41, 10/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Не так много..
    Добавить USE-флаг "libressl" в /etc/portage/make.conf и всё!
     
     
  • 3.23, Ivan_83 (ok), 02:18, 11/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    У меня нет портажа, я хз что это такое :)
    DEFAULT_VERSIONS+=ssl=libressl
    в /etc/make.conf прописал.
     
  • 3.24, marios (ok), 13:59, 12/04/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Чуть сложнее, но да:
    https://wiki.gentoo.org/wiki/Project:LibreSSL
     

  • 1.7, Аноним (7), 10:49, 09/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    > Из OpenSSL 1.1.1 перенесены
    > Из OpenSSL 1.1.1 перенесена и включена
    > Улучшена совместимость с OpenSSL 1.1.1
    > приближено к семантике OpenSSL

    И тут же
    > форк OpenSSL, нацеленный на обеспечение более высокого уровня безопасности

    Ну да, ну да...

     
     
  • 2.10, нах. (?), 11:30, 09/04/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    ну чего тебе не так? Нацелен. Стрелять и не собиралось.

    Прицел, правда, тоже немного сбит, но раз оно не стреляет, то и какая в том беда?

     

  • 1.12, КО (?), 11:51, 09/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Open
    Libre
    ...
    Следующий форк сделаем "Libero"
     
  • 1.13, Аноним (-), 14:14, 09/04/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    https://github.com/randombit/botan/issues/2185
    Когда?
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру