最近使用这两个设备的时候,发现 /dev/random生成随机数很慢;于是就查了查:

这两个设备的差异在于:/dev/random的random pool依赖于系统中断,因此在系统的中断数不足时,/dev/random设备会一直封锁,尝试读取的进程就会进入等待状态,直到系统的中断数充分够用, /dev/random设备可以保证数据的随机性。/dev/urandom不依赖系统的中断,也就不会造成进程忙等待,但是数据的随机性也不高。

使用下列命令可以简单对比其差异:

[root@docker ~]# cat /dev/urandom | od -x
[root@docker ~]# cat /dev/random | od -x

使用 dd 进行生成不全为0的文件时,可以选择 /dev/urandom 作为测试源;

使用 urandom:

You just want a large file with random data for some kind of testing.
You are using the dd command to wipe data off a disk by replacing it with random data.
Almost everywhere else where you don’t have a really good reason to use /dev/random instead.

使用 random:

Randomness is critical to the security of cryptography in your application – one-time pads, key generation.

保持更新,更多linux 相关的内容,请关注 cnblogs.com/xuyaowen

参考链接:

https://vaibhavsingh1993.github.io/blog/2017/11/05/random-vs-urandom/

最新文章

  1. 创建ASP.NET Core MVC应用程序(1)-添加Controller和View
  2. oracle 倒库后insert id冲突的问题
  3. 【python】PIL 批量绘制图片矩形框工具
  4. NFC:Arduino、Android与PhoneGap近场通信
  5. 【bzoj2286】 消耗战
  6. jmeter随笔(2)--上传接口报错
  7. gcc -D
  8. springmvc 数据对象回绑
  9. Android 之 内存管理-查看内存泄露(三)
  10. Linux网络地址转换分析
  11. kubernetes入门(01)kubernetes是什么?
  12. 吐槽一下--最近多次在腾讯以及万科的面试经历---Web前端与PHP后端开发
  13. kafka知识点详解
  14. 小T牛 绿色版 18.08.0100
  15. LeetCode算法历程-02
  16. oracle创建与mysql的dblink
  17. C语言 设一个函数process,调用它时,实现不同功能。
  18. 【微信小程序开发】页面配置
  19. 51nod1237 最大公约数之和 V3
  20. 系统服务和普通FORMS程序共存一体的实现

热门文章

  1. python程序员面试高概率会遇到的技术问题
  2. 关于使用DB2数据库的项目后台报-420错误码的问题
  3. web中状态码301和302的区别
  4. Java题库——Chapter14 JavaFX基础
  5. SpringBoot2.0整合WebSocket,实现后端数据实时推送!
  6. C#_.NetCore_Web项目_EXCEL数据导出(ExcelHelper_第一版)
  7. 【Java并发系列】--Java内存模型
  8. 工具-Xmind常用快捷键/使用
  9. 使用可移动表空间(TTS)的最佳做法 (Doc ID 1457876.1)
  10. A:mysql数据库章节导航