SoC Secure Boot Flow โ ๊ฐ์ ๋ฐ ์ปจ์
๋งต
ํ์ต ํ๋
- ๋ ๋ฒจ: Intermediate โ Advanced (์ค๋ฌด ๊ฒฝํ ๊ธฐ๋ฐ, ์ฒด๊ณ์ ์ ๋ฆฌ + ๋ฉด์ ๋๋น)
- ๋ชฉํ: Secure Boot ์ ์ฒด ํ๋ฆ์ ํ์ดํธ๋ณด๋์ ๊ทธ๋ฆฌ๋ฉฐ ๋ณด์ ์ํ๊ณผ ๋ฐฉ์ด๋ฅผ ๋
ผ๋ฆฌ์ ์ผ๋ก ์ค๋ช
ํ ์ ์๋ ์์ค
ํต์ฌ ์ฉ์ด์ง (Glossary)
ํ๋์จ์ด ์ ๋ขฐ ๊ธฐ๋ฐ
| ์ฝ์ด |
ํ๋ค์ |
์ค๋ช
|
| HW RoT |
Hardware Root of Trust |
BootROM + OTP ์กฐํฉ์ ๋ณ๊ฒฝ ๋ถ๊ฐ๋ฅํ ์ ๋ขฐ ๊ธฐ์ด |
| BootROM |
โ |
๋ง์คํฌ ROM์ ๊ณ ์ ๋ ๋ณ๊ฒฝ ๋ถ๊ฐ ๋ถํ
์ฝ๋ (BL1) |
| OTP |
One-Time Programmable |
์ผํ์ฑ ์ฐ๊ธฐ ๋ฉ๋ชจ๋ฆฌ (eFuse/Antifuse). ROTPK ํด์ ์ ์ฅ |
| eFuse |
Electrical Fuse |
์ ๋ฅ๋ก ๊ธ์ ํจ์ฆ๋ฅผ ๋์ด ํ๋ก๊ทธ๋๋ฐ (์ ๋น์ฉ) |
| Antifuse |
โ |
์ ์์ผ๋ก ์ ์ฐ์ธต์ ํ๊ดดํ์ฌ ํ๋ก๊ทธ๋๋ฐ (๋ณด์ ์ฐ์) |
| SRAM |
Static RAM |
BL1 ์คํ์ฉ ๊ณ ์ ๋ฉ๋ชจ๋ฆฌ (DRAM ์ด๊ธฐํ ์ ) |
๋ถํ
๋จ๊ณ
| ์ฝ์ด |
ํ๋ค์ |
์ค๋ช
|
| Chain of Trust |
โ |
๊ฐ ๋จ๊ณ๊ฐ ๋ค์ ๋จ๊ณ๋ฅผ ์๋ช
๊ฒ์ฆ ํ ์ ์ด๊ถ์ ๋๊ธฐ๋ ๊ตฌ์กฐ |
| BL1 |
Boot Loader 1 |
BootROM. HW/๋ณด์ ์ด๊ธฐํ + BL2 ๊ฒ์ฆ (EL3) |
| BL2 |
Boot Loader 2 |
FSBL. DRAM ์ด๊ธฐํ + BL3x ๊ฒ์ฆ (S-EL1) |
| BL31 |
Boot Loader 3-1 |
Secure Monitor (ATF). SecureโNormal ์ ํ ๊ด๋ฆฌ (EL3) |
| BL32 |
Boot Loader 3-2 |
TEE OS (OP-TEE). Trusted App ์คํ (S-EL1) |
| BL33 |
Boot Loader 3-3 |
Normal BL (U-Boot). OS ๋ก๋ (NS-EL1) |
| FIP |
Firmware Image Package |
ARM TF-A ํ์ค ๋ถํ
์ด๋ฏธ์ง ํฌ๋งท (ToC ๊ธฐ๋ฐ) |
์ํธํ
| ์ฝ์ด |
ํ๋ค์ |
์ค๋ช
|
| ROTPK |
Root of Trust Public Key |
OTP์ ํด์๋ก ์ ์ฅ๋ ์ต์์ ๊ณต๊ฐํค |
| RSA |
Rivest-Shamir-Adleman |
๋น๋์นญ ์ํธ. ๊ฒ์ฆ ๋น ๋ฆ, ํค ํผ (2048/4096-bit) |
| ECDSA |
Elliptic Curve DSA |
ํ์๊ณก์ ๊ธฐ๋ฐ ์๋ช
. ํค ์์, ๊ฒ์ฆ ๋๋ฆผ |
| SHA |
Secure Hash Algorithm |
์ํธํ์ ํด์ ํจ์ (SHA-256/384/512) |
| HMAC |
Hash-based MAC |
ํค๋ฅผ ์ฌ์ฉํ ๋ฉ์์ง ์ธ์ฆ ์ฝ๋ |
| PQC |
Post-Quantum Cryptography |
์์์ปดํจํฐ์ ์ ํญํ๋ ์ฐจ์ธ๋ ์ํธ (ML-DSA, SLH-DSA) |
๋ถํ
์ฅ์น
| ์ฝ์ด |
ํ๋ค์ |
์ค๋ช
|
| UFS |
Universal Flash Storage |
๊ณ ์ ์ ์ฅ์ฅ์น (2.9 GB/s), ๋ณต์กํ ํ๋กํ ์ฝ ์คํ |
| eMMC |
embedded MultiMediaCard |
์ค๊ฐ ์๋ ์ ์ฅ์ฅ์น (400 MB/s), ๋จ์ํ ํ๋กํ ์ฝ |
| Boot LU |
Boot Logical Unit |
UFS ๋ด ๋ถํ
์ ์ฉ ํํฐ์
|
| RPMB |
Replay Protected Memory Block |
HMAC ๊ธฐ๋ฐ ๋ณด์ ์ ์ฅ ์์ญ (Anti-Rollback ์นด์ดํฐ ๋ฑ) |
| Pinstrap |
โ |
PCB GPIO ํ์
/๋ค์ด์ผ๋ก ๋ถํ
๋ชจ๋ ์ ํ |
๋ณด์ & ๊ณต๊ฒฉ/๋ฐฉ์ด
| ์ฝ์ด |
ํ๋ค์ |
์ค๋ช
|
| Anti-Rollback |
โ |
OTP ๋จ์กฐ์ฆ๊ฐ ์นด์ดํฐ๋ก ๊ตฌ๋ฒ์ FW ๋ค์ด๊ทธ๋ ์ด๋ ๋ฐฉ์ง |
| FI |
Fault Injection |
์ ์/ํด๋ญ/EM ๊ธ๋ฆฌ์น๋ก ๋ณด์ ๊ฒ์ฆ์ ์ฐํํ๋ ๋ฌผ๋ฆฌ ๊ณต๊ฒฉ |
| SCA |
Side-Channel Attack |
์ ๋ ฅ/EM/ํ์ด๋ฐ ๋ถ์์ผ๋ก ์ํธ ํค๋ฅผ ์ถ๋ก ํ๋ ๊ณต๊ฒฉ |
| TOCTOU |
Time-of-Check-to-Time-of-Use |
๊ฒ์ฆ~์ฌ์ฉ ์ฌ์ด์ DMA๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ณ์กฐํ๋ ๊ณต๊ฒฉ |
| ROM Patch |
โ |
BootROM ๋ฒ๊ทธ ์์ ๋ฉ์ปค๋์ฆ (HW Address Comparator ์ฌ์ฉ) |
| Lifecycle State |
โ |
Dev โ Provisioning โ Production โ End-of-Life (๋น๊ฐ์ญ์ ) |
๊ฒ์ฆ ๊ด๋ จ
| ์ฝ์ด |
ํ๋ค์ |
์ค๋ช
|
| Measured Boot |
โ |
๋ถํ
๋จ๊ณ ํด์๋ฅผ TPM PCR์ ๊ธฐ๋ก (Remote Attestation ๊ฐ๋ฅ) |
| TPM |
Trusted Platform Module |
๋ณ๋ ์นฉ์ ๋ณด์ ์ ์ฅ์ (PCR, ํค ๊ด๋ฆฌ) |
| DICE |
Device Identifier Composition Engine |
TPM ์๋ ๊ฒฝ๋ ๊ธฐ๊ธฐ์ฉ ์ธก์ ๋ถํ
ํ์ค |
| DPI-C |
Direct Programming Interface C |
SystemVerilogโC ์๋ฐฉํฅ ์ธํฐํ์ด์ค (HW/SW Co-verification) |
์ปจ์
๋งต
PORHWROTCOTCRYPTOBOOTDEVATTACK
ํ์ต ๋จ์ (Units)
| # |
๋จ์ |
ํต์ฌ ์ง๋ฌธ |
| 1 |
Hardware Root of Trust |
์ ๋ขฐ์ ๊ธฐ๋ฐ์ ์ ํ๋์จ์ด์ฌ์ผ ํ๋๊ฐ? |
| 2 |
Chain of Trust & Boot Stages |
BL1โBL2โBL3x ์ธ์ฆ ์ ํ๋ ์ด๋ป๊ฒ ๋์ํ๋๊ฐ? |
| 3 |
Secure Boot ์ํธํ |
์๋ช
๊ฒ์ฆ๊ณผ ํค ๊ด๋ฆฌ๋ ์ด๋ป๊ฒ ์ด๋ฃจ์ด์ง๋๊ฐ? |
| 4 |
Boot Device & Boot Mode |
๋ถํ
์ฅ์น๋ ์ด๋ป๊ฒ ์ ํ๋๊ณ , ๊ฐ๊ฐ ์ด๋ป๊ฒ ์ด๊ธฐํ๋๋๊ฐ? |
| 5 |
๊ณต๊ฒฉ ํ๋ฉด๊ณผ ๋ฐฉ์ด |
Secure Boot์ ๋ํ ๊ณต๊ฒฉ ์ ํ๊ณผ ๋ฐฉ์ด ๊ธฐ๋ฒ์? |
| 6 |
Quick Reference Card |
๋ฉด์ ์ง์ ๋น ๋ฅธ ๋ณต์ต์ฉ ์์ฝ ์นด๋ |
| 7 |
BootROM DV ๊ฒ์ฆ ๋ฐฉ๋ฒ๋ก |
UVM ํ๋ ์์ํฌ๋ก Secure Boot๋ฅผ ์ด๋ป๊ฒ ๊ฒ์ฆํ๊ณ , Zero-Defect Silicon์ ๋ฌ์ฑํ๋๊ฐ? |
ํ์ต ์์กด์ฑ ํ๋ฆ
๊ถ์ฅ ํ์ต ์์: Unit 1 โ 2 โ ¾/5 (๋ณ๋ ฌ ๊ฐ๋ฅ) โ 7 โ 6 (๋ฉด์ ์ง์ ๋ณต์ต)
์ด๋ ฅ์ ์ฐ๊ฒฐ ํฌ์ธํธ
| ์ด๋ ฅ์ ํญ๋ชฉ |
๊ด๋ จ Unit |
๋ฉด์ ์ ํ์ฉ |
| OTP Abstraction Layer (RAL ๋ชจ๋ธ๋ง) |
Unit 1, 4, 7 |
OTP ์ถ์ํ + Boot Mode sweep ์ ๋ต |
| Active UVM Driver (force/release) |
Unit 5, 7 |
Fault Injection ์๋ฎฌ๋ ์ด์
+ Negative ์๋๋ฆฌ์ค |
| DPI-C C-model ํตํฉ |
Unit 3, 7 |
HW/SW Co-verification + ๋ณด์ ํธ๋์
ฐ์ดํฌ ๊ฒ์ฆ |
| Apple/Meta ํฌํ
|
Unit 7 |
๋ชจ๋ํ UVM ์ํคํ
์ฒ์ ์ฌ์ฌ์ฉ์ฑ + ํฌํ
์ ๋ต |
| BootROM Lead 3๋
|
Unit 7 |
์ ์ฒด ๊ฒ์ฆ ์ ๋ต + Coverage + Post-silicon ์ฐ๊ฒฐ |
| Legacy โ UVM ์ ํ |
Unit 7 |
๋ฌธ์ ๋ถ์ โ ํด๊ฒฐ โ ์ฑ๊ณผ ์คํ ๋ฆฌ |
| Coverage-Driven ๋ฐฉ๋ฒ๋ก |
Unit 7 |
5๊ฐ Covergroup ๊ตฌ์กฐ + Closure ์ ๋ต |
| Zero-Defect Silicon |
Unit 7 |
Pre-silicon ์์ ์ฑ โ Post-silicon ๋๋ฒ๊ทธ ๊ฐ์ |