我尝试使用php对我的电子邮件进行数字签名,但我遇到了一些问题。 我已经使用open ssl:
生成了使用我自己的CA签名的证书openssl req -new -nodes -out request.pem -keyout key.pem -days 1098 -config ./openssl.cnf
openssl ca -in request.pem -out cert.pem -config ./openssl.cnf
我已生成私钥key.pem签名证书04.pem 在apache的doc根目录中,我有文件podepsany_email.php和cert + key。
用于数字签名我使用函数openssl_pkcs7_sign()。 代码:
openssl_pkcs7_sign("./msg.txt", "./signed.txt", "./04.pem" ,"./key.pem", $headers);
调用我的脚本的结果是错误消息:
警告:openssl_pkcs7_sign()[function.openssl-pkcs7-sign]:错误 在第70行的C:\ data \ www \ podepsany_email.php中获取私钥
可以请有人给我点如何解决这个问题?感谢
ķ。
答案 0 :(得分:2)
参见php文档讨论:http://php.net/manual/en/function.openssl-pkcs7-sign.php
你应该把“file://”放在.pem文件名前面