如何確保物聯(lián)網(wǎng)安全
互聯(lián)網(wǎng)的東西開辟了一個新的宇宙的連接和智能設(shè)備,可以一起工作提供幾乎無限的能力,并利用這些新功能將個性化。物聯(lián)網(wǎng)的價值大多來自產(chǎn)品和服務(wù)對客戶的個人,和直接的需要的自定義功能。物聯(lián)網(wǎng)的最大挑戰(zhàn)將進來保護機密信息免受未經(jīng)授權(quán)的訪問以及授權(quán)訪問,只有我們舒適的信息泄露。
幸運的是,為保護我們的機密信息和通信也進行身份驗證的發(fā)件人和接收器與我們希望誰來安全地共享信息時存在的方法。然而,這種方法涉及了大量的數(shù)學(xué)中,復(fù)雜的加密算法的核心。幸運的是,這些數(shù)學(xué)算法可以埋里面我們使用內(nèi)聯(lián)網(wǎng),以便我們不需要明白這密碼是“如何”實現(xiàn)細節(jié)的電子設(shè)備。然而,它并幫助要有一點背景這些加密算法為我們以及可以提供的安全性,我們需要保護我們的勇敢新物聯(lián)網(wǎng)世界中的設(shè)備的類型做了“什么”。
圖 1:物聯(lián)網(wǎng)需要先進的安全,保護我們的隱私。
安全通信
加密的較早的用途之一涉及在哪里一個字母取代了另一條短消息整個熟悉替代代碼。如果接收方知道替代公式,也許簡單轉(zhuǎn)變 cypher 在那里在消息中的“A”將變成“B”和“B”在郵件中變成了一個“C”,它很容易對消息進行解碼。看到加密的消息的任何人都不知道的內(nèi)容,除非他們也知道的機密密鑰。不幸的是,這些簡單的類型的密碼證明很容易解碼與幾個審判錯誤嘗試。
現(xiàn)代的數(shù)字世界,原來我們可以使用更加復(fù)雜的方法來加密郵件 — — 使用的計算機或甚至 Mcu 的強大處理能力的方法。這些方法仍然使用熟悉的概念的一個秘密密鑰和加密算法來加密消息,但也可以使用數(shù)字信號處理技術(shù) (加密數(shù)學(xué)函數(shù)),使它很難解密該消息沒有秘密密鑰。不幸的是,可用使用現(xiàn)代計算機的處理能力也可以使它易于是過于簡單化的中斷代碼。因此,需要有上升創(chuàng)建對于即使是強大的數(shù)字計算機,打破“蠻力”(審判和錯誤) 方法過于復(fù)雜的代碼。
用數(shù)學(xué)方法來創(chuàng)建難破加密函數(shù)的常用方法是找一個數(shù)學(xué)問題,是很難解決,但它可以是解決更輕松地與一個“提示”。作為一個例子,考慮產(chǎn)品的兩個非常大的素數(shù)??梢宰C明的是,是否你只知道該產(chǎn)品,它是耗費時間來計算確定的兩個主要因素。也可以證明該消息可以被加密,它只能是解密很快如果已知的兩個主要因素 (即,暗示) 的方式使用本產(chǎn)品。而且在此基礎(chǔ)上,這些事實允許您發(fā)布該產(chǎn)品公開作為您的“公鑰”,任何人如欲向您發(fā)送安全郵件可以使用知識,只知道素數(shù)因子的人,才可以解密該消息。如果這個人也有一個公鑰可以響應(yīng)使用他們的公鑰來加密您的留言,他們消息導(dǎo)致一個安全通信通道!這個安全通道的一個常見用途是發(fā)送鍵可以用作共享機密的仍然是非常強勁,其他加密算法,但需要計算功耗低于公開密鑰體制。
圖 2:公共和私人安全密鑰將用來保護我們的隱私在虛擬物聯(lián)網(wǎng)世界
消息身份驗證
因為任何人都可以發(fā)送加密的郵件,一個關(guān)注周圍的加密過程驗證發(fā)件人說他們是。幸運的是一種驗證發(fā)件人使用方法公共密鑰。你可以在加密的郵件返回給發(fā)件人,包括一個隨機數(shù)字,問,他們把你送那數(shù)字后面在加密的郵件。如果隨機數(shù)收到并且是正確的發(fā)件人已經(jīng)證明他們知道如何解密使用密鑰與他們的公鑰關(guān)聯(lián)的消息,事情只有他們能夠做。因此,你可以現(xiàn)在可以確保消息是真實的和來自指定發(fā)件人。
消息的完整性
此外,至關(guān)重要的是確保消息不被截獲,并不修改第三方。如果消息發(fā)送一封電子郵件中的文本作為,翻轉(zhuǎn)幾位將通常使文本無法讀取,所以你可能會認為所有這類活動會明顯。然而,考慮一個例子涉及到嵌入式 MCU 的代碼更新。翻轉(zhuǎn)有些雙邊投資條約將最終代碼發(fā)生劇烈變化,保持單片機做它的工作。如果它的工作是調(diào)節(jié)溫度在大型通信開關(guān),你可以想象可能發(fā)生的麻煩。因此,它是必須找到方法來保證消息的完整性,所以可以立即檢測篡改。
這樣做的常用方法包括生成一個標(biāo)簽 (通常稱為消息身份驗證代碼或 MAC),在以復(fù)雜的方式,對在郵件正文中的所有位都取決于。把它作為更多地參與版本的奇偶校驗,檢測如果已經(jīng)翻轉(zhuǎn)中有一個位。此標(biāo)記是添加和加密和郵件正文。接收器可以解密該消息 (包括標(biāo)記),然后重新生成標(biāo)簽從解密的消息正文。如果再生的標(biāo)記匹配一個嵌入在消息中沒有被篡改。請注意 MAC 需要一個共享的密鑰,以確保沒有其他人可以生成 mac。
行業(yè)標(biāo)準(zhǔn)被用于創(chuàng)建一系列的信息安全標(biāo)準(zhǔn)。高級加密標(biāo)準(zhǔn) (AES) 建立由美國國家標(biāo)準(zhǔn)和技術(shù)協(xié)會 (NIST) 是一種最普遍的和普遍實施與塊大小為 128、 192 和 256 位。由發(fā)送方和接收方都使用同一個密鑰 — — 所謂的對稱節(jié)拍,而不是使用不同的密鑰由發(fā)送者和接收者的公共密鑰系統(tǒng) — — 所以它通常是使用公共密鑰消息交換,往往只是單個會話。
MCU 廠商取得容易實現(xiàn) AES 安全功能,包括微控制器內(nèi)部的專用的硬件。例如,德州儀器 MSP430FR5969 單片機家族包括專用的硬件 AES 加速外圍實施所需的加密和解密功能。外圍設(shè)備還包括存儲在加密或解密操作 (長一連串的變化、 替換、 互換,Xor 所有受安全密鑰) 和安全密鑰過程中使用的國家記憶。設(shè)計工程師只需加載 128 位塊到狀態(tài)記憶和指定的函數(shù) — — 加密或解密 — — 將自動啟動。由此產(chǎn)生的加密或解密輸出從狀態(tài)內(nèi)存宣讀了。
圖 3:AES 硬件加速器在德州儀器 MSP430FR59xx 單片機。(來源: 德州儀器)
類似的硬件加速器可以找到其他常見的加密功能如 MAC 功能用于生成身份驗證摘要。最常見的 MAC 算法是安全哈希函數(shù) (SHA) 標(biāo)準(zhǔn)建立了由 NIST。硬件加速器也在供沙在 Mcu。例如,飛思卡爾動力學(xué) K6x 家庭的設(shè)備提供硬件加速協(xié)處理器的各種標(biāo)準(zhǔn),包括 AES 和沙。該協(xié)處理器可以從 CPU 獨立運行和使用內(nèi)存映射的接口,以便可以緩沖為加密加速器單位 (CAU) 的命令和數(shù)據(jù)。因為這個單位作為協(xié)處理器的體系結(jié)構(gòu),它可以無需 CPU 干預(yù)操作并可大幅度地提高效率,如果加密功能占很大比例的處理要求。
圖 4:飛思卡爾動力學(xué) K60 單片機加密加速器外設(shè) (來源: 飛思卡爾半導(dǎo)體)
實現(xiàn)安全功能的其他方法
除了提供硬件加速外設(shè)和協(xié)處理器,廠家還提供其他安全功能,以幫助保護我們的隱私在物聯(lián)網(wǎng)宇宙膨脹。例如,Atmel 提供特別安全內(nèi)存設(shè)備,像AT88SC0204CA。它采用對稱相互身份驗證、 數(shù)據(jù)加密和 MAC 操作為通過標(biāo)準(zhǔn)的單片機串行接口訪問系統(tǒng)內(nèi)敏感信息的存儲提供一個安全的地方。有額外的篡改檢測電路,此信息仍然是安全從硬件攻擊嘗試訪問安全信息。
另一種方法是在更多的專用的形式,可以在與單片機結(jié)合實施安全功能。格言產(chǎn)生一系列的設(shè)備,使用沙 256 硬件實現(xiàn)跨標(biāo)準(zhǔn)的 1 線接口安全地傳輸數(shù)據(jù)。單片機的外圍身份驗證器,像格言 DS24L65,將標(biāo)準(zhǔn)的 I2C 接口轉(zhuǎn)換成安全的 1 線接口,可以連接到各種安全 1 線外設(shè),如格言 DS28EL22、 上沙 256 基于 MAC 硬件芯片 2Kbit EEPROM 和保證唯一的 64 位 ROM ID 代碼。主機到奴隸身份驗證用于保護 DS28EL22 用戶內(nèi)存中被修改的 nonauthenTIc 的主機。長沙-256 MAC,DS28EL22 生成,是從用戶內(nèi)存、 芯片上秘密、 主機隨機挑戰(zhàn)和 64 位 ROM ID 非常強健安全性中數(shù)據(jù)計算的。請注意,這些設(shè)備可以包含在一套標(biāo)準(zhǔn)的外圍使用 I2C 連接,比如智能傳感器,進行身份驗證的傳感器從預(yù)期的制造商,他們沒有被篡改。當(dāng)傳感器的讀數(shù)用于生成實用程序和類似的“收現(xiàn)付”業(yè)務(wù)的收入,這一點尤其重要。
結(jié)論
用來保護機密數(shù)據(jù)的方法 — — Mcu 與專用的加密支持常用的安全算法,關(guān)閉芯片加密記憶存儲敏感信息或硬件級別的身份驗證,以確保外設(shè)是否真實。