PHP RSA 算法生成公钥和私钥
来源:互联网 发布:淘宝达人淘在哪里看 编辑:程序博客网 时间:2024/05/21 11:22
openssl rsa -in yindou.key -pubout -out yindou_pub.key //n指定输入文件,-out指定提取生成公钥的文件名。将这个文件中的公钥提取出来:
php服务端与客户端交互、提供开放api时,通常需要对敏感的部分api数据传输进行数据加密,这时候rsa非对称加密就能派上用处了,下面通过一个例子来说明如何用php来实现数据的加密解密
1、加密解密的第一步是生成公钥、私钥对,私钥加密的内容能通过公钥解密(反过来亦可以)
下载开源RSA密钥生成工具openssl(通常Linux系统都自带该程序),解压缩至独立的文件夹,进入其中的bin目录,执行以下命令:
openssl genrsa -out rsa_private_key.pem 1024
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
第一条命令生成原始 RSA私钥文件 rsa_private_key.pem,第二条命令将原始 RSA私钥转换为 pkcs8格式,第三条生成RSA公钥 rsa_public_key.pem
从上面看出通过私钥能生成对应的公钥,因此我们将私钥private_key.pem用在服务器端,公钥发放给android跟ios等前端
2、php中用生成的公钥、私钥进行加密解密,直接上代码
$card_pwd = $ret['data'][0]['passWd'];
//对卡密进行解密获取真实的卡密
if (!empty($card_pwd)) {
$decrypted = "";
$private_key = Util_Const::EXCHANGE_RSA_PRIVATE_KEY;
$pi_key = openssl_pkey_get_private($private_key);//这个函数可用来判断私钥是否是可用的
openssl_private_decrypt(base64_decode($card_pwd),$decrypted,$pi_key);//私钥解密
$card_pwd = $decrypted;
}
- PHP RSA 算法生成公钥和私钥
- RSA算法生成公钥和私钥
- C#中用RSA算法生成公钥和私钥openssl RSA密钥的生成与配置
- 生成RSA公钥和私钥
- 支付宝PHP-RSA公钥和私钥的生成
- RSA公钥和私钥的生成(PHP\Android\iOS),数据传输的安全性
- Rsa私钥生成
- OpenSSL生成私钥和公钥以及RSA加密
- Mac iOS RSA 私钥和公钥的生成
- 使用OpenSSL生成RSA公钥和私钥
- golang 生成RSA公钥和私钥文件
- 使用OpenSSL生成RSA公钥和私钥
- RSA使用X509EncodedKeySpec、PKCS8EncodedKeySpec生成公钥和私钥
- 使用openssl生成RSA公钥和私钥对
- java RSA生成公钥对象和私钥对象
- 使用openssl生成RSA公钥和私钥对
- 使用OpenSSL生成RSA公钥和私钥
- OpenSSL 安装及RSA公钥和私钥生成
- Javascript几种跨域方式总结
- 设计模式知识连载(6)---继承_2:创建即继承-构造函数继承
- 是什么诱发了身体炎症
- Python基础‘姿势’7
- openssl 加密文件的完整实现代码
- PHP RSA 算法生成公钥和私钥
- websocket入门案例
- 设置tablayout光标宽度
- 倒计时
- java导出多个excel并打成zip包
- 人脸关键点:MTCNN-Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks
- 链表的格式与操作示例
- java 自学之路–视频(源码)下载
- 广域无线平台实现新一代物联网系统