99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

嵌入式系統(tǒng)上的軟件從何而來(lái)

星星科技指導(dǎo)員 ? 來(lái)源:嵌入式計(jì)算設(shè)計(jì) ? 作者:RUSSELL DOTY ? 2022-11-11 15:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

您的嵌入式系統(tǒng)上的軟件從何而來(lái)?你能證明嗎?您能安全地在現(xiàn)場(chǎng)更新系統(tǒng)嗎?密碼學(xué)提供了驗(yàn)證軟件和數(shù)據(jù)完整性和來(lái)源的工具。有一個(gè)關(guān)于用戶(hù)如何驗(yàn)證軟件來(lái)源的過(guò)程,軟件是否在傳輸過(guò)程中被篡改,以及安裝后是否被修改。

軍事系統(tǒng)受到許多攻擊,包括對(duì)向系統(tǒng)提供軟件的軟件供應(yīng)鏈的攻擊。為了確保防范這些攻擊,管理人員應(yīng)該問(wèn)三個(gè)問(wèn)題:軟件組件的來(lái)源是什么?軟件是否被篡改或修改?他們能證明嗎?

密碼學(xué)通過(guò)軟件簽名和哈希來(lái)解決此問(wèn)題,它們協(xié)同工作以驗(yàn)證源和文件。軟件簽名使用公鑰/私鑰對(duì)來(lái)驗(yàn)證軟件的來(lái)源。使用私鑰對(duì)軟件進(jìn)行簽名,然后使用該公鑰驗(yàn)證軟件是否已使用該特定私鑰進(jìn)行簽名。簽名者和軟件是否可以信任是單獨(dú)的討論;軟件簽名驗(yàn)證軟件的來(lái)源,以及簽名后是否未被篡改。

哈希是一種處理任意長(zhǎng)度的文件或數(shù)據(jù)集并生成該文件唯一的固定長(zhǎng)度校驗(yàn)和的技術(shù)。對(duì)文件的任何更改都會(huì)產(chǎn)生一個(gè)全新的校驗(yàn)和 - 例如,更改 10 GB 文件中的一位將產(chǎn)生不同的校驗(yàn)和。流行的(雖然有些弱)sha1 哈希產(chǎn)生 40 個(gè)字符的校驗(yàn)和,而更安全的 sha256 哈希產(chǎn)生 64 個(gè)字符的校驗(yàn)和。使用文件及其校驗(yàn)和,您可以驗(yàn)證文件是否未以任何方式損壞或篡改。哈希運(yùn)行速度很快,即使在大文件上也是如此,使其成為文件驗(yàn)證的有效工具。

這些技術(shù)可以應(yīng)用于任何文件。文件是否包含源代碼、可執(zhí)行映像、數(shù)據(jù)或其他文件并不重要;可以使用任何文件或數(shù)據(jù)集。

源頭可以控制嗎?

所有軟件的起點(diǎn)都是源代碼,源代碼通常由多個(gè)人在一段時(shí)間內(nèi)編寫(xiě)和修改,并作為產(chǎn)品的多個(gè)版本和更新發(fā)布。代碼分布在數(shù)百或數(shù)千個(gè)文件中,并且不斷變化。有效的代碼管理使用版本控制的代碼存儲(chǔ)庫(kù),例如 git1。git 存儲(chǔ)庫(kù)是一個(gè)補(bǔ)丁數(shù)據(jù)庫(kù),每個(gè)補(bǔ)丁都有一個(gè)唯一的標(biāo)識(shí)符。在 git 中,這個(gè)唯一標(biāo)識(shí)符是補(bǔ)丁內(nèi)容的哈希值——結(jié)果是每個(gè)補(bǔ)丁都由其內(nèi)容標(biāo)識(shí)。對(duì)修補(bǔ)程序內(nèi)容的任何更改都會(huì)立即可見(jiàn),因?yàn)樾扪a(bǔ)程序不再與其標(biāo)識(shí)符匹配。

git 補(bǔ)丁包括有關(guān)應(yīng)用它的上一個(gè)補(bǔ)丁的信息以及提交補(bǔ)丁的人員的身份。與區(qū)塊鏈類(lèi)似,git 補(bǔ)丁包含基于加密的一組后臺(tái)指針,使某人無(wú)法在不被發(fā)現(xiàn)的情況下更改歷史記錄。補(bǔ)丁也可以使用前面描述的技術(shù)進(jìn)行簽名,從而驗(yàn)證誰(shuí)制作了補(bǔ)丁。此技術(shù)在任何需要驗(yàn)證貢獻(xiàn)的環(huán)境中都是有用的工具。

版本控制的軟件存儲(chǔ)庫(kù)是任何安全軟件供應(yīng)鏈的基礎(chǔ),因?yàn)樗峁┝塑浖懈牡臍v史記錄以及更改者。它還提供了構(gòu)建特定版本的軟件包的可靠方法。

建立可驗(yàn)證的出處

使用來(lái)自已知和可信來(lái)源的軟件對(duì)于維護(hù)嵌入式系統(tǒng)的完整性非常重要。但是你怎么知道一個(gè)可安裝的軟件實(shí)際上來(lái)自已知的源代碼呢?

源代碼存儲(chǔ)庫(kù)與 Jenkins2 等自動(dòng)化構(gòu)建系統(tǒng)相結(jié)合,使用戶(hù)能夠從一組已知的源文件構(gòu)建可執(zhí)行映像。生成映像后,生成系統(tǒng)可以對(duì)其進(jìn)行簽名和哈希處理。這使用戶(hù)既知道軟件的來(lái)源,又知道生產(chǎn)軟件的確切版本。例行版本使用測(cè)試密鑰簽名,而生產(chǎn)版本使用發(fā)布密鑰簽名,需要特殊授權(quán)和批準(zhǔn),并且通常在單獨(dú)的安全系統(tǒng)上簽名。這使用戶(hù)能夠確定軟件的來(lái)源以及它是否是正式版本。

組成一個(gè)軟件的所有文件都合并到一個(gè)包中,用于分發(fā)、安裝和更新。Linux 中使用的打包系統(tǒng)是 rpm3。rpm 是單個(gè)文件,其中包含多個(gè)文件的壓縮存檔以及用于安裝、配置、更新和刪除其關(guān)聯(lián)應(yīng)用程序的命令。rpm 文件還包括存檔中所有文件的清單,包括它們的名稱(chēng)、版本號(hào)和校驗(yàn)和。此清單信息包含在 rpm 數(shù)據(jù)庫(kù)中,該數(shù)據(jù)庫(kù)維護(hù)系統(tǒng)上安裝的所有基于 rpm 的軟件的信息。

軟件通常包含第三方組件。當(dāng)這些第三方組件包含在 rpm 中時(shí),rpm 元數(shù)據(jù)和校驗(yàn)和可確保這是供應(yīng)商包含的軟件。應(yīng)簽署第三方組件以確保其完整性;如果它們只是從其他供應(yīng)商傳遞,則應(yīng)由其他供應(yīng)商簽名。

通常,rpm 包本身是經(jīng)過(guò)簽名的。創(chuàng)建和簽署 rpm 包的工具包含在 Linux 中,每個(gè)開(kāi)發(fā)軟件的人都應(yīng)該使用,包括內(nèi)部開(kāi)發(fā)人員。默認(rèn)情況下,rpm 安裝程序會(huì)在允許安裝之前檢查軟件包是否使用已知密鑰進(jìn)行簽名。嘗試安裝未簽名的軟件或使用未知密鑰簽名的軟件將失敗,除非它們被覆蓋。rpm 安裝程序還會(huì)檢查軟件包的完整性:如果軟件包的內(nèi)容已被修改,無(wú)論是通過(guò)數(shù)據(jù)損壞還是惡意篡改,安裝都將失敗。

操作系統(tǒng)供應(yīng)商將在操作系統(tǒng) (OS) 中包含其公鑰。此添加使用戶(hù)能夠確保軟件包、更新和安全勘誤表實(shí)際上來(lái)自操作系統(tǒng)供應(yīng)商,并且未被任何外部方篡改。

用戶(hù)必須將每個(gè)已批準(zhǔn)供應(yīng)商的軟件密鑰添加到系統(tǒng)中。根據(jù)特定的安全要求,用戶(hù)可能需要采取措施來(lái)確保供應(yīng)商密鑰的有效性,尤其是在從鏡像或其他中間源(如系統(tǒng)集成商)下載軟件時(shí)。密鑰應(yīng)直接從供應(yīng)商網(wǎng)站獲取。有些人甚至隨身攜帶來(lái)自已知來(lái)源的密鑰的硬拷貝列表。

此外,簽名的 rpm 包允許通過(guò)郵件使用不安全的傳輸,例如互聯(lián)網(wǎng)或 CD-ROM,因?yàn)?rpm 工具可以驗(yàn)證 rpm 的來(lái)源以及它是否已損壞或篡改。

安裝后的使用壽命

在安裝之前和安裝期間檢查軟件是一個(gè)良好的開(kāi)端,但在安裝完成后繼續(xù)維護(hù)非常重要??梢宰鲂┦裁磥?lái)驗(yàn)證正在運(yùn)行的系統(tǒng)?

rpm 的一個(gè)強(qiáng)大功能是它允許用戶(hù)驗(yàn)證正在運(yùn)行的系統(tǒng)上文件的完整性。rpm 數(shù)據(jù)庫(kù)包括每個(gè) rpm 中包含的所有文件的校驗(yàn)和。系統(tǒng)實(shí)用程序使用戶(hù)能夠計(jì)算系統(tǒng)上每個(gè)文件的校驗(yàn)和,將其與rpm數(shù)據(jù)庫(kù)進(jìn)行比較,并識(shí)別已更改的任何文件。rpm 數(shù)據(jù)庫(kù)是一種快速有效的方法。實(shí)現(xiàn)此目的的另一種方法是返回到已簽名的 rpm 包并直接從 rpm 使用校驗(yàn)和。雖然這種方式較慢并且需要訪(fǎng)問(wèn)原始安裝文件,但它非常安全。

主要的 Linux 發(fā)行版使用這些技術(shù)來(lái)確保它們從已知來(lái)源安裝和運(yùn)行未經(jīng)修改的軟件。了解系統(tǒng)上安裝的所有軟件的來(lái)源以及是否已更改至關(guān)重要。這些知識(shí)是在現(xiàn)場(chǎng)部署和更新系統(tǒng)時(shí)建立和維護(hù)系統(tǒng)完整性的有力起點(diǎn)。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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)注

    5152

    文章

    19675

    瀏覽量

    317636
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4900

    瀏覽量

    70754
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    運(yùn)行在嵌入式系統(tǒng)的emApps

    在當(dāng)今快節(jié)奏的嵌入式系統(tǒng)世界中,靈活性和適應(yīng)性是嵌入式系統(tǒng)實(shí)現(xiàn)的關(guān)鍵。SEGGER推出了其最新創(chuàng)新:Embedded apps(emApps)應(yīng)用,類(lèi)似于手機(jī)上的應(yīng)用程序,可以運(yùn)行在
    的頭像 發(fā)表于 06-18 09:53 ?303次閱讀
    運(yùn)行在<b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b><b class='flag-5'>上</b>的emApps

    嵌入式軟件行業(yè)增長(zhǎng)驅(qū)動(dòng)因素

    嵌入式軟件在物聯(lián)網(wǎng)應(yīng)用中至關(guān)重要,因?yàn)樗芾碓O(shè)備操作、控制傳感器、支持連接并確保數(shù)據(jù)安全。例如,在智能家居中,恒溫器、安全攝像頭和燈光等設(shè)備使用嵌入式系統(tǒng)獨(dú)立運(yùn)行,并通過(guò)云平臺(tái)或本地網(wǎng)
    的頭像 發(fā)表于 05-09 11:26 ?345次閱讀

    嵌入式系統(tǒng)開(kāi)發(fā)圣經(jīng)【干貨】

    內(nèi)容包括:嵌入式系統(tǒng)的介紹、嵌入式SoC硬件系統(tǒng)概論、嵌入式系統(tǒng)軟件開(kāi)發(fā)。適用于產(chǎn)品主管、
    發(fā)表于 03-12 13:58

    嵌入式機(jī)器學(xué)習(xí)的應(yīng)用特性與軟件開(kāi)發(fā)環(huán)境

    設(shè)備和智能傳感器),這些設(shè)備通常具有有限的計(jì)算能力、存儲(chǔ)空間和功耗。本文將您介紹嵌入式機(jī)器學(xué)習(xí)的應(yīng)用特性,以及常見(jiàn)的機(jī)器學(xué)習(xí)開(kāi)發(fā)軟件與開(kāi)發(fā)環(huán)境。 嵌入式機(jī)器學(xué)習(xí)的應(yīng)用特性與優(yōu)勢(shì) 由于
    的頭像 發(fā)表于 01-25 17:05 ?661次閱讀
    <b class='flag-5'>嵌入式</b>機(jī)器學(xué)習(xí)的應(yīng)用特性與<b class='flag-5'>軟件</b>開(kāi)發(fā)環(huán)境

    新手怎么學(xué)嵌入式?

    。但面對(duì)這個(gè)復(fù)雜的領(lǐng)域,很多人可能會(huì)感到迷茫,不知從何處入手。別擔(dān)心,本文將為你提供一些入門(mén)學(xué)習(xí)嵌入式技術(shù)的建議。 新手入門(mén)學(xué)習(xí)嵌入式技術(shù)的途徑 1. 了解基礎(chǔ)知識(shí) 首先,要對(duì)嵌入式
    發(fā)表于 12-12 10:51

    嵌入式系統(tǒng)開(kāi)發(fā)與硬件的關(guān)系 嵌入式系統(tǒng)開(kāi)發(fā)常見(jiàn)問(wèn)題解決

    系統(tǒng)開(kāi)發(fā)與硬件關(guān)系的幾個(gè)關(guān)鍵點(diǎn): 硬件依賴(lài)性 :嵌入式系統(tǒng)軟件必須能夠在特定的硬件運(yùn)行,這包括處理器、內(nèi)存、輸入/輸出接口等。
    的頭像 發(fā)表于 12-09 09:38 ?972次閱讀

    什么是嵌入式?一文讀懂嵌入式主板

    在現(xiàn)代科技浪潮中,嵌入式技術(shù)已成為支撐各種智能設(shè)備和系統(tǒng)運(yùn)行的核心力量。那么,究竟什么是嵌入式?嵌入式系統(tǒng),顧名思義,是將計(jì)算機(jī)的硬件和
    的頭像 發(fā)表于 10-16 10:14 ?2615次閱讀

    【「嵌入式Hypervisor:架構(gòu)、原理與應(yīng)用」閱讀體驗(yàn)】+ Hypervisor應(yīng)用場(chǎng)景調(diào)研

    Hypervisor有兩個(gè)類(lèi)型:I型和II型,其中I型直接運(yùn)行在硬件設(shè)備,II型運(yùn)行在一個(gè)操作系統(tǒng),該操作系統(tǒng)運(yùn)行在硬件設(shè)備,也就是下
    發(fā)表于 10-14 11:21

    嵌入式系統(tǒng)的啟動(dòng)流程

    嵌入式系統(tǒng)的啟動(dòng)流程是一個(gè)復(fù)雜但有序的過(guò)程,它涉及從系統(tǒng)電到操作系統(tǒng)內(nèi)核及應(yīng)用程序啟動(dòng)的多個(gè)階段。
    的頭像 發(fā)表于 10-05 17:44 ?955次閱讀

    EsDA,一站嵌入式軟件

    ,旨在提高嵌入式軟件開(kāi)發(fā)的效率、性能和可擴(kuò)展性。EsDA全稱(chēng)是嵌入式系統(tǒng)設(shè)計(jì)自動(dòng)化,它是一個(gè)由AWorksLP、AWStudio、AXPI、AWTK、ZWS等多種
    的頭像 發(fā)表于 09-15 08:10 ?780次閱讀
    EsDA,一站<b class='flag-5'>式</b><b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>

    嵌入式系統(tǒng)的未來(lái)趨勢(shì)有哪些?

    嵌入式系統(tǒng)是指將我們的操作系統(tǒng)和功能軟件集成于計(jì)算機(jī)硬件系統(tǒng)之中,形成一個(gè)專(zhuān)用的計(jì)算機(jī)系統(tǒng)。那么
    發(fā)表于 09-12 15:42

    人工智能從何而來(lái)

    當(dāng)大家都在討論人工智能的時(shí)候,有一個(gè)問(wèn)題似乎很少有人關(guān)注,即:人工智能從何而來(lái)?
    的頭像 發(fā)表于 09-06 09:27 ?1157次閱讀

    嵌入式系統(tǒng)是什么?

    嵌入式系統(tǒng)是是一個(gè)功能完備、幾乎不依賴(lài)其他外部裝置就可以獨(dú)立運(yùn)行的系統(tǒng)。該系統(tǒng)包含軟件和硬件,以應(yīng)用為中心,以計(jì)算機(jī)為基礎(chǔ),能夠根據(jù)需求靈活
    的頭像 發(fā)表于 08-29 16:26 ?1003次閱讀

    嵌入式系統(tǒng)中的實(shí)時(shí)操作系統(tǒng)

    嵌入式RTOS是嵌入式應(yīng)用程序運(yùn)行、相互交互和與外界通信的底層軟件機(jī)制。在本節(jié)中,您將了解嵌入式軟件開(kāi)發(fā)人員使用哪些流行RTOS以及它們運(yùn)行
    的頭像 發(fā)表于 08-20 11:28 ?890次閱讀

    嵌入式軟件開(kāi)發(fā)與AI整合

    嵌入式軟件開(kāi)發(fā)與AI整合是當(dāng)前技術(shù)發(fā)展的重要趨勢(shì)之一。隨著人工智能技術(shù)的快速發(fā)展,嵌入式系統(tǒng)越來(lái)越多地集成了AI算法,以實(shí)現(xiàn)更復(fù)雜的智能功能。以下是關(guān)于
    的頭像 發(fā)表于 07-31 09:25 ?1369次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>開(kāi)發(fā)與AI整合