superclass=
type=module
library=openssl
extended=
included=

OpenSSL Ѥ뵿ϢΥ⥸塼Ǥ

  * [[RFC:4086]]

=== Ź
OpenSSL Ǥϡ뤿ʤɤѤƤޤ㤨 RSA Ǥ
(512bit1024bitʤ)ǿȤ̩
ڥ׻ޤ¾ͤΤƤϤʤʤᡢ
ϳοԲǽɤäƤɬפޤ
Τ褦ʥ᥽åɤˤϰʲΤΤޤ
  * [[m:OpenSSL::PKey::RSA.generate]]
  * [[m:OpenSSL::PKey::DSA.generate]]
  * [[m:OpenSSL::PKey::DH.generate]]
  * [[m:OpenSSL::Cipher#random_key]]
Τ褦ŬڤʼĵŬڤʥɤϤ
ȤˤäƼ¸Ǥޤ

OpenSSL ˤϤΤ褦ʵ郎Ƥޤ
ơε OpenSSL ͡ʥ⥸塼뤫ѤƤޤ
˵󤲤᥽åɤ¾ˡ
  * [[m:OpenSSL::BN.rand]]
  * [[m:OpenSSL::BN.rand_range]]
  * [[m:OpenSSL::BN.generate_prime]]
  * [[m:OpenSSL::Cipher#random_iv]]
ʤɤǤѤޤ

ŬڤʥɤͿʤưޤ
OpenSSL ˤϤΤ API 
  * [[m:OpenSSL::Random.#random_add]]
  * [[m:OpenSSL::Random.#seed]]
  * [[m:OpenSSL::Random.#load_random_file]]
¸ߤޤ API ϼŪȡʲΤ褦ˤʤޤ
  * ɤγƥӥåȤŪ𻨤ͽ¬Բǽӥå
    𻨤ϥȥԡȤ(ñ̤ bit, 8bit = 1byte)
    ̤뤳ȤǤ롣
  * ä˥ɤΤ٤ƤΥӥåȤ˥Ǥˤϡ
    ȥԡ礭ȥɤΥӥåȿϰפ롣դ
    ɤΤ٤ƤΥӥåȤ̣ǴΤʤС
    ȥԡ 0 Ǥ롣
  * ˥ȥԡɲä뤳Ȥˤä
    狼ͽ¬Բǽˤʤ롣

ȥԡˤɤΤȰΤޤ㤨и߻(Unix time)
ȥԡȤƤϰǤʤʤͽ¬ԲǽʤΤ
äʬΤߤǤꡢ̤ΥӥåȤͽ¬ǽǤ
˴ޤޤ륨ȥԡ̤ŬڤɾǤʤХɤȤѤǤޤ
̾ϤäɤȥԡϤǤ
Linux Ǥ /dev/random ŬʥȥԡȤʤǤ礦

OpenSSL Ǥ EGD(Entropy Gathering Daemon)饨ȥԡ뤳
ǤޤŬڤʥȥԡ󶡤Ƥʤ OS ǤϤΤ褦
ˡǥȥԡѰդɬפ뤫⤷ޤ

ºݤΤȤOpenSSL СˤäƤ OS 󶡤륨ȥԡ
ɬפ̤Υȥԡ褦Ƥ뤿ᡢ API Ȥä
ȥԡɲäɬפϤʤ礬¿Ǥ礦 OS ˤäƤ
OpenSSL Ѳǽʥȥԡ򸫤Ĥʤ礬ꡢ
ξϤΥ᥽åɤŪ˥ȥԡɲäɬפǤ礦
