收藏
回答

利用CA证书的p12文件生成apiclient_key.pem有错

因为这个商户号升级了CA证书,无法直接下载apiclient_key.pem文件,所以利用xxx.p12文件生成apiclient_cert.pem,apiclient_key.pem,

但是在退款中用到证书却说curl|_error() 报错:unable to set private key file: '/www/wwwroot/xls.hsmro.cn/public/wxpay/cert

根据文档生成俩个文件:

openssl pkcs12 -clcerts -nokeys -in 1304163401_20190301_cert.p12 -out apiclient_cert.pem

openssl pkcs12 -nocerts -in 1304163401_20190301_cert.p12 -out apiclient_key.pem

在生成apiclient_key.pem文件时,Enter Import Password: 输入的是商户号id,

我在Enter PEM pass phrase: 也输入的商户号id,这样对吗?


查看apiclient_key.pem,有个Bag Attributes


最后一次编辑于  03-01  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

2 个回答

  • 劉國誌🐯
    劉國誌🐯
    03-02

    我也遇到了这个问题,用CA颁发的证书无法执行退款操作。

    相同的代码,用其它商户平台账号与证书执行退款操作就可以。

    03-02
    赞同 1
    回复 1
    • 微信支付技术助手
      微信支付技术助手
      03-04

      您好,这种情况,一种原因就证书路径不对,路径定好windows组件版中的证书,用

      getcwd().'/apiclient_cert.pem'这种写法。


      03-04
      回复
  • 时建伟
    时建伟
    03-16

    我也遇上了同样的问题,已经解决了。解决方法:openssl rsa -in apiclient_key.pem -out apiclient_key.pem 将生成的apiclient_key.pem文件重新用rsa处理一下就可以了。希望对你的问题有所帮助。

    03-16
    赞同 1
    回复