在UNIX操作系统(包括类UNIX系统)中,/dev/random 是一个特殊的设备文件,可以用作随机数发生器或伪随机数发生器。
/dev/urandom
是 /dev/random
一个副本,非阻塞的随机数发生器,它会重复使用熵池中的数据以产生伪随机数据。这表示对 /dev/urandom
的读取操作不会产生阻塞,但其输出的熵可能小于 /dev/random
的。它可以作为生成较低强度密码的伪随机数生成器,不建议用于生成高强度长期密码。
常用的生成随机数的方法1
tr -dc A-Za-z0-9_\!\@\#\$\%\^\&\*\(\)-+= < /dev/urandom | head -c 32 | xargs
该命令生成 32 位的带有 A-Za-z0-9_!@#$%^&*()-+=
的随机数,在 MacOS 中需要指定语言环境为 C 语言才行1
LC_CTYPE=C tr -dc A-Za-z0-9_\!\@\#\$\%\^\&\*\(\)-+= < /dev/urandom | head -c 32 | xargs
最近热读
扫码关注公众号,或搜索公众号“温欣爸比”
及时获取我的最新文章