中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-12 22:23
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 根据字典文件生成密码字符串 查看 1,079 回复 3
楼 主 根据字典文件生成密码字符串 发表于 2010-02-27 20:13 ·  中国 上海 浦东新区 电信
中级用户
★★
积分 400
发帖 211
注册 2007-09-30 18:02
18年会员
UID 98650
性别 男
状态 离线
是否可以使用批处理根据多个字典文件来生成一个随机的密码字符串?没有想出什么好的算法。

随机从3char.txt中提取一个3个字符的词语,再随机从4char.txt提取一个4个字符的词语。形成一个7字符的密码,例如:catfish。每次的密码都是随机提取的。

3char.txt 包含任意多个3个字符的常用英语词语
cat
got
sex
god
cow
。。。

4char.txt 包含任意多个4个字符的常用英语词语
find
fish
mice
rice
。。。
2 发表于 2010-02-27 20:27 ·  中国 吉林 延边朝鲜族自治州 延吉市 电信
银牌会员
★★★
正在学习中的菜鸟...
积分 1,039
发帖 897
注册 2009-03-01 15:34
17年会员
UID 140302
性别 男
来自 在地狱中仰望天堂
状态 离线
%RANDOM% 系统 返回 0 到 32767 之间的任意十进制数字。由 Cmd.exe 生成。
通过求余数获得一个指定范围的随机变量,通过这个变量来控制for对字典的解析。
在for中,可以使用set /a a+=1来计数,也可以使用findstr来打印行号。

[ Last edited by Hanyeguxing on 2010-2-27 at 22:01 ]
3 发表于 2010-02-27 20:41 ·  中国 吉林 延边朝鲜族自治州 延吉市 电信
银牌会员
★★★
正在学习中的菜鸟...
积分 1,039
发帖 897
注册 2009-03-01 15:34
17年会员
UID 140302
性别 男
来自 在地狱中仰望天堂
状态 离线
也可以使用这个批处理来创建7位密码串
@echo off&setlocal ENABLEDELAYEDEXPANSION
set n=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
for /l %%i in (1 1 7) do set /a a=!random!%%62&call set m=!m!%%n:~!a!,1%%
echo %m%&pause

密码由任意大小写字母和数字构成

[ Last edited by Hanyeguxing on 2010-2-27 at 20:47 ]
4 发表于 2010-02-27 22:01 ·  中国 上海 浦东新区 电信
中级用户
★★
积分 400
发帖 211
注册 2007-09-30 18:02
18年会员
UID 98650
性别 男
状态 离线
就是为了方便记住随机的密码才使用字典文件的。

现在共有下列字符串列表,分别可组成8位密码。
如 2+6, 3+5, 4+4,如何随机的挑选他们之间的配对呢?

2char.txt
3char.txt
4char.txt
5char.txt
6char.txt
附件
lists.zip (5.36 KiB, 下载次数: 10)
论坛跳转: