TC 的手机按照不同区域,内置不同的CID,在刷入Recovery和官方RUU升级包的时候难验证CID是否合法,而制作金卡能绕过CID验证。
金卡是一种写入了销售区域标识(用htc的密钥和cid加密)的microSD卡
cid 有两个意思
一个是 SD Card Serial,是 sd卡的密钥。 Sd卡会有,实际上手机内置存储也有,所以带有 sd卡的手机能找到两个 cid。
另一个就是 CountryID,国家 ID,或区域 ID
本文默认 cid是指 SD CardSerial
个人猜测:
Htc把区域 id用 cid加密后写入手机内置存储空间中,我们制作金卡能成功可能是手机内置存储或 sd卡只要有一个信息正确就能通过区域验证,而这个区域 id可能也是通用的,任何区域都能通过。这个区域 id是经过 htc的密钥和 cid双重加密的,所以我们仍然无法自己写入区域 id,而一个逆向工程小组( http://psas.revskills.de/)破解了 htc的密钥(怎么破解的就不知道了),再加上 cid就能写入自己的区域 id了,也就是制作金卡。
1, 获取 sd卡的 cid
下载安装 http://revskills.de/downloads/revskills.zip,该软件可以读取 cid,生成区域 id的密文,但是无注册版只能读取 cid。
打开手机的调试模式(设置 ->应用程序 ->开发 ->USB调试),用 usb线把手机连到电脑上,打开 revskills,选择 Menu->HardwareForensics->Android->ADB Shell Console
在 Get CID按钮右边的下拉框中选择 sd卡(包括手机内置存储)的序号,然后点击 Get CID在下面就会显卡对应的 cid了,我的 sd卡序号是 2,内置存储是 0,要确定哪个是 sd卡,可以把 sd卡拔出,消失的那个就是了。
把 cid复制出来,不要复制空格
2, 生成区域 id的签名
用 revskills也可以,不过需要付费,不过有一个在线的免费方法
打开 http://hexrev.soaa.me/,提交从 revskills中得到的 CID进行转换
打开 http://psas.revskills.de/?q=goldcard,输入你的 email地址和上面转换后的 cid,然后点击 GenerateGoldcard,过一会儿会把 goldcard.img发到你邮箱里,这就是包含签名的文件。
3, 向 sd卡中写入 goldcard.img
在 http://mh-nexus.de/en/downloads.php?product=HxD,下载安装 HxD,或者用其它的十六进制编辑器如 winhex.
用手机以磁盘模式连接电脑或用读卡器把 sd卡插入电脑。
用 HxD打开 goldcard.img, Ctl+A再 Ctl+C,全选复制,然后选择附加 ->打开磁盘 ,选择你的 sd卡(选择的是硬件不是分区,不要选错了),把“以只读模式打开”前的勾去掉,弹出警告窗口时点确定。
用鼠标选择偏移 0h到 170h的行
然选择编辑 ->覆盖式粘贴,或 Ctl+B
然后保存
你的 sd卡就是金卡了
附 Get CID界面和 revskills生成 goldcard.img的界面