密钥长度 1024

openssl genrsa -out rsa_private_key.pem
openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
function readPublicKey($keyPath)
{
$key = file_get_contents($keyPath);
$this->rsaPublicKey = openssl_pkey_get_public($key)
}
function readPrivateKey($keyPath)
{
$key = file_get_contents($keyPath);
$this->rsaPrivateKey = openssl_pkey_get_private($key)
}
// 加密后转为base64编码
function encrypt($originalData)
{
$crypto = '';
foreach (str_split($originalData, 117) as $chunk)
{
openssl_public_encrypt($chunk, $encryptData, $this->rsaPublicKey);
$crypto .= $encryptData;
}
return base64_encode($crypto);
}
// base64 post 过来后 '+' 号变成 空格
function decrypt($encryptData)
{
$crypto = '';
foreach (str_split(str_replace(' ', '+', base64_decode($encryptData)), 128) as $chunk)
{
openssl_private_decrypt($chunk, $decryptData, $this->rsaPrivateKey);
$crypto .= $decryptData;
}
return $crypto;
}

最新文章

  1. IOS客户端Coding项目记录(六)
  2. 基本概率分布Basic Concept of Probability Distributions 8: Normal Distribution
  3. C++使用类型代替枚举量
  4. hdu 5656 CA Loves GCD(dp)
  5. 【转载】VS2010+VMWare8+VisualDDK1.5.6 创建并调试驱动程序 - 完全教程
  6. eclipse调试java调用matlab程序的7.17dll找不到的问题
  7. 统计SQLSERVER表行数,以及每天数据变化的行数
  8. matlab练习程序(渲染三原色)
  9. Windows 用bat脚本带配置启动redis,并用vb脚本使其在后台运行。
  10. Qt中的Q_D宏和d指针
  11. js里面判断一个字符串是否包含某个子串的方法
  12. sql求倒数第二大的数,效率不高,但写法新颖
  13. 一些收集的MikroTik RouterOS破解版虚拟机VMware
  14. JAVA GC优化入门
  15. struts2防止反复提交的办法
  16. 学习笔记之Elasticsearch
  17. activemq控制面板含义
  18. 有关集合的foreach循环里的add/remove
  19. Python 执行js的2种解决方案-乾颐堂
  20. pcap学习

热门文章

  1. 在 Java 8 中避免 Null 检查
  2. 定位设备--llseek实现
  3. JZOJ 5777. 【NOIP2008模拟】小x玩游戏
  4. JZOJ 1267. 路障
  5. 27.28. VUE学习之--事件修饰符之stop&capture&self&once实例详解
  6. 迭代器Iterator与语法糖for-each
  7. 洛谷 P3740 [HAOI2014]贴海报
  8. Patrick and Shopping
  9. windows下pip安装python模块时报错【转】
  10. datatime来计算代码段运行时长