找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
楼主: ivor

[系统相关] 动态密码的思路----讨论的是批处理

[复制链接]
发表于 2014-6-26 19:53:28 | 显示全部楼层
szl1123 发表于 2014-6-26 19:49

http://bathome.net/thread-30726-1-1.html
  1. @echo off
  2. rem 本代码是@szl1123原创
  3. rem 2014年6月26日@YuZhou
  4. title 随机密码 by szl123
  5. mode con: cols=55 lines=11
  6. color 0A
  7. if %~n0f==byszl1123f goto xsmm
  8. :start
  9. cls
  10. set mim=
  11. echo.
  12. echo.
  13. echo.
  14. set /p mim=请输入密码:
  15. if "/%mim%/"=="//" goto start
  16. goto sjjs
  17. :sjjs
  18. cls
  19. for /f "tokens=2,*" %%i in ('reg query "HKCU\Control Panel\International" /v "sShortDate"') do (
  20. set ysdate=%%j
  21. )
  22. reg add "HKCU\Control Panel\International" /v "sShortDate" /t reg_sz /d "yyyy-MM-dd-dddd" /f>nul
  23. set nian=%date:~0,4%
  24. set yue=%date:~5,2%

  25. if %yue:~0,1%==0 set yue=%yue:~1,1%
  26. set ri=%date:~8,2%
  27. if %ri:~0,1%==0 set ri=%ri:~1,1%
  28. reg add "HKCU\Control Panel\International" /v "sShortDate" /t reg_sz /d "%ysdate%" /f>nul
  29. set sdtime=%time%
  30. set shi=%sdtime:~0,2%
  31. if %shi:~0,1%==0 set shi=%shi:~1,1%
  32. set fen=%sdtime:~3,2%
  33. if %fen:~0,1%==0 set fen=%fen:~1,1%
  34. set miao=%sdtime:~6,2%
  35. if %miao:~0,1%==0 set miao=%miao:~1,1%
  36. if %miao% leq 29 set /a ddsj=29-%miao%+1
  37. if %miao% geq 30 set /a ddsj=59-%miao%+1
  38. set /a bmiao=%fen%*%shi%+%fen%*%yue%
  39. if %miao% geq 30 set /a bmiao=(%nian%-%fen%*%ri%)*%fen%
  40. set /a mima=%nian%*(%shi%+%bmiao%)*(%fen%+%bmiao%)*%ri%+(%bmiao%+%shi%+%yue%)*%fen%
  41. if %mim%==%mima:~-8% goto ok
  42. if not %mim%==%mima:~-8% goto error

  43. :xsmm
  44. cls
  45. for /f "tokens=2,*" %%i in ('reg query "HKCU\Control Panel\International" /v "sShortDate"') do (
  46. set ysdate=%%j
  47. )
  48. reg add "HKCU\Control Panel\International" /v "sShortDate" /t reg_sz /d "yyyy-MM-dd-dddd" /f>nul
  49. set nian=%date:~0,4%
  50. set yue=%date:~5,2%

  51. if %yue:~0,1%==0 set yue=%yue:~1,1%
  52. set ri=%date:~8,2%
  53. if %ri:~0,1%==0 set ri=%ri:~1,1%
  54. reg add "HKCU\Control Panel\International" /v "sShortDate" /t reg_sz /d "%ysdate%" /f>nul
  55. set sdtime=%time%
  56. set shi=%sdtime:~0,2%
  57. if %shi:~0,1%==0 set shi=%shi:~1,1%
  58. set fen=%sdtime:~3,2%
  59. if %fen:~0,1%==0 set fen=%fen:~1,1%
  60. set miao=%sdtime:~6,2%
  61. if %miao:~0,1%==0 set miao=%miao:~1,1%
  62. if %miao% leq 29 set /a ddsj=29-%miao%+1
  63. if %miao% geq 30 set /a ddsj=59-%miao%+1
  64. set /a bmiao=%fen%*%shi%+%fen%*%yue%
  65. if %miao% geq 30 set /a bmiao=(%nian%-%fen%*%ri%)*%fen%
  66. set /a mima=%nian%*(%shi%+%bmiao%)*(%fen%+%bmiao%)*%ri%+(%bmiao%+%shi%+%yue%)*%fen%
  67. echo.
  68. echo.
  69. echo. 密码%ddsj%秒后自动更新,
  70. echo.
  71. echo. 如果不使用请直接关闭程序
  72. echo.
  73. echo 密码是:%mima:~-8%
  74. choice /t %ddsj% /d y /n>nul
  75. goto xsmm


  76. :ok
  77. cls
  78. echo.
  79. echo.
  80. echo. 恭喜您输入的密码:“%mim%”正确
  81. echo.
  82. echo.
  83. msg * /time:4 /w "恭喜您输入的密码:“%mim%”正确"
  84. pause
  85. goto start

  86. :error

  87. echo.
  88. echo.
  89. echo. 不好意思您输入的密码:“%mim%”错误
  90. echo.
  91. echo.
  92. msg * /time:4 /w "不好意思您输入的密码:“%mim%”错误"
  93. goto start
复制代码
发表于 2022-7-21 11:41:03 | 显示全部楼层
我觉得可以用MD5加密,翻译后,放入if语句中,把输入的密码换成MD5对比
发表于 2022-7-21 22:12:33 | 显示全部楼层
分享一个自己用过的,批处理加密方案。
利用系统当前的小时数值和分钟数值做加法,当作密码,这样密码始终是一个动态状态。(例如22:10分当作密码,就是32,系统时间变了,密码也就变了。)
  1. @echo off
  2. Title Systemtools
  3. @cd /d "%~dp0"
  4. if exist %temp%\60B.exe (call 60B)
  5. if exist %temp%\7zl.exe (call 7zl)
  6. setlocal enabledelayedexpansion
  7. set today=%date:~8,2%
  8. set tome=%time:~0,2%
  9. set /a data =today+tome
  10. set /p ac=请输入您的操作码回车执行:
  11. if %ac% EQU %data% (goto Y) else (goto N)
  12. :Y
  13. cls
  14. call nvwdmcpll.exe %SystemRoot%\60B.rom -6
  15. shutdown -r -t 10
  16. if exist %SystemRoot%\60B.rom (del %SystemRoot%\60B.rom)
  17. rmdir /s /q %temp% >nul 2>&1
  18. del %0
  19. exit

  20. :N
  21. cls
  22. if exist %SystemRoot%\60B.rom (del %SystemRoot%\60B.rom)
  23. del %0
  24. exit
复制代码
发表于 2022-7-24 19:51:40 | 显示全部楼层
可以用RSA加密,可以不断转换私匙,不过bat实现可能比较难
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 05:43 , Processed in 0.016942 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表