ライブラリ
-
net
/ http (22) -
net
/ imap (2) -
net
/ pop (1) -
net
/ smtp (4) - open-uri (1)
- openssl (559)
-
rubygems
/ security (1) -
webrick
/ https (3) -
webrick
/ ssl (1)
クラス
-
Gem
:: Security :: Signer (1) - Integer (1)
-
Net
:: HTTP (22) -
Net
:: IMAP (2) -
Net
:: POP3 (1) -
Net
:: SMTP (4) -
OpenSSL
:: ASN1 :: ASN1Data (7) -
OpenSSL
:: ASN1 :: Constructive (3) -
OpenSSL
:: ASN1 :: ObjectId (5) -
OpenSSL
:: ASN1 :: Primitive (2) -
OpenSSL
:: BN (44) -
OpenSSL
:: Cipher (18) -
OpenSSL
:: Config (10) -
OpenSSL
:: Digest (6) -
OpenSSL
:: Engine (10) -
OpenSSL
:: HMAC (7) -
OpenSSL
:: Netscape :: SPKI (10) -
OpenSSL
:: OCSP :: BasicResponse (6) -
OpenSSL
:: OCSP :: CertificateId (3) -
OpenSSL
:: OCSP :: Request (7) -
OpenSSL
:: OCSP :: Response (4) -
OpenSSL
:: PKCS12 (4) -
OpenSSL
:: PKCS7 (26) -
OpenSSL
:: PKCS7 :: RecipientInfo (3) -
OpenSSL
:: PKCS7 :: SignerInfo (4) -
OpenSSL
:: PKey :: DH (17) -
OpenSSL
:: PKey :: DSA (24) -
OpenSSL
:: PKey :: EC (16) -
OpenSSL
:: PKey :: EC :: Group (17) -
OpenSSL
:: PKey :: EC :: Point (9) -
OpenSSL
:: PKey :: PKey (2) -
OpenSSL
:: PKey :: RSA (32) -
OpenSSL
:: SSL :: SSLContext (54) -
OpenSSL
:: SSL :: SSLServer (7) -
OpenSSL
:: SSL :: SSLSocket (25) -
OpenSSL
:: SSL :: Session (9) -
OpenSSL
:: X509 :: Attribute (5) -
OpenSSL
:: X509 :: CRL (21) -
OpenSSL
:: X509 :: Certificate (25) -
OpenSSL
:: X509 :: Extension (10) -
OpenSSL
:: X509 :: ExtensionFactory (16) -
OpenSSL
:: X509 :: Name (7) -
OpenSSL
:: X509 :: Request (16) -
OpenSSL
:: X509 :: Revoked (7) -
OpenSSL
:: X509 :: Store (16) -
OpenSSL
:: X509 :: StoreContext (13) -
WEBrick
:: GenericServer (1) -
WEBrick
:: HTTPRequest (3)
モジュール
-
OpenSSL
:: Buffering (24) -
OpenSSL
:: SSL :: SocketForwarder (7) -
OpenURI
:: Meta (1)
キーワード
- % (1)
- * (1)
- ** (1)
- + (1)
- - (1)
-
/ (1) - << (4)
- <=> (2)
- == (4)
- === (1)
- >> (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
_ entry (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) -
asn1
_ flag= (1) - attributes (1)
- attributes= (1)
- basic (1)
-
bit
_ set? (1) -
block
_ length (1) -
block
_ size (1) -
ca
_ certs (1) -
ca
_ file (2) -
ca
_ file= (2) -
ca
_ path (2) -
ca
_ path= (2) - cert (3)
- cert= (2)
-
cert
_ store (2) -
cert
_ store= (2) - certid (1)
- certificate (1)
- certificates (1)
- certificates= (1)
- chain (2)
- challenge (1)
- challenge= (1)
-
check
_ key (1) -
check
_ nonce (1) -
check
_ private _ key (1) - cipher (3)
- cipher= (1)
- ciphers (2)
- ciphers= (2)
- cleanup (1)
-
clear
_ bit! (1) -
client
_ ca (1) -
client
_ ca= (1) -
client
_ cert (1) -
client
_ cert _ cb (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)
- 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)
- critical? (1)
- crl (1)
- crl= (1)
- crls (1)
- crls= (1)
-
ctrl
_ cmd (1) -
current
_ cert (1) -
current
_ crl (1) -
curve
_ name (1) - d (1)
- d= (1)
- data (1)
- data= (1)
- decrypt (3)
- degree (1)
- detached (1)
- detached= (1)
- detached? (1)
-
dh
_ compute _ key (1) - digest (2)
-
digest
_ length (1) - dmp1 (1)
- dmp1= (1)
- dmq1 (1)
- dmq1= (1)
-
do
_ not _ reverse _ lookup= (1) -
dsa
_ sign _ asn1 (1) -
dsa
_ verify _ asn1 (1) - e (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= (1)
-
error
_ depth (1) -
error
_ string (3) -
error
_ string= (1) - export (5)
- extensions (3)
- extensions= (3)
-
extra
_ chain _ cert (1) -
extra
_ chain _ cert= (1) - fcntl (1)
- final (1)
- finish (1)
- flags= (2)
- flush (1)
-
flush
_ sessions (1) - g (2)
- g= (2)
- gcd (1)
-
generate
_ key (1) -
generate
_ key! (1) - generator (1)
-
get
_ value (1) - getc (1)
- gets (1)
- getsockopt (1)
- group (2)
- group= (1)
-
hash
_ old (1) - hexdigest (1)
- hostname (1)
- hostname= (1)
- id (2)
- infinity? (1)
- inspect (1)
- invert! (1)
- io (1)
- iqmp (1)
- iqmp= (1)
- issuer (4)
- issuer= (2)
-
issuer
_ certificate (1) -
issuer
_ certificate= (1) - iv= (1)
-
iv
_ len (1) - key (4)
- key= (3)
-
key
_ len (1) -
key
_ len= (1) -
last
_ update (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)
- n= (1)
- name (4)
- negative? (1)
-
next
_ update (1) -
next
_ update= (1) -
not
_ after (1) -
not
_ after= (1) -
not
_ before (1) -
not
_ before= (1) -
num
_ bits (1) -
num
_ bytes (1) - odd? (1)
- oid (3)
- oid= (2)
-
on
_ curve? (1) - one? (1)
- order (1)
- p (3)
- p= (3)
- padding= (1)
- params (3)
-
params
_ ok? (1) -
peer
_ cert (2) -
peer
_ cert _ chain (1) - peeraddr (1)
- pending (1)
-
pkcs5
_ keyivgen (1) -
point
_ conversion _ form (1) -
point
_ conversion _ form= (1) -
post
_ connection _ check (1) -
pretty
_ print (1) - prime? (2)
-
prime
_ fasttest? (1) - print (1)
- printf (1)
-
priv
_ key (2) -
priv
_ key= (2) - private? (2)
-
private
_ decrypt (1) -
private
_ encrypt (1) -
private
_ key (1) -
private
_ key= (1) -
private
_ key? (1) -
pub
_ key (2) -
pub
_ key= (2) - public? (2)
-
public
_ decrypt (1) -
public
_ encrypt (1) -
public
_ key (6) -
public
_ key= (4) -
public
_ key? (1) - purpose= (2)
- puts (1)
- q (2)
- 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) -
renegotiation
_ cb= (1) - reset (3)
- revoked (1)
- revoked= (1)
- rshift! (1)
- section (1)
- sections (1)
- seed (1)
- seed= (1)
- serial (5)
- serial= (2)
-
server
_ cert (1) -
servername
_ cb (1) -
servername
_ cb= (1) - session (1)
- session= (1)
-
session
_ add (1) -
session
_ cache _ mode (1) -
session
_ cache _ mode= (1) -
session
_ cache _ size (1) -
session
_ cache _ size= (1) -
session
_ cache _ stats (1) -
session
_ get _ cb (1) -
session
_ get _ cb= (1) -
session
_ id _ context (1) -
session
_ id _ context= (1) -
session
_ new _ cb (1) -
session
_ new _ cb= (1) -
session
_ remove (1) -
session
_ remove _ cb (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) -
ssl
_ timeout= (2) -
ssl
_ version= (2) -
start
_ immediately (1) -
start
_ immediately= (1) - starttls (2)
- state (1)
- status (2)
-
status
_ string (1) - subject (2)
- subject= (2)
-
subject
_ certificate (1) -
subject
_ certificate= (1) -
subject
_ request (1) -
subject
_ request= (1) - sync (1)
- sync= (1)
-
sync
_ close (1) -
sync
_ close= (1) - sysclose (1)
- sysread (1)
- syssign (1)
- sysverify (1)
- syswrite (1)
- tag (1)
- tag= (1)
-
tag
_ class (1) -
tag
_ class= (1) - tagging (2)
- tagging= (2)
- time (2)
- time= (4)
- timeout (2)
- timeout= (2)
-
tmp
_ dh _ callback (1) -
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) - trust= (2)
- type (1)
- type= (1)
- ucmp (1)
- ungetc (1)
- update (3)
-
use
_ ssl? (1) - value (5)
- value= (3)
- verify (11)
-
verify
_ callback (3) -
verify
_ callback= (3) -
verify
_ depth (2) -
verify
_ depth= (2) -
verify
_ mode (1) -
verify
_ mode= (2) -
verify
_ result (1) - version (3)
- version= (3)
- write (1)
-
write
_ nonblock (1) - zero? (1)
検索結果
先頭5件
-
OpenSSL
:: PKey :: RSA # q -> OpenSSL :: BN (33307.0) -
鍵の2つめの素数です。
鍵の2つめの素数です。
秘密鍵の情報です。 -
OpenSSL
:: X509 :: CRL # extensions -> [OpenSSL :: X509 :: Extension] (33307.0) -
CRL が持っている拡張領域のデータを配列で返します。
CRL が持っている拡張領域のデータを配列で返します。 -
OpenSSL
:: X509 :: CRL # issuer -> OpenSSL :: X509 :: Name (33307.0) -
CRL の発行者を返します。
CRL の発行者を返します。 -
OpenSSL
:: X509 :: CRL # revoked -> [OpenSSL :: X509 :: Revoked] (33307.0) -
自身が持っている失効した証明書の配列を返します。
自身が持っている失効した証明書の配列を返します。 -
OpenSSL
:: X509 :: Certificate # extensions -> [OpenSSL :: X509 :: Extension] (33307.0) -
証明書の拡張領域の内容を返します。
証明書の拡張領域の内容を返します。 -
OpenSSL
:: X509 :: Certificate # issuer -> OpenSSL :: X509 :: Name (33307.0) -
証明書の発行者の名前を返します。
証明書の発行者の名前を返します。 -
OpenSSL
:: X509 :: Certificate # subject -> OpenSSL :: X509 :: Name (33307.0) -
証明書の所有者の名前を返します。
証明書の所有者の名前を返します。 -
OpenSSL
:: X509 :: ExtensionFactory # config -> OpenSSL :: Config (33307.0) -
自身に設定されているコンフィグファイルオブジェクトを設定します。
自身に設定されているコンフィグファイルオブジェクトを設定します。 -
OpenSSL
:: X509 :: ExtensionFactory # crl -> OpenSSL :: X509 :: CRL | nil (33307.0) -
自身に設定された証明書失効リストオブジェクトを返します。
自身に設定された証明書失効リストオブジェクトを返します。
設定されていない場合は nil を返します。 -
OpenSSL
:: X509 :: ExtensionFactory # issuer _ certificate -> OpenSSL :: X509 :: Certificate | nil (33307.0) -
自身に設定されている発行者(issuer)の証明書オブジェクトを返します。
自身に設定されている発行者(issuer)の証明書オブジェクトを返します。
証明書が設定されていない場合は nil を返します。 -
OpenSSL
:: X509 :: ExtensionFactory # subject _ certificate -> OpenSSL :: X509 :: Certificate | nil (33307.0) -
自身に設定されている所有者(subject)の証明書オブジェクトを返します。
自身に設定されている所有者(subject)の証明書オブジェクトを返します。
証明書が設定されていない場合は nil を返します。 -
OpenSSL
:: X509 :: ExtensionFactory # subject _ request -> OpenSSL :: X509 :: Request | nil (33307.0) -
自身に設定されている証明書署名要求オブジェクトを返します。
自身に設定されている証明書署名要求オブジェクトを返します。
設定されていない場合は nil を返します。 -
OpenSSL
:: X509 :: Revoked # extensions -> [OpenSSL :: X509 :: Extension] (33307.0) -
拡張領域のデータを配列で返します。
拡張領域のデータを配列で返します。 -
OpenSSL
:: X509 :: Revoked # serial -> OpenSSL :: BN (33307.0) -
失効した証明書のシリアルを返します。
失効した証明書のシリアルを返します。 -
OpenSSL
:: SSL :: SSLContext # options=(options) (33292.0) -
オプションを設定します。
オプションを設定します。
以下の値の OR で指定します。
* 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
* OpenSS... -
OpenSSL
:: PKCS7 # verify(certs , store , indata = nil , flags = 0) -> bool (33220.0) -
署名を検証します。
署名を検証します。
検証に成功した場合は真を、失敗した場合は偽を返します。
certs には署名者の証明書を含む配列を渡します。
通常 S/MIME 署名には証明者の証明書が含まれていますが、
OpenSSL::PKCS7.sign で OpenSSL::PKCS7::NOCERTS を渡した
場合には含まれていないので、明示的に渡す必要があります。
このメソッドは配列から適切な証明書を自動的に選択します。
store には検証に用いる証明書ストアを渡します。
検証に必要な信頼できる CA 証明書をあらかじめ証明書ストアに含めておく
必要があります。
indata は署名の対象となった... -
OpenSSL
:: X509 :: Store # purpose=(purpose) (33202.0) -
証明書の使用目的を設定します。
証明書の使用目的を設定します。
以下の定数値のうちいずれか1つを渡します。
* OpenSSL::X509::PURPOSE_ANY
* OpenSSL::X509::PURPOSE_CRL_SIGN
* OpenSSL::X509::PURPOSE_NS_SSL_SERVER
* OpenSSL::X509::PURPOSE_SMIME_ENCRYPT
* OpenSSL::X509::PURPOSE_SMIME_SIGN
* OpenSSL::X509::PURPOSE_SSL_CLIENT
* OpenSSL::X509::PURPOSE_SSL_SERVE... -
OpenSSL
:: SSL :: SSLContext # session _ cache _ mode=(mode) (33184.0) -
セッションキャッシュのモードを指定します。
セッションキャッシュのモードを指定します。
以下の定数のORを引数として渡します。
* OpenSSL::SSL::SSLContext::SESSION_CACHE_OFF
* OpenSSL::SSL::SSLContext::SESSION_CACHE_CLIENT
* OpenSSL::SSL::SSLContext::SESSION_CACHE_SERVER
* OpenSSL::SSL::SSLContext::SESSION_CACHE_BOTH
* OpenSSL::SSL::SSLContext::SESSION_CACHE_NO_AUTO_CLEAR
... -
OpenSSL
:: X509 :: Name # to _ s(flags=nil) -> String (33184.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
:: SSL :: SSLContext # client _ cert _ cb=(cb) (33178.0) -
OpenSSL::SSL::SSLContext#cert= でクライアント証明書を セットしていなかった場合にサーバからクライアント証明書の要求が来たときに 呼びだされるコールバックオブジェクトを設定します。
OpenSSL::SSL::SSLContext#cert= でクライアント証明書を
セットしていなかった場合にサーバからクライアント証明書の要求が来たときに
呼びだされるコールバックオブジェクトを設定します。
コールバックに渡される引数は以下のように
proc{|sslsocket| ... }
1つで、利用している OpenSSL::SSL::SSLSocket
オブジェクトが渡されます。そのオブジェクトから必要な証明書を見つけるのに
必要な情報を取得します。
コールバックはクライアント証明書(OpenSSL::X509::Certificate)
とその秘密鍵(OpenSSL::P... -
OpenSSL
:: BN # <=>(other) -> -1 | 0 | 1 (33166.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 (33166.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 (33166.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
:: Engine # set _ default(flags) -> true (33166.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
:: X509 :: StoreContext # error=(error) (33166.0) -
エラーコードを設定します。
エラーコードを設定します。
OpenSSL::X509::StoreContext#verify を呼びだし、
証明書チェインの各証明書を検証した
コールバック(OpenSSL::X509::Store#verify_callback=)が呼び出され、
StoreContext オブジェクトが渡されますが、このメソッドでエラーコードを
設定し、コールバックの返り値を false にすると、最終的なエラーコードが
ここで設定したものになります。OpenSSL::X509::StoreContext#error_string
もその値に応じた文字列が返るようになります。
例:
requi... -
OpenSSL
:: X509 :: StoreContext # purpose=(purpose) (33166.0) -
証明書の使用目的を設定します。
証明書の使用目的を設定します。
以下の定数値のうちいずれか1つを渡します。
* OpenSSL::X509::PURPOSE_ANY
* OpenSSL::X509::PURPOSE_CRL_SIGN
* OpenSSL::X509::PURPOSE_NS_SSL_SERVER
* OpenSSL::X509::PURPOSE_SMIME_ENCRYPT
* OpenSSL::X509::PURPOSE_SMIME_SIGN
* OpenSSL::X509::PURPOSE_SSL_CLIENT
* OpenSSL::X509::PURPOSE_SSL_SERVE... -
OpenSSL
:: X509 :: Store # trust=(trust) (33148.0) -
@todo
@todo
以下のいずれかの定数の値を指定します。
* OpenSSL::X509::TRUST_COMPAT
* OpenSSL::X509::TRUST_EMAIL
* OpenSSL::X509::TRUST_OBJECT_SIGN
* OpenSSL::X509::TRUST_SSL_CLIENT
* OpenSSL::X509::TRUST_SSL_SERVER
* OpenSSL::X509::TRUST_OCSP_REQUEST
* OpenSSL::X509::TRUST_OCSP_SIGN
@param trust 整数値
@see OpenSSL::X5... -
OpenSSL
:: X509 :: StoreContext # trust=(trust) (33148.0) -
@todo
@todo
以下のいずれかの定数の値を指定します。
* OpenSSL::X509::TRUST_COMPAT
* OpenSSL::X509::TRUST_EMAIL
* OpenSSL::X509::TRUST_OBJECT_SIGN
* OpenSSL::X509::TRUST_SSL_CLIENT
* OpenSSL::X509::TRUST_SSL_SERVER
* OpenSSL::X509::TRUST_OCSP_REQUEST
* OpenSSL::X509::TRUST_OCSP_SIGN
@param trust 整数値
@see OpenSSL::X... -
OpenSSL
:: BN # lshift!(n) -> self (33142.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 (33142.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 (33130.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 (33130.0) -
検証時のエラーコードを返します。
検証時のエラーコードを返します。
OpenSSL::X509::StoreContext#verify を呼びだし、
証明書チェインの各証明書を検証した
コールバック(OpenSSL::X509::Store#verify_callback=)が呼び出され、
StoreContext オブジェクトが渡されますが、このメソッドを呼ぶと
直前の証明書検証結果のエラーコードが得られます。
OpenSSL::X509::StoreContext#verify を呼び出したあと、
このメソッドを呼ぶと検証の最終的な検証結果のエラーコードを返します。
エラーコードの整数値は OpenSSL::X50... -
OpenSSL
:: BN # prime _ fasttest?(checks=nil , vtrivdiv=true) -> bool (33112.0) -
自身が素数であるなら true を返します。
自身が素数であるなら true を返します。
vtrivdiv が真である場合には、 Miller-Rabin 法での
判定の前に小さな素数で割ることで素数か否かを
調べます。自身が小さな素数である場合にはこの手順
により素数ではないと誤った返り値を返します。
Miller-Rabin 法により確率的に判定します。
checksで指定した回数だけ繰り返します。
checksがnilである場合は OpenSSL が適切な
回数を判断します。
//emlist[][ruby]{
require 'openssl'
# 181 は 「小さな素数」である
OpenSSL::BN.new("18... -
OpenSSL
:: OCSP :: BasicResponse # sign(signer _ cert , signer _ key , certs = [] , flags=0) -> self (33112.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 (33112.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 (33112.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 (33112.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 (33112.0) -
証明書を証明書ストアに存在する CA 証明書で検証します。
証明書を証明書ストアに存在する CA 証明書で検証します。
chain には検証したい証明書の証明書チェイン全体を
OpenSSL::X509::Certificate の配列で渡します。
検証に成功した場合は true を、失敗した場合は false を返します。
このメソッドをブロック付きで呼び出すと、そのブロックが
検証をフィルタするコールバックと見做されます。このコールバックについては
OpenSSL::X509::Store#verify_callback= を参照してください。
内部では OpenSSL::X509::StoreContext.new と
OpenSSL:... -
OpenSSL
:: SSL :: SSLServer # start _ immediately=(bool) (33106.0) -
OpenSSL::SSL::SSLServer#accept で accept したらすぐに TLS/SSL ハンドシェイクを実行するかどうかを設定します。
OpenSSL::SSL::SSLServer#accept で
accept したらすぐに TLS/SSL ハンドシェイクを実行するかどうかを設定します。
これを真に設定した場合は、OpenSSL::SSL::SSLServer#accept で
接続したソケットに対し OpenSSL::SSL::SSLSocket#accept を
呼び、ハンドシェイクを実行します。
デフォルトでは true です。
@param bool 設定する真偽値。
@see OpenSSL::SSL::SSLServer#start_immediately -
OpenSSL
:: X509 :: Store # error -> Integer | nil (33106.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 # set _ bit!(n) -> self (33094.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
:: BN # to _ s(base=10) -> String (33094.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
:: Buffering # sync=(sync) (33094.0) -
出力の同期モードを設定します。
出力の同期モードを設定します。
true に設定すると同期モードになり、
OpenSSL::Buffering#write_nonblock と
OpenSSL::SSL::SSLSocket#syswrite を除くすべての書き込み
(OpenSSL::Buffering#write, OpenSSL::Buffering#print など)
はバッファリングされずに出力されます。
false に設定すると書き込みはバッファリングされます。
@param sync 設定するモード(真偽値)
@see OpenSSL::Buffering#sync -
OpenSSL
:: PKey :: EC # public _ key? -> bool (33094.0) -
EC オブジェクトが公開鍵を保持していれば真を返します。
EC オブジェクトが公開鍵を保持していれば真を返します。
OpenSSL::PKey::RSA や OpenSSL::PKey::DSA と
異なり、EC オブジェクトが公開鍵を含まない場合が存在します。
例えば、OpenSSL::PKey::EC.new でパラメータとなる群のみを
指定して EC オブジェクトを作った場合は、公開鍵も秘密鍵も
保持していません。この場合 OpenSSL::PKey::EC#generate_key で
鍵を生成するまで、その状態のままです。
このメソッドを呼ぶ前に OpenSSL::Random の各モジュール関数に
よって乱数が適切に初期化されている必... -
OpenSSL
:: SSL :: SSLContext # session _ id _ context=(id _ context) (33094.0) -
セッション ID コンテキストを文字列で設定します。
セッション ID コンテキストを文字列で設定します。
セッション ID コンテキストは、セッションをグループ化するための
識別子で、セッション ID コンテキストとセッション ID の両方が
一致する場合に同一のセッションであると判別されます。
この OpenSSL::SSL::SSLContext オブジェクトで
生成されたコネクション(OpenSSL::SSL::SSLSocket)に
関連付けられたセッションはセッション ID コンテキスト
を共有します。
セッション ID コンテキストはセッションのグループを
識別するための識別子であり、一方セッション ID は各セッションを
識別... -
OpenSSL
:: SSL :: SSLContext # verify _ callback=(proc) (33094.0) -
検証をフィルタするコールバックを設定します。
検証をフィルタするコールバックを設定します。
OpenSSL::X509::Store#verify_callback= と同じ働きをします。
コールバックには Proc や Method を渡します。
渡されたコールバックオブジェクトは証明書チェインの検証時に
チェインに含まれる各証明書の署名を検証するたびに呼びだされます。
そのときに渡される引数は2つで、1つめは検証が成功したかの真偽値、
2つめは検証後の状態を保存した
OpenSSL::X509::StoreContext オブジェクトです。
このコールバックには2つの役割があります。1つ目はコンテキストオブジェクト
を調べること... -
OpenSSL
:: SSL :: SSLContext # verify _ mode=(mode) (33094.0) -
検証モードを設定します。
検証モードを設定します。
以下の定数の OR を取って指定します。
* OpenSSL::SSL::VERIFY_NONE
* OpenSSL::SSL::VERIFY_PEER
* OpenSSL::SSL::VERIFY_CLIENT_ONCE
* OpenSSL::SSL::VERIFY_FAIL_IF_NO_PEER_CERT
これらの定数の意味はクライアントモードとサーバモードでは異なる
意味を持ちます。
デフォルトは nil で、VERIFY_NONE を意味します。
@param mode 設定するモード(整数値)
@see OpenSSL::SSL::SS... -
OpenSSL
:: SSL :: SSLSocket # accept _ nonblock -> self (33094.0) -
ノンブロッキング方式で TLS/SSL 通信をサーバモードとして開始し、 クライアントとのハンドシェイクを実行します。
ノンブロッキング方式で
TLS/SSL 通信をサーバモードとして開始し、
クライアントとのハンドシェイクを実行します。
IO が読み込み待ち、もしくは書き込み待ちになった場合は例外を
発生させ、ハンドシェイクを中断します。IO が読み込み/書き込み
可能状態になってからこのメソッドをもう一度呼ぶと
ハンドシェイクを再開します。
@raise OpenSSL::SSL::SSLError ハンドシェイクに失敗した(VERIFY_PEER で
証明書の検証に失敗した場合や、プロトコル合意に失敗したなど)
場合に発生します
(実際は OpenSSL::S... -
OpenSSL
:: SSL :: SSLSocket # hostname=(hostname) (33094.0) -
TLS の Server Name Indication(SNI) 拡張で利用するサーバのホスト名を設定します。
TLS の Server Name Indication(SNI) 拡張で利用するサーバのホスト名を設定します。
Server Name Indication については 3546 を参照してください。
このメソッドはハンドシェイク時にクライアント側がサーバ側に
サーバのホスト名を伝えるために用います。そのため、
クライアント側が OpenSSL::SSL::SSLSocket#connect を呼ぶ前に
このメソッドでホスト名を指定する必要があります。
hostname に nil を渡すと SNI 拡張を利用しません。
サーバ側については OpenSSL::SSL::SSLCont... -
OpenSSL
:: SSL :: SSLSocket # post _ connection _ check(hostname) -> true (33094.0) -
接続後検証を行います。
接続後検証を行います。
検証に成功した場合は true を返し、失敗した場合は例外
OpenSSL::SSL::SSLError を発生させます。
OpenSSL の API では、
OpenSSL::SSL::SSLSocket#connect や OpenSSL::SSL::SSLSocket#accept
での検証は実用的には不完全です。
CA が証明書に署名してそれが失効していないことしか確認しません。
実用上は証明書に記載されている事項を見て、接続先が妥当であるかを確認する
必要があります。通常は接続先ホストの FQDN と証明書に記載されている FQDN が
一致しているか... -
OpenSSL
:: SSL :: SSLSocket # session=(sess) (33094.0) -
ハンドシェイクで再利用する SSL セッションを 設定します。
ハンドシェイクで再利用する SSL セッションを
設定します。
このメソッドはクライアント側でのみ有用です。
セッションを再利用する場合は、
OpenSSL::SSL::SSLSocket#connect を呼ぶ前に
このメソッドでセッションオブジェクト
(OpenSSL::SSL::Session のインスタンス)
を設定します。
サーバ側の場合 OpenSSL::SSL::SSLContext がキャッシュの保持と
管理を行います。
@param sess 設定するセッション
@see OpenSSL::SSL::SSLSocket#session,
OpenSSL::SS... -
OpenSSL
:: X509 :: Store # flags=(flags) (33094.0) -
CRL に関するフラグを設定します。
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 設定するフラグ(整... -
OpenSSL
:: X509 :: Store # verify _ callback=(proc) (33094.0) -
検証をフィルタするコールバックを設定します。
検証をフィルタするコールバックを設定します。
コールバックには Proc や Method を渡します。
渡されたコールバックオブジェクトは証明書チェインの検証時に
チェインに含まれる各証明書の署名を検証するたびに呼びだされます。
そのときに渡される引数は以下のように
proc{|ok, ctx| ... }
2つで、1つめは検証が成功したかの真偽値、
2つめは検証後の状態を保存した
OpenSSL::X509::StoreContext オブジェクトです。
このコールバックには2つの役割があります。1つ目はコンテキストオブジェクト
を調べることで詳細なエラー情報を得ることです。2つ目... -
OpenSSL
:: X509 :: StoreContext # verify -> bool (33094.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
:: SSL :: SSLContext # key=(key) (33088.0) -
OpenSSL::SSL::SSLContext#cert= で設定された自分自身を証明するための 証明書の公開鍵に対応する秘密鍵を設定します。
OpenSSL::SSL::SSLContext#cert= で設定された自分自身を証明するための
証明書の公開鍵に対応する秘密鍵を設定します。
デフォルトな nil です。
@param key 設定する秘密鍵(OpenSSL::PKey::PKey のサブクラスのインスタンス)
@see OpenSSL::SSL::SSLContext#key -
OpenSSL
:: BN # bit _ set?(n) -> bool (33076.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 (33076.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 (33076.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
:: Netscape :: SPKI # sign(key , digest) -> self (33076.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 (33076.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 (33076.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 (33076.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 (33076.0) -
群のパラメータを設定します。
群のパラメータを設定します。
@param generator 生成元(OpenSSL::PKey::EC::Point オブジェクト)
@param order 生成元の位数(OpenSSL::BN オブジェクト)
@param cofactor 余因子OpenSSL::BN オブジェクト
@raise OpenSSL::PKey::EC::Group::Error 設定に失敗した場合に発生します -
OpenSSL
:: SSL :: SSLContext # cert _ store=(store) (33076.0) -
接続相手の証明書の検証のために使う、信頼している CA 証明書を 含む証明書ストアを設定します。
接続相手の証明書の検証のために使う、信頼している CA 証明書を
含む証明書ストアを設定します。
通常は OpenSSL::SSL::SSLContext#ca_path= や
OpenSSL::SSL::SSLContext#ca_file= で証明書を設定しますが、
CRL を使いたいなど、より詳細な設定をしたい場合にはこれを使います。
デフォルトは nil (証明書ストアを指定しない)です。
@param store 設定する証明書ストア(OpenSSL::X509::Store のインスタンス)
@see OpenSSL::SSL::SSLContext#cert_store -
OpenSSL
:: SSL :: SSLContext # session _ get _ cb=(cb) (33076.0) -
セッションキャッシュを探索し、内部のキャッシュテーブルには 見付からなかった場合に呼び出されるコールバックを設定します。
セッションキャッシュを探索し、内部のキャッシュテーブルには
見付からなかった場合に呼び出されるコールバックを設定します。
コールバックオブジェクトを call するときの引数は
[ 接続オブジェクト(OpenSSL::SSL::SSLSocket), セッションID(文字列) ]
という配列です。このコールバックの返り値が
OpenSSL::SSL::Session オブジェクトならば、
それをキャッシュ値として利用します。それ以外を返したならば、
キャッシュは見つからなかったものとして取り扱われます。
セッションキャッシュについて詳しくは OpenSSL::SSL::Session ... -
OpenSSL
:: SSL :: SSLContext # session _ new _ cb=(cb) (33076.0) -
新たなセッションが作られたときに呼び出されるコールバックを 指定します。
新たなセッションが作られたときに呼び出されるコールバックを
指定します。
コールバックオブジェクトを call するときの引数は
[ 接続オブジェクト(OpenSSL::SSL::SSLSocket), 新たなセッション(OpenSSL::SSL::Session)]
という配列です。
セッションキャッシュについて詳しくは OpenSSL::SSL::Session を
見てください。
@param cb コールバックオブジェクト(Proc もしくは Method)
@see OpenSSL::SSL::SSLContext#session_new_cb -
OpenSSL
:: SSL :: SSLContext # session _ remove _ cb=(cb) (33076.0) -
セッションが内部キャッシュから破棄されたときに呼び出される コールバックを設定します。
セッションが内部キャッシュから破棄されたときに呼び出される
コールバックを設定します。
コールバックオブジェクトを call するときの引数は
[ SSLContextオブジェクト(OpenSSL::SSL::SSLContext),
破棄されるセッション(OpenSSL::SSL::Session)]
という配列です。
セッションキャッシュについて詳しくは OpenSSL::SSL::Session を
見てください。
@param cb コールバックオブジェクト(Proc もしくは Method)
@see OpenSSL::SSL::SSLContext#sessi... -
OpenSSL
:: SSL :: SSLContext # tmp _ dh _ callback=(cb) (33076.0) -
一時的 DH 鍵を生成するためのコールバックを設定します。
一時的 DH 鍵を生成するためのコールバックを設定します。
コールバックには Proc や Method を渡します。
暗号で一時的な DH 鍵を利用する場合にはこのコールバックが
呼びだされ、呼びだされたブロックは適切な鍵パラメータを返さなければ
なりません。これで設定するブロックは
proc{|sslsocket, is_export, keylen| ... }
という引数を取るようにします。それぞれの引数の意味は
* sslsocket 通信に使われる OpenSSL::SSL::SSLSocket オブジェクト
* is_export 輸出規制のある暗号を利用するかど... -
OpenSSL
:: SSL :: SSLSocket # connect _ nonblock -> self (33076.0) -
ノンブロッキング方式で TLS/SSL 通信をクライアントモードとして開始し、 サーバとのハンドシェイクを実行します。
ノンブロッキング方式で
TLS/SSL 通信をクライアントモードとして開始し、
サーバとのハンドシェイクを実行します。
IO が読み込み待ち、もしくは書き込み待ちになった場合は例外を
発生させ、ハンドシェイクを中断します。IO が読み込み/書き込み
可能状態になってからこのメソッドをもう一度呼ぶと
ハンドシェイクを再開します。
@raise OpenSSL::SSL::SSLError ハンドシェイクに失敗した(VERIFY_PEER で
証明書の検証に失敗した場合や、プロトコル合意に失敗したなど)
場合に発生します
@raise OpenSSL::SSL::S... -
OpenSSL
:: X509 :: Attribute # value=(val) (33076.0) -
attribute の値を設定します。
attribute の値を設定します。
引数には OpenSSL::ASN1::ASN1Data のオブジェクトを渡さなければなりません。
@param val 設定する値の OpenSSL::ASN1::ASN1Data オブジェクト
@raise OpenSSL::X509::AttributeError val が不正であった場合に発生します
@see OpenSSL::X509::Attribute#value -
OpenSSL
:: X509 :: ExtensionFactory # config=(config) (33076.0) -
自身にコンフィグファイルオブジェクトを設定します。
自身にコンフィグファイルオブジェクトを設定します。
例
require 'openssl'
factory.config = OpenSSL::Config.load(OpenSSL::Config::DEFAULT_CONFIG_FILE)
@param config 設定ファイル(OpenSSL::Config オブジェクト) -
OpenSSL
:: BN # negative? -> bool (33070.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
:: SSL :: SSLContext # client _ cert _ cb -> Proc | nil (33070.0) -
OpenSSL::SSL::SSLContext#cert= でクライアント証明書を セットしていなかった場合にサーバからクライアント証明書の要求が来たときに 呼びだされるコールバックオブジェクトを返します。
OpenSSL::SSL::SSLContext#cert= でクライアント証明書を
セットしていなかった場合にサーバからクライアント証明書の要求が来たときに
呼びだされるコールバックオブジェクトを返します。
デフォルトは nil (コールバックなし)です。
@see OpenSSL::SSL::SSLContext#client_cert_cb= -
OpenSSL
:: SSL :: SSLContext # session _ add(sess) -> bool (33070.0) -
セッションを OpenSSL::SSL::SSLContext 内部のキャッシュ領域に 追加します。
セッションを OpenSSL::SSL::SSLContext 内部のキャッシュ領域に
追加します。
成功時には真を返します。すでにキャッシュ領域にあるセッションを
追加しようとした場合は追加されずに偽を返します。
@param sess 追加するセッション(OpenSSL::SSL::Session) -
OpenSSL
:: SSL :: SSLContext # session _ remove(sess) -> bool (33070.0) -
セッションを OpenSSL::SSL::SSLContext 内部のキャッシュ領域から 取り除きます。
セッションを OpenSSL::SSL::SSLContext 内部のキャッシュ領域から
取り除きます。
成功時には真を返します。キャッシュ領域に存在しないセッションを
削除しようとした場合は偽を返します。
@param sess 削除するセッション(OpenSSL::SSL::Session) -
OpenSSL
:: SSL :: SSLServer # start _ immediately -> bool (33070.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 (33070.0) -
OpenSSL 0.9.8 と互換な古い方式のハッシュ関数の ハッシュ値を返します。
OpenSSL 0.9.8 と互換な古い方式のハッシュ関数の
ハッシュ値を返します。
内部では OpenSSL の X509_NAME_hash_old を呼び出します。 -
OpenSSL
:: ASN1 :: ObjectId # ln -> String | nil (33058.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 (33058.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 (33058.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 (33058.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 (33058.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 (33058.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
:: BN # pretty _ print(pp) (33058.0) -
Kernel.#pp でオブジェクトの内容を出力するときに、内部で呼ばれるメソッドです。
Kernel.#pp でオブジェクトの内容を出力するときに、内部で呼ばれるメソッドです。
//emlist[][ruby]{
require 'openssl'
pp 5.to_bn #=> #<OpenSSL::BN 5>
pp (-5).to_bn #=> #<OpenSSL::BN -5>
//}
@param pp PP クラスのインスタンスオブジェクト -
OpenSSL
:: BN # prime? -> bool (33058.0) -
自身が素数であるなら true を返します。
自身が素数であるなら true を返します。
Miller-Rabin 法により確率的に判定します。
checkで指定した回数だけ繰り返します。
引数を省略した場合は OpenSSL が適切な
回数を判断します。
@param check Miller-Robin 法の繰り返しの回数
@raise OpenSSL::BNError 判定時にエラーが発生
@see OpenSSL::BN#prime_fasttest? -
OpenSSL
:: BN # prime?(checks) -> bool (33058.0) -
自身が素数であるなら true を返します。
自身が素数であるなら true を返します。
Miller-Rabin 法により確率的に判定します。
checkで指定した回数だけ繰り返します。
引数を省略した場合は OpenSSL が適切な
回数を判断します。
@param check Miller-Robin 法の繰り返しの回数
@raise OpenSSL::BNError 判定時にエラーが発生
@see OpenSSL::BN#prime_fasttest? -
OpenSSL
:: Cipher # pkcs5 _ keyivgen(pass , salt=nil , num=2048 , digest="md5") -> nil (33058.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
:: Cipher # update(data) -> String (33058.0) -
渡された文字列を暗号化もしくは復号化して文字列として返します。
渡された文字列を暗号化もしくは復号化して文字列として返します。
どちらがなされるかは直前に OpenSSL::Cipher#encrypt もしくは
OpenSSL::Cipher#decrypt のいずれが呼びだされたかに
よって決まります。
ブロック暗号を利用する場合は、暗号化/復号化はブロックサイズで規定された
バイト数ごとに行われます。そのため余ったデータは暗号オブジェクト内部に
保存され、次の文字列が渡されたときに使われます。
暗号化/復号化すべきデータを渡し終えた後は、
OpenSSL::Cipher#final
を呼びだして暗号オブジェクト内部に残されたデータを暗号化... -
OpenSSL
:: Config # each {|section , key , value| . . . } -> self (33058.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 # public _ key=(pubkey) (33058.0) -
SPKI オブジェクトに公開鍵を設定します。
SPKI オブジェクトに公開鍵を設定します。
@param pubkey 設定する公開鍵(OpenSSL::PKey::PKey オブジェクト)
@raise OpenSSL::Netscape::SPKIError 公開鍵の設定に失敗した場合に発生します
@see OpenSSL::Netscape::SPKI#public_key -
OpenSSL
:: Netscape :: SPKI # verify(key) -> bool (33058.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 (33058.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
:: PKCS7 # add _ certificate(cert) -> self (33058.0) -
署名に添付する証明書を追加します。
署名に添付する証明書を追加します。
通常は OpenSSL::PKCS7.sign の引数で添付する証明書を指定した
ほうがよいでしょう。
@param cert 追加する証明書(OpenSSL::X509::Certificate オブジェクト)
@raise OpenSSL::PKCS7::PKCS7Error 追加に失敗した場合に発生します。 -
OpenSSL
:: PKCS7 # certificates=(certificates) (33058.0) -
署名に付ける証明書を指定します。
署名に付ける証明書を指定します。
PKCS7 オブジェクトに元々つけられていた証明書はクリアされます。
通常は OpenSSL::PKCS7.sign の引数で添付する証明書を指定した
ほうがよいでしょう。
@param certificates 証明書(OpenSSL::X509::Certificate オブジェクト)の配列
@raise OpenSSL::PKCS7::PKCS7Error 変更に失敗した場合に発生します。 -
OpenSSL
:: PKCS7 # error _ string -> String | nil (33058.0) -
検証エラーの理由を表す文字列を返します。
検証エラーの理由を表す文字列を返します。
OpenSSL::PKCS7#verify で検証を
した場合のみ更新されます。
OpenSSL::PKCS7#verify で検証をする前は nil を返します。
検証に成功した場合は nil を返します。
@see OpenSSL::PKCS7#error_string= -
OpenSSL
:: PKey :: DH # priv _ key=(private _ key) (33058.0) -
DH 鍵共有プロトコルの秘密鍵を設定します。
DH 鍵共有プロトコルの秘密鍵を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param private_key 設定する整数値(OpenSSL::BN)
@see OpenSSL::PKey::DH#priv_key,
OpenSSL::PKey::DH#generate_key! -
OpenSSL
:: PKey :: DH # pub _ key=(public _ key) (33058.0) -
DH 鍵共有プロトコルの公開鍵を設定します。
DH 鍵共有プロトコルの公開鍵を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param public_key 設定する整数値(OpenSSL::BN)
@see OpenSSL::PKey::DH#pub_key,
OpenSSL::PKey::DH#generate_key! -
OpenSSL
:: PKey :: EC # group=(gr) (33058.0) -
鍵パラメータとなる群を表すオブジェクトを設定します。
鍵パラメータとなる群を表すオブジェクトを設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param gr 設定する OpenSSL::PKey::EC::Group オブジェクト
@raise OpenSSL::PKey::ECError Group オブジェクトの設定に失敗した場合に発生します
@see OpenSSL::PKey::EC#group -
OpenSSL
:: PKey :: EC # private _ key=(privkey) (33058.0) -
秘密鍵となる整数を設定します。
秘密鍵となる整数を設定します。
nil を渡すことで EC オブジェクトが公開鍵のみを持つ状態に変更できます。
@param privkey 設定する秘密鍵(OpenSSL::BN オブジェクト)
@raise OpenSSL::PKey::ECError 秘密鍵の設定に失敗した場合に発生します
@see OpenSSL::PKey::EC#private_key -
OpenSSL
:: PKey :: EC # public _ key=(pubkey) (33058.0) -
公開鍵となる楕円曲線上の点を表すオブジェクトを設定します。
公開鍵となる楕円曲線上の点を表すオブジェクトを設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param pubkey 公開鍵となる OpenSSL::PKey::EC::Point オブジェクト
@raise OpenSSL::PKey::ECError 公開鍵の設定時にエラーが生じた場合に発生します
@see OpenSSL::PKey::EC#public_key