已知对方用 Excel,能否用前几次的随机数推算出下一次的随机数? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
egoate
V2EX    问与答

已知对方用 Excel,能否用前几次的随机数推算出下一次的随机数?

  •  
  •   egoate 2016-01-31 17:37:47 +08:00 3914 次点击
    这是一个创建于 3608 天前的主题,其中的信息可能已经有所发展或是发生改变。
    比如说对方 Excel 有 1-1000 共 1000 个数字,每次随机出 100 个数字, 2-3 次之后能不能推算出对方下一次要出的100个数字?
    15 条回复    2016-02-01 10:09:53 +08:00
    lazycat
        1
    lazycat  
       2016-01-31 20:08:31 +08:00 via Android
    能的话还叫随机数?
    wenssh
        2
    wenssh  
       2016-01-31 20:28:05 +08:00 via iPhone
    理论上可以,实际可能并不行。一般伪随机数都会有一个随机因子,同一个随机数生成器如果两次输入都给同一个随机因子的话会产生同样的输出,实际上游戏开发中的录像功能就利用了这个特性来减少打小。
    对于你这个问题,第一,你要确保你有一个一模一样的随机数生成器,第二,你要知道这个随机因子是什么。
    wenssh
        3
    wenssh  
       2016-01-31 20:30:06 +08:00 via iPhone
    随机因子这个看写代码的人,有的拿个本机时间,有的会取 mac 地址 cpu 温度这种来尽量保证随机。
    edsgerlin
        4
    edsgerlin  
       2016-01-31 21:41:21 +08:00   3
    @wenssh 新 CPU ( Intel 的话是 Broadwell , Skylake , AMD 也有,不了解)都有 DRNG ,直接一个 RDSEED 指令就能取到通过 CPU 电子噪声生成的真随机数。
    billlee
        5
    billlee  
       2016-01-31 21:59:15 +08:00
    Excel 应该不会用安全随机数算法吧,收集足够多的输出序列后应该是可以预测的
    Slienc7
        6
    Slienc7  
       2016-01-31 22:14:20 +08:00
    @lazycat 所以叫伪随机数。
    ilotuo
        7
    ilotuo  
       2016-01-31 22:20:04 +08:00
    大神真多..
    cchange
        8
    cchange  
       2016-01-31 22:46:49 +08:00 via iPhone
    @edsgerlin 学习了……
    wenssh
        9
    wenssh  
       2016-01-31 22:51:35 +08:00 via iPhone
    @edsgerlin 受教了:)
    dxwwym
        10
    dxwwym  
       2016-01-31 23:04:18 +08:00 via iPhone
    @edsgerlin 这个狠
    vibbow
        11
    vibbow  
       2016-01-31 23:32:58 +08:00 via Android
    @billlee Excel 应该是直接调用 Windows 的随机数生成算法的。
    Windows 的随机数生成器算法是会调用 真随机数 生成器当种子的
    ebony0319
        12
    ebony0319  
       2016-01-31 23:46:36 +08:00 via Android
    @edsgerlin 厉害,
    just1
        13
    just1  
       2016-01-31 23:50:04 +08:00 via Android
    excel 的是真随机数吧,我记得老是有讲过
    Mutoo
        14
    Mutoo  
       2016-02-01 00:07:54 +08:00
    《网络游戏安全揭密》一书中的提到过预测随机数的案例:
    http://book.51cto.com/art/200912/172452.htm

    此外 Excel 使用的是伪随机数,但没有明确种子的生成算法,
    https://support.microsoft.com/zh-cn/kb/828795

    更多讨论可以参考这个:
    http://answers.microsoft.com/en-us/office/forum/office_2003-excel/what-define-the-random-seed-within-excel/49085e19-3a63-4191-92db-27da5428b435?auth=1
    lazycat
        15
    lazycat  
       2016-02-01 10:09:53 +08:00
    @xgowex 我的意思表达的有点不太明确。。。我的意思是只根据两三组数据就能推算出后面的的话,除非知道算法并且算法里面的变量只有两三个否则就算为随机数也不可能这么 LOW 的。。。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     896 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 21:59 PVG 05:59 LAX 13:59 JFK 16:59
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86