112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
# File 'lib/action_mailer_x509/security_object.rb', line 112
def signed_certificate(params = {})
params.symbolize_keys!
root_key, root_ca = self_signed_certificate(params)
key, cert = certificate(params, root_ca)
cert.serial = 2
ef = OpenSSL::X509::ExtensionFactory.new
ef.subject_certificate = cert
ef.issuer_certificate = root_ca
cert.add_extension(ef.create_extension('keyUsage', 'digitalSignature', true))
cert.add_extension(ef.create_extension('subjectKeyIdentifier', 'hash', false))
cert.sign(root_key, OpenSSL::Digest::SHA256.new)
[ key, cert ]
end
|