Присъединяване и сигурност
OTAA и ABP, ключовете на едно устройство и защо шлюзът не може да прочете вашите данни.
OTAA и ABP
OTAA (over-the-air activation, активиране по радиото): устройството се присъединява със заявка за присъединяване (join request). То има нужда от три стойности:
- DevEUI: глобално уникалният номер на устройството (16 шестнадесетични знака),
- JoinEUI (по-рано AppEUI): идентифицира сървъра за присъединяване,
- AppKey: секретният ключ (32 шестнадесетични знака).
От тях при всяко присъединяване се извеждат нови сесийни ключове. OTAA е препоръчителният начин.
ABP (activation by personalization, активиране чрез персонализация): сесийните ключове и адресът на устройството са фиксирани. Устройството никога не се присъединява. По-просто, но по-малко сигурно и податливо на грешки, когато броячите на кадрите се разминат.
Криптиране
LoRaWAN използва AES-128 на две нива:
- NwkSKey (няколко мрежови ключа в LoRaWAN 1.1): защитава съобщението срещу промени; мрежата го използва, за да провери, че съобщението е истинско.
- AppSKey: криптира полезните данни от край до край. Шлюзът и операторът на мрежата виждат само криптирани байтове; само сървърът на приложението ги декриптира.
Брояч на кадрите
Всяко съобщение носи пореден брояч (FCnt). Мрежата отхвърля съобщения с брояч, който вече е виждала. Така никой не може да изпрати повторно стари пакети.
Ако ABP устройство се рестартира и започне отново от 0, мрежата отхвърля съобщенията му. При OTAA броячът започва отначало след всяко присъединяване, което там е правилно.