Secure Boot & Chain of Trust (Fundament) STM32MP2

Od Otwartego Urządzenia do Produkcyjnego Zabezpieczenia: Budowa Sprzętowego Korzenia Zaufania. Intensywne szkolenie z implementacji bezpiecznego rozruchu i łańcucha zaufania na STM32MP2.

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 STM32MP2.

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 BL2 — First Stage Boot Loader (FSBL), konfiguracja DDR
  • BL31 (Secure Monitor) — runtime services w Secure World
  • BL32 (OP-TEE) — Trusted Execution Environment
  • BL33 (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

Skonfigurują szyfrowanie boot (Encrypted Boot) z użyciem EDMK — nowa funkcjonalność STM32MP2

Przeprowadzą “Ceremonię Przepalania” — trwały zapis skrótu klucza publicznego do pamięci OTP urządzenia

Zamkną cykl życia urządzenia 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 STM32MP2

  • Rola BootROM jako niemodyfikowalnego Korzenia Zaufania (Root of Trust)
  • Boot Flavors: Cortex-A35 vs Cortex-M33 jako Trusted Domain — kiedy co wybrać?
  • Kontroler BSEC3 i mapa pamięci OTP — layout kluczy autentykacji i szyfrowania
  • Resource Isolation Framework (RIF/RIFSC) — izolacja zasobów między kontekstami
  • Mechanizm “rejestrów cienia” — jak testować przed trwałym zapisem?

Moduł 1.3: Lab – Analiza Stanu Fabrycznego (“Open”)

  • Konfiguracja środowiska: STM32MP257F-DK, 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 i Szyfrowanie Firmware

  • STM32MP_SigningTool_CLI: Podpisywanie obrazu TF-A
  • Analiza nagłówka STM32 (.stm32): Magia bajtów ‘S’,‘T’,‘M’,0x32
  • Flagi opcji: autentykacja (b0) i szyfrowanie (b1) — nowość w STM32MP2
  • Encrypted Boot z EDMK (Encryption/Decryption Master Key) — ochrona IP firmware
  • Lab: Porównanie plików przed/po podpisaniu (hexdump, vbindiff)

Moduł 2.3: Prowizjonowanie OTP – Punkt Bez Powrotu

  • Strategia “Sprawdź dwa razy, przepal raz”
  • Prowizjonowanie kluczy autentykacji i szyfrowania (EDMK) via stm32key
  • Wymagania: OP-TEE z CFG_STM32_BSEC_WRITE
  • ⚠️ Komenda nieodwracalna: stm32key fuse -yCeremonia 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 w STM32MP2: Unsecured → Secured_Unlocked → Under_Provisioning → Secured_Locked → RMA
  • Różnice vs STM32MP1 (OPEN → CLOSED → RMA) — migracja mentalnego modelu
  • ⚠️ Przygotowanie: Podpisany (i opcjonalnie zaszyfrowany) 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-weston z certyfikatami
  • Analiza wynikowych obrazów FIP

Moduł 3.3: OP-TEE i TF-M – Trusted Execution Environment

  • Po co zabezpieczamy system? Izolacja Secure World od Normal World
  • OP-TEE (A35 jako Trusted Domain) vs TF-M (M33 jako Trusted Domain, PSA Certified)
  • Lab: “Hello World” Trusted Application — sekret bezpieczny przed Linuxem
  • Ograniczenia SYSRAM w MP25x: Jak pisać oszczędne TA?

Moduł 3.4: Q&A i Podsumowanie

  • Authenticated Boot vs Encrypted Boot — kiedy szyfrować firmware?
  • EDMK i ochrona własności intelektualnej w łańcuchu dostaw
  • 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ą.

ZakresDzień 1 + Dzień 2 (Kryptografia, Architektura, Generowanie kluczy, Podpisywanie, Fusing)
EfektUrządzenie z wgranym kluczem OEM, gotowe do zamknięcia
Cena4 200 PLN netto / os.
Min. grupa4 osoby

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.

ZakresCały program (Dni 1-3)
EfektKompletnie zamknięte urządzenie, wiedza o automatyzacji CI/CD i Trusted Applications
Cena5 500 PLN netto / os.
Min. grupa4 osoby

Promocja: Decydując się od razu na pakiet 3-dniowy, oszczędzasz 500 PLN względem dokupowania 3. dnia osobno (cena 3. dnia jako add-on to 1800 PLN).

Małe zespoły: Dla zespołów mniejszych niż 4 osoby - stawki ustalane są indywidualnie.


🏆 Dlaczego warto?

KorzyśćOpis
Nieodwracalność wymaga pewnościBłą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
ComplianceCoraz więcej regulacji (np. Cyber Resilience Act) wymaga sprzętowego zabezpieczenia firmware. Ten kurs przygotowuje do ich spełnienia
Praktyka, nie teoriaPracujemy na realnych płytkach STM32MP257F-DK, nie na symulatorach

🛠️ Wymagania sprzętowe

Każdy uczestnik otrzymuje do dyspozycji:

  • Płytkę STM32MP257F-DK (Discovery Kit)
  • Kartę microSD 16GB (klasa 10)
  • Kabel USB Type-C

Wymagane oprogramowanie: Ubuntu 22.04/24.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
Informacje o szkoleniu
  • Czas trwania:
    2-3 dni
  • Poziom:
    Zaawansowany
  • Wymagania:
    Znajomość STM32MP2, podstawy kryptografii
Kategorie
Security STM32MP2 Secure Boot IoT
Zapytaj o szkolenie

Dostosowuję program do potrzeb uczestników. Szkolenia prowadzę stacjonarnie, zdalnie lub hybrydowo.

Kontakt