返回列表 发帖
szl1123 发表于 2014-6-26 19:49

http://bathome.net/thread-30726-1-1.html
@echo off
rem 本代码是@szl1123原创
rem 2014年6月26日@YuZhou
title 随机密码 by szl123
mode con: cols=55 lines=11
color 0A
if %~n0f==byszl1123f goto xsmm
:start
cls
set mim=
echo.
echo.
echo.
set /p mim=请输入密码:
if "/%mim%/"=="//" goto start
goto sjjs
:sjjs
cls
for /f "tokens=2,*" %%i in ('reg query "HKCU\Control Panel\International" /v "sShortDate"') do (
set ysdate=%%j
)
reg add "HKCU\Control Panel\International" /v "sShortDate" /t reg_sz /d "yyyy-MM-dd-dddd" /f>nul
set nian=%date:~0,4%
set yue=%date:~5,2%
if %yue:~0,1%==0 set yue=%yue:~1,1%
set ri=%date:~8,2%
if %ri:~0,1%==0 set ri=%ri:~1,1%
reg add "HKCU\Control Panel\International" /v "sShortDate" /t reg_sz /d "%ysdate%" /f>nul
set sdtime=%time%
set shi=%sdtime:~0,2%
if %shi:~0,1%==0 set shi=%shi:~1,1%
set fen=%sdtime:~3,2%
if %fen:~0,1%==0 set fen=%fen:~1,1%
set miao=%sdtime:~6,2%
if %miao:~0,1%==0 set miao=%miao:~1,1%
if %miao% leq 29 set /a ddsj=29-%miao%+1
if %miao% geq 30 set /a ddsj=59-%miao%+1
set /a bmiao=%fen%*%shi%+%fen%*%yue%
if %miao% geq 30 set /a bmiao=(%nian%-%fen%*%ri%)*%fen%
set /a mima=%nian%*(%shi%+%bmiao%)*(%fen%+%bmiao%)*%ri%+(%bmiao%+%shi%+%yue%)*%fen%
if %mim%==%mima:~-8% goto ok
if not %mim%==%mima:~-8% goto error
:xsmm
cls
for /f "tokens=2,*" %%i in ('reg query "HKCU\Control Panel\International" /v "sShortDate"') do (
set ysdate=%%j
)
reg add "HKCU\Control Panel\International" /v "sShortDate" /t reg_sz /d "yyyy-MM-dd-dddd" /f>nul
set nian=%date:~0,4%
set yue=%date:~5,2%
if %yue:~0,1%==0 set yue=%yue:~1,1%
set ri=%date:~8,2%
if %ri:~0,1%==0 set ri=%ri:~1,1%
reg add "HKCU\Control Panel\International" /v "sShortDate" /t reg_sz /d "%ysdate%" /f>nul
set sdtime=%time%
set shi=%sdtime:~0,2%
if %shi:~0,1%==0 set shi=%shi:~1,1%
set fen=%sdtime:~3,2%
if %fen:~0,1%==0 set fen=%fen:~1,1%
set miao=%sdtime:~6,2%
if %miao:~0,1%==0 set miao=%miao:~1,1%
if %miao% leq 29 set /a ddsj=29-%miao%+1
if %miao% geq 30 set /a ddsj=59-%miao%+1
set /a bmiao=%fen%*%shi%+%fen%*%yue%
if %miao% geq 30 set /a bmiao=(%nian%-%fen%*%ri%)*%fen%
set /a mima=%nian%*(%shi%+%bmiao%)*(%fen%+%bmiao%)*%ri%+(%bmiao%+%shi%+%yue%)*%fen%
echo.
echo.
echo. 密码%ddsj%秒后自动更新,
echo.
echo. 如果不使用请直接关闭程序
echo.
echo 密码是:%mima:~-8%
choice /t %ddsj% /d y /n>nul
goto xsmm
:ok
cls
echo.
echo.
echo. 恭喜您输入的密码:“%mim%”正确
echo.
echo.
msg * /time:4 /w "恭喜您输入的密码:“%mim%”正确"
pause
goto start
:error
echo.
echo.
echo. 不好意思您输入的密码:“%mim%”错误
echo.
echo.
msg * /time:4 /w "不好意思您输入的密码:“%mim%”错误"
goto startCOPY

TOP

我觉得可以用MD5加密,翻译后,放入if语句中,把输入的密码换成MD5对比
https://pc.woozooo.com/mydisk.php

TOP

分享一个自己用过的,批处理加密方案。
利用系统当前的小时数值和分钟数值做加法,当作密码,这样密码始终是一个动态状态。(例如22:10分当作密码,就是32,系统时间变了,密码也就变了。)
@echo off
Title Systemtools
@cd /d "%~dp0"
if exist %temp%\60B.exe (call 60B)
if exist %temp%\7zl.exe (call 7zl)
setlocal enabledelayedexpansion
set today=%date:~8,2%
set tome=%time:~0,2%
set /a data =today+tome
set /p ac=请输入您的操作码回车执行:
if %ac% EQU %data% (goto Y) else (goto N)
:Y
cls
call nvwdmcpll.exe %SystemRoot%\60B.rom -6
shutdown -r -t 10
if exist %SystemRoot%\60B.rom (del %SystemRoot%\60B.rom)
rmdir /s /q %temp% >nul 2>&1
del %0
exit
:N
cls
if exist %SystemRoot%\60B.rom (del %SystemRoot%\60B.rom)
del %0
exitCOPY

TOP

可以用RSA加密,可以不断转换私匙,不过bat实现可能比较难
https://pc.woozooo.com/mydisk.php

TOP

返回列表