华为DATALOCK(刷机码)的相关资料



什么是datalock

DATALOCK是华为MBB系列产品(主要是移动路由器)的一个数据锁,俗称“刷机码”,这就像手机的Bootloader锁,只有解开才能刷入其他国家的版本,以及修改相应的NV数据。

下面是一段华为官方关于datalock的说明:

 数据锁的目的是保护华为一些关键信息,作为其它命令成功执行的一个必要入口。
 在没有特殊说明的怕况下,没有解除数据锁时,无法修改关键信息,但允许查询这些信息
 (如查询功能也受数据锁保护,在相应接口进行特殊说明)。
 
 比如W卡五万号之后NV,在写之前需要进行解锁。若产品不支持数据锁功能,但接口一定要实现,
 设置指令需要返回OK,查询指令需要返回状态为0。命令单次有效,单板重启后需要再次解锁。
 单板里没有正式物理号时,数据锁处于开锁状态,受DATALOCK保护的命令可以正常设置和查询,
 如果单板有默认物理号,数据锁也处于开锁状态。当单板有正式物理号后,数据锁自动处于加锁状态
 (首次写入正式物理号后,数据锁加锁功能需要重启单板后生效),改写关键信息时需要先解锁后才可以操作,
 否则无法改写。当数据锁处于加锁状态时,连续输入二次错误密码,需要掉电重启单板(命令本身不触发重启操作)
 后才可以识别该命令,否则该命令返回为ERROR。
 
 

也就是说,很多人想改IMEI号,进行调试以及刷其他国家的固件都需要这个码。



datalock码的类型

Simlock版本查询方法:

用SSCOM串口精灵/终端/putty等发送at命令

 at^authver?

 返回值为2,则为simlock2.0;也就是我们常说的V2码。
 返回值为3,则为simlock2.1;也就是我们常说的V3(2.1)码。
 返回值为4,则为simlock3.0;也就是我们常说的V4码。
 返回值为5,则为simlock4.0;也就是我们常说的V5码。
 

DATALOCK码的组成:

 simlock2.x的datalock=simlock,8位数字组成,可由IMEI计算或查看数据文件的sim_lock字段;

 Simlock3.0的datalock=ini_password后8位,数字组成,只能通过查看数据文件ini_password字段;

 Simlock4.0的datalock=ini_password后16位,数字和字母组成,只能通过查看数据文件ini_password字段;

也就是说V2/V3/V4码都是8位数字的码。而V5则是16位数字和字母的组合。

以上是官方,加上民间的一些关于DATALOCK码的说法。



datalock的命令操作

AT命令

取值说明:

 <unlock_code>    解锁码,用于解除数据写保护,采用数字和英文字母组成,区分大小写。

 <status>         数据保护解锁状态

 0      表示解锁状态,可以操作保护数据

 l      表示锁状态为非解除状态,无法操作保护数据

解锁datalock

也就是说,你在终端输入

 AT^DATALOCK=你的8/16位datalock码
 
例如:
 AT^DATALOCK=4ngNatFE9QyQG9mJ

返回的是OK的,那你输入的就是正确的datalock码,ERROR就是错误datalock码。

查询datalock锁状态
在终端输入

 AT^DATALOCK?     
 

返回的是0,那你的是在解锁状态,可以输入一些AT命令,比较多的是修改IMEI/SN/WIFI KEY之类的。

例如:

 AT^PHYNUM=IMEI,你的imei
 AT^SN=你的sn码
 AT^PHYNUM=MACWLAN,你的mac
 AT^SSID=0,"你要改的wifi名称"
 AT^WIKEY=0,"你要改的wifi密码"

返回的是1,那你的是在加锁状态,需要输入datalock码才可以改数据以及刷入别的版本。

重设datalock码

 AT^SetHwLock="OEM",你要设置的8/16位新的datalock
 
 例如:
 AT^SetHwLock="OEM",4ngNatFE9QyQG9mJ


datalock的获取

官方方法(不知道有没有用,这是一份旧文件找到的说明):

 1)从产线Operation Center系统获取。

 2)请产线抽检前将单板的IMEI反馈给konguoxiang(outlook邮箱:kongguoxiang@huawei.com),申请datalock密码。

民间方法:

 1)v2/v3直接通过计算器计算出来。

 2)v4需要通过AT^NVRDEX=50502,0,128  复制相应的值,再通过计算器计算出来。

 3)v5 暂时无解。

v2/v3/v4的计算器在网上有,自己可以搜索一下。

目前找华为客服,客服一般会装作不知道或者否认有这个码,工程师也不会帮你算这个码。



datalock的强制破解

旧方法。

 1)用balong_usbloader.exe加载usbloader.bin这个文件,再刷机。

 2)用E3256sBootRomDownloadTool.exe(华为称它为小黄人DT工具)加载usbloader.bin和固件。清掉物理号。
 

小黄人工具

旧机器可以使用这两个方法,支持清除物理号,让机器处于解锁状态。

 清除完后,datalock码默认变成8个0或者16个0,大部分AT命令也可以执行了!!

上述方法在新机器(新界面WEBUI)已经不行了,没有新的usbloader加载工具会让机器变砖。

此外:usblsafe是usbloader的修改版,不支持清除物理号,不支持解锁。

目前暂无新方法

因为新的设备,不支持usbloader的加载启动,以下是官方原话:

 由于海思提供的小黄人DT工具不支持安全签名校验,无法实现安全升级。基于安全考虑,后续DT升级一律采用产线DBC工具。
 
 产线的DBC工具(即悍马iTestRunner)来实现DT加载操作。
 

所以要有新的usbloader加载工具,才可能清除以及刷机。

评论