关闭

计算机中的随机数

302人阅读 评论(0) 收藏 举报
分类:
随机数的性质从弱到强分为3类:
1. 随机性
2. 不可预测性
3. 不可重现性

在上面的三个性质中,越往下就越严格。具备随机性,不代表一定具备不可预测性;具备不可预测性,不代表一定具备不可重现性;但如果具备不可重现性,一定具备随机性和不可预测性。

满足上面的3性依次对应着:弱伪随机数,强伪随机数,真随机数。
在计算机中,用软件生成的随机数都是伪随机数,即弱伪随机数和强伪随机数。由于弱伪随机数不具备不可预测性,因此在密码学中只使用强随机数和真随机数(在密码学中,随机数常常被用于生成密钥,因此具备可预测性是危险的)

至此,我们知道,密码学中使用的随机数一定是强伪随机数或者真随机数。由于真随机数用纯软件产生很困难,因此我们在软件设计中都是用强伪随机数。不过遗憾的是,一些语言提供的随机数生成函数都是弱随机数。比如java.util.Random类生成的就是弱伪随机数,当时java中的java.security.SecureRandom类提供的是强随机数。

下面我们介绍几种伪随机数生成器。
1. 线性同余法
线性同余法生成随机数的过程如下:
第一个伪随机数R0=(A*种子+C) mod M
第二个伪随机数R1=(A*R0+C) mod M
第 N个伪随机数Rn=(A*第N-1个随机数+C) mod M
过程原理如图所示:


可见,线性同余法生成的随机数序列是可预测的,这一点使得他无法应用在密码学中。

2. 单向散列函数法
使用种子作为初始状态,将该状态作为输入,用单项散列函数计算随机数序列。然后使内部状态自增,然后继续使用单项散列函数计算随机数序列。


攻击者若想预测下一个随机数,就得知道内部状态,由于单项散列函数具有单项性,所以这是不可能的。因此单项散列函数法具备不可预测性,可以用在密码学中。

3. 密码法
原理同单项散列函数法,只不过将散列函数换成了密钥而已。




  • 大小: 65.3 KB
  • 大小: 73.6 KB
  • 大小: 73.9 KB
0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

C/C++随机数的产生及计算π近似值的应用

随机数关于随机数的定义:随机数是专门的随机试验的结果。当然这里的随机数说的是伪随机数,是计算机通过某种计算生成的一个数。关于随机数的意义及其价值,这里就不多赘述,因为例子实在太多,笔者就用一个简单的例...
  • c091728
  • c091728
  • 2016-02-05 12:23
  • 1173

条件随机场(CRF) - 3 - 概率计算问题

声明:          1,本篇为个人对《2012.李航.统计学习方法.pdf》的学习总结,不得用作商用,欢迎转载,但请注明出处(即:本帖地址)。      ...
  • xueyingxue001
  • xueyingxue001
  • 2016-05-25 15:50
  • 1998

根据权重随机选取指定条数记录的简单算法实现

原文地址:http://www.cnblogs.com/foolin/archive/2012/03/22/2412632.html
  • yhc13429826359
  • yhc13429826359
  • 2014-07-15 16:25
  • 1802

计算机中随机数的产生

  • 2011-04-03 15:07
  • 9KB
  • 下载

计算机中随机数的产生

  • 2011-07-20 15:23
  • 76KB
  • 下载

计算机中随机数的生成

无论是c,c++,java以及其他的一些高级语言,其自带的库都提供了对于随机数的生成方法。这里将从下面几个方面论述。 一:简单的模拟一下“随机数"的生成 二:java实现随机数的几种方法 三:java...
  • qq_28051453
  • qq_28051453
  • 2016-08-18 18:08
  • 271

计算机中丢失api-ms-win-crt-runtime-l1-1-0.dll的修复方案

  • 2018-01-05 10:44
  • 13.90MB
  • 下载

计算机中_cmd_指令大全.txt

  • 2013-01-17 10:20
  • 6KB
  • 下载

第02章 计算机中的数制和编码.ppt

  • 2014-04-28 20:05
  • 540KB
  • 下载

第3版第2章计算机中的信息表示

  • 2014-05-06 17:47
  • 927KB
  • 下载
    个人资料
    • 访问:142375次
    • 积分:1688
    • 等级:
    • 排名:千里之外
    • 原创:139篇
    • 转载:10篇
    • 译文:0篇
    • 评论:36条
    最新评论