下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、/index.php?php/需要配置PHP.INI文件,打开extension=php_openssl.dllincludersaclass.php;/以下是一个简单的测试demo,如果不需要请删除$rsa=newRsa(D:rsa);/放项目的PHP目录/私钥加密,公钥解密echosource:Testing:HelloWorld!;$pre=$rsa-privEncrypt(Testing:HelloWorld!);echoPrivateEncrypted:.$pre.;$pud=$rsa-pubDecrypt($pre);echoPublicDecrypted:.$pud.;/公钥加密
2、,私钥解密echosource:workinginhere!;$pue=$rsa-pubEncrypt(workinginhere!);echoPublicEncrypt:.$pue.;$prd=$rsa-privDecrypt($pue);echoPrivateDecrypt:.$prd;?/rsaclass.php_keyPath=$path;*createthekeypair,savethekeyto$this-_keyPath*/publicfunctioncreateKey()$r=openssl_pkey_new();openssl_pkey_export($r,$privKey)
3、;file_put_contents($this-_keyPath.DIRECTORY_SEPARATOR.key.pem,$privKey);$this-_privKey=openssl_pkey_get_public($privKey);$rp=openssl_pkey_get_details($r);$pubKey=$rpkey;file_put_contents($this-_keyPath.DIRECTORY_SEPARATOR.pub.pem,$pubKey);$this-_pubKey=openssl_pkey_get_public($pubKey);/*setupthepriv
4、atekey*/publicfunctionsetupPrivKey()if(is_resource($this-_privKey)returntrue;$file=$this-_keyPath.DIRECTORY_SEPARATOR.key.pem;$prk=file_get_contents($file);$this-_privKey=openssl_pkey_get_private($prk);returntrue;/*setupthepublickey*/publicfunctionsetupPubKey()if(is_resource($this-_pubKey)returntrue
5、;$file=$this-_keyPath.DIRECTORY_SEPARATOR.pub.pem;$puk=file_get_contents($file);$this-_pubKey=openssl_pkey_get_public($puk);returntrue;*encryptwiththeprivatekey*/publicfunctionprivEncrypt($data)if(!is_string($data)returnnull;$this-setupPrivKey();$r=openssl_private_encrypt($data,$encrypted,$this-_pri
6、vKey);if($r)returnbase64_encode($encrypted);returnnull;/*decryptwiththeprivatekey*/publicfunctionprivDecrypt($encrypted)if(!is_string($encrypted)returnnull;$this-setupPrivKey();$encrypted=base64_decode($encrypted);$r=openssl_private_decrypt($encrypted,$decrypted,$this-_privKey);if($r)return$decrypte
7、d;returnnull;/*encryptwithpublickey*/publicfunctionpubEncrypt($data)if(!is_string($data)returnnull;$this-setupPubKey();$r=openssl_public_encrypt($data,$encrypted,$this-_pubKey);if($r)returnbase64_encode($encrypted);returnnull;/*decryptwiththepublickey*/publicfunctionpubDecrypt($crypted)if(!is_string
8、($crypted)returnnull;$this-setupPubKey();$crypted=base64_decode($crypted);$r=openssl_public_decrypt($crypted,$decrypted,$this-_pubKey);if($r)return$decrypted;returnnull;publicfunction_destruct()fclose($this-_privKey);fclose($this-_pubKey);?加密使用公钥,解密使用私钥签名使用私钥,验证使用公钥私钥可以导出公钥I产牛私钥I,指定位数1024,公钥指数e,通常是3,17,65537$opensslg
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广西北海市银海区第一小学春季学期招聘临聘教学人员1人备考题库附答案详解(综合题)
- 2026内蒙古兴安盟乌兰浩特市妇幼保健计划生育服务中心招聘控制数人员9人备考题库及答案详解(新)
- 中国交建集团2026届春季校园招聘备考题库及参考答案详解1套
- 招商局蛇口工业区控股股份有限公司2026届“新航程”校园招聘备考题库及一套答案详解
- 2026四川内江市人力资源服务中心招聘就业见习人员2人备考题库及一套答案详解
- 2026安徽马鞍山市市直公务用车服务中心编外聘用人员招聘3人备考题库含答案详解(黄金题型)
- 2026北京市第五十七中学招聘备考题库含答案详解(突破训练)
- 2026安徽阜阳颍东农商银行春季校园招聘10人备考题库及答案详解(网校专用)
- 2026中国科学院软件研究所时空数据管理与数据科学研究中心招聘2人备考题库带答案详解
- 招商局蛇口工业区控股股份有限公司2026届“新航程”校园招聘备考题库含答案详解(考试直接用)
- 美术材料采购合同范本
- 2026年甘肃农信校园招聘缴费笔试考试参考试题附答案解析
- 激光焊接工艺控制方案
- 2025年长春职业技术学院单招职业倾向性考试题库附答案详解【a卷】
- 小学三年级数学竖式计算题500道
- DB63∕T 164-2021 草地地面鼠害防治技术规范
- 2025年中国LED户外路灯行业市场分析及投资价值评估前景预测报告
- 消化内镜教学课件
- 农行考试历年真题及答案
- 采购人沟通及协调工作方案
- 环境伦理教学课件
评论
0/150
提交评论