标题: 让批处理随机修改自身的密码!!!
[打印本页]
作者: bat-zw
时间: 2008-4-17 21:47
标题: 让批处理随机修改自身的密码!!!
因回答一位兄弟的问题有感而做,注:原始密码为abcdefghijklmnop
@echo off
set code=abcdefghijklmnopqrstuvwxyz0123456789-_
for /f "tokens=2" %%i in (%~nx0) do set passwords=%%i
:begin
cls&set /p password= 请输入密码:
if "%password%"=="%passwords%" goto set
cls&echo 密码错误&ping /n 2 127.1>nul&goto begin
:set
set select=2
cls&set /p select= 是否更改密码(默认回车为不更改):(1. 更改 2.不更改)
if %select% equ 1 goto change
if %select% equ 2 goto ok
if %select% neq 1 if %select% neq 2 goto wrong
:change
set /a n=%random%%%38,m+=1
call,set pwd=%pwd%%%code:~%n%,1%%
if %m% lss 16 goto change
echo :: %pwd%>>%~nx0
cls&echo 请保管好你的新密码:%pwd%&pause&goto :eof
:ok
cls&echo 密码正确!&pause&goto :eof
:wrong
cls&echo 输入无效,请正确选择输入!&ping /n 2 127.1>nul&goto set
:: abcdefghijklmnop
[
Last edited by zw19750516 on 2008-4-18 at 01:58 PM ]
作者: faultcode
时间: 2008-4-17 22:18
……ZW兄好厉害啊 天天在~先水个:)
P写的很好 不过太明显了吧 密码就写在P文件底下?……
P越来越大?
[
Last edited by faultcode on 2008-4-17 at 10:22 PM ]
作者: abcd
时间: 2008-4-17 22:21
for /f "tokens=2" %%i in (%~nx0) do set passwords=%%i
问题问题
作者: 26933062
时间: 2008-4-17 22:28
可以考虑把密码写在自身第一行,每次改写,就不会使文件越来越大了。
不过这纯粹是玩玩,批处理加密没什么意义。
还可以把密码乱序写入,这样就更“安全了”。。呵呵。。。