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