加载中…
个人资料
wilddeer
wilddeer
  • 博客等级:
  • 博客积分:0
  • 博客访问:42,841
  • 关注人气:7
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

随机数在博彩游戏中的应用

(2010-07-13 11:16:49)
标签:

杂谈

分类: 游戏

绝大多数博彩游戏都用到了概率论的相关基本,而概率在具体的实现上一般表示为随机函数的调用.

但根据本人对市面上不少博彩游戏的研究,发现随机函数都是用的伪随机数,这样的后果是一方面影响游戏的公平性,另一方面也有可能被有心人利用.

C语言伪随机函数:

int holdrand=1;

int _cdecl rand(void)

{ return ((holdrand=holdrand*214013L+25310112)>>16)&0x7fff}; }

 

Delphi伪随机函数:

procedure       _RandInt;
asm
    ->EAX     Range   }
    <-EAX     Result  }
        PUSH    EBX
{$IFDEF PIC}
        PUSH    EAX
        CALL    GetGOT
        MOV     EBX,EAX
        POP     EAX
        MOV     ECX,[EBX].OFFSET RandSeed
        IMUL    EDX,[ECX],08088405H
        INC     EDX
        MOV     [ECX],EDX
{$ELSE}
        XOR     EBX, EBX
        IMUL    EDX,[EBX].RandSeed,08088405H
        INC     EDX
        MOV     [EBX].RandSeed,EDX
{$ENDIF}
        MUL     EDX
        MOV     EAX,EDX
        POP     EBX
end;

 

解决办法:

Windows下使用以下这组函数

CryptAcquireContext

CryptGenRandom

CryptReleaseContext

 

 

嵌入式开发,RTC+其它硬件随机因素.

 

 

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有