種類
- インスタンスメソッド (16)
- 定数 (5)
- 特異メソッド (4)
- クラス (2)
- ライブラリ (1)
ライブラリ
- openssl (27)
クラス
モジュール
-
OpenSSL
:: X509 (4)
キーワード
- DETACHED (1)
- DH (1)
- DSA (1)
-
V
_ ERR _ DEPTH _ ZERO _ SELF _ SIGNED _ CERT (1) -
V
_ ERR _ SELF _ SIGNED _ CERT _ IN _ CHAIN (1) -
V
_ ERR _ UNABLE _ TO _ DECRYPT _ CERT _ SIGNATURE (1) -
V
_ ERR _ UNABLE _ TO _ DECRYPT _ CRL _ SIGNATURE (1) -
add
_ certificate (1) -
add
_ signer (1) - detached (1)
- detached? (1)
-
dsa
_ sign _ asn1 (1) -
dsa
_ verify _ asn1 (1) - encrypt (1)
- new (1)
-
rubygems
/ security (1) -
signed
_ time (1) - syssign (1)
- sysverify (1)
- verify (2)
-
write
_ smime (1)
検索結果
先頭5件
-
OpenSSL
:: PKCS7 . sign(cert , key , data , certs = [] , flags = 0) -> OpenSSL :: PKCS7 (88141.0) -
data に証明書と秘密鍵で署名します。
data に証明書と秘密鍵で署名します。
cert に署名に使う証明書を、key にその証明書に対応する秘密鍵を
渡します。certs に OpenSSL::X509::Certificate オブジェクトの配列 を
渡すと OpenSSL::PKCS7 オブジェクトにそれらの証明書が追加で保持されます。
例えば中間 CA 証明書などを渡します。
flags は以下の値の OR を渡します。
* OpenSSL::PKCS7::TEXT
text/plain 用の MIME ヘッダをデータに付け加える。
* OpenSSL::PKCS7::NOCERTS
署... -
OpenSSL
:: Netscape :: SPKI # sign(key , digest) -> self (87676.0) -
SPKI オブジェクトに署名をします。
SPKI オブジェクトに署名をします。
@param key 署名に使う秘密鍵(OpenSSL::PKey::PKey オブジェクト)
@param digest 署名に使うダイジェスト関数(文字列もしくは OpenSSL::Digest オブジェクト)
@raise OpenSSL::Netscape::SPKIError 署名に失敗した場合に発生します
@see OpenSSL::Netscape::SPKI#verify -
OpenSSL
:: X509 :: Request # sign(key , digest) -> self (87658.0) -
証明書署名要求に秘密鍵で署名をします。
証明書署名要求に秘密鍵で署名をします。
通常、証明書署名要求は申請者の秘密鍵で署名されます。
@param key 秘密鍵(OpenSSL::PKey::PKey のサブクラスのオブジェクト)
@param digest ハッシュ関数を表す文字列("sha1" など)
@raise OpenSSL::X509::RequestError 署名に失敗した場合に発生します
@see OpenSSL::X509::Request#verify -
OpenSSL
:: X509 :: CRL # sign(pkey , digest) -> self (87640.0) -
CRL に秘密鍵で署名します。
CRL に秘密鍵で署名します。
@param pkey 秘密鍵(OpenSSL::PKey::PKey オブジェクト)
@param digest ハッシュアルゴリズム
@raise OpenSSL::X509::CRLError 署名に失敗した場合に発生します -
OpenSSL
:: PKey :: PKey # sign(digest , data) -> String (87622.0) -
秘密鍵で data に署名し、署名の文字列を返します。
秘密鍵で data に署名し、署名の文字列を返します。
digest は利用するハッシュ関数の名前を "sha256" や "md5"
といった文字列で指定します。
DSA で署名をする場合はハッシュ関数には "dss1" を指定してください。
@param digest 利用するハッシュ関数の名前
@param data 署名する文字列
@raise OpenSSL::PKey::PKeyError 署名時にエラーが起きた場合に発生します -
OpenSSL
:: X509 :: Certificate # sign(pkey , digest) -> self (87604.0) -
証明書に署名します。
証明書に署名します。
DSA で署名する場合は digest は "dss1" でなければなりません。
@param pkey 発行者(issuer)の秘密鍵
@param digest ハッシュ関数を表す文字列 -
OpenSSL
:: PKCS7 :: SignerInfo # signed _ time -> Time (78601.0) -
その署名者が署名した時刻を返します。
その署名者が署名した時刻を返します。 -
OpenSSL
:: X509 :: V _ ERR _ DEPTH _ ZERO _ SELF _ SIGNED _ CERT -> Integer (69709.0) -
検証している証明書がルート CA (自己署名証明書)であり、 それが信頼されている証明書でないことを意味します。
検証している証明書がルート CA (自己署名証明書)であり、
それが信頼されている証明書でないことを意味します。
OpenSSL::X509::Store#error や
OpenSSL::X509::StoreContext#error のエラーコードとして
使われます。
@see OpenSSL::X509::Store#add_file,
OpenSSL::X509::Store#add_path,
OpenSSL::X509::Store#add_cert,
OpenSSL::X509::Store#set_default_paths -
OpenSSL
:: X509 :: V _ ERR _ SELF _ SIGNED _ CERT _ IN _ CHAIN -> Integer (69709.0) -
証明書チェインのルート CA (自己署名証明書)が 信頼されている証明書でないことを意味します。
証明書チェインのルート CA (自己署名証明書)が
信頼されている証明書でないことを意味します。
OpenSSL::X509::Store#error や
OpenSSL::X509::StoreContext#error のエラーコードとして
使われます。
@see OpenSSL::X509::Store#add_file,
OpenSSL::X509::Store#add_path,
OpenSSL::X509::Store#add_cert,
OpenSSL::X509::Store#set_default_paths -
OpenSSL
:: PKey :: EC # dsa _ sign _ asn1(data) -> String (69640.0) -
秘密鍵を用い、data に ECDSA で署名します。
秘密鍵を用い、data に ECDSA で署名します。
結果は文字列として返します。
data のダイジェストを取る処理はこのメソッドに含まれていません。
自身で適当なダイジェストを取る必要があります。
@param data 署名対象のデータ(文字列)
@raise OpenSSL::PKey::ECError EC オブジェクトが秘密鍵を保持していない場合、
もしくは署名に失敗した場合に発生します
@see OpenSSL::PKey::EC#dsa_verify_asn1 -
OpenSSL
:: X509 :: V _ ERR _ UNABLE _ TO _ DECRYPT _ CERT _ SIGNATURE -> Integer (69637.0) -
証明書の署名が復号できないことを意味します。
証明書の署名が復号できないことを意味します。
OpenSSL::X509::Store#error や
OpenSSL::X509::StoreContext#error のエラーコードとして
使われます。 -
OpenSSL
:: X509 :: V _ ERR _ UNABLE _ TO _ DECRYPT _ CRL _ SIGNATURE -> Integer (69637.0) -
CRL の署名が復号できないことを意味します。
CRL の署名が復号できないことを意味します。
OpenSSL::X509::Store#error や
OpenSSL::X509::StoreContext#error のエラーコードとして
使われます。 -
OpenSSL
:: PKCS7 # add _ signer(singer) -> self (69619.0) -
署名者を追加します。
署名者を追加します。
このメソッドは使わないでください。
このメソッドは PKCS#7 の低レベル API であり、正しく使うのは
難しいでしょう。
@param signer 追加する署名者(OpenSSL::PKCS7::SignerInfo オブジェクト) -
OpenSSL
:: PKey :: DSA # syssign(data) -> String (60637.0) -
自身で data に署名をし、 DER 形式の文字列で署名を返します。
自身で data に署名をし、 DER 形式の文字列で署名を返します。
data は適切なハッシュ関数で計算されたダイジェストであると仮定
しています。
通常は OpenSSL::PKey::PKey#sign を使い、署名をすべきです。
@param data 署名の対象 -
OpenSSL
:: PKCS7 # add _ certificate(cert) -> self (51373.0) -
署名に添付する証明書を追加します。
署名に添付する証明書を追加します。
通常は OpenSSL::PKCS7.sign の引数で添付する証明書を指定した
ほうがよいでしょう。
@param cert 追加する証明書(OpenSSL::X509::Certificate オブジェクト)
@raise OpenSSL::PKCS7::PKCS7Error 追加に失敗した場合に発生します。 -
OpenSSL
:: PKCS7 # detached -> bool (51355.0) -
平文に署名を付ける形式(multipart/signed)かどうかを返します。
平文に署名を付ける形式(multipart/signed)かどうかを返します。
OpenSSL::PKCS7.sign で flags に OpenSSL::PKCS7::DETACHED
を渡した場合に真になります。 -
OpenSSL
:: PKCS7 # detached? -> bool (51355.0) -
平文に署名を付ける形式(multipart/signed)かどうかを返します。
平文に署名を付ける形式(multipart/signed)かどうかを返します。
OpenSSL::PKCS7.sign で flags に OpenSSL::PKCS7::DETACHED
を渡した場合に真になります。 -
OpenSSL
:: PKCS7 :: DETACHED -> Integer (51355.0) -
平文に署名を付ける形式 (multipart/signed) で行います。
平文に署名を付ける形式 (multipart/signed) で行います。
OpenSSL::PKCS7.sign、OpenSSL::PKCS7.write_smime
で利用可能なフラグです。 -
OpenSSL
:: PKey :: EC # dsa _ verify _ asn1(data , sig) -> bool (51355.0) -
公開鍵を用い、署名を ECDSA で検証します。
公開鍵を用い、署名を ECDSA で検証します。
data のダイジェストを取る処理はこのメソッドに含まれていません。
自身で適当なダイジェストを取る必要があります。
検証に成功した場合は true を返します。
@param data 署名対象のデータ(文字列)
@param sig 署名データ(文字列)
@raise OpenSSL::PKey::ECError 署名の検証時にエラーが生じた場合に発生します
@see OpenSSL::PKey::EC#dsa_sign_asn1 -
OpenSSL
:: PKey :: DH (51127.0) -
Diffie-Hellman 鍵共有クラス
Diffie-Hellman 鍵共有クラス
Diffie-Hellman 鍵共有プロトコルは署名ができないため、
OpenSSL::PKey::PKey#sign や OpenSSL::PKey::PKey#verify
を呼び署名や署名の検証を行おうとすると例外
OpenSSL::PKey::PKeyError が発生します。
Diffie-Hellman はこのライブラリでは基本的には鍵共有にしか利用できません。
=== 例
鍵共有の例。
require 'openssl'
# パラメータの生成
dh = OpenSSL::PKey::DH.generate(10... -
OpenSSL
:: PKey :: DSA (51091.0) -
DSA 公開鍵暗号クラス
DSA 公開鍵暗号クラス
実際には、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
:: PKCS7 :: SignerInfo . new(cert , key , digest) -> OpenSSL :: PKCS7 :: SignerInfo (42958.0) -
署名者オブジェクトを証明書、秘密鍵、ダイジェスト方式から生成します。
署名者オブジェクトを証明書、秘密鍵、ダイジェスト方式から生成します。
証明書、秘密鍵、ダイジェスト方式は署名をするために利用します。
@param cert 証明書(OpenSSL::X509::Certificate オブジェクト)
@param key 秘密鍵(OpenSSL::PKey::PKey オブジェクト)
@param digest メッセージダイジェスト方式(文字列もしくは OpenSSL::Digest オブジェクト) -
OpenSSL
:: PKey :: DSA # sysverify(data , sign) -> bool (42724.0) -
署名 sign と自身の公開鍵で data を検証します。
署名 sign と自身の公開鍵で data を検証します。
検証に成功した場合は真を返します。
sign に OpenSSL::PKey::DSA#syssign が返す DER 形式の文字列
を渡さなければなりません。
data は適切なハッシュ関数で計算されたダイジェストであると仮定
しています。
@param data 検証対象の文字列
@param sign 署名文字列
@raise OpenSSL::PKey::DSAError 検証時にエラーが起きた場合に発生します。
正しい署名でなかった場合など、検証に失敗した場合はこの
例外は発生しないことに... -
OpenSSL
:: PKCS7 . encrypt(certs , data , cipher=nil , flags=0) -> OpenSSL :: PKCS7 (33730.0) -
data を証明書の公開鍵で暗号化します。
data を証明書の公開鍵で暗号化します。
暗号化は複数の公開鍵を用いてすることが可能です。そのためには
複数の証明書を配列で渡します。
data には任意の文字列を渡せますが、一般的には MIME 形式の文字列を渡します。
署名と暗号化の両方をしたい場合は、
署名(OpenSSL::PKCS7.sign)された S/MIME 形式の文字列を
渡すことが一般的です。
cipher は共通鍵暗号の方式を OpenSSL::Cipher オブジェクトで指定します。
nil を渡すと適当な方式が選ばれます。互換性を気にするのであれば
triple DES を使うとよいでしょう。多くのクライアン... -
OpenSSL
:: PKey :: PKey # verify(digest , sign , data) -> bool (33706.0) -
data を秘密鍵で署名したその署名文字列が sign であることを公開鍵を使って検証し、検証に成功すれば true を返します。
data を秘密鍵で署名したその署名文字列が sign
であることを公開鍵を使って検証し、検証に成功すれば true
を返します。
digest は利用するハッシュ関数の名前を "sha256" や "md5"
といった文字列で指定します。
DSA で検証をする場合はハッシュ関数には "dss1" を指定してください。
検証に失敗した、つまり署名時と異なるハッシュ関数を使った、
sign が正しい署名でなかった場合などは false を返します。
@param digest 利用するハッシュ関数の名前
@param sign 検証に利用する署名文字列
@param data 検証対... -
OpenSSL
:: PKCS7 . write _ smime(p7sig , data=nil , flags = 0) -> String (33571.0) -
PKCS7 オブジェクトから S/MIME 形式の文字列を返します。
PKCS7 オブジェクトから S/MIME 形式の文字列を返します。
data には署名対象のデータを渡します。
data に nil を渡すと OpenSSL::PKCS7#data で得られる
文字列を用います。通常は nil を渡してください。
flags には以下の定数の or を渡します。
* OpenSSL::PKCS7::DETACHED
クリア署名をします。これは OpenSSL::PKCS7.sign で
OpenSSL::PKCS7::DETACHED を渡した場合にのみ意味を持ちます。
* OpenSSL::PKCS7::TEXT
... -
OpenSSL
:: PKCS7 # verify(certs , store , indata = nil , flags = 0) -> bool (33535.0) -
署名を検証します。
署名を検証します。
検証に成功した場合は真を、失敗した場合は偽を返します。
certs には署名者の証明書を含む配列を渡します。
通常 S/MIME 署名には証明者の証明書が含まれていますが、
OpenSSL::PKCS7.sign で OpenSSL::PKCS7::NOCERTS を渡した
場合には含まれていないので、明示的に渡す必要があります。
このメソッドは配列から適切な証明書を自動的に選択します。
store には検証に用いる証明書ストアを渡します。
検証に必要な信頼できる CA 証明書をあらかじめ証明書ストアに含めておく
必要があります。
indata は署名の対象となった... -
rubygems
/ security (343.0) -
このライブラリは暗号署名を RubyGems パッケージに使用するために使用します。
このライブラリは暗号署名を RubyGems パッケージに使用するために使用します。
=== 署名付きの Gem パッケージ
==== 目次
* 概要
* 解説
* コマンドラインオプション
* OpenSSL リファレンス
* Bugs / TODO
* 作者について
==== 概要
このライブラリは暗号署名を RubyGems パッケージに使用するために使用します。
以下のセクションでは、署名付きの Gem パッケージを作成する方法を
ステップバイステップで解説しています。
==== 解説
@todo メソッドではない
あなたが自分の Gem に署名するためには、...