別のキーワード
種類
- インスタンスメソッド (30)
- 特異メソッド (15)
- モジュール関数 (1)
- モジュール (1)
クラス
- Integer (1)
-
OpenSSL
:: ASN1 :: ObjectId (8) -
OpenSSL
:: BN (22) -
OpenSSL
:: PKCS7 (1) -
OpenSSL
:: PKey :: EC (1) -
OpenSSL
:: SSL :: SSLContext (1) -
OpenSSL
:: X509 :: Extension (2) -
OpenSSL
:: X509 :: ExtensionFactory (1) -
OpenSSL
:: X509 :: Name (7) -
OpenSSL
:: X509 :: StoreContext (1)
モジュール
-
OpenSSL
:: ASN1 (1)
キーワード
- <=> (1)
- >> (1)
- ASN1 (1)
-
bit
_ set? (1) -
builtin
_ curves (1) -
clear
_ bit! (1) -
client
_ cert _ cb= (1) - cmp (1)
- coerce (1)
- config= (1)
- decode (1)
- error= (1)
- ln (1)
-
long
_ name (1) - lshift! (1)
-
mask
_ bits! (1) -
mod
_ add (1) -
mod
_ exp (1) -
mod
_ inverse (1) -
mod
_ mul (1) -
mod
_ sub (1) - new (10)
- oid (1)
- parse (1)
-
parse
_ openssl (1) -
pretty
_ print (1) -
prime
_ fasttest? (1) - register (1)
- rshift! (1)
-
set
_ bit! (1) -
short
_ name (1) - sn (1)
-
to
_ a (1) -
to
_ bn (1) -
to
_ s (2) - ucmp (1)
-
write
_ smime (1)
検索結果
先頭5件
-
OpenSSL
:: ASN1 (511.0) -
ASN.1(Abstract Syntax Notation One) のデータを取り扱うためのモジュールです。
...ASN.1(Abstract Syntax Notation One)
のデータを取り扱うためのモジュールです。
OpenSSLで証明書などを取り扱うのに必要になります。
このモジュールには、ASN.1関連のモジュール関数や定数、
ASN.1 のデータ型に対応するクラスが定......において、
ASN.1 のデータ型は OpenSSL::ASN1::ASN1Data および
そのサブクラスにマップされています。
ASN.1 の単純型(simple type)は OpenSSL::ASN1::Primitive の
各サブクラスに、構造型(structured type)は OpenSSL::ASN1::Constructive
の各サブクラス......タグクラスは UNIVERSAL です。
その値は OpenSSL::ASN1::ASN1Data#value で取り出せます。
単純型は通常の Ruby のオブジェクト、構造型は配列
UNIVERSAL以外のタグクラスを付けられた型は、
OpenSSL::ASN1::ASN1Data に対応します。UNIVERSAL以外... -
OpenSSL
:: ASN1 . # decode(der) -> OpenSSL :: ASN1 :: ASN1Data (349.0) -
DER 表現の文字列を解析し、そこにエンコードされている ASN.1 の値を OpenSSL::ASN1::ASN1Data のサブクラスのインスタンスとして返します。
...DER 表現の文字列を解析し、そこにエンコードされている ASN.1 の値を
OpenSSL::ASN1::ASN1Data のサブクラスのインスタンスとして返します。
複数の ASN.1 の値が含まれている場合、先頭の値だけを返します。
ASN.1 オブジェクトが......-e '
require "openssl"
require "pp"
pem = File.read(ARGV[0])
cert = OpenSSL::X509::Certificate.new(pem)
pp OpenSSL::ASN1.decode(cert.to_der)
' mycert.pem
#<OpenSSL::ASN1::Sequence:0x814e9fc
@tag=16,
@tag_class=:UNIVERSAL,
@tagging=nil,
@value=
[#<OpenSSL::ASN1::Sequence......@tag=16,
@tag_class=:UNIVERSAL,
@tagging=nil,
@value=
[#<OpenSSL::ASN1::ASN1Data:0x814f690
@tag=0,
@tag_class=:CONTEXT_SPECIFIC,
@value=
[#<OpenSSL::ASN1::Integer:0x814f6a4
@tag=2,
@tag_class=:UNIVERSAL,... -
OpenSSL
:: X509 :: Name # to _ s(flags=nil) -> String (133.0) -
DNの文字列表現を返します。
...は通常は以下のいずれかを渡します。
* 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 Compan......y/OU=Lab3/CN=foobar/emailAddress=foobar@lab3.example.co.jp"
n.to_s(OpenSSL::X509::Name::COMPAT)
# => "C=JP, ST=Kanagawa, L=Yokohama, O=Example Company, OU=Lab3, CN=foobar/emailAddress=foobar@lab3.example.co.jp"
n.to_s(OpenSSL::X509::Name::RFC2253)
# => "emailAddress=foobar@lab3.example.co.jp......Lab3,O=Example Company,L=Yokohama,ST=Kanagawa,C=JP"
n.to_s(OpenSSL::X509::Name::ONELINE)
# => "C = JP, ST = Kanagawa, L = Yokohama, O = Example Company, OU = Lab3, CN = foobar, emailAddress = foobar@lab3.example.co.jp"
n.to_s(OpenSSL::X509::Name::MULTILINE)
# => "countryName =... -
OpenSSL
:: X509 :: Name . new -> OpenSSL :: X509 :: Name (133.0) -
OpenSSL::X509::Name オブジェクトを生成します。
...OpenSSL::X509::Name オブジェクトを生成します。
引数を与えなかった場合は空のオブジェクトを返します。
第1引数として配列を与えた場合には、
その内容が属性型と属性値の文字列のペアであると仮定して、オブジェクトを......obj が OpenSSL::X509::Name である場合には内容を複製した
オブジェクトを返します。
それ以外の場合は obj の to_der メソッドを読んで DER 形式のバイト列に変換し、
そこから内容を作ります。
例:
require 'openssl'
OpenSSL::X509::......anagawa"], ["L", "Yokohama"], ["O", "Example Company"], ["OU", "Lab3"], ["CN", "foobar"], ["emailAddress", "foobar@lab3.example.co.jp"]])
# => OpenSSL::X509::Name object: /C=JP/ST=Kanagawa/L=Yokohama/O=Example Company/OU=Lab3/CN=foobar/emailAddress=foobar@lab3.example.co.jp
@param ary 属性型... -
OpenSSL
:: X509 :: Name . new(ary , template = OBJECT _ TYPE _ TEMPLATE) -> OpenSSL :: X509 :: Name (133.0) -
OpenSSL::X509::Name オブジェクトを生成します。
...OpenSSL::X509::Name オブジェクトを生成します。
引数を与えなかった場合は空のオブジェクトを返します。
第1引数として配列を与えた場合には、
その内容が属性型と属性値の文字列のペアであると仮定して、オブジェクトを......obj が OpenSSL::X509::Name である場合には内容を複製した
オブジェクトを返します。
それ以外の場合は obj の to_der メソッドを読んで DER 形式のバイト列に変換し、
そこから内容を作ります。
例:
require 'openssl'
OpenSSL::X509::......anagawa"], ["L", "Yokohama"], ["O", "Example Company"], ["OU", "Lab3"], ["CN", "foobar"], ["emailAddress", "foobar@lab3.example.co.jp"]])
# => OpenSSL::X509::Name object: /C=JP/ST=Kanagawa/L=Yokohama/O=Example Company/OU=Lab3/CN=foobar/emailAddress=foobar@lab3.example.co.jp
@param ary 属性型... -
OpenSSL
:: X509 :: Name . new(obj) -> OpenSSL :: X509 :: Name (133.0) -
OpenSSL::X509::Name オブジェクトを生成します。
...OpenSSL::X509::Name オブジェクトを生成します。
引数を与えなかった場合は空のオブジェクトを返します。
第1引数として配列を与えた場合には、
その内容が属性型と属性値の文字列のペアであると仮定して、オブジェクトを......obj が OpenSSL::X509::Name である場合には内容を複製した
オブジェクトを返します。
それ以外の場合は obj の to_der メソッドを読んで DER 形式のバイト列に変換し、
そこから内容を作ります。
例:
require 'openssl'
OpenSSL::X509::......anagawa"], ["L", "Yokohama"], ["O", "Example Company"], ["OU", "Lab3"], ["CN", "foobar"], ["emailAddress", "foobar@lab3.example.co.jp"]])
# => OpenSSL::X509::Name object: /C=JP/ST=Kanagawa/L=Yokohama/O=Example Company/OU=Lab3/CN=foobar/emailAddress=foobar@lab3.example.co.jp
@param ary 属性型... -
OpenSSL
:: BN . new(str , base=10) -> OpenSSL :: BN (106.0) -
文字列を多倍長整数オブジェクト(OpenSSL::BN)を生成します。
...文字列を多倍長整数オブジェクト(OpenSSL::BN)を生成します。
base で、変換方法(基数)を指定します。
デフォルトは 10 で、他に 16, 2, 0 を指定できます。
10 引数の文字列を 10進数とみなして、変換します。
16 引数の文字......{
require 'openssl'
OpenSSL::BN.new("-241") # => -241
OpenSSL::BN.new("ff00",16) # => 65280
OpenSSL::BN.new("\x81",2) # => 129
OpenSSL::BN.new("\xff\x81",2) # => 65409
OpenSSL::BN.new("\x00\x00\x00\x02\x00\x81", 0) # => 129
OpenSSL::BN.new("\x00\x00\x00\x02\x80\x81", 0) # => -129
OpenSSL::BN.new(12......を表す文字列
@param base 文字列から整数に変換するときの基数
@raise OpenSSL::BNError 変換に失敗した場合に発生します
反対に、OpenSSL::BN クラスのオブジェクトを文字列にするには、
OpenSSL::BN#to_s を用います。
@see OpenSSL::BN#to_s... -
OpenSSL
:: ASN1 :: ObjectId . new(value) -> OpenSSL :: ASN1 :: ObjectId (97.0) -
ASN.1 のオブジェクト識別子を表わす OpenSSL::ASN1::ObjectId の オブジェクトを生成します。
...す OpenSSL::ASN1::ObjectId の
オブジェクトを生成します。
value としては、ドット区切り数字表記、short name、long name の文字列の
をいずれかを渡します。
value 以外の引数を省略した場合はタグクラスは :UNIVERSAL、
タグ は OpenSSL::A......SN1::OBJECT となります。
例:
require "openssl"
include OpenSSL
p ASN1::ObjectId.new("1.2.840.10040.4.3").long_name # => "dsaWithSHA1"
p ASN1::ObjectId.new("dsaWithSHA1").oid # => "1.2.840.10040.4.3"
@param value ASN.1 オブジェクト識別子を表す文字列
@param... -
OpenSSL
:: ASN1 :: ObjectId . new(value , tag , tagging , tag _ class) -> OpenSSL :: ASN1 :: ObjectId (97.0) -
ASN.1 のオブジェクト識別子を表わす OpenSSL::ASN1::ObjectId の オブジェクトを生成します。
...す OpenSSL::ASN1::ObjectId の
オブジェクトを生成します。
value としては、ドット区切り数字表記、short name、long name の文字列の
をいずれかを渡します。
value 以外の引数を省略した場合はタグクラスは :UNIVERSAL、
タグ は OpenSSL::A......SN1::OBJECT となります。
例:
require "openssl"
include OpenSSL
p ASN1::ObjectId.new("1.2.840.10040.4.3").long_name # => "dsaWithSHA1"
p ASN1::ObjectId.new("dsaWithSHA1").oid # => "1.2.840.10040.4.3"
@param value ASN.1 オブジェクト識別子を表す文字列
@param... -
OpenSSL
:: ASN1 :: ObjectId . register(oid , short _ name , long _ name) -> true (97.0) -
オブジェクト識別子に対応する名前(short name と long name)を OpenSSLの内部テーブルに登録します。
...
OpenSSLの内部テーブルに登録します。
登録した名前は OpenSSL::X509::Extension などで利用できるようになります。
例:
require "openssl"
OpenSSL::ASN1::ObjectId.register(
"2.5.29.9", "subjectDirAttrs", "X509v3 Subject Directory Attributes")
p OpenSSL::AS......t Directory Attributes"
@param oid 登録する識別子(ドット区切り数字表記の文字列)
@param short_name short nameとして登録する文字列
@param long_name long nameとして登録する文字列
@raise OpenSSL::ASN1::ASN1Error 登録に失敗した場合に発生します。... -
OpenSSL
:: BN # prime _ fasttest?(checks=nil , vtrivdiv=true) -> bool (97.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
:: PKCS7 . write _ smime(p7sig , data=nil , flags = 0) -> String (97.0) -
PKCS7 オブジェクトから S/MIME 形式の文字列を返します。
...l を渡すと OpenSSL::PKCS7#data で得られる
文字列を用います。通常は nil を渡してください。
flags には以下の定数の or を渡します。
* OpenSSL::PKCS7::DETACHED
クリア署名をします。これは OpenSSL::PKCS7.sign で
OpenSSL::PKCS7::DETAC......。
* OpenSSL::PKCS7::TEXT
MIME ヘッダに text/plain を付加します。
これは OpenSSL::PKCS7.sign で
OpenSSL::PKCS7::DETACHED を渡した場合にのみ意味を持ちます。
例:
require 'openssl'
data = "foobar"
p7 = OpenSSL::PKCS7.sign( OpenSSL::X509::Ce......ert.pem')),
OpenSSL::PKey::RSA.new(File.read('privkey.pem')),
data)
smime = PKCS7.write_smime(p7)
@param p7sig PKCS#7 オブジェクト
@param data 署名されたデータ文字列
@param flags フラグ(整数値)
@raise OpenSSL::PKCS::PK... -
OpenSSL
:: X509 :: Extension . new(der) -> OpenSSL :: X509 :: Extension (97.0) -
OpenSSL::X509::Extension オブジェクトを生成します。
...OpenSSL::X509::Extension オブジェクトを生成します。
引数が1つの場合は DER 形式の文字列を渡します。
引数が2つ以上の場合は、oid には拡張領域の OID の ドット区切り表記、
short name、long name のいずれかである文字列を与えま......す。
value にはその値を表す DER 形式の文字列、もしくは
OpenSSL::ASN1::ASN1Data のサブクラスを与えます。
例;
require 'openssl'
include OpenSSL
oid = "subjectKeyIdentifier"
val = "\004\024\206\312\245\"\201b\357\255\n\211\274\255rA,)I\364\206V"
ex = X509:... -
OpenSSL
:: X509 :: Extension . new(oid , value , critical=false) -> OpenSSL :: X509 :: Extension (97.0) -
OpenSSL::X509::Extension オブジェクトを生成します。
...OpenSSL::X509::Extension オブジェクトを生成します。
引数が1つの場合は DER 形式の文字列を渡します。
引数が2つ以上の場合は、oid には拡張領域の OID の ドット区切り表記、
short name、long name のいずれかである文字列を与えま......す。
value にはその値を表す DER 形式の文字列、もしくは
OpenSSL::ASN1::ASN1Data のサブクラスを与えます。
例;
require 'openssl'
include OpenSSL
oid = "subjectKeyIdentifier"
val = "\004\024\206\312\245\"\201b\357\255\n\211\274\255rA,)I\364\206V"
ex = X509:... -
OpenSSL
:: BN # <=>(other) -> -1 | 0 | 1 (79.0) -
自身と other を比較し、自身が小さいときには -1、 等しいときには 0、大きいときには 1 を返します。
...ときには 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 other 比較する整数
@r......aise TypeError 比較できないときに発生します。
@see OpenSSL::BN#ucmp... -
OpenSSL
:: BN # >>(other) -> OpenSSL :: BN (79.0) -
自身を other ビット右シフトした値を返します。
...自身を other ビット右シフトした値を返します。
//emlist[][ruby]{
require 'openssl'
bn = 2.to_bn
bn >> 1 # => #<OpenSSL::BN 1>
bn # => #<OpenSSL::BN 2>
//}
@param other シフトするビット数
@raise OpenSSL::BNError 計算時エラー
@see OpenSSL::BN#rshift!... -
OpenSSL
:: BN # clear _ bit!(n) -> self (79.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 # cmp(other) -> -1 | 0 | 1 (79.0) -
自身と other を比較し、自身が小さいときには -1、 等しいときには 0、大きいときには 1 を返します。
...ときには 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 other 比較する整数
@r......aise TypeError 比較できないときに発生します。
@see OpenSSL::BN#ucmp... -
OpenSSL
:: BN # coerce(other) -> Array (79.0) -
自身と other が同じクラスになるよう、自身か other を変換し [other, self] という配列にして返します。
...換後オブジェクト] にして返します。
それ以外の場合は例外 TypeError を発生させます。
//emlist[][ruby]{
require 'openssl'
p 1.to_bn.coerce(2) # => [2, 1]
//}
@param other 変換の基準となるオブジェクト
@raise TypeError 変換に失敗した場合に発... -
OpenSSL
:: BN # lshift!(n) -> self (79.0) -
自身を n ビット左シフトします。 OpenSSL::BN#<<と異なり、破壊的メソッドです。
...す。
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 # mod _ add(other , m) -> OpenSSL :: BN (79.0) -
(self + other) % m を返します。
...(self + other) % m を返します。
//emlist[][ruby]{
require 'openssl'
OpenSSL::BN.new("7").mod_add(OpenSSL::BN.new("3"), OpenSSL::BN.new("6")) # => 4
//}
@param other 和を取る数
@param m 剰余を取る数
@raise OpenSSL::BNError 計算時エラー... -
OpenSSL
:: BN # mod _ exp(other , m) -> OpenSSL :: BN (79.0) -
(self ** other) % m を返します。
...(self ** other) % m を返します。
//emlist[][ruby]{
require 'openssl'
OpenSSL::BN.new("7").mod_exp(OpenSSL::BN.new("3"), OpenSSL::BN.new("6")) # => 1
//}
@param other 指数
@param m 剰余を取る数
@raise OpenSSL::BNError 計算時エラー... -
OpenSSL
:: BN # mod _ mul(other , m) -> OpenSSL :: BN (79.0) -
(self * other) % m を返します。
...(self * other) % m を返します。
//emlist[][ruby]{
require 'openssl'
OpenSSL::BN.new("7").mod_mul(OpenSSL::BN.new("3"), OpenSSL::BN.new("6")) # => 3
//}
@param other 積を取る数
@param m 剰余を取る数
@raise OpenSSL::BNError 計算時エラー... -
OpenSSL
:: BN # mod _ sub(other , m) -> OpenSSL :: BN (79.0) -
(self - other) % m を返します。
...(self - other) % m を返します。
//emlist[][ruby]{
require 'openssl'
OpenSSL::BN.new("27").mod_sub(OpenSSL::BN.new("3"), OpenSSL::BN.new("5")) # => 4
//}
@param other 引く数
@param m 剰余を取る数
@raise OpenSSL::BNError 計算時エラー... -
OpenSSL
:: BN # rshift!(n) -> self (79.0) -
自身を n ビット右シフトします。 [[m:OpenSSL::BN#>>]と異なり、破壊的メソッドです。
...[[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
:: BN # set _ bit!(n) -> self (79.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 (79.0) -
自身を表す文字列を返します。
...列
0 MPI形式の文字列(バイト列)
@param base 文字列への変換方法(基数)
@raise OpenSSL::BNError 変換に失敗した場合に発生します
//emlist[][ruby]{
require 'openssl'
p 10.to_bn.to_s # => "10"
p (-5).to_bn.to_s # => "-5"
p 0.to_bn.to_s(16) # => "0"
p 9.to_......o_s(2) # => "\a"
p 0.to_bn.to_s(0) # => "\x00\x00\x00\x00"
p 6.to_bn.to_s(0) # => "\x00\x00\x00\x01\x06"
p 7.to_bn.to_s(0) # => "\x00\x00\x00\x01\a"
//}
反対に、文字列から OpenSSL::BN クラスのインスタンスを作るには
OpenSSL::BN.new を用います。
@see OpenSSL::BN.new... -
OpenSSL
:: BN # ucmp(other) -> -1 | 0 | 1 (79.0) -
自身と other の絶対値を比較し、自身の絶対値が小さいときには -1、 等しいときには 0、 大きいときには 1 を返します。
...には 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)) # => 1
//}
@param other 比較する整......数
@raise TypeError 比較できないときに発生します。
@see OpenSSL::BN#cmp... -
OpenSSL
:: X509 :: Name . parse(str , template=OBJECT _ TYPE _ TEMPLATE) -> OpenSSL :: X509 :: Name (79.0) -
文字列をパースして OpenSSL::X509::Name オブジェクトを返します。
...文字列をパースして OpenSSL::X509::Name オブジェクトを返します。
例:
require 'openssl'
OpenSSL::X509::Name.parse('/C=JP/ST=Kanagawa/L=Yokohama/O=Example Company/OU=Lab3/CN=foobar/emailAddress=foobar@lab3.example.co.jp')
@param str パースする文字列
@param template... -
OpenSSL
:: X509 :: Name . parse _ openssl(str , template=OBJECT _ TYPE _ TEMPLATE) -> OpenSSL :: X509 :: Name (79.0) -
文字列をパースして OpenSSL::X509::Name オブジェクトを返します。
...文字列をパースして OpenSSL::X509::Name オブジェクトを返します。
例:
require 'openssl'
OpenSSL::X509::Name.parse('/C=JP/ST=Kanagawa/L=Yokohama/O=Example Company/OU=Lab3/CN=foobar/emailAddress=foobar@lab3.example.co.jp')
@param str パースする文字列
@param template... -
OpenSSL
:: BN # bit _ set?(n) -> bool (61.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 # mask _ bits!(n) -> self (61.0) -
自身を下位 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 # mod _ inverse(m) -> OpenSSL :: BN (61.0) -
自身の mod m における逆元を返します。
...(self * r) % m == 1 となる r を返します。
存在しない場合は例外 OpenSSL::BNError が発生します。
//emlist[][ruby]{
require 'openssl'
p 3.to_bn.mod_inverse(5) # => 2
p (3 * 2) % 5 # => 1
//}
@param m mod を取る数
@raise OpenSSL::BNError 計算時エラー... -
OpenSSL
:: BN . new(integer) -> OpenSSL :: BN (61.0) -
整数オブジェクト(Integer)から多倍長整数オブジェクト (OpenSSL::BN)を生成します。
...整数オブジェクト(Integer)から多倍長整数オブジェクト
(OpenSSL::BN)を生成します。
@param integer 整数オブジェクト
@see Integer#to_bn... -
OpenSSL
:: SSL :: SSLContext # client _ cert _ cb=(cb) (61.0) -
OpenSSL::SSL::SSLContext#cert= でクライアント証明書を セットしていなかった場合にサーバからクライアント証明書の要求が来たときに 呼びだされるコールバックオブジェクトを設定します。
...OpenSSL::SSL::SSLContext#cert= でクライアント証明書を
セットしていなかった場合にサーバからクライアント証明書の要求が来たときに
呼びだされるコールバックオブジェクトを設定します。
コールバックに渡される引数は以下......している OpenSSL::SSL::SSLSocket
オブジェクトが渡されます。そのオブジェクトから必要な証明書を見つけるのに
必要な情報を取得します。
コールバックはクライアント証明書(OpenSSL::X509::Certificate)
とその秘密鍵(OpenSSL::PKey::PKey)......のコールバック内で例外が発生すると、適当な証明書が見付からなかったと
判断されます。このとき例外は OpenSSL のライブラリによって握り潰されて
しまいます。
デフォルトは nil で、コールバックなしを意味します。こ... -
OpenSSL
:: X509 :: Name # to _ a -> [[String , String , Integer]] (61.0) -
内容を配列にして返します。
...、[属性型文字列、属性値文字列、属性値の型を表す整数(OpenSSL::ASN1以下の各定数で定義されているASN1の型)] という3要素の配列です。
例:
require 'openssl'
n = OpenSSL::X509::Name.parse('/C=JP/ST=Kanagawa/L=Yokohama/O=Example Company/OU=Lab3/CN=foo... -
OpenSSL
:: X509 :: StoreContext # error=(error) (61.0) -
エラーコードを設定します。
...エラーコードを設定します。
OpenSSL::X509::StoreContext#verify を呼びだし、
証明書チェインの各証明書を検証した
コールバック(OpenSSL::X509::Store#verify_callback=)が呼び出され、
StoreContext オブジェクトが渡されますが、このメソッド......こで設定したものになります。OpenSSL::X509::StoreContext#error_string
もその値に応じた文字列が返るようになります。
例:
require 'openssl'
store = OpenSSL::X509::Store.new
store.set_default_paths
cert = OpenSSL::X509::Certificate.new(...)
store.verify(c......ctx.error = OpenSSL::X509::V_ERR_APPLICATION_VERIFICATION;
false} # => false
p store.error # => OpenSSL::X509::V_ERR_APPLICATION_VERIFICATION
p store.error_string # => "application verification failure"
@param error エラーコードの整数値
@see OpenSSL::X509::StoreContext#error... -
OpenSSL
:: BN . new(bn) -> OpenSSL :: BN (46.0) -
OpenSSL::BN を複製して返します。
...
OpenSSL::BN を複製して返します。
@param bn 複製する OpenSSL::BN オブジェクト... -
Integer
# to _ bn -> OpenSSL :: BN (43.0) -
Integer を同じ数を表す OpenSSL::BN のオブジェクトに 変換します。
...す OpenSSL::BN のオブジェクトに
変換します。
//emlist[][ruby]{
require 'openssl'
pp 5.to_bn #=> #<OpenSSL::BN 5>
pp (-5).to_bn #=> #<OpenSSL::BN -5>
//}
なお、実装は、以下のようになっています。
//emlist[][ruby]{
class Integer
def to_bn
OpenSSL::BN::n......ew(self)
end
end
//}
@see OpenSSL::BN.new, OpenSSL::BN#to_i... -
OpenSSL
:: ASN1 :: ObjectId # ln -> String | nil (43.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 (43.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 (43.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 (43.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 (43.0) -
オブジェクト識別子に対応する short name を返します。
...オブジェクト識別子に対応する short name を返します。
例:
require "openssl"
oid = OpenSSL::ASN1::ObjectId.new("subjectAltName")
p oid.sn #=> "subjectAltName"
@see OpenSSL::ASN1::ObjectId#ln... -
OpenSSL
:: BN # pretty _ print(pp) (43.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
:: PKey :: EC . builtin _ curves -> [[String , String]] (43.0) -
組み込みの曲線の名前と、それに対する説明を文字列の配列ペアの配列で返します。
...組み込みの曲線の名前と、それに対する説明を文字列の配列ペアの配列で返します。
例:
require 'openssl'
OpenSSL::PKey::EC.builtin_curves
# => [["secp112r1", "SECG/WTLS curve over a 112 bit prime field"],
# ["secp112r2", "SECG curve over a 112 bit prim......e field"],
# ["secp128r1", "SECG curve over a 128 bit prime field"],
# ["secp128r2", "SECG curve over a 128 bit prime field"],
# ... ]
@see OpenSSL::PKey::EC::Group.new... -
OpenSSL
:: X509 :: ExtensionFactory # config=(config) (43.0) -
自身にコンフィグファイルオブジェクトを設定します。
...自身にコンフィグファイルオブジェクトを設定します。
例
require 'openssl'
factory.config = OpenSSL::Config.load(OpenSSL::Config::DEFAULT_CONFIG_FILE)
@param config 設定ファイル(OpenSSL::Config オブジェクト)...