91视频免费?看_蜜芽MY188精品TV在线观看_国产免费无遮挡在线观看视频_深夜国产_亚洲精品欧洲精品_欧美黑人粗暴多交

MCUBootUtility v2.0來襲,i.MXRT1010哪里跑

恩智浦半導體從2017年10月開始正式推出業內首款跨界處理器—i.MX RT系列,如今距離該系列第一款i.MXRT1050發布已過去近2年,i.MX RT系列在行業里應用越來越廣泛,i.MX RT系列家族成員也越來越壯大。為了進一步滿足不同行業的需求,恩智浦近期推出了i.MX RT系列又一款新品,主打極致性價比,LQFP80小巧封裝,主頻高達500MHz,售價卻不到1美金,它究竟是何方神圣?不用猜啦,它就是i.MXRT1010。為了配合i.MXRT1010的閃亮登場,痞子衡特地將一站式啟動工具NXP-MCUBootUtility升級到了v2.0,增加了對i.MXRT1010的全面支持。今天痞子衡就跟大家聊一聊NXP-MCUBootUtility v2.0對i.MXRT1010的支持。

一、i.MXRT1010

  本文是雙男主陣容,在介紹另一個男主角MCUBootUtility v2.0出場之前,痞子衡先來揭曉第一男主角i.MXRT1010的真容,側重介紹其跟MCUBootUtility工具息息相關的啟動方面的特點。

  上圖是i.MXRT1010內部模塊框圖,痞子衡將結合這個框圖對i.MXRT1010啟動方面特點進行簡單剖析:  首先來看Internal Memory部分,i.MXRT1010內部RAM一共128KB,這對于一般單片機應用程序來說已然夠用。其內部ROM是64KB(請注意這個ROM不是給用戶放代碼的,而是用于固化i.MXRT出廠啟動代碼的),如果你對i.MXRT1010的老大哥i.MXRT1050熟悉的話,你應該知道i.MXRT1050的ROM是128KB,那i.MXRT1010的ROM為啥小了呢?下一段就會給你答案。  繼續來看External Memory部分,我們知道老大哥i.MXRT1050支持的啟動設備類型比較豐富(Serial NOR/NAND,Parallel NOR/NAND,SD/eMMC,1-bit SPI NOR/EEPROM,SDRAM),而i.MXRT1010則非常單純,它就只支持Serial NOR這一種啟動設備,因此ROM的代碼被精簡了。  最后看Security部分,老大哥i.MXRT1050支持軟件(HAB)和硬件(BEE)兩種安全加密啟動方式,在這點上小兄弟i.MXRT1010一點也不含糊,甚至有點青出于藍而勝于藍,i.MXRT1010也同時支持軟硬件安全加密啟動,雖然軟件加密方面僅保留了驗簽功能,但是硬件加密模塊卻由BEE升級為了OTFAD,加密選項更豐富,在線解密效率也更高。

二、MCUBootUtility v2.0

  是時候揭曉第二男主角MCUBootUtility v2.0的真容了,下圖是v2.0版本主界面,延續了v1.x版本系列的高顏值,并且功能更加全面,它對于i.MXRT1010的支持可不僅僅是簡單地生成unsigned bootable image下載進FlexSPI NOR Flash,而是全方位無死角地支持i.MXRT1010的安全加密啟動,尤其是OTFAD硬件加密啟動。

  在i.MXRT1050芯片上使用過MCUBootUtility v1.x的朋友都知道,痞子衡將i.MX RT安全啟動等級分為5級,分別如下:

第一級:不啟用任何安全措施

第二級:啟用HAB簽名認證

第三級:啟用HAB簽名認證與HAB加密

第四級:啟用單引擎BEE加密(唯一SNVS Key)

第五級:啟用雙引擎BEE加密(用戶自定義Key)

  從MCUBootUtility v2.0引入i.MXRT1010的支持后,i.MX RT安全啟動等級又增加2級,分別如下:

第六級:啟用單重OTFAD加密(唯一SNVS Key)

第七級:啟用雙重OTFAD加密(用戶自定義Key)

  第六級是頂級的安全模式,即用唯一SNVS Key對image進行單重OTFAD級加密,該級別與單引擎BEE加密(唯一SNVS Key)是類似的,只是早期i.MX RT芯片(比如i.MXRT105x)的FlexSPI配套硬件加解密模塊是BEE,而后期i.MX RT芯片(比如i.MXRT1011)的FlexSPI配套硬件加解密模塊升級為OTFAD。相比于BEE模塊,OTFAD模塊在加解密效率上提升了很多,并且提供了更加強大的加解密模式。關于OTFAD強大的加解密模式在雙重OTFAD加密模式中會進一步介紹。  第七級是頂級的安全模式,即用用戶自定義Key對image進行雙重OTFAD級加密,前面講了OTFAD是BEE的升級,那么我們就來比較一下雙重OTFAD加密與雙引擎BEE加密區別:

雙引擎BEE加密最多可設3個加密區間,這3個加密區間最多僅能由2組用戶密鑰來保護;而雙重OTFAD加密最多可設4個加密區間,每個加密區間均可設獨立的用戶密鑰,并且所有的用戶密鑰還由一個全局密鑰來保護。

雙引擎BEE加密的用戶密鑰是直接存在efuse里的;而雙重OTFAD加密存在efuse里的全局密鑰可引入擾亂算法來保護。

  從軟件操作流程上來說,雙重OTFAD加密與雙引擎BEE加密是類似的,只是密鑰配置窗口有差別,我們打開OTFAD的密鑰配置窗口看一下:

  kek即全局密鑰,kek是存放在efuse里的;用戶密鑰個數與保護區間一致,所有用戶密鑰均在OTFAD DEK KeyBlob,KeyBlob是存放在外部NOR Flash里的,kek就是用來保護OTFAD DEK KeyBlob的。  至此NXP-MCUBootUtility v2.0對i.MXRT1010的支持,痞子衡就介紹完了。

  那么這么好用的工具去哪里下載?其實MCUBootUtility是一個基于Python的開源項目,其項目地址為 https://github.com/JayHeng/NXP-MCUBootUtility, 核心代碼約15000多行,雖然當前版本(v2.0.0)功能已經非常完備,你還是可以在此基礎上再添加自己想要的功能。如此神器,還不快快去下載試用?

聲明:本內容為作者獨立觀點,不代表電子星球立場。未經允許不得轉載。授權事宜與稿件投訴,請聯系:editor@netbroad.com
覺得內容不錯的朋友,別忘了一鍵三連哦!
贊 2
收藏 2
關注 41
成為作者 賺取收益
全部留言
0/200
成為第一個和作者交流的人吧
主站蜘蛛池模板: 江津市| 兴隆县| 海门市| 汝南县| 杭锦旗| 崇文区| 阜宁县| 阿克| 台中县| 祁东县| 蕉岭县| 泗阳县| 聊城市| 轮台县| 马边| 广南县| 祁阳县| 宣城市| 铁岭县| 贵定县| 德安县| 晋城| 安西县| 什邡市| 广宗县| 九江市| 永顺县| 白朗县| 灵台县| 绥化市| 七台河市| 洱源县| 仁化县| 天长市| 方山县| 宁乡县| 阿克苏市| 清河县| 闸北区| 清河县| 建德市|