Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > opensslライブラリ > OpenSSL::X509モジュール
クラスの継承リスト: OpenSSL::X509
OpenSSL の X509 証明書、CRL(証明書失効リスト)、 CSR(証明書署名要求)、証明書ストアなどに関するモジュールです。
以下の定数は OpenSSL::X509::Store#error, OpenSSL::X509::StoreContext#error, OpenSSL::SSL::SSLSocket#verify_result の返り値として用いられます。 V_OK はエラーなしを意味しています。
DEFAULT_CERT_AREA -> String
[permalink][rdoc]証明書や設定ファイルなど OpenSSL 関連のデータを 置いてあるディレクトリの名前を返します。
DEFAULT_CERT_DIR -> String
[permalink][rdoc]デフォルトの CA 証明書ディレクトリ名です。
OpenSSL::X509::Store#set_default_paths で読み込まれます。
OpenSSL::X509::DEFAULT_CERT_DIR_ENV で得られる環境変数よって 上書き可能です。
証明書ディレクトリに含まれる証明書のファイル名は ハッシュ名でなければなりません。
DEFAULT_CERT_DIR_ENV -> String
[permalink][rdoc]CA 証明書ディレクトリ名を指定する環境変数名です。
通常、"SSL_CERT_DIR" という文字列です。 この環境変数を設定しておくことによって OpenSSL::X509::Store#set_default_paths で読み込まれる 証明書ディレクトリを変更できます。
証明書ディレクトリに含まれる証明書のファイル名は ハッシュ名でなければなりません。
[SEE_ALSO] OpenSSL::X509::DEFAULT_CERT_DIR
DEFAULT_CERT_FILE -> String
[permalink][rdoc]デフォルトの CA 証明書ファイル名です。
OpenSSL::X509::Store#set_default_paths で読み込まれます。
OpenSSL::X509::DEFAULT_CERT_FILE_ENV で得られる環境変数よって 上書き可能です。
DEFAULT_CERT_FILE_ENV -> String
[permalink][rdoc]CA 証明書ファイル名を指定する環境変数名です。
通常、"SSL_CERT_FILE" という文字列です。 この環境変数を設定しておくことによって OpenSSL::X509::Store#set_default_paths で読み込まれる 証明書ファイル名を変更できます。
[SEE_ALSO] OpenSSL::X509::DEFAULT_CERT_FILE
DEFAULT_PRIVATE_DIR -> String
[permalink][rdoc]デフォルトの秘密鍵ディレクトリ名です。
PURPOSE_ANY -> Integer
[permalink][rdoc]証明書の目的を確認しないことを意味します。
OpenSSL::X509::Store#purpose= や OpenSSL::X509::StoreContext#purpose= で設定します。
PURPOSE_CRL_SIGN -> Integer
[permalink][rdoc]証明書が CRL の署名をするのに利用可能かを チェックすることを意味します。
OpenSSL::X509::Store#purpose= や OpenSSL::X509::StoreContext#purpose= で設定し、 OpenSSL::X509::Store#verify や OpenSSL::X509::StoreContext#verify で このことを確認します。
PURPOSE_NS_SSL_SERVER -> Integer
[permalink][rdoc]証明書が Netscape SSL server の証明書として使えるか チェックすることを意味します。
OpenSSL::X509::Store#purpose= や OpenSSL::X509::StoreContext#purpose= で設定し、 OpenSSL::X509::Store#verify や OpenSSL::X509::StoreContext#verify で このことを確認します。
PURPOSE_OCSP_HELPER -> Integer
[permalink][rdoc]OCSP関連でOpenSSLの内部的に利用されます。
OpenSSL::X509::Store#purpose= や OpenSSL::X509::StoreContext#purpose= で設定し、 OpenSSL::X509::Store#verify や OpenSSL::X509::StoreContext#verify で 確認します。
PURPOSE_SMIME_ENCRYPT -> Integer
[permalink][rdoc]証明書が S/MIME の暗号化をするのに使えるか チェックすることを意味します。
OpenSSL::X509::Store#purpose= や OpenSSL::X509::StoreContext#purpose= で設定し、 OpenSSL::X509::Store#verify や OpenSSL::X509::StoreContext#verify で このことを確認します。
PURPOSE_SMIME_SIGN -> Integer
[permalink][rdoc]証明書が S/MIME の署名をするのに使えるか チェックすることを意味します。
OpenSSL::X509::Store#purpose= や OpenSSL::X509::StoreContext#purpose= で設定し、 OpenSSL::X509::Store#verify や OpenSSL::X509::StoreContext#verify で このことを確認します。
PURPOSE_SSL_CLIENT -> Integer
[permalink][rdoc]証明書が SSL のクライアントサイドの証明書として使えるか チェックすることを意味します。
OpenSSL::X509::Store#purpose= や OpenSSL::X509::StoreContext#purpose= で設定し、 OpenSSL::X509::Store#verify や OpenSSL::X509::StoreContext#verify で このことを確認します。
PURPOSE_SSL_SERVER -> Integer
[permalink][rdoc]証明書が SSL のサーバサイドの証明書として使えるか。 チェックすることを意味します。
OpenSSL::X509::Store#purpose= や OpenSSL::X509::StoreContext#purpose= で設定し、 OpenSSL::X509::Store#verify や OpenSSL::X509::StoreContext#verify で このことを確認します。
TRUST_COMPAT -> Integer
[permalink][rdoc]ルート CA 証明書が自分自身の秘密鍵で署名されています。
TRUST_EMAIL -> Integer
[permalink][rdoc][TODO]
TRUST_OBJECT_SIGN -> Integer
[permalink][rdoc][TODO]
TRUST_OCSP_REQUEST -> Integer
[permalink][rdoc][TODO]
TRUST_OCSP_SIGN -> Integer
[permalink][rdoc][TODO]
TRUST_SSL_CLIENT -> Integer
[permalink][rdoc][TODO]
TRUST_SSL_SERVER -> Integer
[permalink][rdoc][TODO]
V_ERR_AKID_ISSUER_SERIAL_MISMATCH -> Integer
[permalink][rdoc]証明書の拡張領域の Authority Key Identifier のシリアルと issuer の証明書のシリアルが一致しないことを意味します。
V_ERR_AKID_SKID_MISMATCH -> Integer
[permalink][rdoc]証明書の authorityKeyIdentifier 拡張領域の内容が issuer(発行者)の証明書の subjectKeyIdentifier の内容と 食い違っていることを意味します。
V_ERR_APPLICATION_VERIFICATION -> Integer
[permalink][rdoc]アプリケーションが利用するエラーコードです。
OpenSSL のライブラリでは使われないので、 アプリケーションプログラマが自由に利用することが可能です。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
[SEE_ALSO] OpenSSL::X509::Store#verify_callback=, OpenSSL::X509::StoreContext#error=
V_ERR_CERT_CHAIN_TOO_LONG -> Integer
[permalink][rdoc]証明書チェインが長すぎることを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
[SEE_ALSO] OpenSSL::SSL::SSLContext#verify_depth=
V_ERR_CERT_HAS_EXPIRED -> Integer
[permalink][rdoc]証明書が期限切れであることを意味します。
期限は証明書チェイン全体に対し確認されます。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
[SEE_ALSO] OpenSSL::X509::Certificate#not_after=, OpenSSL::X509::Store#time=
V_ERR_CERT_NOT_YET_VALID -> Integer
[permalink][rdoc]証明書の開始時刻以前であることを意味します。
開始時刻は証明書チェイン全体に対し確認されます。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
[SEE_ALSO] OpenSSL::X509::Certificate#not_before=, OpenSSL::X509::Store#time=
V_ERR_CERT_REJECTED -> Integer
[permalink][rdoc]ルート CA 証明書に指定した目標に使ってはならないと されていることを意味します。
V_ERR_CERT_REVOKED -> Integer
[permalink][rdoc]証明書が CRL によって失効されられていることを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
[SEE_ALSO] OpenSSL::X509::CRL
V_ERR_CERT_SIGNATURE_FAILURE -> Integer
[permalink][rdoc]証明書になされた署名の検証に失敗したことを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_CERT_UNTRUSTED -> Integer
[permalink][rdoc]ルート CA 証明書が指定した目的では信頼できないことを意味します。
[SEE_ALSO] OpenSSL::X509::Store#trust=, OpenSSL::X509::StoreContext#trust=
[SEE_ALSO] OpenSSL::X509::Store#trust=
V_ERR_CRL_HAS_EXPIRED -> Integer
[permalink][rdoc]CRL が期限切れであることを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_CRL_NOT_YET_VALID -> Integer
[permalink][rdoc]CRL の開始時刻がまだ来ていないことを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_CRL_SIGNATURE_FAILURE -> Integer
[permalink][rdoc]CRL になされた署名の検証に失敗したことを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT -> Integer
[permalink][rdoc]検証している証明書がルート CA (自己署名証明書)であり、 それが信頼されている証明書でないことを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
[SEE_ALSO] OpenSSL::X509::Store#add_file, OpenSSL::X509::Store#add_path, OpenSSL::X509::Store#add_cert, OpenSSL::X509::Store#set_default_paths
V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD -> Integer
[permalink][rdoc]証明書の notAfter フィールドの値が不正である ことを意味します。
これは notAfter フィールド(証明書の期限を表すデータ) が不正なフォーマットであることを意味し (そもそも時刻を表現していない場合や、1月32日であるなど)、 証明書が期限切れであることを意味しません。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD -> Integer
[permalink][rdoc]証明書の notBefore フィールドの値が不正である ことを意味します。
これは notBefore フィールド(証明書の開始時刻を表すデータ) が不正なフォーマットであることを意味し (そもそも時刻を表現していない場合や、1月32日であるなど)、 証明書の開始時刻にまだ到達していないことを意味しません。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD -> Integer
[permalink][rdoc]CRL の lastUpdate フィールドの値が不正である ことを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD -> Integer
[permalink][rdoc]CRL の nextUpdate フィールドの値が不正である ことを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_INVALID_CA -> Integer
[permalink][rdoc]CA 証明書が不正であることを意味します。
証明書が実は CA 用ではない場合は証明書の拡張がおかしい場合に このエラーが発生します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_INVALID_PURPOSE -> Integer
[permalink][rdoc]証明書が指定した目的で使えないことを意味します。
[SEE_ALSO] OpenSSL::X509::Store#purpose=
V_ERR_KEYUSAGE_NO_CERTSIGN -> Integer
[permalink][rdoc]署名できない証明書で署名しようしとたことを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_OUT_OF_MEM -> Integer
[permalink][rdoc]メモリが不足したことを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_PATH_LENGTH_EXCEEDED -> Integer
[permalink][rdoc]CA 証明書の basicConstraints 拡張領域の pathlen を 越えている場合に発生します。
V_ERR_SELF_SIGNED_CERT_IN_CHAIN -> Integer
[permalink][rdoc]証明書チェインのルート CA (自己署名証明書)が 信頼されている証明書でないことを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
[SEE_ALSO] OpenSSL::X509::Store#add_file, OpenSSL::X509::Store#add_path, OpenSSL::X509::Store#add_cert, OpenSSL::X509::Store#set_default_paths
V_ERR_SUBJECT_ISSUER_MISMATCH -> Integer
[permalink][rdoc]証明書の issuer(発行者)名と上位の証明書のsubject(所有者)名が 異なっていることを意味します。
V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY -> Integer
[permalink][rdoc]証明書の SubjectPublicKeyInfo フィールドが読めなかった ことを意味します。
V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE -> Integer
[permalink][rdoc]証明書の署名が復号できないことを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE -> Integer
[permalink][rdoc]CRL の署名が復号できないことを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_UNABLE_TO_GET_CRL -> Integer
[permalink][rdoc]CRL が見付からないことを意味します。
OpenSSL::X509::Store#flags= で CRL をチェックすることを 指定したにもかかわらず、適切な CRL を OpenSSL::X509::Store#add_crl で追加しなかった場合に このエラーが生じます。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
V_ERR_UNABLE_TO_GET_ISSUER_CERT -> Integer
[permalink][rdoc]issuer(発行者)の証明書が 信頼している証明書群の中から見付からない ような証明書を、信頼している証明書群に含んでいることを意味します。
つまり、信頼している証明書群に issuer を親とする木構造を考えた場合、 その root(根) となるノードが自己署名されていないことを意味します。
これは、通常信頼している証明書のリストが不完全であることを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
[SEE_ALSO] OpenSSL::X509::Store#add_file, OpenSSL::X509::Store#add_path, OpenSSL::X509::Store#add_cert, OpenSSL::X509::Store#set_default_paths
V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY -> Integer
[permalink][rdoc]証明書チェイン末尾の証明書の issuer(発行者)の証明書が 信頼している証明書群の中から見付からないことを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。
[SEE_ALSO] OpenSSL::X509::Store#add_file, OpenSSL::X509::Store#add_path, OpenSSL::X509::Store#add_cert, OpenSSL::X509::Store#set_default_paths
V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE -> Integer
[permalink][rdoc]証明書チェインにある証明書がただ一つでその証明書が 自己署名証明書でないことを意味します。
V_FLAG_CRL_CHECK -> Integer
[permalink][rdoc]証明書の検証時に CRL をチェックすることを意味します。
このフラグのみを指定すると検証する証明書のみ CRL をチェックし、 CA の証明書チェーンには CRL のチェックがなされません。
証明チェーン全体をチェックしたい場合は V_FLAG_CRL_CHECK と OpenSSL::X509::V_FLAG_CRL_CHECK_ALL の両方を指定する 必要があります。
OpenSSL::X509::Store#flags= で使います。
V_FLAG_CRL_CHECK_ALL -> Integer
[permalink][rdoc]証明書チェーンすべてに CRL をチェックすることを意味します。
このフラグは OpenSSL::X509::V_FLAG_CRL_CHECK と共に 指定する場合にのみ意味を持ちます。
OpenSSL::X509::Store#flags= で使います。
V_OK -> Integer
[permalink][rdoc]エラーが発生していないことを意味します。
OpenSSL::X509::Store#error や OpenSSL::X509::StoreContext#error のエラーコードとして 使われます。