Laboratorium Technologii Wielowarstwowych i Ceramicznych LTCC

Instytut Technologii Elektronowej Oddział w Krakowie

 

Ścieżka sieci czujnikowych

1.1    Moduł H2: Wprowadzenie do protokołu IP

Zajęcia modułu, które odbyły się 26. września (rano), poświęcone były podstawom sieci IP. Instruktorem była Pani Monika Machnik (ITE). Kurs trwał 5 godzin, a materiał obejmował:

  • Zaprezentowanie istniejącej i działającej sieci czujników opartej na IP
  • Model 7-warstwowy
  • Schemat adresowania warstwy 2. oraz 3.
  • Ruting – podstawy działania
  • Protokoły warstwy 4.

Po lewej: Pani Monika Machnik (ITE) wyjaśniająca ruting IP.

 1.2    Moduł H3: Systemy wbudowane IP i bezpieczeństwo

Zajęcia modułu w dniu 26. września (popołudniu), obejmowały następujące tematy:

  • Protokół IP w sieciach czujnikowych – przegląd gotowych rozwiązań do stworzenia systemu wbudowanego opartego na IP
  • Bezpieczne środowisko w sieciach IP – seria przykładów przedstawiająca najpopularniejsze problemy związane z bezpieczeństwem w infrastrukturze sieciowej
  • Wprowadzenie do usług kryptograficznych – przegląd podstawowych technik kryptograficznych
  • Wyzwania bezpiecznego kodu – przegląd typowych błędów programistycznych skutkujących podatnościami na ataki.

1.3    Moduł H4: Systemy monitorowania środowiska

Moduł stanowiła 90-minutowa prezentacja Pani Justyny Woś z firmy OMC Envag, będącej dystrybutorem systemów monitorowania środowiska wiodących producentów, takich jak: Hach-Lange, czy OTT. Zaprezentowane zostały gotowe rozwiązania dla monitorowania wody, co w zamierzeniu miało zapoznać początkujących badaczy (ESR) z rzeczywistymi systemami monitorowania środowiska.

1.4    Moduł L2a: Sieci IP

Podczas tego modułu studenci złożyli i skonfigurowali, wykorzystując dostępne urządzenia sieciowe, działającą sieć opartą na IP. Do jej budowy użyto:

  • przełączniki Cisco Catalyst 2950
  • rutery Mikrotik Routerboard RB2011UAS-RM
  • rutery Mikrotik Routerboard SXT 5nD r2 (jako bezprzewodowy most typu punkt-punkt)
  • laptopy IBM Lenovo T61.

Urządzenia firmy Mikrotik zostały wybrane ze względu na ich niską cenę i popularność w instalacjach komunikacji bezprzewodowej dostawców internetowych w Europie Centralnej.

Użyte oprogramowanie:

  • Putty - darmowa implementacja klienta Telnet i SSH
  • WinBOX - Secure GUI/ interfejs graficzny używany do konfiguracji urządzeń MikroTik
  • Small HTTP Server - serwer www, a także serwer pocztowy, DNS, FTP oraz serwer proxy
  • Tftpd32 - darmowy program zawierający serwer DHCP, TFTP, DNS, SNTP oraz Syslog, a także klient TFTP
  • Wireshark - analizator sieciowy.

Topologia sieci i użyte rodzaje urządzeń zostały pokazane na rysunku poniżej. Sieć szkieletowa (część czerwona) składała się z czterech ruterów MikroTik. Pomiędzy nimi zestawiono połączenia z użyciem kabli Ethernet oraz bezprzewodowe połączenia typu punkt-punkt na częstotliwości 5GHz (pracujące jako mosty w warstwie 2).  Ze względu na łatwość konfiguracji użyto dynamicznego protokołu rutingu OSPF. Zasady działania protokołów dynamicznych zostały zademonstrowane poprzez zasymulowanie awarii (np. poprzez rozłączenie kabli) po tym jak sieć została zestawiona. Cztery sieci dostępowe (zielone) zostały przyłączone do sieci szkieletowej. Studenci mogli przeanalizować zachowanie sieci poprzez użycie programów, takich jak ping, traceroute oraz analizatora sieciowego Wireshark.

Warto zauważyć, że ćwiczenie wymagało umiejętności współpracy, jako że studentom przypisano role i konfigurowali różne urządzenia, które w efekcie miały poprawnie ze sobą działać.

Poniżej: topologia sieci i statusy rutingu OSPF.

1.5    Moduł L2b: Aplikacje IP

Celem modułu było zademonstrowanie studentom podstaw związanych z programowaniem aplikacji TCP/IP.

Ze względu na łatwość użycia języka programowania wykorzystano język AutoIt! dla platformy Microsoft Windows. Studenci dostali zadanie napisania prostego klienta TCP oraz prostego serwera TCP; do testowania użyty został program netcat. W rezultacie studenci parami otrzymali możliwość komunikacji opartej na protokole TCP (po uruchomieniu klienta po jednej stronie i serwera po drugiej).

Analizator sieciowy Wireshark został użyty do studiowania zmian w sieci.  Na końcu przedyskutowano zaprojektowanie serwera z obsługą wielu użytkowników. Pomysł wykorzystania komunikacji opartej na UDP został odrzucony ze względu na ograniczenia czasowe.

Po lewej: ESR Katarina Cvejin studiująca połączenie TCP z użyciem analizatora sieciowego Wireshark.

 1.6    Moduł L3: Sieci czujnikowe IP

Zamierzeniem modułu było zaznajomienie uczestników z podstawami programowania mikrokontrolerów w celu zbudowania sieci czujnikowych, np. tworzenia węzłów takich sieci.

Ze względu na dużą popularność i łatwość nauki wykorzystano platformę programistyczną Arduino. Każdemu studentowi dano do dyspozycji zestaw elementów Arduino, włączając w to płytki posiadające: mikrokontroler, interfejs sieciowy (Ethernet), wejścia dla czujników.

Studenci dostali także różnego typu czujniki i siłowniki, takie jak: potencjometry, joysticki, LEDy, silniczki elektryczne, czujniki temperatury, hallotrony (czujniki pola magnetycznego), ultradźwiękowe czujniki odległości.

Każdy student zaimplementował następujący zbiór programów:

  • miganie diodą LED
  • odczyt czujnika / sterowanie silniczkiem
  • prosty serwer TCP / prosty klient TCP.

Po tym jak uczestnicy zbudowali podstawowe elementy sieci czujnikowej, przystąpiono do drugiej części ćwiczenia. Studentom oddano do dyspozycji małego, sterowanego robota oraz polecono wykonać następujące zadania:

  • Wyposażenie robota w płytkę Arduino, czujnik pola magnetycznego i czujnik odległości
  • Przygotowanie drugiej płytki Arduino z dołączonym joystickiem
  • Zaproponowanie protokołu sieciowego dla robota
  • Napisanie oprogramowania klienckiego i serwera pozwalających na sterowanie robotem z użyciem joysticka oraz na odczyt czujnika przez sieć IP
  • Użycie robota do odnalezienia magnesu neodymowego poprzez sterowanie nim i śledzenie odczytów z czujnika.

Po lewej: Robot użyty podczas ćwiczenia.

 

1.7    Moduł L4: Kryptografia

Celem tego modułu było zaznajomienie studentów z podstawowymi technikami kryptograficznymi za pomocą demonstracji w praktyce. Studenci mieli do dyspozycji zbiór programów umożliwiających podstawowe operacje kryptograficzne:

  • symetryczny szyfr strumieniowy (algorytm RC4)
  • symetryczny szyfr blokowy (algorytm AES)
  • funkcja skrótu (algorytm MD5 i SHA1)
  • szyfrowanie asymetryczne (algorytm RSA).

Po prawej: Przykładowy zrzut ekranu użytego programu - obliczanie skrótu wiadomości oraz kodu uwierzytelnienia wiadomości.

 

Studenci pracując w parach mieli zaimplementować bezpieczną wymianę wiadomości za pomocą powyższych programów. W szczególności, ćwiczenie obejmowało:

  • wymianę (tj. zaszyfrowanie, przesłanie, zdeszyfrowanie) wiadomości zaszyfrowanej za pomocą szyfru symetrycznego z ustalonym kluczem
  • atak ze zmianą bitu w ramach szyfrowania symetrycznego
  • obliczanie i weryfikację kodu uwierzytelniania wiadomości z wmieszanym kluczem tajnym (HMAC)
  • wymianę wiadomości z użyciem kryptografii klucza publicznego (RSA)
  • podpisy cyfrowe z użyciem algorytmu RSA.

Na koniec studenci zostali poproszeni o zaprojektowanie protokołu wymiany wiadomości spełniającego następujące założenia: szyfrowanie zawartości wiadomości za pomocą algorytmu symetrycznego, wymiana klucza za pomocą algorytmu asymetrycznego oraz autentykacja wiadomości.

Zdjęcie grupowe po zakończeniu ćwiczenia (od lewej do prawej): Srdjan Ajkalo (ESR), Monika Machnik (instruktor, ITE), Katarina Cvejin (ESR), Aleksandar Pajkanovic (ESR), Mitar Simic (ESR), Krzysztof Zaraska (instruktorr, ITE).

 
 

Używamy cookies i podobnych technologii m.in. w celu świadczenia usług i w celach statystycznych. Możesz określić warunki przechowywania lub dostępu do plików cookies w Twojej przeglądarce, w jej ustawieniach. Jeżeli wyrażasz zgodę na zapisywanie informacji zawartej w cookies, kliknij „Zamknij”. Jeżeli nie wyrażasz zgody – zmień ustawienia swojej przeglądarki. Więcej informacji znajdziesz w naszej Polityce cookies

Zamknij X