记录一次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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

娃娃菜001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值