singleton method OpenSSL::PKCS7.write_smime
write_smime(p7sig, data=nil, flags = 0) -> String
-
PKCS7 オブジェクトから S/MIME 形式の文字列を返します。
data には署名対象のデータを渡します。 data に nil を渡すと OpenSSL::PKCS7#data で得られる 文字列を用います。通常は nil を渡してください。
flags には以下の定数の or を渡します。
- OpenSSL::PKCS7::DETACHED クリア署名をします。これは OpenSSL::PKCS7.sign で OpenSSL::PKCS7::DETACHED を渡した場合にのみ意味を持ちます。
- OpenSSL::PKCS7::TEXT MIME ヘッダに text/plain を付加します。 これは OpenSSL::PKCS7.sign で OpenSSL::PKCS7::DETACHED を渡した場合にのみ意味を持ちます。
例:
data = "foobar" p7 = PKCS7.sign( X509::Certificate.new(File.read('cert.pem')), PKey::RSA.new(File.read('privkey.pem')), data) smime = PKCS7.write_smime(p7)
- [PARAM] p7sig:
- PKCS#7 オブジェクト
- [PARAM] data:
- 署名されたデータ文字列
- [PARAM] flags:
- フラグ(整数値)
- [EXCEPTION] OpenSSL::PKCS::PKCS7Error:
- S/MIME形式への変換に失敗した場合に発生します
class OpenSSL::PKCS7