PHPマニュアル/PEARマニュアル | ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot

openssl_pkcs7_sign - S/MIME メッセージにサインする | JavaScript入門&応用&リファレンスなら「JavaScriptist」

  

openssl_pkcs7_sign

(PHP 4 >= 4.0.6, PHP 5, PHP 7)

openssl_pkcs7_signS/MIME メッセージにサインする

説明

bool openssl_pkcs7_sign ( string $infilename , string $outfilename , mixed $signcert , mixed $privkey , array $headers [, int $flags = PKCS7_DETACHED [, string $extracerts ]] )

openssl_pkcs7_sign() は、 infilename という名前のファイルの内容について パラメータ signcert および privkey で指定した証明書と公開鍵を用いてサインをします。

パラメータ

infilename

outfilename

signcert

privkey

headers

headers は、ヘッダの配列です。このヘッダは、 サインされた後でデータの前に付加されます (このパラメータの形式の詳細については openssl_pkcs7_encrypt() を参照ください)。

flags

flags を出力を変更するために使用することが可能です。 PKCS7 定数 を参照ください。

extracerts

extracerts には、 サインに含めるための他の一連の証明書を記述したファイル名を指定します。 これは、例えば送信者が使用した証明書を受信者が検証しやすくするために使用することが可能です。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

例1 openssl_pkcs7_sign() の例

<?php
// 受信者が送信者を確認できるようにサインしたいメッセージ
$data = <<<EOD

You have my authorization to spend $10,000 on dinner expenses.

The CEO
EOD;
// ファイルにメッセージを保存
$fp fopen("msg.txt""w");
fwrite($fp$data);
fclose($fp);
// 暗号化
if (openssl_pkcs7_sign("msg.txt""signed.txt""file://mycert.pem",
    array(
"file://mycert.pem""mypassphrase"),
    array(
"To" => "joes@example.com"// 連想配列の構文
          
"From: HQ <ceo@example.com>"// 添字配列の構文
          
"Subject" => "Eyes only")
    )) {
    
// メッセージはサインされました。送信しましょう!
    
exec(ini_get("sendmail_path") . " < signed.txt");
}
?>


忘却曲線を使ってこの関数を確実に記憶に残す

フォーラムで「openssl_pkcs7_sign - S/MIME メッセージにサインする」について話す
各種マニュアル: PHPマニュアル | PEARマニュアル | Smarty(英語)マニュアル | PHP-GTKマニュアル | openssl_pkcs7_sign - S/MIME メッセージにサインする」をGoogle検索
copyright © 1997-2024 PHP ドキュメント作成グループ(ライセンス). provided by php spot. マニュアル: