首页
社区
课程
招聘
未解决 [求助]rsa根据e、d计算n
发表于: 2020-5-8 18:46 2911

未解决 [求助]rsa根据e、d计算n

2020-5-8 18:46
2911

知道密文c,公钥e,私钥d,请问怎么计算明文m呢?
变换了一下我就不知道怎么算啦,尴尬。。。

c = 5382723168073828110696168558294206681757991149022777821127563301413483223874527233300721180839298617076705685041174247415826157096583055069337393987892262764211225227035880754417457056723909135525244957935906902665679777101130111392780237502928656225705262431431953003520093932924375902111280077255205118217436744112064069429678632923259898627997145803892753989255615273140300021040654505901442787810653626524305706316663169341797205752938755590056568986738227803487467274114398257187962140796551136220532809687606867385639367743705527511680719955380746377631156468689844150878381460560990755652899449340045313521804
d = 19275778946037899718035455438175509175723911466127462154506916564101519923603308900331427601983476886255849200332374081996442976307058597390881168155862238533018621944733299208108185814179466844504468163200369996564265921022888670062554504758512453217434777820468049494313818291727050400752551716550403647148197148884408264686846693842118387217753516963449753809860354047619256787869400297858568139700396567519469825398575103885487624463424429913017729585620877168171603444111464692841379661112075123399343270610272287865200880398193573260848268633461983435015031227070217852728240847398084414687146397303110709214913
e = 65537

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 162
活跃值: (165)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
2
加密过程:c = m^e MOD n 
解密过程:m = c^d MOD n 
2020-5-8 19:44
0
雪    币: 307
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
禾之舟 加密过程:c = m^e MOD n 解密过程:m = c^d MOD n

人家不知道n。。。

最后于 2020-5-8 20:30 被要吃饭的嘛编辑 ,原因:
2020-5-8 20:27
0
雪    币: 307
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
有个工具,python的
2020-5-8 20:30
1
雪    币: 1540
活跃值: (2807)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
要吃饭的嘛 有个工具,python的
能否详细一点,我也想知道。
2020-5-9 07:36
0
雪    币: 307
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
limee 能否详细一点,我也想知道。
from gmpy2 import *
from Crypto.Util.number import sieve_base

def solve_p_q():
    # step 1
    x = 0
    k = ed - 1
    # step 2
    for i in range(len(sieve_base)):
        g = sieve_base[i]
        t = k
        # step 3
        if t % 2 == 0:
            t = t // 2
            x = powmod(g,t,n)
        else:
            continue
        # step 4
        y = gcd(x-1,n)
        if 1<y<n:
            p = y
            q = n // p
            return p,q
            
 p,q = solve_p_q()


2020-5-11 02:40
0
雪    币: 5
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
7
up up up
2020-5-27 05:39
0
雪    币: 12085
活跃值: (3545)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
确定c是密文吗?
2020-5-27 08:19
0
游客
登录 | 注册 方可回帖
返回
//