选择显示字体大小

access 2000数据库的密码忘了怎么办

access 2000 数据库中,为了安全起见,可以为所建的数据库设置密码。但是,密码忘了怎么办?别急,这里介绍一种密码破解方法。

    用磁盘编辑工具打开access 2000 所建的数据库,在库文件的地址00000042处开始的40个字节是access 2000库的密码位。如果一个未加密的库,这40个字节原始数据依次为:29 77 ec 37 f2 c8 9c fa 69 d2 28 e6 bc 3a 8a 60 fb 18 7b 36 5a fe df b1 d8 78 13 43 60 23 b1 33 9b ed 79 5b 3d 39 7c 2a 。当你给数据库设置了密码后,这40个字节就变成了密钥。因此,要破解密码而不需保持原库的密码,只要将00000042 处开始的40个字节还原成原始数据就行了。要做到这一点,你可用磁盘编辑工具或将以下所附的程序稍加修改,把以上所列40个数据填到00000042开始处。

    但是,有没有办法既能破解密码又能保持原密码呢?有。要做到这一点,必须搞清楚access 2000库的加密原理。事实上,access 2000库的加密原理很简单。当你设置了密码后,access 2000 就将你的密码(请注意你所输入的密码是ascii字符)的ascii码与以上的40个字节数据进行异或操作,因此,从库文件的地址00000042开始的40个字节就变成了密钥了。例如,如果你设置的密码为12345678901234567890(注意:最多只能设20个ascii字符),经过异或操作后,则从00000042处开始的40个字节的数据就变成了 18 77 de 37 c1 c8 a8 fa 5c d2 1e e6 8b 3a b2 60 c2 18 4b 36 6b fe ed b1 eb 78 27 43 55 23 87 33 ac ed 41 5b 04 39 4c 2a 。大家都知道,一个数据经过一次异或操作后,再一次经过同样的异或操作就可还原了。因此,对已经设置了密码的access 2000库,只要将40个密钥数据与原始的40个数据进行一次异或操作就可得到密码了。

  顺便提一下,由于access 2000对每个密码字符采用双字节表示,故40个字节原始数据可依次分为20组,每组代表一个密码字符,进行异或操作的是每组的第一个字节,第二个字节不变。


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons