Difference between revisions of "Nand/private/movable.sed"

From 3dbrew
Jump to navigation Jump to search
Line 17: Line 17:
 
|-
 
|-
 
| 0x108
 
| 0x108
| 0x10
+
| 0x8
 
| ?
 
| ?
 
|-
 
|-
| 0x118
+
| 0x110
| 0x8
+
| 0x10
| Last 8-bytes of an [[AES]] engine keyY for 3 keyslots
+
| [[AES]] engine keyY for 3 keyslots
 
|}
 
|}
  
This file is transferred to the destination 3DS during a [[System Transfer]], the source 3DS then uses a new file retrieved from the shop server. This keyY is the console-unique portion of these 3 keyslots. All of the data under [[SD Filesystem|sdmc/Nintendo 3DS/<ID0>/<ID1>]] and [[Flash Filesystem|nand/data/<ID0>]] use these console-unique keyslots. It's unknown where the first 8-bytes of the keyY is loaded from.
+
This file is transferred to the destination 3DS during a [[System Transfer]], the source 3DS then uses a new file retrieved from the shop server. This keyY is the console-unique portion of these 3 keyslots. All of the data under [[SD Filesystem|sdmc/Nintendo 3DS/<ID0>/<ID1>]] and [[Flash Filesystem|nand/data/<ID0>]] use these console-unique keyslots.
  
 
Movable.sed always exists on retail, however if this file doesn't exist the system will fall-back to using a console-unique keyY already in [[PSPXI:GetLocalFriendCodeSeed|memory]], with the last 8-bytes being loaded from the 8-bytes following that u64. Therefore, movable.sed presumably doesn't exist on development units.
 
Movable.sed always exists on retail, however if this file doesn't exist the system will fall-back to using a console-unique keyY already in [[PSPXI:GetLocalFriendCodeSeed|memory]], with the last 8-bytes being loaded from the 8-bytes following that u64. Therefore, movable.sed presumably doesn't exist on development units.
  
 
The keyY is hashed with SHA256, the first 0x10-bytes from the hash is used for ID0 in [[SD Filesystem|sdmc/Nintendo 3DS/<ID0>/<ID1>]] and [[Flash Filesystem|nand/data/<ID0>]].
 
The keyY is hashed with SHA256, the first 0x10-bytes from the hash is used for ID0 in [[SD Filesystem|sdmc/Nintendo 3DS/<ID0>/<ID1>]] and [[Flash Filesystem|nand/data/<ID0>]].

Revision as of 04:59, 25 August 2012

Offset Size Description
0x0 0x4 Magic "SEED"
0x4 0x4 This u8 must be zero
0x8 0x100 RSA-2048 signature over the 0x10-byte data at 0x108
0x108 0x8 ?
0x110 0x10 AES engine keyY for 3 keyslots

This file is transferred to the destination 3DS during a System Transfer, the source 3DS then uses a new file retrieved from the shop server. This keyY is the console-unique portion of these 3 keyslots. All of the data under sdmc/Nintendo 3DS/<ID0>/<ID1> and nand/data/<ID0> use these console-unique keyslots.

Movable.sed always exists on retail, however if this file doesn't exist the system will fall-back to using a console-unique keyY already in memory, with the last 8-bytes being loaded from the 8-bytes following that u64. Therefore, movable.sed presumably doesn't exist on development units.

The keyY is hashed with SHA256, the first 0x10-bytes from the hash is used for ID0 in sdmc/Nintendo 3DS/<ID0>/<ID1> and nand/data/<ID0>.