LINUX.ORG.RU

Выпуск криптографической библиотеки OpenSSL 3.0.0

 


1

1

После трёх лет разработки и 19 тестовых выпусков состоялся релиз библиотеки OpenSSL 3.0.0, в которой реализованы протоколы SSL/TLS и различные алгоритмы шифрования.

По сравнению с веткой OpenSSL 1.1.1 в OpenSSL 3.0.0 сделано более 7500 изменений, подготовленных 350 разработчиками.

Новая ветка включает изменения, нарушающие обратную совместимость на уровне API и ABI, но эти изменения не повлияют на работу большинства приложений, для перевода которых с OpenSSL 1.1.1 достаточно пересборки. Поддержка прошлой ветки OpenSSL 1.1.1 будет осуществляться до сентября 2023 года.

Значительное изменение номера версии связано с переходом на традиционную нумерацию «Major.Minor.Patch». Первая цифра (Major) в номере версии отныне будет меняться только при нарушении совместимости на уровне API/ABI, а вторая (Minor) при наращивании функциональности без изменения API/ABI. Корректирующие обновления будут поставляться с изменением третьей цифры (Patch). Номер 3.0.0 сразу после 1.1.1 выбран для избежания пересечений с находящимся в разработке FIPS-модулем к OpenSSL, для которого применялась нумерация 2.x.

Вторым важным для проекта изменением стал переход с двойной лицензии (OpenSSL и SSLeay) на лицензию Apache 2.0. Ранее применявшаяся собственная лицензия OpenSSL была основана на тексте устаревшей лицензии Apache 1.0 и требовала явного упоминания OpenSSL в рекламных материалах при использовании библиотек OpenSSL, а также добавления специального примечания в случае поставки OpenSSL в составе продукта. Подобные требования делали старую лицензию несовместимой с GPL, что создавало трудности при использовании OpenSSL в проектах с лицензией GPL. Для обхода данной несовместимости GPL-проекты вынуждены были применять специфичные лицензионные соглашения, в которых основной текст GPL дополнялся пунктом, явно разрешающим связывание приложения с библиотекой OpenSSL и упоминающим, что требования GPL не распространяется на связывание с OpenSSL.

>>> Источник (opennet.ru)

>>> Подробности



Проверено: hobbit ()

Ответ на: комментарий от GP

если минцифры все равно устроит слив всех твоих данных

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

anonymous ()

Опечатка

Так, а есть что-то интересное? Есть.

static int dh_cmp_parameters(const EVP_PKEY *a, const EVP_PKEY *b)
{
    return ossl_ffc_params_cmp(&a->pkey.dh->params, &a->pkey.dh->params,
                               a->ameth != &ossl_dhx_asn1_meth);
}

Предупреждение PVS-Studio: V751 Parameter ‘b’ is not used inside function body. dh_ameth.c 312

Классика :).

Andrey_Karpov_2020 ()
Ответ на: Re: Опечатка от anonymous

Слабое предупреждение.

Нормально. Это более умное предупреждение, чем ругаться на все неиспользуемые аргументы. Подробнее. А вот выдать осмысленнее сообщение про замеченную аномалию сложнее, чем кажется :(.

Andrey_Karpov_2020 ()
Ответ на: комментарий от gns

Как завезли так и вывезли. Есть GOST в релизной ветке? Про сертификат не распарсил. Почему его может не быть? Другой вопрос что из-за отсутствия в релизных ветках гост, у пользователя начинаются проблемы при открытии страниц с такими сертификатами. Точнее ни в браузере посмотреть и curl’om http не получить.

anonymous ()
Ответ на: комментарий от anonymous

Есть две большие разницы завезения ГОСТ, в TLS он вроде как не завезён из коробки, а вот проверить подлинность сертификата с помощью cli интерфейсов, или например сгенерить ключи кмк вполне можно. Но для простого пользователя это конечно будет выглядеть как ГОСТ не завезён.

Но, если говорить про браузеры, скажи мне о анон - в каких таких браузерах вообще используется openssl?

pon4ik ★★★★★ ()
Ответ на: комментарий от pon4ik

Ну да, в пылу дискуссии с браузерами я погорячился. Но curl разве завозят в дистрибы не со статической линковкой с openssl, где по умолчанию нет ГОСТ. Чтобы получить гост надо пересобирать всё и вся.

anonymous ()
Ответ на: комментарий от anonymous

Но curl разве завозят в дистрибы не со статической линковкой с openssl, где по умолчанию нет ГОСТ

не знаю как сейчас, а лет 10 тому назад, когда в openssl уже завезли engine для gost у curl была ошибка - https://sourceforge.net/p/curl/bugs/1208/ , из-за которой curl игнорировал конфиг openssl.

и в php аналогичная фигня была - https://bugs.php.net/bug.php?id=63992 .

Но теперь-то всё хорошо, теперь тот engine не актуален, а есть-ли новый - Бог весть :)

anonymous ()
Ответ на: комментарий от anonymous

Откуда дровишки про расшифровку AES анбой?

Ну вообще, по аналогии, видно что предыдущий стандарт DES они таки имели технические возможности читать, если те уязвимости, что всплыли для него для публики в 90-х, были известны в 70е, когда он принимался. Но делать это было не просто: требовались суперкомпьютерные возможности на пределе техники того времени. То есть, чисто технически очень мало кто в мире мог это сделать, даже зная об уязвимостях, но АНБ наверное могло. А вот знали они или нет достоверно не известно, можно верить, что не знали ;-)

praseodim ★★★★★ ()
Ответ на: комментарий от anonymous
ldd $(which curl) | grep ssl
        libssl.so.1.1 => /lib/x86_64-linux-gnu/libssl.so.1.1 

Эт в бубунточке LTS, в стабильных дебьянах и шапках тоже так-же, только в шапке вроде ещё с fips моде включенным по умолчанию.

Вот насчёт штатного openssl надо будет почекать, но есть ненулевая вероятность, что достаточно поставить гостовый движок.

pon4ik ★★★★★ ()
Ответ на: Опечатка от Andrey_Karpov_2020

Предупреждение PVS-Studio: V751 Parameter ‘b’ is not used inside function body. dh_ameth.c 312

А ведь нелюбимый здесь господин Карпов прав - это фееричный косяк.

P.S. Похоже от пиваса есть толк.

P.P.S. Проверю на досуге cppcheck-ом и clang-ом, нужен ли пивас.

MumiyTroll ★★ ()
Последнее исправление: MumiyTroll (всего исправлений: 2)
Ответ на: комментарий от praseodim

АНБ наверное могло. А вот знали они или нет достоверно не известно, можно верить, что не знали

В смысле не знали. Можешь нагуглить вагон историй с их участием, где они намеренно продвигали (успешно) в стандарт слабый ключ, платили за включение в продуктах слабой криптографии по умолчанию и пр. Поэтому не только знали, но и руку приложили. Они же продвигают в интернетах идею про святую корову криптографию (не вскрывай эту тему, просто используй везде openssl, криптография - это как полёты на Нибиру, тебе никогда не понять).

anonymous ()