字母数字密码解密工具加已知条件beta版

文本编辑器保存为文件类型为bat

@echo off
setlocal enabledelayedexpansion
echo 字母数字压缩包解密工具
echo 48:0>%temp%\alphat.txt
echo 49:1>>%temp%\alphat.txt
echo 50:2>>%temp%\alphat.txt
echo 51:3>>%temp%\alphat.txt
echo 52:4>>%temp%\alphat.txt
echo 53:5>>%temp%\alphat.txt
echo 54:6>>%temp%\alphat.txt
echo 55:7>>%temp%\alphat.txt
echo 56:8>>%temp%\alphat.txt
echo 57:9>>%temp%\alphat.txt
echo 97:a>>%temp%\alphat.txt
echo 98:b>>%temp%\alphat.txt
echo 99:c>>%temp%\alphat.txt
echo 100:d>>%temp%\alphat.txt
echo 101:e>>%temp%\alphat.txt
echo 102:f>>%temp%\alphat.txt
echo 103:g>>%temp%\alphat.txt
echo 104:h>>%temp%\alphat.txt
echo 105:i>>%temp%\alphat.txt
echo 106:j>>%temp%\alphat.txt
echo 107:k>>%temp%\alphat.txt
echo 108:l>>%temp%\alphat.txt
echo 109:m>>%temp%\alphat.txt
echo 110:n>>%temp%\alphat.txt
echo 111:o>>%temp%\alphat.txt
echo 112:p>>%temp%\alphat.txt
echo 113:q>>%temp%\alphat.txt
echo 114:r>>%temp%\alphat.txt
echo 115:s>>%temp%\alphat.txt
echo 116:t>>%temp%\alphat.txt
echo 117:u>>%temp%\alphat.txt
echo 118:v>>%temp%\alphat.txt
echo 119:w>>%temp%\alphat.txt
echo 120:x>>%temp%\alphat.txt
echo 121:y>>%temp%\alphat.txt
echo 122:z>>%temp%\alphat.txt
echo 65:A>>%temp%\alphat.txt
echo 66:B>>%temp%\alphat.txt
echo 67:C>>%temp%\alphat.txt
echo 68:D>>%temp%\alphat.txt
echo 69:E>>%temp%\alphat.txt
echo 70:F>>%temp%\alphat.txt
echo 71:G>>%temp%\alphat.txt
echo 72:H>>%temp%\alphat.txt
echo 73:I>>%temp%\alphat.txt
echo 74:J>>%temp%\alphat.txt
echo 75:K>>%temp%\alphat.txt
echo 76:L>>%temp%\alphat.txt
echo 77:M>>%temp%\alphat.txt
echo 78:N>>%temp%\alphat.txt
echo 79:O>>%temp%\alphat.txt
echo 80:P>>%temp%\alphat.txt
echo 81:Q>>%temp%\alphat.txt
echo 82:R>>%temp%\alphat.txt
echo 83:S>>%temp%\alphat.txt
echo 84:T>>%temp%\alphat.txt
echo 85:U>>%temp%\alphat.txt
echo 86:V>>%temp%\alphat.txt
echo 87:W>>%temp%\alphat.txt
echo 88:X>>%temp%\alphat.txt
echo 89:Y>>%temp%\alphat.txt
echo 90:Z>>%temp%\alphat.txt
set /p rarFile=请输入压缩包路径如C:\test.rar:
set /p rarRoot=请输入WINRAR主目录如C:\Program Files\WinRAR:
set /p len1=请输入位数,不知道位数直接回车:
set /p pwdType=请输入密码类型1:纯数字,2:纯字母,其他字符:混合,不知道类型直接回车:
set /p quanzhong=请输入权重顺序1:数字2:字母3:混合,比如输入123表示优先数字,其次字母,最后混合,不设置直接回车:
set beginTime=%time%
rem cd /d "C:\Program Files\WinRAR"
cd /d "!rarRoot!"
set len=1
if not "!len1!"=="" (
set len=!len1!
)
for /l %%t in (1,0,1) do (
if "!quanzhong!" equ "" (
if "!pwdType!" equ "" (
call:diguiMix !len!
) else (
if "!pwdType!" equ "1" (
call:diguiDigit !len!
) else (
if "!pwdType!" equ "2" (
call:diguiAlphat !len!
) else (
call:diguiMix !len!
)
)
)
) else (
set quanzhong1=!quanzhong:~0,1!
set quanzhong2=!quanzhong:~1,1!
set quanzhong3=!quanzhong:~2!
for /l %%b in (1,1,3) do (
set quanzhong4=
if %%b equ 1 (
set quanzhong4=!quanzhong1!
)
if %%b equ 2 (
set quanzhong4=!quanzhong2!
)
if %%b equ 3 (
set quanzhong4=!quanzhong3!
)
if "!quanzhong4!" equ "1" (
call:diguiDigit !len!
) else (
if "!quanzhong4!" equ "2" (
call:diguiAlphat !len!
) else (
call:diguiMix !len!
)
)
)
)
if not "!len1!"=="" (
exit
)
set /a len=!len!+1
)

:diguiMix
for /f "tokens=2 delims=:" %%a in ('type %temp%\alphat.txt') do (
if %1 geq 1 (
set /a num=%1-1
call:diguiMix !num! %2%%a
) else (
rar x -mt50 -o+ -r- -p%2 -inul -ilog%temp%\rarlog.txt "!rarFile!"
set checkCharFlag=1
for /f "usebackq tokens=3 delims=:" %%i in (`find /c "错误" %temp%\rarlog.txt`) do (
set checkChar=%%i
set checkChar=!checkChar: =!
if not "!checkChar!"=="0" (
set checkCharFlag=0
echo password %2 is fail^^!
)
)
if "!checkCharFlag!" equ "1" (
cls
echo !beginTime!
echo rar password is %2^^!
echo %time%
pause
exit
)
del /q %temp%\rarlog.txt
goto :eof
)
)
exit /b

:diguiDigit
for /l %%a in (0,1,9) do (
if %1 geq 1 (
set /a num=%1-1
call:diguiDigit !num! %2%%a
) else (
rar x -mt50 -o+ -r- -p%2 -inul -ilog%temp%\rarlog.txt "!rarFile!"
set checkCharFlag=1
for /f "usebackq tokens=3 delims=:" %%i in (`find /c "错误" %temp%\rarlog.txt`) do (
set checkChar=%%i
set checkChar=!checkChar: =!
if not "!checkChar!"=="0" (
set checkCharFlag=0
echo password %2 is fail^^!
)
)
if "!checkCharFlag!" equ "1" (
cls
echo !beginTime!
echo rar password is %2^^!
echo %time%
pause
exit
)
del /q %temp%\rarlog.txt
goto :eof
)
)
exit /b

:diguiAlphat
for /f "skip=10 tokens=2 delims=:" %%a in ('type %temp%\alphat.txt') do (
if %1 geq 1 (
set /a num=%1-1
call:diguiAlphat !num! %2%%a
) else (
rar x -mt50 -o+ -r- -p%2 -inul -ilog%temp%\rarlog.txt "!rarFile!"
set checkCharFlag=1
for /f "usebackq tokens=3 delims=:" %%i in (`find /c "错误" %temp%\rarlog.txt`) do (
set checkChar=%%i
set checkChar=!checkChar: =!
if not "!checkChar!"=="0" (
set checkCharFlag=0
echo password %2 is fail^^!
)
)
if "!checkCharFlag!" equ "1" (
cls
echo !beginTime!
echo rar password is %2^^!
echo %time%
pause
exit
)
del /q %temp%\rarlog.txt
goto :eof
)
)
exit /b

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

humors221

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值