This shows you the differences between two versions of the page.
iothings:laboratoare:lab8 [2022/05/11 13:54] cosmin.chenaru [Laborator 08. Securizarea aplicațiilor pe ESP32] |
iothings:laboratoare:lab8 [2022/05/11 20:05] (current) cosmin.chenaru [Secure Boot] |
||
---|---|---|---|
Line 5: | Line 5: | ||
==== ESP-IDF ==== | ==== ESP-IDF ==== | ||
+ | ESP-IDF este un framework pentru dezvoltarea de aplicații pentru plăcuțele de la Espressif. Vine cu un toolchain (compilator, debugger) pentru ESP32, diferite scripturi Python pentru a compila și scrie aplicațiile pe flash-ul plăcuței, cât și cu diferite exemple de aplicații foarte folositoare. | ||
+ | |||
+ | {{:iothings:laboratoare:lab8-pic1.png|}} | ||
+ | |||
+ | Pentru a instala ESP-IDF, putem folosi acest tutorial: | ||
+ | |||
+ | https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/windows-setup.html | ||
+ | |||
+ | Puteți folosi "ESP-IDF v4.4.1 - Offline Installer" pentru a instala tool-ul ESP-IDF. | ||
+ | |||
+ | {{:iothings:laboratoare:lab8-pic2.png?300|}} | ||
+ | |||
+ | După instalare, o fereastră PowerShell se va deschide: | ||
+ | |||
+ | {{:iothings:laboratoare:lab8-pic3.png?600|}} | ||
==== Secure Boot ==== | ==== Secure Boot ==== | ||
+ | Plăcuța ESP32 are diferite niveluri de protecție, începând de la "secure boot" și până la securizarea aplicației. | ||
+ | |||
+ | Vom urmări aceste doua tutoriale pentru a înțelege procesul de securizare: | ||
+ | |||
+ | https://blog.espressif.com/understanding-esp32s-security-features-14483e465724 | ||
+ | https://demo-dijiudu.readthedocs.io/en/latest/security/secure-boot.html | ||
+ | |||
+ | === XIP - eXecute-In-Place === | ||
+ | === eFUSE === | ||
+ | |||
+ | O siguranță electrică poate fi programată o singură dată. | ||
+ | |||
+ | {{:iothings:laboratoare:lab8-pic6-png.png|}} | ||
+ | |||
+ | === OTP keys - One Time Programmable keys === | ||
==== Exerciții ==== | ==== Exerciții ==== | ||
- | === Ex. 1 (Opțional) === | + | === Ex. 1 === |
+ | |||
+ | Rulați exemplul "Hello World" din ESP-IDF. Pentru aceasta, puteți copia directorul "hello_world" din locația "C:\Espressif\frameworks\esp-idf-v4.4.1\examples\get-started" într-un alt folder (ex. "Downloads\esp"). Mergeți apoi către această locație în PowerShell și rulați comanda "idf.py menuconfig". | ||
+ | |||
+ | {{:iothings:laboratoare:lab8-pic4-1.png|}} | ||
+ | |||
+ | Cu ajutorul următoarei interfațe grafice putem schimba diferite setări ale plăcuței și ale aplicației. | ||
+ | |||
+ | {{:iothings:laboratoare:lab8-pic4.png?600|}} | ||
+ | |||
+ | Pentru a încărca noua aplicație, folosiți următoare comandă: | ||
+ | |||
+ | <note> | ||
+ | idf.py -p COM5 flash | ||
+ | </note> | ||
+ | |||
+ | Iar pentru a vedea consola plăcuței putem folosi: | ||
+ | |||
+ | <note> | ||
+ | idf.py -p COM5 monitor | ||
+ | </note> | ||
+ | |||
+ | {{:iothings:laboratoare:lab8-pic5.png?600|}} | ||
+ | |||
+ | === Ex. 2 (Opțional) === | ||
===== Resurse ===== | ===== Resurse ===== | ||
- | * https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/windows-setup.html | + | * https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/index.html |
* https://demo-dijiudu.readthedocs.io/en/latest/security/secure-boot.html | * https://demo-dijiudu.readthedocs.io/en/latest/security/secure-boot.html | ||
* https://blog.espressif.com/understanding-esp32s-security-features-14483e465724 | * https://blog.espressif.com/understanding-esp32s-security-features-14483e465724 |