摘要随着科学技术的高速发展,越来越多的领域需要用到随机数,因此,为了满足日益增加的需求,人们开始借助计算机生成随机数。基于此,本文首先介绍了随机数分类,并分别介绍了几种常用的均匀的伪随机数生成算法以及在均匀随机数的基础上,引入的非均匀随机数的生成算法。同时,本文也介绍了随机数在密码学中的应用。为了能更直观地说明随机数在密码学中的重要作用,以RSA加密算法为例,单独进行了说明。在文章篇末,对毕业设计的程序部分,从程序流程到具体函数的功能,详细地描述了几种伪随机数生成算法以及RSA加密算法在C++程序中的具体实现。65262
毕业论文关键词 随机数 生成算法 密码学 RSA
毕业设计说明书(论文)外文摘要
Title Randum Number Generation Algorithm And Its Application In Cryptography
Abstract
With the rapid development of science and technology ,the random number is being used in more and more areas . Therefore, in order to meet the increasing demand , people begin using computer to generate the random number. Based on this, paper presents firstly the classification of random number, then we introduce several common uniform pseudo-random number generation algorithms .And on the basis of uniform random number ,the paper presents some non-uniform random number generation algorithms. Meanwhile, the paper also describes the application of random number in the cryptography . In order to present the important role of a random number in the cryptography, we describe the RSA encryption algorithm as an example .At the end of this article-- the part of program of the graduate design, from the flow of the program to the specific role of the function ,we detail several pseudo-random number generation algorithm and RSA encryption algorithm in C++.
Keywords Random number Generation Algorithm Cryptograph RSA
目 次
引言(或绪论) 1
1.1 随机数的分类 1
1.2 随机数的性能检测 2
2 随机数的生成方法 3
2.1 伪随机数的生成方法 4
2.2 近似真随机数的生成方法 9
3 随机数在密码学中的应用 10
3.1 随机数在密码学中的重要作用 10
3.2 RSA加密算法 11
4 程序的实现 13
4.1 随机数发生器的实现13
4.2 RSA加密算法的实现 21
结论 27
致谢 28
参考文献29
1 引言(或绪论)
随机数是专门的随机试验的结果,一个数字,例如5,不能称之为是随机数。随机数是指具有确定分布和概率的、位于一定阀值内的一组数字,换言之,随机数是在一定范围内随机产生的数,并且得到这个范围内的每一个数的概率是一样的。除了传统的均匀分布随机数之外,还有非均匀分布的随机数,例如正态分布,指数分布,Γ分布等。
随机数可以应用在很多领域之中,除了在抽样、数值分析、仿真、计算机程序设计、决策、美学和娱乐中有广泛的应用之外,在生物医学中,随机数的使用也很广泛,例如,生物医学工程中随机数的使用,流行病调查、医学检验和生物体视学中的随机抽样等等。本文主要探讨的是随机数在密码学中的应用,具体介绍详见第3章。论文网
1.1 随机数的分类
随机数可以分为三类:真随机数、准随机数、伪随机数。