Ruby 1.8.7 リファレンスマニュアル > ライブラリ一覧 > opensslライブラリ > OpenSSL::X509::CRLクラス

class OpenSSL::X509::CRL

クラスの継承リスト: OpenSSL::X509::CRL < Object < Kernel

要約

CRL(証明書失効リスト) クラス。

CRL とは、危殆化した等なんらかの理由で失効した証明書のリストです。 通常 CA によって発行されるものです。 OpenSSL::X509::Store に組込むことで失効した証明書の検証を 失敗させることができます。

通常 CRL の信頼性を確認するためには CRL になされた 署名を検証する必要があります。

目次

特異メソッド
new
インスタンスメソッド
add_extension add_revoked extensions extensions= issuer issuer= last_update last_update= next_update next_update= revoked revoked= sign signature_algorithm to_der to_pem to_s to_text verify version version=

特異メソッド

new -> OpenSSL::X509::CRL[permalink][rdoc]
new(obj) -> OpenSSL::X509::CRL

CRL(証明書失効リスト)オブジェクトを生成します。

新しい OpenSSL::X509::Request オブジェクトを生成します。

引数なしの場合は空の OpenSSL::X509::Request オブジェクトを生成します。

引数が文字列の場合は、PEM 形式もしくは DER 形式であると みなしてオブジェクトを生成します。

引数が IO オブジェクトである場合は、そのファイルの中身から オブジェクトを生成します。

引数が OpenSSL::X509::CRL である場合には、その内容を コピーしたオブジェクトを生成します。

引数が to_der メソッドを持つ場合は、そのメソッドによって DER 形式の文字列に変換してからオブジェクトを生成します。

[PARAM] obj:
CRL のデータ
[EXCEPTION] OpenSSL::X509::CRLError:
オブジェクトの生成に失敗した場合に発生します

インスタンスメソッド

add_extension(ex) -> OpenSSL::X509::Extension[permalink][rdoc]

拡張領域に ex を追加します。

追加するデータは OpenSSL::X509::Extension のオブジェクトを渡します。

ex を返します。

[PARAM] ex:
追加するデータ
[EXCEPTION] OpenSSL::X509::CRLError:
追加に失敗した場合に発生します
add_revoked(rev) -> OpenSSL::X509::Revoked[permalink][rdoc]

失効証明書リストに新たな要素を加えます。

rev は失効した証明書を表す OpenSSL::X509::Revoked オブジェクトです。

帰り値は rev です。

[PARAM] rev:
追加する失効した証明書を表すオブジェクト
[EXCEPTION] OpenSSL::X509::CRLError:
追加に失敗した場合に発生します
extensions -> [OpenSSL::X509::Extension][permalink][rdoc]

CRL が持っている拡張領域のデータを配列で返します。

extensions=(extensions)[permalink][rdoc]

CRL の拡張領域を extensions で更新します。

extensions には OpenSSL::X509::Extension の配列を渡します。

更新前の拡張領域のデータは破棄されます。

[PARAM] extensions:
拡張領域のデータ
[EXCEPTION] OpenSSL::X509::CRLError:
更新に失敗した場合に発生します
issuer -> OpenSSL::X509::Name[permalink][rdoc]

CRL の発行者を返します。

issuer=(issuer)[permalink][rdoc]

CRL の発行者を設定します。

[PARAM] issuer:
発行者の OpenSSL::X509::Name オブジェクト
[EXCEPTION] OpenSSL::X509::CRLError:
設定に失敗した場合に発生します

[SEE_ALSO] OpenSSL::X509::CRL#issuer

last_update -> Time[permalink][rdoc]

CRL が最後に更新された日時を Time オブジェクトで返します。

last_update=(time)[permalink][rdoc]

CRL が最後に更新された日時を Time オブジェクトで設定します。

[PARAM] time:
最終更新日時
[EXCEPTION] OpenSSL::X509::CRLError:
設定に失敗した場合に発生します

[SEE_ALSO] OpenSSL::X509::CRL#last_update

next_update -> Time[permalink][rdoc]

CRL の次回更新日時を Time オブジェクトで返します。

next_update=(time)[permalink][rdoc]

CRL の次回更新日時を Time オブジェクトで設定します。

[PARAM] time:
最終更新日時
[EXCEPTION] OpenSSL::X509::CRLError:
設定に失敗した場合に発生します

[SEE_ALSO] OpenSSL::X509::CRL#next_update

revoked -> [OpenSSL::X509::Revoked][permalink][rdoc]

自身が持っている失効した証明書の配列を返します。

revoked=(revs)[permalink][rdoc]

失効証明書リストを更新します。

このメソッドを呼びだす前のリストは破棄されます。 revs には失効した証明書を OpenSSL::X509::Revoked の配列で渡します。

[PARAM] revs:
設定する失効した証明書の配列
[EXCEPTION] OpenSSL::X509::CRLError:
設定に失敗した場合に発生します
sign(pkey, digest) -> self[permalink][rdoc]

CRL に秘密鍵で署名します。

[PARAM] pkey:
秘密鍵(OpenSSL::PKey::PKey オブジェクト)
[PARAM] digest:
ハッシュアルゴリズム
[EXCEPTION] OpenSSL::X509::CRLError:
署名に失敗した場合に発生します
signature_algorithm -> String[permalink][rdoc]

署名に使ったアルゴリズム名を文字列で返します。

[EXCEPTION] OpenSSL::X509::CRLError:
名前の取得に失敗した場合に発生します
to_der -> String[permalink][rdoc]

DER 形式に変換します。

[EXCEPTION] OpenSSL::X509::CRLError:
変換に失敗した場合に発生します
to_pem -> String[permalink][rdoc]
to_s -> String

PEM 形式に変換します。

[EXCEPTION] OpenSSL::X509::CRLError:
変換に失敗した場合に発生します
to_text -> String[permalink][rdoc]

人間が読める形式に変換します。

[EXCEPTION] OpenSSL::X509::CRLError:
変換に失敗した場合に発生します
verify(key) -> bool[permalink][rdoc]

発行者の公開鍵で CRL に記載されている署名を検証します。

検証に成功した場合は true を返します。

[PARAM] key:
公開鍵(OpenSSL::PKey::PKey オブジェクト)
[EXCEPTION] OpenSSL::X509::CRLError:
検証時にエラーが生じた場合に発生します
version -> Integer[permalink][rdoc]

その CRL が準拠している規格のバージョンを返します。

X.509 v2 CRL であれば 1 を返します。

[SEE_ALSO] OpenSSL::X509::CRL#version=

version=(version)[permalink][rdoc]

その CRL が準拠している規格のバージョンを設定します。

X.509 v2 CRL であれば 1 を渡します。

[PARAM] version:
設定するバージョンの整数
[EXCEPTION] OpenSSL::X509::CRLError:
設定に失敗した場合に発生します

[SEE_ALSO] OpenSSL::X509::CRL#version