
openssl openssl-4.0.2
汎用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(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は openssl-library.org/source/ からダウンロードできます。OpenSSLプロジェクトはバイナリ形式でのツールキット配布は行っていません。
ただし、さまざまなオペレーティングシステム向けにプリコンパイルされたOpenSSLツールキットのバージョンが多数提供されています。特にLinuxやその他のUnix系オペレーティングシステムでは、ディストリビューターやベンダーが提供するプリコンパイル済み共有ライブラリにリンクすることを通常推奨します。
また、弊社Wikiの Binaries ページで、さまざまなオペレーティングシステム(Windowsを含む)向けにOpenSSLバイナリを生成するサードパーティのリストを管理しています。
テストおよび開発向け
理論上はソースtarballを使用してテストや開発を行うことも可能ですが、プロジェクト全体の履歴を含むgitリポジトリのローカルコピーを持つことで、コードベースをより深く理解できます。
メインのOpenSSL Gitリポジトリは非公開です。公開されているGitHubミラーが github.com/openssl/openssl にあり、コミットのたびに自動的に更新されます。
Gitリポジトリのローカルコピーは、GitHubミラーからクローンすることで取得できます。
git clone https://github.com/openssl/openssl.git
OpenSSLへのバグ修正や新機能のコントリビューションを予定している場合は、GitHubミラーをフォークし、公開フォークをクローンしてください。
git clone https://github.com/yourname/openssl.git
これは、現在のOpenSSL開発がすべてGitHubのプルリクエストを通じて行われているため必要です。詳細は コントリビューション を参照してください。
ビルドとインストール
ソースを入手したら、INSTALL ファイルを参照して、OpenSSLのビルドとインストールに関する詳細な手順を確認してください。一部のプラットフォームでは、プラットフォーム固有のドキュメントでインストール手順が補足されています。
- UNIX系プラットフォーム向けの注意事項
- Androidプラットフォーム向けの注意事項
- Windowsプラットフォーム向けの注意事項
- DJGPPを使用するDOSプラットフォーム向けの注意事項
- OpenVMSプラットフォーム向けの注意事項
- Perlに関する注意事項
- Valgrindに関する注意事項
以前のバージョンからOpenSSL 3.xへのアップグレードに関する具体的な注意事項は、ossl-guide-migration(7ossl) マニュアルページに記載されています。
ドキュメント
READMEファイル
ソース配布物の最上位ディレクトリには、特定のトピックに関する追加情報を含むREADME.mdファイルがいくつかあります。
OpenSSLガイド
OpenSSLガイド 内には、いくつかの重要なOpenSSLトピックに関するチュートリアルや入門ページがあります。
マニュアルページ
masterブランチおよび現在の全安定板リリースのマニュアルページはオンラインで利用可能です。
デモ
demosサブフォルダ には、OpenSSLのさまざまな機能を使用するための多数のソースコードデモがあります。
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.