粗浅理解RSA

基本概念

RSA中密钥是成对的:公钥,私钥

公钥 - 对外公开的密钥
私钥 - 个人持有的密钥

设A为明文,B为密文,pk为公钥,sk为私钥,则RSA算法存在以下等式:
A = RSA(B,pk)
B = RSA(A, sk)
即:使用一个密钥加密得到的密文,可以用另一个密钥解密出来得到明文。

所以下面的等式也能成立:
A = RSA(B, sk)
B = RSA(A, pk)

被公开的就是公钥,不公开的就是私钥。

需要明确:
RSA加密 - RSA解密 这一过程需要两个密钥都参与,只有 一个密钥是不能完成整个加密-解密工作的

HTTPS是RSA的一个典型应用。

一种基于RSA和3DES的安全通信的方法

1. A与B希望进行安全通信
2. A持有私钥sk,对外公开公钥pk
3. B随机生成一个3DES密码X
4. B将X使用公钥pk加密后得到密文Y
5. B将密文Y发送给A (悄悄告诉A:咱们用密码X进行通信吧)
6. A使用私钥sk解密Y,得到3DES密码X
7. A与B开始进行通信,通信内容使用密码X进行3DES加密

为什么还需要3DES这样的对称加密算法

因为RSA的加密解密复杂度很高,会导致数据传输效率大幅度降低,
但3DES这样的对称加密算法则不然,甚至能使用硬件的电路实现3DES算法。
所以为了速度,多数情况下选择用RSA交换对称算法的密码,用3DES这样的对称算法进行实际的数据加解密。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值