php openssl_sign() 関数は署名の生成に使用されます。この関数は、$priv_key_id パラメーターに関連付けられた秘密キーを使用して暗号化されたデジタル署名を生成することにより、指定されたデータの署名を入力します。 $priv_key_id は、openssl_get_privatekey() によって返されるキーです。
php openssl_sign() 関数
openssl_sign - 署名の生成
構文
openssl_sign( string $data , string &$signature , mixed $priv_key_id [, mixed $signature_alg = OPENSSL_ALGO_SHA1 ] )
openssl_sign() priv_key_id に関連付けられた秘密キーを使用して暗号化されたデジタル署名を生成することにより、指定されたデータ入力に署名します。 データ自体は暗号化されないことに注意してください。
パラメータ:
戻り値
成功した場合、または成功した場合は TRUE を返します。成功 失敗した場合は FALSE を返します。
例
//data you want to sign $data = 'my data'; //create new private and public key $new_key_pair = openssl_pkey_new(array( "private_key_bits" => 2048, "private_key_type" => OPENSSL_KEYTYPE_RSA, )); openssl_pkey_export($new_key_pair, $private_key_pem); $details = openssl_pkey_get_details($new_key_pair); $public_key_pem = $details['key']; //create signature openssl_sign($data, $signature, $private_key_pem, OPENSSL_ALGO_SHA256); //save for later file_put_contents('private_key.pem', $private_key_pem); file_put_contents('public_key.pem', $public_key_pem); file_put_contents('signature.dat', $signature); //verify signature $r = openssl_verify($data, $signature, $public_key_pem, "sha256WithRSAEncryption"); var_dump($r);
バージョンサポート
関連知識の詳細については、PHP を参照してください。中国語のウェブサイト! !