るりまサーチ (Ruby 2.3.0)

最速Rubyリファレンスマニュアル検索!
37件ヒット [1-37件を表示] (0.295秒)
トップページ > バージョン:2.3.0[x] > 種類:インスタンスメソッド[x] > クエリ:OpenSSL::SSL::SSLSocket[x]

別のキーワード

  1. new openssl::bn
  2. new openssl::asn1::asn1data
  3. new openssl::pkey::ec::group
  4. new openssl::x509::certificate
  5. new openssl::cipher.ciphers

検索結果

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

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

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

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

@see OpenSSL::SSL::SSLSocket#peer_cert_chain

OpenSSL::SSL::SSLSocket#peer_cert_chain -> [OpenSSL::X509::Certificate] | nil (63058.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#session=(sess) (63058.0)

ハンドシェイクで再利用する SSL セッションを 設定します。

ハンドシェイクで再利用する SSL セッションを
設定します。

このメソッドはクライアント側でのみ有用です。
セッションを再利用する場合は、
OpenSSL::SSL::SSLSocket#connect を呼ぶ前に
このメソッドでセッションオブジェクト
(OpenSSL::SSL::Session のインスタンス)
を設定します。

サーバ側の場合 OpenSSL::SSL::SSLContext がキャッシュの保持と
管理を行います。

@param sess 設定するセッション
@see OpenSSL::SSL::SSLSocket#session,
OpenSSL::SS...

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

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

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

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

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

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

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

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

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

絞り込み条件を変える

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

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

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

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

@see OpenSSL::SSL::SSLContext#cert

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

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

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

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

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

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

OpenSSL::SSL::SSLSocket#connect -> self (63040.0)

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

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


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

OpenSSL::SSL::SSLSocket#connect_nonblock -> self (63040.0)

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

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

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

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

OpenSSL::SSL::SSLSocket#hostname -> String | nil (63040.0)

TLS の Server Name Indication 拡張で利用するサーバのホスト名を返します。

TLS の Server Name Indication 拡張で利用するサーバのホスト名を返します。

OpenSSL::SSL::SSLSocket#hostname= で設定した値がそのまま返されます。

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

@see OpenSSL::SSL::SSLSocket#hostname=

絞り込み条件を変える

OpenSSL::SSL::SSLSocket#hostname=(hostname) (63040.0)

TLS の Server Name Indication(SNI) 拡張で利用するサーバのホスト名を設定します。

TLS の Server Name Indication(SNI) 拡張で利用するサーバのホスト名を設定します。

Server Name Indication については 3546 を参照してください。

このメソッドはハンドシェイク時にクライアント側がサーバ側に
サーバのホスト名を伝えるために用います。そのため、
クライアント側が OpenSSL::SSL::SSLSocket#connect を呼ぶ前に
このメソッドでホスト名を指定する必要があります。

hostname に nil を渡すと SNI 拡張を利用しません。

サーバ側については OpenSSL::SSL::SSLCont...

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

接続後検証を行います。

接続後検証を行います。

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

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

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

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

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

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

OpenSSL::SSL::SSLSocket#session_reused? -> bool (63040.0)

利用している SSL セッションが再利用されたものである 場合に真を返します。

利用している SSL セッションが再利用されたものである
場合に真を返します。

@see OpenSSL::SSL::Session,
OpenSSL::SSL::SSLSocket#session,
OpenSSL::SSL::SSLSocket#session=

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

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

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

@see OpenSSL::SSL::SSLSocket.new

絞り込み条件を変える

OpenSSL::SSL::SSLSocket#io -> IO (63022.0)

SSLSocket オブジェクトを生成する時に渡されたソケットを返します。

SSLSocket オブジェクトを生成する時に渡されたソケットを返します。

@see OpenSSL::SSL::SSLSocket.new

OpenSSL::SSL::SSLSocket#sysclose -> nil (63022.0)

接続を閉じます。相手に'close notify'を送ります。

接続を閉じます。相手に'close notify'を送ります。

このメソッドは openssl ライブラリ内で管理しているバッファを
フラッシュせずに接続を閉じます。そのため、通常は
これではなく OpenSSL::Buffering#close を呼ぶべきです。

OpenSSL::SSL::SSLSocket#sync_close が真である場合は
このメソッドを呼びだした時点で自身が保持しているソケット
を同時に閉じます。

OpenSSL::SSL::SSLSocket#to_io -> IO (63022.0)

SSLSocket オブジェクトを生成する時に渡されたソケットを返します。

SSLSocket オブジェクトを生成する時に渡されたソケットを返します。

@see OpenSSL::SSL::SSLSocket.new

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

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

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

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

OpenSSL::SSL::SSLSocket#state -> String (63004.0)

現在の状態をアルファベット 6 文字の文字列で返します。

現在の状態をアルファベット 6 文字の文字列で返します。

絞り込み条件を変える

OpenSSL::SSL::SSLSocket#sync_close -> bool (63004.0)

SSLSocket を close するときにラップしているソケットも close するかどうかを 返します。

SSLSocket を close するときにラップしているソケットも close するかどうかを
返します。

true でソケットも close します。

OpenSSL::SSL::SSLSocket#sync_close=(bool) (63004.0)

SSLSocket を close するときにラップしているソケットも close するかどうかを 設定します。

SSLSocket を close するときにラップしているソケットも close するかどうかを
設定します。

true でソケットも close するようになります。

@param bool 設定する真偽値

OpenSSL::SSL::SSLSocket#sysread(length, buf=nil) -> String (63004.0)

データをバッファを経由せずに暗号化通信路から読み込み、 読み込んだデータを文字列で返します。

データをバッファを経由せずに暗号化通信路から読み込み、
読み込んだデータを文字列で返します。

基本的にはこのメソッドは使わず、OpenSSL::Buffering の
メソッドを使ってデータを読み込むべきです。

length で読み込むバイト数を指定します。

bufに文字列を指定するとその文字列のメモリ領域にデータを直接書き込み、
その String オブジェクトを返します。

IO#sysread と同様です。

@param length 読み込むバイト数を指定します
@param buf データを書き込むバッファ
@raise EOFError 入力が終端に逹した場合に発生します
...

OpenSSL::SSL::SSLSocket#syswrite(string) -> Integer (63004.0)

データをバッファを経由せずに暗号化通信路に書き込みます。

データをバッファを経由せずに暗号化通信路に書き込みます。

書き込んだバイト数を整数で返します。

基本的にはこのメソッドは使わず、OpenSSL::Buffering の
メソッドを使ってデータを書き込むべきです。

IO#syswrite と同様です。

@param string 書き込むデータ文字列
@raise OpenSSL::SSL::SSLError 書き込みに失敗した場合に発生します

OpenSSL::SSL::SSLSocket#verify_result -> Integer (63004.0)

検証結果のエラーコードを整数値で返します。

検証結果のエラーコードを整数値で返します。

エラーコードの整数値は OpenSSL::X509 に定数が定義されています。
詳しくは c:OpenSSL::X509#verify_error を見てください。
検証に成功した場合は OpenSSL::X509::V_OK を返します。

絞り込み条件を変える

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

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

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

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

Net::HTTP#peer_cert -> OpenSSL::X509::Certificate | nil (22.0)

サーバの証明書を返します。

サーバの証明書を返します。

SSL/TLS が有効でなかったり、接続前である場合には nil
を返します。

@see OpenSSL::SSL::SSLSocket#peer_cert

OpenSSL::Buffering#sync=(sync) (22.0)

出力の同期モードを設定します。

出力の同期モードを設定します。

true に設定すると同期モードになり、
OpenSSL::Buffering#write_nonblock と
OpenSSL::SSL::SSLSocket#syswrite を除くすべての書き込み
(OpenSSL::Buffering#write, OpenSSL::Buffering#print など)
はバッファリングされずに出力されます。

false に設定すると書き込みはバッファリングされます。

@param sync 設定するモード(真偽値)
@see OpenSSL::Buffering#sync

OpenSSL::SSL::SSLContext#client_cert_cb=(cb) (22.0)

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

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

コールバックに渡される引数は以下のように
proc{|sslsocket| ... }
1つで、利用している OpenSSL::SSL::SSLSocket
オブジェクトが渡されます。そのオブジェクトから必要な証明書を見つけるのに
必要な情報を取得します。
コールバックはクライアント証明書(OpenSSL::X509::Certificate)
とその秘密鍵(OpenSSL::P...

OpenSSL::SSL::SSLContext#renegotiation_cb=(cb) (22.0)

@todo

@todo

ハンドシェイク開始時に呼び出されるコールバックを設定します。

コールバックには OpenSSL::SSL::SSLSocket オブジェクトが
渡されます。

このコールバック内で何らかの例外が生じた場合には
以降のSSLの処理を停止します。

再ネゴシエーションのたびにこのコールバックが呼び出されるため、
何らかの理由で再ネゴシエーションを禁止したい場合などに利用できます。

nil を渡すとコールバックは無効になります。


以下の例は再ネゴシエーションを一切禁止します。
num_handshakes = 0
ctx.renegotiation_cb = lambd...

絞り込み条件を変える

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

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

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

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

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

OpenSSL::SSL::SSLContext#session_get_cb=(cb) (22.0)

セッションキャッシュを探索し、内部のキャッシュテーブルには 見付からなかった場合に呼び出されるコールバックを設定します。

セッションキャッシュを探索し、内部のキャッシュテーブルには
見付からなかった場合に呼び出されるコールバックを設定します。

コールバックオブジェクトを call するときの引数は
[ 接続オブジェクト(OpenSSL::SSL::SSLSocket), セッションID(文字列) ]
という配列です。このコールバックの返り値が
OpenSSL::SSL::Session オブジェクトならば、
それをキャッシュ値として利用します。それ以外を返したならば、
キャッシュは見つからなかったものとして取り扱われます。

セッションキャッシュについて詳しくは OpenSSL::SSL::Session ...

OpenSSL::SSL::SSLContext#session_id_context=(id_context) (22.0)

セッション ID コンテキストを文字列で設定します。

セッション ID コンテキストを文字列で設定します。

セッション ID コンテキストは、セッションをグループ化するための
識別子で、セッション ID コンテキストとセッション ID の両方が
一致する場合に同一のセッションであると判別されます。
この OpenSSL::SSL::SSLContext オブジェクトで
生成されたコネクション(OpenSSL::SSL::SSLSocket)に
関連付けられたセッションはセッション ID コンテキスト
を共有します。

セッション ID コンテキストはセッションのグループを
識別するための識別子であり、一方セッション ID は各セッションを
識別...

OpenSSL::SSL::SSLContext#session_new_cb=(cb) (22.0)

新たなセッションが作られたときに呼び出されるコールバックを 指定します。

新たなセッションが作られたときに呼び出されるコールバックを
指定します。

コールバックオブジェクトを call するときの引数は
[ 接続オブジェクト(OpenSSL::SSL::SSLSocket), 新たなセッション(OpenSSL::SSL::Session)]
という配列です。

セッションキャッシュについて詳しくは OpenSSL::SSL::Session を
見てください。

@param cb コールバックオブジェクト(Proc もしくは Method)
@see OpenSSL::SSL::SSLContext#session_new_cb

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

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

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

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

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

絞り込み条件を変える

OpenSSL::SSL::SSLServer#start_immediately=(bool) (22.0)

OpenSSL::SSL::SSLServer#accept で accept したらすぐに TLS/SSL ハンドシェイクを実行するかどうかを設定します。

OpenSSL::SSL::SSLServer#accept で
accept したらすぐに TLS/SSL ハンドシェイクを実行するかどうかを設定します。

これを真に設定した場合は、OpenSSL::SSL::SSLServer#accept で
接続したソケットに対し OpenSSL::SSL::SSLSocket#accept を
呼び、ハンドシェイクを実行します。

デフォルトでは true です。

@param bool 設定する真偽値。
@see OpenSSL::SSL::SSLServer#start_immediately

WEBrick::HTTPRequest#cipher -> Array (22.0)

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

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

@see OpenSSL::SSL::SSLSocket#cipher