rk3399和6618,rk3399_secureboot在linux環境中操作說明

 2023-12-25 阅读 28 评论 0

摘要:1、在SDK代碼創建文件夾,放置相關Secureboot工具: mkdir device/rockchip/rk3399/secureboot //創建目錄, 2、使用SecureBootConsole 工具簽名前,請先指定好type.xml中的芯片類型,例如3288,3399: 例如vim type.xml打開type.xml文件

1、在SDK代碼創建文件夾,放置相關Secureboot工具:
mkdir device/rockchip/rk3399/secureboot //創建目錄,

2、使用SecureBootConsole 工具簽名前,請先指定好type.xml中的芯片類型,例如3288,3399:
例如vim type.xml打開type.xml文件進行設置為3399,
3399

/***************************************************/
3、生成公私鑰 (如輸入參數增加-p,則會輸出功能步驟中打印的log信息)
/***************************************************/
執行命令: SecureBootConsole -k|-kk SaveKeyDir //generate key -k(1024) -kk(2048),1024和2048是key的類型
例如以下操作: //在當前目錄生成key文件
SecureBootConsole -k ./ 或者: SecureBootConsole -kk ./ //我這里rk3399使用SecureBootConsole -kk ./命令

/***************************************************/
4、簽名分立固件【secure boot固件要求:固件要求boot.img和 recovery.img都需要包含 kernel.img,
即SDK自動編譯腳本build.sh需要添加語句:./mkimage.sh ota,加在make otapackage -j4之后】
/***************************************************/
給分立固件簽名:trust.img uboot.img recovery.img boot.img //注意:不用單獨給kernel以及resource去簽名
執行命令:SecureBootConsole -si privatekey _path image_path

5、簽名loader
5.1 //Sign Loader soft 1024
czd@ubt144c:/work/czd/rk3399_7.1_ind/Secureboot_rk3399/SecureBootConsole_v1.90$ SecureBootConsole -p -sl publicKey.bin ./Image-rk3399_all/MiniLoaderAll.bin
INFO:Start to sign Loader(MiniLoaderAll.bin).
INFO:Sign loader succeed.

rk3399和6618?/***************************************************/
6、簽完loader和分立固件后對固件進行打包(update.img)
/***************************************************/
./mkupdate.sh //執行linux打包工具Linux_Pack_Firmware/rockdev中的mkupdate.sh腳本,把上面已經簽名的loader和分立固件打包成update.img文件

/***************************************************/
7、Make efuse ota update.zip //即編譯ota 簽名的固件包
/***************************************************/
7.1確保build/tools/目錄有drmsigntool簽名工具,如果沒有,需要添加;

7.2把上面生成的key(公私密鑰)拷貝到build/target/product/security/目錄。

7.3執行正常的ota打包即可。

以上的4, 5,6步驟可以直接添加到一個shell腳本文件中實現。

----------------------rk3399 command------------------------

rk3399性能,SecureBootConsole -kk SaveKeyDir //生成密鑰

sudo ./SecureBootConsole -slx privateKey.bin publicKey.bin Image/MiniLoaderAll.bin //簽名 loader

sudo ./SecureBootConsole -si privateKey.bin Image/recovery.img //簽名recovery.img
sudo ./SecureBootConsole -si privateKey.bin Image/boot.img //簽名boot.img
sudo ./SecureBootConsole -si privateKey.bin Image/trust.img //簽名trust.img
sudo ./SecureBootConsole -si privateKey.bin Image/uboot.img //簽名uboot.img

./mkupdate.sh //打包簽名的loader和分立固件成update.img,在Linux_Pack_Firmware/rockdev中執行mkupdate.sh腳本

sudo ./SecureBootConsole -sh privateKey.bin update.img //固件打包好后,簽固件的md5值

----------------------rk3399 command------------------------

booti命令?注意問題點:
1、SecureBootConsole生成key時,參數使用-k(1024),然后就可以使用以下語句簽名loader:
//Sign Loader soft 1024
SecureBootConsole -sl publickey_path loader_path

如果是-kk(2048)則需要使用下面的語句簽名loader,否則會簽名失敗:
//SignEx Loader (efuse 2048)
SecureBootConsole -slx privatekey_path publickey _pathl oader_path

2、key的放置目錄

參考文檔:
RK3399_Efuse_Operation_Instructions_V1.00_20190214.pdf
SecureBootConsole 說明文檔.docx

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/5/194842.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息