openssl_pkcs7_encrypt
    (PHP 4 >= 4.0.6, PHP 5)
openssl_pkcs7_encrypt -- S/MIME メッセージを暗号化する
説明
bool 
openssl_pkcs7_encrypt ( string infile, string outfile, mixed recipcerts, array headers [, int flags [, int cipherid]] )
     openssl_pkcs7_encrypt() は、
     infile という名前のファイルの内容を
     RC2 40 ビット暗号により暗号化します。この内容は、
     recipcerts で指定した意図する受信者によってのみ
     読むことが可能です。recipcerts は、
     X.509 証明書または X.509 証明書の配列です。
     headers は、暗号化された後にデータの前に
     付加されるヘッダの配列です。flags は
     オプションとして使用可能であり、エンコード処理を変更するために
     指定されます。PKCS7 定数を
     参照ください。headers はヘッダ名をキーとする
     連想配列または添字配列であり、各要素には、各ヘッダ行が一行ずつ
     含まれています。
     PHP 5 以降、cipherid で暗号を選択可能です。
    
     
例 1. openssl_pkcs7_encrypt() の例 
<?php // 暗号化するメッセージを nighthawk という名前の外部の秘密の // エージェントに送信します。送信先の証明書をファイル nighthawk.pem に // 有しています。 $data = <<<EOD Nighthawk,
  Top secret, for your eyes only!
  The enemy is closing in! Meet me at the cafe at 8.30am to collect your forged passport!
  HQ EOD;
  // キーを読み込む $key = file_get_contents("nighthawk.pem");
  // ファイルにメッセージを保存 $fp = fopen("msg.txt", "w"); fwrite($fp, $data); fclose($fp);
  // メッセージを暗号化 if (openssl_pkcs7_encrypt("msg.txt", "enc.txt", $key,     array("To" => "nighthawk@example.com", // 連想配列の構文           "From: HQ <hq@example.com>", // 添字配列の構文           "Subject" => "Eyes only"))) {     // メッセージを暗号化し、送信します!     exec(ini_get("sendmail_path") . " < enc.txt"); } ?>
 |  
  |