blog-details

V LoRaWAN sieti sa prenos informácií uskutočňuje vzduchom, podobne ako v sieťach mobilných operátorov a WiFi sieťach. Sú teda náchylnejšie na možnosť neoprávneného odchytávania údajov, v porovnaní so sieťami, kde sa údaje prenášajú prostredníctvom fyzickej kabeláže.

Ako je to teda s ich zabezpečením? Ako funguje overovanie zariadení a šifrovanie údajov v LoRaWAN sieťach?

Vzájomné overovanie je zavedené už počas pripojenia koncového zariadenia k LoRaWAN sieti, vďaka čomu budú k sieti pripojené iba autorizované zariadenia.

Pre LoRaWAN MAC príkazy a payloady je zabezpečená ochrana pôvodu, integrita a šifrovanie. V kombinácii so vzájomným overovaním dosiahneme to, že sieťová prevádzka:

  • nebude pozmenená,
  • pochádza z legitímneho zariadenia,
  • je nezrozumiteľná v prípade odpočúvania,
  • nebude odchytená a pozmenená treťou stranou.

 

Šifrovanie komunikácie

LoRaWAN sieť, ako jedna z mála IoT sietí, implementuje end-to-end šifrovanie pre payloady, vymieňané medzi koncovými zariadeniami a aplikačnými servermi. V niektorých tradičných, celulárnych sieťach je síce prevádzka šifrovaná cez vzdušné rozhranie, no v základnej sieti operátora sa prenáša ako obyčajný text. Koncoví používatelia sú tak nútení vybrať, nasadiť a spravovať ďalšiu bezpečnostnú vrstvu (zvyčajne implementovanú pomocou niektorého typu zabezpečenia šifrovania VPN alebo aplikačnej vrstvy, ako je TLS). Tento prístup nie je v LoRaWAN sieťach vhodný, nakoľko dodatočné bezpečnostné vrstvy značne zvyšujú spotrebu energie, zložitosť infraštruktúry a náklady.

 

Bezpečnostné mechanizmy uvedené vyššie sa spoliehajú na osvedčené a štandardizované kryptografické algoritmy AES. Tieto algoritmy, schválené NIST (National Institute of Standards and Technology),  sú všeobecne prijímané ako jeden z najlepších bezpečnostných postupov pre šifrovanie komunikácie v sieti. Zabezpečenie LoRaWAN sietí používa AES kombinovaný s niekoľkými režimami prevádzky:

  • CMAC (Cipher-based Message Authentication Code) na ochranu integrity,
  • CTR na šifrovanie.

Každé koncové zariadenie je personalizované 128-bitovým kľúčom AES (nazývaným AppKey) a globálne jedinečným identifikátorom (DevEUI založeným na EUI-64), ktoré sa používajú počas procesu autentifikácie zariadenia. Na pridelenie identifikátorov EUI-64 musí mať žiadateľ pridelený jedinečný identifikátor OUI (Organizationally Unique Identifier) od registračného orgánu IEEE (Institute of Electrical and Electronics Engineers).

LoRaWAN siete sú identifikované 24-bitovým, globálne unikátnym identifikátorom, prideleným LoRa alianciou.

Payloady LoRaWAN aplikácií sú vždy šifrované spôsobom end-to-end medzi koncovým zariadením a aplikačným serverom. Ochrana integrity je zabezpečená tzv. hop-by-hop spôsobom:

  • jeden skok vzduchom prostredníctvom ochrany integrity protokolom LoRaWAN siete,
  • ďalší skok medzi sieťou a aplikačným serverom pomocou riešení zabezpečeného prenosu, ako sú napr. HTTPS a VPN.

 

Autentifikácia IoT zariadenia

LoRaWAN sieť podporuje dve metódy pripojenia zariadenia k sieti:

  • OTAA (Over The Air Activation) „Aktivácia vzduchom“
  • ABP (Activation By Personalization) „Aktivácia pomocou personalizácie“

Pri použití OTAA sa, po zadaní požiadavky na spojenie, odošle žiadosť o pripojenie koncového zariadenia do siete. Sieť po prijatí tejto požiadavky overí identifikátor zariadenia (AppEUI) a aplikačný kľúč (AppKey), ktoré poskytuje koncové zariadenie. Ak sú AppEUI a AppKey platné, odošle sa správa o prijatí spojenia späť do koncového zariadenia.

OTAA alebo tiež spájacia sekvencia overuje, že koncové zaradenie ako aj sieť majú rovnaký AppKey. Toto overenie je zabezpečené výpočtom AES CMAC, použitím AppKey na koncovom zariadení a sieti za účelom zabezpečenie integrity a autenticity prenášaných správ.

Následné sú odvodené dva kľúče pre:

  • zabezpečenie ochrany integrity a šifrovania LoRaWAN MAC príkazov a payloadu (Network Session Key - NwkSKey)
  • end-to-end šifrovanie payloadu (Application Session Key - AppSKey).

 

NwkSKey je distribuovaný do LoRaWAN siete na zabezpečenie resp. overenie autenticity a integrity paketov. AppSKey je distribuovaný do aplikačného servera na zabezpečenie šifrovania a dešifrovania payloadu.

Pri použití ABP neexistuje žiadna inicializačná komunikácia medzi koncovým zariadením a sieťou. Po pripojení do siete môže zariadenie okamžite začať s odosielaním údajov. Šifrovacie kľúče AppSKey a NwkSKey sú nastavené jednorazovo v koncovom zariadení a na sieťovom serveri, musia byť na oboch stranách rovnaké.

Odporúčaným a bezpečnejším spôsobom pripojenia koncového zariadenia k LoRaWAN sieti je metóda OTAA, nakoľko kľúče AppSKey a NwkSKey sú generované pri každom pripojení k sieti na základe AppEUI a AppKey.

 

Ochrana integrity údajov a dôveryhodnosti

LoRaWAN komunikácia je chránená pomocou dvoch kľúčov relácie. Každý payload je šifrovaný pomocou AES CTR, nesie počítadlo rámcov (zabraňuje prehratiu paketov) a kód integrity správy (MIC) vypočítaný s AES CMAC (zabraňuje neoprávnenej manipulácii s paketmi).

 

Fyzické zabezpečenie LoRaWAN zariadení

AppKey, NwkSKey a AppSKey sú trvalo uložené na koncovom zariadení a ich ochrana závisí od fyzického zabezpečenia zariadenia. Ak je zariadenie vystavené fyzickým hrozbám, môžu byť kľúče chránené v úložisku odolnom proti neoprávnenej manipulácii (Secure Element), kde bude mimoriadne ťažké ich extrahovať.