HGAME

Easy RSA

先把最后的数据做下处理 四个为一组,分别为e,p,q,c,依次求得明文即可

import gmpy2
from libnum import n2s
a = [12433, 149, 197, 104, 8147, 131, 167, 6633, 10687, 211, 197, 35594, 19681, 131, 211, 15710, 33577, 251, 211, 38798, 30241, 157, 251, 35973, 293, 211, 157, 31548, 26459, 179, 149, 4778, 27479, 149, 223, 32728, 9029, 223, 137, 20696, 4649, 149, 151, 13418, 11783, 223, 251, 14239, 13537, 179, 137, 11702, 3835, 167, 139, 20051, 30983, 149, 227, 23928, 17581, 157, 131, 5855, 35381, 223, 179, 37774, 2357, 151, 223, 1849, 22649, 211, 229, 7348, 1151, 179, 223, 17982, 8431, 251, 163, 30226, 38501, 193, 211, 30559, 14549, 211, 151, 21143, 24781, 239, 241, 45604, 8051, 179, 131, 7994, 863, 181, 131, 11493, 1117, 239, 157, 12579, 7561, 149, 199, 8960, 19813, 239, 229, 53463, 4943, 131, 157, 14606, 29077, 191, 181, 33446, 18583, 211, 163, 31800, 30643, 173, 191, 27293, 11617, 223, 251, 13448, 19051, 191, 151, 21676, 18367, 179, 157, 14139, 18861, 149, 191, 5139, 9581, 211, 193, 25595]
for i in range(0,len(a),4):
    e = a[i]
    p = a[i+1]
    q = a[i+2]
    phi = (p - 1) * (q - 1)
    d = gmpy2.invert(e, phi)
    c = a[i+3]
    m = pow(c, d, p * q)
    print(chr(int(m)),end='')

hgame{L00ks_l1ke_y0u've_mastered_RS4!} 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值