種類
- インスタンスメソッド (10)
- 定数 (5)
- クラス (1)
- モジュール (1)
クラス
モジュール
-
OpenSSL
:: OCSP (1) -
OpenSSL
:: SSL (2) -
OpenSSL
:: X509 (2)
キーワード
- NOCHECKS (1)
- OCSP (1)
-
OP
_ PKCS1 _ CHECK _ 1 (1) -
OP
_ PKCS1 _ CHECK _ 2 (1) - SSLSocket (1)
-
V
_ FLAG _ CRL _ CHECK (1) -
V
_ FLAG _ CRL _ CHECK _ ALL (1) -
check
_ key (1) -
check
_ nonce (1) -
check
_ private _ key (1) - flags= (2)
-
post
_ connection _ check (1) - prime? (2)
-
prime
_ fasttest? (1)
検索結果
先頭5件
-
OpenSSL
:: X509 :: V _ FLAG _ CRL _ CHECK -> Integer (18346.0) -
証明書の検証時に CRL をチェックすることを意味します。
...し、
CA の証明書チェーンには CRL のチェックがなされません。
証明チェーン全体をチェックしたい場合は V_FLAG_CRL_CHECK と
OpenSSL::X509::V_FLAG_CRL_CHECK_ALL の両方を指定する
必要があります。
OpenSSL::X509::Store#flags= で使います。... -
OpenSSL
:: X509 :: V _ FLAG _ CRL _ CHECK _ ALL -> Integer (18328.0) -
証明書チェーンすべてに CRL をチェックすることを意味します。
...証明書チェーンすべてに CRL をチェックすることを意味します。
このフラグは OpenSSL::X509::V_FLAG_CRL_CHECK と共に
指定する場合にのみ意味を持ちます。
OpenSSL::X509::Store#flags= で使います。... -
OpenSSL
:: OCSP :: Request # check _ nonce(basic _ resp) -> Integer (18310.0) -
自身の nonce とレスポンスの nonce が整合しているか チェックします。
...を意味します。
それ以外は、場合(サーバの実装など)
によって不正であったりそうでなかったりしますので、適切にチェック
する必要があります。
@param basic_resp 比較するレスポンス(OpenSSL::OCSP::BasicResponse オブジェクト)... -
OpenSSL
:: PKey :: EC # check _ key -> true (18310.0) -
パラメータと鍵対をチェックします。
...パラメータと鍵対をチェックします。
なんらかの意味で鍵対に問題がある場合には例外 ECError を発生します。
@raise OpenSSL::PKey::ECError 鍵に問題がある場合に発生します... -
OpenSSL
:: SSL :: OP _ PKCS1 _ CHECK _ 1 -> Integer (18310.0) -
@todo OpenSSL::SSL::SSLContext#options= で利用します。
...@todo
OpenSSL::SSL::SSLContext#options= で利用します。... -
OpenSSL
:: SSL :: OP _ PKCS1 _ CHECK _ 2 -> Integer (18310.0) -
@todo OpenSSL::SSL::SSLContext#options= で利用します。
...@todo
OpenSSL::SSL::SSLContext#options= で利用します。... -
OpenSSL
:: SSL :: SSLSocket # post _ connection _ check(hostname) -> true (18310.0) -
接続後検証を行います。
...います。
検証に成功した場合は true を返し、失敗した場合は例外
OpenSSL::SSL::SSLError を発生させます。
OpenSSL の API では、
OpenSSL::SSL::SSLSocket#connect や OpenSSL::SSL::SSLSocket#accept
での検証は実用的には不完全です。
CA が証明書......証明書に記載されている FQDN が
一致しているかどうかを調べます。このメソッドはその FQDN のチェックを行ないます。
@param hostname チェックする FQDN の文字列
@raise OpenSSL::SSL::SSLError チェックに失敗した場合に発生します... -
OpenSSL
:: X509 :: Certificate # check _ private _ key(private _ key) -> bool (18310.0) -
与えられた秘密鍵が証明書に記載されている subject の公開鍵と対応するものかを確かめます。
与えられた秘密鍵が証明書に記載されている subject の公開鍵と対応するものかを確かめます。
確認に成功した場合に真を返します。
@param private_key 確認用の秘密鍵 -
OpenSSL
:: OCSP :: NOCHECKS -> Integer (18307.0) -
署名の検証における追加的なチェックを省略することを意味します。
署名の検証における追加的なチェックを省略することを意味します。 -
OpenSSL
:: BN # prime?(checks) -> bool (343.0) -
自身が素数であるなら true を返します。
...に判定します。
checkで指定した回数だけ繰り返します。
引数を省略した場合は OpenSSL が適切な
回数を判断します。
@param check Miller-Robin 法の繰り返しの回数
@raise OpenSSL::BNError 判定時にエラーが発生
@see OpenSSL::BN#prime_fasttest?... -
OpenSSL
:: BN # prime _ fasttest?(checks=nil , vtrivdiv=true) -> bool (307.0) -
自身が素数であるなら true を返します。
...繰り返します。
checksがnilである場合は OpenSSL が適切な
回数を判断します。
//emlist[][ruby]{
require 'openssl'
# 181 は 「小さな素数」である
OpenSSL::BN.new("181").prime_fasttest?(nil, true) # => false
OpenSSL::BN.new("181").prime_fasttest?(nil, false) # => tr......ue
//}
@param checks Miller-Robin法の繰り返しの回数
@param vtrivdiv 真なら小さな素数で割ることでの素数判定を試みます
@raise OpenSSL::BNError 判定時にエラーが発生
@see OpenSSL::BN#prime?... -
OpenSSL
:: BN # prime? -> bool (43.0) -
自身が素数であるなら true を返します。
...に判定します。
checkで指定した回数だけ繰り返します。
引数を省略した場合は OpenSSL が適切な
回数を判断します。
@param check Miller-Robin 法の繰り返しの回数
@raise OpenSSL::BNError 判定時にエラーが発生
@see OpenSSL::BN#prime_fasttest?... -
OpenSSL
:: SSL :: SSLContext # options=(options) (43.0) -
オプションを設定します。
...* OpenSSL::SSL::OP_ALL
* OpenSSL::SSL::OP_CIPHER_SERVER_PREFERENCE
* OpenSSL::SSL::OP_EPHEMERAL_RSA
* OpenSSL::SSL::OP_NETSCAPE_CA_DN_BUG
* OpenSSL::SSL::OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG
* OpenSSL::SSL::OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION
* OpenSSL::SSL::OP_NO_SSLv2
* OpenSSL:......:SSL::OP_NO_SSLv3
* OpenSSL::SSL::OP_NO_TLSv1
* OpenSSL::SSL::OP_NO_TICKET
* OpenSSL::SSL::OP_PKCS1_CHECK_1
* OpenSSL::SSL::OP_PKCS1_CHECK_2
* OpenSSL::SSL::OP_SINGLE_DH_USE
* OpenSSL::SSL::OP_SINGLE_ECDH_USE
* OpenSSL::SSL::OP_TLS_ROLLBACK_BUG
@param options 設定するオプショ......ンフラグ(整数値)
@see OpenSSL::SSL::SSLContext#options... -
OpenSSL
:: X509 :: Store # flags=(flags) (43.0) -
CRL に関するフラグを設定します。
...ら必要なものを選んで OR 取り、渡します。
* OpenSSL::X509::V_FLAG_CRL_CHECK
* OpenSSL::X509::V_FLAG_CRL_CHECK_ALL
このフラグは OpenSSL::X509::Store#verify で検証する場合に利用されます。
OpenSSL::X509::StoreContext.new で証明書ストアコンテキスト......を
生成する場合にはそのコンテキストにフラグがコピーされます。
デフォルトではフラグは設定されていません。
@param flags 設定するフラグ(整数値)
@see OpenSSL::X509::StoreContext#flags=... -
OpenSSL
:: X509 :: StoreContext # flags=(flags) (43.0) -
CRL に関するフラグを設定します。
...CRL に関するフラグを設定します。
以下の定数から必要なものを選んで OR 取り、渡します。
* OpenSSL::X509::V_FLAG_CRL_CHECK
* OpenSSL::X509::V_FLAG_CRL_CHECK_ALL
@param flags 設定するフラグ(整数値)
@see OpenSSL::X509::Store#flags=... -
OpenSSL
:: OCSP (25.0) -
OCSP(Online Certificate Status Protocol)を取り扱うための モジュールです。OCSP は 2560 で定義されています。
...示する
require 'openssl'
require 'net/http'
# ...
subject # 問い合わせ対象の証明書(Certificate オブジェクト)
issuer # subject の発行者の証明書(Certificate オブジェクト)
store # 信頼している証明書ストア
cid = OpenSSL::OCSP::CertificateId.new......issuer)
req = OpenSSL::OCSP::Request.new
req.add_certid(cid)
req.add_nonce
http = Net::HTTP.new('ocsp.example.com', 80)
httpres = http.post("/", req.to_der, 'content-type' => 'application/ocsp-request')
raise "HTTP error" if !httpres.kind_of?(Net::HTTPOK)
res = OpenSSL::OCSP::Respon......se.new(httpres.body)
puts "Response status: #{res.status_string}"
exit if res.status != OpenSSL::OCSP::RESPONSE_STATUS_SUCCESSFUL
basic_resp = res.basic
raise "nonce error" unless [-1, 1].include?(req.check_nonce(basic_resp))
unless basic_resp.verify([], store)
puts "verify respons... -
OpenSSL
:: SSL :: SSLSocket (25.0) -
ソケットをラップして SSL での認証と暗号通信を実現するためのクラスです。
...す。
=== 例
SSL/TLS サーバに接続して write します。
require 'socket'
require 'openssl'
include OpenSSL
ctx = SSL::SSLContext.new
ctx.set_params(verify_mode: OpenSSL::SSL::VERIFY_PEER, verify_hostname: true)
soc = TCPSocket.new('www.example.com', 443)
ssl = SSL:......stname = 'www.example.com' # SNI
ssl.connect
ssl.post_connection_check('www.example.com')
raise "verification error" if ssl.verify_result != OpenSSL::X509::V_OK
print ssl.peer_cert.to_text
# HTTP リクエストを送信
ssl.write("GET / HTTP/1.1\r\n")
ssl.write("Host: www.example.c...