OpenSSL 関数
PHP Manual

openssl_sign

(PHP 4 >= 4.0.4, PHP 5)

openssl_sign署名を生成する

説明

bool openssl_sign ( string $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

デフォルト値は OPENSSL_ALGO_SHA1 です。 詳細な情報は、 署名アルゴリズム の一覧を参照ください。

返り値

成功した場合に 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($fp8192);
fclose($fp);
$pkeyid openssl_get_privatekey($priv_key);

// 署名を計算
openssl_sign($data$signature$pkeyid);

// メモリからキーを開放する
openssl_free_key($pkeyid);
?>

参考


OpenSSL 関数
PHP Manual