【本文內(nèi)容為本人原創(chuàng),轉(zhuǎn)載時(shí)請(qǐng)給出原始鏈接,謝謝!】
本文僅適用于B860A非高安版,不適用于高安版,也不適用于B860AV1.1或B860AV2.1,過程細(xì)節(jié)就不多說了,說一下思路:1 Android 的OTA刷機(jī)包帶有簽名,除非能獲得廠家的密鑰,否則第三方無法通過正規(guī)方法制作刷機(jī)包。簽名驗(yàn)證是在Recovery里面進(jìn)行了,可以從Recovery鏡像中提取出recovery進(jìn)行,通過IDA分析,直接修改匯編指令繞過簽名驗(yàn)證。2 中興機(jī)頂盒的Recovery鏡像在標(biāo)準(zhǔn)Android的基礎(chǔ)上增加了一個(gè)96字節(jié)的頭部,其中有些校驗(yàn)字段,校驗(yàn)算法未公開,第三方無法生成正確的校驗(yàn)字段。即便了簽名驗(yàn)證,也無法制作出可被機(jī)頂盒接受的Recovery鏡像。經(jīng)過實(shí)驗(yàn)發(fā)現(xiàn)這個(gè)校驗(yàn)過程僅在升級(jí)時(shí)進(jìn)行,也就是平時(shí)啟動(dòng)Recovery時(shí)是不做校驗(yàn)的。這就意味著可以直接將修改后的Recovery鏡像強(qiáng)制刷入機(jī)頂盒,后續(xù)即可正常使用。
好處: 簽名驗(yàn)證之后,可以自行制作Rom 刷機(jī)包,按android的格式創(chuàng)建好目錄后,用壓縮軟件打包成zip文件,即可用于刷機(jī)。
經(jīng)過一天折騰,按上述思路完成了修改,并制作了版的Boot Recovery和ota刷機(jī)包。用法如下:
1. 下載以下的附件,解壓后得到boot.bin recovery.bin和ota.zip三個(gè)文件,將其復(fù)制到機(jī)頂盒中,我是用ftp下載的,覺得麻煩的也可以用U盤或SD卡,
網(wǎng)盤鏈接已失效!
密碼:zhe5
2. 使用TTL連接B860A機(jī)頂盒,進(jìn)入存放有前述下載文件的目錄中,輸入以下命令: dd if=./boot.bin of=/dev/block/boot dd if=./recovery.bin of=/dev/block/recovery cp ./ota.zip /cache/recovery echo --update_package=/cache/recovery/ota.zip >/cache/recovery/command sync reboot 機(jī)頂盒將自動(dòng)重啟 3. 重啟過程中按住ctrl-z進(jìn)uboot,然后輸入safe進(jìn)入recovery模式 4. recovery啟動(dòng)后,將自動(dòng)使用ota.zip進(jìn)行升級(jí)。 提供的版本已經(jīng)做了修改,特性如下: A 內(nèi)置root B 預(yù)裝當(dāng)貝桌面,版本較老,啟動(dòng)后需要升級(jí) C telnet服務(wù)自動(dòng)啟動(dòng) D 去除ADB認(rèn)證,不需要在盒子上點(diǎn)確認(rèn),adbd服務(wù)未設(shè)為自啟動(dòng),可在ttl和telnet下輸入start adbd啟動(dòng),也可手動(dòng)編輯system\bin\init.zte.post_boot.sh,在末尾加上start adbd即可.
最后是套話,刷機(jī)有風(fēng)險(xiǎn),本人不對(duì)由此引起的任何直接或間接損失負(fù)責(zé)。
|