衡阳派盒市场营销有限公司

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

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

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

基于閃存工藝的SoC實現(xiàn)嵌入式系統(tǒng)安全啟動的設(shè)計

電子設(shè)計 ? 來源:郭婷 ? 作者:電子設(shè)計 ? 2019-04-18 08:09 ? 次閱讀

無論用做獨立的處理單元,或者與輔助處理器聯(lián)合使用,SoC FPGA器件均可以改善嵌入式處理的安全性。雖然可以利用專用安全器件來構(gòu)建嵌入式處理器模塊,實施監(jiān)測和靜態(tài)密匙存儲,然而,整合系統(tǒng)關(guān)鍵功能的SoC FPGA器件若能提供安全特性,便可以提供更大的安全性、靈活性和更好的性能。

在嵌入式設(shè)計中,Linux日益流行。隨著32位計算成為常見商品,Yocto等項目使得用于嵌入式應用和基于Linux的系統(tǒng)的創(chuàng)建、開發(fā),以及維護變得更加容易,使得Linux系統(tǒng)的流行性可能會進一步增長。Linux使得OEM廠商變得更像初創(chuàng)企業(yè),其靈活的硬件開發(fā)團隊通過使用操作系統(tǒng)來提取底層的硬件細節(jié),可以加快上市速度。盡管Linux系統(tǒng)具有優(yōu)勢,然而,如果沒有合適的方法來啟動其嵌入式處理器,便會易于受到rootkit攻擊,對于將會創(chuàng)建數(shù)十億個新的潛在不安全端點的新興物聯(lián)網(wǎng)來說,Rootkit特別構(gòu)成重大威脅。

一般而言,rootkit試圖接入特權(quán)(根)模式,同時躲避系統(tǒng)惡意軟件檢測工具。惡意軟件也可能試圖通過修改系統(tǒng)的啟動過程,把自己安裝系統(tǒng)以進入持久狀態(tài)。如果成功,惡意軟件感染便是永久的,或者通過上電循環(huán)持續(xù),自此便可以為所欲為,包括記錄擊鍵、形成僵尸網(wǎng)絡(luò)、收集個人信息,以及實施未經(jīng)授權(quán)的服務(wù)。一旦系統(tǒng)受到感染,可能需要重新安裝整個操作系統(tǒng)。

問題從嵌入式處理器開始,其啟動通常如圖1所示。在上電時,片上ROM將從外部非易失性存儲器取得啟動加載程序。啟動加載程序是專用的,并且在啟動期間對處理器進行配置以滿足特定的應用需求。時鐘、緩存、存儲器控制器,以及外設(shè)均進行配置。一旦處理器完成初始化,就從外部非易失性存儲器取得應用程序,有時進行解壓縮,并且復制到應用程序開始之處的快速外部易失性存儲器,讓程序開始運行。

基于閃存工藝的SoC實現(xiàn)嵌入式系統(tǒng)安全啟動的設(shè)計

圖1 嵌入式啟動過程

在啟動過程中,惡意軟件有機會試圖修改嵌入式系統(tǒng)的啟動程序bootloader。如圖2所示為嵌入式Linux系統(tǒng)的典型框圖,UBOOT、Linux內(nèi)核和應用程序?qū)泳鎯υ谝子谧x取的非易失性存儲器中。

基于閃存工藝的SoC實現(xiàn)嵌入式系統(tǒng)安全啟動的設(shè)計

圖2 嵌入式Linux系統(tǒng)

保護啟動過程的唯一方法,是使用一個確信它始終以預期方式運行的組件來提供保護。作為系統(tǒng)組件,這種信任根(root-of-trust)支持了系統(tǒng)、軟件和數(shù)據(jù)完整性和保密性的校驗,以及內(nèi)部和外部實體的信任擴展。這是創(chuàng)建所有其它安全層的基礎(chǔ),它的密匙必須一直保密,而且之前的啟動過程不可改變,這是十分重要的。在嵌入式系統(tǒng)中,信任根與其它系統(tǒng)組件共同工作,以期確保只有經(jīng)過授權(quán)的代碼來安全地啟動主處理器,從而將信任域擴展到處理器及其應用。通過使用加密技術(shù),可以擴展信任域以涵蓋所有重要的系統(tǒng)組件,甚至通過本質(zhì)上不安全的網(wǎng)絡(luò)將數(shù)個信任系統(tǒng)捆綁在一起。

雖然許多較新的處理器具有支持安全啟動的專門特性,然而處理器芯片安全啟動的固有支持遠不普及,通常需要一個多芯片解決方案。一個更好的解決方案是基于閃存工藝的FPGA器件,它們可以在多芯片嵌入式系統(tǒng)中提供最佳的信任根器件,顯著提升主嵌入式處理器所運行的代碼的可信性。

基于閃存工藝的解決方案本質(zhì)上更加安全(它們一經(jīng)編程,關(guān)鍵的信息永不丟失),而且今天基于閃存工藝的 SoC FPGA解決方案還具有數(shù)項附加的先進安全特性,包括片上振蕩器、用于加密服務(wù)的加速器、安全密匙存儲、真正隨機數(shù)發(fā)生器、在安全的嵌入式Flash memory(eNVM)中的片上啟動代碼存儲,以及使能外部處理器高速安全啟動的高速串行外設(shè)接口(SPI)。這些器件還具有超越較早期解決方案的更強大的設(shè)計安全性,并且包含抵御差異化功率分析(DPA)技術(shù)的防篡改措施。結(jié)合嵌入式Linux CPU,它們能夠有效地用于防止惡意軟件試圖修改嵌入式系統(tǒng)的啟動程序。

圖3所示為可以用于安全啟動的基于閃存工藝的SoC示例,美高森美SmartFusion2 SoC器件中的eNVM用于存儲UBOOT,其FPGA架構(gòu)則實現(xiàn)高速的SPI接口。CPU并不知悉SoC位于其和SPI閃存之間。在上電時,SoC將UBOOT的SPI讀取請求從內(nèi)部eNVM導向CPU,而后,CPU經(jīng)過正常的UBOOT啟動過程,并且從外部SPI閃存取得應用鏡像的剩余部分,在后一個階段中,SoC用作外部存儲器的管道,并且將應用鏡像傳送給CPU。SoC及其內(nèi)部eNVM僅可使用經(jīng)過認證的加密位流進行編程,這一位流僅可由SoC的FPGA開發(fā)環(huán)境來建立。位流文件格式是專有的,并且不提供給任何人,并且具有從Cryptography Research Incorporated(現(xiàn)為Rambus)授權(quán)許可的專利保護措施,可以抵御DPA側(cè)道攻擊。換句話說,惡意軟件試圖寫入快閃的唯一途徑是具有設(shè)計用于該SoC并備有合適的加密和用戶定義密匙的位流。

基于閃存工藝的SoC實現(xiàn)嵌入式系統(tǒng)安全啟動的設(shè)計

圖3 SmartFusion2器件用于存儲UBOOT

為了確保安全的多級啟動,在提供和執(zhí)行代碼之前必須先進行驗證,這是必不可少的,這可確保不會出現(xiàn)攪亂或損壞各階段的啟動,并且可以使用對稱或非對稱密匙加密技術(shù)來進行。更好的是,使用對前一個階段的連續(xù)反饋來確認在啟動加載期間沒有發(fā)生篡改。如果所有的防篡改(AT)監(jiān)測器確認環(huán)境安全,隨后的各個階段便可以繼續(xù)執(zhí)行。

今天的SoC FPGA可以獨立提供運行時間監(jiān)測和校正行動,有需要時也可以提供懲罰。為了這樣做,所有的應用程序代碼將存儲在SPI快閃中,而且可加密。SoC器件將在每個階段對代碼進行真實性檢查和解密 (如果需要),并且通過MPU-to-FPGA SPI接口進行請求時,把它們饋入主MPU。為了增加安全性,啟動加載程序代碼將會存儲在SoC FPGA的eNVM中。

在上電之后,F(xiàn)PGA將保持主MPU在復位狀態(tài),直到它完成自已的完整性自我測試。在準備好時,它會釋放復位。MPU將被配置成從通向FPGA的接口啟動(例如通過SPI接口)。FPGA用作SPI從器件,在MPU復位之后,將向MPU提供所請求的Phase-0啟動代碼,假設(shè)MPU本身不支持安全啟動,挑戰(zhàn)則會是將某些代碼載入MPU中并且高度確保它未被篡改。

如果各個項目均沒有問題,啟動過程將會連續(xù)將通過確認的代碼載入MPU的SRAM中,這將包括發(fā)起下一階段的所需代碼,以及包括一個通過確認的RSA 或者 ECC公共密匙。一旦MPU SRAM中的代碼獲得信任,便可以部署附加的安全措施,比如使用公共密匙方法來建立分享的密匙,以及使用分享的密匙,對FPGA和MPU之間傳輸?shù)乃泻罄m(xù)導引代碼進行加密。此外,也可以將系統(tǒng)所有的硬件組件捆綁在一起加密,使得系統(tǒng)中必須具備初始系統(tǒng)的所有組件才可以運作。

此外,SoC可以提供模塊環(huán)境情況的實時監(jiān)控,比如溫度、電壓、時鐘頻率和其它因素。FPGA架構(gòu)可以通過安全的配置,提供I/O給外部篡改傳感器和侵入檢測器。SoC通過它們來感測,防止來自已知漏洞的攻擊,這些攻擊會施加異常條件來提取關(guān)鍵的信息。只要通過合適的設(shè)計,便可以達到更高的安全水平。

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

    關(guān)注

    68

    文章

    19409

    瀏覽量

    231206
  • 嵌入式
    +關(guān)注

    關(guān)注

    5094

    文章

    19178

    瀏覽量

    307731
  • soc
    soc
    +關(guān)注

    關(guān)注

    38

    文章

    4204

    瀏覽量

    219110
收藏 人收藏

    評論

    相關(guān)推薦

    集成嵌入式平臺加速了SoC嵌入式系統(tǒng)的軟件調(diào)試和啟動

      這種跨學科的早期研究改進了設(shè)計硬件并加速了 SoC嵌入式系統(tǒng)的軟件調(diào)試和啟動。軟件開發(fā)人員和硬件工程師都同意這是朝著正確方向邁出的一步。
    的頭像 發(fā)表于 06-28 15:31 ?2566次閱讀
    集成<b class='flag-5'>嵌入式</b>平臺加速了<b class='flag-5'>SoC</b>和<b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b>的軟件調(diào)試和<b class='flag-5'>啟動</b>

    嵌入式閃存技術(shù)助力智能汽車接口的實現(xiàn)

    基礎(chǔ)工藝掩膜組增加三個光罩層。對于一個嵌入式閃存的單個芯片,它只占該芯片總體積三分之一;掩膜層數(shù)量越少,HiMOS方案的單元密度就越低,從而使整個替代技術(shù)的凈成本降低15%。 未來之路 最后,除了節(jié)省空間
    發(fā)表于 04-08 09:36

    嵌入式閃存助力智能汽車接口應用實現(xiàn)

    信號及80V高壓的能力,使得完全集成的SoC方案得以發(fā)展,實現(xiàn)了成本和空間的顯著降低及性能的提升。特別是包含閃存工藝只需要對I3T80基礎(chǔ)工藝
    發(fā)表于 04-30 07:00

    基于閃存工藝SoC FPGA器件實現(xiàn)安全啟動設(shè)計

    無論用做獨立的處理單元,或者與輔助處理器聯(lián)合使用,SoC FPGA器件均可以改善嵌入式處理的安全性。雖然可以利用專用安全器件來構(gòu)建嵌入式處理
    發(fā)表于 06-19 06:57

    如何實現(xiàn)嵌入式ASIC和SoC的存儲器設(shè)計?

    基于傳統(tǒng)六晶體管(6T)存儲單元的靜態(tài)RAM存儲器塊一直是許多嵌入式設(shè)計中使用ASIC/SoC實現(xiàn)的開發(fā)人員所采用的利器,因為這種存儲器結(jié)構(gòu)非常適合主流的CMOS工藝流程,不需要增添任
    發(fā)表于 08-02 06:49

    SOC嵌入式相關(guān)資料推薦

    SOC嵌入式SOC如arm、aarch64等嵌入式產(chǎn)品:樹莓派,mini2440、mini6410、nanopi,海思、高通、RK(瑞芯微)->KTV點歌機、人臉識別打卡器、智能家居主
    發(fā)表于 11-01 08:14

    嵌入式系統(tǒng)安全面臨的挑戰(zhàn)是什么

    在我們努力在更小的嵌入式系統(tǒng)中使用更多功能時,它們的安全性往往被忽視。本文討論了過去的一些安全漏洞,并討論了嵌入式
    發(fā)表于 12-22 07:44

    基于ARM-μCLinux嵌入式系統(tǒng)啟動引導的實現(xiàn)

    基于ARM-μCLinux嵌入式系統(tǒng)啟動引導的實現(xiàn):介紹了 ARM-μCLinux 嵌入式系統(tǒng)的結(jié)構(gòu)組成,重點分析了 ARM--μCLinu
    發(fā)表于 06-25 08:14 ?36次下載

    使用新SRAM工藝實現(xiàn)嵌入式ASIC和SoC的存儲器設(shè)計

    使用新SRAM工藝實現(xiàn)嵌入式ASIC和SoC的存儲器設(shè)計基于傳統(tǒng)六晶體管(6T)存儲單元的靜態(tài)RAM存儲器塊一直是許多嵌入式設(shè)計中使用ASI
    發(fā)表于 02-01 09:11 ?1378次閱讀
    使用新SRAM<b class='flag-5'>工藝</b><b class='flag-5'>實現(xiàn)</b><b class='flag-5'>嵌入式</b>ASIC和<b class='flag-5'>SoC</b>的存儲器設(shè)計

    汽車嵌入式SoC系統(tǒng)的應用與發(fā)展

    汽車嵌入式SoC系統(tǒng)的應用與發(fā)展 嵌入式系統(tǒng)是泛計算領(lǐng)域的重要組成部分,是嵌入式對象宿主體系中
    發(fā)表于 10-26 14:08 ?1466次閱讀
    汽車<b class='flag-5'>嵌入式</b><b class='flag-5'>SoC</b><b class='flag-5'>系統(tǒng)</b>的應用與發(fā)展

    嵌入式系統(tǒng)U盤實時啟動技術(shù)

    本文給出了實現(xiàn)嵌入式實時系統(tǒng)優(yōu)盤啟動嵌入式主機硬件結(jié)構(gòu)、軟件協(xié)議棧以及主要程序流程,探討了實現(xiàn)
    發(fā)表于 07-20 15:09 ?1764次閱讀

    如何構(gòu)建基于處理器的嵌入式安全系統(tǒng)?

    嵌入式安全系統(tǒng)概述;嵌入式系統(tǒng)安全技術(shù);安全應用處理器介紹 ;基于安全處理器的
    的頭像 發(fā)表于 01-25 07:06 ?2592次閱讀
    如何構(gòu)建基于處理器的<b class='flag-5'>嵌入式</b><b class='flag-5'>安全系統(tǒng)</b>?

    使用外部閃存安全嵌入式系統(tǒng)

    在本系列的第 1 部分中,我們介紹了安全性在連接的嵌入式系統(tǒng)中的重要性,以及強制使用外部閃存閃存的去集成。在本系列的第 2 部分中,我們介
    的頭像 發(fā)表于 10-21 09:23 ?694次閱讀
    使用外部<b class='flag-5'>閃存</b>的<b class='flag-5'>安全</b><b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b>

    嵌入式系統(tǒng)安全實用技巧

    嵌入式系統(tǒng)安全實用技巧
    的頭像 發(fā)表于 12-28 09:51 ?779次閱讀

    如何使用 DSC 和 MCU 確保嵌入式系統(tǒng)安全

    作者:Stephen Evanczuk 投稿人:DigiKey 北美編輯 隨著向物聯(lián)網(wǎng) (IoT) 的遷移,安全性已不再是嵌入式應用中的選配功能,已發(fā)展成為確保系統(tǒng)完整性所需的必備能力。為了滿足日益
    的頭像 發(fā)表于 02-13 14:38 ?820次閱讀
    如何使用 DSC 和 MCU 確保<b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)安全</b>
    澳门百家乐的玩法技巧和规则| 百家乐存在千术吗| 海立方百家乐官网客户端| 现金百家乐官网代理| 百家乐官网保单机作弊| 迪威百家乐官网娱乐平台| 风水学坐向24山| 百家乐时时彩网站| 女优百家乐的玩法技巧和规则| 大发888老虎机平台| 瑞丽市| 百家乐官网的玩法和技巧| 金彩百家乐官网的玩法技巧和规则 | 澳门百家乐官网威尼斯| 豪门百家乐官网的玩法技巧和规则 | 全讯网是什么| 沿河| 百家乐官网单机破解版| 使用的百家乐软件| 顶级赌场官网| 百家乐官网博彩优惠论坛| 属蛇和属马合作做生意谁吃亏 | 玩百家乐官网游戏的最高技巧| 澳门百家乐海洋阿强| 大发888娱乐场网页| 百家乐官网长龙如何判断| 赌百家乐的方法| 大发888论坛爱好| 平博百家乐官网游戏| 属猪属蛇做生意怎么样| 网上老虎机游戏| 百家乐官网怎么推算| 百家乐所有技巧| 大发888娱乐城 下载| 百家乐官网真钱送彩金| 里尼的百家乐策略| 大发888客户端的软件| 百家乐官网桌台布| 百家乐网盛世三国| 十六蒲娱乐城| 百家乐策略|