php使用openssl进行Rsa长数据加密,解密保存问题
原来代码:
public function encrypt($data) { if (openssl_public_encrypt(base64_encode($data), $encrypted, $this->pubkey)) $data = base64_encode($encrypted); else throw new Exception('Unable to encrypt data. Perhaps it is bigger than the key size?'); return $data; } public function decrypt($data) { if (openssl_private_decrypt(base64_decode($data), $decrypted, $this->privkey)) $data = $decrypted; else $data = ''; return $data; }
修改分段以后:
public function encrypt($originalData){$crypto = '';foreach (str_split($originalData, 117) as $chunk) {openssl_public_encrypt($chunk, $encryptData, $this->pubkey);$crypto .= $encryptData;}return base64_encode($crypto);}public function decrypt($encryptData){$crypto = '';foreach (str_split(base64_decode($encryptData), 128) as $chunk) {openssl_private_decrypt($chunk, $decryptData, $this->privkey);$crypto .= $decryptData;}return $crypto;}
转载于:https://www.cnblogs.com/zhja/p/5833986.html
php使用openssl进行Rsa长数据加密,解密保存问题相关推荐
- 使用OpenSSL进行RSA加密和解密(非对称)
1. RSA加密和解密基础概念 RSA是一种非对称加密. RSA秘钥:私钥和公钥,一对私钥和公钥就像夫妻一样是唯一的,用私钥加密后必须用对应的公钥才能解密,用公钥加密后必须用对应的私钥才能解密. 加密 ...
- pyhton3 rsa长加密/解密
from Crypto.Cipher import PKCS1_v1_5 as Cipher_pkcs1_v1_5 from Crypto.PublicKey import RSA import ba ...
- RSA 实现数据加密解密以及Token管理
RSA加密解密key都是成对出现的,一个公钥,一个私钥,并且加密解密一般是公钥加密私钥解密. 1.RSA加密工具 package com.wlyd.fmcgwms.util.api;import ja ...
- RSA数据加密解密(各种语言)
RSA数据加密解密文档 增强数据传输与本地日志的数据安全 数据加密方式 使用rsa加密算法,客户端公钥加密,服务端私钥解密 (若单次传输数据量过大,之后可引入aes rsa只加密iv部分) 数据加密步 ...
- java rsa加密解密_前端实现对请求参数进行RSA加密amp;解密,针对字符串过长进行分段加密amp;分段解密的处理...
前言 在需求开发中,为了安全起见,我们都会难免遇到需要对一些敏感参数进行加密或者解密.所以,今天给大家分享的就是使用jsencrypt对请求参数进行RSA加密与解密,发这篇文章其实主要因为近期我的一位 ...
- CryptoAPI与openssl RSA非对称加密解密(PKCS1 PADDING)交互
(以下代码中都只做测试用,有些地方没有释放内存...这个自己解决下) 1.RSA非对称的,首先提供一个供测试用的证书和私钥的数据 1)pem格式的证书和私钥(公私钥是对应的)的base64编码 [cp ...
- java中使用openssl生成的rsa公私钥进行数据加解密_使用openssl生成RSA公钥和私钥对...
在ubuntu上要使用openssl的话需要先进行安装,命令如下: sudo apt-get install openssl 安装完成就可以使用openssl了. 首先需要进入openssl的交互界面 ...
- C++使用OPENSSL进行RSA加密,java服务端解密
RSA是一种非对称加密. 加密和解密方式:公钥加密-私钥解密,私钥加密-公钥解密 背景 为了网络数据安全,Web端(Java)要求用RSA加密算法传数据,公钥加密私钥解密方式(RSA有公钥加密私钥解密 ...
- 使用OpenSSL加密,使用Java解密,使用OpenSSL RSA公钥
抽象 在2017年,我撰写了一个由三部分组成的系列文章,内容涉及选择最佳的哈希和加密算法. 在对该系列进行研究时,我学到了很多有关哈希和加密的知识. 我学到的最重要的事情是,尽管我必须对如何使用最安全 ...
最新文章
- iKair:放弃硬件制造,切入上游去“送水”的逻辑
- python读取配置文件存在某配置_Python读取配置文件(config.ini)以及写入配置文件
- MyEclipse快捷键与插件大全
- C# Tips 2------ToolStripSplitButton's 'Checked' property
- POJ 3621 Sightseeing Cows [最优比率环]
- HDU - 2586 How far away ?(离线Tarjan算法)
- HDU1799 循环多少次?
- php验证规则表单,PHP Yii框架之表单验证规则大全
- “Head First 设计模式“ :策略模式
- 青少年计算机知识,学习计算机程序设计和算法知识对青少年教育有什么帮助?...
- 理解Spring MVC Model Attribute 和 Session Attribute
- 联想USB键盘功能键驱动问题
- 计算机配件对比,基本参数 尺寸对比 接口对比
- 自称骇客的基本都是骗子
- Http头:only-if-cached
- Win32_DiskDrive 硬盘 参数说明
- 工程测量(道路、桥梁、隧道、地下管线、高速铁路)
- EXCEL内容很少文件却很大---如何变小
- Python+Appium移动端自动化测试框架实现
- 汇编学习之一: jge jnb 跳转指令 /*for 语句代码的汇编实现*/
热门文章
- 让 Windows 7 定时待机
- Chef是一个什么样的工具
- wine和steam的区别
- zeppelin报错master is set as yarn, but spark.submit.deployMode is not specified
- 关于spark-shell和scala关系的一些个人想法
- ubuntu下面的背光键盘的使用
- 阿里云ECS在CentOS 6.9中使用Nginx提示:nginx: [emerg] socket() [::]:80 failed (97: Address family not supported
- 机器学习:Multinoulli分布与多项式分布
- 高德地图api接口文档_在 R 语言里面调用高德地图接口:地理编码与路径规划
- new HashMap<String, Object>();