CLARICE PRANYOTO
Embedded Security and Hardware Hacking
Team Non-zero Exit
July 2020
During this summer program, I learned about cryptographic protocol attacks, JTAG/UART probing, side-channel analysis/fault-injection, and navigating through the BearSSL library in C. For our final project we were tasked to "design and implement a system to support secure firmware distribution for automotive control." I collaborated with three other students for this project and hacked into systems developed my other teams. ​
Our Protocol using AES Encryption in GCM and HMAC
-
bl_build tool generates the IV, key for encryption, and key for HMAC
-
fw_protect tool encrypts, generates HMAC, tags the metadata and firmware
-
Metadata holds version number of firmware and size of the firmware being installed
-
-
fw_update tool construct frames, or in other terms, “packages” the data
-
Bootloader checks HMAC and tags, decrypts firmware, checks firmware version and either installs firmware or terminates installation
