VC随机数生成器算法设计与实现
以下是资料介绍,如需要完整的请充值下载.
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
资料介绍:
摘要大随机数已经在当今社会的各个领域中都频繁使用,特别是在加密技术中已经成了不可缺少的一部分,像RSA,MD5中随机数成为加密技术的关键。本设计主要为第3代移动通信系统(3G)提供符合要求的随机数(1024位),首先取得系统时间和RAND()函数所产生的随机数作为最初的随机初值,经过三重DES(两密钥通过MD5算法得来)和异或的变换,保证其随机数的足够随机,然后通过16次的循环得到一个组合起来的1024位随机数,设计还提供一个检验随机数是否随机的平台,采用了均匀性检测,即频率检测的方法检测随机数的随机性,通过检测发现,所产生的随机数能够达到我们所期望的随机性。设计还对常见的随机数的生成方法进行了检析,提供多种随机数的生成方法,并且也提供了多种随机数的检测方法供大家参考,希望对大家有所帮助。关键字:随机数;RSA;MD5;加密技术;均匀性检测1 引言1.1随机数的概念在现今的计算机中所产生的随机数,都是伪随机数。即,可以通过一定手段和方法发现或破译其中的规律。真随机数,也有了一定的研究,比如:通过声音或原子衰变等所产生的随机数。伪随机数可以通过一定的数学算法,近似真随机数但仍然不是真随机数。1.2课题背景随机数已经在当今社会的各个领域中都频繁使用,特别是在加密技术中已经成了不可缺少的一部分,甚至很多加密技术的保密程度就取决于随机数。像RSA,MD5需求大量随机数的密码技术正需求一个好的随机数发生器的产生。如今很多随机数产生器已经存在,但那些都存在很多的不足,比如产生的随机数位数不够,不是足够随机等等问题,所以编制一个能够产生我们需要足够大的且足够随机的随机数的随机数产生器就变得很重要。1.3 国内外研究现状通过查阅质料和在网上了解,国外对随机数的研究领先于国人对随机数的研究,但是总体来说对随机数的研究都还不够深入与透彻,都还不能脱离伪随机数的阴影,但的确目前的技术支持与环境配置等方面都还制约着我们大多数只能在研究伪随机数的层面,我们只可能的尽量地做到无限接近真随机数,而不能达到真正的随机。特别在随机数的检测这方面,虽然检测的方法很多,但是都不够完善,没有一个很公用很全面的检测方法诞生,所以在随机数的研究中还有很深的东西需要我们去挖掘。1.4 本课题研究的意义保证我们能够很快速的得到需要的随机数,而且随机数能够足够大足够随机,尽量能够实用在需要用到随机数的任何地方,特别是在科研领域,比如第3代移动通信系统(3G)中需要的1024随机数,就能满足它的要求,我们所要做的就是使产生的随机数尽量的靠近真随机数。1.5 本课题的研究方法工作任务:1.大致了解随机数产生器的发展过程和现阶段的大概情况,认识现阶段随机数产生器的产生方式和所用到的知识,结构体系是怎样的。2.分析他们的优点和缺点,能够保留的优点就要尽量用到,如果有不足应该怎样改正,加上自己的理解和题目的要求做一个满意的随机数产生器。要求: 使用VC++平台,编写一个能产生1024位的随机数发生器,而且随机数还要是足够随机的,并且还要编制一个检验平台,能在该平台上检验该随机数是足够随机的。设计思路:采用VC++6.01.使用VC++实现控件的开发与界面的设计,尽量使外观简单容易实用,输出结果方便易看2.借鉴其他随机数产生器的产生方法,参阅AES,DES中随机数的产生方法,借鉴出其中的精华,补上自己的构思与想法尽量使随机数不出现重复。
包含资料:
[资料来源:www.THINK58.com]
源程序+论文(15000字以上)+可执行程序+答辩稿ppt+开题报告+外文翻译
[资料来源:THINK58.com]
获取资料请您联系本站客服