报错 rsa_private read error : private key is NULL
调试iOS 支付宝SDK的时候,运行的时候,报错 rsa_private read error : private key is NULL
我确定的是RSA private key肯定是有的,调试了下在
bio_private = BIO_new(BIO_s_file());
BIO_read_filename(bio_private, private_key_file_path);
rsa_private = PEM_read_bio_RSAPrivateKey(bio_private, NULL, NULL, "");
if (rsa_private != nil) {
这里,rsa_private 返回空, private_key_file_path 这些值都是有的
最后发现是私钥的问题,同事在生成私钥的时候没经过第三步将私钥转PKCS8格式, php和java的不需要PKCS8,所以服务端php和Android没在意这一点,但是IOS端是要进行PKCS8格式转换的,不然就出现上述错误。