(PHP 4 >= 4.0.4, PHP 5)
openssl_sign — 署名を生成する
$data
, string &$signature
, mixed $priv_key_id
[, int $signature_alg
= OPENSSL_ALGO_SHA1
] )
openssl_sign() は、指定した
data
に関してハッシュ計算に SHA1 を使用して
署名を計算し、その後 priv_key_id
で
指定した秘密鍵を使用して暗号化を行います。data 自体は
暗号化されないことに注意してください。
data
signature
成功した場合、署名が signature
に格納されます。
priv_key_id
signature_alg
詳細な情報は、 署名アルゴリズム の一覧を参照ください。
成功した場合に TRUE
を、失敗した場合に FALSE
を返します。
バージョン | 説明 |
---|---|
5.0.0 |
signature_alg パラメータが追加されました。
|
例1 openssl_sign() の例
<?php
// $data に署名するデータが含まれていると仮定
// ファイルから秘密鍵を取得するには、使用することができます
$fp = fopen("/src/openssl-0.9.6/demos/sign/key.pem", "r");
$priv_key = fread($fp, 8192);
fclose($fp);
$pkeyid = openssl_get_privatekey($priv_key);
// 署名を計算
openssl_sign($data, $signature, $pkeyid);
// メモリからキーを開放する
openssl_free_key($pkeyid);
?>