根据规则,crackme SN唯一且为大小写字母+数字。
本题CODE为: PEDIyV9102dVreadyu
正确提示:yes, correct sn!
crackme 取名 青梅竹马 ,意指代 小素数的组合, 字面隐含谜底 "两小无猜" (方程右边为
2) 。
设计思路:
(1)原始解:M
考虑100以内的素数,顺序生成一个数列:
2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97
基于这些小素数的乘积,根据RSA的原理拓展出一个题目。
第一项2, 比较特殊,把它排除开来,然后考虑N适当的长度,经过计算,取
N = 3*5*7*11*13*17*19*23*29*31*37*41*43*47*53*59*61*67*71*73 =
20364840299624512075310661735
N的欧拉函数计算如下:
φ(N)=
2*4*6*10*12*16*18*22*28*30*36*40*42*46*52*58*60*66*70*72 =
5133855159158901099724800000
然后在后续较大的其余项里,任取一个素数,比如取 e = 83,建立一个幂模方程。
求解大整数M ( 2 < M < N), 使得M^e = 2 mod N
等价于求解:
e*d = 1 mod φ(N) , 且 1 < d < φ(N)
2^d = M mod N , 且 2 < M < N
由前面的条件可知,
(a) N的素因子不包含2;
(b) 并且 φ(N) 的每个因子项都小于e, 且e是一个素数, 所以e,φ(N)互素, 那么逆元d存
在。
评论0
最新资源