线性同余发生器密码解题
题目
贴出原题
解题思路
- 根据题目我们可以看出,这道题目有几点需要注意。
- 第一:用线性同余发生器产生一个随机数字串,题目已经给出了4个随机数,可以初步判定是前四个随机数,因此我们需要根据这四个数来生成后面的随机数,用以随机数作偏移产生明文;
- 第二:密文格式,可以明显看出是ASCII值,因此也相当于个变异凯撒;
- 第三:同时要注意flag格式问题,可以看出最后flag只有27位,而密文有31位。
解题过程
1. 根据已知四位随机数求解变量:
- 线性同余发生器的公式:
- 解a,c,m的方法有两种,一个是数学求解,另一个是爆破。两种方法都很简单。
- 数学求解可以通过已知的四个随机数,列得三个方程,彼此相减消元,得到一个只有模数m变量的方程,得出结果,但得到的结果不唯一,由线性同余发生器的公式可知,a和m都是素数