java rsa验签 jar_php实现rsa签名和验签

这篇博客介绍了如何使用Java实现RSA签名和验签,并提供了PHP调用的示例代码。博主首先通过openssl生成了1024位的私钥和公钥,然后在Java中利用RSAPrivateKeySpec和RSAPublicKeySpec进行签名和验签操作。此外,还给出了从私钥文件中提取模数和指数的PHP函数。
摘要由CSDN通过智能技术生成

这两天在弄某支付接口相关的东西,以前没做过这块,在签名和验签的过程中遇到了一些问题,记下来. 首先生成一个1024位的私钥: openssl genrsa -out private.pem 1024 然后根据私钥导出公钥 openssl rsa -in private.pem -pubout -out public.pem php的openssl扩

这两天在弄某支付接口相关的东西,以前没做过这块,在签名和验签的过程中遇到了一些问题,记下来.

首先生成一个1024位的私钥:

openssl genrsa -out private.pem 1024

然后根据私钥导出公钥

openssl rsa -in private.pem -pubout -out public.pem

php的openssl扩展里已经封装好了签名和验签的方法,分别是openssl_sign和openssl_verify.

function sign($data){

$p = openssl_pkey_get_private(file_get_contents('private.pem'));

openssl_sign($data, $signature, $p);

openssl_free_key($p);

return bin2hex($signature);

}

function verify($data, $sign){

$p = openssl_pkey_get_public(file_get_contents('public.pem'));

$verify = openssl_verify($data, hex2bin($sign), $p);

openssl_free_key($p);

return $verify > 0;<

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值