Co łączy sieć LoRaWAN i kryptowaluty?
| TechnikaLoRa/LoRaWAN to standard komunikacji bezprzewodowej, który jak się przewiduje odegra dużą rolę w szybko rozwijającym się Internecie Rzeczy, którego węzły mają być już wkrótce liczone w miliardach sztuk. W związku z nadziejami, jakie się w nim pokłada poszukuje się rozwiązań, które ułatwią upowszechnianie się tytułowych sieci. Przykład to najnowszy niestandardowy model biznesowy oparty na kryptowalutach, który przedstawiamy w artykule, poprzedzając jego opis krótką charakterystyką sieci LoRa/LoRaWAN.
Opisywana technologia transmisji została zaprojektowana od podstaw pod kątem potrzeb sieci Internetu Rzeczy, tzn. zoptymalizowano ją w zakresie ograniczonego zużycia energii, co ma wydłużyć czas pracy węzłów sieci zasilanych bateryjnie, kosztów realizacji, przepustowości i zasięgu. Zwłaszcza ten ostatni ma być jej wyróżnikiem. Zapewnić go ma protokół warstwy fizycznej LoRa (Long Range), w którym możliwość łączności na dużych odległościach ma gwarantować zastosowany schemat modulacji oparty na technice rozpraszania widma CSS (Chirp Spread Spectrum), w której strumień danych moduluje sygnał o liniowo wzrastającej częstotliwości. To rozwiązanie, już od dawna wykorzystywane przez wojsko, jest jednocześnie efektywne energetycznie, porównywalnie z modulacją FSK i zapewnia odporność na zakłócenia w kanale transmisji, zwiększając zasięg komunikacji. LoRa jest niskobudżetową implementacją tej techniki dedykowaną do użytku komercyjnego przede wszystkim w czujnikach i węzłach IoT wysyłających niewielkie ilości danych na znaczne odległości kilka razy na godzinę oraz działających w różnych środowiskach. Dopełnieniem protokołu warstwy fizycznej jest specyfikacja LoRaWAN definiująca protokół komunikacyjny i architekturę sieci, które wpływają na żywotność baterii, przepustowość sieci, jakość usługi transmisji, jej bezpieczeństwo oraz różnorodność możliwych do zrealizowania aplikacji.
Sieci LoRa/LoRaWAN w pigułce
Sieci LoRa/LoRaWAN pracują w topologii star-of-stars, w której bramki (gateways) pośredniczą w przekazywaniu danych pomiędzy urządzeniami końcowymi, a centralnym serwerem sieciowym w chmurze. Bramy komunikują się z nim korzystając ze standardowego połączenia internetowego za pośrednictwem sieci komórkowej, Ethernet, satelitarnej lub Wi-Fi, konwertując pakiety radiowe na pakiety IP i odwrotnie. Węzły nie są związane z konkretną bramą, a dane przez nie nadawane mogą być odbierane przez wiele bramek. Za filtrowanie nadmiarowo odebranych pakietów i inne funkcje zarządzania siecią i kontroli jej bezpieczeństwa odpowiada serwer sieciowy. Dzięki temu, że dane nie są przekazywane pomiędzy bramkami tylko bezpośrednio wysyłane do serwera łatwo można zrealizować śledzenie węzłów, co jest jedną z głównych docelowych aplikacji IoT.
Jeżeli chodzi o żywotność baterii, to pomaga ją wydłużyć to, że węzły w sieciach LoRa/LoRaWAN komunikują się asynchronicznie, gdy mają dane gotowe do wysłania. Dzięki temu, że nie muszą się okresowo synchronizować z siecią uzyskuje się znaczącą oszczędność energii.
Wymagana przepustowość sieci w sieciach LoRa/LoRaWAN jest osiągana dzięki: wykorzystaniu techniki adaptacji szybkości transmisji danych i wyposażeniu bramek w wielozakresowy układ nadawczo-odbiorczy, dzięki któremu mogą odbierać jednocześnie dane na wielu kanałach. Pierwsza metoda pozwala z kolei na wykorzystanie sytuacji, w której przy dobrej jakości połączenia węzeł – bramka nie ma powodu, aby używając niższej prędkości transmisji długo "zajmował" on łącze. Zamiast tego, zwiększając szybkość transmisji, może skrócić czas nadawania i je szybciej "zwolnić".
Korzystnie wpływa to również na żywotność baterii węzła. Ponadto, dzięki właściwościom sygnałów, dla których zastosowano modulację CSS, brama może odbierać sygnały o różnej prędkości transmisji na tym samym kanale w tym samym czasie. Zapewnia to również dużą skalowalność sieci.
Klasy węzłów i bezpieczeństwo
W odpowiedzi na różne potrzeby aplikacji końcowych w sieciach LoRa/ LoRaWAN wprowadzono klasy węzłów: A, B oraz C. W pierwszych możliwa jest dwukierunkowa komunikacja, w której po transmisji w łączu "w górę" następują dwa krótkie okna czasowe odbioru danych w łączu "w dół". Jeśli serwer będzie usiłował nawiązać połączenie z węzłem klasy A w dowolnym innym momencie będzie musiał poczekać na szczeliny po kolejnej transmisji "w górę". Jest to opcja najbardziej energooszczędna w przypadku, jeżeli odbiór danych z serwera jest wymagany tylko w takim przypadku, na przykład dla otrzymania potwierdzenia odbioru danych przesłanych w "górę".
W węzłach klasy B też po każdorazowym nawiązaniu transmisji "w górę" otwierane są okna czasowe. W ich przypadku jednak, poza tymi losowo dostępnymi kanałami, na których węzeł nasłuchuje, okresowo i planowo są otwierane dodatkowe okna transmisyjne. Narzuca to wymóg synchronizacji węzła z serwerem za pośrednictwem bramki. Węzły klasy C natomiast mają stale otwarte okna odbioru, zamykane tylko podczas nadawania.
Kwestię bezpieczeństwa w sieciach LoRa/LoRaWAN rozwiązano dwupoziomowo, w warstwach sieci oraz aplikacji. Pierwsza gwarantuje autentyczność węzła w sieci, zaś zabezpieczenia aplikacji, że operator sieci nie będzie miał dostępu do danych użytkownika końcowego. Jest to realizowane z wykorzystaniem szyfrowania AES z wymianą kluczy z identyfikatorem IEEE EUI 64.
Co ma do tego kryptowaluta?
Jednym z głównych wyzwań stojących przed operatorami sieci LoRa/ LoRaWAN, jak i innych sieci, szczególnie tych do Internetu Rzeczy ze względu na wymagania pod względem skali tego przedsięwzięcia, jest budowa infrastruktury sieciowej. Konieczne są oczywiście odpowiednio duże nakłady finansowe, a poza tym wysiłek i czas, przede wszystkim na uzyskanie pozwoleń na rozmieszczenie hotspotów na budynkach czy słupach ulicznych. To może zniechęcać chociaż z drugiej strony potencjał Internetu Rzeczy jest kuszący. Odpowiedzią na ten dylemat okazała się Helium, czyli globalna rozproszona sieć hotspotów, które zapewniają publiczny dostęp do sieci LoRa/LoRaWAN węzłom IoT z nią kompatybilnym. To, co czyni to rozwiązanie wyjątkowym, to genialny w swej prostocie sposób rozliczania się z prywatnymi osobami, które kupią, zainstalują (w domu, w pracy), a potem będą nadzorować hotspoty. W tym celu wykorzystuje się kryptowalutę.
Mimo że na pierwszy rzut oka pomysł skomercjalizowania hotspotów wydaje się nietypowy, to działa, a wykorzystanie technologii blockchain w zarządzaniu globalną siecią bezprzewodową okazało się strzałem w dziesiątkę – pod koniec 2021 roku na stronie internetowej projektu (https://www.helium.com) można było przeczytać, że łącznie w 149 krajach w 27,4 tys. miast działało ponad 341 tys. hotspotów. W sieci Helium rozliczenia prowadzone są w HNT, kryptowalucie blockchaina Helium. Dalej przypominamy, czym jest blockchain i wyjaśniamy, co wyróżnia ten w wersji Helium.
Czym jest blokchain? Czym jest PoC?
Blockchain to system księgowania kryptowalut. W praktyce jest to rozproszona baza danych, której wyróżnikiem jest decentralizacja. Dzięki istnieniu wielu kopii, przechowywanych przez dużą liczbę niezależnych użytkowników, zapewniona jest ochrona przed utratą informacji o dokonanych transakcjach, jak również praktycznie niemożliwe, bez zaangażowania w tym celu olbrzymich mocy obliczeniowych, jest manipulowanie danymi. Bezpieczeństwo i niemożność sfałszowania danych są też gwarantowane dzięki wykorzystaniu kryptografii i temu, że dane o transakcjach są łączone w bloki. Te są tworzone sekwencyjnie i wzajemnie ze sobą powiązane, dzięki czemu ich nieautoryzowana modyfikacja jest niewykonalna.
Blockchain Helium wykorzystuje nowatorski algorytm Proof of Coverage (PoC). Pozwala on na zweryfikowanie, czy hotspoty znajdują się w miejscu i zapewniają zasięg sieci bezprzewodowej deklarowane przez ich operatorów. Sprawdza się to wykorzystując mechanizm PoC Challenge. Zebrane w ten sposób "dowody" są przechowywane w blockchainie Helium.
"Challenge" to dyskretna jednostka pracy w Proof of Coverage. Do tej pory w blockchainie Helium wydano oraz przetworzono dziesiątki milionów wyzwań. Z każdym kolejnym blockchain rejestruje więcej danych o jakości sieci. Dalej wyjaśniamy na czym polega challenge.
Czym jest challenge?
Hotspoty mogą brać udział w PoC Challenge w różnym charakterze. Wyróżnić można trzy typy ról. Challenger to hotspot, który tworzy i rozsyła pakiety testowe. Transmitter jest celem weryfikacji, który powinien rozesłać dalej odebrane pakiety testowe. Witness to z kolei hotspot znajdujący się na tyle blisko transmittera, że jest w stanie pakiety testowe odebrać i o tym zaraportować.
Challengery za rozsyłanie wyzwań są nagradzane, zarabiając w kryptowalucie HNT. W tym celu węzeł, który akurat pełni taką rolę najpierw generuje parę kluczy, publiczny oraz prywatny, które będą identyfikatorami danego challenga. Równocześnie blokchain generuje losowy numer, który wskazuje cel weryfikacji wśród wszystkich hotspotów w sieci.
Gotowy pakiet testowy jest przesyłany do transmittera za pośrednictwem sieci Helium peer-to-peer. Ten rozszyfrowuje nagłówek pakietu, korzystając ze swojego klucza prywatnego i klucza publicznego aktywnego wyzwania, który może sprawdzić w blockchainie i natychmiast retransmituje go dalej w sieci Helium. Nie ma on określonego odbiorcy, a zatem każdy hotspot w zasięgu transmisji transmittera może go odebrać, co zgłasza w blockchainie.
Kiedy challenger otrzyma kompletny zestaw pokwitowań od hotspotów typu witness i transmitter albo kiedy upłynie określony czas od początku wyzwania, uznaje się je za zakończone. Wówczas challenger zgłasza w blockchainie potwierdzenie jako transakcję, którą poddaje się weryfikacji.
Co wyróżnia LoRaWAN on Helium?
Chociaż sieć Helium LoRaWAN jest zgodna ze specyfikacją sieci LoRaWAN, niektóre jej elementy realizuje inaczej. Przykład to serwer sieciowy LNS (LoRaWAN Network Server). W "zwykłych" sieciach LoRaWAN centralny lub regionalny LNS jest zarządzany przez jeden podmiot. W sieci Helium, której znakiem rozpoznawczym jest decentralizacja, zdecydowano, że nie tylko bramy (hotspoty) będą należeć do i będą zarządzane przez prywatnych operatorów, ale też takie same podejście zostanie zastosowane w przypadku LNS. Warto tu podkreślić, że mimo to Helium LoRaWAN jest kompatybilna ze wszystkimi urządzeniami obsługującymi LoRaWAN.
Co więcej, w związku z dynamicznym rozwojem projektu Helium, interesują się nim kolejni publiczni i prywatni dostawcy serwerów sieci LoRaWAN chcący rozszerzyć swój zasięg bez wdrażania własnej infrastruktury. W tym celu korzystają z roamingu. Oznacza to w praktyce, że z publicznej sieci budowanej przez społeczność Helium korzystają urządzenia LoRaWAN podłączone do innych sieci, a operatorzy hotspotów Helium otrzymują wynagrodzenie w HNT za routing ich pakietów.
Podsumowanie
Sieć Helium jest zbudowana prawie w całości na kodzie open source, każdy chętny zatem może wnieść wkład w jego rozwój. By z kolei dołączyć do projektu jako operator hotspota, należy się zaopatrzyć w model z listy tych kompatybilnych (https://www.helium.com/mine-#hotspots).
Tokeny HNT w modelu biznesowym, na którym oparto Helium LoRaWAN zarabiać można za transfer danych za pośrednictwem hotspotu lub udział w challengach. Co więcej, w związku z popularnością tego rozwiązania w planach jest jego rozszerzenie, które będzie wykorzystywać blockchain Helium w organizacji rozproszonej sieci hotspotów w technologii 5G. Warto zatem z pewnością śledzić te i ewentualne przyszłe inicjatywy w ramach projektu Helium.
Monika Jaworowska