RSA非对称加密原理

什么是非对称加密:加密和解密并不使用同一个密钥,在应用场景中一般客户端持有公钥,服务器持有私钥。

公钥:

公钥=(E,N)。

公钥的加密为:密文==(原文的E次方)mod N

私钥:

私钥=(D,N)

私钥=(D,N):原文==(密文的D次方)mod N

注意:

虽然我们刚刚只提到了公钥加密,私钥解密。其实私钥也可以加密,公钥也可以解密,流程和之前的是一样的(例如:私钥加密就是对原文取D次幂再mod N)。

公钥和私钥是怎么来的(我们是有追求的程序员,当然要探讨一下公钥和私钥是怎么来的):

1:第一步先找到两个质数p=3,q=11

2:N:这里的N就是刚刚提到的用来取余N的了。N=p*q;

3:T:这里的T为中间数,我们后续用他来计算公钥和私钥。T=((p-1)*(q-1))

4:E:这里的E就是公钥中的E了。E有一些条件:(1)E是质数,(2)1<E<T,(3)E不能是T的因子。在满足这些条件数中选一个来做公钥的E

5:D:这里的D是组成私钥的D了,他的计算公式如下:(D*E)%T=1

非对称加密为什么安全性高?

如果我们想要破解公钥加密的数据,就需要得到私钥。

私钥中的D是保密的,D是由中间数T计算而来,而T是由一开始选点的两个质数p,q计算而来,

p和q可以由N推出来,但是如果p和q的值过大,N就会很大,p和q的情况就会很多

所以计算出T的难度是很高的

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值