PHP マニュアル
前のページ |  | 次のページ

# 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] )

成功した場合に `TRUE` を、失敗した場合に `FALSE` を返します。 成功した場合、署名が `signature` に格納されます。

openssl_sign() は、指定した `data` に関してハッシュ計算に SHA1 を使用して 署名を計算し、その後 `priv_key_id` で 指定した秘密鍵を使用して暗号化を行います。data 自体は 暗号化されないことに注意してください。

> 注意: オプションの 4 番目のパラメータ `signature_alg` は、バージョン 5.0.0 で追加されました。デフォルト値は `OPENSSL_ALGO_SHA1` です。 詳細な情報は、 署名アルゴリズム の一覧を参照ください。

例 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); ?>`

openssl_verify() も参照ください。

前のページ | ホーム | 次のページ
openssl_seal | 上に戻る | openssl_verify