介紹無線安防系統(tǒng)對抗外部攻擊的措施及未來發(fā)展
隨著人們對無線部署安全性需求的增加,要求進行安全認證的無線系統(tǒng)還需要更高級別的安全性。無論應(yīng)用是安防系統(tǒng)(例如,鍵盤、無線傳感器或訪問控制)、汽車的遙控無鑰門禁(RKE)系統(tǒng)還是身份驗證系統(tǒng),如今的無線系統(tǒng)都變得越來越復(fù)雜。由于是消費品,必須保持盡可能低的成本,同時還應(yīng)提供足夠的安全級別。這需要在成本和性能之間權(quán)衡。盡管如此,好的設(shè)計仍可利用相對有限的資源達到良好的效果。
無線領(lǐng)域的安全級別與正在傳輸?shù)男畔⒌闹匾悦芮邢嚓P(guān)。例如,無線門鈴或電腦鼠標可能無任何安全問題,而汽車的無鑰門禁應(yīng)用卻需要高級別的安全性。與處理能力相對有限的消費品安防系統(tǒng)不同,臺式電腦具有更強的處理能力且價格在日益下降。因此,安全級別有限的無線安防系統(tǒng)更易受外部攻擊,通常包括代碼竊取和暴力破解攻擊等。
無線安防系統(tǒng)
增強的系統(tǒng)安全性
為什么無線應(yīng)用需要安全性?無線應(yīng)用使用射頻(RF)波將命令從發(fā)送方發(fā)送到接收方設(shè)備。然而,該RF消息是在公共媒介中發(fā)送的,這意味著在發(fā)送方偵聽范圍內(nèi)具有類似接收方設(shè)備的任何人都將可接收到完全相同的消息。例如,如果將鎖定和解鎖消息簡單地發(fā)送給車輛報警系統(tǒng),那么在偵聽范圍內(nèi)的任何人均可輕松確定這些命令。然后,他們只需重發(fā)這些消息即可非法進入車輛。此類攻擊通常稱為"代碼竊取"攻擊方法。
為了幫助保護RF消息中包含的信息,首先使用加密算法擾亂消息。加密是使用算法(密碼)轉(zhuǎn)換信息(明文)的過程,使此信息對除了具有特殊信息(如加密密鑰和/或加密算法)之外的其他人不可讀(密文)。只有掌握完全相同的加密算法和加密密鑰的人才能成功破解或解讀密文消息。遺憾的是,僅擾亂消息還遠遠不夠。因為即使消息無法被破解,不法份子仍可利用它來進入車輛。為了防止這種情況發(fā)生,還必須在每次發(fā)送時使加密消息發(fā)生改變。此消息變化模式有時還稱為"跳碼"或"滾動碼"模式,這可防止復(fù)用先前發(fā)送的消息。Microchip Technology(美國微芯科技公司)擁有專利的KEELOQ跳碼安全解決方案即為眾所周知的跳碼模式的一個例子。
KEELOQ跳碼技術(shù)采用強大的加密算法來實現(xiàn)始終變化的消息。
推動因素:為什么需要更強的安全算法?
那么,為什么不斷需要更強的安全算法?學術(shù)界、加密技術(shù)領(lǐng)域的專家和意圖破解算法而非法使用的個人都在不斷審視安全算法以找到其弱點。其中一種方法是嘗試所有可能的位組合以確定密碼或加密密鑰。該方法稱為"暴力破解攻擊".可能的組合越多,猜到正確數(shù)值的時間越長。隨著計算機的計算處理能力和速度的提高,可在較短時間段內(nèi)同時進行多個暴力破解攻擊計算。十年前需要幾個月才能完成的攻擊使用現(xiàn)在的技術(shù)只需幾天。獲取密碼和密鑰使黑客能夠看到加密消息中存儲的實際命令信息。在破解或解讀加密消息后,黑客能很容易迅速確定各種控制消息之間的哪些信息變化可使其作為有效命令被接收方接受和理解。
安全算法:專有和公共安防系統(tǒng)
目前有多種安全算法供選擇,分為專有和公共。這就意味著算法所采用的實際計算方式可以是公眾知悉的也可以不是。在安防領(lǐng)域中,有兩種學派分別代表專有和公共算法。只要安全算法通過非常熟悉當前各種攻擊方法的主題專家徹底審查,選擇哪個算法并不重要。然而,仍有許多人認為公共安全算法通常更好,因為它已經(jīng)過更多攻擊者審查,而這些攻擊者可能有時會使用全新和創(chuàng)新的密碼分析方法來破解算法。
通常,破解算法意味著減小猜到稱為"密鑰"的密碼所需的組合數(shù)。例如,數(shù)據(jù)加密標準(DES)使用 56位的加密密鑰并轉(zhuǎn)化為 2^56或 72,056,594,037,927,936種可能的組合,通過破解算法曾經(jīng)將可能的組合數(shù)減少至2^39或549,755,813,888種。通過目前的現(xiàn)場可編程門陣列(FPGA)或個人計算機處理能力,可在幾天內(nèi)輕易計算出密鑰。
由此得出一般規(guī)則,即安全算法的加密密鑰中的位數(shù)越多,算法越強。例如,高級加密標準(AES)算法可使用128或256位密鑰,后者被視為兩者中較強的解決方案。然而,在僅依懶于加密密鑰的位數(shù)或被加密的數(shù)據(jù)塊的大小時必須小心,因為有許多密碼分析攻擊方法可檢測出密鑰實際與原始算法計算混合的方式中的任何弱點。行業(yè)專家和黑客等通過使用今天在許多安全應(yīng)用中確認為標準的各種攻擊方法,已仔細審查了AES算法。
選擇安全解決方案
那么,為什么不干脆選擇目前最強的算法(例如,使用 256位加密密鑰的AES),用于您的下一款無線系統(tǒng)設(shè)計呢?遺憾的是,安全不是免費的,算法越強,計算越復(fù)雜,支持該算法所需的軟件內(nèi)存需求越大,通常就需要更昂貴的單片機。所有這些增加了安全解決方案的總成本及其復(fù)雜性。我們還需要記住在保持解決方案對于實際購買該系統(tǒng)的最終消費者簡單易用的同時,仍要提供足夠好的保護級別,以防止非法使用。較強的算法通常需要傳輸較長的加密消息。在空中發(fā)送無線包時,會延長延遲時間及增加功耗,因為無線包要花費更多的時間來發(fā)送。發(fā)送較長的數(shù)據(jù)并不總是件好事,這可能會對產(chǎn)品的現(xiàn)場驗收造成負面影響。
高級單片機更實惠
當今的嵌入式單片機不僅集成度更高,性能更佳,而且成本更低。這些高性價比的單片機能夠支持在十年前只能通過專用集成電路(ASIC)實現(xiàn)的解決方案。這些單片機支持更高級的安全加密算法,并且需要的開發(fā)時間也很短。如今的單片機還包含片上振蕩器和其他集成功能部件,這有助于減少元件數(shù)并因此降低了無線解決方案的總成本。單片機使無線產(chǎn)品的開發(fā)更加容易,同時通過使用采用高級語言(如C語言)編寫的支持大部分加密算法的軟件模塊提供高級別安全性。這顯著簡化了安防無線應(yīng)用的開發(fā)工作,稍作修改即可適應(yīng)瞬息萬變的消費者市場需求。
低功耗設(shè)計
嵌入式單片機行業(yè)的另一個有助于無線設(shè)計的重要設(shè)計改進重點關(guān)注于降低功耗。例如,降低單片機在執(zhí)行應(yīng)用程序代碼或處于不活動低功耗休眠狀態(tài)所需的功耗量。以采用超低功耗(XLP)技術(shù)的 Microchip PIC 單片機(MCU)為例,其休眠電流可低至 20 nA.這些新的低功耗器件可幫助系統(tǒng)級設(shè)計人員創(chuàng)建更小、更緊湊的便攜式手持設(shè)備,從而可使用較小的電池運行較長的時間。
集成RF解決方案
對集成 RF發(fā)送器、接收器或收發(fā)器的普遍青睞是如今推動產(chǎn)品短時間上市的顯著行業(yè)進步。這些集成的器件將所需的大部分 RF電路集成到單個硅器件中,降低了 RF設(shè)計的復(fù)雜性。這些新一代RF集成電路(IC)器件只需要一些基本的外部元件,就能完全實現(xiàn)高性能 RF無線應(yīng)用。此外,這些器件通常具有一個 SPI接口,可方便連接單片機,由單片機采用合適的設(shè)定值對無線 RF進行配置并發(fā)送/接收實際解調(diào)的數(shù)據(jù)包。
影響無線解決方案的設(shè)計因素
影響無線解決方案的最終設(shè)計的因素有許多。下面列出了一些在設(shè)計低成本移動無線產(chǎn)品時必須評估和了解的因素。
設(shè)計復(fù)雜性
結(jié)合所有這些技術(shù)--高級嵌入式單片機、集成RF器件和高級安全加密算法,設(shè)計人員可以輕松地開發(fā)一個完整的安全無線解決方案,并提供合適的安全級別。采用高集成度單片機和集成 RFIC器件也有助于顯著降低當今無線解決方案的成本和復(fù)雜性,這是因為集成簡化了工藝并減少了印刷電路板上所需的元件數(shù)。
解決方案的成本
有時,選擇合適的安全級別可能是一項艱巨的任務(wù)。然而更復(fù)雜的是,所選的安全級別并不總是可用的最強解決方案。如上文所述,設(shè)計人員必須充分了解他們試圖保護的內(nèi)容,然后決定使用哪個安全解決方案,這必將在多方面影響到成本。基于單片機的解決方案比基于 ASIC的解決方案更具靈活性。如果需要進行一些更改,設(shè)計人員只需提供在單片機上運行的軟件即可實現(xiàn)。其靈活性還體現(xiàn)在,采用相同的硬件設(shè)計僅需對代碼做一些微小的更改,即可支持多個國家或地區(qū)的法規(guī)。通過簡單地更改軟件,設(shè)計人員可針對其他區(qū)域分別配置無線 RF芯片。通過使用其他加密庫,設(shè)計人員可輕松地為最終用戶提供其他安全選項。
易于使用
設(shè)計安全解決方案最容易犯的錯誤是使設(shè)計過于復(fù)雜。設(shè)計一個安全解決方案的最好方式是保持其簡單和用戶友好特性。如果過于復(fù)雜或麻煩,對于消費者來說,這可能會有負面影響。設(shè)計無線系統(tǒng)的基本宗旨是要讓用戶感覺到比直接靠近受控應(yīng)用進行操作更方便。如果掏出口袋中的鑰匙來開車門比直接按鑰匙扣上的按鈕更方便,那么就完全偏離了設(shè)計目標。
保持安全系統(tǒng)簡單的另一個充足的理由是:越復(fù)雜,越難測試視為薄弱點的所有可能組合。做的測試越少,您未完全確定系統(tǒng)內(nèi)所有薄弱環(huán)節(jié)的機率就越高。遺憾的是,即使您使用的是目前最強的安全算法,安全強度也僅與系統(tǒng)中最薄弱的環(huán)節(jié)一樣。例如,在車輛報警系統(tǒng)中,如果僅使用很強的安全算法加密鎖定和解鎖消息,但不在每次傳輸時更改消息,或者沒有更改足夠多的信息,那么小偷可輕松捕捉到這些消息并重放。在這種情況下,他們?nèi)阅苓M入車輛,而無需知道您所使用的算法或密鑰。
物理尺寸
通常,RKE單元由一個小的CR2032紐扣電池供電。這些紐扣電池僅具有大約 200 ~240 mAh的電量。通常,希望該器件在適度的日常使用情況下,可持續(xù)使用三至五年。因此,用于此類設(shè)計的器件(如 XLP PIC單片機)非常關(guān)鍵。此外,在設(shè)計時,對移動部件(且許多時候甚至在是主控部件)的物理尺寸有所限制。例如,發(fā)射器電路必須能放入一個已預(yù)定形狀和外形的小鑰匙扣中。鑒于這些電路頻率相對較低,將天線放入如此小的空間可能是項設(shè)計挑戰(zhàn)。
選擇RF頻段、數(shù)據(jù)調(diào)制方案和性能
使用的頻率主要取決于應(yīng)用和法規(guī)。例如,在美國,工業(yè)、科學和醫(yī)學(ISM)頻段為315 MHz和915 MHz.在歐洲,ISM頻段為433 MHz和 868 MHz.還存在與無線鏈路所能覆蓋距離相關(guān)的要求。典型的RKE應(yīng)用要求至少20米,且有時有最大距離要求。例如,在日本,由于較嚴格的RF法規(guī),最大覆蓋范圍僅為 5米(這千真萬確)。最常見的理解錯誤之一是會提出"發(fā)送器可提供的最大范圍是多少?"這一問題。當評估覆蓋范圍時,設(shè)計人員應(yīng)牢記發(fā)送器和接收器同樣重要。良好的天線設(shè)計可顯著提高從弱發(fā)送器接收的能力。
RF調(diào)制方案和數(shù)據(jù)速率對無線鏈路的可靠性也有很大的影響。調(diào)頻無線鏈路通常較少產(chǎn)生噪聲。但是,這種技術(shù)會增加成本。更高級的無線鏈路還會增加移動部件及固定部件(即接收器)的成本。然而,隨著如今集成RF發(fā)送器和接收器的發(fā)展,這些器件往往與低成本混合RF模塊位于同一價格區(qū)間。一些最新的RF器件可同時充當發(fā)送器和接收器,使雙向通信成為可能。
選擇單片機
設(shè)計人員在選擇單片機時,應(yīng)從片上程序存儲和數(shù)據(jù)存儲容量考慮,選擇最適合應(yīng)用的單片機。板上帶有加密模塊,固然會有幫助,但這一般不免費,因此采用軟件實現(xiàn)方案在有些時候可能是更好的選擇。如果加密算法可用軟件輕松實現(xiàn),那么這是一個更可取的解決方案,因為它為設(shè)計人員提供更廣泛的單片機挑選范圍。此外,接收器通常會被融入較大的應(yīng)用中,例如汽車防盜器或車庫門遙控開關(guān)。有時,甚至發(fā)送器本身就是一個較大應(yīng)用電路的組成部分,如圖形鍵盤接口。單片機必須提供足夠的存儲器來容納主應(yīng)用程序和安全無線鏈路軟件。
安全是個系統(tǒng)問題
讀者應(yīng)牢記,RF解決方案始終具有兩個要素--移動/發(fā)送器部分和基點/接收器部分。在設(shè)計安全系統(tǒng)時,需要從安全角度來充分審查這兩個部分。包括為作業(yè)選擇合適的單片機和了解硬件設(shè)計的弱點。再次強調(diào),安全系統(tǒng)的強度僅與其最薄弱的環(huán)節(jié)一樣。
什么決定系統(tǒng)的安全?
許多因素會影響確定一個安全無線設(shè)計的最佳解決方案。系統(tǒng)設(shè)計人員應(yīng)將所有這些因素一起評估以確定最佳解決方案,了解各種設(shè)計權(quán)衡以及每個設(shè)計涉及的成本。
安全算法
選擇安全算法可能是個困難的決定,特別是在設(shè)計人員不知道存在的所有攻擊方法時。攻擊方法有明文、邊信道、差分加密分析、中間相會攻擊和滑動攻擊等多種。最好是咨詢行業(yè)專家或評估一些業(yè)界普遍接受的算法,如AES加密(已被廣泛接受,包括美國政府)。
密鑰管理
決定實施一個安全解決方案時,要牢記的最重要因素之一是,如何生成、交換、存儲、保護、使用和更換整個系統(tǒng)中的安全加密密鑰以破解或解讀加密消息。當談到安全問題時,最重要的一點是要記住Kerckhoff原理,該原理陳述了"安全系統(tǒng)不應(yīng)依賴于安全算法的保密,而依賴于密鑰的保密".回顧一下破解任何加密消息所需要的三個因素--完整的加密消息、破解該消息所需的算法和密鑰(僅授權(quán)用戶知道的密碼)。我們應(yīng)始終假設(shè)加密消息和算法將在某個時間點為公眾所知,即使是擁有專利的算法也是如此。因此,系統(tǒng)安全從來都不應(yīng)依賴于安全算法的保密,因為該信息遲早會泄露于世。
靈活性和擴展性
對于任何密鑰管理方案來說,所有設(shè)備不能使用相同的密鑰非常關(guān)鍵。這有助于提高整個系統(tǒng)的安全性,因此,如果一個移動部件被破解,也不會危及整個安全系統(tǒng)。實現(xiàn)此功能的最簡單方法是,為每個移動部件分配其自己的唯一密碼或加密密鑰。一個經(jīng)常用來實現(xiàn)此功能的方法是給每個移動部分分配一個唯一的編號作為序列號,然后基于該序列號和主制造商代碼進行唯一的加密密鑰的計算。一個需要同時支持多個移動部件的接收器部件,可輕松使用序列號導(dǎo)出破解發(fā)送自特定移動設(shè)備的信息所需的加密密鑰。移動設(shè)備的序列化通常通過以下方法在生產(chǎn)時完成:在將嵌入式單片機置于印刷電路板前預(yù)燒寫該信息,或者在電路板組裝后使用在線串行編程接口(ICSP)燒寫單片機。
可生產(chǎn)性
如前文所述,在任何安防系統(tǒng)中,一直保護加密密鑰非常關(guān)鍵。這包括生產(chǎn)過程,尤其在實際的產(chǎn)品組裝是由第三方契約制造(CM)公司完成時。在該情況下,僅向 CM提供預(yù)編程的代碼保護單片機比嘗試確保生產(chǎn)流程安全更易于確保加密密鑰不會被非法復(fù)制。大部分單片機供應(yīng)商,如Microchip,在他們的所有單片機上提供"帶序列號的快速批量編程"選項。通過向制造商提供器件序列化信息,他們可在生產(chǎn)測試期間將應(yīng)用程序軟件和序列化信息預(yù)燒寫到單片機中。
物理安全性
對安防系統(tǒng)的攻擊遠遠超出了僅分析數(shù)據(jù)和試圖對安防系統(tǒng)執(zhí)行數(shù)學攻擊。更確切地說,攻擊包括分析應(yīng)用電路和試圖查看是否可篡改任何硬件以訪問安防系統(tǒng)。如果接收器的輸出僅拉高數(shù)據(jù)線來激活繼電器,那么這就是一個易被攻擊的薄弱點。這些類型的攻擊顯然只在您能夠物理訪問正在工作的接收器部件的硬件時才能湊效。
另一種攻擊方案涉及從物理組件端分析移動發(fā)送器部件。這包括分析實際電路和施加規(guī)范電壓以對單片機發(fā)送信號或?qū)?yīng)用限流,以查看攻擊者是否有機會讀取存儲在器件非易失性存儲器中的安全信息。還有其他各種侵入性和非侵入性攻擊方法,試圖破壞這些單片機內(nèi)置的代碼保護鎖定機制。
沒有器件是攻不可破的。只要有時間和金錢,最終一定能找到方法破解器件并讀取受保護的信息。正因為如此,單片機芯片設(shè)計人員需不斷添加更多物理隱匿層以保護器件中存儲的信息,尤其是加密算法代碼或密鑰。因此,最好始終與單片機供應(yīng)商密切合作,以了解哪些器件采用了最新的防篡改電路來保護器件內(nèi)存儲的信息。
變化對安全來說是好事
另一個保護安防系統(tǒng)的好方法是定期更改相關(guān)事物。不要在較長時間段內(nèi)使用具有完全相同的安全密鑰信息的同一安全解決方案??苫旌鲜褂靡韵路椒ǎ焊拿荑€管理方案,用于導(dǎo)出各個移動部件的唯一加密密鑰的主加密代碼,或在新一代安全算法可用時移植至新一代算法。不盡如人意的是,變化會使產(chǎn)品喪失向后兼容性。系統(tǒng)設(shè)計人員在進行設(shè)計時,需要權(quán)衡利弊。在這些類型的設(shè)計中使用嵌入式單片機的最大好處是可隨時進行這類變化,而無需完全重新設(shè)計。相同的硬件設(shè)計可用于不同的產(chǎn)品。
結(jié)論
在低成本無線領(lǐng)域提供更好的安全級別的需求日益增加。需要了解和評估各種因素,才能找到以合理的成本提供足夠保護的最佳解決方案。不存在一個適合所有應(yīng)用的解決方案。單片機、RF IC和緊湊安全算法的最新進步顯著簡化了設(shè)計這些低成本的安全無線解決方案的復(fù)雜性。選擇合適的無線RF、單片機和安全算法需要深入了解當今用于攻破安防系統(tǒng)的各種攻擊方法。只有系統(tǒng)設(shè)計工程師考察了開發(fā)安全無線解決方案的所有方面,才有可能找到一種價格合理的應(yīng)對措施。
最好的建議是與您的單片機供應(yīng)商公開討論各種設(shè)計選項和替代方式,而非只關(guān)注器件數(shù)據(jù)手冊列出的特定安全特性。安全是系統(tǒng)級問題,也應(yīng)按以下流程開發(fā):首先選擇安全算法,然后支持生產(chǎn)/制造需求,最后設(shè)計密鑰分發(fā)機制。請記住,安全系統(tǒng)的強度僅與其最薄弱的環(huán)節(jié)一樣。