php - 使用 PHP 签署数字签名

标签 php

如何使用PHP进行数字签名?

最佳答案

来自 openssl_sign() 的文档

//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);

//create signature
openssl_sign($data, $signature, $private_key_pem, OPENSSL_ALGO_SHA256);

echo base64_encode($signature);

当然,如果您已经有了私钥,则可以跳过生成私钥,直接将其用作 openssl_sign() 中的 $private_key_pem 参数。

关于php - 使用 PHP 签署数字签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30009627/

相关文章:

php - 如何在不重新加载页面的情况下保持 session 事件?

php - 在 apache2 执行 60 秒后网关超时

php - MySQL 和 PHP 上的表情符号 : why some symbol yes other not?

php - 检查字符串是否以特定单词开头,如果是则拆分

php:使用变量名在不同页面上显示特定图像

PHP MYSQL批量更新

php - 如何将 Count (*) 作为 SQL 到 php 的变量?

表匹配的 PHP/SQL 查询(通配符)

php - 根据 "major"操作将数据存储到 session 中并存储到数据库中

php - 我可以将 Javascript 条件的结果导入 PHP 变量吗?