Linux可以使用的随机数密码生成方法

Linux随机密码生成方法

目前我知道的有3种,如下:

1、md5sum

该方法可生成无规律的字母数字组合,且字母均为小写。

md5sum xxx.xx		//可以用MD5哈希函数生成某文件的哈希值当随机密码
echo xxx|md5sum			//管道符前面可输入大小写字母、数字、标点符号,甚至可以写一个循环多次生成变量,根据输出的内容生成一个哈希值

举例:根据序号1-20,生成20个哈希密码(伪随机)。

for i in `seq 1 20`;do
	echo $i|md5sum
done

2、RANDOM

在BASH环境下,可以通过输出$RANDOM方式。这个RANDOM变量的内容是得到0~32767之间的随机数。

echo $RANDOM

所以你只要echo $RANDOM时,就会主动的随机取出一个介于0~32767之间的数值。
如果我们想要0~100之间的呢.我们就可以利用 declare 宣告数值类型。

declare -i number=$RANDOM*100/32767; echo $number
declare的数字均为整数,所以$RANDOM*100范围为0-3276700,除以32767后,范围为0-100。

3、/dev/urandom

通过查看/dev/urandom即可看到随机数(大小写字母、数字、标点符号、空格等)。可用命令进行定制化设置查询,获取想要的密码。

cat /dev/urandom

如果想要20个长度为6位,且仅包含【a-zA-Z0-9】的随机字符做密码,可做如下定制化查询输出。

cat /dev/urandom|strings -6|egrep "^[a-zA-Z0-9]{6}$"|head -20
strings -6:代表只显示大于6个字符的字符串(默认最少4个)。
egrep "^[a-zA-Z0-9]{6}$":开头到结尾(^为开头,$为结尾),抓取匹配a-z,A-Z,0-9 的,必须是6位的字符串。
head -20:显示头20行密码。

因为egrep命令用于在文件内查找指定的字符串,所以需要先通strings命令把字符串筛选出来,不可省略。

嗯,就酱。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值