ライブラリ
-
net
/ http (11) -
net
/ imap (2) -
net
/ pop (1) -
net
/ smtp (4) - open-uri (1)
- openssl (442)
-
rubygems
/ security (1) -
webrick
/ https (3) -
webrick
/ ssl (1)
クラス
-
Gem
:: Security :: Signer (1) - Integer (1)
-
Net
:: HTTP (11) -
Net
:: IMAP (2) -
Net
:: POP3 (1) -
Net
:: SMTP (4) -
OpenSSL
:: ASN1 :: ASN1Data (4) -
OpenSSL
:: ASN1 :: Constructive (2) -
OpenSSL
:: ASN1 :: ObjectId (5) -
OpenSSL
:: ASN1 :: Primitive (1) -
OpenSSL
:: BN (44) -
OpenSSL
:: Cipher (14) -
OpenSSL
:: Config (9) -
OpenSSL
:: Digest (6) -
OpenSSL
:: Engine (10) -
OpenSSL
:: HMAC (7) -
OpenSSL
:: Netscape :: SPKI (8) -
OpenSSL
:: OCSP :: BasicResponse (6) -
OpenSSL
:: OCSP :: CertificateId (3) -
OpenSSL
:: OCSP :: Request (7) -
OpenSSL
:: OCSP :: Response (4) -
OpenSSL
:: PKCS12 (4) -
OpenSSL
:: PKCS7 (19) -
OpenSSL
:: PKCS7 :: RecipientInfo (3) -
OpenSSL
:: PKCS7 :: SignerInfo (4) -
OpenSSL
:: PKey :: DH (13) -
OpenSSL
:: PKey :: DSA (19) -
OpenSSL
:: PKey :: EC (13) -
OpenSSL
:: PKey :: EC :: Group (14) -
OpenSSL
:: PKey :: EC :: Point (9) -
OpenSSL
:: PKey :: PKey (2) -
OpenSSL
:: PKey :: RSA (24) -
OpenSSL
:: SSL :: SSLContext (29) -
OpenSSL
:: SSL :: SSLServer (6) -
OpenSSL
:: SSL :: SSLSocket (22) -
OpenSSL
:: SSL :: Session (7) -
OpenSSL
:: X509 :: Attribute (3) -
OpenSSL
:: X509 :: CRL (15) -
OpenSSL
:: X509 :: Certificate (17) -
OpenSSL
:: X509 :: Extension (7) -
OpenSSL
:: X509 :: ExtensionFactory (11) -
OpenSSL
:: X509 :: Name (6) -
OpenSSL
:: X509 :: Request (12) -
OpenSSL
:: X509 :: Revoked (4) -
OpenSSL
:: X509 :: Store (11) -
OpenSSL
:: X509 :: StoreContext (8) -
WEBrick
:: GenericServer (1) -
WEBrick
:: HTTPRequest (3)
モジュール
-
OpenSSL
:: Buffering (23) -
OpenSSL
:: SSL :: SocketForwarder (6) -
OpenURI
:: Meta (1)
キーワード
- % (1)
- * (1)
- ** (1)
- + (1)
-
/ (1) - << (4)
- <=> (2)
- == (4)
- === (1)
- >> (1)
- [] (1)
- accept (2)
-
accept
_ nonblock (1) -
add
_ attribute (1) -
add
_ cert (1) -
add
_ certid (1) -
add
_ certificate (1) -
add
_ crl (2) -
add
_ data (1) -
add
_ extension (3) -
add
_ file (1) -
add
_ nonce (2) -
add
_ path (1) -
add
_ recipient (1) -
add
_ revoked (1) -
add
_ signer (1) -
add
_ status (1) -
add
_ value (1) - addr (1)
-
asn1
_ flag (1) - attributes (1)
- basic (1)
-
bit
_ set? (1) -
block
_ length (1) -
block
_ size (1) -
ca
_ certs (1) -
ca
_ file (2) -
ca
_ path (2) - cert (3)
-
cert
_ store (2) - certid (1)
- certificate (1)
- certificates (1)
- chain (2)
- challenge (1)
-
check
_ key (1) -
check
_ nonce (1) -
check
_ private _ key (1) - cipher (3)
- ciphers (2)
- cleanup (1)
-
clear
_ bit! (1) -
client
_ ca (1) -
client
_ cert (1) -
client
_ cert _ cb (1) - close (2)
- closed? (1)
- cmds (1)
- cmp (3)
-
cmp
_ issuer (1) - coerce (1)
- cofactor (1)
-
compute
_ key (1) - config (1)
- connect (1)
-
connect
_ nonblock (1) - context (1)
- copy (1)
-
copy
_ nonce (1) -
create
_ ext (1) -
create
_ ext _ from _ array (1) -
create
_ ext _ from _ hash (1) -
create
_ ext _ from _ string (1) -
create
_ extension (2) - critical? (1)
- crl (1)
- crls (1)
-
ctrl
_ cmd (1) -
current
_ cert (1) -
current
_ crl (1) -
curve
_ name (1) - d (1)
- data (1)
- decrypt (3)
- degree (1)
- detached (1)
- detached? (1)
-
dh
_ compute _ key (1) - digest (2)
-
digest
_ length (1) - dmp1 (1)
- dmq1 (1)
-
dsa
_ sign _ asn1 (1) -
dsa
_ verify _ asn1 (1) - e (1)
- each (3)
-
each
_ byte (1) -
each
_ line (1) -
enable
_ ssl (2) -
enable
_ starttls (1) -
enable
_ starttls _ auto (1) -
enable
_ tls (1) -
enc
_ key (1) - encrypt (2)
- eof (1)
- eof? (1)
- eql? (3)
- error (2)
-
error
_ depth (1) -
error
_ string (3) - export (5)
- extensions (3)
-
extra
_ chain _ cert (1) - fcntl (1)
- final (1)
- finish (1)
- flush (1)
-
flush
_ sessions (1) - g (2)
- gcd (1)
-
generate
_ key (1) -
generate
_ key! (1) - generator (1)
-
get
_ value (1) - getc (1)
- gets (1)
- getsockopt (1)
- group (2)
-
hash
_ old (1) - hexdigest (1)
- hostname (1)
- id (2)
- infinity? (1)
- inspect (1)
- invert! (1)
- io (1)
- iqmp (1)
- issuer (4)
-
issuer
_ certificate (1) -
iv
_ len (1) - key (4)
-
key
_ len (1) -
last
_ update (1) - listen (1)
- ln (1)
-
load
_ private _ key (1) -
load
_ public _ key (1) -
long
_ name (1) - lshift! (1)
-
make
_ affine! (1) -
mask
_ bits! (1) -
mod
_ add (1) -
mod
_ exp (1) -
mod
_ inverse (1) -
mod
_ mul (1) -
mod
_ sqr (1) -
mod
_ sub (1) - n (1)
- name (4)
- negative? (1)
-
next
_ update (1) -
not
_ after (1) -
not
_ before (1) -
num
_ bits (1) -
num
_ bytes (1) - odd? (1)
- oid (3)
-
on
_ curve? (1) - one? (1)
- order (1)
- p (3)
- params (3)
-
params
_ ok? (1) -
peer
_ cert (2) -
peer
_ cert _ chain (1) - peeraddr (1)
- pending (1)
-
pkcs5
_ keyivgen (1) -
point
_ conversion _ form (1) -
post
_ connection _ check (1) -
pretty
_ print (1) - prime? (2)
-
prime
_ fasttest? (1) - print (1)
- printf (1)
-
priv
_ key (2) - private? (2)
-
private
_ decrypt (1) -
private
_ encrypt (1) -
private
_ key (1) -
private
_ key? (1) -
pub
_ key (2) - public? (2)
-
public
_ decrypt (1) -
public
_ encrypt (1) -
public
_ key (6) -
public
_ key? (1) - puts (1)
- q (2)
-
random
_ iv (1) -
random
_ key (1) - read (1)
-
read
_ nonblock (1) - readchar (1)
- readline (1)
- readlines (1)
- readpartial (1)
- recipients (1)
-
renegotiation
_ cb (1) - reset (3)
- revoked (1)
- rshift! (1)
- section (1)
- sections (1)
- seed (1)
- serial (5)
-
server
_ cert (1) -
servername
_ cb (1) - session (1)
-
session
_ add (1) -
session
_ cache _ mode (1) -
session
_ cache _ size (1) -
session
_ cache _ stats (1) -
session
_ get _ cb (1) -
session
_ id _ context (1) -
session
_ new _ cb (1) -
session
_ remove (1) -
session
_ remove _ cb (1) -
session
_ reused? (1) -
set
_ bit! (1) -
set
_ default (1) -
set
_ default _ paths (1) -
set
_ generator (1) -
set
_ params (1) -
set
_ to _ infinity! (1) - setsockopt (1)
-
short
_ name (1) - shutdown (1)
- sign (7)
-
signature
_ algorithm (3) -
signed
_ time (1) - signers (1)
- sn (1)
- sqr (1)
-
ssl
_ context (1) -
ssl
_ timeout (2) -
start
_ immediately (1) - starttls (2)
- state (1)
- status (2)
-
status
_ string (1) - subject (2)
-
subject
_ certificate (1) -
subject
_ request (1) - sync (1)
-
sync
_ close (1) - sysclose (1)
- sysread (1)
- syssign (1)
- sysverify (1)
- syswrite (1)
- tag (1)
-
tag
_ class (1) - tagging (2)
- time (2)
- timeout (2)
-
tmp
_ dh _ callback (1) -
to
_ a (2) -
to
_ bn (3) -
to
_ der (18) -
to
_ h (1) -
to
_ i (1) -
to
_ int (1) -
to
_ io (2) -
to
_ pem (13) -
to
_ s (15) -
to
_ text (10) - type (1)
- ucmp (1)
- ungetc (1)
- update (3)
-
use
_ ssl? (1) - value (5)
- verify (11)
-
verify
_ callback (3) -
verify
_ depth (2) -
verify
_ mode (1) -
verify
_ result (1) - version (3)
- write (1)
-
write
_ nonblock (1) - zero? (1)
検索結果
先頭5件
-
OpenSSL
:: PKey :: RSA # q -> OpenSSL :: BN (33607.0) -
鍵の2つめの素数です。
鍵の2つめの素数です。
秘密鍵の情報です。 -
OpenSSL
:: X509 :: CRL # extensions -> [OpenSSL :: X509 :: Extension] (33607.0) -
CRL が持っている拡張領域のデータを配列で返します。
CRL が持っている拡張領域のデータを配列で返します。 -
OpenSSL
:: X509 :: CRL # issuer -> OpenSSL :: X509 :: Name (33607.0) -
CRL の発行者を返します。
CRL の発行者を返します。 -
OpenSSL
:: X509 :: CRL # revoked -> [OpenSSL :: X509 :: Revoked] (33607.0) -
自身が持っている失効した証明書の配列を返します。
自身が持っている失効した証明書の配列を返します。 -
OpenSSL
:: X509 :: Certificate # extensions -> [OpenSSL :: X509 :: Extension] (33607.0) -
証明書の拡張領域の内容を返します。
証明書の拡張領域の内容を返します。 -
OpenSSL
:: X509 :: Certificate # issuer -> OpenSSL :: X509 :: Name (33607.0) -
証明書の発行者の名前を返します。
証明書の発行者の名前を返します。 -
OpenSSL
:: X509 :: Certificate # subject -> OpenSSL :: X509 :: Name (33607.0) -
証明書の所有者の名前を返します。
証明書の所有者の名前を返します。 -
OpenSSL
:: X509 :: ExtensionFactory # config -> OpenSSL :: Config (33607.0) -
自身に設定されているコンフィグファイルオブジェクトを設定します。
自身に設定されているコンフィグファイルオブジェクトを設定します。 -
OpenSSL
:: X509 :: ExtensionFactory # crl -> OpenSSL :: X509 :: CRL | nil (33607.0) -
自身に設定された証明書失効リストオブジェクトを返します。
自身に設定された証明書失効リストオブジェクトを返します。
設定されていない場合は nil を返します。 -
OpenSSL
:: X509 :: ExtensionFactory # issuer _ certificate -> OpenSSL :: X509 :: Certificate | nil (33607.0) -
自身に設定されている発行者(issuer)の証明書オブジェクトを返します。
自身に設定されている発行者(issuer)の証明書オブジェクトを返します。
証明書が設定されていない場合は nil を返します。 -
OpenSSL
:: X509 :: ExtensionFactory # subject _ certificate -> OpenSSL :: X509 :: Certificate | nil (33607.0) -
自身に設定されている所有者(subject)の証明書オブジェクトを返します。
自身に設定されている所有者(subject)の証明書オブジェクトを返します。
証明書が設定されていない場合は nil を返します。 -
OpenSSL
:: X509 :: ExtensionFactory # subject _ request -> OpenSSL :: X509 :: Request | nil (33607.0) -
自身に設定されている証明書署名要求オブジェクトを返します。
自身に設定されている証明書署名要求オブジェクトを返します。
設定されていない場合は nil を返します。 -
OpenSSL
:: X509 :: Revoked # extensions -> [OpenSSL :: X509 :: Extension] (33607.0) -
拡張領域のデータを配列で返します。
拡張領域のデータを配列で返します。 -
OpenSSL
:: X509 :: Revoked # serial -> OpenSSL :: BN (33607.0) -
失効した証明書のシリアルを返します。
失効した証明書のシリアルを返します。 -
OpenSSL
:: SSL :: SSLContext # session _ cache _ stats -> {Symbol -> Integer} (33604.0) -
セッションキャッシュの内部統計情報をハッシュテーブルで返します。
セッションキャッシュの内部統計情報をハッシュテーブルで返します。
ハッシュテーブルの各キーとその意味は以下の通りです。
* :cache_num 内部キャッシュに保持されているセッションの数
* :connect クライアント側でハンドシェイクした回数
* :connect_good クライアント側でハンドシェイクが成功した回数
* :connect_renegotiate クライアント側で再ネゴシエイトした回数
* :accept サーバ側でハンドシェイクした回数
* :accept_good サーバ側でハンドシェイクが成功した回数
* :accept_ren... -
OpenSSL
:: BN # <=>(other) -> -1 | 0 | 1 (33538.0) -
自身と other を比較し、自身が小さいときには -1、 等しいときには 0、大きいときには 1 を返します。
自身と other を比較し、自身が小さいときには -1、
等しいときには 0、大きいときには 1 を返します。
//emlist[][ruby]{
require 'openssl'
OpenSSL::BN.new(5) <=> 5 # => 0
OpenSSL::BN.new(5) <=> OpenSSL::BN.new(9) # => -1
OpenSSL::BN.new(5) <=> OpenSSL::BN.new(5) # => 0
OpenSSL::BN.new(5) <=> OpenSSL::BN.new(-5) # => 1
//}
@param othe... -
OpenSSL
:: BN # cmp(other) -> -1 | 0 | 1 (33538.0) -
自身と other を比較し、自身が小さいときには -1、 等しいときには 0、大きいときには 1 を返します。
自身と other を比較し、自身が小さいときには -1、
等しいときには 0、大きいときには 1 を返します。
//emlist[][ruby]{
require 'openssl'
OpenSSL::BN.new(5) <=> 5 # => 0
OpenSSL::BN.new(5) <=> OpenSSL::BN.new(9) # => -1
OpenSSL::BN.new(5) <=> OpenSSL::BN.new(5) # => 0
OpenSSL::BN.new(5) <=> OpenSSL::BN.new(-5) # => 1
//}
@param othe... -
OpenSSL
:: BN # ucmp(other) -> -1 | 0 | 1 (33535.0) -
自身と other の絶対値を比較し、自身の絶対値が小さいときには -1、 等しいときには 0、 大きいときには 1 を返します。
自身と other の絶対値を比較し、自身の絶対値が小さいときには -1、
等しいときには 0、 大きいときには 1 を返します。
//emlist[][ruby]{
require 'openssl'
OpenSSL::BN.new(-5).ucmp(5) # => 0
OpenSSL::BN.new(5).ucmp(OpenSSL::BN.new(-9)) # => -1
OpenSSL::BN.new(-5).ucmp(OpenSSL::BN.new(5)) # => 0
OpenSSL::BN.new(-5).ucmp(OpenSSL::BN.new(2)) # =>... -
OpenSSL
:: PKCS7 # verify(certs , store , indata = nil , flags = 0) -> bool (33520.0) -
署名を検証します。
署名を検証します。
検証に成功した場合は真を、失敗した場合は偽を返します。
certs には署名者の証明書を含む配列を渡します。
通常 S/MIME 署名には証明者の証明書が含まれていますが、
OpenSSL::PKCS7.sign で OpenSSL::PKCS7::NOCERTS を渡した
場合には含まれていないので、明示的に渡す必要があります。
このメソッドは配列から適切な証明書を自動的に選択します。
store には検証に用いる証明書ストアを渡します。
検証に必要な信頼できる CA 証明書をあらかじめ証明書ストアに含めておく
必要があります。
indata は署名の対象となった... -
OpenSSL
:: X509 :: Name # to _ s(flags=nil) -> String (33484.0) -
DNの文字列表現を返します。
DNの文字列表現を返します。
flags には通常は以下のいずれかを渡します。
* nil
* OpenSSL::X509::Name::COMPAT
* OpenSSL::X509::Name::RFC2253
* OpenSSL::X509::Name::ONELINE
* OpenSSL::X509::Name::MULTILINE
*
例:
require 'openssl'
n = OpenSSL::X509::Name.parse('/C=JP/ST=Kanagawa/L=Yokohama/O=Example Company/OU=Lab3/CN... -
OpenSSL
:: BN # prime _ fasttest?(checks=nil , vtrivdiv=true) -> bool (33466.0) -
自身が素数であるなら true を返します。
自身が素数であるなら true を返します。
vtrivdiv が真である場合には、 Miller-Rabin 法での
判定の前に小さな素数で割ることで素数か否かを
調べます。自身が小さな素数である場合にはこの手順
により素数ではないと誤った返り値を返します。
Miller-Rabin 法により確率的に判定します。
checksで指定した回数だけ繰り返します。
checksがnilである場合は OpenSSL が適切な
回数を判断します。
//emlist[][ruby]{
require 'openssl'
# 181 は 「小さな素数」である
OpenSSL::BN.new("18... -
OpenSSL
:: Engine # set _ default(flags) -> true (33466.0) -
engine をデフォルトで利用するようにします。
engine をデフォルトで利用するようにします。
flags は engine を openssl のどの機能に関してデフォルトに
するかを指定します。
flags は以下の値の OR を取ります。
* OpenSSL::Engine::METHOD_CIPHERS
* OpenSSL::Engine::METHOD_DH
* OpenSSL::Engine::METHOD_DIGESTS
* OpenSSL::Engine::METHOD_DSA
* OpenSSL::Engine::METHOD_RSA
* OpenSSL::Engine::METHOD_RA... -
OpenSSL
:: SSL :: SSLContext # ciphers -> [[String , String , Integer , Integer]] (33448.0) -
利用可能な共通鍵暗号の種類を配列で返します。
利用可能な共通鍵暗号の種類を配列で返します。
配列の各要素は以下のような配列です
[暗号方式の名前の文字列, 利用可能なSSL/TLSのバージョン文字列, 鍵長(ビット数), アルゴリズムのビット長]
例:
require 'openssl'
ctx = OpenSSL::SSL::SSLContext.new('TLSv1')
ctx.ciphers
# => [["DHE-RSA-AES256-SHA", "TLSv1/SSLv3", 256, 256],
# ["DHE-DSS-AES256-SHA", "TLSv1/SSLv3", 256, 256]... -
OpenSSL
:: BN # lshift!(n) -> self (33442.0) -
自身を n ビット左シフトします。 OpenSSL::BN#<<と異なり、破壊的メソッドです。
自身を n ビット左シフトします。
OpenSSL::BN#<<と異なり、破壊的メソッドです。
//emlist[][ruby]{
require 'openssl'
bn = 1.to_bn
bn.lshift!(2) # => #<OpenSSL::BN 4>
bn # => #<OpenSSL::BN 4>
//}
@param n シフトするビット数
@raise OpenSSL::BNError 計算時エラー
@see OpenSSL::BN#<< -
OpenSSL
:: BN # rshift!(n) -> self (33442.0) -
自身を n ビット右シフトします。 [[m:OpenSSL::BN#>>]と異なり、破壊的メソッドです。
自身を n ビット右シフトします。
[[m:OpenSSL::BN#>>]と異なり、破壊的メソッドです。
//emlist[][ruby]{
require 'openssl'
bn = 8.to_bn
bn.rshift!(1) # => #<OpenSSL::BN 4>
bn # => #<OpenSSL::BN 4>
//}
@param n シフトするビット数
@raise OpenSSL::BNError 計算時エラー
@see OpenSSL::BN#>> -
OpenSSL
:: OCSP :: Response # status -> Integer (33430.0) -
ステータスコードを整数で返します。
ステータスコードを整数で返します。
以下のいずれかを返します。
* OpenSSL::OCSP::RESPONSE_STATUS_SUCCESSFUL
* OpenSSL::OCSP::RESPONSE_STATUS_MALFORMEDREQUEST
* OpenSSL::OCSP::RESPONSE_STATUS_INTERNALERROR
* OpenSSL::OCSP::RESPONSE_STATUS_TRYLATER
* OpenSSL::OCSP::RESPONSE_STATUS_SIGREQUIRED
* OpenSSL::OCSP::RESPONSE_S... -
OpenSSL
:: X509 :: StoreContext # error -> Integer (33430.0) -
検証時のエラーコードを返します。
検証時のエラーコードを返します。
OpenSSL::X509::StoreContext#verify を呼びだし、
証明書チェインの各証明書を検証した
コールバック(OpenSSL::X509::Store#verify_callback=)が呼び出され、
StoreContext オブジェクトが渡されますが、このメソッドを呼ぶと
直前の証明書検証結果のエラーコードが得られます。
OpenSSL::X509::StoreContext#verify を呼び出したあと、
このメソッドを呼ぶと検証の最終的な検証結果のエラーコードを返します。
エラーコードの整数値は OpenSSL::X50... -
OpenSSL
:: BN # to _ s(base=10) -> String (33412.0) -
自身を表す文字列を返します。
自身を表す文字列を返します。
base で、変換方法(基数)を指定します。
デフォルトは 10 で、他に 16, 2, 0 を指定できます。
10 10進数の表記
16 16進数の表記
2 big-endianの符号無し整数のバイナリ列
0 MPI形式の文字列(バイト列)
@param base 文字列への変換方法(基数)
@raise OpenSSL::BNError 変換に失敗した場合に発生します
//emlist[][ruby]{
require 'openssl'
p 10.to_bn.to_s # => "10"
p (-5).to_bn.... -
OpenSSL
:: OCSP :: BasicResponse # sign(signer _ cert , signer _ key , certs = [] , flags=0) -> self (33412.0) -
Response に署名します。
Response に署名します。
OCSP レスポンダ(もしくは CA)はレスポンスに署名をすることで、
レスポンスの内容を保証します。
flags には以下の値の OR を渡すことができます。
* OpenSSL::OCSP::NOTIME
* OpenSSL::OCSP::RESPID_KEY
* OpenSSL::OCSP::NOCERTS
certs に証明書の配列を渡すことで、この署名を検証するために
必要となる別の証明書を付加することができます。
@param signer_cert 署名者の証明書(OpenSSL::X509::Certificate オブジェ... -
OpenSSL
:: OCSP :: BasicResponse # verify(certs , store , flags=0) -> bool (33412.0) -
署名を検証します。
署名を検証します。
flagsには以下の値の OR を取ったものを渡します。
* OpenSSL::OCSP::TRUSTOTHER
* OpenSSL::OCSP::NOSIGS
* OpenSSL::OCSP::NOVERIFY
* OpenSSL::OCSP::NOINTERN
TRUSTOTHER を有効にすると certs で指定した証明書を検証せずに信頼します。
@param certs 検証に用いる追加的な証明書(OpenSSL::X509::Certificate オブジェクトの配列)
@param store 検証に用いる証明書ストア(OpenSSL::... -
OpenSSL
:: OCSP :: Request # verify(certs , store , flags=0) -> bool (33412.0) -
Request オブジェクトの署名を検証します。
Request オブジェクトの署名を検証します。
検証に成功した場合は真を返します。
flags には以下の値の OR を取ったものを渡します。
* OpenSSL::OCSP::TRUSTOTHER
* OpenSSL::OCSP::NOSIGS
* OpenSSL::OCSP::NOVERIFY
* OpenSSL::OCSP::NOINTERN
TRUSTOTHER を有効にすると certs で指定した証明書を検証せずに信頼します。
@param certs 検証に用いる追加的な証明書(OpenSSL::X509::Certificate オブジェクトの配列)
... -
OpenSSL
:: X509 :: Store # verify(cert , chain = nil) -> bool (33412.0) -
証明書を証明書ストアに存在する CA 証明書で検証します。
証明書を証明書ストアに存在する CA 証明書で検証します。
chain には検証したい証明書の証明書チェイン全体を
OpenSSL::X509::Certificate の配列で渡します。
検証に成功した場合は true を、失敗した場合は false を返します。
このメソッドをブロック付きで呼び出すと、そのブロックが
検証をフィルタするコールバックと見做されます。このコールバックについては
OpenSSL::X509::Store#verify_callback= を参照してください。
内部では OpenSSL::X509::StoreContext.new と
OpenSSL:... -
OpenSSL
:: X509 :: Store # verify(cert , chain = nil) {|ok , ctx| . . . } -> bool (33412.0) -
証明書を証明書ストアに存在する CA 証明書で検証します。
証明書を証明書ストアに存在する CA 証明書で検証します。
chain には検証したい証明書の証明書チェイン全体を
OpenSSL::X509::Certificate の配列で渡します。
検証に成功した場合は true を、失敗した場合は false を返します。
このメソッドをブロック付きで呼び出すと、そのブロックが
検証をフィルタするコールバックと見做されます。このコールバックについては
OpenSSL::X509::Store#verify_callback= を参照してください。
内部では OpenSSL::X509::StoreContext.new と
OpenSSL:... -
OpenSSL
:: X509 :: Store # error -> Integer | nil (33406.0) -
最後に OpenSSL::X509::Store#verify を呼び、 検証したときのエラーコードを返します。
最後に OpenSSL::X509::Store#verify を呼び、
検証したときのエラーコードを返します。
エラーコードの整数値は OpenSSL::X509 に定数が定義されています。
詳しくは c:OpenSSL::X509#verify_error を見てください。
検証に成功した場合は OpenSSL::X509::V_OK を返します。
verify を一度も呼びだしていない場合は nil を返します。
返り値は verify を呼ぶごとに更新されます。 -
OpenSSL
:: BN # prime? -> bool (33394.0) -
自身が素数であるなら true を返します。
自身が素数であるなら true を返します。
Miller-Rabin 法により確率的に判定します。
checkで指定した回数だけ繰り返します。
引数を省略した場合は OpenSSL が適切な
回数を判断します。
@param check Miller-Robin 法の繰り返しの回数
@raise OpenSSL::BNError 判定時にエラーが発生
@see OpenSSL::BN#prime_fasttest? -
OpenSSL
:: BN # prime?(checks) -> bool (33394.0) -
自身が素数であるなら true を返します。
自身が素数であるなら true を返します。
Miller-Rabin 法により確率的に判定します。
checkで指定した回数だけ繰り返します。
引数を省略した場合は OpenSSL が適切な
回数を判断します。
@param check Miller-Robin 法の繰り返しの回数
@raise OpenSSL::BNError 判定時にエラーが発生
@see OpenSSL::BN#prime_fasttest? -
OpenSSL
:: BN # set _ bit!(n) -> self (33394.0) -
自身の n ビット目を1にします。
自身の n ビット目を1にします。
//emlist[][ruby]{
require 'openssl'
a = OpenSSL::BN.new("128")
a.set_bit!(0)
a # => 129
//}
@param n 1にするビットの位置
@raise OpenSSL::BNError 計算時エラー
@see OpenSSL::clear_bit!, OpenSSL::bit_set? -
OpenSSL
:: PKey :: EC # public _ key? -> bool (33394.0) -
EC オブジェクトが公開鍵を保持していれば真を返します。
EC オブジェクトが公開鍵を保持していれば真を返します。
OpenSSL::PKey::RSA や OpenSSL::PKey::DSA と
異なり、EC オブジェクトが公開鍵を含まない場合が存在します。
例えば、OpenSSL::PKey::EC.new でパラメータとなる群のみを
指定して EC オブジェクトを作った場合は、公開鍵も秘密鍵も
保持していません。この場合 OpenSSL::PKey::EC#generate_key で
鍵を生成するまで、その状態のままです。
このメソッドを呼ぶ前に OpenSSL::Random の各モジュール関数に
よって乱数が適切に初期化されている必... -
OpenSSL
:: SSL :: SSLSocket # accept _ nonblock -> self (33394.0) -
ノンブロッキング方式で TLS/SSL 通信をサーバモードとして開始し、 クライアントとのハンドシェイクを実行します。
ノンブロッキング方式で
TLS/SSL 通信をサーバモードとして開始し、
クライアントとのハンドシェイクを実行します。
IO が読み込み待ち、もしくは書き込み待ちになった場合は例外を
発生させ、ハンドシェイクを中断します。IO が読み込み/書き込み
可能状態になってからこのメソッドをもう一度呼ぶと
ハンドシェイクを再開します。
@raise OpenSSL::SSL::SSLError ハンドシェイクに失敗した(VERIFY_PEER で
証明書の検証に失敗した場合や、プロトコル合意に失敗したなど)
場合に発生します
(実際は OpenSSL::S... -
OpenSSL
:: SSL :: SSLSocket # post _ connection _ check(hostname) -> true (33394.0) -
接続後検証を行います。
接続後検証を行います。
検証に成功した場合は true を返し、失敗した場合は例外
OpenSSL::SSL::SSLError を発生させます。
OpenSSL の API では、
OpenSSL::SSL::SSLSocket#connect や OpenSSL::SSL::SSLSocket#accept
での検証は実用的には不完全です。
CA が証明書に署名してそれが失効していないことしか確認しません。
実用上は証明書に記載されている事項を見て、接続先が妥当であるかを確認する
必要があります。通常は接続先ホストの FQDN と証明書に記載されている FQDN が
一致しているか... -
OpenSSL
:: X509 :: StoreContext # verify -> bool (33394.0) -
証明書を検証します。
証明書を検証します。
OpenSSL::X509::StoreContext.new で設定した証明書を検証します。
検証に成功した場合は true を、失敗した場合は false を返します。
検証の詳細な情報は
* OpenSSL::X509::StoreContext#error
* OpenSSL::X509::StoreContext#error_string
* OpenSSL::X509::StoreContext#chain
* OpenSSL::X509::StoreContext#current_crl -
OpenSSL
:: BN # bit _ set?(n) -> bool (33376.0) -
自身の n ビット目が立っているなら true を返します。
自身の n ビット目が立っているなら true を返します。
//emlist[][ruby]{
require 'openssl'
OpenSSL::BN.new("129").bit_set?(0) # => true
OpenSSL::BN.new("129").bit_set?(1) # => false
//}
@param n 調べるビットの位置
@see OpenSSL::set_bit! -
OpenSSL
:: BN # clear _ bit!(n) -> self (33376.0) -
自身の n ビット目を0にします。
自身の n ビット目を0にします。
//emlist[][ruby]{
require 'openssl'
a = OpenSSL::BN.new("129")
a.clear_bit!(0)
a # => 128
//}
@param n 0にするビットの位置
@raise OpenSSL::BNError 計算時エラー
@see OpenSSL::set_bit! -
OpenSSL
:: BN # num _ bits -> Integer (33376.0) -
自身を表現するのに使っているビット数を返します。
自身を表現するのに使っているビット数を返します。
符号は無視されます。
//emlist[][ruby]{
require 'openssl'
OpenSSL::BN.new("127").num_bits # => 7
OpenSSL::BN.new("-127").num_bits # => 7
OpenSSL::BN.new("128").num_bits # => 8
//} -
OpenSSL
:: Cipher # pkcs5 _ keyivgen(pass , salt=nil , num=2048 , digest="md5") -> nil (33376.0) -
pass と salt から鍵と IV を生成し、暗号オブジェクトに設定します。
pass と salt から鍵と IV を生成し、暗号オブジェクトに設定します。
このメソッドは PKCS#5 v1.5 で定義されている方法に
従って鍵と IV を生成します。PKCS#5 v1.5 と正しく互換するには
digest は md5 か sha1 を使い、暗号アルゴリズムは
RC2, RC4-40, DES のいずれかを使わなければなりません。
このメソッドの利用は推奨されません。これではなく
PKCS#5 v2.0 に定義されている方法で鍵と IV を生成すべきです。
salt が nil である場合には salt なしと見なします。
num は必要なデータの生成でハ... -
OpenSSL
:: Netscape :: SPKI # sign(key , digest) -> self (33376.0) -
SPKI オブジェクトに署名をします。
SPKI オブジェクトに署名をします。
@param key 署名に使う秘密鍵(OpenSSL::PKey::PKey オブジェクト)
@param digest 署名に使うダイジェスト関数(文字列もしくは OpenSSL::Digest オブジェクト)
@raise OpenSSL::Netscape::SPKIError 署名に失敗した場合に発生します
@see OpenSSL::Netscape::SPKI#verify -
OpenSSL
:: OCSP :: Request # add _ certid(cid) -> self (33376.0) -
Request オブジェクトに問い合わせ対象の証明書情報を追加します。
Request オブジェクトに問い合わせ対象の証明書情報を追加します。
証明書情報は OpenSSL::OCSP::CertificateId の形で渡す必要があります。
@param cid 問い合わせ対象の証明書情報(OpenSSL::OCSP::CertificateId オブジェクト)
@raise OpenSSL::OCSP::OCSPError 追加に失敗した場合に発生します。
@see OpenSSL::OCSP::Request#certid -
OpenSSL
:: OCSP :: Request # sign(signer _ cert , signer _ key , certs=nil , flags=nil) -> self (33376.0) -
Request オブジェクトに署名をします。
Request オブジェクトに署名をします。
この署名はリクエスタが自分自身を証明するために署名します。
OCSP レスポンダはこの署名を確認します。
Request に対する署名は必須ではありません。
certs に証明書の配列を渡すことで、この署名を検証するために
必要となる別の証明書を付加することができます。
@param signer_cert 署名者の証明書(OpenSSL::X509::Certificate オブジェクト)
@param signer_key 証明に用いる秘密鍵(OpenSSL::PKey::PKey オブジェクト)
@param certs 添付する証明書... -
OpenSSL
:: PKCS7 # decrypt(pkey , cert , flags = 0) -> String (33376.0) -
暗号化されたデータを復号化し、復号化されたデータを返します。
暗号化されたデータを復号化し、復号化されたデータを返します。
復号には暗号化に使った公開鍵に対応する秘密鍵と、その公開鍵を
含む証明書が必要です。
flags には以下のいずれかを指定できます。
* OpenSSL::PKCS7::TEXT
暗号化されたデータに付けられた text/plain タイプの MIME ヘッダ
を取り除きます。もしヘッダがなければエラーとなります。
@param pkey 復号化に使う秘密鍵(OpenSSL::PKey::PKey オブジェクト)
@param cert 対応する証明書(OpenSSL::X509::Certific... -
OpenSSL
:: PKey :: EC :: Group # set _ generator(generator , order , cofactor) -> self (33376.0) -
群のパラメータを設定します。
群のパラメータを設定します。
@param generator 生成元(OpenSSL::PKey::EC::Point オブジェクト)
@param order 生成元の位数(OpenSSL::BN オブジェクト)
@param cofactor 余因子OpenSSL::BN オブジェクト
@raise OpenSSL::PKey::EC::Group::Error 設定に失敗した場合に発生します -
OpenSSL
:: SSL :: SSLSocket # cipher -> [String , String , Integer , Integer] (33376.0) -
現在実際に使われている暗号の情報を配列で返します。
現在実際に使われている暗号の情報を配列で返します。
返される配列の形式は以下の例のように [暗号名, TLS/SSLのバージョン, 鍵長, アルゴリズムで使われる bit 数] となります。
["DES-CBC3-SHA", "TLSv1/SSLv3", 168, 168]
OpenSSL::SSL::SSLSocket#connect や OpenSSL::SSL::SSLSocket#accept
で SSL/TLS ハンドシェイクを行う前にこのメソッドを呼ぶと nil を返します。 -
OpenSSL
:: SSL :: SSLSocket # connect _ nonblock -> self (33376.0) -
ノンブロッキング方式で TLS/SSL 通信をクライアントモードとして開始し、 サーバとのハンドシェイクを実行します。
ノンブロッキング方式で
TLS/SSL 通信をクライアントモードとして開始し、
サーバとのハンドシェイクを実行します。
IO が読み込み待ち、もしくは書き込み待ちになった場合は例外を
発生させ、ハンドシェイクを中断します。IO が読み込み/書き込み
可能状態になってからこのメソッドをもう一度呼ぶと
ハンドシェイクを再開します。
@raise OpenSSL::SSL::SSLError ハンドシェイクに失敗した(VERIFY_PEER で
証明書の検証に失敗した場合や、プロトコル合意に失敗したなど)
場合に発生します
@raise OpenSSL::SSL::S... -
OpenSSL
:: X509 :: Name # <=>(other) -> -1 | 0 | 1 (33376.0) -
他の OpenSSL::X509::Name オブジェクトと比較します。
他の OpenSSL::X509::Name オブジェクトと比較します。
自身が other と一致する場合は 0、otherより大きい場合は1、
小さい場合は -1 を返します。
@param other 比較するオブジェクト -
OpenSSL
:: X509 :: Name # cmp(other) -> -1 | 0 | 1 (33376.0) -
他の OpenSSL::X509::Name オブジェクトと比較します。
他の OpenSSL::X509::Name オブジェクトと比較します。
自身が other と一致する場合は 0、otherより大きい場合は1、
小さい場合は -1 を返します。
@param other 比較するオブジェクト -
OpenSSL
:: BN # negative? -> bool (33370.0) -
自身が負である場合に true を返します。Ruby 2.5, OpenSSL 2.1.0 から利用できます。
自身が負である場合に true を返します。Ruby 2.5, OpenSSL 2.1.0 から利用できます。
//emlist[][ruby]{
require 'openssl'
p 15.to_bn.negative? # => false
p 0.to_bn.negative? # => false
p (-5).to_bn.negative? # => true
//} -
OpenSSL
:: OCSP :: Response # status _ string -> String (33370.0) -
レスポンスステータスを human-readable な文字列で返します。
レスポンスステータスを human-readable な文字列で返します。
@see OpenSSL::OCSP::Response#status -
OpenSSL
:: SSL :: SSLContext # client _ cert _ cb -> Proc | nil (33370.0) -
OpenSSL::SSL::SSLContext#cert= でクライアント証明書を セットしていなかった場合にサーバからクライアント証明書の要求が来たときに 呼びだされるコールバックオブジェクトを返します。
OpenSSL::SSL::SSLContext#cert= でクライアント証明書を
セットしていなかった場合にサーバからクライアント証明書の要求が来たときに
呼びだされるコールバックオブジェクトを返します。
デフォルトは nil (コールバックなし)です。
@see OpenSSL::SSL::SSLContext#client_cert_cb= -
OpenSSL
:: SSL :: SSLContext # session _ add(sess) -> bool (33370.0) -
セッションを OpenSSL::SSL::SSLContext 内部のキャッシュ領域に 追加します。
セッションを OpenSSL::SSL::SSLContext 内部のキャッシュ領域に
追加します。
成功時には真を返します。すでにキャッシュ領域にあるセッションを
追加しようとした場合は追加されずに偽を返します。
@param sess 追加するセッション(OpenSSL::SSL::Session) -
OpenSSL
:: SSL :: SSLContext # session _ remove(sess) -> bool (33370.0) -
セッションを OpenSSL::SSL::SSLContext 内部のキャッシュ領域から 取り除きます。
セッションを OpenSSL::SSL::SSLContext 内部のキャッシュ領域から
取り除きます。
成功時には真を返します。キャッシュ領域に存在しないセッションを
削除しようとした場合は偽を返します。
@param sess 削除するセッション(OpenSSL::SSL::Session) -
OpenSSL
:: SSL :: SSLServer # start _ immediately -> bool (33370.0) -
OpenSSL::SSL::SSLServer#accept で accept したらすぐに TLS/SSL ハンドシェイクを実行するかどうかを返します。
OpenSSL::SSL::SSLServer#accept で
accept したらすぐに TLS/SSL ハンドシェイクを実行するかどうかを返します。
@see OpenSSL::SSL::SSLServer#start_immediately= -
OpenSSL
:: X509 :: Name # hash _ old -> Integer (33370.0) -
OpenSSL 0.9.8 と互換な古い方式のハッシュ関数の ハッシュ値を返します。
OpenSSL 0.9.8 と互換な古い方式のハッシュ関数の
ハッシュ値を返します。
内部では OpenSSL の X509_NAME_hash_old を呼び出します。 -
OpenSSL
:: ASN1 :: ObjectId # ln -> String | nil (33358.0) -
オブジェクト識別子に対応する long name を返します。
オブジェクト識別子に対応する long name を返します。
例:
require "openssl"
oid = OpenSSL::ASN1::ObjectId.new("subjectAltName")
p oid.ln #=> "X509v3 Subject Alternative Name"
@see OpenSSL::ASN1::ObjectId#sn -
OpenSSL
:: ASN1 :: ObjectId # long _ name -> String | nil (33358.0) -
オブジェクト識別子に対応する long name を返します。
オブジェクト識別子に対応する long name を返します。
例:
require "openssl"
oid = OpenSSL::ASN1::ObjectId.new("subjectAltName")
p oid.ln #=> "X509v3 Subject Alternative Name"
@see OpenSSL::ASN1::ObjectId#sn -
OpenSSL
:: ASN1 :: ObjectId # oid -> String (33358.0) -
オブジェクト識別子のドット区切り数値を文字列で返します。
オブジェクト識別子のドット区切り数値を文字列で返します。
例:
require "openssl"
oid = OpenSSL::ASN1::ObjectId.new("subjectAltName")
p oid.oid #=> "2.5.29.17"
@raise OpenSSL::ASN1::ASN1Error オブジェクト識別子名が未知である場合に発生します -
OpenSSL
:: ASN1 :: ObjectId # short _ name -> String | nil (33358.0) -
オブジェクト識別子に対応する short name を返します。
オブジェクト識別子に対応する short name を返します。
例:
require "openssl"
oid = OpenSSL::ASN1::ObjectId.new("subjectAltName")
p oid.sn #=> "subjectAltName"
@see OpenSSL::ASN1::ObjectId#ln -
OpenSSL
:: ASN1 :: ObjectId # sn -> String | nil (33358.0) -
オブジェクト識別子に対応する short name を返します。
オブジェクト識別子に対応する short name を返します。
例:
require "openssl"
oid = OpenSSL::ASN1::ObjectId.new("subjectAltName")
p oid.sn #=> "subjectAltName"
@see OpenSSL::ASN1::ObjectId#ln -
OpenSSL
:: BN # mask _ bits!(n) -> self (33358.0) -
自身を下位 n ビットでマスクし、破壊的に変更します。
自身を下位 n ビットでマスクし、破壊的に変更します。
n が自身のビット数より大きい場合は例外 OpenSSL::BNError
が発生します。
//emlist[][ruby]{
require 'openssl'
bn = 0b1111_1111.to_bn
bn.mask_bits!(8)
p "%b" % bn # => "11111111"
bn.mask_bits!(3)
p "%b" % bn # => "111"
//}
@param n マスクするビット数
@raise OpenSSL::BNError 計算時エラー -
OpenSSL
:: Cipher # update(data) -> String (33358.0) -
渡された文字列を暗号化もしくは復号化して文字列として返します。
渡された文字列を暗号化もしくは復号化して文字列として返します。
どちらがなされるかは直前に OpenSSL::Cipher#encrypt もしくは
OpenSSL::Cipher#decrypt のいずれが呼びだされたかに
よって決まります。
ブロック暗号を利用する場合は、暗号化/復号化はブロックサイズで規定された
バイト数ごとに行われます。そのため余ったデータは暗号オブジェクト内部に
保存され、次の文字列が渡されたときに使われます。
暗号化/復号化すべきデータを渡し終えた後は、
OpenSSL::Cipher#final
を呼びだして暗号オブジェクト内部に残されたデータを暗号化... -
OpenSSL
:: Config # each {|section , key , value| . . . } -> self (33358.0) -
オブジェクトに含まれる全ての設定情報を順にブロックに渡し 呼び出します。
オブジェクトに含まれる全ての設定情報を順にブロックに渡し
呼び出します。
渡される値は、セクションを表す文字列、キーを表す文字列、キーに
割り当てられた値の文字列、の3つです。
require 'openssl'
conf = OpenSSL::Config.load(OpenSSL::Config::DEFAULT_CONFIG_FILE)
conf.each{|section, key, value| p [section, key, value]}
# => ["req_distinguished_name", "countryName", "Country Name... -
OpenSSL
:: Netscape :: SPKI # verify(key) -> bool (33358.0) -
署名を検証します。
署名を検証します。
検証に成功した場合は true を返し、失敗した場合は false を返します。
@param key 署名に使う公開鍵(OpenSSL::PKey::PKey オブジェクト)
@raise OpenSSL::Netscape::SPKIError 検証時にエラーが起きた場合に発生します
@see OpenSSL::Netscape::SPKI#sign -
OpenSSL
:: OCSP :: BasicResponse # add _ status(cid , status , reason , revtime , thisupd , nextupd , exts) -> self (33358.0) -
証明書の状態の問い合わせの結果をオブジェクトに追加します。
証明書の状態の問い合わせの結果をオブジェクトに追加します。
詳しくは OpenSSL::OCSP::BasicResponse#status を見てください。
@param cid 問い合わせの(OpenSSL::OCSP::CertificateId オブジェクト)
@param status ステータスコード(整数)
@param reason 失効理由コード(整数)
@param revtime 失効時刻(Time オブジェクトもしくは nil)
@param thisupd 最終更新時刻(Time オブジェクト)
@param nextupd 次回更新時刻(Time オブジェクト)... -
OpenSSL
:: OCSP :: Request # check _ nonce(basic _ resp) -> Integer (33358.0) -
自身の nonce とレスポンスの nonce が整合しているか チェックします。
自身の nonce とレスポンスの nonce が整合しているか
チェックします。
-1 から 3 までの整数を返します。それぞれの意味は以下の通りです。
* -1 自身にしか nonce が設定されていない
* 0 nonce が自身とレスポンスの両方にあるが等しくない
* 1 nonce が自身とレスポンスの両方にあり等しい
* 2 nonce が自身とレスポンスのどちらにもない
* 3 nonce がレスポンスにしか設定されていない
0 は明らかに不正なので、これは必ずチェックする必要があります。
1 は nonce が正しいということを意味します。
それ以外は、... -
OpenSSL
:: PKCS7 # add _ certificate(cert) -> self (33358.0) -
署名に添付する証明書を追加します。
署名に添付する証明書を追加します。
通常は OpenSSL::PKCS7.sign の引数で添付する証明書を指定した
ほうがよいでしょう。
@param cert 追加する証明書(OpenSSL::X509::Certificate オブジェクト)
@raise OpenSSL::PKCS7::PKCS7Error 追加に失敗した場合に発生します。 -
OpenSSL
:: PKCS7 # error _ string -> String | nil (33358.0) -
検証エラーの理由を表す文字列を返します。
検証エラーの理由を表す文字列を返します。
OpenSSL::PKCS7#verify で検証を
した場合のみ更新されます。
OpenSSL::PKCS7#verify で検証をする前は nil を返します。
検証に成功した場合は nil を返します。
@see OpenSSL::PKCS7#error_string= -
OpenSSL
:: SSL :: SSLSocket # accept -> self (33358.0) -
TLS/SSL 通信をサーバモードとして開始し、クライアントからの ハンドシェイク開始を待ち、クライアントとのハンドシェイクを実行します。
TLS/SSL 通信をサーバモードとして開始し、クライアントからの
ハンドシェイク開始を待ち、クライアントとのハンドシェイクを実行します。
@raise OpenSSL::SSL::SSLError ハンドシェイクに失敗した(VERIFY_PEER で
証明書の検証に失敗した場合や、プロトコル合意に失敗したなど)
場合に発生します
@see OpenSSL::SSL::SSLSocket#connect,
OpenSSL::SSL::SSLSocket#accept_nonblock -
OpenSSL
:: SSL :: SSLSocket # connect -> self (33358.0) -
TLS/SSl 通信をクライアントモードとして開始し、 サーバとのハンドシェイクを実行します。
TLS/SSl 通信をクライアントモードとして開始し、
サーバとのハンドシェイクを実行します。
@raise OpenSSL::SSL::SSLError ハンドシェイクに失敗した(VERIFY_PEER で
証明書の検証に失敗した場合や、プロトコル合意に失敗したなど)
場合に発生します
@see OpenSSL::SSL::SSLSocket#accept,
OpenSSL::SSL::SSLSocket#connect_nonblock -
OpenSSL
:: SSL :: SSLSocket # session _ reused? -> bool (33358.0) -
利用している SSL セッションが再利用されたものである 場合に真を返します。
利用している SSL セッションが再利用されたものである
場合に真を返します。
@see OpenSSL::SSL::Session,
OpenSSL::SSL::SSLSocket#session,
OpenSSL::SSL::SSLSocket#session= -
OpenSSL
:: SSL :: SSLSocket # sysclose -> nil (33358.0) -
接続を閉じます。相手に'close notify'を送ります。
接続を閉じます。相手に'close notify'を送ります。
このメソッドは openssl ライブラリ内で管理しているバッファを
フラッシュせずに接続を閉じます。そのため、通常は
これではなく OpenSSL::Buffering#close を呼ぶべきです。
OpenSSL::SSL::SSLSocket#sync_close が真である場合は
このメソッドを呼びだした時点で自身が保持しているソケット
を同時に閉じます。 -
OpenSSL
:: SSL :: SSLSocket # verify _ result -> Integer (33358.0) -
検証結果のエラーコードを整数値で返します。
検証結果のエラーコードを整数値で返します。
エラーコードの整数値は OpenSSL::X509 に定数が定義されています。
詳しくは c:OpenSSL::X509#verify_error を見てください。
検証に成功した場合は OpenSSL::X509::V_OK を返します。 -
OpenSSL
:: SSL :: Session # timeout -> Integer (33358.0) -
セッションタイムアウトの時間(秒数)を整数で返します。
セッションタイムアウトの時間(秒数)を整数で返します。
デフォルト値は OpenSSL::SSL::SSLContext#timeout=
で設定されます。
@see OpenSSL::SSL::Session#time,
OpenSSL::SSL::Session#timeout= -
OpenSSL
:: X509 :: Name # to _ a -> [[String , String , Integer]] (33358.0) -
内容を配列にして返します。
内容を配列にして返します。
配列の各要素は、[属性型文字列、属性値文字列、属性値の型を表す整数(OpenSSL::ASN1以下の各定数で定義されているASN1の型)] という3要素の配列です。
例:
require 'openssl'
n = OpenSSL::X509::Name.parse('/C=JP/ST=Kanagawa/L=Yokohama/O=Example Company/OU=Lab3/CN=foobar/emailAddress=foobar@lab3.example.co.jp')
n.to_a
# => [["C", "JP", 19], ["ST... -
OpenSSL
:: X509 :: Request # sign(key , digest) -> self (33358.0) -
証明書署名要求に秘密鍵で署名をします。
証明書署名要求に秘密鍵で署名をします。
通常、証明書署名要求は申請者の秘密鍵で署名されます。
@param key 秘密鍵(OpenSSL::PKey::PKey のサブクラスのオブジェクト)
@param digest ハッシュ関数を表す文字列("sha1" など)
@raise OpenSSL::X509::RequestError 署名に失敗した場合に発生します
@see OpenSSL::X509::Request#verify -
OpenSSL
:: X509 :: Request # verify(key) -> bool (33358.0) -
署名を検証します。
署名を検証します。
検証に成功した場合には true を、失敗した場合には false を返します。
@param key 検証に利用する公開鍵(OpenSSL::PKey::PKey のサブクラスのインスタンス)
@raise OpenSSL::X509::RequestError 検証時にエラーが生じた場合に発生します
@see OpenSSL::X509::Request#sign -
OpenSSL
:: X509 :: StoreContext # error _ string -> String (33358.0) -
検証したときのエラー文字列を返します。
検証したときのエラー文字列を返します。
OpenSSL::X509::StoreContext#verify を呼びだし、
証明書チェインの各証明書を検証した
コールバック(OpenSSL::X509::Store#verify_callback=)が呼び出され、
StoreContext オブジェクトが渡されますが、このメソッドを呼ぶと
直前の証明書検証結果のエラー文字列が得られます。
OpenSSL::X509::StoreContext#verify を呼び出したあと、
このメソッドを呼ぶと検証の最終的な検証結果のエラー文字列を返します。
検証に成功した場合は "ok" を返します... -
OpenSSL
:: Config # to _ s -> String (33352.0) -
オブジェクトに含まれる設定情報を OpenSSL の設定ファイルの形式で 出力します。
オブジェクトに含まれる設定情報を OpenSSL の設定ファイルの形式で
出力します。 -
OpenSSL
:: PKey :: EC :: Point # make _ affine! -> self (33352.0) -
@todo @raise OpenSSL::PKey::EC::Point::Error エラーが生じた場合に発生します
@todo
@raise OpenSSL::PKey::EC::Point::Error エラーが生じた場合に発生します -
OpenSSL
:: SSL :: SSLSocket # pending -> Integer | nil (33352.0) -
OpenSSL内部のバッファが保持している、直ちに読み取り可能な データのバイト数を返します。
OpenSSL内部のバッファが保持している、直ちに読み取り可能な
データのバイト数を返します。
ハンドシェイク開始前には nil を返します。 -
OpenSSL
:: X509 :: Store # error _ string -> String | nil (33352.0) -
最後に OpenSSL::X509::Store#verify を呼び、 検証したときのエラー文字列を返します。
最後に OpenSSL::X509::Store#verify を呼び、
検証したときのエラー文字列を返します。
検証に成功した場合は "ok" を返します。
verify を一度も呼びだしていない場合は nil を返します。
返り値は verify を呼ぶごとに更新されます。 -
OpenSSL
:: ASN1 :: Constructive # tagging -> Symbol | nil (33340.0) -
タグ付けの方式を返します。
タグ付けの方式を返します。
:IMPLICIT、:EXPLICIT、nil のいずれかを返します。
タグ(OpenSSL::ASN1::ASN1Data#tag)が :UNIVERSAL ならば
この値は無視されます。
nil は :IMPLICIT と同義です。
@see OpenSSL::ASN1::Constructive#tagging= -
OpenSSL
:: ASN1 :: Primitive # tagging -> Symbol | nil (33340.0) -
タグ付けの方式を返します。
タグ付けの方式を返します。
:IMPLICIT、:EXPLICIT、nil のいずれかを返します。
タグ(OpenSSL::ASN1::ASN1Data#tag)が :UNIVERSAL ならば
この値は無視されます。
nil は :IMPLICIT と同義です。
@see OpenSSL::ASN1::Primitive#tagging= -
OpenSSL
:: BN # copy(other) -> self (33340.0) -
other の内容を自身にコピーします。
other の内容を自身にコピーします。
@param other コピーする OpenSSL::BN のオブジェクト
@raise OpenSSL::BNError コピーに失敗 -
OpenSSL
:: Netscape :: SPKI # challenge -> String (33340.0) -
SPKI オブジェクトに設定されたチャレンジ文字列を返します。
SPKI オブジェクトに設定されたチャレンジ文字列を返します。
@raise OpenSSL::Netscape::SPKIError 文字列が設定されていない場合に発生します
@see OpenSSL::Netscape::SPKI#challenge= -
OpenSSL
:: OCSP :: CertificateId # cmp(other) -> bool (33340.0) -
2つの CertificateId オブジェクトを比較し、 同じものであれば真を返します。
2つの CertificateId オブジェクトを比較し、
同じものであれば真を返します。
@param other 比較する OpenSSL::OCSP::CertificateId オブジェクト
@see OpenSSL::OCSP::CertificateId#cmp_issuer -
OpenSSL
:: OCSP :: CertificateId # cmp _ issuer(other) -> bool (33340.0) -
2つの CertificateId オブジェクトの issuer(証明書発行者)を比較し、 同じ issuer であれば真を返します。
2つの CertificateId オブジェクトの issuer(証明書発行者)を比較し、
同じ issuer であれば真を返します。
@param other 比較する OpenSSL::OCSP::CertificateId オブジェクト
@see OpenSSL::OCSP::CertificateId#cmp -
OpenSSL
:: PKCS7 # add _ crl(crl) -> self (33340.0) -
署名に添付する CRL を追加します。
署名に添付する CRL を追加します。
@param crl 追加する CLR (OpenSSL::X509::CRL オブジェクト)
@raise OpenSSL::PKCS7::PKCS7Error 追加に失敗した場合に発生します。 -
OpenSSL
:: PKCS7 # detached -> bool (33340.0) -
平文に署名を付ける形式(multipart/signed)かどうかを返します。
平文に署名を付ける形式(multipart/signed)かどうかを返します。
OpenSSL::PKCS7.sign で flags に OpenSSL::PKCS7::DETACHED
を渡した場合に真になります。 -
OpenSSL
:: PKCS7 # detached? -> bool (33340.0) -
平文に署名を付ける形式(multipart/signed)かどうかを返します。
平文に署名を付ける形式(multipart/signed)かどうかを返します。
OpenSSL::PKCS7.sign で flags に OpenSSL::PKCS7::DETACHED
を渡した場合に真になります。 -
OpenSSL
:: PKey :: DH # compute _ key(bn) -> String (33340.0) -
自分の秘密鍵と相手の公開鍵から鍵文字列を計算し、返します。
自分の秘密鍵と相手の公開鍵から鍵文字列を計算し、返します。
相手の公開鍵は OpenSSL::BN か Integer である必要があります。
@param bn 相手の公開鍵(OpenSSL::BN) -
OpenSSL
:: PKey :: DH # generate _ key! -> self (33340.0) -
鍵パラメータ p と g から鍵対を生成しなおし、 自身にセットします。
鍵パラメータ p と g から鍵対を生成しなおし、
自身にセットします。
以前の鍵対の値は廃棄されます。
生成した値は OpenSSL::PKey::DH#params_ok? で
安全かどうかチェックしてから利用してください。
@raise OpenSSL::PKey::DHError 鍵の生成に失敗した場合に発生します -
OpenSSL
:: PKey :: DH # params _ ok? -> bool (33340.0) -
パラメータ p と g が安全かどうかを判定します。
パラメータ p と g が安全かどうかを判定します。
@see OpenSSL::PKey::DH#generate_key!,
OpenSSL::PKey::DH.generate