OpenSSL は、TLS (旧称 SSL)、DTLS、および QUIC (現在はクライアント側のみ) プロトコル用の堅牢な商用グレードのフル機能を備えたオープン ソース ツールキットです。
プロトコルの実装は、スタンドアロンでも使用できる完全強度の汎用暗号ライブラリに基づいています。 FIPS 標準に準拠することが検証された暗号化モジュールも含まれています。
OpenSSL は、Eric A. Young と Tim J. Hudson によって開発された SSLeay ライブラリから派生したものです。
OpenSSL プロジェクトの公式ホームページは、www.openssl.org です。
概要
ダウンロード
ビルドとインストール
ドキュメント
ライセンス
サポート
貢献する
合法性
OpenSSL ツールキットには次のものが含まれます。
libssl は、TLSv1.3 (RFC 8446) までのすべての TLS プロトコル バージョン、DTLSv1.2 (RFC 6347) までの DTLS プロトコル バージョン、および QUIC (現時点ではクライアント側のみ) バージョン 1 プロトコル (RFC 9000) の実装です。
libcrypto は、完全な強度の汎用暗号化ライブラリです。これは TLS 実装の基礎を構成しますが、独立して使用することもできます。
openssl はOpenSSL コマンド ライン ツールで、暗号化タスク、テスト、分析用のスイス アーミー ナイフです。に使用できます
キーパラメータの作成
X.509 証明書、CSR、および CRL の作成
メッセージダイジェストの計算
暗号化と復号化
SSL/TLS/DTLS およびクライアントとサーバーのテスト
QUICクライアントテスト
S/MIME 署名付きまたは暗号化されたメールの処理
さらに...
公式リリースのソース コード tarball は、www.openssl.org/source からダウンロードできます。 OpenSSL プロジェクトは、ツールキットをバイナリ形式で配布しません。
ただし、さまざまなオペレーティング システムに対して、OpenSSL ツールキットのプリコンパイルされたバージョンが利用可能です。特に、Linux およびその他の Unix オペレーティング システムでは、通常、ディストリビュータまたはベンダーが提供するプリコンパイル済みの共有ライブラリにリンクすることが推奨されます。
また、さまざまなオペレーティング システム (Windows を含む) 用の OpenSSL バイナリを作成するサードパーティのリストを、Wiki のバイナリ ページで管理しています。
理論的には、ソース tarball を使用してテストと開発を行うこともできますが、プロジェクト履歴全体が含まれる 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 に貢献する場合は、GitHub 上の OpenSSL リポジトリ openssl/openssl をフォークし、代わりにパブリック フォークのクローンを作成する必要があります。
git clone https://github.com/yourname/openssl.git
現在の OpenSSL の開発はすべて GitHub プル リクエスト経由で行われるため、これが必要です。詳細については、「貢献」を参照してください。
ソースを入手したら、OpenSSL の構築とインストールに関する詳細な手順について INSTALL ファイルを確認してください。一部のプラットフォームでは、インストール手順がプラットフォーム固有のドキュメントによって修正されています。
UNIX 系プラットフォームに関する注意事項
Android プラットフォームに関する注意事項
Windows プラットフォームに関する注意事項
DJGPP を使用した DOS プラットフォームに関する注意事項
OpenVMS プラットフォームに関する注意事項
Perlに関する注意事項
ヴァルグリンドに関する注意事項
以前のバージョンから OpenSSL 3.x にアップグレードする場合の具体的な注意事項は、ossl-guide-migration(7ossl) マニュアル ページに記載されています。
ソース配布の最上位には、特定のトピックに関する追加情報を含む README.md ファイルがいくつかあります。
OpenSSL QUIC プロトコルの実装に関する情報
OpenSSL プロバイダーのアーキテクチャに関する情報
OpenSSL FIPS 検証済みモジュールの使用に関する情報
従来の OpenSSL Engine アーキテクチャに関する情報
OpenSSL ガイドには、重要な OpenSSL トピックに関するチュートリアルと紹介ページがいくつかあります。
master ブランチと現在のすべての安定リリースのマニュアル ページはオンラインで入手できます。
OpenSSLマスター
OpenSSL 3.0
OpenSSL 3.1
OpenSSL 3.2
さまざまな OpenSSL 機能を使用するための多数のソース コード デモが、demos サブフォルダーにあります。
wiki.openssl.org に Wiki がありますが、現在はあまり活発ではありません。役立つ情報がたくさん含まれていますが、すべてが最新のものではありません。
OpenSSL は Apache License 2.0 に基づいてライセンス供与されており、その条件を満たす限り、商用および非商用目的で自由に取得および使用できることを意味します。
詳細については、LICENSE.txt ファイルを参照してください。
連絡するにはさまざまな方法があります。正しいチャネルは要件によって異なります。詳細については、SUPPORT ファイルを参照してください。
OpenSSL プロジェクトに興味があり、積極的に貢献したい場合は、CONTRIBUTING ファイルをご覧ください。
多くの国が暗号の使用または輸出を制限しています。このような制限を受ける可能性がある場合は、暗号化コードの開発または配布を試みる前に法的アドバイスを求める必要があります。
Copyright (c) 1998-2024 OpenSSL プロジェクト作成者
著作権 (c) 1995-1998 エリック A. ヤング、ティム J. ハドソン
無断転載を禁じます。