php中rsa加密解密验证

Posted bwteacher

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php中rsa加密解密验证相关的知识,希望对你有一定的参考价值。

RSA非对称加密,对敏感的数据传输进行数据加密、验证等。
测试环境:wamp、aliyun虚拟主机(lamp)
一、加密解密的第一步是生成公钥、私钥对,私钥加密的内容能通过公钥解密(反过来亦可以)。下载生成公钥、私钥工具openssl。
  1、openssl genrsa -out rsa_private_key.pem 1024

  2、openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt -out private_key.pem openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
  3、openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
  第1条命令生成原始 RSA私钥文件 rsa_private_key.pem,第2条命令将原始 RSA私钥转换为 pkcs8格式,第3条生成RSA公钥 rsa_public_key.pem
从上面看出通过私钥能生成对应的公钥,因此我们将私钥private_key.pem用在服务器端,公钥发放给androidios等前端。
  注:和支付宝用到的公钥有区别,支付宝的不改成pkcs8格式(php环境时)。

二、php中用生成的公钥、私钥进行加密解密。也可直接证书取文件内容。

  

以上是关于php中rsa加密解密验证的主要内容,如果未能解决你的问题,请参考以下文章

php rsa加密解密实例 及签名验证-自己实践

RSA加密解密及RSA签名和验证

C#中RSA加密解密和签名与验证的实现

php/js/linux: js加密(rsa公钥加密) php解密(rsa私钥解密)

在 PHP 中使用 RSA 加密和解密文本

iOS RSA加密解密及签名验证