再谈CMOS密码

2016-02-19 15:04 13 1 收藏

下面请跟着图老师小编一起来了解下再谈CMOS密码,精心挑选的内容希望大家喜欢,不要忘记点个赞哦!

【 tulaoshi.com - 编程语言 】

  对于CMOS而言,相信大家已经不再陌生。但就CMOS密码而言,我想真正了解的人就不太多了,所以我们就做了些实验,研究了一下。以前已经有不少人讨论过了,但我觉得还是有再谈的必要,下面就把其中合适的部分拿出来,以飨各位。

  在谈密码之前,还是先说说什么是CMOS(本文所言CMOS均针对Award而言)。CMOS实际上存放的是计算机的系统时钟和硬件配置方面的一些信息,供系统引导时读取;同时初始化计算机各个部件的状态,总共有128个字节,存放在RAM芯片中。

  好了,先看一个例子,用来向大家说明一下CMOS的一些结构,下面这128个字节就是我的CMOS的内容:

  00000000H 30 00 FF 00 39 00 FF 00 12 00 FF 00 01 00 18 00

  秒 秒报警 分 分报警 小时 时报警 星期 日

  00000010H 11 00 98 00 26 00 02 00 70 00 80 00 00 00 00 00

  月 年 寄存器A 寄存器B 寄存器C 寄存器D 诊断 下电

  00000020H 40 00 7E 00 F0 00 03 00 0F 00 80 00 02 00 00 00

  软驱 密码域 硬盘 未知 设备 基本内存 扩充

  00000030H 7C 00 2E 00 00 00 7F 00 15 00 86 00 00 00 00 00

  内存 硬盘类型 未知 密码数据位 未知

  00000040H 00 00 00 00 00 00 00 00 00 00 00 00 E2 00 22 00

  未知

  00000050H 0F 00 FF 00 FF 00 E1 00 22 00 3F 00 08 00 59 00

  未知

  00000060H 00 00 7C 00 19 00 80 00 FF 00 FF 00 FF 00 FF 00

  未知 世纪值 未知

  00000070H 7D 00 81 00 AA 00 0F 00 39 00 9B 00 E8 00 19 00

  未知

  上述的内容参考了其他资料,所以不一定完全正确,不过38H-3AH的密码数据倒可以肯定,所以接下来就切入正题,谈一谈CMOS的密码,由于我能找到的均为Award的BIOS,所以以下的结论均针对Award的CMOS,并且在以下的主板及相应的BIOS上验证通过。(本文一下数值均为16进制)

  主板名及型号 BIOS版本 BIOS日期

  Aopen(建基)AP58 R1.50c 1998-07-13

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  Aopen(建基)AX5T R1.80 1998-07-30

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  EPoX(磐英)MVP3E 未知 1998-08-03

  EPoX(磐英)P2-112A 未知 1998-09-16

  FIC(大众)PA-2007 v1.0A 1997-06-25

  在38H-3BH这四个字节中,由于39H和3BH这两个字节一直为00H,所以就略过,那么CMOS密码的关键就集中到了38H和3AH这两个字节上。先介绍一点Award的密码规则,Award允许一位至八位密码,每一个字符的范围由20H-7FH,也就是由空格到ASCII码的127号。想必大家已经发现了,八个字符要放到两个字节中去,好象不压缩一下是不行的。的确,Award是将其压缩了,但是不是普通的压缩方法,我想Award另有将其加密的想法,因为在CMOS中空位还很多,要想放八个字节看来是没有什么问题的,不过这么裸露的密码就更加没有什么用处了。通常的压缩方式有无损压缩,如zip,arj等,或者是有损压缩,象mpeg,jpeg等。但是对这么几个字节,这些方法就没有什么用武之地了,而且压缩过的东西,应该是可以还原的,否则压来压去就没有什么意义了。不过Award的方法就不同了,他不仅仅进行了超级的有损压缩,而且这种压缩是不可还原的,下面就给出他的加密压缩方法(以下数值,运算均基于16进制):

  假如有一密码,八位,记为:ABCDEFGH(每一位的取值范围为20H-7FH),将其按下列公式运算:H+4*G+10*F+40*E+100*D+400*C+1000*B+4000*A ,将结果按由低到高保存到:H1,H2,H3,字节中,然后将H2保存到地址:3AH中,将H1和H3的和保存到38H中。如果密码不足八位,以此类推。下面举一实例:

  我的密码为:r*vte,ASCII码为:72H、2AH、76H、74H、65H,按公式运算得:72*100+2A*40+76*10+74*4+65=8615,于是H1=00H,H2=86H,H3=15H,所以3AH的值为86H,38H的值为15H。

  看来密码就这么简单,在你每次输入密码的时候,BIOS将其算算,再与CMOS中的值比较一下,如果一样就放行,否则免谈。过程就是这样,不过还是有些问题要说明,先算算看,两个字节可以表达的密码可以有多少种:164=65536种,而八位密码,每一位有96种选择,则可以表示的密码有:968≈7.2×1015 种,所以理论上说,每一个密码,都可以找出大约1011这么多个可以起相同作用的密码。但是事实上并不是大家都是八位的密码,或许没有大得这么吓人,不过也挺多的,就如我那个密码,光与他相同功能的五位密码就有二十五万多个,而六位,七位,八位的更多,数量不详,因为从来没有把他算完过,时间太长了,耗不起。所以我随便把我们研究用的那个小程序附上了,可以搜索Award的CMOS密码,大家也可算算看。

  CMOS的密码谈的也差不多了,也该停笔了。不过为了减少大家的疑问,再多谈几句。现在的BIOS都比较先进了,在CMOS的设置中,大多有User和SuperVisor密码的设置,我这里讨论的地址为User的,至于SuperVisor的,自各儿研究吧,因为密码这个东西,说得太明,大家都没趣了,对不。好了,就此打住。

来源:https://www.tulaoshi.com/n/20160219/1608776.html

延伸阅读
标签: 电脑入门
在BIOS里修改了硬盘的参数设置,保存后重新启动,在系统自检时,扬声器发出报警声,启动失败。关闭电脑,将主板上面的跳线短接后清除CMOS,再将跳线设置为默 认状态后开机,电源指示灯不亮,CPU风扇不转,电脑无法启动 估计是在关闭电脑及插座的开关以后,电脑电源插头因插座质量的问题,仍处于带电状态,导致清除CMOS不成功。在拔下了电...
[标签:内容22 孕妇须知:再谈孕期营养 孕早期会因为孕吐等,造成食欲不振,这没有关系,这时胚胎很小,需要营养不多。尽量躲避不愿吃的东西,愿意吃的也不要使劲吃,什么都适可而止,吃到不难受就行了。吃完后要活动活动,聊聊天,听听音乐,转移注意力,一般就不会吐了。即使吐也没什么关系,总是会吃得多吐得少。有人说...
巧用DOS命令清除电脑公司win7系统中的CMOS密码的方法   具体步骤如下: 1、在DOS中有为大家提供了一个编辑器,就是DEBUG,这是一个非常实用的工具,具体启动方法是:在DOS命令提示符状态下输入命令:DEBUG,然后回车,此时即可进入DEBUG编辑界面。 2、在命令符状态下输入下面的命令之后,重新启动电脑即可清除CMOS密码,...
数码相机基础术语-CCD CMOS是什么 什么是CCD 电荷藕合器件图像传感器CCD(Charge Coupled Device),它使用一种高感光度的半导体材料制成,能把光线转变成电荷,通过模数转换器芯片转换成数字信号,数字信号经过压缩以后由相机内部的闪速存储器或内置硬盘卡保存,因而可以轻而易举地把数据传输给计算机,并借助于计算机的处理手段...
标签: Web开发
我在Ajax中国上曾经对比过国内门户网站对Flash激活限制的处理。除了qq.com,各大门户网站上的flash都已经解决了激活限制的问题。淘宝的页面上也常常会使用到Flash,激活限制导致用户的交互性体验感受不够友善。 我们一直想解决此问题。但是国内门户网站的做法都略为麻烦,要么需要为每个flash编写额外的js,要么就是在页面上放置flash的位置打...

经验教程

708

收藏

69
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部