我经常使用命令
cat /dev/urandom | strings --bytes 1 | tr -d '\n\t ' | head --bytes 32
Run Code Online (Sandbox Code Playgroud)
生成伪随机密码。这不适用于/dev/random.
具体来说
cat /dev/urandom | strings --bytes 1 | tr -d '\n\t ' 产生输出cat /dev/random | strings --bytes 1 产生输出cat /dev/random | strings --bytes 1 | tr -d '\n\t ' 不产生输出注意:使用时,/dev/random您可能需要摆动鼠标或按键(例如 ctrl、shift 等)来生成熵。
为什么最后一个例子不起作用?是否tr有某种大型内部缓冲区可以/dev/urandom快速填充但/dev/random没有?
PS 我使用的是 CentOS 6.5
cat /proc/version
Linux version 2.6.32-431.3.1.el6.x86_64 (mockbuild@c6b10.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red …Run Code Online (Sandbox Code Playgroud)