RSA进阶攻击方式(实战 2013 SECOON CTF Cryptanalysis)

前言

这篇文章要结合之前我写的RSA基础攻击方式来看。

一、Schmidt-Samoa密码体系

1. 公钥和私钥的产生

选取大整数p、q,计算 N = p2 q作为公钥,计算 dN≡1(modφ(pq))作为私钥。

2. 加密过程

与RSA类似,对于小于N的明文m,得到 密文C = m n m^n mn mod N

3. 解密过程

C d C^d Cd mod pq = 得到明文m

举个例子:
(1)选择质数:首先选择两个大的质数p和q。例如,p=7,q=11
计算N:计算N=p²q。得到N=7²×11=539
(2)计算φ(N):φ(N)表示小于或等于N的正整数中与N互质的数的个数。对于N=p²q,有φ(N)=p(p-1)(q-1)。在我们的例子中,φ(N)=7×6×10=420。
(3)计算d:d是N模φ(N)的逆元,即满足d×N≡1(modφ(N))。在我们的例子中,d=29(因为29×539≡1(mod420))。
(4)加密过程:对于消息m,计算密文C=m539(mod539)=373。
(5)解密过程:计算明文m=C29(mod77)=32。

例题:
p=11202724611138636062970864770438589479244102973570493327901297960170093740083627681372474220478706897477820368582213140314910480871560482781905349470385281
q=9491683429505997493154877769597912626416752630356476410989459686188788162115233919430343606667551439118856203441639297431149863038636614651099357451434241
c=538435351601953846549512563228807380721875084614680456891892690034158529237510119969477031806186303449646993933705430597362910854000413145776731288196418400979575683750958157576241801216573911489300474408885593131477044284744851825470269492514724722216132501748362773348033677710186472414243919212198416301188353146098919462252377832163510962331136144814859073253182174032945855047442999332055185573654891546712621722534972869140245371739332129406537631131991266

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晓梦林

都看到这里了,支持一下作者呗~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值