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

class OpenSSL::X509::Certificate

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

要約

X509 証明書クラス

目次

特異メソッド
new
インスタンスメソッド
add_extension check_private_key extensions extensions= issuer issuer= not_after not_after= not_before not_before= public_key public_key= serial serial= sign signature_algorithm subject subject= to_der to_pem to_s to_text verify version version=

特異メソッド

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

証明書オブジェクトを生成します。

引数を与えなかった場合には、空の証明書を返します。

obj が String である場合には、それを PEM 形式もしくは DER 形式の証明書データの文字列であると見なして その内容から証明書オブジェクトを生成します。

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

obj が OpenSSL::X509::Certificate オブジェクトである場合には、 そのオブジェクトの内容を複製します。

obj が to_der メソッドを持つ場合には、そのメソッドによって DER 形式のバイト列に変換し、証明書オブジェクトを生成します。

[PARAM] obj:
証明書のデータ
[EXCEPTION] OpenSSL::X509::CertificateError:
証明書のフォーマットが不正であるなど、読み込みに失敗した場合に発生します

インスタンスメソッド

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

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

[RETURN]
追加した拡張を返します
[PARAM] ext:
追加する拡張(OpenSSL::X509::Extension オブジェクト)
[EXCEPTION] OpenSSL::X509::CertificateError:
設定に失敗した場合に発生します
check_private_key(private_key) -> bool[permalink][rdoc]

与えられた秘密鍵が証明書に記載されている subject の公開鍵と対応するものかを確かめます。

確認に成功した場合に真を返します。

[PARAM] private_key:
確認用の秘密鍵
extensions -> [OpenSSL::X509::Extension][permalink][rdoc]

証明書の拡張領域の内容を返します。

extensions=(extensions)[permalink][rdoc]

証明書の拡張領域の内容を設定します。

[PARAM] extensions:
設定する拡張(OpenSSL::X509::Extension オブジェクト)の配列
[EXCEPTION] OpenSSL::X509::CertificateError:
設定に失敗した場合に発生します
issuer -> OpenSSL::X509::Name[permalink][rdoc]

証明書の発行者の名前を返します。

issuer=(name)[permalink][rdoc]

証明書の発行者の名前を設定します。

[PARAM] name:
発行者の名前の OpenSSL::X509::Name オブジェクト
[EXCEPTION] OpenSSL::X509::CertificateError:
設定に失敗した場合に発生します
not_after -> Time[permalink][rdoc]

証明書が無効になる時刻を返します。

not_after=(time)[permalink][rdoc]

証明書が無効になる時刻を設定します。

[PARAM] time:
証明書の終了時刻
[EXCEPTION] OpenSSL::X509::CertificateError:
設定に失敗した場合に発生します
not_before -> Time[permalink][rdoc]

証明書が有効になる時刻を返します。

not_before=(time)[permalink][rdoc]

証明書が有効になる時刻を設定します。

[PARAM] time:
証明書の開始時刻
[EXCEPTION] OpenSSL::X509::CertificateError:
設定に失敗した場合に発生します
public_key -> OpenSSL::PKey::PKey[permalink][rdoc]

証明書に記載された公開鍵を返します。

鍵の種類によって以下のいずれかのクラスのインスタンスを返します。

[EXCEPTION] OpenSSL::X509::CertificateError:
鍵の取得に失敗した場合に発生します
[EXCEPTION] OpenSSL::PKey::PKeyError:
サポートしていない種類の鍵である場合に発生します
public_key=(pkey)[permalink][rdoc]

証明書に公開鍵を設定します。

[PARAM] pkey:
公開鍵(OpenSSL::PKey::PKeyのサブクラスのインスタンス)
[EXCEPTION] OpenSSL::X509::CertificateError:
鍵の設定に失敗した場合に発生します
serial -> Integer[permalink][rdoc]

発行者 (CA) が証明書に付ける識別番号を返します。

[SEE_ALSO] OpenSSL::X509::Certificate#serial=

serial=(serial)[permalink][rdoc]

証明書の識別番号を設定します。

[PARAM] serial:
識別番号

[SEE_ALSO] OpenSSL::X509::Certificate#serial

sign(pkey, digest) -> self[permalink][rdoc]

証明書に署名します。

DSA で署名する場合は digest は "dss1" でなければなりません。

[PARAM] pkey:
発行者(issuer)の秘密鍵
[PARAM] digest:
ハッシュ関数を表す文字列
signature_algorithm -> String[permalink][rdoc]

発行者 (CA) が証明書に署名するのに使ったアルゴリズムです。

subject -> OpenSSL::X509::Name[permalink][rdoc]

証明書の所有者の名前を返します。

subject=(name)[permalink][rdoc]

証明書の所有者の名前を設定します。

[PARAM] name:
所有者の名前の OpenSSL::X509::Name オブジェクト
[EXCEPTION] OpenSSL::X509::CertificateError:
設定に失敗した場合に発生します
to_der -> String[permalink][rdoc]

DER 形式のバイト列を返します。

to_pem -> String[permalink][rdoc]
to_s -> String

PEM 形式の文字列を返します。

to_text -> String[permalink][rdoc]

人間が読める形式の文字列を返します。

verify(key) -> bool[permalink][rdoc]

証明書の発行者の公開鍵で署名を検証します。

検証に成功した、すなわち self が key で署名されたことが 確認された場合に真を返します。

[PARAM] key:
検証に利用する発行者の公開鍵
version -> Integer[permalink][rdoc]

X509 証明書の version です。 v1の場合は 0 、v3 の場合は 2 となります。

version=(version)[permalink][rdoc]

証明書のバージョンを設定します。

[PARAM] version:
バージョン(0以上の整数)
[EXCEPTION] OpenSSL::X509::CertificateError:
設定に失敗した場合に発生します