Secure Monitor: Difference between revisions
| Line 240: | Line 240: | ||
| 19 || [S2] | | 19 || [S2] | ||
|- | |- | ||
| 256-280 || [S2] | | 256-280 || [S2] [[#Bcc]] | ||
|} | |} | ||
| Line 828: | Line 828: | ||
===== Package2Hash ===== | ===== Package2Hash ===== | ||
This is a SHA-256 hash calculated over the [[Package2|package2]] image. Since the hash calculation is an optional step in pkg2ldr, this item is only valid in recovery mode. Otherwise, an error is returned instead. | This is a SHA-256 hash calculated over the [[Package2|package2]] image. Since the hash calculation is an optional step in pkg2ldr, this item is only valid in recovery mode. Otherwise, an error is returned instead. | ||
===== Bcc ===== | |||
This is a 0x320 bytes buffer split across 25 items of 0x20 bytes each. When put together, these form a Boot Certificate Chain (BCC) for Switch 2 remote device attestation. | |||
The format follows the [https://pigweed.googlesource.com/open-dice/+/HEAD/docs/specification.md Open Profile for DICE] from Google and includes the main DK_pub and the following entries (twice, likely for phases 2 and 3): | |||
* codeHash (empty) | |||
* configurationDescriptor ("Security version" set to 0) | |||
* authorityHash (empty) | |||
* mode ("Normal") | |||
* keyUsage ("keyCertSign") | |||
* subjectPublicKey (changes on reboot) | |||
=== ShowError === | === ShowError === | ||