云服务器 99 / 年,新老同享(可以99/年续费),开发者力荐特惠渠道,新客户在享受9折
阿里云推广

记录一次php对接java接口rsa签名

  • 内容
  • 评论
  • 相关

1.对方提供的东西:test-pfx.pfx 密码:000000    xdzf_cfca_prd.cer

xdzf_cfca_prd.cer这是一个公钥文件,可以通过notepad++打开,看见公钥内容,但是pfx文件无法直接打开,而且pfx文件还有一个密码,于是想把pfx文件里面的内容获取到。

2.使用php获取pfx里面的内容,打印出来,实验证明php是可以直接使用pfx文件的,没必要把pfx拆出pem在使用。


 //路径
    $filePath = './test-pfx.pfx';
    $pkcs12 = file_get_contents( $filePath );
 //000000为pfx的密码
    if ( openssl_pkcs12_read( $pkcs12, $certs, '000000' ) ) {
     print_r($certs); 
 }
 die;


运行结果:

1.jpg

发现里面是一对公私钥。

3.于是才弄明白了整体对接的流程。

php获取pfx里面私钥,然后把数据通过私钥签名发送给java,java通过和我这边一对的公钥验证(也就是pfx里面的公钥)签名,然后给php返回数据,java那边也有一对公钥和私钥,提供给php的只是xdzf_cfca_prd.cer公钥部分。也就是java通过他的私钥签名,然后返回给php,php利用xdzf_cfca_prd.cer公钥验证签名。也就是整个流程有两对公钥私钥。php用到了第一对pfx里面的私钥和第二对里面的公钥。

4.具体php代码实现

https://www.wlphp.com/?post=263

本文标签:

版权声明:若无特殊注明,本文皆为《菜鸟站长》原创,转载请保留文章出处。

本文链接:记录一次php对接java接口rsa签名 - https://wziyi.net/?post=266

发表评论

电子邮件地址不会被公开。 必填项已用*标注