[GKCTF 2021]RRRRsa

本文详细介绍了复现[GKCTF 2021]RRRRsa的过程,主要涉及密码学领域的知识,包括利用二项式定理和费马定理进行数学推导。解题关键在于通过式子的变形和gcd运算找到p和q,从而解决题目。
摘要由CSDN通过智能技术生成

复现[GKCTF 2021]RRRRsa

拿到题目后,准备操作,额,,,
看了看大佬的wp,恍然大悟,分享一下解题的思路。(部分题目如下)
在这里插入图片描述
一般看到这种像hint1的式子,都需要用gcd(,n)去分解出q或p。推导过程如下(官方题解)在这里插入图片描述
推导过程需要用到二项式定理和费马定理。原理如下:
1)二项式定理:(a+)
2)费马定理:a^p = a mod p;

了解原理后,在看题解就容易多了。总结了一下:
1)拿到两个式子后,先把括号去掉,然后把常数项去掉
2)之后得到的式子应该是俩个只含p或q的式子,让两个式子的p(或q)的指数系数相同;
3)将两个式子相加或相减消掉p,剩下的式子应该只剩下q,与n进行gcd()求出q。

代码如下

from gmpy2 import gcd
from Crypto.Util.number import *
import gmpy2
c=13492392717469817866883431475453770951837476241371989714683737558395769731416522300851917887957945766132864151382877462142018129852703437240533684604508379950293643294877725773675505912622208813435625177696614781601216465807569201380151669942605208425645258372134465547452376467465833013387018542999562042758
n1=7500355737908025221951782599899018322665911701977073508052340956175722588365104088254751974810758871949826192281686562671410155620764992965
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值