Changes

609 bytes added ,  14:09, 23 August 2017
no edit summary
Line 6: Line 6:     
= Structure =
 
= Structure =
 +
== NAND ==
 
Below is the BCT structure used by the Switch, which is a minimal variation of the Tegra 210 BCT format.
 
Below is the BCT structure used by the Switch, which is a minimal variation of the Tegra 210 BCT format.
   Line 49: Line 50:  
|  0x0444
 
|  0x0444
 
|  0xCC
 
|  0xCC
|  customer_data
+
[[#BCT#customer_data|customer_data]]
 
|  Data block available for the customer. Used in key generation.
 
|  Data block available for the customer. Used in key generation.
 
  0x0444: padding_0x0C
 
  0x0444: padding_0x0C
Line 200: Line 201:  
|  Empty.
 
|  Empty.
 
|-
 
|-
 +
|}
 +
 +
=== customer_data ===
 +
This data block is ignored by the boot ROM, therefore is available for the programmer to use freely.
 +
The Switch uses 0xB0 bytes of this area, at offset 0x0450, to store the active [[#Flash_Filesystem#Keyblob|keyblob]]. All remaining bytes are zero.
 +
 +
The first bootloader validates and decrypts this block for further key generation.
 +
The decrypted keyblob payload is as follows.
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset
 +
! Size
 +
! Description
 +
|-
 +
| 0x0
 +
| 0x80
 +
| Array of master static key encryption keys
 +
|-
 +
| 0x80
 +
| 0x10
 +
| [[Package1|Stage 2]] key
 
|}
 
|}