php 关于pkcs7签名验证。解决方法
程序员文章站
2022-06-07 08:45:46
...
php 关于pkcs7签名验证。
// the message you want to sign so that recipient can be sure it was you that
// sent it
$data =
You have my authorization to spend $10,000 on dinner expenses.
The CEO
EOD;
// save message to file
$fp = fopen("msg.txt", "w");
fwrite($fp, $data);
fclose($fp);
// encrypt it
if (openssl_pkcs7_sign("msg.txt", "signed.txt", "mycert.pem",
array("file://mycert.pem", "mypassphrase"),
array("To" => "[email protected]", // keyed syntax
"From: HQ ", // indexed syntax
"Subject" => "Eyes only")
)) {
// message signed - send it!
exec(ini_get("sendmail_path") . " }
?>
使用该函数做签名,涉及到文件的读写,可能会牵涉到文件的高并发性,对于php有什么好的处理方法吗?
具体点就是,我只需要传递需要签名的原始数据$data,而此函数每次都要把原始数据$data保存到文件里,然后再做签名,最后把签名后产生的串保存到signed.txt里,在实际中这肯定会触发文件操作的问题,该如何解决呢?
------解决方案--------------------
不要用相同的文件名,可以用md5(uniqid) .".txt"作为msg.txt和signed.txt的文件名。
// the message you want to sign so that recipient can be sure it was you that
// sent it
$data =
You have my authorization to spend $10,000 on dinner expenses.
The CEO
EOD;
// save message to file
$fp = fopen("msg.txt", "w");
fwrite($fp, $data);
fclose($fp);
// encrypt it
if (openssl_pkcs7_sign("msg.txt", "signed.txt", "mycert.pem",
array("file://mycert.pem", "mypassphrase"),
array("To" => "[email protected]", // keyed syntax
"From: HQ ", // indexed syntax
"Subject" => "Eyes only")
)) {
// message signed - send it!
exec(ini_get("sendmail_path") . " }
?>
使用该函数做签名,涉及到文件的读写,可能会牵涉到文件的高并发性,对于php有什么好的处理方法吗?
具体点就是,我只需要传递需要签名的原始数据$data,而此函数每次都要把原始数据$data保存到文件里,然后再做签名,最后把签名后产生的串保存到signed.txt里,在实际中这肯定会触发文件操作的问题,该如何解决呢?
------解决方案--------------------
不要用相同的文件名,可以用md5(uniqid) .".txt"作为msg.txt和signed.txt的文件名。
相关文章
相关视频
上一篇: PHP 装配
下一篇: php 大牛们 都来说上
推荐阅读
-
PHP 出现乱码和Sessions验证问题的解决方法!
-
PHP生成验证码时“图像因其本身有错无法显示”的解决方法
-
详解PHP接口签名验证
-
php session_start()关于Cannot send session cache limiter - headers already sent错误解决方法
-
PHP关于IE下的iframe跨域导致session丢失问题解决方法
-
系统的讲解 - PHP 接口签名验证
-
PHP开发API接口签名生成及验证操作示例
-
PHP下SSL加密解密、验证、签名方法(很简单)
-
关于PHP内存溢出问题的解决方法
-
关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题