0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

新技能GET!把你的程序密文存儲(chǔ)在芯片內(nèi)!

UtFs_Zlgmcu7890 ? 來(lái)源:楊湘祁 ? 作者:電子發(fā)燒友 ? 2019-03-08 14:27 ? 次閱讀

一般來(lái)說(shuō),存儲(chǔ)在MCU的程序二進(jìn)制代碼是非經(jīng)加密的,如果讀出來(lái)經(jīng)反匯編,是可以閱讀的。如果有一個(gè)MCU能將片內(nèi)存儲(chǔ)的二進(jìn)制程序代碼或數(shù)據(jù)以密文存儲(chǔ),邊解密邊運(yùn)行,外部不可見,您是不是很驚喜?

PRINCE是什么?

PRINCE看做是Flash控制器上面的加密引擎,一旦使能,PRINCE就會(huì)過(guò)濾Flash讀寫路徑的數(shù)據(jù),并進(jìn)行實(shí)時(shí)加解密。

LPC55S69內(nèi)部含有640KB Flash空間,PRINCE將其分成3個(gè)部分,分別是256KB、256KB、128KB。每個(gè)部分加密用的鑰匙是單獨(dú)提供,這可以保證即使一個(gè)部分的鑰匙被破解了,其他部分依舊安全。

在每個(gè)部分里面,PRINCE 又繼續(xù)細(xì)分成更小的空間,每個(gè)空間僅僅8KB大小。這樣可以讓客戶使用起來(lái)更靈活,可以讓第n個(gè)8KB空間加密,而第n+1個(gè)8KB空間不加密,靈活控制加密區(qū)域。

PRINCE的加密算法和秘鑰

PRINCE既然是一個(gè)數(shù)據(jù)加密引擎,那么它就有加密算法和秘鑰。

PRINCE采用一種對(duì)稱加密算法,加密塊是64位,秘鑰是128位。采用CTR模式,需要初始化向量和秘鑰。

與另一個(gè)對(duì)稱加密AES加密對(duì)比,PRINCE最大的優(yōu)勢(shì)是延時(shí)極小,不需要額外的RAM空間。不用將數(shù)據(jù)搬到RAM中加密或者解密完再搬回來(lái)。這將給用戶帶來(lái)很大的方便性。

值得關(guān)注的是,PRINCE的秘鑰是通過(guò)片內(nèi)的PUF模塊來(lái)產(chǎn)生的。秘鑰直接通過(guò)硬件總線傳輸,軟件無(wú)法訪問(wèn)。掉電之后秘鑰自動(dòng)消失,使用時(shí)再操作PUF產(chǎn)生。這種方式下,攻擊者很難找到秘鑰,更難解密Flash中的密文,從而讓數(shù)據(jù)更加安全。

PRINCE啟動(dòng)的四個(gè)步驟

啟用PRINCE功能大致有四個(gè)步驟:

設(shè)置PRINCE加解密的大區(qū)域和子區(qū)域;

初始化PUF,讓PUF產(chǎn)生秘鑰和初始化向量給到PRINCE;

使能PRINCE;

編程或者讀寫Flash。

PRINCE對(duì)程序區(qū)加密的示例。將一個(gè)NXP Logo的圖片數(shù)據(jù)放入程序區(qū),在顯示屏上顯示數(shù)據(jù)和圖片如下:

加密之后的數(shù)據(jù)和圖片,就是一堆亂碼了,如下所示:

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 芯片
    +關(guān)注

    關(guān)注

    453

    文章

    50251

    瀏覽量

    421112
  • 程序
    +關(guān)注

    關(guān)注

    116

    文章

    3766

    瀏覽量

    80766

原文標(biāo)題:新技能!把你的程序密文存儲(chǔ)在芯片內(nèi)!

文章出處:【微信號(hào):Zlgmcu7890,微信公眾號(hào):周立功單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    淺談電氣火災(zāi)監(jiān)控系統(tǒng)場(chǎng)所建筑中的研究應(yīng)用

    【摘要】 勞場(chǎng)所的安全問(wèn)題一直是消防保障工作中的關(guān)鍵所在,人流量較大、可燃物多、用電量大的情況下,很容易產(chǎn)生安全隱患,對(duì)人員安全造成影響。電氣火災(zāi)是社會(huì)生產(chǎn)生活中容易出現(xiàn)的火災(zāi)類型,
    的頭像 發(fā)表于 10-16 15:19 ?166次閱讀
    淺談電氣火災(zāi)監(jiān)控系統(tǒng)<b class='flag-5'>在</b>勞<b class='flag-5'>密</b>場(chǎng)所建筑中的研究應(yīng)用

    存儲(chǔ)芯片有哪些類型

    存儲(chǔ)芯片,又稱為半導(dǎo)體存儲(chǔ)器,是以半導(dǎo)體電路作為存儲(chǔ)媒介的存儲(chǔ)器,廣泛應(yīng)用于計(jì)算機(jī)、消費(fèi)電子、智能終端、固態(tài)存儲(chǔ)硬盤等領(lǐng)域。按照不同的分類標(biāo)
    的頭像 發(fā)表于 07-24 16:40 ?1744次閱讀

    鴻蒙數(shù)據(jù)防泄漏 DLP Data Loss Prevention Kit簡(jiǎn)介

    對(duì)機(jī)密文件進(jìn)行權(quán)限配置,允許擁有只讀、編輯、擁有者權(quán)限,隨后機(jī)密文件會(huì)通過(guò)文存儲(chǔ)支持DLP機(jī)制的設(shè)備上可以通過(guò)端云協(xié)調(diào)進(jìn)行認(rèn)證授權(quán),獲取對(duì)數(shù)據(jù)的訪問(wèn)和修改的能力。
    的頭像 發(fā)表于 07-03 20:33 ?368次閱讀
    鴻蒙數(shù)據(jù)防泄漏 DLP Data Loss Prevention Kit簡(jiǎn)介

    定時(shí)器內(nèi)使用浮點(diǎn)運(yùn)算的PID控制算法,程序就會(huì)重啟,為什么?

    定時(shí)器內(nèi)使用浮點(diǎn)運(yùn)算的PID控制算法,程序就會(huì)重啟,浮點(diǎn)數(shù)換為整形數(shù)據(jù)就不會(huì)。
    發(fā)表于 06-05 07:24

    內(nèi)計(jì)算芯片的基石-存儲(chǔ)介質(zhì)匯總

    作為新的計(jì)算架構(gòu),存內(nèi)計(jì)算(Computing In Memory,CIM)被認(rèn)為是具有潛力的革命性技術(shù)。重點(diǎn)是將存儲(chǔ)與計(jì)算融合,有效克服馮·諾依曼架構(gòu)瓶頸,并結(jié)合后摩爾時(shí)代先進(jìn)封裝、新型存儲(chǔ)器件等
    的頭像 發(fā)表于 05-16 15:41 ?1663次閱讀
    存<b class='flag-5'>內(nèi)</b>計(jì)算<b class='flag-5'>芯片</b>的基石-<b class='flag-5'>存儲(chǔ)</b>介質(zhì)匯總

    內(nèi)計(jì)算芯片研究進(jìn)展及應(yīng)用

    NOR Flash存內(nèi)計(jì)算芯片當(dāng)中,向量-矩陣乘法運(yùn)算基于電流/電壓的跨導(dǎo)與基爾霍夫定律進(jìn)行物理實(shí)現(xiàn),如圖7(a)所示。因此,其核心是設(shè)計(jì)NOR Flash單元陣列以滿足大規(guī)模高能效向量-矩陣乘法
    的頭像 發(fā)表于 05-16 15:30 ?1169次閱讀
    存<b class='flag-5'>內(nèi)</b>計(jì)算<b class='flag-5'>芯片</b>研究進(jìn)展及應(yīng)用

    使用STM32F407芯片時(shí)堆棧分配到了CCM存儲(chǔ)區(qū)后出現(xiàn)不能Debug了,為什么?

    最近在使用STM32F407芯片時(shí) 堆棧分配到了CCM存儲(chǔ)區(qū)后出現(xiàn)不能Debug了,全速運(yùn)行沒(méi)有問(wèn)題,單步運(yùn)行看的時(shí)候每次只要從函數(shù)返回的時(shí)候就會(huì)進(jìn)入HardFault_Handler。如果
    發(fā)表于 05-11 09:03

    存儲(chǔ)芯片是什么樣存儲(chǔ)信息的

    存儲(chǔ)信息時(shí),對(duì)于動(dòng)態(tài)存儲(chǔ)器,行地址首先將RAS鎖存于芯片中,然后列地址將CAS鎖存于芯片中,當(dāng)WE有效時(shí),寫入數(shù)據(jù)則被
    的頭像 發(fā)表于 03-29 15:32 ?2836次閱讀
    <b class='flag-5'>存儲(chǔ)芯片</b>是什么樣<b class='flag-5'>存儲(chǔ)</b>信息的

    什么是存儲(chǔ)芯片?有什么作用呢?

    存儲(chǔ)芯片是一種用于存儲(chǔ)數(shù)據(jù)的集成電路芯片,也被稱為存儲(chǔ)芯片
    的頭像 發(fā)表于 02-29 09:09 ?3147次閱讀

    CysecureTools如何直接訪問(wèn)外部存儲(chǔ)設(shè)備內(nèi)的密鑰呢?

    顯然不符合安全標(biāo)準(zhǔn)。 那么,如標(biāo)題所示,CysecureTools應(yīng)該如何直接訪問(wèn)外部存儲(chǔ)設(shè)備內(nèi)的密鑰呢?\"
    發(fā)表于 01-31 08:08

    汽車嵌入式軟件的技能要求

    如果希望開始汽車嵌入式軟件領(lǐng)域的職業(yè)生涯,必須掌握符合行業(yè)需求的全面技能。下面是一個(gè)路線圖,列出了需要學(xué)習(xí)的關(guān)鍵技術(shù)和技能。
    的頭像 發(fā)表于 01-23 11:09 ?1518次閱讀
    汽車嵌入式軟件的<b class='flag-5'>技能</b>要求

    邏輯芯片存儲(chǔ)芯片的區(qū)別

    邏輯芯片存儲(chǔ)芯片是計(jì)算機(jī)系統(tǒng)中兩種不同類型的芯片,它們功能和用途上有著明顯的區(qū)別。
    的頭像 發(fā)表于 01-17 18:26 ?2307次閱讀

    單片機(jī)芯片怎么寫入程序

    單片機(jī)芯片程序寫入是通過(guò)將程序代碼寫入單片機(jī)芯片的非易失性存儲(chǔ)器(如Flash)中實(shí)現(xiàn)的。
    的頭像 發(fā)表于 01-05 14:06 ?7706次閱讀

    國(guó)應(yīng)用芯片推薦

    LKT4305GM是以32位安全處理器為基礎(chǔ)的具有高性能高安全性的國(guó)算法加密產(chǎn)品。芯片滿足商安全檢測(cè)標(biāo)準(zhǔn) GM/T 0008-2012《安全芯片密碼檢測(cè)標(biāo)準(zhǔn)》安全等級(jí)第二級(jí)。具有高
    的頭像 發(fā)表于 12-08 16:28 ?821次閱讀

    國(guó)加密工業(yè)路由器 數(shù)據(jù)安全升級(jí)

    國(guó)加密工業(yè)路由器,簡(jiǎn)稱國(guó)加密路由器,是指遵循“商用密碼管理規(guī)范”中規(guī)定的國(guó)家商用密碼算法,采用國(guó)加密芯片和密碼算法的專業(yè)路由器。相比-般路由器,國(guó)
    的頭像 發(fā)表于 11-29 14:07 ?480次閱讀
    國(guó)<b class='flag-5'>密</b>加密工業(yè)路由器 數(shù)據(jù)安全升級(jí)