我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Thinkphp 6 使用RSA非对称加密算法 对接口加密解密

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Thinkphp 6 使用RSA非对称加密算法 对接口加密解密

后台接口中 经常使用到加密算法 如何使用RSA 非对称加密 对数据进行加密传输

下载RSA 加密算法
php-Rsa算法下载

将下载好的RSA 算法 放入 到 TP6项目根目录下 extend 拓展目录中

// 实例化use \rsa\RsaCoding as Crypto;

使用系统自动生成的 32为加密进行加密解密

$plain  = "Some secret here for you ...";$key    = openssl_random_pseudo_bytes(32);$cipher = Crypto::encrypt($plain, $key);$msg    = Crypto::decrypt($cipher, $key);print_r(['明文'=>$plain, '密码'=>base64_encode($key), '解密'=>$msg, '密文'=>$cipher]);

结果返回

Array ( [明文] => Some secret here for you ... [密码] => SpmMiuaPdPFqrjPd4mfAV9h7o5sL3DZrIHuR0YXofjA= [解密] => Some secret here for you ... [密文] => dQRB3s/Q7hN1BJr8Ow6McnA6cApWJ+knwgsn/27LUMupyQECJrDBE58b4NguNn7UvrxAY9JVEtSpZQeAJm+C5nh3EjI6+nOq8P1Tpjp8K0I= )

利用公钥加密,私钥解密做数据保密通信!

$plain  = "利用公钥加密,私钥解密做数据保密通信!";$cipher = Crypto::publicEncrypt($plain);$msg    = Crypto::privateDecrypt($cipher);print_r(['明文'=>$plain, '解密'=>$msg, '密文'=>$cipher]);

结果返回

Array ( [明文] => 利用公钥加密,私钥解密做数据保密通信! [解密] => 利用公钥加密,私钥解密做数据保密通信! [密文] => pOIXV66qa7mQ0t7ffToFmhRDodrC/ObqAODN7UibBy59pJMRN4elkMrO6yvp18jN23Yp+YThnuiPi53DtO9Ui7t7lvno8OoAsqzs4V/77H4bZKAr6u4skohRokPLT6mW2AkYAOYRpbW9fbAxu3/gfi3i6Nf4otT03pb6+MGZ1y/OF3ScwltmhXvYRZddfnLZbPjBlJX7FNlVzc+ApmIsZj/n76qG/gJl/CLn2K1A+mHrmMD25MiacDvHqLiaC2oe7lEC4uerWS913PMOmmS/PrPa3xQxCRuff0GJ5uAsxbSU+9iwjSxtaMOWWpv1nk0t6dYz2+aD5CWsGRnRFNGfZg== )

利用私钥加密,公钥解密可以做身份验证

$plain  = "利用私钥加密,公钥解密可以做身份验证";$cipher = Crypto::privateEncrypt($plain);$msg    = Crypto::publicDecrypt($cipher);print_r(['明文'=>$plain, '解密'=>$msg, '密文'=>$cipher]);

返回结果

Array ( [明文] => 利用私钥加密,公钥解密可以做身份验证 [解密] => 利用私钥加密,公钥解密可以做身份验证 [密文] => Z8B6Csq3MzwmZLObT3qyWqHOi5o27wDAEGuSwYzQS3eTIZPIb2+l0SuWKpZtcj5KLuEo/EFV3i8mitUI2Htm6kinl513dxBmpJTkLj1hu1NVs4CoUTE/mUe8UrKUEEleXZstrKzPsCqWOizMxAeE059fzg9NvhNzrFNc0L5lsiIOVD28H447Teo5Z9iCexVGG1LhxXpBWvwhpiVpt5wKfm/kX0wWzqS4e/BETNjh47Z6vBT6SoS1+YnDE5TN/PgWjdwA4X+p5CjzZR3tl3iI8tliPa5hkoH0LJ7f59lmBNPY7MK4X14/iMutbo6GaS7p5vvr5h252aX/oUNYeskG7Q== )
$msg    = 'a=123';$sign   = Crypto::sign($msg);$verify = Crypto::verify($msg, $sign);print_r(['预签'=>$msg, '签名'=>$sign, '验证'=>$verify==1?"PASS":"FAIL"]);

返回结果

Array ( [预签] => a=123 [签名] => X2N1TNCvVBfnFHrZZAS8Clm98e8UWJZ6eaJTGIR6Pz0X2kBjwMQ/AGMRxi90Ul6ysy664y85tBQtpYNbOEsWfkfzSId2NCJC1bfnMedsRLp3q1GajYq4eLgPm96WVUF1kakDIN/PA5jPo/WSE7YWXX4xBL0bwYRugB7IcaaeLvY9PqHuIhzZxhV7OfBLfPxCqHQVdmfBatRU5dxJqrJ+SfjeAYrJFLbd2K52PidQfctHilQOl6jx9k9lymGX7MvS/fvGRxlIIoE9HPOkKqYVHf3EOkqwZqQweIocjhblOcksjfCVr3hk4c7iWp9fnZm2rrgzVIZSg6mk2vr4QC+2nw== [验证] => PASS )

来源地址:https://blog.csdn.net/chinanes/article/details/127847299

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Thinkphp 6 使用RSA非对称加密算法 对接口加密解密

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python----RSA非对称加密算法

最近在搞项目的接口持续性自动化测试,好久没有更新博客了。项目中接触到很多加密相关的数据,很多项目都会用到非对称加密算法来保证前端和服务器交互的数据安全。下面介绍下python下怎么使用RSA加密算法:import rsa (publicke
2023-01-31

https使用对称加密还是非对称加密

这篇文章主要介绍了https使用对称加密还是非对称加密的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇https使用对称加密还是非对称加密文章都会有所收获,下面我们一起来看看吧。HTTPS协议是由SSL/TLS+
2023-06-27

如何使用Java实现RSA非对称加密算法

这篇文章主要介绍如何使用Java实现RSA非对称加密算法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、非对称加密非对称加密算法是一种密钥的保密方法。非对称加密算法需要两个密钥:公开密钥(publickey:简称公
2023-06-15

怎么在PHP中使用RSA非对称加密算法

本篇文章给大家分享的是有关怎么在PHP中使用RSA非对称加密算法,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。php有什么用php是一个嵌套的缩写名称,是英文超级文本预处理语言
2023-06-14

rsa对称加密算法有哪些优点

RSA非对称加密算法有以下优点:1. 安全性高:RSA算法基于一个数论难题,即大整数分解,目前尚未发现有效的算法来解决这个难题。因此,RSA算法被认为是一种安全性较高的加密算法。2. 不需要共享密钥:传统的对称加密算法需要发送方和接收方事先
2023-10-20

Vue中怎么使用jsencrypt进行RSA非对称加密

本篇内容介绍了“Vue中怎么使用jsencrypt进行RSA非对称加密”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!下载jsencryptc
2023-06-29

PHP怎么使用OpenSSL加密中的非对称加密

这篇文章主要介绍了PHP怎么使用OpenSSL加密中的非对称加密,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。PHP的OpenSSL加密扩展学习:非对称加密生成私钥通过之前的
2023-06-15

如何在Java中使用RSA加密对密码进行加密解密

这期内容当中小编将会给大家带来有关如何在Java中使用RSA加密对密码进行加密解密,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。具体如下:public static void main(String[]
2023-05-31

Java对称与非对称加密算法原理详细讲解

对称加密算法指加密和解密使用相同密钥的加密算法。对称加密算法用来对敏感数据等信息进行加密,非对称加密算法指加密和解密使用不同密钥的加密算法,也称为公私钥加密
2022-11-13

如何在java中使用RSA算法对密码进行加密与解密

本篇文章给大家分享的是有关如何在java中使用RSA算法对密码进行加密与解密,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。前言: RSA是第一个比较完善的公开密钥算法,它既能
2023-05-31

浅析Java中对称与非对称加密算法原理与使用

密码学是研究编制密码和破译密码的技术科学。这篇文章主要为大家介绍了Java中对称与非对称加密算法的原理与使用,感兴趣的小伙伴可以了解一下
2023-03-21

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录