我正在使用此代码签署文件:
openssl_pkcs7_sign($in,$out,
cert.crt,
cert.key,
array(),
PKCS7_NOATTR
);
但是,当它打开时,仍然显示为未验证。
相反,这个openssl命令工作正常:
openssl smime -sign -in in -out out -signer cert.crt -inkey cert.key -certfile ca-bundle -outform der -nodetach
为什么php代码不能工作?
最佳答案
好啊,
openssl_pkcs7_sign($in,$out,
cert.crt,
cert.key,
array(),
PKCS7_NOATTR,
"/real/path/of/ca/intermeidate/cert/file.pem"
);
成功了。最后一个$extercerts arg使用实际路径而不是文件://