第三周学习任务,RSA习题练习

一.[SWPUCTF 2021 新生赛]crypto2

该题附件中有两个e,所以应该是共模攻击,运用拓展欧几里得算法,这里我直接参照培训文件的题型五

 第一题解出

二.[羊城杯 2021]Bigrsa

该题有两个n,所以是共享素数的题型,有三个素数,我们先用GCD函数求解q,再利用q依次求解p1,p2,上次培训文件中题型四例题中给了格式,但该题的c只有一个,需先求出c2,再求c1(不知道理解对不对),所以最后求解明文时pow套用pow,解出该题

 

 三.[SWPU 2020]happy

根据题目内容,这里首先要进行一个二元方程组的求解,这里利用sympy工具包求解此工具包涉及支持符号计算、高精度计算、模式匹配、绘图、解方程、微积分、组合数学、离散 数学、几何学、概率与统计、物理学等方面的功能。功能较为强大,解方程组时性能也较好。

根据附件给出的两个式子,来求出p,q

求出p,q后,就是一个很常规的解密过程

第三题解出 

四. [BJDCTF 2020]EasyRSA

该题首先要分析一个很重要的代码

z=Fraction(1,Derivative(arctan(p),p))-Fraction(1,Derivative(arth(q),q))

Fraction()是求一个分数,比如Fraction(2,9)就是九分之二,Derivative()是求导函数,包含两个参数,一个是函数表达式,一个是变量,arctan()是反正切函数,arth()是双曲正弦函数,这连个函数的倒数可以查以下,然后这个分数函数会把它变成倒数,最后表达式为

也是一个二元方程组求解,再求明文的过程

困难:对二元方程组的求解并不熟悉,借助题解帮助求出的

第四题解出

 

五.[HUBUCTF 2022 新生赛]RSAaaa

这道题我借助了一个工具来分解,536970330703利用yafu工具直接分解

 

直接利用求出发p,q,进行循环与s当中的内容进行一一匹配

 

困难 :最后匹配这里有点不太会,参照了题解,但没太看懂【2:3】是什么意思;

第五题做出

六.做题遇到的卡壳的地方

在做[SWPUCTF 2021 新生赛]crypto3这道题的时候

PR.<m> = PolynomialRing(Zmod(n))

 一直显示语法错误,不知道该怎么做,这道题最后只能放弃了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值