Efento blog

Efento Smart Updates – szoftverfrissítés az IoT eszközökön

Az IoT-megoldást szolgáltatók számára kihívás egy távoli szoftverfrissítési módszer kifejlesztése a világszerte található több százezer akkumulátorral működtetett eszközön. Az Efento megoldotta ezt a problémát az Efento intelligens frissítéseknek az eszközbe történő telepítésével.
Ennek a megoldásnak a lényege a biztonságos (titkosított) eszközökhöz történő továbbítás, a forráskódnak csak az új verzióban módosított részeivel.

Számos IoT megoldás szolgáltatója lehetővé teszi a szoftver új verziójának távoli átvitelét a már telepített eszközökre. A klasszikus Over the Air (OTA) frissítés azonban nagyon zavaró, amennyiben több millió akkumulátorral működő és celluláris hálózatokon alapuló (NB-IoT és LTE-M) érzékelőt kell frissíteni. Az átvitt adatok mennyisége nemcsak a hálózat destabilizációját okozhatja, hanem súlyosan megterhelheti azokat az eszközöket is, amelyeket a rövid átviteli munkamenetekre optimalizáltak.

Ezeknek a problémáknak a megoldására az Efento kifejlesztette az Efento Smart frissítéseket – az IoT-eszközök szoftverfrissítési rendszerét, amely kizárólag a szoftverváltozások küldésére szolgál az eszközökre. Ennek a frissítési módszernek számos előnye van:

  • az eszközre továbbított adatmennyiség többször is csökkent a klasszikus OTA frissítéssel összehasonlítva,
  • a hálózati terhelés minimalizálva van,
  • garantált az elemek hosszabb élettartama az eszközökben,
  • a mérési rendszert nem destabilizálja a hosszú frissítési folyamat során a mérések hiánya.

Fontos szempont, hogy a szoftver továbbítása az IoT eszközökre titkosítva van, és a kiszolgáló hitelesítésének és a küldött adatok ellenőrzési mechanizmusának köszönhetően a szoftverfrissítés teljesen biztonságos.

Hogyan működik az Efento Smart Updates távoli szoftverfrissítés:

  1. A szoftver új verziójával kapcsolatos munka befejezése után elkészítünk egy különálló fájlt, amely különbség a szoftver új és jelenlegi verziója között van
  2. A differenciálfájlt elküldik a felhőkiszolgálónak és az IoT-eszközök értesítést kapnak a rendelkezésre álló frissítésről
  3. Az eszközök kapcsolódnak a szerverhez, a csatlakozó felek egyeztetik a kulcsot, amelyet a kommunikáció titkosításához használnak. A kiszolgáló titkosított frissítési ellenőrző összesítést küld az ECDSA algoritmusnak megfelelően. Az aláírás alapján az IoT eszköz ellenőrzi a frissítés hitelességét
  4. A frissítések titkosítva kerülnek továbbításra az eszközre
  5. Az adatátvitel befejezése után az eszköz új szoftver verziót készít, amely a jelenlegi verziót és egy differenciálfájlt tartalmazza, majd kiszámítja a frissítés ellenőrző összegét.
  6. Ha az eszköz által kiszámolt ellenőrző összeg megegyezik a szerver által küldött ellenőrző összeggel, akkor a szoftver frissül