Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > opensslライブラリ > OpenSSL::OCSP::Requestクラス
クラスの継承リスト: OpenSSL::OCSP::Request < Object < Kernel < BasicObject
OCSP リクエストを表すクラスです。
問合せたい証明書を OpenSSL::OCSP::CertificateId オブジェクトの 形で複数持つことができます。
new -> OpenSSL::OCSP::Request
[permalink][rdoc]new(der) -> OpenSSL::OCSP::Request
Request オブジェクトを生成します。 引数なしの場合は、中身が空のオブジェクトを生成します。 文字列を渡した場合は der 形式であると見なして読み込みます。
add_certid(cid) -> self
[permalink][rdoc]Request オブジェクトに問い合わせ対象の証明書情報を追加します。
証明書情報は OpenSSL::OCSP::CertificateId の形で渡す必要があります。
[SEE_ALSO] OpenSSL::OCSP::Request#certid
add_nonce(nonce = nil) -> self
[permalink][rdoc]Request オブジェクトに nonce を追加します。
nonce とは、リプレイ攻撃を防止するために設定する乱数です。
certid -> [OpenSSL::OCSP::CertificateId]
[permalink][rdoc]Request オブジェクトが保持している問い合わせ対象の証明書の情報を 配列で返します。
[SEE_ALSO] OpenSSL::OCSP::Request#add_certid
check_nonce(basic_resp) -> Integer
[permalink][rdoc]自身の nonce とレスポンスの nonce が整合しているか チェックします。
-1 から 3 までの整数を返します。それぞれの意味は以下の通りです。 * -1 自身にしか nonce が設定されていない * 0 nonce が自身とレスポンスの両方にあるが等しくない * 1 nonce が自身とレスポンスの両方にあり等しい * 2 nonce が自身とレスポンスのどちらにもない * 3 nonce がレスポンスにしか設定されていない
0 は明らかに不正なので、これは必ずチェックする必要があります。 1 は nonce が正しいということを意味します。 それ以外は、場合(サーバの実装など) によって不正であったりそうでなかったりしますので、適切にチェック する必要があります。
sign(signer_cert, signer_key, certs=nil, flags=nil) -> self
[permalink][rdoc]Request オブジェクトに署名をします。
この署名はリクエスタが自分自身を証明するために署名します。 OSCP レスポンダはこの署名を確認します。 Request に対する署名は必須ではありません。
certs に証明書の配列を渡すことで、この署名を検証するために 必要となる別の証明書を付加することができます。
to_der -> String
[permalink][rdoc]Request オブジェクトを DER 形式の文字列に変換します。
verify(certs, store, flags=0) -> bool
[permalink][rdoc]Request オブジェクトの署名を検証します。
検証に成功した場合は真を返します。
flags には以下の値の OR を取ったものを渡します。
TRUSTOTHER を有効にすると certs で指定した証明書を検証せずに信頼します。