密码刷题记录
文章平均质量分 87
Kio鱼
这个作者很懒,什么都没留下…
展开
-
week4
⑤Xn就是计算本轮循环产生的新xs[2]的那个xs[0],而输出的xs[0]是上一轮循环的xs[1],输出的xs[1]是上一轮循环的xs[2],所以把xs[1]赋给xs[2],把xs[0]赋给xs[1],把Xn赋给xs[0],逆着循环“向上”追溯,执行10次循环即可“溯源”到原始的xs[0], xs[1], xs[2]。注意:gcdext(a,b)有三个返回值,分别是a和b的最大公约数即gcd(a,b),满足ax+by=gcd(a,b)的x,满足ax+by=gcd(a,b)的y。原创 2024-04-01 12:11:52 · 632 阅读 · 1 评论 -
week2
滴啤就是dp的意思,考察的是dp泄露,先来推理。原创 2024-03-16 00:35:38 · 832 阅读 · 0 评论 -
crypto刷题篇1(Base)
因为base64的编码过程(原理)是不变的,只是最后一步根据数字找对应的字符时,字符的顺序变了,所以我们只要找到这些数字在标准base64编码表中对应的字符,就转换回了我们熟悉的base64编码结果,也就可以进一步借助Python已有的base64库来恢复出明文了。表得出的,而解题的大体思路就是先把密文恢复成用标准的base64编码表编码的结果,再调用Python中已有的base64.b64decode()函数恢复出明文即可。得到flag:LitCTF{LeT_Us_H4V3_fU0!原创 2024-01-27 22:10:43 · 514 阅读 · 0 评论 -
密码刷题记录(3)
p=447685307 q=2037 e=17 c=704796792,提交flag{m}uozt{Zgyzhv_xlwv_uiln_xguhsld},不用看了,没提示。以U2FsdGVkX1为开头,应该是Rabbit加密,密钥为Rabbit。p=447685307 q=2037 e=17,提交flag{d}即可。埃特巴什码:最后一个字母代表第一个字母,倒数第二个字母代表第二个字母。根据flag格式,u对应f,o对应l,z对应a,t对应g。由题可知,这是BrainFuck,只有以下8种符号。原创 2024-02-21 14:45:42 · 813 阅读 · 0 评论 -
密码刷题记录(1)
题目已知flag1,flag2,e1,e2,n;满足flag1=m1^e1%n;求m1运行结果为1,说明e1和e2互素由扩展欧几里得定理,存在x,y;使得xe1+ye2=gcd(e1,e2)=1解析代码函数计算了e1和e2的最大公约数,并返回了扩展欧几里得算法的结果,其中d是最大公约数(d=1),x和y是满足贝祖等式的系数。2.m=pow(flag1,x,n)*pow(flag2,y,n)%n:使用了中国剩余定理(CRT),pow()函数的第一个参数是底数,第二个参数是指数,第三个参数是模数,原创 2024-02-15 18:02:43 · 949 阅读 · 1 评论