1. gzyueqian
      18078865874

      嵌入式開發(fā):深入挖掘 ARMv8-M 的 TrustZone

      更新時間: 2022-03-21 10:42:26來源: 粵嵌教育瀏覽量:10044

        TrustZone 旨在幫助從事資源受限設(shè)備的嵌入式開發(fā)人員改進(jìn)其安全架構(gòu)。它為開發(fā)人員提供了一種容器化和隔離軟件的方法,同時仍提供 Cortex-M 處理器所期望的特性,例如低中斷延遲。TrustZone 將內(nèi)存、處理域和應(yīng)用程序分成兩個獨立的域 — 安全和非安全,有時也分別稱為可信應(yīng)用程序和用戶應(yīng)用程序。


        用戶域包含用戶應(yīng)用程序、RTOS、設(shè)備驅(qū)動程序、協(xié)議棧和通用外圍設(shè)備等項目。用戶域的行為與當(dāng)今典型的 Cortex-M 應(yīng)用程序完全相同。事實上,開發(fā)人員可以使用禁用 TrustZone 的 TrustZone 處理器,他們不會注意到任何差異。不過,這會破壞整個目的。安全域包含幾個旨在保護(hù)系統(tǒng)的項目,例如安全啟動、安全存儲、加密庫,甚至 RTOS 任務(wù)和內(nèi)核代碼。這些項目肯定存在于當(dāng)今的用戶應(yīng)用程序中。但是有了 TrustZone,他們現(xiàn)在能夠在沒有明確這樣做的情況下以不再直接訪問的狀態(tài)存在。


        第一次使用 TrustZone 的開發(fā)人員會發(fā)現(xiàn),即使是軟件的開發(fā)方式也不同。開發(fā)人員現(xiàn)在需要將他們的應(yīng)用程序分成兩個獨立的應(yīng)用程序,而不是使用單個代碼項目:固件項目和用戶項目。固件項目包含應(yīng)用程序的所有安全代碼,并將駐留在安全內(nèi)存位置。外部世界或用戶應(yīng)用程序無法訪問這些內(nèi)存位置,除非嵌入式開發(fā)人員專門在其代碼中創(chuàng)建安全網(wǎng)關(guān)以公開安全功能。不過,重要的是要知道,安全區(qū)域可以完全訪問所有內(nèi)存位置。這意味著,如果為安全域編寫的軟件計劃訪問不太安全的用戶應(yīng)用程序空間中的數(shù)據(jù)或固件,則需要非常小心。


        用戶應(yīng)用程序是標(biāo)準(zhǔn)的,是目前每個 Cortex-M 開發(fā)人員都習(xí)慣的類型。如前所述,用戶應(yīng)用程序受限于它可以訪問的內(nèi)存位置、功能和外圍設(shè)備。如果需要執(zhí)行安全功能,用戶應(yīng)用程序可以通過安全網(wǎng)關(guān)調(diào)用安全域。如果用戶應(yīng)用程序嘗試訪問任何其他安全內(nèi)存區(qū)域,則會導(dǎo)致錯誤。這可以防止錯誤的用戶程序隨機(jī)訪問安全內(nèi)存或以任何方式對其進(jìn)行操作。



        TrustZone 應(yīng)用程序首先在安全域中執(zhí)行。開發(fā)人員從他們的安全啟動應(yīng)用程序開始,并可以啟動他們的處理器。一旦完成,執(zhí)行可以從安全狀態(tài)切換到用戶狀態(tài)并開始執(zhí)行用戶代碼。


        當(dāng)處理器從用戶狀態(tài)切換到安全狀態(tài)時,硬件處理轉(zhuǎn)換,開發(fā)人員無需添加代碼。相反,編譯器會自動添加一條 CPU 指令,指示切換到安全狀態(tài)。在兩種狀態(tài)之間切換的最壞情況確定性開銷是三個時鐘周期。根據(jù)應(yīng)用程序,如果嵌入式開發(fā)人員正在進(jìn)行函數(shù)調(diào)用并且需要驗證函數(shù)參數(shù)或測試在域之間傳遞的指針,則開銷可能會更大。


        當(dāng)開發(fā)人員第一次遇到 Cortex-M 的 TrustZone 時,他們會發(fā)現(xiàn)他們編寫應(yīng)用程序的方式將永遠(yuǎn)改變。他們實際上必須設(shè)置兩個應(yīng)用程序,其中一個將存在于用戶域中,另一個存在于安全域中。當(dāng)存在提高系統(tǒng)安全性的機(jī)會時,必須以不同的方式開發(fā)軟件不一定是壞事。開發(fā)人員需要仔細(xì)考慮他們的應(yīng)用程序架構(gòu),并確保他們正確地識別他們的軟件和數(shù)據(jù)應(yīng)該存在的領(lǐng)域。TrustZone 是嵌入式開發(fā)人員可以用來提高系統(tǒng)安全性的工具。但只有通過正確使用,任何系統(tǒng)都會變得更加安全。

      免費預(yù)約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 亚洲欧美综合另类 | 亚洲国产综合精品中文第一区 | 精品国产免费二区二区 | 亚洲成色最大综合在线 | 日本激情在线观看免费观看 | 亚洲一国产欧美在线看 |