做网站前台模型要做什么呢天天清茶 湖南网站建设
- 作者: 五速梦信息网
- 时间: 2026年03月19日 09:55
当前位置: 首页 > news >正文
做网站前台模型要做什么呢,天天清茶 湖南网站建设,北京网聘咨询有限公司,搜狗推广优化文章目录 RSA定义RSA加密与解密加密解密 生成密钥对一个例子密钥对生成加密解密 对RSA的攻击通过密文来求得明文通过暴力破解来找出D通过E和N求出D对N进行质因数分解通过推测p和q进行攻击 中间人攻击 一些思考公钥密码比对称密码的机密性更高#xff1f;对称密码会消失#x… 文章目录 RSA定义RSA加密与解密加密解密 生成密钥对一个例子密钥对生成加密解密 对RSA的攻击通过密文来求得明文通过暴力破解来找出D通过E和N求出D对N进行质因数分解通过推测p和q进行攻击 中间人攻击 一些思考公钥密码比对称密码的机密性更高对称密码会消失RSA使用过程中质数对会不会被用光RSA加密过程中需要对大整数进行质因数分解N达到多少比特可以抵御质因数分解 RSA定义
RSA是一种公钥密码算法他的名字由他的三位开发者的形式首字母组成
RSA加密与解密 加密 密文 明文EmodN 在RSA只能够明文、密钥和密文都是数字具体加密过程可由上式来表达RSA的密文就是对代表明文的数字的E次方求modN的结果 E和N的组合就是密钥一般可写成“密钥是E, N”
解密
明文 密文DmodN对表示密文 数字的D次方求modN就可以得到明文D和N的组合就是私钥一般可写成“私钥是D, N”这里所使用的数字N和加密时使用的数字N是相同的
生成密钥对
公钥是E, N私钥是D, N因此求E, D, N这三个数的过程就是生成密钥对的过程即为RSA密钥对的生成过程
求N 首先准备两个很大的质数p, q若p和q过小的话密码会变得容易破译但若p和q过大的话计算时间又会变得很长N为两质数的乘积N p*q 求L L是(p-1)和(q-1)的最小公倍数(least common multiple)用lcm(X, Y)来表示“X和Y的最小公倍数”L lcm(p-1, q-1) 求E E是一个比1大、比L小的数E和L的最大公约数(greatest common divisor)必须是1用gcd(X, Y)来表示X和Y的最大公约数1 E L, gcd(E, L) 1要找到满足要求的数要使用伪随机数生成器通过伪随机数生成器在1 E L的范围内生成E的候选数然后再判断其是否满足gcd(E, L) 1这个条件 求D 1 D L, E * D mod L 1只要数D满足上述条件则通过E和N进行加密的密文就可以通过D和N进行解密
一个例子
密钥对生成
求N p 17, q 19N p * q 17 * 19 323 求L L lcm(p-1, q-1) lcm(16, 18) 144 求E gcd(E, L) 1E 5、7、11、13、17…选取E 5N 323 求D E * D mod L 1将D 29代入上式即满足E * D mod L 5 * 29 mod 144 145 mo 144 1
得公钥(E, N) (5, 323)私钥(D, N) (29, 323)公钥是可以任意公开的但私钥必须妥善保管
加密
要加密的明文必须是小于N的数即此处必须是小于323的数因为在加密过程中有mod N操作假设需要加密的数是123公钥(E, N) (5, 323)密文 明文Emod N 1235mod 323 225
解密
收到密文是225私钥(D, N) (29, 323)明文 密文Dmod N 22529mod 323 123
对RSA的攻击
密码破译者知道的信息 密文可以通过窃听来获取公钥(E, N)公钥是公开信息 密码破译者不知道的信息 明文需要破译的内容私钥中的D私钥中的D是不知道的其他密码破译者不知道生成密钥对时所使用的p、q、L
通过密文来求得明文
若在加密过程中没有mod N的操作通过密文求解明文的难度并不大因为可以看作是一个求对数的问题但是加上mod N后求明文就变成了求离散对数的问题这种操作非常困难目前还没有发现求解离散对数的高效算法
通过暴力破解来找出D
只要能知道D就能对密文进行解密。因此可以逐一尝试有可能作为D的数字来破译RSA即暴力破解法暴力破解法的难度会随着D的长度增大而增大当D足够长时就不可能在现实的时间内通过暴力破解找出D现在RSA所使用的p和q的长度都是1024比特以上的N的长度为2048比特以上的由于E和D的长度可以和N差不多因此要找出D就需要进行2048比特以上的暴力破解
通过E和N求出D
对N进行质因数分解
p和q是不能被密码破译者知道的因为N p * q而且N是公开的p和q都是质数因此由N求p和q只能通过将N进行质因数分解来完成一旦发现了对大整数进行质因数分解的高效算法RSA就能够被破译然而现在还没有发现对大整数进行质因数分解的高效算法而且也尚未证明质因数分解是否真的是非常困难的问题甚至不知道是否存在一种分解质因数的简单方法
通过推测p和q进行攻击
由于p和q是通过伪随机数生成器产生的如果伪随机数生成器的算法很差密码破译者就有可能推测出来p和q因此使用能够被推测出来的随机数是非常危险的
中间人攻击
man-in-the-middle attack这种方法虽不能破译RSA但却是一种针对机密性的有效攻击中间人攻击就是主动攻击者M混入发送者和接收者中间对发送者伪装成接收者对接收者伪装成发送者的攻击方式此时M就是“中间人” 消息发送者A向B发送邮件索取公钥攻击人M通过窃听发现A在向B索取公钥B看到A的邮件并将自己的公钥发送给AM拦截B的邮件使其无法发送给A然后将B的公钥保存起来M伪装成B将M自己的公钥发送给AA将自己的消息用B的公钥此时其实是M的公钥进行加密A将加密后的消息发送给B 但A所持有的并非B的公钥而是M的公钥因此A是用M的公钥对邮件进行加密 M拦截A的加密邮件 这封加密邮件是用M的公钥进行加密的因此M能够对其进行解密 M伪装成A写一封假的邮件并用4中保存下来的B的公钥对邮件进行加密再发送给B
上述过程可以反复多次B向A发送加密邮件也可能受到同样的攻击中间人攻击可以针对任何公钥密码攻击过程中公钥密码并没有被破译所有的密码算法也都正常工作并确保了机密性然而所谓的机密性并不存在在A与B之间而成立在A与M之间与M与B之间仅靠公钥密码本身是无法防御中间人攻击的这种情况可以使用公钥的证书
一些思考
公钥密码比对称密码的机密性更高
不一定机密性的高低是根据密钥长度而变化的
对称密码会消失
不会虽然有了公钥密码但对称密码也不会消失一般来说在采用具备同等机密性的密钥长度的情况下公钥密码的处理速度只有对称密码的几百分之一因此公钥密码并不适合用来对很长的消息内容进行加密根据目的的不同还可能会配合使用对称密码和公钥密码
RSA使用过程中质数对会不会被用光
不会512比特能够容纳的质数数量约为10的150次方假设世界上有100亿人每人每秒生成100亿个密钥对那么在经过100亿年后会生成100亿人 * 100亿个 * 366 * 24 * 60 * 60秒 * 100亿年 316224 * 1032 1039 10150
RSA加密过程中需要对大整数进行质因数分解
不需要RSA加密和解密的过程都无需对大整数进行质因数分解操作只有在需要有数N求p和q的密码破译过程中才需要对大整数进行质因数分解RSA的设计是将质因数分解的难题留给密码破译者
N达到多少比特可以抵御质因数分解
不能抵御N无论有多长总有一天能被质因数分解因此问题是能否在现实的时间内对N进行质因数分解
- 上一篇: 做网站前期费用怎么做淘宝客网站备案
- 下一篇: 做网站前台用什么wordpress 空间要求
相关文章
-
做网站前期费用怎么做淘宝客网站备案
做网站前期费用怎么做淘宝客网站备案
- 技术栈
- 2026年03月19日
-
做网站前段用什么软件wordpress开发视频教程
做网站前段用什么软件wordpress开发视频教程
- 技术栈
- 2026年03月19日
-
做网站前端用什么语言福州正规网站建设公司报价
做网站前端用什么语言福州正规网站建设公司报价
- 技术栈
- 2026年03月19日
-
做网站前台用什么wordpress 空间要求
做网站前台用什么wordpress 空间要求
- 技术栈
- 2026年03月19日
-
做网站去哪里做好重点培育学科建设网站
做网站去哪里做好重点培育学科建设网站
- 技术栈
- 2026年03月19日
-
做网站如何报价网络营销公司排名
做网站如何报价网络营销公司排名
- 技术栈
- 2026年03月19日
