オープン‐エスエスエル【OpenSSL】
読み方:おーぷんえすえすえる
《open secure socket layer》SSLとTLSを組み合わせたオープンソースソフトウエアの一。さまざまなプログラミング言語やオペレーティングシステムに対応し、オンラインショッピングやインターネットバンキングにおいて、暗証番号やクレジットカード番号の暗号化などに用いられる。
OpenSSL
SSL(Secure Sockets Layer)プロトコルのオープンソース実装。SSLだけでなくTLS(Transport Layer Protocol)もサポートする。OpenSSLプロジェクトが開発、配布している。
OpenSSLはSSLライブラリ、暗号化ライブラリ、コマンドラインツールから構成される。コマンドラインツールを使って鍵の生成、証明書の発行と管理などをおこなうことができる。
関連URL
OpenSSL(http://www.openssl.org/)
OpenSSL 関数
導入
このモジュールは、署名の生成および認証、そして、データのシール (暗号化)およびオープン(復号化)を行うために、 » OpenSSL の関数を使用します。 OpenSSL は多くの機能を提供しますが、これらはまだこのモジュールでは サポートされていません。これらのいくつかは将来的に追加される可能性が あります。要件
OpenSSL 関数を使用するためには、» OpenSSL パッケージがインストール されていることを要します。 PHP のバージョン 4.0.5 から 4.3.1 までは、OpenSSL >= 0.9.5 で動作します。他のバージョン(PHP <=4.0.4 および >= 4.3.2) では OpenSSL >= 0.9.6 を必要とします。警告 |
最新のバージョンの OpenSSL を使用するようにしてください。
さもないと、Web サーバへの攻撃に対しての脆弱性をかかえてしまいます。
|
インストール手順
PHP の OpenSSL サポートを使用するには、--with-openssl[=DIR] を指定して PHP を コンパイルする必要があります。Win32 ユーザへの注意: このモジュールを Windows 環境で使用するには、libeay32.dllを PHP/Win32 バイナリパッケージの DLL フォルダから使用する Windows マシンの SYSTEM32 フォルダ(例: C:\WINNT\SYSTEM32 または C:\WINDOWS\SYSTEM32 )にコピーする必要があります。
加えてキー生成およびサイン認証関数を使用する計画がある場合、 システムに 有効な openssl.cnf をインストールする 必要があります。PHP 4.3.0 以降、Win32 バイナリ配布版の openssl フォルダに サンプル設定ファイルが含まれています。 PHP 4.2.0 以降を使用しておりこのファイルがない場合、 » OpenSSLのホームページから入手するか PHP 4.3.0 のリリース版をダウンロードし、それらに含まれる 設定ファイルを使用することができます。
PHP は、 以下のロジックにより openssl.cnf を探します。
- 環境変数 OPENSSL_CONF が設定された場合、 設定ファイルの(ファイル名を含む)パスとして使用されます。
- 環境変数 SSLEAY_CONF が設定された場合、 設定ファイルの(ファイル名を含む)パスとして使用されます。
- ファイル openssl.cnf はデフォルトの認証エリアに あることが仮定され、openssl DLL がコンパイルされた時間で設定されます。 通常、デフォルトのファイル名が c:\usr\local\ssl\openssl.cnf であることを 意味します。
インストール時に、設定ファイルを c:\usr\local\ssl\openssl.cnf または 他の場所にインストールし、(例えば仮想ホスト毎に)環境変数に設定ファ イルの場所を指定するかを選ぶ必要があります。 設定ファイルを必要とする関数の configargs に より、デフォルトのパスを上書きすることが可能であることに注意してください。
実行時設定
設定ディレクティブは定義されていません。リソース型
キー/証明書パラメータ
OpenSSL 関数のうち、キーまたは証明書パラメータを必要とするものは ごく一部です。PHP 4.0.5 より以前では、openssl_get_xxx 関数により り返されたキーまたは証明書リソースを使用する必要がありました。 これより後のバージョンでは、次の方法のどれかを使用することが 可能となる予定です。-
証明書
- openssl_x509_read() から返された X.509 リソース。
- file://path/to/cert.pem 形式の文字列。 このファイルは、PEM エンコードされた証明書である必要があります。
- PEMエンコードされた証明書の内容を含む文字列。
-
公開鍵/秘密鍵
- openssl_get_publickey() あるいは openssl_get_privatekey() から返された キーリソース。
- 公開鍵のみ: X.509リソース。
- file://path/to/file.pem 形式の文字列。- このファイルは、PEM エンコードされた証明書/秘密鍵である 必要があります(両方を含むことも可能です)。
- PEM エンコードされた証明書/キーの内容を含む文字列
- 秘密鍵については array($key, $passphrase) という構文を使用することも可能です。 ただし、$key は file:// または上記のテキスト表現形式を使用 して指定したキー、$passphrase はその秘密鍵に関するパスワードを 有する文字列を表します。
証明書の認証
サイン/証明書を認証する関数をコールする際、 cainfo パラメータは、ファイルと認証済みの CA ファイルの場所を指定するファイルディレクトリ名を含む配列です。 ディレクトリが指定された場合、openssl コマンドが 使用できるような正しい形式にハッシュされたディレクトリである必要が あります。定義済み定数
以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。目的を調べるフラグ
- X509_PURPOSE_SSL_CLIENT (integer)
- X509_PURPOSE_SSL_SERVER (integer)
- X509_PURPOSE_NS_SSL_SERVER (integer)
- X509_PURPOSE_SMIME_SIGN (integer)
- X509_PURPOSE_SMIME_ENCRYPT (integer)
- X509_PURPOSE_CRL_SIGN (integer)
- X509_PURPOSE_ANY (integer)
パディングフラグ
- OPENSSL_PKCS1_PADDING (integer)
- OPENSSL_SSLV23_PADDING (integer)
- OPENSSL_NO_PADDING (integer)
- OPENSSL_PKCS1_OAEP_PADDING (integer)
キーの型
PKCS7 フラグ/定数
S/MIME 関数はビットフィールドを使用して指定したフラグを使用します。 このビットフィールドには、以下の値を一つ以上含むことが可能です。 表 224. PKCS7 定数定数 | 説明 |
---|---|
PKCS7_TEXT | text/plain content type ヘッダを暗号化/署名されたメッセージに 追加します。復号化または認証を行う際には、このヘッダは出力から 取り除かれます。復号化または認証されたメッセージがMIME 型 text/plain でない場合、エラーとなります。 |
PKCS7_BINARY | 通常は、入力されたメッセージは CR および LF を行端として使用した 「正規化」された形式に変換されます。こらは、S/MIME の規格に 基づくものです。このオプションが指定された場合、変換は行われません。 この機能は、MIME 形式でないバイナリデータを処理する際に 便利です。 |
PKCS7_NOINTERN | メッセージを認証する際に、通常、メッセージに含まれる証明書が 証明書にサインする際に検索されます。 このオプションでは、 openssl_pkcs7_verify() の extracerts パラメータで指定した証明書 のみが使用されます。しかし、指定された証明書を信頼されていな い CA として使用することも可能です。 |
PKCS7_NOVERIFY | サインつきメッセージをサインした証明書の署名について 検証しません。 |
PKCS7_NOCHAIN | サインを行った側の証明書の認証の連鎖を行いません。 この場合、サイン付きのメッセージにある証明書を未認証の CA として使用しません。 |
PKCS7_NOCERTS | メッセージにサインする際、通常はサインをする人の証明書が挿入 されますが、このオプションを指定した場合はそうなりません。これに よりサイン付きのメッセージのサイズは小さくなりますが、認証 側が(例えば、openssl_pkcs7_verify() の extracerts を用いて渡すことにより) サインをした人の証明書のコピーをローカルに用意する必要があります。 |
PKCS7_NOATTR | 通常、メッセージがサインされる時、サインした時間やサポートされる 対象アルゴリズムを含む一連の属性が付加されます。このオプションを 指定した場合、それらの属性は付加されません。 |
PKCS7_DETACHED | メッセージにサインをする際、MIME型 multipart/signed を指定して クリアテキストでサインを行います。これは、 openssl_pkcs7_sign() において フラグを指定しなかった場合の flags パラメータのデフォルトです。このオプションをオフにした場合、 メッセージは不透明なサインによりサインされます。これは、 メールリレイによる変換に対してより耐性がありますが、S/MIME を サポートしないメールエージェントでは読むことはできません。 |
PKCS7_NOSIGS | メッセージにサインや認証を試みません。 |
注意: これらの定数は、4.0.6 で追加されました。
署名アルゴリズム
- OPENSSL_ALGO_SHA1 (integer)
- openssl_sign() および openssl_verify() のデフォルトアルゴリズムとして用いられます。
- OPENSSL_ALGO_MD5 (integer)
- OPENSSL_ALGO_MD4 (integer)
- OPENSSL_ALGO_MD2 (integer)
暗号化方式
- OPENSSL_CIPHER_RC2_40 (integer)
- OPENSSL_CIPHER_RC2_128 (integer)
- OPENSSL_CIPHER_RC2_64 (integer)
- OPENSSL_CIPHER_DES (integer)
- OPENSSL_CIPHER_3DES (integer)
バージョン定数
注意: これらの定数は、5.2.0 で追加されました。目次
- openssl_csr_export_to_file — CSR をファイルにエクスポートする
- openssl_csr_export — CSR を文字列としてエクスポートする
- openssl_csr_get_public_key — CERT の公開鍵を返す
- openssl_csr_get_subject — CERT の subject を返す
- openssl_csr_new — CSR を作成する
- openssl_csr_sign — 他の CERT(あるいは自分自身)で証明書をサインする
- openssl_error_string — OpenSSL エラーメッセージを返す
- openssl_free_key — キーリソースを開放する
- openssl_get_privatekey — openssl_pkey_get_private() のエイリアス
- openssl_get_publickey — openssl_pkey_get_public() のエイリアス
- openssl_open — シール(暗号化)されたデータをオープン(復号)する
- openssl_pkcs7_decrypt — S/MIME 暗号化されたメッセージを復号化する
- openssl_pkcs7_encrypt — S/MIME メッセージを暗号化する
- openssl_pkcs7_sign — S/MIME メッセージにサインする
- openssl_pkcs7_verify — S/MIME でサインされたメッセージの署名を検証する
- openssl_pkey_export_to_file — エクスポート可能な形式で、キーをファイルに取得する
- openssl_pkey_export — エクスポート可能な形式で、キーを文字列に取得する
- openssl_pkey_free — 秘密鍵を開放する
- openssl_pkey_get_details — キーの詳細 (bits, pkey, type) の配列を返す
- openssl_pkey_get_private — 秘密鍵を取得する
- openssl_pkey_get_public — 証明書から公開鍵を抽出し、使用できるようにする
- openssl_pkey_new — 新規に秘密鍵を生成する
- openssl_private_decrypt — 秘密鍵でデータを復号化する
- openssl_private_encrypt — 秘密鍵でデータを暗号化する
- openssl_public_decrypt — 公開鍵でデータを復号化する
- openssl_public_encrypt — 公開鍵でデータを暗号化する
- openssl_seal — データをシール(暗号化)する
- openssl_sign — 署名を生成する
- openssl_verify — 署名を検証する
- openssl_x509_check_private_key — 秘密鍵が証明書に対応するかを確認する
- openssl_x509_checkpurpose — 証明書が特定の目的に使用可能かどうか確認する
- openssl_x509_export_to_file — 証明書をファイルにエクスポートする
- openssl_x509_export — 証明書を文字列としてエクスポートする
- openssl_x509_free — 証明書リソースを開放する
- openssl_x509_parse — X509 証明書をパースし、配列として情報を返す
- openssl_x509_read — Parse an X.509 証明書をパースし、リソースIDを返す
OpenSSL
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/10/24 23:36 UTC 版)
開発元 | The OpenSSL Project |
---|---|
最新版 | 3.4.0 - 2024年10月22日[1] [±] |
最新評価版 | なし [±] |
リポジトリ | |
プログラミング 言語 | C言語、アセンブリ言語 |
対応OS | マルチプラットフォーム |
種別 | セキュリティライブラリ |
ライセンス |
|
公式サイト |
www |
OpenSSL(オープン・エスエスエル)は、TLSプロトコル・SSLプロトコルの、オープンソースで開発・提供されるソフトウェアである。中心となっているライブラリ(C言語で書かれている)は基本的な暗号化関数と様々なユーティリティ関数を実装している。様々なコンピュータ言語でOpenSSLライブラリを利用できるようにするラッパーもある。OpenSSLはEric A. YoungとTim HudsonによるSSLeay(1998年12月に開発者がRSA Securityに異動したため開発は終了されている)を基にしている。
OpenSSLが利用可能なプラットフォームは、ほぼ全てのUnix系(SolarisやLinux、macOS、BSDを含む)、OpenVMS、そしてWindowsである。IBMによってSystem i (iSeries/AS400) に移植されたバージョンもある。
バージョン履歴
バージョン | リリース日[5] | サポート期限[6] | 概要 | 最新版 |
---|---|---|---|---|
0.9.1 | 1998年12月23日 | — |
|
0.9.1c (1998年12月23日) |
0.9.2 | 1999年3月22日 | — |
|
0.9.2b (1999年4月6日) |
0.9.3 | 1999年5月25日 | — |
|
0.9.3a (1999年5月27日) |
0.9.4 | 1999年8月9日 | — |
|
0.9.4 (1999年8月9日) |
0.9.5 | 2000年2月28日 | — |
|
0.9.5a (2000年4月1日) |
0.9.6 | 2000年9月24日 | — |
|
0.9.6m (2004年3月17日) |
0.9.7 | 2002年12月31日 | — |
|
0.9.7m (2007年2月23日) |
0.9.8 | 2005年7月5日 | 2015年12月31日[7] |
|
0.9.8zh (2015年12月3日) |
1.0.0 | 2010年3月29日 | 2015年12月31日[7] |
|
1.0.0t (2015年12月3日) |
[8] | 1.0.12012年3月14日 | 2016年12月31日 | 1.0.1u (2016年9月22日) | |
[9] | 1.0.22015年1月22日 | 2019年12月31日 |
|
1.0.2u (2019年12月20日) |
[10] | 1.1.02016年8月25日 | 2019年9月11日 |
|
1.1.0l (2019年9月10日) |
[11] | 1.1.12018年9月11日 | 2023年9月11日 | 1.1.1w (2023年9月11日) | |
3.0 | 2021年9月7日 | 2026年9月7日 |
|
3.0.15 (2024年9月3日) |
[14] | 3.12023年3月14日 | 2025年3月14日 | 3.1.7 (2024年9月3日) | |
[15] | 3.22023年11月23日 | 2025年11月23日 | 3.2.3 (2024年9月3日) | |
[16] | 3.32024年4月9日 | 2026年4月9日 | 3.3.2 (2024年9月3日) | |
[17] | 3.42024年10月22日 | 2026年10月22日 | 3.4.0 (2024年10月22日) | |
凡例 サポート終了 サポート中 現行バージョン 最新プレビュー版 将来のリリース |
使用ライブラリ( libssl, libcrypto )を ver. 1.0 から 1.1 に変更する場合には、使用元のプログラムを少なからず変更する必要がある。本変更に関するノウハウや解説が[18]においてまとめられている。
暗号化アルゴリズム
OpenSSLは以下の暗号化アルゴリズムをサポートする。
- プロトコル
- SSL 3.0、TLS (1.0、1.1、1.2、1.3)、DTLS (1.0、1.2)
- 共通鍵暗号方式
- AES、Blowfish、Camellia、ChaCha20、Poly1305、SEED、CAST-128、DES、IDEA、RC2、RC4、RC5、トリプルDES、GOST 28147-89[19]、SM4
- ハッシュ関数方式
- MD5、MD4、MD2、SHA-1、SHA-2、SHA-3、RIPEMD-160、MDC-2、GOST R 34.11-94[19]、BLAKE2、Whirlpool[20]、SM3
- 公開鍵暗号方式
- RSA、DSA、ディフィー・ヘルマン鍵共有、楕円曲線暗号、X25519、Ed25519、X448、Ed448、GOST R 34.10-2001[19]、SM2
FIPS 140-2の承認
OpenSSLは、NIST(アメリカ国立標準技術研究所)のCryptographic Module Validation Programによるコンピュータセキュリティ標準であるFIPS 140-2において承認された[21]初めてのオープンソースプログラムである。ただしOpenSSL自体が検証されたのではなく、OpenSSL FIPS Object Moduleという標準対応用のソースコードを組み込んだものが検証されている。このモジュールはOpenSSL 1.0.1/1.0.2で使用可能。[22]
最初の承認は2006年1月に行われた。同年7月には「承認されたモジュールによる外部のプログラムとの相互作用に関し疑問が提示された」[23]ため、いったんは撤回されたものの、翌2007年に再び承認が行われた[24][25]。
ライセンス
OpenSSL v3.0.0未満はOpenSSL LicenseとSSLeay Licenseの両方のライセンス下で公開されている[26]。OpenSSL v3.0.0以降ではApache License Version 2.0のみとなる[2][3][4]。OpenSSL LicenseはApache License, Version 1.0であり、SSLeay Licenseは宣伝条項付きの四条項BSDライセンスである。一般にデュアルライセンスではユーザーは2つのライセンスのうち片方を選択できるが、OpenSSLの説明書きによると、両方のライセンスが適用されることを意味している。
OpenSSL v3.0.0未満のOpenSSL Licenseは、Apache License Version 2.0ではなくApache License Version 1.0である(前述の通りOpenSSL v3.0.0以降ではApache License Version 2.0のみ[2][3][4])ため、「この製品はOpenSSLツールキットを利用するためにOpenSSLプロジェクトによって開発されたソフトウェアを含む。(This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit[27])」という一文を再頒布の際に含めなければならないという規定が含まれ、GNU General Public License (GPL) と非互換である[28]。ただしThe OpenSSL Projectの見解では、多くのLinuxやBSDディストリビューションにおいて、OpenSSLはオペレーティングシステムの一部をなしているためGPLの制限は適用されないとしている[29]。中には、"OpenSSL exception"を追加してシステムで動かせるようにしているプロジェクトもある。GNU Wgetとclimmプロジェクトがそのような例である[30][31]。
バグによる脆弱性
Debianの弱い鍵
ValgrindをOpenSSLに対しても適用可能とするために、Debianディストリビューションに含まれるOpenSSLにパッチを適用したが、この際に誤って擬似乱数生成器が正しく動作しなくなり、生成される暗号鍵が予測可能なものとなってしまった[32]。
このバグは2006年9月17日にリリースされたDebian (OpenSSL 0.9.8c-1) から含まれており、バグが判明してDebianから発表されたのは2008年5月13日であった[33]。Debian系以外のシステムを含め、問題となったDebian上で生成した鍵を使用している場合は、脆弱性のないOpenSSLで鍵を再生成する必要がある[32]。
このバグは、Debian 4.0 (etch) ではOpenSSLの0.9.8c-4etch3以降で、Debian 5.0 (lenny) では0.9.8g-9で修正されている[33]。
Heartbleed
2014年4月7日に、OpenSSLの1.0.2-betaや1.0.1系列で、TLSのheartbeat拡張[34]について、メモリの扱いにバグがあると発表された[35] 。このバグを利用することで、ハートビート1回ごとに64キロバイトのメモリを読み取ることが可能となる[35]。この問題のCVE番号はCVE-2014-0160である[36]。
この脆弱性は2011年12月31日から存在し、OpenSSL 1.0.1がリリースされた2012年3月14日以降、脆弱性のあるOpenSSLが広く使われている[37][38]。サーバ側のメモリを読むことで、機密情報にアクセスが可能となり、場合によっては秘密鍵を盗まれて[37]暗号化が無力となり、中間者攻撃を仕掛けることが可能となる。
ユーザーに関する非公開の情報、たとえばセッションクッキーやパスワードも漏れうるため、他者になりすますことも可能となってしまう[39]。脆弱性が判明した段階で、認証局から証明を受けたHTTPSサーバのうち、ざっと17%から半分程度が影響するものと見られている[40]。
基本的な対策はハートビートを使用しない(-DOPENSSL_NO_HEARTBEATS オプションを付けて再コンパイルする)か、脆弱性を修正したバージョン(1.0.1g以降)への更新となる[35]。
CCS Injection Vulnerability
2014年6月6日に、過去10年以上に渡るすべてのOpenSSLのバージョンについて、ChangeCipherSpecメッセージの処理の不正な順序による挿入によって攻撃者の意図する弱い暗号へ強制変更させた通信として開始されるという攻撃方法が発見され、CCS Injection脆弱性 (CCS Injection Vulnerability, CVE-2014-0224) として公開された[41]。
この脆弱性は過去のOpenSSLのほとんどのバージョンに存在し、通信開始手順の途中で不正な信号を送ると、該当する通信で使われる一時的な暗号鍵が、第三者でも予想できてしまうというものである。
また、脆弱性発見の経緯が、発見者により公開されている[42]。
DROWN攻撃
Decrypting RSA with Obsolete and Weakened eNcryptionと名付けられた攻撃手法の略称[43]。
脆弱性の概要は、SSLv2を使用可能にしていると攻撃者は、同じ秘密鍵を共有するSSLv2が有効なサーバにプローブを送信することで、新しいプロトコルであるTLSを使ったクライアントとサーバ間の接続を復号することができる[44]。 想定される影響は、遠隔の攻撃者に、SSLv2 をサポートしているサーバの暗号通信を解読されるおそれがある。SSLv2 をサポートしており、TLS 通信で SSLv2 と同一の証明書を使用している場合、TLS の暗号通信であっても、同様の影響を受けるおそれがある[45]。 この攻撃に対処したパッチは、1.0.1sまたは1.0.2.g[46]である。 SSLv2自体は、2011年から非推奨[47]となっている。
フォーク
LibreSSL
OpenBSDプロジェクトでは、前述のハートブリード問題をうけて、OpenSSL 1.0.1gをベースとしてフォークしたLibreSSLを2014年4月に立ち上げた[48]。これは、OpenBSDで利用されているOpenSSLライブラリを置き換えることを目的としており、OpenSSLのコードの見直しを行いよりセキュアな実装とすることを目指している。
既に、OpenBSDにおいて不要なコードや、古いシステムのサポートのためのコードの削除を行い、90000行以上のソースコードの削減を行っている[49]。
2014年7月11日に、LibreSSL 2.0.0がリリースされた[50][51]。
BoringSSL
Googleも、OpenSSLをフォークしたBoringSSLの立ち上げを2014年6月に発表した[52][53]。Googleでは、OpenSSL、LibreSSL双方の開発者と協力していくとしている。
脚注
- ^ “OpenSSL: Newslog”. 2024年10月24日閲覧。
- ^ a b c Matt Caswell (28 November 2018). “The Holy Hand Grenade of Antioch”. OpenSSL Foundation, Inc. 3 January 2019閲覧。
- ^ a b c Richard Levitte (6 December 2018). “Change license to the Apache License v2.0 openssl/LICENSE at master · openssl/openssl · GitHub”. OpenSSL Foundation, Inc. 3 January 2019閲覧。
- ^ a b c 樽井 秀人 (30 November 2018). “「OpenSSL」のバージョンの付け方が変更 ~ライセンスは“Apache License 2.0”へ 現行バージョンはそのまま、v3.0.0から実施”. Impress Corporation. 3 January 2019閲覧。
- ^ “Changelog”. OpenSSL Software Foundation. 2019年10月7日閲覧。
- ^ a b c “Release Strategy”. OpenSSL Software Foundation. 2023年3月18日閲覧。
- ^ a b Mark J Cox (2016年1月25日). “(openssl-announce) Forthcoming OpenSSL releases” (英語). The OpenSSL Project Team. 2016年12月7日閲覧。 “support for 1.0.0 and 0.9.8 releases ended on 31st December 2015 and are no longer receiving security updates”
- ^ “OpenSSL 1.0.1 Series Release Notes”. 2015年1月20日時点のオリジナルよりアーカイブ。2017年2月20日閲覧。
- ^ “OpenSSL 1.0.2 Series Release Notes”. 2017年2月20日閲覧。
- ^ “OpenSSL 1.1.0 Series Release Notes”. 2017年2月20日閲覧。
- ^ a b Caswell, Matt (2018年9月11日). “OpenSSL 1.1.1 Is Released” (英語). www.openssl.org. OpenSSL Foundation. 2019年10月7日閲覧。
- ^ Caswell, Matt (2018年2月8日). “Using TLS1.3 With OpenSSL - OpenSSL Blog” (英語). www.openssl.org. OpenSSL Foundation. 2019年10月7日閲覧。
- ^ Caswell, Matt (2018年11月28日). “The Holy Hand Grenade of Antioch”. OpenSSL Blog. 2019年10月7日閲覧。
- ^ “OpenSSL 3.1 Final Release” (英語). OpenSSL Foundation. 2024年10月10日閲覧。
- ^ “OpenSSL announces final release of OpenSSL 3.2.0” (英語). OpenSSL Foundation. 2024年10月10日閲覧。
- ^ “OpenSSL 3.3 Final Release Live” (英語). OpenSSL Foundation. 2024年10月10日閲覧。
- ^ “OpenSSL 3.4 Final Release Live” (英語). OpenSSL Foundation. 2024年10月24日閲覧。
- ^ “OpenSSL (libssl libcrypto) の version を 1.1未満(1.0.2以前) から 1.1 以降に変更する方法や注意点など”. openssl-migration. 2021年5月21日閲覧。
- ^ a b c “GOST engine OpenSSL 1.0.0 README”. cvs.openssl.org. 2013年4月15日時点のオリジナルよりアーカイブ。2019年10月7日閲覧。
- ^ “OpenSSL source code, directory crypto/whrlpool”. 2017年8月29日閲覧。
- ^ “FIPS-140 - OpenSSL.org” (2017年3月14日). 2015年8月23日時点のオリジナルよりアーカイブ。2019年11月12日閲覧。
- ^ “OpenSSL User Guide for the OpenSSL FIPS Object Module v2.0” (2017年3月14日). 2019年11月12日閲覧。
- ^ NIST recertifies open source encryption module
- ^ “Validated FIPS 140-1 and FIPS 140-2 Cryptographic Modules 2007”. アメリカ国立標準技術研究所 (2007年). 2013年6月24日閲覧。
- ^ “FIPS 140-2 Validation Certificate” (PDF). アメリカ国立標準技術研究所 (2007年). 2013年6月24日閲覧。
- ^ OpenSSL: Source, License
- ^ http://www.openssl.org
- ^ Licenses - Free Software Foundation
- ^ OpenSSL: Frequently Asked Questions
- ^ WGET 1.10.2 for Windows (win32)
- ^ climm - Download!
- ^ a b DebianのOpenSSLに脆弱性、「弱い鍵」が破られる恐れ @IT、2008年5月20日(2014年4月12日閲覧)。
- ^ a b “DSA-1571-1 openssl – predictable random number generator”. Debian (May 13, 2008). 2012年12月3日閲覧。
- ^ Seggelmann, R. et al. (February 2012). “Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) Heartbeat Extension”. RFC 6520. Internet Engineering Task Force (IETF). 8 April 2014閲覧。
- ^ a b c OpenSSL.org (07 April 2014). “OpenSSL Security Advisory [07 Apr 2014]”. 9 April 2014閲覧。
- ^ [1]
- ^ a b Codenomicon Ltd (2014年4月8日). “Heartbleed Bug”. 2014年4月8日閲覧。
- ^ Goodin, Dan (2014年4月8日). “Critical crypto bug in OpenSSL opens two-thirds of the Web to eavesdropping”. Ars Technica. 2014年4月8日閲覧。
- ^ “Why Heartbleed is dangerous? Exploiting CVE-2014-0160”. IPSec.pl (2014年). 2014年4月8日閲覧。
- ^ Mutton, Paul (8 April 2014). “Half a million widely trusted websites vulnerable to Heartbleed bug”. Netcraft Ltd.. 8 April 2014閲覧。
- ^ “CCS Injection Vulnerability”. lepidum.co.jp (2014年6月6日). 2014年6月6日閲覧。
- ^ CCS Injection脆弱性(CVE-2014-0224)発見の経緯についての紹介 - CCS Injection
- ^ https://drownattack.com/drown-attack-paper.pdf DROWN: Breaking TLS using SSLv2
- ^ https://japan.cnet.com/article/35078777/ HTTPSサイトの3割に影響する「DROWN」脆弱性見つかる--OpenSSLはパッチ公開
- ^ “JVNVU#90617353:SSLv2 の暗号通信を解読可能な脆弱性 (DROWN 攻撃)”. Japan Vulnerability Notes (2016年3月2日). 2018年6月15日閲覧。
- ^ https://www.openssl.org/news/vulnerabilities.html#2016-0800 CVE-2016-0800 (OpenSSL advisory) [High severity] 1st March 2016
- ^ https://datatracker.ietf.org/doc/html/rfc6176
- ^ “OpenBSD has started a massive strip-down and cleanup of OpenSSL”. OpenBSD journal (2014年4月15日). 2014年6月22日閲覧。
- ^ “OpenBSD forks, prunes, fixes OpenSSL”. ZDNet (2014年4月21日). 2014年6月22日閲覧。
- ^ “Index of /pub/OpenBSD/LibreSSL” (11 July 2014). 11 July 2014閲覧。
- ^ Beck, Bob (11 July 2014). “First release of LibreSSL portable is available”. Marc.info. 11 July 2014閲覧。
- ^ “Google unveils independent “fork” of OpenSSL called “BoringSSL””. Ars Technica (2014年6月21日). 2014年6月21日閲覧。
- ^ “BoringSSL”. Adam Langley's Weblog (2014年6月20日). 2015年9月22日閲覧。
関連項目
外部リンク
- 公式ウェブサイト
- The OpenSSL License and the GPL、Mark McLoughlinによる。
- Win32 OpenSSL
固有名詞の分類
- OpenSSLのページへのリンク