fieldtester.io

Verkkoon liittyminen ja tietoturva

OTAA ja ABP, laitteen avaimet ja miksi gateway ei voi lukea tietojasi.

OTAA ja ABP

OTAA (over-the-air activation): laite liittyy verkkoon join requestilla. Se tarvitsee kolme arvoa:

  • DevEUI: laitteen maailmanlaajuisesti yksilöllinen numero (16 heksadesimaalimerkkiä),
  • JoinEUI (aiemmin AppEUI): yksilöi join-palvelimen,
  • AppKey: salainen avain (32 heksadesimaalimerkkiä).

Näistä johdetaan jokaisessa liittymisessä uudet istuntoavaimet. OTAA on suositeltu tapa.

ABP (activation by personalization): istuntoavaimet ja laiteosoite ovat kiinteät. Laite ei koskaan liity verkkoon. Yksinkertaisempi, mutta vähemmän turvallinen ja altis virheille, kun kehyslaskurit joutuvat epätahtiin.

Salaus

LaiteGatewayVerkko-palvelinSovellus-palvelinSovellusfieldtester.ioHyötykuorma salattu AppSKeyllä päästä päähänallekirjoitettu verkkoavaimella, verkko tarkistaanäkee vainsalattuja tavujahyötykuormapuretaan tässä
Hyötykuorma pysyy salattuna laitteesta sovelluspalvelimelle asti. Gateway ja verkkopalvelin näkevät vain salattuja tavuja.

LoRaWAN käyttää AES-128-salausta kahdella tasolla:

  • NwkSKey (LoRaWAN 1.1:ssä useita verkkoavaimia): suojaa viestin muutoksilta; verkko tarkistaa sillä, että viesti on aito.
  • AppSKey: salaa hyötykuorman päästä päähän. Gateway ja verkko-operaattori näkevät vain salattuja tavuja; vain sovelluspalvelin purkaa niiden salauksen.

Kehyslaskuri

Jokaisessa viestissä on juokseva laskuri (FCnt). Verkko hylkää viestit, joiden laskurin arvon se on jo nähnyt. Tämä estää vanhojen pakettien toistamisen.

Jos ABP-laite käynnistyy uudelleen ja aloittaa taas nollasta, verkko hylkää sen viestit. OTAA:ssa laskuri alkaa alusta jokaisen liittymisen jälkeen, mikä on siinä oikein.