Arduino & IoT Academy · Lekcja

Szyfrowanie TLS i weryfikacja certyfikatów

Chronić dane podczas przesyłania i weryfikować serwer.

Lekcja 3 z 413 kroki

Szyfrowanie TLS i weryfikacja certyfikatów to bezpłatna lekcja Arduino & IoT Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Arduino & IoT Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Arduino & IoT Academy zawiera 4 lekcji w sumie.

Po co w ogóle szyfrować

Dane przesyłane przez Wi-Fi i internet przechodzą przez wiele rąk. Szyfrowanie je zaciemnia, dzięki czemu tylko docelowy serwer może odczytać Twoje pomiary. 🔒

Poznaj TLS

TLS to warstwa, która przekształca HTTP w HTTPS. Szyfruje kanał między urządzeniem a serwerem, dzięki czemu podsłuchujący widzą tylko niezrozumiałe dane.

Uzdrawianie połączenia

Zanim przepłyną jakiekolwiek dane, obie strony uzgadniają klucze podczas uzgadniania. Ta konfiguracja potwierdza tożsamość serwera i ustanawia wspólny sekret.

Co potwierdza certyfikat

Serwer przedstawia certyfikat podpisany przez zaufany urząd. Potwierdza on, że serwer naprawdę jest tym, za kogo się podaje, a nie oszustem.

Szyfrowanie bez weryfikacji

Szyfrowanie bez sprawdzania jest niebezpieczne. Bez weryfikacji atakujący może znaleźć się pośrodku, przejąć klucze i odczytać wszystko.

Atak typu man-in-the-middle

Atakujący typu man-in-the-middle podszywa się pod serwer i przekazuje dalej Twój ruch. Weryfikacja certyfikatu dokładnie powstrzymuje ten atak.

Użyj WiFiClientSecure

Na ESP32 klasa WiFiClientSecure obsługuje połączenia TLS. Jest bezpiecznym odpowiednikiem zwykłego klienta używanego wcześniej do HTTP.

#include <WiFiClientSecure.h>
WiFiClientSecure client;

Przypnij główny urząd certyfikacji

Przekaż urządzeniu certyfikat główny serwera, aby mogło zweryfikować zaufanie. Przypięty urząd certyfikacji pozwala płytce rozpoznać, że serwer jest autentyczny.

client.setCACert(root_ca); // verify the server against this trusted CA

Nigdy nie pomijaj sprawdzania

Wywołanie setInsecure wyłącza całą weryfikację. setInsecure nadaje się do szybkiego testu, ale nigdy nie powinno trafić do wdrażanego produktu.

client.setInsecure(); // DANGER: trusts any server, use only for testing

Certyfikaty wygasają

Każdy certyfikat ma datę ważności, dlatego weryfikacja wymaga poprawnego czasu. Urządzenie z nieprawidłowym zegarem może błędnie odrzucić prawidłowy serwer.

Szyfruj także MQTT

TLS służy nie tylko do HTTPS. Skieruj klienta MQTT na port brokera TLS, taki jak 8883, aby w ten sam sposób chronić komunikaty publikowania i subskrypcji.

Szybki sprawdzian

Samo szyfrowanie nie wystarczy. Co jeszcze ma znaczenie?

Podsumowanie

TLS szyfruje ruch, a certyfikaty potwierdzają tożsamość. Używaj WiFiClientSecure, przypnij zaufany urząd certyfikacji, ustaw poprawny czas i nigdy nie wdrażaj setInsecure. 🛡️

Bezpłatny start

Ucz się C++ dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „Szyfrowanie TLS i weryfikacja certyfikatów” jest bezpłatna?

Tak — pełny tekst „Szyfrowanie TLS i weryfikacja certyfikatów” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Arduino & IoT Academy, przejdź na CoddyKit PRO. Kurs Arduino & IoT Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Szyfrowanie TLS i weryfikacja certyfikatów”?

Chronić dane podczas przesyłania i weryfikować serwer. Ćwiczysz Arduino & IoT Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Arduino & IoT Academy?

Nie wymagamy żadnego doświadczenia. Arduino & IoT Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Szyfrowanie TLS i weryfikacja certyfikatów”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Arduino & IoT Academy?

Tak. Każda lekcja Arduino & IoT Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Typowe powierzchnie ataku IoT
  2. Usuwanie sekretów z kodu
  3. Szyfrowanie TLS i weryfikacja certyfikatów
  4. Podpisywanie i zabezpieczanie firmware'u
← Powrót do Arduino & IoT Academy