種類
- インスタンスメソッド (32)
- 特異メソッド (6)
- クラス (4)
- モジュール (1)
- 定数 (1)
クラス
-
OpenSSL
:: Engine (2) -
OpenSSL
:: PKey :: DSA (30) -
OpenSSL
:: PKey :: EC (3) -
OpenSSL
:: PKey :: PKey (2) -
OpenSSL
:: X509 :: Certificate (2)
キーワード
- DH (1)
- DSAError (1)
-
METHOD
_ DSA (1) - PKey (1)
- Random (1)
-
dsa
_ sign _ asn1 (1) -
dsa
_ verify _ asn1 (1) - export (2)
- g (1)
- g= (1)
- generate (2)
- new (4)
- p (1)
- p= (1)
- params (1)
-
priv
_ key (1) -
priv
_ key= (1) - private? (1)
-
pub
_ key (1) -
pub
_ key= (1) - public? (1)
-
public
_ key (2) -
public
_ key? (1) - q (1)
- q= (1)
-
set
_ default (1) - sign (2)
- syssign (1)
- sysverify (1)
-
to
_ der (1) -
to
_ pem (2) -
to
_ s (2) -
to
_ text (1) - verify (1)
検索結果
先頭5件
-
OpenSSL
:: PKey :: DSA (87181.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
:: Engine :: METHOD _ DSA -> Integer (51376.0) -
デフォルトの DSA アルゴリズムのための engine に設定することを意味します。
...デフォルトの DSA アルゴリズムのための engine に設定することを意味します。
OpenSSL::Engine#set_default のフラグとして使います。... -
OpenSSL
:: PKey :: EC # dsa _ sign _ asn1(data) -> String (51364.0) -
秘密鍵を用い、data に ECDSA で署名します。
...必要があります。
@param data 署名対象のデータ(文字列)
@raise OpenSSL::PKey::ECError EC オブジェクトが秘密鍵を保持していない場合、
もしくは署名に失敗した場合に発生します
@see OpenSSL::PKey::EC#dsa_verify_asn1... -
OpenSSL
:: PKey :: EC # dsa _ verify _ asn1(data , sig) -> bool (51364.0) -
公開鍵を用い、署名を ECDSA で検証します。
...要があります。
検証に成功した場合は true を返します。
@param data 署名対象のデータ(文字列)
@param sig 署名データ(文字列)
@raise OpenSSL::PKey::ECError 署名の検証時にエラーが生じた場合に発生します
@see OpenSSL::PKey::EC#dsa_sign_asn1... -
OpenSSL
:: PKey :: DSAError (51055.0) -
DSA 関連のエラーが起きた場合に発生する例外です。
DSA 関連のエラーが起きた場合に発生する例外です。 -
OpenSSL
:: PKey :: DSA . new -> OpenSSL :: PKey :: DSA (42787.0) -
DSA オブジェクトを生成します。
...を生成します。
引数なしの場合は空の DSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::DSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のよ......た場合にはターミナルに問い合わせをします。
@param size 鍵を生成する時の素数のビット数
@param obj 鍵データ
@param pass 鍵データに設定したパスフレーズ
@raise OpenSSL::PKey::DSAError 鍵の読み込みに失敗した場合に発生します。... -
OpenSSL
:: PKey :: DSA . new(obj , pass=nil) -> OpenSSL :: PKey :: DSA (42787.0) -
DSA オブジェクトを生成します。
...を生成します。
引数なしの場合は空の DSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::DSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のよ......た場合にはターミナルに問い合わせをします。
@param size 鍵を生成する時の素数のビット数
@param obj 鍵データ
@param pass 鍵データに設定したパスフレーズ
@raise OpenSSL::PKey::DSAError 鍵の読み込みに失敗した場合に発生します。... -
OpenSSL
:: PKey :: DSA . new(obj , pass=nil) {|flag| . . . } -> OpenSSL :: PKey :: DSA (42787.0) -
DSA オブジェクトを生成します。
...を生成します。
引数なしの場合は空の DSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::DSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のよ......た場合にはターミナルに問い合わせをします。
@param size 鍵を生成する時の素数のビット数
@param obj 鍵データ
@param pass 鍵データに設定したパスフレーズ
@raise OpenSSL::PKey::DSAError 鍵の読み込みに失敗した場合に発生します。... -
OpenSSL
:: PKey :: DSA . new(size) -> OpenSSL :: PKey :: DSA (42787.0) -
DSA オブジェクトを生成します。
...を生成します。
引数なしの場合は空の DSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::DSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のよ......た場合にはターミナルに問い合わせをします。
@param size 鍵を生成する時の素数のビット数
@param obj 鍵データ
@param pass 鍵データに設定したパスフレーズ
@raise OpenSSL::PKey::DSAError 鍵の読み込みに失敗した場合に発生します。... -
OpenSSL
:: PKey :: DSA . generate(size) -> OpenSSL :: PKey :: DSA (42769.0) -
乱数により DSA 公開鍵と秘密鍵のペアを生成して、DSA オブジェクトとして 返します。
...により DSA 公開鍵と秘密鍵のペアを生成して、DSA オブジェクトとして
返します。
このメソッドを呼ぶ前に OpenSSL::Random の各モジュール関数に
よって乱数が適切に初期化されている必要があります。
size は DSA パラメータの... -
OpenSSL
:: PKey :: DSA . generate(size) {|u , n| . . . } -> OpenSSL :: PKey :: DSA (42769.0) -
乱数により DSA 公開鍵と秘密鍵のペアを生成して、DSA オブジェクトとして 返します。
...により DSA 公開鍵と秘密鍵のペアを生成して、DSA オブジェクトとして
返します。
このメソッドを呼ぶ前に OpenSSL::Random の各モジュール関数に
よって乱数が適切に初期化されている必要があります。
size は DSA パラメータの... -
OpenSSL
:: PKey :: DSA # public _ key -> OpenSSL :: PKey :: DSA (42661.0) -
公開鍵を複製して DSA オブジェクトとして返します。
公開鍵を複製して DSA オブジェクトとして返します。 -
OpenSSL
:: PKey :: DSA # priv _ key -> OpenSSL :: BN (42466.0) -
DSA 鍵の秘密鍵パラメータを返します。
...DSA 鍵の秘密鍵パラメータを返します。
秘密鍵はこの値と、
OpenSSL::PKey::DSA#p, OpenSSL::PKey::DSA#q, OpenSSL::PKey::DSA#g
から構成されます。... -
OpenSSL
:: PKey :: DSA # pub _ key -> OpenSSL :: BN (42466.0) -
DSA 鍵の公開鍵パラメータを返します。
...DSA 鍵の公開鍵パラメータを返します。
公開鍵はこの値と、
OpenSSL::PKey::DSA#p, OpenSSL::PKey::DSA#q, OpenSSL::PKey::DSA#g
から構成されます。... -
OpenSSL
:: PKey :: DSA # g -> OpenSSL :: BN (42358.0) -
DSA 鍵のパラメータ g を返します。
DSA 鍵のパラメータ g を返します。
g は公開鍵、秘密鍵の両方に属する情報です。 -
OpenSSL
:: PKey :: DSA # p -> OpenSSL :: BN (42358.0) -
DSA 鍵のパラメータ p を返します。
DSA 鍵のパラメータ p を返します。
p は公開鍵、秘密鍵の両方に属する情報です。 -
OpenSSL
:: PKey :: DSA # q -> OpenSSL :: BN (42358.0) -
DSA 鍵のパラメータ q を返します。
DSA 鍵のパラメータ q を返します。
q は公開鍵、秘密鍵の両方に属する情報です。 -
OpenSSL
:: PKey :: DSA # params -> {String => OpenSSL :: BN} (42310.0) -
鍵のパラメータを {パラメータ名 => その整数値} というハッシュで返します。
鍵のパラメータを {パラメータ名 => その整数値} というハッシュで返します。
公開鍵における priv_key のように自身が持っていないパラメータは
0 がセットされます。 -
OpenSSL
:: PKey :: DSA # sysverify(data , sign) -> bool (42061.0) -
署名 sign と自身の公開鍵で data を検証します。
...n に OpenSSL::PKey::DSA#syssign が返す DER 形式の文字列
を渡さなければなりません。
data は適切なハッシュ関数で計算されたダイジェストであると仮定
しています。
@param data 検証対象の文字列
@param sign 署名文字列
@raise OpenSSL::PK... -
OpenSSL
:: PKey :: DSA # g=(g) (42055.0) -
DSA 鍵のパラメータ g を設定します。
DSA 鍵のパラメータ g を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param g 設定する整数値 -
OpenSSL
:: PKey :: DSA # p=(p) (42055.0) -
DSA 鍵のパラメータ p を設定します。
DSA 鍵のパラメータ p を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param p 設定する整数値 -
OpenSSL
:: PKey :: DSA # priv _ key=(private _ key) (42055.0) -
DSA 鍵の秘密鍵パラメータを設定します。
DSA 鍵の秘密鍵パラメータを設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param private_key 設定する整数値 -
OpenSSL
:: PKey :: DSA # pub _ key=(public _ key) (42055.0) -
DSA 鍵の公開鍵パラメータを設定します。
DSA 鍵の公開鍵パラメータを設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param public_key 設定する整数値 -
OpenSSL
:: PKey :: DSA # q=(q) (42055.0) -
DSA 鍵のパラメータ q を設定します。
DSA 鍵のパラメータ q を設定します。
通常このメソッドで値を変更することはありません。
よく考えて必要な場合のみ利用してください。
@param q 設定する整数値 -
OpenSSL
:: PKey :: DSA # export(cipher=nil , pass=nil) -> String (42025.0) -
鍵を PEM 形式で出力します。
...鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフ... -
OpenSSL
:: PKey :: DSA # export(cipher=nil , pass=nil) {|flag| . . . } -> String (42025.0) -
鍵を PEM 形式で出力します。
...鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフ... -
OpenSSL
:: PKey :: DSA # syssign(data) -> String (42025.0) -
自身で data に署名をし、 DER 形式の文字列で署名を返します。
...自身で data に署名をし、 DER 形式の文字列で署名を返します。
data は適切なハッシュ関数で計算されたダイジェストであると仮定
しています。
通常は OpenSSL::PKey::PKey#sign を使い、署名をすべきです。
@param data 署名の対象... -
OpenSSL
:: PKey :: DSA # to _ pem(cipher=nil , pass=nil) -> String (42025.0) -
鍵を PEM 形式で出力します。
...鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフ... -
OpenSSL
:: PKey :: DSA # to _ pem(cipher=nil , pass=nil) {|flag| . . . } -> String (42025.0) -
鍵を PEM 形式で出力します。
...鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフ... -
OpenSSL
:: PKey :: DSA # to _ s(cipher=nil , pass=nil) -> String (42025.0) -
鍵を PEM 形式で出力します。
...鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフ... -
OpenSSL
:: PKey :: DSA # to _ s(cipher=nil , pass=nil) {|flag| . . . } -> String (42025.0) -
鍵を PEM 形式で出力します。
...鍵を PEM 形式で出力します。
cipher と pass が指定された場合、
秘密鍵を暗号 cipher OpenSSL::Cipher::Cipher
とパスワード pass を使って暗号化します。
cipher を指定して pass を省略した場合は
渡されたブロックを呼びだしてパスフ... -
OpenSSL
:: PKey :: DSA # private? -> bool (42007.0) -
自身が秘密鍵をもっている場合に true を返します。
自身が秘密鍵をもっている場合に true を返します。 -
OpenSSL
:: PKey :: DSA # public? -> bool (42007.0) -
自身が公開鍵をもっている場合に true を返します。
自身が公開鍵をもっている場合に true を返します。 -
OpenSSL
:: PKey :: DSA # to _ der -> String (42007.0) -
自身を DER 形式に変換します。
自身を DER 形式に変換します。 -
OpenSSL
:: PKey :: DSA # to _ text -> String (42007.0) -
鍵を人間が読める形式に変換します。
鍵を人間が読める形式に変換します。 -
OpenSSL
:: X509 :: Certificate # public _ key -> OpenSSL :: PKey :: PKey (33436.0) -
証明書に記載された公開鍵を返します。
...クラスのインスタンスを返します。
* OpenSSL::PKey::RSA
* OpenSSL::PKey::DSA
* OpenSSL::PKey::DH
* OpenSSL::PKey::EC
@raise OpenSSL::X509::CertificateError 鍵の取得に失敗した場合に発生します
@raise OpenSSL::PKey::PKeyError サポートしていない種類の... -
OpenSSL
:: Random (33397.0) -
OpenSSL が利用する擬似乱数生成器関連のモジュールです。
...OpenSSL が利用する擬似乱数生成器関連のモジュールです。
* 4086
=== 暗号と乱数
OpenSSL では、鍵を生成するためなどに乱数を用いています。例えば RSA では
巨大(512bitや1024bitなど)な素数の組を乱数で生成し、そこから公開鍵......ます。
* OpenSSL::PKey::RSA.generate
* OpenSSL::PKey::DSA.generate
* OpenSSL::PKey::DH.generate
* OpenSSL::Cipher#random_key
そのような乱数は適切な実装を持つ擬似乱数生成器に適切なシードを渡す
ことによって実現できます。
OpenSSL にはそのよ......。
そして、この擬似乱数生成器は OpenSSL の様々なモジュールから利用されています。
上に挙げた鍵生成メソッドの他に、
* OpenSSL::BN.rand
* OpenSSL::BN.rand_range
* OpenSSL::BN.generate_prime
* OpenSSL::Cipher#random_iv
などでも利用され... -
OpenSSL
:: PKey :: PKey (33205.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
:: Engine # set _ default(flags) -> true (33187.0) -
engine をデフォルトで利用するようにします。
...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_RAND
また、 OpenSSL::Engine::METHOD_ALL や
OpenSSL::Engine::METHOD_NONE が利用可能です。... -
OpenSSL
:: PKey :: DH (33133.0) -
Diffie-Hellman 鍵共有クラス
...有クラス
Diffie-Hellman 鍵共有プロトコルは署名ができないため、
OpenSSL::PKey::PKey#sign や OpenSSL::PKey::PKey#verify
を呼び署名や署名の検証を行おうとすると例外
OpenSSL::PKey::PKeyError が発生します。
Diffie-Hellman はこのライブラリで......は基本的には鍵共有にしか利用できません。
=== 例
鍵共有の例。
require 'openssl'
# パラメータの生成
dh = OpenSSL::PKey::DH.generate(1024, 5)
# パラメータのチェック
raise "bad DH parameter" unless dh.params_ok?
# 以下、dh1 と dh2 が通......つ複製することにしている
# dh1 は dh をそのまま使う
dh1 = dh
# パラメータを複製して dh2 に渡す
dh2 = OpenSSL::PKey::DH.new(dh)
# 両端が鍵パラメータから鍵対を生成する
dh1.generate_key!
dh2.generate_key!
# 通信の両端で公... -
OpenSSL
:: PKey :: EC # public _ key? -> bool (33115.0) -
EC オブジェクトが公開鍵を保持していれば真を返します。
...ブジェクトが公開鍵を保持していれば真を返します。
OpenSSL::PKey::RSA や OpenSSL::PKey::DSA と
異なり、EC オブジェクトが公開鍵を含まない場合が存在します。
例えば、OpenSSL::PKey::EC.new でパラメータとなる群のみを
指定して EC......った場合は、公開鍵も秘密鍵も
保持していません。この場合 OpenSSL::PKey::EC#generate_key で
鍵を生成するまで、その状態のままです。
このメソッドを呼ぶ前に OpenSSL::Random の各モジュール関数に
よって乱数が適切に初期化され... -
OpenSSL
:: PKey :: PKey # sign(digest , data) -> String (33043.0) -
秘密鍵で data に署名し、署名の文字列を返します。
...列で指定します。
DSA で署名をする場合はハッシュ関数には "dss1" を指定してください。
@param digest 利用するハッシュ関数の名前
@param data 署名する文字列
@raise OpenSSL::PKey::PKeyError 署名時にエラーが起きた場合に発生します... -
OpenSSL
:: PKey :: PKey # verify(digest , sign , data) -> bool (33043.0) -
data を秘密鍵で署名したその署名文字列が sign であることを公開鍵を使って検証し、検証に成功すれば true を返します。
...@param digest 利用するハッシュ関数の名前
@param sign 検証に利用する署名文字列
@param data 検証対象の文字列
@raise OpenSSL::PKey::PKeyError 検証時にエラーが起きた場合に発生します。
正しい署名でなかった場合など、検証に失敗... -
OpenSSL
:: X509 :: Certificate # sign(pkey , digest) -> self (33025.0) -
証明書に署名します。
証明書に署名します。
DSA で署名する場合は digest は "dss1" でなければなりません。
@param pkey 発行者(issuer)の秘密鍵
@param digest ハッシュ関数を表す文字列