關(guān)于LoRaWAN安全性的十四個(gè)經(jīng)典問答
在互聯(lián)網(wǎng)和物聯(lián)網(wǎng)的世界,安全始終是人們最為關(guān)心的問題之一。LPWAN領(lǐng)域發(fā)展較為成熟的LoRaWAN在安全性方面有特殊的考慮和設(shè)定,以下是安全方面的若干問題與解答。
1. LoRaWAN安全機(jī)制怎么進(jìn)行說明的?
所有的安全機(jī)制在LoRa的協(xié)議中有具體說明,目前LoRaWAN標(biāo)準(zhǔn)協(xié)議1.0和1.0.2已通過官方渠道發(fā)布,可以下載。1.1還在修訂中。
2. LoRa的安全機(jī)制是如何保證LoRaWAN網(wǎng)絡(luò)的安全操作的?
LoRaWAN支持源頭認(rèn)證、完整性和MAC架構(gòu)重發(fā)保護(hù)。LoRaWAN同時(shí)支持終端設(shè)備和應(yīng)用服務(wù)器之間應(yīng)用載荷的端對端加密。LoRaWAN支持MAC指令加密的操作。所有這些過程都依賴于高級加密標(biāo)準(zhǔn)(AES)以及128位的密鑰算法。
3.兩種入網(wǎng)方式ABP (AcTIvaTIon-by-PersonalizaTIon)和OTAA(Over-the-Air-AcTIvation)在安全方面有什么區(qū)別?
LoRaWAN使用靜態(tài)根密鑰和動(dòng)態(tài)生成的會(huì)話秘鑰。
根密鑰只存在于OTAA的終端設(shè)備上。當(dāng)OTAA終端設(shè)備在網(wǎng)絡(luò)中執(zhí)行連接過程時(shí),它們被用于生成會(huì)話密鑰。OTAA終端設(shè)備被安裝后,將能夠連接到與密鑰服務(wù)器有接口的任何網(wǎng)絡(luò)(在1.1版本的協(xié)議中稱為連接服務(wù)器JoinServer),最終設(shè)備與此關(guān)聯(lián)。終端設(shè)備利用會(huì)話秘鑰來保護(hù)空中通信。
ABP終端設(shè)備不配備根密鑰。取而代之,它們會(huì)為預(yù)先選擇的網(wǎng)絡(luò)提供一組會(huì)話密鑰。而且 ABP終端設(shè)備整個(gè)生命周期內(nèi)會(huì)話密鑰保持不變。
所以不斷更新的會(huì)話密鑰使得OTAA設(shè)備更適合需要更高級別安全性的應(yīng)用場景。
4.LoRaWAN中使用的是何種標(biāo)識碼?
每個(gè)終端設(shè)備通過一個(gè)64位的全球唯一識別的EUI標(biāo)識符進(jìn)行標(biāo)識,標(biāo)識符由設(shè)備制造商分配。而EUI標(biāo)識符的分配者需要從IEEE相關(guān)的登記機(jī)構(gòu)獲取權(quán)限。
負(fù)責(zé)管理終端驗(yàn)證的連接服務(wù)器(Join Server)也會(huì)被一個(gè)全球唯一識別的64位EUI標(biāo)識符進(jìn)行標(biāo)識,它由這個(gè)服務(wù)器的所有者進(jìn)行分配。
在開放網(wǎng)絡(luò)中漫游的私有LoRaWAN網(wǎng)絡(luò)通過一個(gè)由LoRa聯(lián)盟分配的24位全球唯一的標(biāo)識符進(jìn)行標(biāo)識。當(dāng)一個(gè)終端設(shè)備成功入網(wǎng)后,它會(huì)從網(wǎng)絡(luò)服務(wù)器獲得一個(gè)32位的暫時(shí)設(shè)備地址。
5.我可以隨機(jī)的給我的設(shè)備或者網(wǎng)絡(luò)分配標(biāo)識符么?
標(biāo)識的分配要遵循第四點(diǎn)提出的規(guī)定,如果隨意分配會(huì)引起不必要的混亂。
6.所有的終端設(shè)備在出廠時(shí)候分配的默認(rèn)秘鑰都是相同的么?
當(dāng)然不是。在LoRaWAN中沒有默認(rèn)密鑰或者默認(rèn)密碼這樣一個(gè)概念。 所有終端設(shè)備出廠時(shí)都分配了一個(gè)默認(rèn)的唯一識別碼。所以從一個(gè)設(shè)備中提取到的秘鑰并不會(huì)對其他的設(shè)備產(chǎn)生影響。
7.使用的密鑰是什么類型的?
一個(gè)OTAA的終端設(shè)備配備了一個(gè)根密鑰,稱為AppKey。從網(wǎng)絡(luò)的角度,APPKey由Join Server提供,Join Server和網(wǎng)絡(luò)服務(wù)器可以在一起也可以分開。一個(gè)ABP終端配備了兩個(gè)會(huì)話密鑰(應(yīng)用會(huì)話密鑰APPSKey和網(wǎng)絡(luò)會(huì)話密鑰NwkSKey),其中NwkSkey由網(wǎng)絡(luò)服務(wù)器提供,AppSkey由應(yīng)用服務(wù)器提供。
8.使用了何種加密算法?
在RFC4493中定義的AES-CMAC算法用于原始身份認(rèn)證和完整性保護(hù)。IEEE 802.15.4-2011定義的AES-CCM*用于加密。
9.LoRaWAN是如何防止竊聽的?
MAC的有效載荷在終端和網(wǎng)絡(luò)之間傳輸時(shí)被加密。此外,終端設(shè)備和應(yīng)用服務(wù)器之間的應(yīng)用載荷也進(jìn)行了加密。這確保了只有持有密鑰并且被授權(quán)的實(shí)體才能夠訪問純文本內(nèi)容。
10.LoRaWAN如何防止欺騙?
MAC有效載荷原始的身份認(rèn)證和完整性保護(hù)通過終端設(shè)備和網(wǎng)絡(luò)之間的信息完整性代碼(MIC)可以實(shí)現(xiàn)。這確保了只有具有完整密鑰且被授權(quán)實(shí)體(終端、網(wǎng)絡(luò)服務(wù)器)才能夠生成有效的幀。
11.LoRaWAN如何避免重傳?
MAC有效載荷的完整性保護(hù)利用幀計(jì)數(shù)器,以確保接收者不會(huì)再次接收一個(gè)已經(jīng)收到的幀。
12.如何確保后端接口的安全性?
后端接口包括網(wǎng)絡(luò)服務(wù)器中、Join Server 和應(yīng)用程序服務(wù)器之間的控制和數(shù)據(jù)信號。HTTPS和VPN技術(shù)被應(yīng)用在這幾部分之間通信的安全性確認(rèn)中,使用方式和其他通信系統(tǒng)中大致相同。后端接口不在LoRaWAN協(xié)議范圍內(nèi)。
13. LoRaWAN支持硬件的安全么?
通終端設(shè)備和服務(wù)器平臺(tái)的硬件安全性與包括LoRaWAN在內(nèi)的通信協(xié)議沒有直接的關(guān)系。
14.如果面臨一個(gè)安全威脅我該怎么辦?
總體上來說,一個(gè)安全性威脅會(huì)來自協(xié)議本身(如缺少重傳保護(hù))、實(shí)現(xiàn)過程(如設(shè)備密鑰的提取)、部署過程(如防火墻缺失)或者三者的結(jié)合。所以當(dāng)面臨一個(gè)安全威脅時(shí),首先要找到它的源頭。實(shí)現(xiàn)過程會(huì)涉及到制造商,部署過程會(huì)涉及到運(yùn)營商。