ライブラリ
- openssl (42)
クラス
-
OpenSSL
:: Cipher (1) -
OpenSSL
:: Digest (2) -
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
:: HMAC (3) -
OpenSSL
:: PKey :: PKey (2) -
OpenSSL
:: SSL :: SSLContext (1) -
OpenSSL
:: SSL :: SSLSocket (1) -
OpenSSL
:: X509 :: Request (1)
モジュール
-
OpenSSL
:: PKCS5 (2)
検索結果
先頭5件
-
openssl (114259.0)
-
OpenSSL(https://www.openssl.org/) を Ruby から扱うためのライブラリです。
OpenSSL(https://www.openssl.org/)
を Ruby から扱うためのライブラリです。
このドキュメントでは SSL/TLS の一般的事項については
解説をしません。利用者は、SSL/TLSの各概念、例えば
以下の事項について理解している必要があります。
* 暗号と認証に関する一般的概念
* セキュリティに対する攻撃法
* 公開鍵暗号と秘密鍵暗号
* 署名の役割、署名の方法とその検証
* 公開鍵基盤(PKI, Public Key Infrastructure)
* X.509 証明書
* 暗号と乱数について
SSLのようなセキュリティ技... -
OpenSSL
:: Digest :: SHA (87049.0) -
ハッシュ関数 SHA を表すクラス
ハッシュ関数 SHA を表すクラス -
OpenSSL
:: PKCS5 . # pbkdf2 _ hmac _ sha1(pass , salt , iter , keylen) -> String (51340.0) -
pass と salt から共通鍵暗号の鍵および IV(Initialization Vector) を生成します。
pass と salt から共通鍵暗号の鍵および IV(Initialization Vector)
を生成します。
iter は鍵生成時のハッシュ関数の繰り返し回数で、大きな値を指定するほど
安全であることが期待されます。RFCでは少なくとも1000を
指定することを推奨しています。
返り値の文字列から鍵と IV に必要なバイト数を切り出して利用します。
ハッシュ関数には SHA1 を用います。
これは 2898(PKCS#5 v2.0)互換です。
@param pass パスワード文字列
@param salt salt 文字列
@param iter 鍵および IV 生成時のハ... -
OpenSSL
:: Digest :: SHA1 (51049.0) -
ハッシュ関数 SHA1 を表すクラス
ハッシュ関数 SHA1 を表すクラス -
OpenSSL
:: Digest :: SHA224 (51049.0) -
ハッシュ関数 SHA224 を表すクラス
ハッシュ関数 SHA224 を表すクラス -
OpenSSL
:: Digest :: SHA256 (51049.0) -
ハッシュ関数 SHA256 を表すクラス
ハッシュ関数 SHA256 を表すクラス -
OpenSSL
:: Digest :: SHA384 (51049.0) -
ハッシュ関数 SHA384 を表すクラス
ハッシュ関数 SHA384 を表すクラス -
OpenSSL
:: Digest :: SHA512 (51049.0) -
ハッシュ関数 SHA512 を表すクラス
ハッシュ関数 SHA512 を表すクラス -
OpenSSL
:: Digest :: SHA . new(data=nil) -> OpenSSL :: Digest :: SHA (42607.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: SHA1 . new(data=nil) -> OpenSSL :: Digest :: SHA1 (42607.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: SHA224 . new(data=nil) -> OpenSSL :: Digest :: SHA224 (42607.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: SHA256 . new(data=nil) -> OpenSSL :: Digest :: SHA256 (42607.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: SHA384 . new(data=nil) -> OpenSSL :: Digest :: SHA384 (42607.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: SHA512 . new(data=nil) -> OpenSSL :: Digest :: SHA512 (42607.0) -
新しいダイジェストオブジェクトを生成します。
新しいダイジェストオブジェクトを生成します。
data に文字列を渡すとその内容で内部状態を更新します。
@param data 入力文字列 -
OpenSSL
:: Digest :: SHA . digest(data) -> String (42049.0) -
data のダイジェストを SHA で計算します。
data のダイジェストを SHA で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA . hexdigest(data) -> String (42049.0) -
data のダイジェストを SHA で計算し、16進文字列で返します。
data のダイジェストを SHA で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA1 . digest(data) -> String (42049.0) -
data のダイジェストを SHA1 で計算します。
data のダイジェストを SHA1 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA1 . hexdigest(data) -> String (42049.0) -
data のダイジェストを SHA1 で計算し、16進文字列で返します。
data のダイジェストを SHA1 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA224 . digest(data) -> String (42049.0) -
data のダイジェストを SHA224 で計算します。
data のダイジェストを SHA224 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA224 . hexdigest(data) -> String (42049.0) -
data のダイジェストを SHA224 で計算し、16進文字列で返します。
data のダイジェストを SHA224 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA256 . digest(data) -> String (42049.0) -
data のダイジェストを SHA256 で計算します。
data のダイジェストを SHA256 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA256 . hexdigest(data) -> String (42049.0) -
data のダイジェストを SHA256 で計算し、16進文字列で返します。
data のダイジェストを SHA256 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA384 . digest(data) -> String (42049.0) -
data のダイジェストを SHA384 で計算します。
data のダイジェストを SHA384 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA384 . hexdigest(data) -> String (42049.0) -
data のダイジェストを SHA384 で計算し、16進文字列で返します。
data のダイジェストを SHA384 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA512 . digest(data) -> String (42049.0) -
data のダイジェストを SHA512 で計算します。
data のダイジェストを SHA512 で計算します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Digest :: SHA512 . hexdigest(data) -> String (42049.0) -
data のダイジェストを SHA512 で計算し、16進文字列で返します。
data のダイジェストを SHA512 で計算し、16進文字列で返します。
@param data ダイジェストを計算する文字列 -
OpenSSL
:: Cipher (33325.0) -
共通鍵暗号のために抽象化されたインターフェースを提供するクラスです。
共通鍵暗号のために抽象化されたインターフェースを提供するクラスです。
基本的にこのクラスを直接使ってデータを暗号化することは
避けてください。通常はより高水準なインターフェースが利用可能な
はずです。必要なのは暗号アルゴリズムを指定するため
OpenSSL::Cipher.new で暗号オブジェクトを生成することだけでしょう。
もし、このクラスを直接利用して暗号化する場合は、暗号の鍵や
IV(Initialization Vector)の取り扱いについて正しく理解してからに
してください。
以下の手順で利用します。
* OpenSSL::Cipher.new や OpenSSL::... -
OpenSSL
:: Digest . new(name , data=nil) -> OpenSSL :: Digest (33322.0) -
ダイジェストオブジェクトを生成します。
ダイジェストオブジェクトを生成します。
name でハッシュ関数の種類を選びます。
data に文字列を渡すと、その文字列でオブジェクトの内部状態を更新します。
@param name ハッシュ関数の種類を文字列("md5", "sha256" など)で指定
@param data 入力文字列
@raise RuntimeError サポートされていないアルゴリズムを指定した場合に発生します -
OpenSSL
:: HMAC . new(key , digest) -> OpenSSL :: HMAC (33322.0) -
HMAC を計算するためのオブジェクトを生成します。
HMAC を計算するためのオブジェクトを生成します。
生成されたオブジェクトの内部状態は入力なしの状態にリセットされます。
digest には利用するハッシュ関数を表す文字列("md5", "sha256" など)
を渡します。
@param key 利用する鍵の文字列
@param digest 利用するハッシュ関数 -
OpenSSL
:: PKey :: RSA (33271.0) -
RSA 暗号鍵のクラスです。
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
のいずれかでしょう。これ以外のメソッドを利用するときは
RSA についてよく理解し、必要な場... -
OpenSSL
:: X509 :: Request (33163.0) -
X.509 の証明書署名要求(Certificate Signing Request, CSR)を表わす クラスです。
X.509 の証明書署名要求(Certificate Signing Request, CSR)を表わす
クラスです。
X.509 CSR については 2986 などを参照してください。
=== 例
CSR を生成する例。
require 'openssl'
# ファイルから秘密鍵を読み込む
rsa = OpenSSL::PKey::RSA.new(File.read("privkey.pem"))
# 新しい CSR オブジェクトを生成
csr = OpenSSL::X509::Request.new
# DN を生成
name = OpenSSL::X50... -
OpenSSL
:: PKCS5 . # pbkdf2 _ hmac(pass , salt , iter , keylen , digest) -> String (33127.0) -
pass と salt から共通鍵暗号の鍵および IV(Initialization Vector) を生成します。
pass と salt から共通鍵暗号の鍵および IV(Initialization Vector)
を生成します。
OpenSSL::PKCS5.#pbkdf2_hmac_sha1 と異なり任意の
ハッシュ関数を利用できます。
返り値の文字列から鍵と IV に必要なバイト数を切り出して利用します。
この関数は OpenSSL 1.0.0 以降でなければ利用できません。
@param pass パスワード文字列
@param salt salt 文字列
@param iter 鍵および IV 生成時のハッシュ関数の繰り返し回数
@param keylen 結果の文字列のバイト数
@pa... -
OpenSSL
:: Digest (33091.0) -
ハッシュ関数のためのインターフェースを提供するクラスです。
ハッシュ関数のためのインターフェースを提供するクラスです。
このインターフェースには2通りの利用法が存在します。
一方は文字列から直接ハッシュを計算する (OpenSSL::Digest.digest,
Digest::Instance#hexdigest) 方法です。短い文字列の
ダイジェストを取るときにはこちらを使えばよいでしょう。
もう一つはダイジェストオブジェクトを作成して、文字列を順次
OpenSSL::Digest#update で渡すことでダイジェストを計算
します。大きなファイルのハッシュ値を計算する場合などに
利用します。
例:
require 'openssl'... -
OpenSSL
:: Cipher # pkcs5 _ keyivgen(pass , salt=nil , num=2048 , digest="md5") -> nil (33073.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
:: SSL :: SSLContext # ciphers -> [[String , String , Integer , Integer]] (33073.0) -
利用可能な共通鍵暗号の種類を配列で返します。
利用可能な共通鍵暗号の種類を配列で返します。
配列の各要素は以下のような配列です
[暗号方式の名前の文字列, 利用可能なSSL/TLSのバージョン文字列, 鍵長(ビット数), アルゴリズムのビット長]
例:
require 'openssl'
ctx = OpenSSL::SSL::SSLContext.new('TLSv1')
ctx.ciphers
# => [["DHE-RSA-AES256-SHA", "TLSv1/SSLv3", 256, 256],
# ["DHE-DSS-AES256-SHA", "TLSv1/SSLv3", 256, 256]... -
OpenSSL
:: X509 :: Request # sign(key , digest) -> self (33073.0) -
証明書署名要求に秘密鍵で署名をします。
証明書署名要求に秘密鍵で署名をします。
通常、証明書署名要求は申請者の秘密鍵で署名されます。
@param key 秘密鍵(OpenSSL::PKey::PKey のサブクラスのオブジェクト)
@param digest ハッシュ関数を表す文字列("sha1" など)
@raise OpenSSL::X509::RequestError 署名に失敗した場合に発生します
@see OpenSSL::X509::Request#verify -
OpenSSL
:: SSL :: SSLSocket # cipher -> [String , String , Integer , Integer] (33055.0) -
現在実際に使われている暗号の情報を配列で返します。
現在実際に使われている暗号の情報を配列で返します。
返される配列の形式は以下の例のように [暗号名, TLS/SSLのバージョン, 鍵長, アルゴリズムで使われる bit 数] となります。
["DES-CBC3-SHA", "TLSv1/SSLv3", 168, 168]
OpenSSL::SSL::SSLSocket#connect や OpenSSL::SSL::SSLSocket#accept
で SSL/TLS ハンドシェイクを行う前にこのメソッドを呼ぶと nil を返します。 -
OpenSSL
:: HMAC (33037.0) -
HMAC を表すクラス。
HMAC を表すクラス。
HMAC とは MAC(message authentication code, ハッシュ関数(MD5やSHAなど)
と鍵の文字列をパラメータとするハッシュ関数)の一種です。
メッセージの認証に利用されます。
OpenSSL::Digest のようにある与えられた文字列の
ハッシュ値を直接計算するインターフェースと
インスタンスを生成して入力文字列を順次与えてハッシュ値を
計算するインターフェースの2つがあります。
HMAC は2104 で定義されています。 -
OpenSSL
:: PKey :: PKey # sign(digest , data) -> String (33037.0) -
秘密鍵で data に署名し、署名の文字列を返します。
秘密鍵で data に署名し、署名の文字列を返します。
digest は利用するハッシュ関数の名前を "sha256" や "md5"
といった文字列で指定します。
DSA で署名をする場合はハッシュ関数には "dss1" を指定してください。
@param digest 利用するハッシュ関数の名前
@param data 署名する文字列
@raise OpenSSL::PKey::PKeyError 署名時にエラーが起きた場合に発生します -
OpenSSL
:: PKey :: PKey # verify(digest , sign , data) -> bool (33037.0) -
data を秘密鍵で署名したその署名文字列が sign であることを公開鍵を使って検証し、検証に成功すれば true を返します。
data を秘密鍵で署名したその署名文字列が sign
であることを公開鍵を使って検証し、検証に成功すれば true
を返します。
digest は利用するハッシュ関数の名前を "sha256" や "md5"
といった文字列で指定します。
DSA で検証をする場合はハッシュ関数には "dss1" を指定してください。
検証に失敗した、つまり署名時と異なるハッシュ関数を使った、
sign が正しい署名でなかった場合などは false を返します。
@param digest 利用するハッシュ関数の名前
@param sign 検証に利用する署名文字列
@param data 検証対... -
OpenSSL
:: Digest . digest(name , data) -> String (33019.0) -
data のダイジェストを計算します。
data のダイジェストを計算します。
name でハッシュ関数を指定します。
@param name ハッシュ関数の種類を文字列("md5", "sha256" など)で指定
@param data ダイジェストを計算する文字列 -
OpenSSL
:: HMAC . digest(digest , key , data) -> String (33019.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 (33019.0) -
渡された digest と key を用いて data の HMAC を計算し、 その値を16進文字列で返します。
渡された digest と key を用いて data の HMAC を計算し、
その値を16進文字列で返します。
digest には利用するハッシュ関数を表す文字列("md5", "sha256" など)
を渡します。
@param digest 利用するハッシュ関数
@param key 利用する鍵の文字列
@param data HMAC を計算する文字列 -
ruby 1
. 8 . 3 feature (289.0) -
ruby 1.8.3 feature *((<ruby 1.8 feature>)) *((<ruby 1.8.2 feature>))
ruby 1.8.3 feature
*((<ruby 1.8 feature>))
*((<ruby 1.8.2 feature>))
ruby 1.8.2 から ruby 1.8.3 までの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
記号について(特に重要なものは大文字(主観))
* カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ...