CLIツール
openssl/openssl avatar
openssl/openssl

OpenSSLの暗号ライブラリを構成から判断する

汎用 TLS および暗号化ライブラリ。ダウンロード ======== 本番環境での使用 公式リリースのソース コード tarball は openssl-library.org/source/ からダウンロードできます。

スター 30,778フォーク 11,458CApache-2.0

ひと目でわかる

これは何?
C で書かれた汎用 TLS および暗号ライブラリ。libssl、libcrypto、コマンドラインツールで構成される。 READMEに記載された機能と未記載の条件を分け、導入前に確認すべき具体的な境界を整理します。
誰に向いている?
README はビルド、貢献、サポート、ライセンスの詳細をそれぞれ INSTALL.md、CONTRIBUTING.md、SUPPORT.md、LICENSE.txt に委ね、暗号の輸出規制にも注意を促している。 採用候補にする場合は、まずREADMEに示された対象OS、入力形式、設定ファイル、実行コマンドを固定し、openssl固有の出力やログを確認してください。
商用利用できる?
できます。Apache-2.0 は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
今もメンテナンスされている?
されています。最後のコミットは 1 日前です。
何の言語で書かれている?
主に C です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月14日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

libcrypto、libssl、opensslコマンド

リポジトリのメタデータによると、OpenSSL は C で書かれた汎用 TLS および暗号ライブラリです。README の冒頭では、このツールキットを TLS、DTLS、QUIC プロトコル向けのオープンソースツールキットと説明し、プロジェクトのホームページとして www.openssl.org を挙げています。ツールキットは三つの部分に分かれます。libssl は TLSv1.3 までの TLS、DTLSv1.2 までの DTLS、および QUIC バージョン 1 を実装します。libcrypto は TLS 実装の基盤となる汎用暗号ライブラリで、単独でも使えます。openssl コマンドラインツールは、鍵パラメータの生成、X.509 証明書、CSR、CRL の作成、メッセージダイジェストの計算、暗号化と復号、SSL/TLS/DTLS のクライアントおよびサーバテスト、QUIC クライアントテスト、S/MIME 署名付きまたは暗号化メールの処理などに使います。README の目次には、Overview、Download、Build and Install、Documentation、License、Support、Contributing、Legalities、Copyright が並んでいます。

openssl-openssl-deep-analysisについてREADMEが明記している範囲を、この章の対象として読んでください。導入判断では、libcrypto、libssl、opensslコマンドに対応する設定名、コマンド、ディレクトリ、対応サービスを実際の資料で照合し、記載がない部分を機能として扱わないことが重要です。

TLSからQUICまでの範囲

README はプロトコル対応を特定の RFC に結び付けています。TLSv1.3 は RFC 8446、DTLSv1.2 は RFC 6347、QUIC バージョン 1 は RFC 9000 です。また、プロトコル実装は FIPS 標準に適合するよう検証された暗号モジュールに基づくと述べていますが、検証証明書や正確なモジュールバージョンには触れていません。README は OpenSSL が Eric A. Young と Tim J. Hudson による SSLeay ライブラリの系譜にあるとしています。リポジトリのメタデータでは、プロジェクトの説明は 'General purpose TLS and crypto library'、主要言語は C です。ドキュメントの節では、README-FIPS.md が OpenSSL FIPS 検証モジュールの使い方を説明するファイルとして挙げられています。

openssl-openssl-deep-analysisについてREADMEが明記している範囲を、この章の対象として読んでください。導入判断では、TLSからQUICまでの範囲に対応する設定名、コマンド、ディレクトリ、対応サービスを実際の資料で照合し、記載がない部分を機能として扱わないことが重要です。

ソースと公式バイナリの扱い

公式リリースのソースコード tarball は openssl-library.org/source から入手でき、README は本番環境でこれを使うよう示しています。プロジェクト自身はバイナリを配布しません。README によると、Linux や他の Unix 系 OS では通常、ディストリビュータやベンダーが提供するプリコンパイル済みライブラリを使うことが推奨されます。また、Windows を含むさまざまな OS 向けに OpenSSL バイナリを作成しているサードパーティのリストを wiki で管理しています。テストと開発には、公開 GitHub ミラーをクローンするのがよいと README は述べ、ミラーはプライベートなメインリポジトリから自動的に更新されるとしています。例示されているクローンコマンドは 'git clone https://github.com/openssl/openssl.git' です。README は本番用途と開発用途を分けており、開発者はローカルの git リポジトリを使うことを想定しています。

openssl-openssl-deep-analysisについてREADMEが明記している範囲を、この章の対象として読んでください。導入判断では、ソースと公式バイナリの扱いに対応する設定名、コマンド、ディレクトリ、対応サービスを実際の資料で照合し、記載がない部分を機能として扱わないことが重要です。

ビルド対象と文書の位置

ビルドとインストールの手順は INSTALL.md から始まります。README は UNIX 系プラットフォーム、Android、Windows、DJGPP 付き DOS、OpenVMS、Perl、Valgrind 向けのプラットフォーム別ノートを挙げています。アップグレードについては ossl-guide-migration(7ossl) マニュアルページを参照し、以前のバージョンから OpenSSL 3.x への移行に関する注意点が示されています。ドキュメントのセクションには README-QUIC.md、README-PROVIDERS.md、README-FIPS.md の各トピックファイル、OpenSSL Guide のチュートリアルと入門ページ、master ブランチと 4.0、3.6、3.5、3.4、3.0 リリースのオンラインマニュアルページ、demos サブフォルダがあります。GitHub wiki は現在あまり活発ではないと説明されています。

openssl-openssl-deep-analysisについてREADMEが明記している範囲を、この章の対象として読んでください。導入判断では、ビルド対象と文書の位置に対応する設定名、コマンド、ディレクトリ、対応サービスを実際の資料で照合し、記載がない部分を機能として扱わないことが重要です。

開発ブランチと貢献

README によると、OpenSSL のメイン Git リポジトリはプライベートで、GitHub ミラーは公開されています。開発はすべて GitHub の pull request で行われるため、貢献者はミラーをフォークし、自分のフォークを 'git clone https://github.com/yourname/openssl.git' でクローンする必要があります。貢献の詳細は CONTRIBUTING.md、サポート窓口は SUPPORT.md にあります。リポジトリのメタデータでは、執筆時点でスター 30,562、フォーク 11,385、オープン issue 1,589、デフォルトブランチ master、アーカイブはされていません。README は、貢献を考えている人に対して CONTRIBUTING.md を読むよう求めています。

openssl-openssl-deep-analysisについてREADMEが明記している範囲を、この章の対象として読んでください。導入判断では、開発ブランチと貢献に対応する設定名、コマンド、ディレクトリ、対応サービスを実際の資料で照合し、記載がない部分を機能として扱わないことが重要です。

ライセンスとサポート境界

README とリポジトリのメタデータによると、OpenSSL は Apache License 2.0 でライセンスされています。README は、条件を満たせば商用・非商用を問わず自由に使えるとし、詳細は LICENSE.txt を参照するとしています。提供されたライセンス抜粋にはライセンス本文が含まれていないため、具体的な許諾文をここで引用することはできません。README はまた、暗号技術の使用や輸出を制限する国があると警告し、そのような制限の影響を受ける可能性がある場合は、暗号コードの開発や配布前に法的助言を求めるよう勧めています。著作権は The OpenSSL Project Authors(1998-2026)と Eric A. Young、Tim J. Hudson(1995-1998)に帰属します。Legalities の節は、暗号コードの開発や配布には法的助言が必要になる場合があると述べています。

openssl-openssl-deep-analysisについてREADMEが明記している範囲を、この章の対象として読んでください。導入判断では、ライセンスとサポート境界に対応する設定名、コマンド、ディレクトリ、対応サービスを実際の資料で照合し、記載がない部分を機能として扱わないことが重要です。

編集部の結論

README はビルド、貢献、サポート、ライセンスの詳細をそれぞれ INSTALL.md、CONTRIBUTING.md、SUPPORT.md、LICENSE.txt に委ね、暗号の輸出規制にも注意を促している。 採用候補にする場合は、まずREADMEに示された対象OS、入力形式、設定ファイル、実行コマンドを固定し、openssl固有の出力やログを確認してください。資料にない性能、互換性、サポートを前提にせず、その結果が自分の運用条件に合うかで判断する記事です。

公式情報源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
コミュニティノート

コミュニティノート