在php函数openssl_pkcs7_sign中打开pem文件时出错


Error opening pem file in php function openssl_pkcs7_sign

我正在尝试在php中使用PKPass类与Xampp (php 5.4.7, OpenSSL 1.0.1c)签署iOS存折。

结果签名文件为空,php日志显示如下信息:"PHP警告:openssl_pkcs7_sign():打开AWDRCA.pem文件时出错".

下面是我执行的代码:
openssl_pkcs7_sign(
  $paths['manifest'],
  $paths['signature'],
  $certdata,
  $privkey,
  array(),
  PKCS7_BINARY | PKCS7_DETACHED,
  $this->WWDRcertPath
);

我已经验证了参数中的所有变量。我的证书是OK的,因为我已经成功地使用openssl使用命令行生成了一个存折。

可能您的PHP环境的Openssl扩展太旧了。您必须指定绝对路径为"D:/xampp/www/1.pem"