Secure Boot & Chain of Trust (Fundament) STM32MP1
Od Otwartego Urządzenia do Produkcyjnego Zabezpieczenia: Budowa Sprzętowego Korzenia Zaufania. Intensywne szkolenie z implementacji bezpiecznego rozruchu i łańcucha zaufania na STM32MP1.
O kursie
Jest to intensywne, warsztatowe szkolenie dla inżynierów embedded i specjalistów ds. cyberbezpieczeństwa, którzy stoją przed wyzwaniem zabezpieczenia produktów IoT opartych na platformie STM32MP1.
W erze wszechobecnych urządzeń podłączonych do sieci, bezpieczeństwo warstwy firmware przestało być opcją — stało się fundamentem. Większość kursów omawia Secure Boot teoretycznie. My przeprowadzimy Cię przez całą procedurę “usztywniania” (hardening) urządzenia, włącznie z nieodwracalnym przepaleniem bezpieczników OTP.
Zrozumiesz od środka, jak BootROM weryfikuje każdy element łańcucha zaufania:
- TF-A (Trusted Firmware-A) — pierwszy bootloader
- U-Boot — główny bootloader
- Jądro Linux — system operacyjny
🎯 Cel Projektowy: “The Fusing Ceremony”
Podczas kursu nie omawiamy slajdów. Zamykamy prawdziwe urządzenie. Uczestnicy samodzielnie:
✓ Wygenerują własną infrastrukturę kluczy publicznych (PKI) z wykorzystaniem kryptografii krzywych eliptycznych ECDSA P-256
✓ Podpiszą cyfrowo obrazy bootloadera (TF-A) i zweryfikują ich nagłówki w edytorze szesnastkowym
✓ Przeprowadzą “Ceremonię Przepalania” — trwały zapis skrótu klucza publicznego do pamięci OTP urządzenia
✓ Zamkną cykl życia urządzenia (Close Device) i przetestują scenariusze awaryjne, w tym celowe “ceglenie” płytki
✓ Zbudują Trusted Application (TA) działającą w bezpiecznym świecie OP-TEE
📅 Program szkolenia
DZIEŃ 1: The Foundation – Architektura Zaufania i Eksploracja
Zrozumienie sprzętowych fundamentów bezpieczeństwa. Od BootROM po OTP.
Moduł 1.1: Kryptografia w Systemach Wbudowanych
- Kryptografia symetryczna vs asymetryczna: Kiedy co stosować?
- Funkcje skrótu (SHA-256) i podpisy cyfrowe (ECDSA)
- Dlaczego ECC, a nie RSA? Efektywność vs bezpieczeństwo w embedded
Moduł 1.2: Architektura Bezpieczeństwa STM32MP1
- Rola BootROM jako niemodyfikowalnego Korzenia Zaufania (Root of Trust)
- Kontroler BSEC i mapa pamięci OTP: Słowa 0-23 (ST), 24-31 (Twój klucz!)
- Mechanizm “rejestrów cienia” — jak testować przed trwałym zapisem?
Moduł 1.3: Lab – Analiza Stanu Fabrycznego (“Open”)
- Konfiguracja środowiska: STM32MP157C-DK2, SDK, STM32CubeProgrammer
- Pierwsze uruchomienie i zatrzymanie w U-Boot
- Ćwiczenie praktyczne: Komenda
stm32key read— widzimy “czystą kartę”
DZIEŃ 2: The Ceremony – Implementacja Root of Trust
Serce procedury Secure Boot. Generowanie kluczy, podpisywanie i punkt bez powrotu.
Moduł 2.1: Generowanie Infrastruktury Kluczy (PKI)
- Narzędzie STM32MP_KeyGen_CLI: Tworzenie pary kluczy ECC P-256
- Anatomia plików:
privateKey.pem(korona królestwa),publicKey.pem,publicKeyhash.bin(32 bajty do OTP) - Bezpieczeństwo kluczy: Dlaczego w produkcji używamy HSM?
Moduł 2.2: Podpisywanie Firmware
- STM32MP_SigningTool_CLI: Podpisywanie obrazu TF-A
- Analiza nagłówka STM32 (
.stm32): Magia bajtów ‘S’,‘T’,‘M’,0x32 - Lab: Porównanie plików przed/po podpisaniu (
hexdump,vbindiff)
Moduł 2.3: Prowizjonowanie OTP – Punkt Bez Powrotu
- Strategia “Sprawdź dwa razy, przepal raz”
- Transfer hasha do RAM (
ext4load), weryfikacja (stm32key read 0xc0000000) - ⚠️ Komenda nieodwracalna:
stm32key fuse -y— Ceremonia Przepalania - Weryfikacja po zapisie: Urządzenie ma teraz tożsamość!
DZIEŃ 3: The Lockdown – Zamknięcie i Produkcja
Przejście od prototypu do zabezpieczonego produktu. Automatyzacja i TEE.
Moduł 3.1: Zamykanie Cyklu Życia Urządzenia
- Stany Device Life Cycle: OPEN → CLOSED → RMA
- ⚠️ Przygotowanie: Podpisany obraz MUSI być na karcie przed zamknięciem!
- Komenda
stm32key close— wymuszenie Secure Boot - Lab: Celowe “ceglenie” i procedura naprawcza
Moduł 3.2: Automatyzacja w Yocto (OpenSTLinux)
- Konfiguracja warstwy meta-st:
TRUSTED_BOARD_BOOT,TF_A_SIGN_ENABLE,ROT_KEY - Przebudowa obrazu:
bitbake st-image-westonz certyfikatami - Analiza wynikowych obrazów FIP
Moduł 3.3: OP-TEE – Trusted Execution Environment
- Po co zabezpieczamy system? Izolacja Secure World od Normal World
- Lab: “Hello World” Trusted Application — sekret bezpieczny przed Linuxem
- Ograniczenia SYSRAM w MP15x: Jak pisać oszczędne TA?
Moduł 3.4: Q&A i Podsumowanie
- Secure Boot vs Szyfrowanie: Różnice MP13x/MP15x
- Zarządzanie cyklem życia w masowej produkcji (SSP)
- Konsultacje własnych projektów kursantów
💰 Cennik i Modele Uczestnictwa
Oferuję elastyczny model, dostosowany do poziomu zaawansowania i potrzeb.
Opcja A: FUNDAMENTALS (2 Dni)
Idealna dla osób, które chcą zrozumieć architekturę bezpieczeństwa i przejść przez podstawową procedurę Secure Boot, bez zagłębiania się w automatyzację produkcyjną.
| Zakres | Dzień 1 + Dzień 2 (Kryptografia, Architektura, Generowanie kluczy, Podpisywanie, Fusing) |
| Efekt | Urządzenie z wgranym kluczem OEM, gotowe do zamknięcia |
| Cena | 3 400 PLN netto / os. |
| Min. grupa | 5 osób |
Opcja B: FULL LOCKDOWN (3 Dni) ⭐ Rekomendowane
Pełne szkolenie obejmujące zamknięcie urządzenia, automatyzację Yocto i wstęp do OP-TEE. Niezbędne dla zespołów przygotowujących się do produkcji seryjnej zabezpieczonych urządzeń IoT.
| Zakres | Cały program (Dni 1-3) |
| Efekt | Kompletnie zamknięte urządzenie, wiedza o automatyzacji CI/CD i Trusted Applications |
| Cena | 4 500 PLN netto / os. |
| Min. grupa | 5 osób |
Promocja: Decydując się od razu na pakiet 3-dniowy, oszczędzasz 400 PLN względem dokupowania 3. dnia osobno (cena 3. dnia jako add-on to 1500 PLN).
Małe zespoły: Dla zespołów mniejszych niż 5 osób - stawki ustalane są indywidualnie.
🏆 Dlaczego warto?
| Korzyść | Opis |
|---|---|
| Nieodwracalność wymaga pewności | Błąd przy przepalaniu OTP w produkcji to “ceglenie” partii urządzeń. Wiedza zdobyta na warsztatach eliminuje ryzyko kosztownych pomyłek |
| Unikalność | To jedyny kurs na polskim rynku, gdzie uczestnicy samodzielnie przeprowadzają pełną procedurę Secure Boot — od generowania kluczy po zamknięcie urządzenia |
| Compliance | Coraz więcej regulacji (np. Cyber Resilience Act) wymaga sprzętowego zabezpieczenia firmware. Ten kurs przygotowuje do ich spełnienia |
| Praktyka, nie teoria | Pracujemy na realnych płytkach STM32MP157C-DK2, nie na symulatorach |
🛠️ Wymagania sprzętowe
Każdy uczestnik otrzymuje do dyspozycji:
- Płytkę STM32MP157C-DK2 (Discovery Kit)
- Kartę microSD 16GB (klasa 10)
- Kabel USB Type-C
Wymagane oprogramowanie: Ubuntu 20.04/22.04 LTS, STM32CubeProgrammer, OpenSTLinux SDK.
🎁 Sprzęt po warsztatach zostaje u uczestników!
Chcesz zarezerwować termin dla swojego zespołu? Skontaktuj się, aby ustalić szczegóły i dostępność terminów. Zabezpiecz swoje urządzenia, zanim zrobi to ktoś inny.
Zainteresowany szkoleniem?
Skontaktuj się, aby omówić szczegóły, dostosować program do potrzeb Twojego zespołu lub umówić termin.
Kontakt ← Wszystkie szkolenia