python3中rsa加密算法详情

 更新时间:2022年05月20日 08:48:55   作者:PT、小小马  
这篇文章主要介绍了python3中rsa加密算法详情,rsa加密,是一种加密算法,目前而言,加密算法,是对数据、密码等进行加密,下文更多相关介绍,需要的小伙伴可以参考一下

前言:

rsa加密,是一种加密算法,目前而言,加密算法,是对数据、密码等进行加密。第一次接触rsa加密算法是linux中免密登陆设置,当时一直以为密钥加密是像token一样的,直到现在才发现并不是,而是一种数据加密的方式,其实也可以理解,在Linux设计哲学的理解下:“一切皆文件”,就可以把他们当成类似的东西来理解。无非就是拿着a字符串和b字符串进行比较,如果返回trun,那么就可以进行下一步的操作,否则就会被返回异常。

在这里,其实有一个逻辑,就是先把数据进行一次加密,然后进行数据传输,在接收到数据后,发现数据是乱码,或者说是加密过后的数据,所以想要看到实际数据,就需要对数据进行解密。

所以在常规的加密过程中,许多接口中的数据我们是已经可以获取到的,但是获取到的数据是乱码,一般如果想要继续增加安全性,就可以在获取数据的时候加签,即在给访问接口的服务返回数据时,就进行验证,在他发送接收数据请求时,就拒绝他。

也就是说,目前的接口加密,其实是从两个点出发:

  • 一、接收数据请求时(数据返回前)
  • 二、数据本身加密(数据返回后)(如果请求,就把数据返回,但是我赌的是他拿到数据也不会解读出来。狗头)

就目前而言,我所能想到的加密方案,也都是对字符串加密,或者对一些标识符进行加密,也就是发生在数据返回前所发生的事件。不知道别的大佬还有没有别的骚操作。

技术测试实现:

在这里使用rsa包直接进行,python第三方库实现加密的还有一个pycryptodome,两个包都可以实现。在这里使用rsa。

代码逻辑简单说一下,也做了几个测试:

  • 一、直接生成密钥,然后进行加密,解密,
  • 二、先生成密钥,然后将密钥写入文件保留下来,然后再读出来使用
  • 三、直接生成密钥,然后将密钥写成字符串,放在代码中,直接使用

上述三种,其实从逻辑上讲,都应该是支持的,如果不支持,那么就应该是过程中某个地方的格式有问题。需要进行常规处理。

在使用过程中,有一个地方需要特别注意,就是需要加密的字符串要进行encoding,在解密是需要进行decode。不要忘记这一点。否则你会发现加密时就会报错。

import rsa
def secorty_data():
    (pub_key,sec_key) = rsa.newkeys(1024)
    pub = pub_key.save_pkcs1()
    file = open('./pub.pem','wb+')
    file.write(pub)
    sec = sec_key.save_pkcs1()
    files = open('./sec.pem','wb+')
    files.write(sec)
def create_rsa():
    file = open('./pub.pem','rb')
    content = file.read()
    print(content)
    file1 = open('./sec.pem','rb')
    content1 = file1.read()
    print(content1)
    pub_key = rsa.PublicKey.load_pkcs1(content)
    sec_key = rsa.PrivateKey.load_pkcs1(content1)
    message = '今天的天气有点热,但整体还是很好'
    data = rsa.encrypt(message.encode(),pub_key)
    print(data)
    result = rsa.decrypt(data,sec_key)
    print(result.decode())
if __name__ == '__main__':

        secorty_data()

        create_rsa()

到此这篇关于python3中rsa加密算法详情的文章就介绍到这了,更多相关 rsa加密 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • tensorflow模型保存、加载之变量重命名实例

    tensorflow模型保存、加载之变量重命名实例

    今天小编就为大家分享一篇tensorflow模型保存、加载之变量重命名实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • python生成tensorflow输入输出的图像格式的方法

    python生成tensorflow输入输出的图像格式的方法

    本篇文章主要介绍了python生成tensorflow输入输出的图像格式的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • python爬虫可以爬什么

    python爬虫可以爬什么

    在本篇文章里小编给大家整理的是关于python爬虫的作用地方以及相关知识点,需要的朋友们可以学习下。
    2020-06-06
  • Python单元和文档测试实例详解

    Python单元和文档测试实例详解

    这篇文章主要介绍了Python单元和文档测试,结合实例形式分析了Python单元测试模块unittest及文档测试模块doctest相关使用技巧,需要的朋友可以参考下
    2019-04-04
  • python 消费 kafka 数据教程

    python 消费 kafka 数据教程

    今天小编就为大家分享一篇python 消费 kafka 数据教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • 关于win10在tensorflow的安装及在pycharm中运行步骤详解

    关于win10在tensorflow的安装及在pycharm中运行步骤详解

    这篇文章主要介绍了关于win10在tensorflow的安装及在pycharm中运行的步骤详解,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • Python配置文件yaml的用法详解

    Python配置文件yaml的用法详解

    YAML是一种直观的能够被电脑识别的的数据序列化格式,容易被人类阅读,并且容易和脚本语言交互。本文将详细介绍一下Python中yaml文件的用法,需要的可以参考一下
    2022-03-03
  • Python 读写文件的操作代码

    Python 读写文件的操作代码

    本文通过实例代码给大家介绍了Python 读写文件的操作方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • 使用python删除nginx缓存文件示例(python文件操作)

    使用python删除nginx缓存文件示例(python文件操作)

    这篇文章主要介绍了使用python删除nginx缓存文件示例(python文件操作),需要的朋友可以参考下
    2014-03-03
  • pandas初学者容易犯的六个错误总结

    pandas初学者容易犯的六个错误总结

    Pandas是Python的一个数据分析包,该工具为解决数据分析任务而创建,Pandas纳入大量库和标准数据模型,提供高效的操作数据集所需的工具,这篇文章主要给大家介绍了总结介绍了pandas初学者容易犯的六个错误,需要的朋友可以参考下
    2021-10-10

最新评论