應用說明,以安全認證器的形式解釋NFC產(chǎn)品認證,特別是ADI公司的解決方案。將滿足應用要求,包括正品驗證、輪次檢查和適當結(jié)束 NFC 耗材的使用壽命。
介紹
NFC 提供了一種無需物理接觸即可互連設(shè)備的解決方案。NFC標簽通常用于制造信息,產(chǎn)品識別和認證。在日常生活中,想象一下這些產(chǎn)品的廣度;護照、電子機票、員工徽章、醫(yī)療外圍設(shè)備的識別和盒子商店安全標簽等等。其他競爭技術(shù)(如快速響應 (QR) 代碼)可以支持產(chǎn)品標識和信息,但不能執(zhí)行產(chǎn)品的安全身份驗證。NFC和QR碼都有其優(yōu)點和缺點,但為了安全性和用戶體驗,NFC獲勝。這主要歸功于閱讀器掌握在每個人的手中,因為現(xiàn)在幾乎所有智能手機都可以用來讀取NFC標簽。它們還可用于檢查物品的真實性,無需特殊硬件。對于沒有智能手機的應用,RFID閱讀器有許多選項可以補充大多數(shù)NFC標簽。
本應用筆記重點介紹產(chǎn)品認證,特別是ADI公司以NFC安全認證器形式提供的解決方案。它滿足了應用要求,包括正品驗證、輪次檢查、適當結(jié)束耗材的使用壽命以及涉及其他應用。
首先,什么是身份驗證?
身份驗證是一個過程,目的是在兩個或多個實體之間建立身份證明。在單向身份驗證的情況下,只有一方參與向另一方證明其身份。通過雙向身份驗證,雙方都向?qū)Ψ阶C明自己的身份。最常用的身份驗證方法是密碼。密碼的主要問題是它們在使用時會暴露,使它們?nèi)菀资艿介g諜和發(fā)現(xiàn)。這是二維碼不利于安全性的主要原因,因為它是一個完全暴露的密碼。
在研究密碼學的歷史使用時,1883年,佛蘭芒語言學家奧古斯特·克爾克霍夫斯(Auguste Kerckhoffs)在一篇關(guān)于軍事密碼學的開創(chuàng)性文章中發(fā)表了他的發(fā)現(xiàn)。Kerckhoffs認為,安全性應該取決于密鑰的強度,而不是依賴于默默無聞,因為在發(fā)生違規(guī)行為時,只需要更換密鑰,而不是整個系統(tǒng)。
一種經(jīng)過驗證的基于對稱密鑰的身份驗證方法如圖 1 所示。密鑰和待身份驗證的數(shù)據(jù)(“消息”)作為輸入來計算散列消息身份驗證代碼或 HMAC。然后將 HMAC 附加到消息中,并根據(jù)請求進行傳輸。消息的接收方使用相同的(下面稱為共享)密鑰執(zhí)行相同的計算,并將其 HMAC 版本與消息接收的版本進行比較。如果兩個 HMAC 匹配,則消息是真實的。但是,此基本模型的一個弱點是,靜態(tài)的、截獲的消息和 HMAC 可能會在以后或隨后被不真實的發(fā)送方重放,并被誤認為是真實的。
圖1.HMAC 計算模型。
為了解決重放漏洞并證明 HMAC 發(fā)起方(例如,非接觸式外設(shè)或標簽)的真實性,接收方(即外設(shè)位于近場的主機系統(tǒng))生成一個隨機數(shù),并將其作為質(zhì)詢發(fā)送給發(fā)起方。然后,HMAC 發(fā)起方必須根據(jù)共享密鑰、消息和質(zhì)詢計算新的 HMAC,并將其發(fā)送回收件人。如果發(fā)起方證明能夠為任何質(zhì)詢生成有效的 HMAC,則絕對可以肯定它知道共享密鑰,因此可以被認為是真實的。圖 2 顯示了此質(zhì)詢和響應身份驗證流程以及關(guān)聯(lián)的數(shù)據(jù)元素。
圖2.質(zhì)詢和響應身份驗證數(shù)據(jù)流。
在密碼學中,從消息生成固定長度哈希的算法稱為單向哈希函數(shù)?!皢蜗颉北硎緩耐ǔ]^大的輸入消息的固定長度輸出哈希得出結(jié)論在數(shù)學上是不可行的。將 HMAC 和 SHA3 算法與密鑰相結(jié)合稱為 HMAC,具有與固定長度輸出哈希相同的“單向”特征。
FIPS 202 SHA-3 是一種經(jīng)過全面審查和國際認證的單向哈希算法,它由美國國家標準與技術(shù)研究院 (NIST) 標準化。該算法背后的數(shù)學原理可在NIST網(wǎng)站上公開獲得。該算法的顯著特點如下:
不可逆性:確定與哈希輸出對應的輸入在計算上是不可行的。
抗碰撞性:找到多個產(chǎn)生相同哈希輸出的輸入消息是不切實際的。
高雪崩效應:輸入的任何變化都會在哈希結(jié)果中產(chǎn)生重大變化。
出于這些原因以及算法的國際審查,ADI公司選擇SHA-3對其最新的MAX66250 NFC安全認證器進行質(zhì)詢和響應認證。此外,ADI公司在其最新產(chǎn)品中實現(xiàn)了SHA-3算法的SHA-256-3變體,并結(jié)合了基于密鑰共享的HMAC算法。
系統(tǒng)中的非接觸式安全身份驗證
支持NFC的智能手機的普及使任何人都可以使用安全的認證器標簽IC,例如DeepCover安全認證器(MAX66250),而無需任何特殊硬件,如圖3所示。這是因為大多數(shù)智能手機都具有符合ISO 15693標準的集成NFC閱讀器和安全存儲功能。大多數(shù)手機操作系統(tǒng)都提供FIPS加密軟件庫,可以輕松開發(fā)。但是,典型的嵌入式應用不使用智能手機,必須使用專用的NFC讀卡器。?
圖3.沒有特殊硬件的示例。
或者,如圖4所示,ADI公司同時具有讀卡器(MAX66301)和用于NFC安全認證的標簽IC。讀卡器可以作為與微控制器(μC)接口的外設(shè)IC輕松添加到任何嵌入式處理系統(tǒng)中。以下是使用MAX66301讀卡器IC的優(yōu)點:
高度安全的系統(tǒng)主 SHA3 機密存儲。
從主機μC卸載SHA3計算。
卸載ISO15693 RF數(shù)據(jù)的編碼和解碼。
使用ADI公司的預編程服務對系統(tǒng)SHA3密鑰進行可選安全編程。
圖4.嵌入式系統(tǒng)非接觸式框圖。
現(xiàn)在讓我們討論一些應用程序,因為系統(tǒng)已經(jīng)呈現(xiàn)了。
正品驗證
有限壽命消耗品通常是售后市場公司的目標,試圖復制、生產(chǎn)和將未經(jīng)授權(quán)且通常不合格的產(chǎn)品引入供應鏈。安全認證可用于證明產(chǎn)品是 OEM 正品,并且可以消除安全問題、潛在的品牌損害和假冒產(chǎn)品可能導致的收入損失。在解決方案中引入安全身份驗證使主機系統(tǒng)能夠驗證外設(shè)是否為真品,并在檢測到假冒產(chǎn)品時采取特定于應用程序的操作。如圖5所示,讀取器和標簽之間的質(zhì)詢和響應用于確認真實性。
圖5.通過質(zhì)詢和響應進行正品驗證。
圓形檢查
標簽的一個有趣的應用是將其用于輪詢。該術(shù)語是指作為其工作的一部分,需要訪問特定地點的人。例如,醫(yī)護人員挨家挨戶地檢查患者,或者保安每隔幾個小時檢查一次設(shè)施的不同門窗。
圓形檢查的其他變體可能是船舶、飛機和工業(yè)機械。這些示例中的任何一個都是需要檢查重要項目的實例。在許多情況下,這是一個不斷增長的領(lǐng)域,因為它與合規(guī)性證明有關(guān),可能與消防、健康和安全法規(guī)有關(guān)。例如,安全官員要求檢查船上救生艇、救生衣和滅火器的適用性。但是,簡單的清單并不能證明員工實際離開工作站檢查每個項目。附有NFC標簽后,員工需要親自到場,并使用智能手機或閱讀器在每個位置掃描標簽。合規(guī)性證明可以像讀取序列號進行物品識別一樣簡單,也可以通過添加身份驗證來更復雜。圖6所示為MAX66250 IC如何支持上述三種功能。
在清點標簽時,可以通過讀取所有設(shè)備固有的 64 位唯一標識符 (UID) 來滿足項目標識。生產(chǎn)信息,如使用壽命、校準等,可以在工廠或部署時寫入并保護標簽的用戶頁面。頁面數(shù)據(jù)可以使用計算的HMAC進行身份驗證以確認真實性,并傳輸?shù)桨踩脑品掌?。這提供了額外的責任,然后安全的云數(shù)據(jù)中心可以信任從設(shè)備讀取的信息。過期的可維修項目可以通過閱讀器或云服務以電子方式輕松識別和重新訂購。每個讀取點都是一個數(shù)字記錄,可以存儲在安全的云服務器上,該服務器提供自動合規(guī)性檢查和通知。傳輸?shù)皆贫说臄?shù)據(jù)可能包括來自智能手機的GPS坐標,以便更好地進行問責。
圖6.輪次檢查。
耗材壽命終止
許多一次性耗材在丟棄之前僅限于單次或多次使用。簡單的防篡改保護可以移除并放置在假冒設(shè)備上,并作為正品轉(zhuǎn)售。OEM 設(shè)備制造商希望避免過度使用或重復使用,因為安全問題、過早的設(shè)備故障和責任問題。
幸運的是,有幾種方法可以處理未經(jīng)授權(quán)的重用。一種方法是標簽的天線由脆紙和超薄蝕刻鋁天線制成。這只是另一種類型的NFC標簽,用于防止物品被重復使用,例如葡萄酒,雪茄和其他貴重物品。機械結(jié)構(gòu)的復雜性創(chuàng)造了一個防篡改標簽,當它從原始物品上取下時,它會破壞 IC 的天線。然而,這并不總是實用的,因為有時標簽根本不會被移除,而只是用消耗的材料補充物品。
如圖 7 所示,更好的方法是將某些內(nèi)容(過期值)安全地寫入實際的外圍設(shè)備標記,當主機設(shè)備讀取器讀取該標記時,指示該項目的生命周期已過期,不應信任或重用。MAX66250提供SHA3-HMAC保護命令功能,支持該安全寫入序列。使用經(jīng)過身份驗證的安全寫入而不是不安全的內(nèi)存寫入的原因是防止內(nèi)存被簡單地重置,然后重新投入使用或重復使用。
圖7.寫入可消耗的生命周期結(jié)束數(shù)據(jù)。
安全管理有限壽命外設(shè)的另一種方法是在NFC標簽IC中使用不可復位計數(shù)器。在工廠,OEM設(shè)備制造商首先為其使用次數(shù)設(shè)置所需的壽命計數(shù)器值。每次驗證和使用外設(shè)時,都會執(zhí)行計數(shù)器的讀取和遞減。當計數(shù)器的值為零時,生存期將過期。MAX66250提供不可復位、僅遞減計數(shù)器以支持此功能。
簡要提及其他應用
其他應用包括對象識別、訪問控制和資產(chǎn)標記。這些中的每一個都已經(jīng)存在了一段時間,使用二維碼、UHF RFID 標簽或 NFC 標簽等技術(shù)。對象標識是最簡單的,因為它用于標識與其他類似項目相比唯一的項目。訪問控制通過僅在安全機制批準時啟用“使用權(quán)”來指示允許誰訪問該項目。資產(chǎn)標記處理在項目移動時跟蹤項目的管理。
對于這些應用,NFC標簽在那些NFC閱讀器中具有明顯的優(yōu)勢,這些NFC閱讀器在我們大多數(shù)人手中非常普遍,智能手機鏈接到互聯(lián)網(wǎng)。USB閱讀器也隨時可用,以支持大多數(shù)計算機。二維碼也是如此,但它們的限制是安全性的弱點。NFC標簽和UHF RFID標簽具有很強的安全性。二維碼很容易被惡意欺騙。UHF RFID標簽更適合資產(chǎn)標簽,因為它們可以在更遠的距離工作,可以一次讀取整個托盤,但它們可用的閱讀器范圍有限。出于這些原因,最好考慮這些應用的NFC標簽。
ADI公司的NFC認證器特性
在剛才討論的應用中,ADI公司采用符合FIPS202標準的SHA3-256 MAX66250 IC的解決方案具有滿足這些情況的安全特性。從根本上說,IC接收輸入成分并計算HMAC結(jié)果。對于每種操作類型,不斷變化的成分會饋送到計算引擎中,從而為目標用例創(chuàng)建唯一的 HMAC。主機必須能夠計算外圍設(shè)備生成的相同 HMAC 以驗證其真實性。這種類型的機密使用是基于對稱密鑰的安全系統(tǒng)的要求之一。
質(zhì)詢和響應身份驗證 HMAC
MAX66250安全認證器主要用于NFC外設(shè)的質(zhì)詢和響應認證。在圖 8 中,主機發(fā)送隨機質(zhì)詢,并指示外圍設(shè)備計算來自質(zhì)詢、用戶內(nèi)存頁面數(shù)據(jù)和其他成分的 HMAC 響應,這些成分共同構(gòu)成使用輔助密鑰進行 SHA3 哈希處理的輸入消息。
圖8.質(zhì)詢和響應身份驗證 HMAC 的數(shù)據(jù)流。
計算完成后,MAX66250將其HMAC發(fā)送到主機進行驗證。然后,主機使用計算出的次級密鑰(即相同的共享密鑰)和MAX66250使用的相同輸入消息成分復制HMAC計算。從外設(shè)接收的 HMAC 匹配提供設(shè)備的身份驗證,因為只有真實的外設(shè)才能正確響應質(zhì)詢和響應序列。至關(guān)重要的是,挑戰(zhàn)必須基于隨機數(shù)據(jù)。永不改變的挑戰(zhàn)打開了使用記錄和重放的有效靜態(tài) HMAC 而不是由真實外設(shè)立即計算的 HMAC 重放攻擊的大門。
HMAC 身份驗證寫入
剛才討論的質(zhì)詢和響應身份驗證對主機的外圍設(shè)備進行身份驗證?,F(xiàn)在,將討論相反的情況,其中外圍設(shè)備對主機進行身份驗證以信任其數(shù)據(jù)以進行安全內(nèi)存寫入。這是非常理想的,因為外設(shè)的用戶存儲器(如易耗品壽命終止部分所述)可能包含指示是否應使用外設(shè)的敏感狀態(tài)數(shù)據(jù)。它還可能指示其他敏感狀態(tài)數(shù)據(jù),例如產(chǎn)品啟用了哪些功能或標簽持有者具有的訪問級別。由于這些原因,MAX66250外設(shè)中對EEPROM的寫訪問可以進行認證寫保護。真正的真實主機知道或可以計算輔助密鑰,并能夠生成有效的寫入訪問 HMAC。
為了完成將數(shù)據(jù)復制到EEPROM用戶頁面,外設(shè)要求請求主機首先使用輔助密鑰、新數(shù)據(jù)和從外設(shè)讀取的舊數(shù)據(jù)以及其他數(shù)據(jù)來計算有效的寫訪問HMAC。然后,主機發(fā)送經(jīng)過身份驗證的 SHA-3 寫內(nèi)存序列,其中包含此寫訪問 HMAC、新頁面數(shù)據(jù)和其他數(shù)據(jù)。MAX66250將接收到的數(shù)據(jù)存儲到緩沖器中,然后根據(jù)新數(shù)據(jù)、EEPROM存儲器頁中當前存在的舊數(shù)據(jù)、次級密鑰和其他數(shù)據(jù)計算出自己的HMAC,如圖9所示。
圖9.寫入訪問身份驗證 HMAC 的數(shù)據(jù)流。
MAX66250將寫訪問HMAC與其自身的外設(shè)HMAC結(jié)果進行比較。僅當兩個 HMAC 匹配時,新頁面數(shù)據(jù)才會從輸入緩沖區(qū)傳輸?shù)?EEPROM 中的目標。即使 HMAC 比較結(jié)果正確,也無法修改寫保護和未經(jīng)過身份驗證的寫保護的內(nèi)存頁。
密鑰生成和保護
MAX66250安全認證器的架構(gòu)允許將主密鑰直接寫入外設(shè),這通常是在受控和可信環(huán)境(例如,安全工廠)中一次性完成的事件。從主密鑰中,外設(shè)可以計算出一個唯一的輔助密鑰,如圖 10 所示,這是在最終應用程序的不受信任環(huán)境中完成的事件。此輔助密鑰將用于生成用于讀取頁面內(nèi)存的身份驗證 HMAC 或用于寫入訪問驗證的內(nèi)部 HMAC。主密鑰和輔助密鑰在設(shè)備中始終是安全的,并且始終受讀取保護。如果需要,主密鑰可以進行寫保護,從而防止更改密鑰。機密安裝和保護設(shè)置應始終在安全設(shè)施中完成。
圖 10.用于新秘密計算的最終應用程序數(shù)據(jù)流。
所用機密的質(zhì)量可以通過以下方式有效:
使用的主要機密應該是為安全工廠中的所有外圍設(shè)備安裝的相同隨機值。
在最終應用中使用時,主機和外設(shè)之間的共享密鑰通過在計算中包含IC的器件ROM ID號,將成為唯一的輔助密鑰。
在現(xiàn)場,外設(shè)在質(zhì)詢和響應身份驗證期間生成 HMAC。主機計算外圍設(shè)備的輔助密鑰,并計算其身份驗證 HMAC 以進行比較。由于使用了輔助密鑰,因此創(chuàng)建的身份驗證 HMAC 僅專用于該外圍設(shè)備,并提供額外的保護強度。
某些主機沒有特定的硬件來保護主密鑰。出于這個原因,值得一提的是,可以添加硬件來減輕這種負擔。ADI公司的MAX66301 IC將讀卡器和安全存儲器集成在一個器件中。使用此 IC,主機可以提高其安全性,因為主密鑰處于多層高級物理安全性之下,以提供安全存儲。
結(jié)論
隨著NFC應用在全球的普及,ADI公司的MAX66301和MAX66250 IC提供非接觸式解決方案,滿足主機和外設(shè)對正品驗證的要求,并提供高級功能,為壽命有限的外設(shè)提供安全管理功能。這些 IC 兼具先進的秘密存儲和 SHA3 的強大 HMAC 身份驗證,因此防偽的好處不容忽視。
審核編輯:郭婷
-
存儲器
+關(guān)注
關(guān)注
38文章
7522瀏覽量
164126 -
EEPROM
+關(guān)注
關(guān)注
9文章
1028瀏覽量
81804 -
nfc
+關(guān)注
關(guān)注
59文章
1627瀏覽量
180756
發(fā)布評論請先 登錄
相關(guān)推薦
評論