るりまサーチ (Ruby 2.3.0)

最速Rubyリファレンスマニュアル検索!
1190件ヒット [1-100件を表示] (0.147秒)
トップページ > バージョン:2.3.0[x] > クエリ:openssl[x] > クエリ:p[x] > クエリ:SSL[x]

別のキーワード

  1. openssl new
  2. openssl digest
  3. openssl to_der
  4. openssl to_s
  5. openssl hexdigest

ライブラリ

クラス

キーワード

検索結果

<< 1 2 3 ... > >>

openssl (150403.0)

OpenSSL(https://www.openssl.org/) を Ruby から扱うためのライブラリです。

OpenSSL(https://www.openssl.org/)
を Ruby から扱うためのライブラリです。

このドキュメントでは SSL/TLS の一般的事項については
解説をしません。利用者は、SSL/TLSの各概念、例えば
以下の事項について理解している必要があります。
* 暗号と認証に関する一般的概念
* セキュリティに対する攻撃法
* 公開鍵暗号と秘密鍵暗号
* 署名の役割、署名の方法とその検証
* 公開鍵基盤(PKI, Public Key Infrastructure)
* X.509 証明書
* 暗号と乱数について
SSLのようなセキュリティ技...

OpenSSL::OPENSSL_VERSION_NUMBER -> Integer (124048.0)

システムにインストールされている OpenSSL 本体のバージョンを表した数です。 https://www.openssl.org/docs/manmaster/man3/OPENSSL_VERSION_NUMBER.html も参照してください。

システムにインストールされている OpenSSL 本体のバージョンを表した数です。
https://www.openssl.org/docs/manmaster/man3/OPENSSL_VERSION_NUMBER.html
も参照してください。

OpenSSL::OPENSSL_FIPS -> bool (123970.0)

システムにインストールされている OpenSSL が FIPS を サポートしているならば true です。

システムにインストールされている OpenSSL が FIPS を
サポートしているならば true です。

していなければ false です。

@see OpenSSL.#fips_mode=

OpenSSL::OPENSSL_LIBRARY_VERSION -> String (123952.0)

実行時に使われている OpenSSL 本体のバージョンを表した文字列です。

実行時に使われている OpenSSL 本体のバージョンを表した文字列です。

OpenSSL::OPENSSL_VERSION -> String (123952.0)

ビルド時に使われた OpenSSL 本体のバージョンを表した文字列です。

ビルド時に使われた OpenSSL 本体のバージョンを表した文字列です。

絞り込み条件を変える

OpenSSL::SSL (105289.0)

* OpenSSL::SSL::SSLContext * OpenSSL::SSL::SSLServer * OpenSSL::SSL::SSLSocket

* OpenSSL::SSL::SSLContext
* OpenSSL::SSL::SSLServer
* OpenSSL::SSL::SSLSocket

OpenSSL::OpenSSLError (105049.0)

すべての OpenSSL 関連の例外クラスのベースとなる例外クラスです。

すべての OpenSSL 関連の例外クラスのベースとなる例外クラスです。

OpenSSL::PKey::DH#p -> OpenSSL::BN (96991.0)

DH 鍵共有プロトコルの鍵パラメータ p を返します。

DH 鍵共有プロトコルの鍵パラメータ p を返します。

このパラメータは安全な素数でなければなりません。

@see OpenSSL::PKey::DH#p=

OpenSSL::PKey::DSA#p -> OpenSSL::BN (96973.0)

DSA 鍵のパラメータ p を返します。

DSA 鍵のパラメータ p を返します。

p は公開鍵、秘密鍵の両方に属する情報です。

OpenSSL::PKey::RSA#p -> OpenSSL::BN (96907.0)

鍵の1つめの素数です。

鍵の1つめの素数です。

秘密鍵の情報です。

絞り込み条件を変える

OpenSSL::SSL::SSLSocket#peer_cert_chain -> [OpenSSL::X509::Certificate] | nil (88378.0)

接続相手の証明書チェインを OpenSSL::X509::Certificate オブジェクト の配列で返します。

接続相手の証明書チェインを OpenSSL::X509::Certificate オブジェクト
の配列で返します。

OpenSSL::SSL::SSLSocket#connect や OpenSSL::SSL::SSLSocket#accept
で SSL/TLS ハンドシェイクを行う前にこのメソッドを呼ぶと nil を返します。

以下の順の配列を返します。
[接続相手の証明書, 下位CAの証明書,... 中間CAの証明書]
ルート CA の証明書は含まれないことに注意してください。

@see OpenSSL::SSL::SSLSocket#peer_cert

OpenSSL::SSL::SSLSocket#peer_cert -> OpenSSL::X509::Certificate | nil (88330.0)

接続相手の証明書オブジェクトを返します。

接続相手の証明書オブジェクトを返します。

OpenSSL::SSL::SSLSocket#connect や OpenSSL::SSL::SSLSocket#accept
で SSL/TLS ハンドシェイクを行う前にこのメソッドを呼ぶと nil を返します。

@see OpenSSL::SSL::SSLSocket#peer_cert_chain

OpenSSL::SSL::OP_NO_SSLv3 -> Integer (87745.0)

SSL v3 の使用を禁止するフラグです。 OpenSSL::SSL::SSLContext#options= で利用します。

SSL v3 の使用を禁止するフラグです。
OpenSSL::SSL::SSLContext#options= で利用します。

OpenSSL::SSL::OP_NO_SSLv2 -> Integer (87685.0)

SSL v2 の使用を禁止するフラグです。

SSL v2 の使用を禁止するフラグです。

OpenSSL::SSL::SSLContext#options= で利用します。

OpenSSL::SSL::SSLContext#ssl_timeout=(seconds) (87358.0)

このコンテキストから生成するセッションのタイムアウト秒数を設定します。

このコンテキストから生成するセッションのタイムアウト秒数を設定します。

nil を指定すると OpenSSL のデフォルトのタイムアウト秒数(300秒)を用います。

@param seconds タイムアウト秒数(整数)
@see OpenSSL::SSL::Session#timeout

絞り込み条件を変える

OpenSSL::SSL::SSLSocket#pending -> Integer | nil (87349.0)

OpenSSL内部のバッファが保持している、直ちに読み取り可能な データのバイト数を返します。

OpenSSL内部のバッファが保持している、直ちに読み取り可能な
データのバイト数を返します。

ハンドシェイク開始前には nil を返します。

OpenSSL::SSL::SSLContext#ssl_timeout -> Integer | nil (87340.0)

このコンテキストから生成するセッションのタイムアウト秒数を返します。

このコンテキストから生成するセッションのタイムアウト秒数を返します。

デフォルト値は nil です。

@see OpenSSL::SSL::SSLContext#timeout=

OpenSSL::SSL::SSLContext#ssl_version=(ver) (87340.0)

利用するプロトコルの種類を文字列もしくは シンボルで指定します。

利用するプロトコルの種類を文字列もしくは
シンボルで指定します。

OpenSSL::SSL::SSLContext.new で指定できるものと同じです。

@param ver 利用するプロトコルの種類

OpenSSL::X509::Name.parse_openssl(str, template=OBJECT_TYPE_TEMPLATE) -> OpenSSL::X509::Name (79594.0)

文字列をパースして OpenSSL::X509::Name オブジェクトを返します。

文字列をパースして OpenSSL::X509::Name オブジェクトを返します。

例:
require 'openssl'
OpenSSL::X509::Name.parse('/C=JP/ST=Kanagawa/L=Yokohama/O=Example Company/OU=Lab3/CN=foobar/emailAddress=foobar@lab3.example.co.jp')

@param str パースする文字列
@param template 属性型に対応するデータ型を表わすハッシュ

OpenSSL::SSL::SSLServer#accept -> OpenSSL::SSL::SSLSocket (79561.0)

クライアントからの接続を受け付け、接続した SSLSocket オブジェクトを返します。

クライアントからの接続を受け付け、接続した
SSLSocket オブジェクトを返します。

OpenSSL::SSL::SSLServer#start_immediately が真ならば、
SSLSocket#accept を呼び TLS/SSL ハンドシェイクを実行してから
SSLSocket オブジェクトを返します。

絞り込み条件を変える

OpenSSL::SSL::SSLContext#set_params(params) -> Hash (79321.0)

パラメータをハッシュで設定します。

パラメータをハッシュで設定します。

渡すハッシュテーブルは { パラメータ名のシンボル => パラメータの値 } という
形をしていなければなりません。

以下のパラメータを設定できます。
* :cert (OpenSSL::SSL::SSLContext#cert=)
* :key (OpenSSL::SSL::SSLContext#key=)
* :client_ca (OpenSSL::SSL::SSLContext#client_ca=)
* :ca_file (OpenSSL::SSL::SSLContext#ca_file=)
* :ca_path (Open...

OpenSSL::SSL::SSLContext#options=(options) (79177.0)

オプションを設定します。

オプションを設定します。

以下の値の OR で指定します。
* OpenSSL::SSL::OP_ALL
* OpenSSL::SSL::OP_CIPHER_SERVER_PREFERENCE
* OpenSSL::SSL::OP_EPHEMERAL_RSA
* OpenSSL::SSL::OP_NETSCAPE_CA_DN_BUG
* OpenSSL::SSL::OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG
* OpenSSL::SSL::OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION
* OpenSS...

OpenSSL::X509::PURPOSE_NS_SSL_SERVER -> Integer (78724.0)

証明書が Netscape SSL server の証明書として使えるか チェックすることを意味します。

証明書が
Netscape SSL server の証明書として使えるか
チェックすることを意味します。

OpenSSL::X509::Store#purpose= や
OpenSSL::X509::StoreContext#purpose= で設定し、
OpenSSL::X509::Store#verify や
OpenSSL::X509::StoreContext#verify で
このことを確認します。

OpenSSL::X509::PURPOSE_SSL_CLIENT -> Integer (78724.0)

証明書が SSL のクライアントサイドの証明書として使えるか チェックすることを意味します。

証明書が
SSL のクライアントサイドの証明書として使えるか
チェックすることを意味します。

OpenSSL::X509::Store#purpose= や
OpenSSL::X509::StoreContext#purpose= で設定し、
OpenSSL::X509::Store#verify や
OpenSSL::X509::StoreContext#verify で
このことを確認します。

OpenSSL::X509::PURPOSE_SSL_SERVER -> Integer (78724.0)

証明書が SSL のサーバサイドの証明書として使えるか。 チェックすることを意味します。

証明書が
SSL のサーバサイドの証明書として使えるか。
チェックすることを意味します。

OpenSSL::X509::Store#purpose= や
OpenSSL::X509::StoreContext#purpose= で設定し、
OpenSSL::X509::Store#verify や
OpenSSL::X509::StoreContext#verify で
このことを確認します。

絞り込み条件を変える

OpenSSL::SSL::OP_MICROSOFT_BIG_SSLV3_BUFFER -> Integer (78721.0)

SSL 通信での各種バグ回避コードを有効にするフラグです。

SSL 通信での各種バグ回避コードを有効にするフラグです。

OpenSSL::SSL::SSLContext#options= で利用します。

通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば

ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS

などとします。

OpenSSL::SSL::OP_MSIE_SSLV2_RSA_PADDING -> Integer (78721.0)

SSL 通信での各種バグ回避コードを有効にするフラグです。

SSL 通信での各種バグ回避コードを有効にするフラグです。

OpenSSL::SSL::SSLContext#options= で利用します。

通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば

ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS

などとします。

OpenSSL::SSL::OP_SSLEAY_080_CLIENT_DH_BUG -> Integer (78721.0)

SSL 通信での各種バグ回避コードを有効にするフラグです。

SSL 通信での各種バグ回避コードを有効にするフラグです。

OpenSSL::SSL::SSLContext#options= で利用します。

通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば

ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS

などとします。

OpenSSL::SSL::OP_SSLREF2_REUSE_CERT_TYPE_BUG -> Integer (78721.0)

SSL 通信での各種バグ回避コードを有効にするフラグです。

SSL 通信での各種バグ回避コードを有効にするフラグです。

OpenSSL::SSL::SSLContext#options= で利用します。

通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば

ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS

などとします。

OpenSSL::SSL::SSLContext#ciphers=(ciphers) (78691.0)

利用可能な共通鍵暗号を設定します。

利用可能な共通鍵暗号を設定します。

これによって、SSL コネクションにおいて
特定の共通鍵暗号だけを利用可能にすることができます。

指定の方法は2種類あります。1つは
"ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH"
のような文字列で指定する方法で、もう一つは配列で
["ALL", "!ADH", "!LOW", "!EXP", "!MD5", "@STRENGTH"]
という配列で指定する方法です。上の2つの例は同じ
内容を意味しています。
詳しくは OpenSSL のマニュアルの
SSL_CTX_set_cipher_list の項を見てください。

@...

絞り込み条件を変える

OpenSSL::PKey::RSA::SSLV23_PADDING -> Integer (78685.0)

PKCS #1 v1.5 で定義されているものに SSL特有の変更を加えたパディングモードです。

PKCS #1 v1.5 で定義されているものに
SSL特有の変更を加えたパディングモードです。

互換性目的以外での利用は推奨しません。

OpenSSL::PKey::RSA#public_encrypt、
OpenSSL::PKey::RSA#private_decrypt の
第二引数に指定できます。

OpenSSL::SSL::SSLContext#verify_depth=(depth) (78655.0)

証明書チェイン上の検証する最大の深さを設定します。

証明書チェイン上の検証する最大の深さを設定します。

デフォルトは nil で、この場合 OpenSSL のデフォルト値(9)が使われます。

@param depth 最大深さを表す整数
@see OpenSSL::SSL::SSLContext#verify_depth

OpenSSL::SSL::SSLSocket#accept_nonblock -> self (78529.0)

ノンブロッキング方式で TLS/SSL 通信をサーバモードとして開始し、 クライアントとのハンドシェイクを実行します。

ノンブロッキング方式で
TLS/SSL 通信をサーバモードとして開始し、
クライアントとのハンドシェイクを実行します。

IO が読み込み待ち、もしくは書き込み待ちになった場合は例外を
発生させ、ハンドシェイクを中断します。IO が読み込み/書き込み
可能状態になってからこのメソッドをもう一度呼ぶと
ハンドシェイクを再開します。

@raise OpenSSL::SSL::SSLError ハンドシェイクに失敗した(VERIFY_PEER で
証明書の検証に失敗した場合や、プロトコル合意に失敗したなど)
場合に発生します
(実際は OpenSSL::S...

OpenSSL::SSL::VERIFY_PEER -> Integer (78487.0)

OpenSSL::SSL::SSLContext#verify_mode= で指定できるフラグです。

OpenSSL::SSL::SSLContext#verify_mode= で指定できるフラグです。

サーバーモードであるかクライアントモードであるかによって意味がことなります。

サーバーモード: サーバーはクライアントに証明書を要求します。
送られてきた証明書は検証されます。検証が失敗した場合、
TLS/SSL ハンドシェイクを即座に終了させます。
クライアントは要求を無視することも可能です。
OpenSSL::SSL::VERIFY_FAIL_IF_NO_PEER_CERT と同時に指定した場合は
クライアントが要求を無視した場合にはハンドシェイクを即座に停止します。

クライアントモ...

OpenSSL::SSL::SSLContext::SESSION_CACHE_NO_INTERNAL_LOOKUP -> Integer (78469.0)

サーバ側でセッションキャッシュが必要になった場合 OpenSSL::SSL::SSLContext が保持するキャッシュ領域 を探索しないことを意味します。

サーバ側でセッションキャッシュが必要になった場合
OpenSSL::SSL::SSLContext が保持するキャッシュ領域
を探索しないことを意味します。

OpenSSL::SSL::SSLContext#session_cache_mode= に
渡すフラグとして用います。

このフラグを ON にすると、キャッシュの探索が必要になった
場合必ずコールバック(OpenSSL::SSL::SSLContext#session_get_cb=
で設定したもの)を呼ぶようになります。

絞り込み条件を変える

OpenSSL::SSL::SSLSocket#post_connection_check(hostname) -> true (78463.0)

接続後検証を行います。

接続後検証を行います。

検証に成功した場合は true を返し、失敗した場合は例外
OpenSSL::SSL::SSLError を発生させます。

OpenSSL の API では、
OpenSSL::SSL::SSLSocket#connect や OpenSSL::SSL::SSLSocket#accept
での検証は実用的には不完全です。
CA が証明書に署名してそれが失効していないことしか確認しません。
実用上は証明書に記載されている事項を見て、接続先が妥当であるかを確認する
必要があります。通常は接続先ホストの FQDN と証明書に記載されている FQDN が
一致しているか...

OpenSSL::SSL::SSLSocket#accept -> self (78457.0)

TLS/SSL 通信をサーバモードとして開始し、クライアントからの ハンドシェイク開始を待ち、クライアントとのハンドシェイクを実行します。

TLS/SSL 通信をサーバモードとして開始し、クライアントからの
ハンドシェイク開始を待ち、クライアントとのハンドシェイクを実行します。

@raise OpenSSL::SSL::SSLError ハンドシェイクに失敗した(VERIFY_PEER で
証明書の検証に失敗した場合や、プロトコル合意に失敗したなど)
場合に発生します
@see OpenSSL::SSL::SSLSocket#connect,
OpenSSL::SSL::SSLSocket#accept_nonblock

OpenSSL::SSL::VERIFY_FAIL_IF_NO_PEER_CERT -> Integer (78415.0)

OpenSSL::SSL::SSLContext#verify_mode= で指定できるフラグです。

OpenSSL::SSL::SSLContext#verify_mode= で指定できるフラグです。

サーバーモードであるかクライアントモードであるかによって意味がことなります。

サーバーモード: クライアントが証明書を返さない場合に
TLS/SSL ハンドシェイクを即座に終了させます。
このフラグは VERIFY_PEER フラグとともに使われなければなりません。

クライアントモード: 無視されます。

OpenSSL::SSL::SSLContext#tmp_dh_callback=(cb) (78409.0)

一時的 DH 鍵を生成するためのコールバックを設定します。

一時的 DH 鍵を生成するためのコールバックを設定します。

コールバックには Proc や Method を渡します。

暗号で一時的な DH 鍵を利用する場合にはこのコールバックが
呼びだされ、呼びだされたブロックは適切な鍵パラメータを返さなければ
なりません。これで設定するブロックは
proc{|sslsocket, is_export, keylen| ... }
という引数を取るようにします。それぞれの引数の意味は
* sslsocket 通信に使われる OpenSSL::SSL::SSLSocket オブジェクト
* is_export 輸出規制のある暗号を利用するかど...

OpenSSL::SSL::SSLSocket#cipher -> [String, String, Integer, Integer] (78409.0)

現在実際に使われている暗号の情報を配列で返します。

現在実際に使われている暗号の情報を配列で返します。

返される配列の形式は以下の例のように [暗号名, TLS/SSLのバージョン, 鍵長, アルゴリズムで使われる bit 数] となります。

["DES-CBC3-SHA", "TLSv1/SSLv3", 168, 168]

OpenSSL::SSL::SSLSocket#connect や OpenSSL::SSL::SSLSocket#accept
で SSL/TLS ハンドシェイクを行う前にこのメソッドを呼ぶと nil を返します。

絞り込み条件を変える

OpenSSL::SSL::OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG -> Integer (78397.0)

@todo OpenSSL::SSL::SSLContext#options= で利用します。

@todo
OpenSSL::SSL::SSLContext#options= で利用します。

OpenSSL::SSL::SSLContext::DEFAULT_PARAMS -> { Symbol -> object } (78397.0)

OpenSSL::SSL::SSLContext#set_params でデフォルト値として使われる パラメータです。

OpenSSL::SSL::SSLContext#set_params でデフォルト値として使われる
パラメータです。

OpenSSL.#fips_mode=(bool) (78373.0)

FIPS モードを明示的に on/off します。

FIPS モードを明示的に on/off します。

@raise OpenSSL::OpenSSLError インストールされている OpenSSL が
FIPS をサポートしていない場合に発生します。

@see OpenSSL::OPENSSL_FIPS

OpenSSL::SSL::SSLContext#ciphers -> [[String, String, Integer, Integer]] (78373.0)

利用可能な共通鍵暗号の種類を配列で返します。

利用可能な共通鍵暗号の種類を配列で返します。

配列の各要素は以下のような配列です
[暗号方式の名前の文字列, 利用可能なSSL/TLSのバージョン文字列, 鍵長(ビット数), アルゴリズムのビット長]
例:
require 'openssl'
ctx = OpenSSL::SSL::SSLContext.new('TLSv1')
ctx.ciphers
# => [["DHE-RSA-AES256-SHA", "TLSv1/SSLv3", 256, 256],
# ["DHE-DSS-AES256-SHA", "TLSv1/SSLv3", 256, 256]...

OpenSSL::SSL::OP_NETSCAPE_CA_DN_BUG -> Integer (78337.0)

Netscape の CA の DN のエンコーディングバグを 回避するコードを有効にします。

Netscape の CA の DN のエンコーディングバグを
回避するコードを有効にします。

OpenSSL::SSL::SSLContext#options= で利用します。

絞り込み条件を変える

OpenSSL::SSL::SSLContext#ca_path -> String | nil (78337.0)

信頼している CA 証明書ファイルを含むディレクトリを返します。

信頼している CA 証明書ファイルを含むディレクトリを返します。

設定されていない場合は nil を返します。

@see OpenSSL::SSL::SSLContext#ca_path=

OpenSSL::SSL::SSLContext#ca_path=(ca) (78337.0)

接続相手の証明書の検証のために使う、 信頼している CA 証明書ファイルを含むディレクトリを設定します。

接続相手の証明書の検証のために使う、
信頼している CA 証明書ファイルを含むディレクトリを設定します。

そのディレクトリに含まれる
証明書のファイル名は証明書のハッシュ値文字列でなければなりません。

@param ca CA 証明書ファイルを含むディレクトリ名文字列
@see OpenSSL::SSL::SSLContext#ca_path

OpenSSL::SSL::SSLContext#options -> Integer | nil (78337.0)

設定されているオプションフラグを返します。

設定されているオプションフラグを返します。

@see OpenSSL::SSL::SSLContext#options=

OpenSSL::SSL::SSLContext#tmp_dh_callback -> Proc | nil (78337.0)

一時的 DH 鍵を生成するためのコールバックを返します。

一時的 DH 鍵を生成するためのコールバックを返します。

@see OpenSSL::SSL::SSLContext#tmp_dh_callback=

OpenSSL::SSL::SSLContext#verify_depth -> Integer | nil (78337.0)

証明書チェイン上の検証する最大の深さを返します。

証明書チェイン上の検証する最大の深さを返します。

デフォルトは nil です。

@see OpenSSL::SSL::SSLContext#verify_depth=

絞り込み条件を変える

OpenSSL::SSL::Session#to_pem -> String (78337.0)

自身を PEM 形式に変換します。

自身を PEM 形式に変換します。

これによってセッションキャッシュをディスク上に保持することができます。

@raise OpenSSL::SSL::Session::SessionError 変換に失敗した場合に発生します

OpenSSL::Netscape::SPKI#to_pem -> String (78319.0)

SPKI オブジェクトを PEM 形式の文字列に変換します。

SPKI オブジェクトを PEM 形式の文字列に変換します。

@raise OpenSSL::Netscape::SPKIError 変換に失敗した場合に発生します

OpenSSL::SSL::SocketForwarder#peeraddr -> Array (78301.0)

ラップされているソケットの接続先相手の情報を返します。

ラップされているソケットの接続先相手の情報を返します。

IPSocket#peeraddr と同様です。

OpenSSL::SSL::SSLSocket (78265.0)

ソケットをラップして SSL での認証と暗号通信を実現するためのクラスです。

ソケットをラップして SSL での認証と暗号通信を実現するためのクラスです。


=== 例

SSL/TLS サーバに接続して write します。

require 'socket'
require 'openssl'
include OpenSSL

soc = TCPSocket.new('www.example.com', 443)
ssl = SSL::SSLSocket.new(soc)
ssl.connect
ssl.post_connection_check('www.example.com')
raise "verification er...

OpenSSL::SSL::SSLServer (78193.0)

SSL サーバーのためのクラス。

SSL サーバーのためのクラス。

TCPServer をラップするクラスで、TCPServer で接続した
ソケットを OpenSSL::SSL::SSLSocket でラップする機能を持ちます。
おおよそ TCPServer と同様のメソッドを持ちます。

基本的には SSL サーバを簡単に実装するためのクラスであり、
これを利用せずとも SSL サーバを実装することは可能です。

以下はクライアントからの入力を標準出力に出力するだけのサーバです。

require 'socket'
require 'openssl'

include OpenSSL

ctx =...

絞り込み条件を変える

OpenSSL::SSL::SSLContext (78175.0)

SSL コンテキストクラス。

SSL コンテキストクラス。

SSL コネクション(OpenSSL::SSL::SSLSocket や OpenSSL::SSL::SSLServer)
オブジェクトを生成するためのファクトリクラスです。
コネクションを生成するために必要なパラメータ(プロトコルのバージョン、
証明書の情報、認証の要件など)を保持します。

コネクションを1度生成して以降は、コンテキストが保持しているパラメータを
変更できません。一部のパラメータが共有されるため、安全性のため
Object#freeze によってオブジェクトを変更不可能にします。
ただしこの凍結は完全ではなく、
この後もセッション管理機能によ...

OpenSSL::SSL::SSLError (78097.0)

OpenSSL::SSL 関連のエラーが生じたときに発生する例外です。

OpenSSL::SSL 関連のエラーが生じたときに発生する例外です。

OpenSSL::SSL::SSLContext#timeout=(seconds) (78058.0)

このコンテキストから生成するセッションのタイムアウト秒数を設定します。

このコンテキストから生成するセッションのタイムアウト秒数を設定します。

nil を指定すると OpenSSL のデフォルトのタイムアウト秒数(300秒)を用います。

@param seconds タイムアウト秒数(整数)
@see OpenSSL::SSL::Session#timeout

OpenSSL (78049.0)

OpenSSL のすべてのクラス、モジュール、メソッド、定数を 保持しているモジュールです。

OpenSSL のすべてのクラス、モジュール、メソッド、定数を
保持しているモジュールです。

OpenSSL::SSL::SSLContext#timeout -> Integer | nil (78040.0)

このコンテキストから生成するセッションのタイムアウト秒数を返します。

このコンテキストから生成するセッションのタイムアウト秒数を返します。

デフォルト値は nil です。

@see OpenSSL::SSL::SSLContext#timeout=

絞り込み条件を変える

OpenSSL::SSL::SSLContext.new(ssl_method) -> OpenSSL::SSL::SSLContext (71026.0)

SSL コンテキストオブジェクトを生成します。

SSL コンテキストオブジェクトを生成します。

ssl_method で利用するプロトコルの種類を文字列もしくは
シンボルで指定します。以下のいずれかが利用可能です。
* 'TLSv1' TLSv1サーバクライアント両用
* 'TLSv1_server' TLSv1サーバ用
* 'TLSv1_client' TLSv1クライアント用
* 'TLSv1_1'
* 'TLSv1_1_server'
* 'TLSv1_1_client'
* 'TLSv1_2'
* 'TLSv1_2_server'
* 'TLSv1_2_client'
*...

OpenSSL::SSL::SSLContext#client_ca -> [OpenSSL::X509::Certificate] | OpenSSL::X509::Certificate | nil (70843.0)

クライアント証明書を要求する時にクライアントに送る CA のリスト を返します。

クライアント証明書を要求する時にクライアントに送る CA のリスト
を返します。


@see OpenSSL::SSL::SSLContext#client_ca=

OpenSSL::SSL::SSLContext.new -> OpenSSL::SSL::SSLContext (70726.0)

SSL コンテキストオブジェクトを生成します。

SSL コンテキストオブジェクトを生成します。

ssl_method で利用するプロトコルの種類を文字列もしくは
シンボルで指定します。以下のいずれかが利用可能です。
* 'TLSv1' TLSv1サーバクライアント両用
* 'TLSv1_server' TLSv1サーバ用
* 'TLSv1_client' TLSv1クライアント用
* 'TLSv1_1'
* 'TLSv1_1_server'
* 'TLSv1_1_client'
* 'TLSv1_2'
* 'TLSv1_2_server'
* 'TLSv1_2_client'
*...

OpenSSL::SSL::SSLServer.new(svr, ctx) -> OpenSSL::SSL::SSLServer (70687.0)

TCPServer オブジェクトをラップする SSLServer オブジェクトを生成します。

TCPServer オブジェクトをラップする SSLServer オブジェクトを生成します。

svr にはラップするTCPServer オブジェクトを、
ctx には SSL サーバが用いる OpenSSL::SSL::SSLContext
オブジェクトを生成します。

OpenSSL::SSL::SSLServer#listen や OpenSSL::SSL::SSLServer#accept
は内部で svr で渡されたオブジェクトの
TCPServer#listen や TCPServer#accept を呼び出します。

@param svr 利用する TCPServer オブジェ...

OpenSSL::SSL::SSLSocket.new(socket) -> OpenSSL::SSL::SSLSocket (70675.0)

socket をラップして SSLSocket オブジェクトを生成します。

socket をラップして SSLSocket オブジェクトを生成します。


socket には ラップする TCPSocket オブジェクトを与え、
context には SSL の設定情報を所持している
OpenSSL::SSL::SSLContext オブジェクトを与えます。

context を省略した場合は OpenSSL::SSL::SSLContext.new で
新たにコンテキストを生成してそれを用います。

@param socket ラップするソケット
@param context SSL の設定情報を持つ SSL コンテキストオブジェクト
@raise OpenSSL:...

絞り込み条件を変える

OpenSSL::SSL::SSLSocket.new(socket, context) -> OpenSSL::SSL::SSLSocket (70675.0)

socket をラップして SSLSocket オブジェクトを生成します。

socket をラップして SSLSocket オブジェクトを生成します。


socket には ラップする TCPSocket オブジェクトを与え、
context には SSL の設定情報を所持している
OpenSSL::SSL::SSLContext オブジェクトを与えます。

context を省略した場合は OpenSSL::SSL::SSLContext.new で
新たにコンテキストを生成してそれを用います。

@param socket ラップするソケット
@param context SSL の設定情報を持つ SSL コンテキストオブジェクト
@raise OpenSSL:...

OpenSSL::SSL::SSLSocket#context -> OpenSSL::SSL::SSLContext (70543.0)

SSLSocket オブジェクトを生成する時に渡されたコンテクストを返します。

SSLSocket オブジェクトを生成する時に渡されたコンテクストを返します。

@see OpenSSL::SSL::SSLSocket.new

OpenSSL::SSL::SSLSocket#session -> OpenSSL::SSL::Session (70423.0)

利用している SSL セッションを OpenSSL::SSL::Session オブジェクトで返します。

利用している SSL セッションを OpenSSL::SSL::Session
オブジェクトで返します。

@see OpenSSL::SSL::SSLSocket#session=,
OpenSSL::SSL::SSLSocket#session_reused?

OpenSSL::SSL::SSLContext#key -> OpenSSL::PKey::PKey | nil (70036.0)

OpenSSL::SSL::SSLContext#cert で得られる自分自身を証明するための 証明書の公開鍵に対応する秘密鍵を返します。

OpenSSL::SSL::SSLContext#cert で得られる自分自身を証明するための
証明書の公開鍵に対応する秘密鍵を返します。

@see OpenSSL::SSL::SSLContext#key=

OpenSSL::SSL::SSLSocket#cert -> OpenSSL::X509::Certificate | nil (70030.0)

自分自身を証明する証明書を返します。

自分自身を証明する証明書を返します。

自分自身を証明する証明書を使わなかった場合は nil を返します。
OpenSSL::SSL::SSLSocket#connect や OpenSSL::SSL::SSLSocket#accept
で SSL/TLS ハンドシェイクを行う前にこのメソッドを呼んだ
場合も nil を返します。

@see OpenSSL::SSL::SSLContext#cert

絞り込み条件を変える

OpenSSL::SSL::SSLContext::DEFAULT_CERT_STORE -> OpenSSL::X509::Store (70018.0)

OpenSSL::SSL::SSLContext#set_params で信頼する CA 証明書 (ca_file, ca_path, cert_store) を一切指定しなかった場合に デフォルトで使われる証明書ストアです。

OpenSSL::SSL::SSLContext#set_params で信頼する CA 証明書
(ca_file, ca_path, cert_store) を一切指定しなかった場合に
デフォルトで使われる証明書ストアです。

OpenSSL::X509::Store#set_default_paths でシステムが提供する
証明書を利用するように設定されています。

OpenSSL::Netscape::SPKI#public_key -> OpenSSL::PKey::PKey (69940.0)

SPKI オブジェクトに設定された公開鍵を返します。

SPKI オブジェクトに設定された公開鍵を返します。

@raise OpenSSL::Netscape::SPKIError 公開鍵が設定されていない場合に発生します
@see OpenSSL::Netscape::SPKI#public_key=

OpenSSL::SSL::SSLContext#cert -> OpenSSL::X509::Certificate (69940.0)

自分自身を証明するための証明書を返します。

自分自身を証明するための証明書を返します。

デフォルトは nil (証明書なし)です。

@see OpenSSL::SSL::SSLContext#cert=

OpenSSL::SSL::SSLContext#cert_store -> OpenSSL::X509::Store | nil (69940.0)

接続相手の証明書の検証のために使う、信頼している CA 証明書を 含む証明書ストアを返します。

接続相手の証明書の検証のために使う、信頼している CA 証明書を
含む証明書ストアを返します。

デフォルトは nil です。

@see OpenSSL::SSL::SSLContext#cert_store=

OpenSSL::SSL::SSLContext#extra_chain_cert -> [OpenSSL::X509::Certificate] | nil (69940.0)

自分自身を証明する証明書からルート CA までの証明書のリストです。

自分自身を証明する証明書からルート CA までの証明書のリストです。

@see OpenSSL::SSL::SSLContext#extra_chain_cert=

絞り込み条件を変える

OpenSSL::SSL::SocketForwarder#setsockopt(level, optname, optval) -> 0 (69901.0)

ラップされているソケットのオプションを設定します。

ラップされているソケットのオプションを設定します。

BasicSocket#setsockopt と同様です。

@param level setsockopt(2) の level に相当する整数を指定します
@param optname setsockopt(2) の option_name に相当する整数を指定します
@param optval 設定される値を文字列で指定します。

@raise Errno::EXXX オプションの設定に失敗した場合発生します。

OpenSSL::BN#pretty_print(pp) (69655.0)

Kernel.#pp でオブジェクトの内容を出力するときに、内部で呼ばれるメソッドです。

Kernel.#pp でオブジェクトの内容を出力するときに、内部で呼ばれるメソッドです。

//emlist[][ruby]{
require 'pp'
require 'openssl'

pp 5.to_bn #=> #<OpenSSL::BN 5>
pp (-5).to_bn #=> #<OpenSSL::BN -5>
//}

@param pp PP クラスのインスタンスオブジェクト

OpenSSL::Netscape::SPKI#public_key=(pubkey) (69655.0)

SPKI オブジェクトに公開鍵を設定します。

SPKI オブジェクトに公開鍵を設定します。

@param pubkey 設定する公開鍵(OpenSSL::PKey::PKey オブジェクト)
@raise OpenSSL::Netscape::SPKIError 公開鍵の設定に失敗した場合に発生します
@see OpenSSL::Netscape::SPKI#public_key

OpenSSL::PKCS7#type=(type) (69601.0)

PKCS7 オブジェクトのタイプを Symbol オブジェクトで設定します。

PKCS7 オブジェクトのタイプを Symbol オブジェクトで設定します。

このメソッドは使わないでください。
このメソッドは PKCS#7 の低レベル API であり、正しく使うのは
難しいでしょう。

@param type 設定するタイプ(シンボル)

OpenSSL::SSL::SocketForwarder#getsockopt(level, optname) -> String (69601.0)

ラップされているソケットのオプションを設定します。

ラップされているソケットのオプションを設定します。

BasicSocket#getsockopt と同様です。

@param level getsockopt(2) の 第二引数のlevel に相当する整数を指定します
@param optname getsockopt(2) の 第三引数のoption_name に相当する整数を指定します

絞り込み条件を変える

OpenSSL::SSL::SSLContext#client_cert_cb -> Proc | nil (69433.0)

OpenSSL::SSL::SSLContext#cert= でクライアント証明書を セットしていなかった場合にサーバからクライアント証明書の要求が来たときに 呼びだされるコールバックオブジェクトを返します。

OpenSSL::SSL::SSLContext#cert= でクライアント証明書を
セットしていなかった場合にサーバからクライアント証明書の要求が来たときに
呼びだされるコールバックオブジェクトを返します。

デフォルトは nil (コールバックなし)です。
@see OpenSSL::SSL::SSLContext#client_cert_cb=

OpenSSL::SSL::OP_DONT_INSERT_EMPTY_FRAGMENTS -> Integer (69421.0)

SSL 通信での各種バグ回避コードを有効にするフラグです。

SSL 通信での各種バグ回避コードを有効にするフラグです。

OpenSSL::SSL::SSLContext#options= で利用します。

通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば

ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS

などとします。

OpenSSL::SSL::OP_MICROSOFT_SESS_ID_BUG -> Integer (69421.0)

SSL 通信での各種バグ回避コードを有効にするフラグです。

SSL 通信での各種バグ回避コードを有効にするフラグです。

OpenSSL::SSL::SSLContext#options= で利用します。

通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば

ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS

などとします。

OpenSSL::SSL::OP_NETSCAPE_CHALLENGE_BUG -> Integer (69421.0)

SSL 通信での各種バグ回避コードを有効にするフラグです。

SSL 通信での各種バグ回避コードを有効にするフラグです。

OpenSSL::SSL::SSLContext#options= で利用します。

通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば

ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS

などとします。

OpenSSL::SSL::OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG -> Integer (69421.0)

SSL 通信での各種バグ回避コードを有効にするフラグです。

SSL 通信での各種バグ回避コードを有効にするフラグです。

OpenSSL::SSL::SSLContext#options= で利用します。

通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば

ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS

などとします。

絞り込み条件を変える

OpenSSL::SSL::OP_TLS_BLOCK_PADDING_BUG -> Integer (69421.0)

SSL 通信での各種バグ回避コードを有効にするフラグです。

SSL 通信での各種バグ回避コードを有効にするフラグです。

OpenSSL::SSL::SSLContext#options= で利用します。

通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば

ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS

などとします。

OpenSSL::SSL::OP_TLS_D5_BUG -> Integer (69421.0)

SSL 通信での各種バグ回避コードを有効にするフラグです。

SSL 通信での各種バグ回避コードを有効にするフラグです。

OpenSSL::SSL::SSLContext#options= で利用します。

通常は OpenSSL::SSL::OP_ALL でこれらすべてを有効にします。
特定のフラグのみ無効にしたい場合は例えば

ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS

などとします。

OpenSSL::X509::PURPOSE_OCSP_HELPER -> Integer (69421.0)

OCSP関連でOpenSSLの内部的に利用されます。

OCSP関連でOpenSSLの内部的に利用されます。

OpenSSL::X509::Store#purpose= や
OpenSSL::X509::StoreContext#purpose= で設定し、
OpenSSL::X509::Store#verify や
OpenSSL::X509::StoreContext#verify で
確認します。

OpenSSL::SSL::SSLContext#servername_cb=(pr) (69409.0)

TLS の Server Name Indication(SNI) 拡張で クライアント側からホスト名が伝えられてきた場合に 呼びだされるコールバックを設定します。

TLS の Server Name Indication(SNI) 拡張で
クライアント側からホスト名が伝えられてきた場合に
呼びだされるコールバックを設定します。

このコールバックはハンドシェイク時に
クライアント側がサーバのホスト名を伝えてきた場合に
サーバ側で呼びだされます。このコールバック内でサーバ側に提示する証明書を
調整したりします。

Proc や Method をコールバックオブジェクトとして
渡します。コールバックに渡される引数は以下のように
proc{|sslsocket, hostname| ... }
2つで、1つ目は認証および暗号化通信に使われる OpenSSL...

OpenSSL::SSL::SSLContext#verify_callback=(proc) (69409.0)

検証をフィルタするコールバックを設定します。

検証をフィルタするコールバックを設定します。

OpenSSL::X509::Store#verify_callback= と同じ働きをします。

コールバックには Proc や Method を渡します。

渡されたコールバックオブジェクトは証明書チェインの検証時に
チェインに含まれる各証明書の署名を検証するたびに呼びだされます。
そのときに渡される引数は2つで、1つめは検証が成功したかの真偽値、
2つめは検証後の状態を保存した
OpenSSL::X509::StoreContext オブジェクトです。
このコールバックには2つの役割があります。1つ目はコンテキストオブジェクト
を調べること...

絞り込み条件を変える

OpenSSL::SSL::OP_PKCS1_CHECK_1 -> Integer (69397.0)

@todo OpenSSL::SSL::SSLContext#options= で利用します。

@todo
OpenSSL::SSL::SSLContext#options= で利用します。

OpenSSL::SSL::OP_PKCS1_CHECK_2 -> Integer (69397.0)

@todo OpenSSL::SSL::SSLContext#options= で利用します。

@todo
OpenSSL::SSL::SSLContext#options= で利用します。

OpenSSL::SSL::OP_SINGLE_ECDH_USE -> Integer (69397.0)

@todo OpenSSL::SSL::SSLContext#options= で利用します。

@todo
OpenSSL::SSL::SSLContext#options= で利用します。

OpenSSL::SSL::OP_ALL -> Integer (69385.0)

SSL 通信で各種のバグ回避コードをすべて有効にするフラグです。

SSL 通信で各種のバグ回避コードをすべて有効にするフラグです。

OpenSSL::SSL::SSLContext#options= で利用します。

OpenSSL::SSL::OP_NO_COMPRESSION (69385.0)

OpenSSL による通信の圧縮を禁止します。

OpenSSL による通信の圧縮を禁止します。

OpenSSL::SSL::SSLContext#options= で利用します。

@see https://bugs.ruby-lang.org/issues/5183

絞り込み条件を変える

OpenSSL::SSL::SSLContext#session_cache_mode=(mode) (69361.0)

セッションキャッシュのモードを指定します。

セッションキャッシュのモードを指定します。

以下の定数のORを引数として渡します。
* OpenSSL::SSL::SSLContext::SESSION_CACHE_OFF
* OpenSSL::SSL::SSLContext::SESSION_CACHE_CLIENT
* OpenSSL::SSL::SSLContext::SESSION_CACHE_SERVER
* OpenSSL::SSL::SSLContext::SESSION_CACHE_BOTH
* OpenSSL::SSL::SSLContext::SESSION_CACHE_NO_AUTO_CLEAR
...

OpenSSL::SSL::SSLContext#verify_callback -> Proc | nil (69355.0)

オブジェクトに設定されている検証をフィルタするコールバックを 返します。

オブジェクトに設定されている検証をフィルタするコールバックを
返します。

デフォルトのコールバックが設定されている場合には nil を返します。

@see OpenSSL::X509::Store#verify_callback,
OpenSSL::SSL::SSLContext#verify_callback=

OpenSSL::X509::Name::DEFAULT_OBJECT_TYPE -> Integer (69355.0)

属性値のデフォルトの ASN.1 の型です。

属性値のデフォルトの ASN.1 の型です。

OpenSSL::X509::Name.parse や OpenSSL::X509::Name.new で
template に指定されなかった属性はこの型であると仮定して処理されます。

OpenSSL::ASN1::UTF8STRING を返します。

OpenSSL::OCSP::REVOKED_STATUS_CESSATIONOFOPERATION -> Integer (69349.0)

OpenSSL::OCSP::BasicResponse#status の失効理由コードで、 証明書の運用を止めたことを意味します。

OpenSSL::OCSP::BasicResponse#status の失効理由コードで、
証明書の運用を止めたことを意味します。

詳しくは 3280 や X.509 を参照してください。

OpenSSL::OCSP::REVOKED_STATUS_SUPERSEDED -> Integer (69349.0)

OpenSSL::OCSP::BasicResponse#status の失効理由コードで、 証明書が破棄されたことを意味します。

OpenSSL::OCSP::BasicResponse#status の失効理由コードで、
証明書が破棄されたことを意味します。

詳しくは 3280 や X.509 を参照してください。

絞り込み条件を変える

<< 1 2 3 ... > >>