openssl_pkcs7_encrypt
S/MIME メッセージを暗号化する
&reftitle.description;
boolopenssl_pkcs7_encrypt
stringinput_filename
stringoutput_filename
OpenSSLCertificatearraystringcertificate
arraynullheaders
intflags0
intcipher_algoOPENSSL_CIPHER_AES_128_CBC
openssl_pkcs7_encrypt は、
input_filename という名前のファイルの内容を
RC2 40 ビット暗号により暗号化します。この内容は、
certificate
で指定した意図する受信者によってのみ読むことが可能です。
&reftitle.parameters;
input_filename
output_filename
certificate
X.509 証明書または X.509 証明書の配列。
headers
headers は、
暗号化された後にデータの前に付加されるヘッダの配列です。
headers
はヘッダ名をキーとする連想配列または添字配列であり、
各要素には、各ヘッダ行が一行ずつ含まれています。
flags
flags は
オプションとして使用可能であり、エンコード処理を変更するために指定します。
PKCS7 定数 を参照ください。
cipher_algo
暗号定数のうちの一つ。
&reftitle.returnvalues;
&return.success;
&reftitle.changelog;
&Version;
&Description;
8.1.0
デフォルトの暗号化アルゴリズム
(cipher_algo)
が、
AES-128-CBC (OPENSSL_CIPHER_AES_128_CBC)
になりました。
これより前のバージョンでは、
PKCS7/CMS (OPENSSL_CIPHER_RC2_40)
が使われていました。
8.0.0
certificate は、
OpenSSLCertificate クラスのインスタンスを受け入れるようになりました。
これより前のバージョンでは、
OpenSSL X.509 CSR 型のリソースを受け入れていました。
&reftitle.examples;
openssl_pkcs7_encrypt の例
"nighthawk@example.com", // 連想配列の構文
"From: HQ ", // 添字配列の構文
"Subject" => "Eyes only"))) {
// メッセージを暗号化し、送信します!
exec(ini_get("sendmail_path") . " < enc.txt");
}
?>
]]>