摘要:
#problem.py #!/usr/bin/python2 #from flag import flag from base64 import b64decode from SocketServer import ThreadingTCPServer from sys import argv fr 阅读全文
摘要:
这个题目主要是针对sage列方程解根的问题 第一个hint.py的确是老共模了 然后在多项式环上解256次根 接下来的task.py中 最主要的就是化简两个同余式 c1 = m**p%n c2 = m**q%n 也就是 c1 = m%p c2 = m%q 所以 c1 = m+i*p c2 = m+j 阅读全文
摘要:
#problem.py import sys key = '****CENSORED***************' flag = 'TWCTF{*******CENSORED********}' if len(key) % 2 == 1: print("Key Length Error") sys 阅读全文
摘要:
Paillier cryptosystem系统加解密流程如下: which λ=lcm(p−1,q−1),L(u)=(u−1)/n Proof: g∈Z∗n2,∴∃(a,b),s.t. g=(n+1)^a*b^n(mod n^2) c^λ=(n+1)^amλ*b^nmλ*r^nλ=(n+1)^amλ 阅读全文
摘要:
#attachment.py from gmpy2 import lcm , powmod , invert , gcd , mpz from Crypto.Util.number import getPrime from sympy import nextprime from random imp 阅读全文
摘要:
a = 111 b = 321 from gmpy2 import lcm , gcd gcd_res = gcd(a,b) lcm_res = lcm(a,b) #gcd_res = x1*a x1 = a/gcd_res #gcd_res = y1*b y1 = b/gcd_res #lcm_r 阅读全文
摘要:
题目 flag = open("flag", "r").read().strip() assert len(flag) == 32 def str2num(s): return int(s.encode('hex'), 16) def bbencode(n): a = 0 for i in bin( 阅读全文
摘要:
此题为Dual RSA 是找到一对ed符合两个余数 assert int(pow(pow(0xdeadbeef, e, n1), d)) == 0xdeadbeef assert int(pow(pow(0xdeadbeef, e, n2), d)) == 0xdeadbeef 下面是引用的exp 阅读全文
摘要:
起因发现我原来装在kali下的Sage无法安装包和编译 观察报错发现不能用root用户去编译Sage 于是我就做了一个专用Sage的ubantu 在Ubantu中安装非常顺利,只需要额外安装m4即可 然后在当前用户的.bashrc文件中export一下sage export PATH=$SAGE_R 阅读全文