OpenSSL — это надежный полнофункциональный набор инструментов коммерческого уровня с открытым исходным кодом для протоколов TLS (ранее SSL), DTLS и QUIC (в настоящее время только на стороне клиента).
Реализации протокола основаны на полноценной криптографической библиотеке общего назначения, которую также можно использовать автономно. Также включен криптографический модуль, проверенный на соответствие стандартам FIPS.
OpenSSL произошел от библиотеки SSLeay, разработанной Эриком А. Янгом и Тимом Дж. Хадсоном.
Официальная домашняя страница проекта OpenSSL — www.openssl.org.
Обзор
Скачать
Сборка и установка
Документация
Лицензия
Поддерживать
Содействие
Законность
В набор инструментов OpenSSL входят:
libssl — реализация всех версий протокола TLS до TLSv1.3 (RFC 8446), версий протокола DTLS до DTLSv1.2 (RFC 6347) и протокола QUIC (в настоящее время только на стороне клиента) версии 1 (RFC 9000).
libcrypto — полноценная криптографическая библиотека общего назначения. Он составляет основу реализации TLS, но его также можно использовать независимо.
openssl — инструмент командной строки OpenSSL, швейцарский армейский нож для криптографических задач, тестирования и анализа. Его можно использовать для
создание ключевых параметров
создание сертификатов X.509, CSR и CRL
расчет дайджестов сообщений
шифрование и дешифрование
SSL/TLS/DTLS и тесты клиента и сервера
QUIC-клиентские тесты
обработка подписанной или зашифрованной почты S/MIME
и многое другое...
Архивы исходного кода официальных выпусков можно загрузить с сайта www.openssl.org/source. Проект OpenSSL не распространяет набор инструментов в двоичной форме.
Однако для большого количества операционных систем доступны предварительно скомпилированные версии набора инструментов OpenSSL. В частности, в Linux и других операционных системах Unix обычно рекомендуется компоновать предварительно скомпилированные общие библиотеки, предоставленные дистрибьютором или поставщиком.
Мы также ведем список третьих сторон, которые производят двоичные файлы OpenSSL для различных операционных систем (включая Windows), на странице «Двоичные файлы» в нашей вики.
Хотя тестирование и разработку теоретически можно также проводить с использованием архивов с исходным кодом, наличие локальной копии репозитория git со всей историей проекта дает вам гораздо больше понимания базы кода.
Официальный репозиторий OpenSSL Git находится по адресу git.openssl.org. Существует зеркало репозитория GitHub по адресу github.com/openssl/openssl, которое автоматически обновляется при каждом коммите.
Локальную копию репозитория Git можно получить, клонировав ее из исходного репозитория OpenSSL, используя
git clone git://git.openssl.org/openssl.git
или из зеркала GitHub, используя
git clone https://github.com/openssl/openssl.git
Если вы намерены внести свой вклад в OpenSSL, либо для исправления ошибок, либо для внесения новых функций, вам необходимо создать форк репозитория OpenSSL openssl/openssl на GitHub и вместо этого клонировать свой публичный форк.
git clone https://github.com/yourname/openssl.git
Это необходимо, поскольку в настоящее время вся разработка OpenSSL осуществляется с помощью запросов на извлечение GitHub. Более подробную информацию см. в разделе «Содействие».
После получения исходного кода просмотрите файл INSTALL для получения подробных инструкций по сборке и установке OpenSSL. Для некоторых платформ инструкции по установке дополнены документом для конкретной платформы.
Примечания для UNIX-подобных платформ
Примечания для платформ Android
Примечания для платформ Windows
Примечания для платформы DOS с DJGPP
Примечания для платформы OpenVMS
Заметки о Perl
Заметки о Валгринде
Конкретные примечания по обновлению до OpenSSL 3.x с предыдущих версий можно найти на странице руководства ossl-guide-migration(7ossl).
На верхнем уровне исходного дистрибутива имеется несколько файлов README.md, содержащих дополнительную информацию по конкретным темам.
Информация о реализации протокола OpenSSL QUIC
Информация об архитектуре поставщика OpenSSL
Информация об использовании модуля OpenSSL, проверенного FIPS.
Информация об устаревшей архитектуре OpenSSL Engine.
В Руководстве OpenSSL есть несколько обучающих и вводных страниц по некоторым важным темам OpenSSL.
Страницы руководства для основной ветки и всех текущих стабильных выпусков доступны в Интернете.
Мастер OpenSSL
ОпенSSL 3.0
ОпенSSL 3.1
ОпенSSL 3.2
В подпапке demos находится множество демонстраций исходного кода для использования различных возможностей OpenSSL.
На wiki.openssl.org есть Wiki, которая в настоящее время не очень активна. Содержит много полезной информации, не вся из которой актуальна.
OpenSSL лицензируется по лицензии Apache License 2.0, что означает, что вы можете свободно получать и использовать его в коммерческих и некоммерческих целях при условии, что вы выполняете его условия.
Дополнительные сведения см. в файле LICENSE.txt.
Есть различные способы связаться. Правильный канал зависит от ваших требований. Более подробную информацию смотрите в файле SUPPORT.
Если вы заинтересованы и готовы внести свой вклад в проект OpenSSL, ознакомьтесь с файлом CONTRIBUTING.
Ряд стран ограничивают использование или экспорт криптографии. Если на вас потенциально распространяются такие ограничения, вам следует обратиться за юридической консультацией, прежде чем пытаться разрабатывать или распространять криптографический код.
Авторские права (c) 1998–2024. Авторы проекта OpenSSL.
Авторские права (c) 1995–1998 гг. Эрик А. Янг, Тим Дж. Хадсон
Все права защищены.