LoRaWAN: ¿OTAA o ABP?

Cada recién llegado a LoRaWAN eventualmente necesita saber cómo obtener datos de un dispositivo LoRaWAN. Si aún estás aceptando LoRaWAN, echa un vistazo a esta suave introducción al panorama general de cómo y por qué de LoRaWAN. Si está listo para ensuciarse las manos, tarde o temprano se enfrentará a términos como OTAA , ABP , DevEUI y AppNonce . Probablemente irás en busca de respuestas y serás bastante decepcionado.

Aquí, he intentado poner todos los conceptos que necesitarás para envolver tu cabeza alrededor de este lío aparentemente confuso en un solo lugar. Espero que esta ventanilla única, bastante sucinta, te ahorre meses de trabajo frustrante en la búsqueda de datos que se encuentran dispersos en otros lugares. No vale la pena que los conceptos descritos aquí solo se apliquen a LoRaWAN 1.0.x, no al próximo LoRaWAN 1.1. Y antes de recibir cualquier nitpickers: este artículo está deliberadamente incompleto: quería centrarme en los conceptos importantes que necesitarás para comenzar.

Los datos de LoRaWAN comienzan su vida como una transmisión inalámbrica de radio LoRa desde el dispositivo a la puerta de enlace. Allí se envía a través de un backhaul de comunicaciones (como celular o Ethernet) a un servidor de red en la nube.

El Servidor de red realiza las funciones necesarias para que LoRaWAN funcione antes de reenviar los datos al Servidor de aplicaciones apropiado para su procesamiento *. Los datos se cifran a lo largo de todo el viaje, primero mediante una clave de sesión de red ( NwkSKey ) y luego a través de una clave de sesión de aplicación ( AppSKey ).

* Tenga en cuenta que en realidad hay otro servidor llamado Join Server que asiste a los servidores de red y de aplicaciones durante el proceso de unión. Proporciona una funcionalidad de seguridad importante para los fabricantes y fabricantes de dispositivos, pero complica innecesariamente la imagen aquí.

P. ¿Pero de dónde vienen NetSKey y AppSKey?
A. Depende del método de «activación»: OTAA o ABP

OTAA: Activación por el aire
En OTAA, un dispositivo recibe una DevEUI , una AppEUI y una AppKey . Lo suficientemente confuso , el AppKey se utiliza para generar las claves de sesión, NwkSKey y AppSKey . Así que ten cuidado con los astutos o te confundirás de verdad. Para activarlo, el dispositivo envía una solicitud de combinación y utiliza la respuesta de combinación para derivar las claves de sesión NwkSKey y AppSKey . El dispositivo puede almacenar esas claves y continuar usándolas para comunicarse. Si se pierden o la red decide caducar, el dispositivo debe volver a unirse para generar nuevas claves.

Pros:
Las claves de sesión solo se generan cuando son necesarias, por lo que no se pueden comprometer antes de la activación.
Si el dispositivo cambia a una nueva red, puede volver a unirse para generar las nuevas claves, en lugar de tener que volver a programarlas.
Las configuraciones de red como RxDelay y CFList pueden especificarse en el momento de la unión.
Contras:
Se requiere un esquema para preprogramar cada dispositivo con un DevEUI y AppKey únicos , y el AppEUI correcto .
El dispositivo debe admitir la función de unión y poder almacenar claves generadas dinámicamente.

ABP: Activación Por Personalización
En ABP (Activación por personalización), un dispositivo no necesita un DevEUI , un AppEUI o un AppKey . En su lugar, las claves de sesión NwkSKey y AppSKey están preprogramadas en el dispositivo y el dispositivo está registrado previamente en la red. Cuando el dispositivo desea comunicarse, lo hace utilizando las claves de sesión sin tener que usar primero un procedimiento de unión.

Pros:
El dispositivo no necesita la capacidad o los recursos para realizar un procedimiento de unión.
El dispositivo no necesita decidir si una unión es necesaria en algún momento, ya que nunca es necesaria.
No es necesario ningún esquema para especificar un DevEUI o AppKey único .
Contras:
El esquema para generar NwkSKey y AppSKey debe garantizar que sean únicos, para evitar una violación generalizada si un solo dispositivo se ve comprometido. Y el esquema debe ser seguro para evitar que las claves sean obtenidas o derivadas por partes deshonestas.
Si el dispositivo se ve comprometido en cualquier momento, incluso antes de la activación, es posible que se descubran las claves.
La configuración de red no se puede especificar en el momento de la unión.
Los eventos que justifican un cambio de claves (por ejemplo, el traslado a una nueva red, el dispositivo comprometido o la caducidad de las claves) requieren una reprogramación del dispositivo.

P. Entonces, ¿uso OTAA o ABP?
Con cuidado, cualquiera de los métodos puede ser tan seguro y efectivo como el otro. Pero a menos que tenga requisitos particulares, OTAA es la forma más fácil de lograr cierta seguridad y flexibilidad básicas cuando llega el momento de la implementación. Es más probable que ABP sea útil en la etapa de creación de prototipos cuando necesita un control completo sobre los dispositivos activados. De cualquier manera, recuerde que, a menos que esté realizando una unión OTAA antes de cada mensaje, debe mantener actualizado su contador de fotogramas para que los mensajes subsiguientes lleguen.

Traducido con Google Translator

Fuente: https://www.newieventures.com.au/blogtext/2018/2/26/lorawan-otaa-or-abp

Compartido por Alex Corvis via Twitter

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *