Ruby 1.9.0 > Home > All Libraries > library openssl
OpenSSL を Ruby から扱うためのライブラリです。
http://www.openssl.org support library for Ruby. 動作や使える暗号方式は
[[unknown:執筆者募集]]
自己署名証明書の作成の例です。自分の秘密鍵で自分の公開鍵に署名しているから自己署名です。
require 'openssl'
key = OpenSSL::PKey::RSA.new(1024)
digest = OpenSSL::Digest::SHA1.new()
issu = sub = OpenSSL::X509::Name.new()
sub.add_entry('C', 'JP')
sub.add_entry('ST', 'Shimane')
sub.add_entry('CN', 'Ruby Taro')
cer = OpenSSL::X509::Certificate.new()
cer.not_before = Time.at(0)
cer.not_after = Time.at(0)
cer.public_key = key # <= 署名する対象となる公開鍵
cer.serial = 1
cer.issuer = issu
cer.subject = sub
cer.sign(key, digest) # <= 署名するのに使う秘密鍵とハッシュ関数
print cer.to_text
| class OpenSSL::ASN1::ASN1Error | OpenSSL::OpenSSLError を継承した例外です。 |
| class OpenSSL::BNError | |
| class OpenSSL::CipherError | |
| class OpenSSL::Digest::DigestError | |
| class OpenSSL::Engine::EngineError | |
| class OpenSSL::HMACError | |
| class OpenSSL::Netscape::SPKIError | |
| class OpenSSL::OpenSSLError | |
| class OpenSSL::PKCS12::PKCS12Error | |
| class OpenSSL::PKey::PKeyError | |
| class OpenSSL::Random::RandomError | |
| class OpenSSL::SSL::SSLError | |
| class OpenSSL::X509::AttributeError | |
| class OpenSSL::X509::CRLError | |
| class OpenSSL::X509::CertificateError | |
| class OpenSSL::X509::ExtensionError | |
| class OpenSSL::X509::NameError | |
| class OpenSSL::X509::RequestError | |
| class OpenSSL::X509::RevokedError | |
| class OpenSSL::X509::Store |