種類
- 特異メソッド (55)
- インスタンスメソッド (29)
- クラス (7)
- モジュール関数 (6)
- モジュール (1)
クラス
-
OpenSSL
:: ASN1 :: ASN1Data (8) -
OpenSSL
:: ASN1 :: Constructive (1) -
OpenSSL
:: ASN1 :: Primitive (1) -
OpenSSL
:: ASN1 :: Sequence (2) -
OpenSSL
:: ASN1 :: Set (2) -
OpenSSL
:: Cipher (1) -
OpenSSL
:: Digest (4) -
OpenSSL
:: Digest :: DSS (3) -
OpenSSL
:: Digest :: DSS1 (3) -
OpenSSL
:: Digest :: MD2 (3) -
OpenSSL
:: Digest :: MD4 (3) -
OpenSSL
:: Digest :: MD5 (3) -
OpenSSL
:: Digest :: MDC2 (3) -
OpenSSL
:: Digest :: RIPEMD160 (3) -
OpenSSL
:: Digest :: SHA (3) -
OpenSSL
:: Digest :: SHA1 (3) -
OpenSSL
:: Digest :: SHA224 (3) -
OpenSSL
:: Digest :: SHA256 (3) -
OpenSSL
:: Digest :: SHA384 (3) -
OpenSSL
:: Digest :: SHA512 (3) -
OpenSSL
:: Engine (2) -
OpenSSL
:: HMAC (4) -
OpenSSL
:: PKCS7 (8) -
OpenSSL
:: PKey :: DSA (2) -
OpenSSL
:: PKey :: EC (2) -
OpenSSL
:: PKey :: PKey (2) -
OpenSSL
:: X509 :: Attribute (4) -
OpenSSL
:: X509 :: Extension (2)
モジュール
-
OpenSSL
:: ASN1 (6)
キーワード
- << (2)
- ASN1 (1)
- ASN1Data (1)
- Cipher (1)
- DSA (1)
- Digest (1)
- Extension (1)
- PKey (1)
- RSA (1)
- Sequence (2)
- Set (2)
-
add
_ data (1) - data (1)
- data= (1)
- decode (1)
-
decode
_ all (1) - digest (15)
-
dsa
_ sign _ asn1 (1) -
dsa
_ verify _ asn1 (1) - encrypt (1)
- hexdigest (14)
-
load
_ private _ key (1) -
load
_ public _ key (1) - new (23)
- sign (2)
- syssign (1)
- sysverify (1)
- tag (1)
- tag= (1)
-
tag
_ class (1) -
tag
_ class= (1) - tagging (2)
-
to
_ der (1) - type (1)
- update (3)
- value (2)
- value= (2)
- verify (2)
-
write
_ smime (1)
検索結果
先頭5件
-
OpenSSL
:: PKCS7 # add _ data(data) -> data (18940.0) -
署名対象のデータを設定します。
署名対象のデータを設定します。
このメソッドは使わないでください。
このメソッドは PKCS#7 の低レベル API であり、正しく使うのは
難しいでしょう。
@param data 文字列 -
OpenSSL
:: PKCS7 # data=(data) (18640.0) -
署名対象のデータを設定します。
署名対象のデータを設定します。
このメソッドは使わないでください。
このメソッドは PKCS#7 の低レベル API であり、正しく使うのは
難しいでしょう。
@param data 文字列 -
OpenSSL
:: PKCS7 # data -> String (18310.0) -
署名対象のデータを文字列で返します。
署名対象のデータを文字列で返します。 -
OpenSSL
:: ASN1 :: ASN1Data (18007.0) -
ASN.1 データ型を表すクラス。
...ASN.1 データ型を表すクラス。
UNIVERSAL なタグを持つ ASN.1 値はこのクラスの2つのサブクラス、
OpenSSL::ASN1::Primitive もしくは OpenSSL::ASN1::Constructive
のインスタンスとして表現されます。
それ以外の値はこのクラスのインスタン... -
OpenSSL
:: ASN1 :: ASN1Data . new(value , tag , tag _ class) -> OpenSSL :: ASN1 :: ASN1Data (9376.0) -
ASN.1 値を表現する OpenSSL::ASN1::ASN1Data オブジェクトを 生成します。
...ASN.1 値を表現する OpenSSL::ASN1::ASN1Data オブジェクトを
生成します。
通常 UNIVERSAL なタグクラスを持つ ASN.1 値はこのクラスのサブクラスで
表現されるため、tag_class はそれ以外(:CONTEXT_SPECIFIC、:APPLICATION、
:PRIVATE のいずれか)を......指定します。
value としては、通常は文字列(IMPLICIT tagging 相当)
もしくは OpenSSL::ASN1::ASN1Data の配列(IMPLICIT tagging相当)
を指定します。
@param value そのオブジェクトが表現する値
@param tag タグ
@param tag_class タグクラス... -
OpenSSL
:: ASN1 :: ASN1Data # tag -> Integer (9025.0) -
タグ番号を返します。
...タグ番号を返します。
タグ番号です。Universal 型の場合は BOOLEAN = 1 から BMPSTRING = 30
のいずれかの値をとります。
@see OpenSSL::ASN1::ASN1Data#tag=... -
OpenSSL
:: ASN1 :: ASN1Data # tag=(tag) (9025.0) -
タグ番号を設定します。
...タグ番号を設定します。
@param tag 設定するタグ番号
@see OpenSSL::ASN1::ASN1Data#tag... -
OpenSSL
:: ASN1 :: ASN1Data # tag _ class -> Symbol (9025.0) -
タグクラスを返します。
...タグクラスを返します。
:UNIVERSAL、:CONTEXT_SPECIFIC、:APPLICATION, :PRIVATE のいずれかを返します。
@see OpenSSL::ASN1::ASN1Data#tag_class=... -
OpenSSL
:: ASN1 :: ASN1Data # tag _ class=(tag _ class) (9025.0) -
タグクラスを設定します。
...タグクラスを設定します。
@param tag_class 設定するタグクラス。:UNIVERSAL、:ONTEXT_SPECIFIC、:APPLICATION、:PRIVATE のいずれか
@see OpenSSL::ASN1::ASN1Data#tag_class... -
OpenSSL
:: ASN1 :: ASN1Data # value -> object (9025.0) -
ASN.1 値に対応するRubyのオブジェクトを返します。
...ASN.1 値に対応するRubyのオブジェクトを返します。
@see OpenSSL::ASN1::ASN1Data#value=... -
OpenSSL
:: ASN1 :: ASN1Data # value=(value) (9025.0) -
ASN.1 値に対応するRubyのオブジェクトを変更します。
...ASN.1 値に対応するRubyのオブジェクトを変更します。
@param value 設定するオブジェクト
@see OpenSSL::ASN1::ASN1Data#value... -
OpenSSL
:: ASN1 :: ASN1Data # to _ der -> String (9007.0) -
ASN.1 値の DER 表現を返します。
...ASN.1 値の DER 表現を返します。
@see OpenSSL::ASN1.#decode... -
OpenSSL
:: PKCS7 . write _ smime(p7sig , data=nil , flags = 0) -> String (418.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
:: PKCS7 . encrypt(certs , data , cipher=nil , flags=0) -> OpenSSL :: PKCS7 (412.0) -
data を証明書の公開鍵で暗号化します。
...列を渡します。
署名と暗号化の両方をしたい場合は、
署名(OpenSSL::PKCS7.sign)された S/MIME 形式の文字列を
渡すことが一般的です。
cipher は共通鍵暗号の方式を OpenSSL::Cipher オブジェクトで指定します。
nil を渡すと適当な方式......グを渡すことができます。
* OpenSSL::PKCS7::TEXT
暗号化するデータに text/plain タイプの MIME ヘッダを追加します。
MIME形式のデータを渡すときにはこれを使ってはいけません。
* OpenSSL::PKCS7::BINARY
data に MIME 正規......化をほどこしません。
@param certs 公開鍵を含む証明書(OpenSSL::X509::Certificate オブジェクト)の配列
@param data 暗号化対象の文字列
@param cipher 共通鍵暗号の方式(OpenSSL::Cipher オブジェクト)
@param flags フラグ... -
OpenSSL
:: PKCS7 . sign(cert , key , data , certs = [] , flags = 0) -> OpenSSL :: PKCS7 (394.0) -
data に証明書と秘密鍵で署名します。
...。certs に OpenSSL::X509::Certificate オブジェクトの配列 を
渡すと OpenSSL::PKCS7 オブジェクトにそれらの証明書が追加で保持されます。
例えば中間 CA 証明書などを渡します。
flags は以下の値の OR を渡します。
* OpenSSL::PKCS7::TEXT......* OpenSSL::PKCS7::NOCERTS
署名者の証明書を署名に含めません。送り先がすでに証明書をもっている場合
など、他の方法で証明書を手に入れることができる場合に
データ量を減らすために用います。
* OpenSSL::PKCS7:......リア署名(multipart/signed)をする。
* OpenSSL::PKCS7::BINARY
data に MIME 正規化を施さない。
* OpenSSL::PKCS7::NOATTR
PKCS#7 autenticatedAttributes (署名時刻など)をオブジェクトに含めない。
* OpenSSL::PKCS7::NOSMIMECAP
署名者が使用可... -
OpenSSL
:: PKey :: DSA # syssign(data) -> String (394.0) -
自身で data に署名をし、 DER 形式の文字列で署名を返します。
...自身で data に署名をし、 DER 形式の文字列で署名を返します。
data は適切なハッシュ関数で計算されたダイジェストであると仮定
しています。
通常は OpenSSL::PKey::PKey#sign を使い、署名をすべきです。
@param data 署名の対象... -
OpenSSL
:: PKey :: DSA # sysverify(data , sign) -> bool (394.0) -
署名 sign と自身の公開鍵で data を検証します。
...n に OpenSSL::PKey::DSA#syssign が返す DER 形式の文字列
を渡さなければなりません。
data は適切なハッシュ関数で計算されたダイジェストであると仮定
しています。
@param data 検証対象の文字列
@param sign 署名文字列
@raise OpenSSL::PK... -
OpenSSL
:: PKey :: EC # dsa _ sign _ asn1(data) -> String (394.0) -
秘密鍵を用い、data に ECDSA で署名します。
...必要があります。
@param data 署名対象のデータ(文字列)
@raise OpenSSL::PKey::ECError EC オブジェクトが秘密鍵を保持していない場合、
もしくは署名に失敗した場合に発生します
@see OpenSSL::PKey::EC#dsa_verify_asn1... -
OpenSSL
:: Digest # <<(data) -> self (379.0) -
data でダイジェストオブジェクトの内部状態を更新します。
data でダイジェストオブジェクトの内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest # update(data) -> self (379.0) -
data でダイジェストオブジェクトの内部状態を更新します。
data でダイジェストオブジェクトの内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: ASN1 . # decode(der) -> OpenSSL :: ASN1 :: ASN1Data (376.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
:: Digest . digest(name , data) -> String (376.0) -
data のダイジェストを計算します。
data のダイジェストを計算します。
name でハッシュ関数を指定します。
@param name ハッシュ関数の種類を文字列("md5", "sha256" など)で指定
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: DSS . digest(data) -> String (376.0) -
data のダイジェストを DSS で計算します。
data のダイジェストを DSS で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: DSS . hexdigest(data) -> String (376.0) -
data のダイジェストを DSS で計算し、16進文字列で返します。
data のダイジェストを DSS で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: DSS1 . digest(data) -> String (376.0) -
data のダイジェストを DSS1 で計算します。
data のダイジェストを DSS1 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: DSS1 . hexdigest(data) -> String (376.0) -
data のダイジェストを DSS1 で計算し、16進文字列で返します。
data のダイジェストを DSS1 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: MD2 . digest(data) -> String (376.0) -
data のダイジェストを MD2 で計算します。
data のダイジェストを MD2 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: MD2 . hexdigest(data) -> String (376.0) -
data のダイジェストを MD2 で計算し、16進文字列で返します。
data のダイジェストを MD2 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: MD4 . digest(data) -> String (376.0) -
data のダイジェストを MD4 で計算します。
data のダイジェストを MD4 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: MD4 . hexdigest(data) -> String (376.0) -
data のダイジェストを MD4 で計算し、16進文字列で返します。
data のダイジェストを MD4 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: MD5 . digest(data) -> String (376.0) -
data のダイジェストを MD5 で計算します。
data のダイジェストを MD5 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: MD5 . hexdigest(data) -> String (376.0) -
data のダイジェストを MD5 で計算し、16進文字列で返します。
data のダイジェストを MD5 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: MDC2 . digest(data) -> String (376.0) -
data のダイジェストを MDC2 で計算します。
data のダイジェストを MDC2 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: MDC2 . hexdigest(data) -> String (376.0) -
data のダイジェストを MDC2 で計算し、16進文字列で返します。
data のダイジェストを MDC2 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: RIPEMD160 . digest(data) -> String (376.0) -
data のダイジェストを RIPEMD160 で計算します。
data のダイジェストを RIPEMD160 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: RIPEMD160 . hexdigest(data) -> String (376.0) -
data のダイジェストを RIPEMD160 で計算し、16進文字列で返します。
data のダイジェストを RIPEMD160 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA . digest(data) -> String (376.0) -
data のダイジェストを SHA で計算します。
data のダイジェストを SHA で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA . hexdigest(data) -> String (376.0) -
data のダイジェストを SHA で計算し、16進文字列で返します。
data のダイジェストを SHA で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA1 . digest(data) -> String (376.0) -
data のダイジェストを SHA1 で計算します。
data のダイジェストを SHA1 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA1 . hexdigest(data) -> String (376.0) -
data のダイジェストを SHA1 で計算し、16進文字列で返します。
data のダイジェストを SHA1 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA224 . digest(data) -> String (376.0) -
data のダイジェストを SHA224 で計算します。
data のダイジェストを SHA224 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA224 . hexdigest(data) -> String (376.0) -
data のダイジェストを SHA224 で計算し、16進文字列で返します。
data のダイジェストを SHA224 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA256 . digest(data) -> String (376.0) -
data のダイジェストを SHA256 で計算します。
data のダイジェストを SHA256 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA256 . hexdigest(data) -> String (376.0) -
data のダイジェストを SHA256 で計算し、16進文字列で返します。
data のダイジェストを SHA256 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA384 . digest(data) -> String (376.0) -
data のダイジェストを SHA384 で計算します。
data のダイジェストを SHA384 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA384 . hexdigest(data) -> String (376.0) -
data のダイジェストを SHA384 で計算し、16進文字列で返します。
data のダイジェストを SHA384 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA512 . digest(data) -> String (376.0) -
data のダイジェストを SHA512 で計算します。
data のダイジェストを SHA512 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA512 . hexdigest(data) -> String (376.0) -
data のダイジェストを SHA512 で計算し、16進文字列で返します。
data のダイジェストを SHA512 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: HMAC . digest(digest , key , data) -> String (376.0) -
渡された digest と key を用いて data の HMAC を計算し、 その値をバイナリ文字列として返します。
渡された digest と key を用いて data の HMAC を計算し、
その値をバイナリ文字列として返します。
digest には利用するハッシュ関数を表す文字列("md5", "sha256" など)
を渡します。
@param digest 利用するハッシュ関数
@param key 利用する鍵の文字列
@param data HMAC を計算する文字列 -
OpenSSL
:: HMAC . hexdigest(digest , key , data) -> String (376.0) -
渡された digest と key を用いて data の HMAC を計算し、 その値を16進文字列で返します。
渡された digest と key を用いて data の HMAC を計算し、
その値を16進文字列で返します。
digest には利用するハッシュ関数を表す文字列("md5", "sha256" など)
を渡します。
@param digest 利用するハッシュ関数
@param key 利用する鍵の文字列
@param data HMAC を計算する文字列 -
OpenSSL
:: PKey :: PKey # sign(digest , data) -> String (376.0) -
秘密鍵で data に署名し、署名の文字列を返します。
...列で指定します。
DSA で署名をする場合はハッシュ関数には "dss1" を指定してください。
@param digest 利用するハッシュ関数の名前
@param data 署名する文字列
@raise OpenSSL::PKey::PKeyError 署名時にエラーが起きた場合に発生します... -
OpenSSL
:: PKey :: PKey # verify(digest , sign , data) -> bool (376.0) -
data を秘密鍵で署名したその署名文字列が sign であることを公開鍵を使って検証し、検証に成功すれば true を返します。
...@param digest 利用するハッシュ関数の名前
@param sign 検証に利用する署名文字列
@param data 検証対象の文字列
@raise OpenSSL::PKey::PKeyError 検証時にエラーが起きた場合に発生します。
正しい署名でなかった場合など、検証に失敗... -
OpenSSL
:: ASN1 . # decode _ all(der) -> [OpenSSL :: ASN1 :: ASN1Data] (358.0) -
DER 表現の文字列を解析し、そこにエンコードされている ASN.1 の値を全て OpenSSL::ASN1::ASN1Data のサブクラスのインスタンスの配列として 返します。
...そこにエンコードされている ASN.1 の値を全て
OpenSSL::ASN1::ASN1Data のサブクラスのインスタンスの配列として
返します。
@param der DER形式の文字列
@raise OpenSSL::ASN1::ASN1Error 解析に失敗した場合に発生します
@see OpenSSL::ASN1.#decode... -
OpenSSL
:: X509 :: Attribute # value -> OpenSSL :: ASN1 :: ASN1Data (358.0) -
attribute の値を OpenSSL::ASN1::ASN1Data のオブジェクトで 返します。
...attribute の値を OpenSSL::ASN1::ASN1Data のオブジェクトで
返します。
@raise OpenSSL::X509::AttributeError 値の取得に失敗した場合に発生します
@see OpenSSL::X509::Attribute#value=... -
OpenSSL
:: Digest . new(name , data=nil) -> OpenSSL :: Digest (346.0) -
ダイジェストオブジェクトを生成します。
ダイジェストオブジェクトを生成します。
name でハッシュ関数の種類を選びます。
data に文字列を渡すと、その文字列でオブジェクトの内部状態を更新します。
@param name ハッシュ関数の種類を文字列("md5", "sha256" など)で指定
@param data 入力文字列
@raise RuntimeError サポートされていないアルゴリズムを指定した場合に発生します -
OpenSSL
:: Digest :: DSS . new(data=nil) -> OpenSSL :: Digest :: DSS (346.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: DSS1 . new(data=nil) -> OpenSSL :: Digest :: DSS1 (346.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: MD2 . new(data=nil) -> OpenSSL :: Digest :: MD2 (346.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: MD4 . new(data=nil) -> OpenSSL :: Digest :: MD4 (346.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: MD5 . new(data=nil) -> OpenSSL :: Digest :: MD5 (346.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: MDC2 . new(data=nil) -> OpenSSL :: Digest :: MDC2 (346.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: RIPEMD160 . new(data=nil) -> OpenSSL :: Digest :: RIPEMD160 (346.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: SHA . new(data=nil) -> OpenSSL :: Digest :: SHA (346.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: SHA1 . new(data=nil) -> OpenSSL :: Digest :: SHA1 (346.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: SHA224 . new(data=nil) -> OpenSSL :: Digest :: SHA224 (346.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: SHA256 . new(data=nil) -> OpenSSL :: Digest :: SHA256 (346.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: SHA384 . new(data=nil) -> OpenSSL :: Digest :: SHA384 (346.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: SHA512 . new(data=nil) -> OpenSSL :: Digest :: SHA512 (346.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: PKey :: EC # dsa _ verify _ asn1(data , sig) -> bool (346.0) -
公開鍵を用い、署名を ECDSA で検証します。
...要があります。
検証に成功した場合は true を返します。
@param data 署名対象のデータ(文字列)
@param sig 署名データ(文字列)
@raise OpenSSL::PKey::ECError 署名の検証時にエラーが生じた場合に発生します
@see OpenSSL::PKey::EC#dsa_sign_asn1... -
OpenSSL
:: HMAC # <<(data) -> self (331.0) -
入力文字列を追加し、内部状態を更新します。
入力文字列を追加し、内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: HMAC # update(data) -> self (331.0) -
入力文字列を追加し、内部状態を更新します。
入力文字列を追加し、内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Cipher # update(data) -> String (328.0) -
渡された文字列を暗号化もしくは復号化して文字列として返します。
...た文字列を暗号化もしくは復号化して文字列として返します。
どちらがなされるかは直前に OpenSSL::Cipher#encrypt もしくは
OpenSSL::Cipher#decrypt のいずれが呼びだされたかに
よって決まります。
ブロック暗号を利用する場合は......部に
保存され、次の文字列が渡されたときに使われます。
暗号化/復号化すべきデータを渡し終えた後は、
OpenSSL::Cipher#final
を呼びだして暗号オブジェクト内部に残されたデータを暗号化/復号化
する必要があります。
@pa... -
OpenSSL
:: Engine # load _ private _ key(id=nil , data=nil) -> OpenSSL :: PKey :: PKey (328.0) -
秘密鍵を engine にロードします。
秘密鍵を engine にロードします。
@param id key id(文字列)
@param data 文字列 -
OpenSSL
:: Engine # load _ public _ key(id=nil , data=nil) -> OpenSSL :: PKey :: PKey (328.0) -
公開鍵を engine にロードします。
公開鍵を engine にロードします。
@param id key id(文字列)
@param data 文字列 -
OpenSSL
:: PKCS7 # verify(certs , store , indata = nil , flags = 0) -> bool (325.0) -
署名を検証します。
...署名者の証明書を含む配列を渡します。
通常 S/MIME 署名には証明者の証明書が含まれていますが、
OpenSSL::PKCS7.sign で OpenSSL::PKCS7::NOCERTS を渡した
場合には含まれていないので、明示的に渡す必要があります。
このメソッドは......名の対象となった文字列を渡します。
nil を渡すと OpenSSL::PKCS7#data で得られる文字列
を用います。通常は nil を渡すべきです。
flags には以下の値の OR を渡します。
* OpenSSL::PKCS7::NOINTERN
メッセージに添付された証明書......* OpenSSL::PKCS7::TEXT
署名対象のデータに含まれる text/plain タイプの MIME ヘッダを取り除きます。
もしヘッダがない場合はエラーとなります。
* OpenSSL::PKCS7::NOVERIFY
署名者の証明書を検証しません。
* OpenSSL::PKCS... -
OpenSSL
:: Cipher (223.0) -
共通鍵暗号のために抽象化されたインターフェースを提供するクラスです。
...通常はより高水準なインターフェースが利用可能な
はずです。必要なのは暗号アルゴリズムを指定するため
OpenSSL::Cipher.new で暗号オブジェクトを生成することだけでしょう。
もし、このクラスを直接利用して暗号化する......。
* OpenSSL::Cipher.new や OpenSSL::Cipher::AES256.new
などで暗号オブジェクトを生成する
* OpenSSL::Cipher#encrypt, OpenSSL::Cipher#decrypt で
暗号、復号のいずれをするかを設定する
* OpenSSL::Cipher#key=, OpenSSL::Cipher#iv=,
OpenSSL::Cipher#ra......ndom_key, OpenSSL::Cipher#random_iv などで
鍵と IV(initialization vector) を設定する
* OpenSSL::Cipher#update, OpenSSL::Cipher#final で
暗号化/復号化をする
ruby 1.8.3 から Cast5 と Idea が CAST5 と IDEA に改名されました。
=== ブロック暗号モード... -
OpenSSL
:: ASN1 (187.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
:: PKey :: DSA (97.0) -
DSA 公開鍵暗号クラス
...ゴリズムであり、暗号化はできません。
以下は、data に署名し、署名をもとに data を検証する簡単な例です。
require "openssl"
dsa512 = OpenSSL::PKey::DSA.new(512)
data = 'hoge'
sign = dsa512.sign('dss1', data)
p dsa512.verify('dss1', sign, data)... -
OpenSSL
:: PKey :: PKey (61.0) -
公開鍵暗号のための抽象クラスです。
...クラスです。
以下のサブクラスを持ちます。
* OpenSSL::PKey::RSA
* OpenSSL::PKey::DSA
* OpenSSL::PKey::DH
* OpenSSL::PKey::EC
例:
require "openssl"
# 署名用の鍵を新規作成
dsa512 = OpenSSL::PKey::DSA.new(512)
data = 'hoge'
# 署名
sign = dsa512.sig... -
OpenSSL
:: PKey :: RSA (61.0) -
RSA 暗号鍵のクラスです。
...通常このクラスで利用するのは、
OpenSSL::PKey::RSA.generate, OpenSSL::PKey::RSA.new,
OpenSSL::PKey::RSA#public?, OpenSSL::PKey::RSA#private?,
OpenSSL::PKey::RSA#public_key, OpenSSL::PKey::RSA#to_text,
OpenSSL::PKey::RSA#to_pem, OpenSSL::PKey::RSA#to_der
のいずれかでしょう。......ついてよく理解し、必要な場合のみにすべきです。
例:
require 'openssl'
# initialize random seed
OpenSSL::Random.seed(File.read("/dev/random", 16))
# 鍵対を生成
rsa = OpenSSL::PKey::RSA.generate(2048)
# 秘密鍵をAES256で暗号化して private_key.pem に......PEM 形式で保存
passphrase = "!secret passphrase!"
File.open("private_key.pem", "w") do |f|
f.write(rsa.export(OpenSSL::Cipher.new("aes256"), passphrase))
end
# 公開鍵をpublic_key.pemに保存
public_key = rsa.public_key
File.open("public_key.pem", "w") do |f|
f.write(pu... -
OpenSSL
:: Digest (43.0) -
ハッシュ関数のためのインターフェースを提供するクラスです。
...を計算する (OpenSSL::Digest.digest,
Digest::Instance#hexdigest) 方法です。短い文字列の
ダイジェストを取るときにはこちらを使えばよいでしょう。
もう一つはダイジェストオブジェクトを作成して、文字列を順次
OpenSSL::Digest#update で......ストを計算
します。大きなファイルのハッシュ値を計算する場合などに
利用します。
例:
require 'openssl'
digest = OpenSSL::Digest.new("sha256")
File.open(filename){|f|
while data = f.read(1024)
digest.update(data)
end
}
puts digest.hexdig... -
OpenSSL
:: X509 :: Attribute # value=(val) (43.0) -
attribute の値を設定します。
...す。
引数には OpenSSL::ASN1::ASN1Data のオブジェクトを渡さなければなりません。
@param val 設定する値の OpenSSL::ASN1::ASN1Data オブジェクト
@raise OpenSSL::X509::AttributeError val が不正であった場合に発生します
@see OpenSSL::X509::Attribute#val... -
OpenSSL
:: X509 :: Attribute . new(der) -> OpenSSL :: X509 :: Attribute (43.0) -
attribute オブジェクトを生成します。
...e には
OpenSSL::ASN1::ASN1Data のインスタンスを渡さなければなりません。
@param der DER 形式の文字列、もしくは to_der を持つオブジェクト
@param oid Object ID 文字列
@param value 値を表す OpenSSL::ASN1::ASN1Data インスタンス
@raise OpenSSL::X509:... -
OpenSSL
:: X509 :: Attribute . new(oid , value) -> OpenSSL :: X509 :: Attribute (43.0) -
attribute オブジェクトを生成します。
...e には
OpenSSL::ASN1::ASN1Data のインスタンスを渡さなければなりません。
@param der DER 形式の文字列、もしくは to_der を持つオブジェクト
@param oid Object ID 文字列
@param value 値を表す OpenSSL::ASN1::ASN1Data インスタンス
@raise OpenSSL::X509:... -
OpenSSL
:: ASN1 . # Sequence(value) -> OpenSSL :: ASN1 :: Sequence -> OpenSSL :: ASN1 :: Sequence (25.0) -
ASN.1 の Sequence 型の値を表現する Ruby のオブジェクトを 生成します。
...ASN.1 の Sequence 型の値を表現する Ruby のオブジェクトを
生成します。
OpenSSL::ASN1::Sequence.new と同じです。
@param value ASN.1値を表すRubyのオブジェクト(OpenSSL::ASN1::ASN1Dataの配列)
@param tag タグ番号
@param tagging タグ付けの方法(:IMPLIC... -
OpenSSL
:: ASN1 . # Sequence(value , tag , tagging , tag _ class) -> OpenSSL :: ASN1 :: Sequence (25.0) -
ASN.1 の Sequence 型の値を表現する Ruby のオブジェクトを 生成します。
...ASN.1 の Sequence 型の値を表現する Ruby のオブジェクトを
生成します。
OpenSSL::ASN1::Sequence.new と同じです。
@param value ASN.1値を表すRubyのオブジェクト(OpenSSL::ASN1::ASN1Dataの配列)
@param tag タグ番号
@param tagging タグ付けの方法(:IMPLIC... -
OpenSSL
:: ASN1 . # Set(value) -> OpenSSL :: ASN1 :: Set -> OpenSSL :: ASN1 :: Set (25.0) -
ASN.1 の Set 型の値を表現する Ruby のオブジェクトを 生成します。
...ASN.1 の Set 型の値を表現する Ruby のオブジェクトを
生成します。
OpenSSL::ASN1::Set.new と同じです。
@param value ASN.1値を表すRubyのオブジェクト(OpenSSL::ASN1::ASN1Dataの配列)
@param tag タグ番号
@param tagging タグ付けの方法(:IMPLICIT もし... -
OpenSSL
:: ASN1 . # Set(value , tag , tagging , tag _ class) -> OpenSSL :: ASN1 :: Set (25.0) -
ASN.1 の Set 型の値を表現する Ruby のオブジェクトを 生成します。
...ASN.1 の Set 型の値を表現する Ruby のオブジェクトを
生成します。
OpenSSL::ASN1::Set.new と同じです。
@param value ASN.1値を表すRubyのオブジェクト(OpenSSL::ASN1::ASN1Dataの配列)
@param tag タグ番号
@param tagging タグ付けの方法(:IMPLICIT もし... -
OpenSSL
:: ASN1 :: Constructive # tagging -> Symbol | nil (25.0) -
タグ付けの方式を返します。
...タグ付けの方式を返します。
:IMPLICIT、:EXPLICIT、nil のいずれかを返します。
タグ(OpenSSL::ASN1::ASN1Data#tag)が :UNIVERSAL ならば
この値は無視されます。
nil は :IMPLICIT と同義です。
@see OpenSSL::ASN1::Constructive#tagging=... -
OpenSSL
:: ASN1 :: Primitive # tagging -> Symbol | nil (25.0) -
タグ付けの方式を返します。
...タグ付けの方式を返します。
:IMPLICIT、:EXPLICIT、nil のいずれかを返します。
タグ(OpenSSL::ASN1::ASN1Data#tag)が :UNIVERSAL ならば
この値は無視されます。
nil は :IMPLICIT と同義です。
@see OpenSSL::ASN1::Primitive#tagging=... -
OpenSSL
:: ASN1 :: Sequence . new(value) -> OpenSSL :: ASN1 :: Sequence (25.0) -
ASN.1 の Sequence 型の値を表現する OpenSSL::ASN1::Sequence オブジェクトを 生成します。
...値を表現する OpenSSL::ASN1::Sequence オブジェクトを
生成します。
value 以外の引数を省略した場合はタグクラスは :UNIVERSAL、
タグ は OpenSSL::ASN1::SEQUENCE となります。
@param value ASN.1値を表すRubyのオブジェクト(OpenSSL::ASN1::ASN1Dataの... -
OpenSSL
:: ASN1 :: Sequence . new(value , tag , tagging , tag _ class) -> OpenSSL :: ASN1 :: Sequence (25.0) -
ASN.1 の Sequence 型の値を表現する OpenSSL::ASN1::Sequence オブジェクトを 生成します。
...値を表現する OpenSSL::ASN1::Sequence オブジェクトを
生成します。
value 以外の引数を省略した場合はタグクラスは :UNIVERSAL、
タグ は OpenSSL::ASN1::SEQUENCE となります。
@param value ASN.1値を表すRubyのオブジェクト(OpenSSL::ASN1::ASN1Dataの... -
OpenSSL
:: ASN1 :: Set . new(value) -> OpenSSL :: ASN1 :: Set (25.0) -
ASN.1 の Set 型の値を表現する OpenSSL::ASN1::Set オブジェクトを 生成します。
...型の値を表現する OpenSSL::ASN1::Set オブジェクトを
生成します。
value 以外の引数を省略した場合はタグクラスは :UNIVERSAL、
タグ は OpenSSL::ASN1::SET となります。
@param value ASN.1値を表すRubyのオブジェクト(OpenSSL::ASN1::ASN1Dataの配... -
OpenSSL
:: ASN1 :: Set . new(value , tag , tagging , tag _ class) -> OpenSSL :: ASN1 :: Set (25.0) -
ASN.1 の Set 型の値を表現する OpenSSL::ASN1::Set オブジェクトを 生成します。
...型の値を表現する OpenSSL::ASN1::Set オブジェクトを
生成します。
value 以外の引数を省略した場合はタグクラスは :UNIVERSAL、
タグ は OpenSSL::ASN1::SET となります。
@param value ASN.1値を表すRubyのオブジェクト(OpenSSL::ASN1::ASN1Dataの配... -
OpenSSL
:: PKCS7 # type -> Symbol (25.0) -
PKCS7 オブジェクトのタイプを Symbol オブジェクトで返します。
PKCS7 オブジェクトのタイプを Symbol オブジェクトで返します。
次のうちのいずれかの値をとります。
* :signed
* :encrypted
* :enveloped
* :signedAndEnveloped
* :data -
OpenSSL
:: X509 :: Extension (25.0) -
X.509 v3 証明書の拡張領域のためのクラスです。
...クラスです。
OpenSSL::X509::Certificate オブジェクトは
その拡張領域を Extension オブジェクトの配列として保持し、
OpenSSL::X509::Certificate#extensions でその配列が得られます。
このクラスのインスタンス生成は OpenSSL::ASN1::ASN1Data を......取り扱う必要があり面倒です。
OpenSSL::X509::ExtensionFactory を用いることで
インスタンスの生成を簡便に行うことができます。
=== 参照
* 5280... -
OpenSSL
:: X509 :: Extension . new(der) -> OpenSSL :: X509 :: Extension (25.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 (25.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:...