ctf之lcg算法 您所在的位置:网站首页 用线性同余法生成随机数序列 ctf之lcg算法

ctf之lcg算法

#ctf之lcg算法| 来源: 网络整理| 查看: 265

线性同余方法(LCG)是一种产生伪随机数的方法。 在这里插入图片描述 线性同余法最重要的是定义了三个整数,乘数 a、增量 b和模数 m,其中a,b,m是产生器设定的常数。 为了方便理解,我打个比方 假设现在有随机数X1=1234,乘数a=2,增量b=3,模数m=1000 那么下一个随机数X2=(2*1234+3)%1000=2471%1000=471

解题用到的公式:

目的公式1.Xn+1反推出XnXn=(a-1 (Xn+1 - b))%m2.求aa=((Xn+2-Xn+1)(Xn+1-Xn)-1)%m3.求bb=(Xn+1 - aXn)%m4.求mtn=Xn+1-Xn,m=gcd((tn+1tn-1 - tntn) , (tntn-2 - tn-1tn-1))

下面是公式证明: 其实公式证明挺复杂的可以最后看,先看看例题也不错哦 公式1: Xn+1 = aXn + b (mod m) aXn = Xn+1 - b (mod m) Xn = a-1 (Xn+1 - b) (mod m) 模逆运算用到扩展欧几里得算法

MMI = lambda A, n,s=1,t=0,N=0: (n


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有