Python接口自动化之通过RSA加解密

本文介绍了RSA加密算法,包括公钥加密、私钥解密、私钥签名和公钥验签,以及如何在Python中实现这些操作。通过示例展示了如何生成密钥对,以及加密、解密、签名和验签的过程。最后,讨论了如何在项目中结合RSA进行接口鉴权。
摘要由CSDN通过智能技术生成

一、RSA算法加密简介

1、介绍

RSA加密算法是一种非对称加密算法,加密的秘钥是由公钥和私钥两部分组成秘钥对,公钥用来加密消息,私钥用来对消息进行解密,公钥是公开的,私钥则是用户自己保留的,由于公钥是公开的,那么任何人只要获取到公钥,都可以使用公钥来加密发送伪造内容。

出于安全性考虑,在发送消息之前我们可以使用RSA来签名,签名使用私钥来进行签名,使用公钥来进行验签,通过签名我们可以确保用户身份的唯一性,从而提高安全性

2、加密与签名的关系?

加密和签名都是为了安全性考虑,但略有不同。简单的说,加密是为了防止信息被泄露,而签名是为了防止信息被篡改。

(1)  加密

Task 1:Boss要给CoCo发送一条消息,分配保密的工作任务。

RSA的加密过程如下:

1.CoCo生成一对密钥(公钥和私钥),私钥不公开,CoCo自己保留。公钥为公开的,任何人可以获取。

2.CoCo传递自己的公钥给Boss,用CoCo的公钥对消息进行加密。

3.CoCo接收到Boss加密的消息,利用CoCo自己的私钥对消息进行解密。

在这个过程中,只有2次传递过程,第一次是CoCo传递公钥给Boss,第二次是Boss加密消息给CoCo,即使都被敌方截获,也没有危险性,因为只有CoCo的私钥才能对消息进行解密,防止了消息内容的泄露。

(2)  签名

Task  2:CoCo收到Boss发的消息后,需要进行回复“收到”。

RSA签名的过程如下:

1.CoCo生成一对密钥(公钥和私钥),私钥不公开,CoCo自己保留。公钥为公开的,任何人可以获取。

2.CoCo用自己的私钥对消息加签,形成签名,并将加签的消息和消息本身一起传递给Boss。

3.Boss收到消息后,在获取CoCo的公钥进行验签,如果验签出来的内容与消息本身一致,证明消息是CoCo回复的。

在这个过程中,只有2次传递过程,第一次是CoCo传递加签的消息和消息本身给Boss,第二次

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值