
openssl openssl-4.0.3
汎用TLSおよび暗号ライブラリ
OpenSSLプロジェクトへようこそ
OpenSSLは、Transport Layer Security (TLS、旧称SSL)、Datagram TLS (DTLS)、およびQUICプロトコル向けの、堅牢で商用グレードのフル機能を備えたオープンソースツールキットです。
プロトコルの実装は、単独でも使用できる完全強度の汎用暗号ライブラリに基づいています。また、FIPS標準に準拠することが検証された暗号モジュールも含まれています。
OpenSSLは、Eric A. YoungとTim J. Hudsonによって開発されたSSLeayライブラリを起源としています。
OpenSSLプロジェクトの公式ホームページはwww.openssl.orgです。
目次
概要
OpenSSLツールキットには以下が含まれます:
-
libssl TLSv1.3までのすべてのTLSプロトコルバージョン(RFC 8446)、DTLSv1.3までのDTLSプロトコルバージョン(RFC 9147)、およびQUICバージョン1プロトコル(RFC 9000)の実装。
-
libcrypto 完全強度の汎用暗号ライブラリ。TLS実装の基盤を構成しますが、独立して使用することもできます。
-
openssl OpenSSLコマンドラインツール。暗号タスク、テスト、分析のための万能ツールです。以下の用途に使用できます:
- 鍵パラメータの生成
- X.509証明書、CSR、CRLの作成
- メッセージダイジェストの計算
- 暗号化と復号
- SSL/TLS/DTLSおよびクライアント・サーバーテスト
- QUICクライアントテスト
- S/MIME署名済みまたは暗号化メールの処理
- その他多数...
ダウンロード
本番環境での使用
公式リリースのソースコードtarballはopenssl-library.org/source/からダウンロードできます。OpenSSLプロジェクトはツールキットをバイナリ形式では配布していません。
ただし、多種多様なオペレーティングシステム向けに、OpenSSLツールキットのコンパイル済みバージョンが利用可能です。特にLinuxやその他のUnix系オペレーティングシステムでは、通常、ディストリビューターやベンダーが提供するコンパイル済み共有ライブラリにリンクすることが推奨されます。
また、さまざまなオペレーティングシステム(Windowsを含む)向けにOpenSSLバイナリを提供しているサードパーティのリストを、wikiのBinariesページで管理しています。
テストと開発用
テストと開発は理論上ソースtarballを使用して行うこともできますが、プロジェクト履歴全体を含むgitリポジトリのローカルコピーを持つことで、コードベースについてより深い洞察を得ることができます。
OpenSSLのメインGitリポジトリは非公開です。github.com/openssl/opensslに公開GitHubミラーがあり、コミットごとに前者から自動的に更新されます。
Gitリポジトリのローカルコピーは、GitHubミラーからクローンすることで取得できます。
git clone https://github.com/openssl/openssl.git
バグ修正や新機能の追加など、OpenSSLに貢献する予定がある場合は、GitHubミラーをフォークし、代わりに公開フォークをクローンする必要があります。
git clone https://github.com/yourname/openssl.git
これは、今日のOpenSSLの開発がすべてGitHubのプルリクエストを通じて行われるためです。詳細については、コントリビューションを参照してください。
ビルドとインストール
ソースを入手したら、OpenSSLのビルドとインストールに関する詳細な手順についてINSTALLファイルを参照してください。一部のプラットフォームでは、インストール手順がプラットフォーム固有のドキュメントで補足されています。
- UNIX系プラットフォーム向けの注意事項
- Androidプラットフォーム向けの注意事項
- Windowsプラットフォーム向けの注意事項
- DJGPPを使用するDOSプラットフォーム向けの注意事項
- OpenVMSプラットフォーム向けの注意事項
- Perlに関する注意事項
- Valgrindに関する注意事項
以前のバージョンからOpenSSL 3.xへのアップグレードに関する具体的な注意事項は、ossl-guide-migration(7ossl)マニュアルページに記載されています。
ドキュメント
READMEファイル
ソース配布物のトップレベルには、特定のトピックに関する追加情報を含むいくつかのREADME.mdファイルがあります。
OpenSSLガイド
OpenSSL Guide内に、いくつかの重要なOpenSSLトピックに関するチュートリアルおよび入門ページがあります。
マニュアルページ
masterブランチおよび現在のすべての安定版リリースのマニュアルページはオンラインで利用可能です。
デモ
さまざまなOpenSSL機能を使用するための多数のソースコードデモがdemosサブフォルダにあります。
Wiki
GitHub Wikiがありますが、現在はあまり活発ではありません。
ライセンス
OpenSSLはApache License 2.0の下でライセンスされています。これは、その条件を満たす限り、商用および非商用の目的で自由に入手して使用できることを意味します。
詳細については、LICENSE.txtファイルを参照してください。
サポート
連絡を取る方法はさまざまです。適切なチャネルは要件によって異なります。詳細については、SUPPORTファイルを参照してください。
コントリビューション
OpenSSLプロジェクトに興味があり、貢献する意思がある場合は、CONTRIBUTINGファイルを参照してください。
法的事項
多くの国が暗号技術の使用または輸出を制限しています。そのような制限の対象となる可能性がある場合は、暗号コードの開発または配布を試みる前に法的アドバイスを求めるべきです。
著作権
Copyright (c) 1998-2026 The OpenSSL Project Authors
Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson
All rights reserved.