Linux中的随机数文件 /dev/random /dev/urandom

转载 2016年08月31日 10:13:09
转自:http://www.linuxidc.com/Linux/2012-05/60476.htmLinux中的随机数可以从两个特殊的文件中产生,一个是/dev/urandom.另外一个是/dev/random。他们产生随机数的原理是利用当前系统的熵池来计算出固定一定数量的随机比特,然后将这些比特作为字节流返回。熵池就是当前系统的环境噪音,熵指的是一个系统的混乱程度,系统噪音可以通过很多参数来评估,如内存的使用,文件的使用量,不同类型的进程数量等等。如果当前环境噪音变化的不是很剧烈或者当前环境噪音很小,比如刚开机的时候,而当前需要大量的随机比特,这时产生的随机数的随机效果就不是很好了。这就是为什么会有/dev/urandom和/dev/random这两种不同的文件,后者在不能产生新的随机数时会阻塞程序,而前者不会(ublock),当然产生的随机数效果就不太好了,这对加密解密这样的应用来说就不是一种很好的选择。/dev/random会阻塞当前的程序,直到根据熵池产生新的随机字节之后才返回,所以使用/dev/random比使用/dev/urandom产生大量随机数的速度要慢。下面是一个简单的测试:[lichao@sg01 dd]$ dd if=/dev/random of=random.dat bs=1024b count=1 0+1 records in 0+1 records out 128 bytes (128 B) copied, 0.000169 seconds, 757 kB/s [lichao@sg01 dd]$ dd if=/dev/urandom of=random.dat bs=1024b count=1 1+0 records in 1+0 records out 524288 bytes (524 kB) copied, 0.091297 seconds, 5.7 MB/s 可以看到使用/dev/random产生随机数的速度很慢,而且产生的量很有限,当然,/dev/urandom的随机效果则好很多。

/dev/random和/dev/urandom的一点备忘

1.  基本介绍     /dev/random和/dev/urandom是Linux系统中提供的随机伪设备,这两个设备的任务,是提供永不为空的随机字节数据流。很多解密程序与安全应用程序(如SSH K...
  • ohmygirl
  • ohmygirl
  • 2014年10月22日 22:36
  • 19695

如何创建 /dev/random

Namerandom, urandom - kernel random number source devicesDescription
  • wonder4
  • wonder4
  • 2008年03月18日 13:56
  • 4564

/dev/random与/dev/urandom

先让我们从一个调试中的
  • xiaojsj111
  • xiaojsj111
  • 2014年04月23日 15:31
  • 7062

/dev/random vs /dev/urandom

/dev/random和/dev/urandom是unix系统提供的产生随机数的设备,很多应用都需要使用random设备提供的随机数,比如ssh keys, SSL keys, TCP/IP seq...
  • zqy2000zqy
  • zqy2000zqy
  • 2006年09月01日 17:03
  • 6763

使用/dev/random生成随机数

      http://www.linuxdiyf.com/viewarticle.php?id=17302     很多库例程产生的“随机”数是准备用于仿真、游戏等等;它们在被用于密钥生成一类的安...
  • ww2000e
  • ww2000e
  • 2010年09月02日 09:15
  • 2120

/dev/random和/dev/urandom的一点备忘

1.  基本介绍     /dev/random和/dev/urandom是Linux系统中提供的随机伪设备,这两个设备的任务,是提供永不为空的随机字节数据流。很多解密程序与安全应用程序(如SSH ...
  • lc0817
  • lc0817
  • 2016年12月28日 16:37
  • 399

linux中特殊的设备(/dev/zeo,/dev/null,/dev/unrandom,/dev/random)

Linux中的随机数文件 /dev/random /dev/urandom
  • menogen
  • menogen
  • 2014年07月23日 19:09
  • 1624

Linux: /dev/random , /dev/urandom

原文: http://blog.csdn.net/ohmygirl/article/details/40385083 1.  基本介绍     /dev/random和/dev/ura...
  • chj90220
  • chj90220
  • 2015年07月24日 16:04
  • 677

/dev/random和/dev/urandom

/dev/random和/dev/urandom是unix系统提供的产生随机数的设备,很多应用都需要使用random设备提供的随机数,比如ssh keys, SSL keys, TCP/IP sequ...
  • wind19
  • wind19
  • 2012年10月18日 13:44
  • 8315

在Linux中利用熵池 /dev/urandom 生成固定长度随机数

/dev/urandom 是一个内核熵池 在Linux内核中,熵池是环境噪声数据流的集合,被作为种子用于生成随机数。 以下命令Ubuntu或者Centos都已测试通过 cat /dev/uran...
  • RBPicsdn
  • RBPicsdn
  • 2018年01月09日 21:52
  • 61
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Linux中的随机数文件 /dev/random /dev/urandom
举报原因:
原因补充:

(最多只允许输入30个字)