fbpx
goodfirms LOGO Created with Sketch.









    Już nas opuszczasz?

    Napisz czego potrzebujesz, a nasi eksperci powiedzą Ci jak to zrobić, ile to kosztuje i na kiedy będzie gotowe.








      Internet of Things

      Labyrinth Drives

      Aplikacja mobilna do bezpiecznego sterowania dyskami SSD
      Jak dostarczyć w pełni funkcjonalną aplikację komunikującą się z innowacyjnym urządzeniem IoT, pracując jedynie na symulatorze docelowego sprzętu? Poznaj case study Labyrinth Drives - startupu z branży bezpieczeństwa informacji wykorzystującego technologię Internet of Things.

      Wstęp | System zarządzania dyskami SSD 

      Labyrinth Drives to startup rozwiązujący problem bezpieczeństwa dysków przenośnych. W dobie pracy zdalnej coraz częściej zdarzają się podróże z wrażliwymi danymi, które mogą zostać zgubione lub skradzione i w ten sposób dostać się w niepowołane ręce. Propozycją klienta było zbudowanie dysku twardego, który byłby jednocześnie urządzeniem IoT wyposażonym w mechanizm autoryzacji dostępu. Zaplanowane funkcjonalności to m.in.:

      • Możliwość odczytania zawartości dysku jedynie po autoryzacji w aplikacji mobilnej
      • Potwierdzanie dostępu do dysku za pomocą sparowanego telefonu
      • Możliwość zdalnego wymazania zawartości dysku - całego systemu lub wybranych danych
      • Udzielanie dostępu na odległość.

      Projekt rozpoczęliśmy w 2021 roku. Klient wybrał nas na wykonawcę po zapoznaniu się z przygotowanym przez nas harmonogramem prac, który opierał się na konkretnych terminach i budżecie. Nie bez znaczenia były również nasze kompetencje w dziedzinie IoT: bardzo dobra znajomość sposobu działania protokołu TLS, korzystania z komend niskopoziomowych na warstwach komunikacyjnych oraz wysoka świadomość możliwości i ograniczeń frameworka Flutter.

      W momencie przyjęcia przez nas projektu klient dysponował jedynie symulatorem oprogramowania dysku, a fizyczne urządzenie było wciąż w fazie produkcji. Naszym zadaniem było napisanie aplikacji, która będzie sprawnie komunikowała się z istniejącym urządzeniem, realizując zaplanowane funkcjonalności.

      Rozwiązanie — sterowanie dyskami SSD

      Głównym wyzwaniem w realizacji projektu był brak gotowego urządzenia. Przez cały czas pracowaliśmy na symulacji oprogramowania dysku, którego prototyp wciąż był w fazie tworzenia. Nie dysponowaliśmy więc fizycznym produktem, co sprawiło, że musieliśmy w jeszcze większym stopniu niż zazwyczaj przewidywać ryzyka i przeprowadzić bardzo skrupulatnie testy, aby upewnić się, że rozwiązania zastosowane w wirtualnym środowisku zadziałają również w fizycznym produkcie. W tym procesie bardzo pomocna była bardzo dobra komunikacja z klientem i jego świetne przygotowanie merytoryczne i techniczne do realizacji takiego projektu.

      Kolejnym wyzwaniem były zmiany w używanych technologiach. W czasie realizacji projektu wyszła aktualizacja technologii Flutter, z której korzystaliśmy, co wiązało się z koniecznością przepisania całego kodu. Innymi wyzwaniami technologicznymi było m.in. zaprojektowanie i wdrożenie szyfrowania Bluetooth Low Energy (BLE), a także brak gotowych rozwiązań do komunikacji niskopoziomowej we Flutter, które musieliśmy zbudować od zera według własnego projektu i pomysłu. Udało nam się to dzięki dużemu doświadczeniu we wdrażaniu komunikacji bez assemblera, którą oferuje Flutter. W ramach projektu opracowaliśmy również system zarządzania dyskami SSD oraz mechanizmy pozwalające na sterowanie dyskami SSD w kontekście zapewnienia bezpieczeństwa danych.

      Finalnie w ramach projektu zbudowaliśmy:

      • Aplikację mobilną, która sprawnie komunikuje się z istniejącym oprogramowaniem urządzenia (dysku przenośnego)
      • Mechanizm wysyłania poleceń bezpośrednio do Bluetooth Low Energy, bez pośrednictwa API
      • Szyfrowane połączenie TLS
      • Autoryzację dostępu za pomocą odcisku palca
      • Funkcjonalność skanowania urządzeń w zasięgu BLE
      • Szatę graficzną spójną z identyfikacją wizualną klienta

      Efekt

      Projekt Labyrinth Drives zakończył się sukcesem zarówno z perspektywy technologicznej, jak i zarządzania. Dostarczyliśmy klientowi w pełni funkcjonalne rozwiązanie w ustalonym czasie i budżecie, spełniając w ten sposób dwie główne potrzeby startupu. Praca jedynie na wirtualnym dysku, który był jedynie prototypem docelowego urządzenia, nie stanowiła dla nas przeszkody. Sprawnie zarządziliśmy też koniecznością wprowadzenia zmian, np. przepisania kodu po aktualizacji Flutter. Projekt ten potwierdził nasze kompetencje w dziedzinie IoT oraz to, że potrafimy działać sprawnie i elastycznie nawet w warunkach dużej niepewności.
      Wiktor Sobczyk

      Chcesz zrealizować podobny projekt?

      Powiedz nam czego potrzebujesz, a nasi eksperci Powiedzą Ci jak to zrobić, ile to kosztuje i na kiedy będzie gotowe.

      Jak możemy Ci pomóc?
      Porozmawiaj z nami!









        Kamil
        Head of Business Development
        Kliknij, aby podejrzeć