php需要解决的核心问题:
1,密钥的解密处理 包括私钥跟公钥,java对于密钥的加密有2种,pkcs8 跟 x509
pkcs8 算法需要额外的库支持 phpseclib 该库依赖 MATH_BIGINTEGER 如果下载1.几版本可手动调整支持php7
2,签名的加密算法 php 默认应该是rsa模式 如果使用需要java配合。
详情见:https://schneimi.wordpress.com/2008/11/25/rsa-encryption-between-java-and-php/
还有一种签名算法为 OPENSSL_ALGO_MD5 一般的java设置都会支持
1,密钥的解密处理 包括私钥跟公钥,java对于密钥的加密有2种,pkcs8 跟 x509
pkcs8 算法需要额外的库支持 phpseclib 该库依赖 MATH_BIGINTEGER 如果下载1.几版本可手动调整支持php7
2,签名的加密算法 php 默认应该是rsa模式 如果使用需要java配合。
详情见:https://schneimi.wordpress.com/2008/11/25/rsa-encryption-between-java-and-php/
还有一种签名算法为 OPENSSL_ALGO_MD5 一般的java设置都会支持
3,数据加密算法,对于php 应该是 ,OPENSSL_PKCS1_PADDING
//证书pkcs8格式转换
function pkcs8ToPem($der_data)
{
//进行证书pkcs8 密钥解密处理
$rsa = new \phpseclib\Crypt\RSA();
$rsa->loadKey($private_content