找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 2639|回复: 2

关于把密码写入扇区进行保护及密码验证的代码。

[复制链接]
发表于 2007-6-4 11:00:40 | 显示全部楼层 |阅读模式
关于把密码写入扇区进行保护及密码验证的代码。
问题提出背景及讨论过程可参看本人这几天提的几个问题贴:
1,如何防止硬盘上特定文件被误删除
2,能否能用批处理实现编码的转换
3,如何确认哪些扇区是可写入的绝对安全扇区。

现在已基本达到预期目标,下面的代码算是一个总结,感谢各位的帮助和指教。

警告:由于使用此代码所造成的一切后果自负。
====================
@echo off
rem 密码写入到扇区。
rem .....................
rem 此前完成输入密码,并把密码转成MD5(32字符)。这里直接给出字符。过程省略。
set pwd=E10ADC3949BA59ABBE56E057F20F883E
:sector_1
cls
echo.
echo    是否需要把设置的密码保存到39扇区,以提高密码安全性?
echo.
echo    硬盘上的密码文件丢失后,将读取扇区里的密码,用来验证。
echo.
set sector=
Set /P sector=  是否需要 ?[y/是  n/否]:
If not %sector%#==y# Goto pwd_1
:sector_2
echo.
echo  --------------------------------------
echo  您选择了把密码保存到39扇区,请首先确认39扇区内的信息。
echo.
echo  若是首次选择写入扇区,应确保39扇区为空闲扇区,即显示信息全部为0。
echo  若不全为0,请不要选择写入。
echo.
echo  曾经进行过写入操作后,该扇区显示的将是上次写入的内容。
echo.
echo  按任意键,查看39扇区信息。
pause>nul
tools\diskrw.exe 0 39 1 /l /p
echo.
echo  --------------------------------------
echo.
echo   请确认是否写入39扇区:
echo.
echo    选择“是”后,将会出现最后的改写提示。
echo    "Disk Sector Will be Modified, Continue ? (Y/N)"
echo    输入“Y”将进行写入操作,放弃请选“N”。
echo.
echo  --------------------------------------
set sector_2=
Set /P sector_2=  是否写入39扇区?[y/是  n/否]:
If not %sector_2%#==y# Goto pwd_1
:sector_3
echo %pwd%..............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................>%temp%\039.bin
tools\diskrw.exe 0 39 1 /r %temp%\039.bin  
del %temp%\039.bin  >nul

:pwd_1
cls
Echo.
Echo.
Echo  密码设置完成,请牢记您的密码,下次运行时生效。
PING/n 3 127.1>NUL
goto exit
==============================
@echo off
rem 验证密码。
tools\diskrw.exe 0 39 1 /s %temp%\039.ini >nul
cls
for,/f,"tokens=1 delims=.",%%i,In (%temp%\039.ini) Do (
                 set pwd_s=%%i
)
del %temp%\039.ini >nul
rem 输入验证密码,并把密码转成MD5(32字符)。过程省略。
if %pwd_s%#=%pwd%#  goto ok
goto exit

diskrw.rar

12.53 KB, 下载次数: 68, 下载积分: 无忧币 -2

发表于 2007-6-4 14:25:36 | 显示全部楼层
:) 学习一下结论哈 呵呵
回复

使用道具 举报

发表于 2007-6-4 18:48:39 | 显示全部楼层
偷偷的看上一眼  有用就收下;P ;P
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1|闽公网安备35020302032614号 )

GMT+8, 2026-4-10 04:18

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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