Changes

Jump to navigation Jump to search
3,911 bytes removed ,  16:56, 22 February 2015
Line 294: Line 294:  
|-
 
|-
 
| 0x00-0x03
 
| 0x00-0x03
| TWL keyslots.  
+
| TWL keys.
 
| NATIVE_FIRM hard-boot.
 
| NATIVE_FIRM hard-boot.
 
| NATIVE_FIRM hard-boot.
 
| NATIVE_FIRM hard-boot.
Line 301: Line 301:  
|-
 
|-
 
| 0x04..0x07
 
| 0x04..0x07
| These are the [[Flash_Filesystem|NAND]] encryption keyslots, which keyslot gets used is determined by the [[NCSD]] partition FS type and the partition encryption type.
+
| [[Flash_Filesystem|NAND]] partition keys.
The New3DS Process9 sets the keyY for keyslot 0x05(New3DS CTRNAND) to a key from .(ro)data.
+
 
| Bootrom.
+
Keyslot is determined by [[NCSD]] partition FS type and encryption type. The New3DS Process9 sets the keyY for keyslot 0x05 (New3DS CTRNAND) to a key from .(ro)data.
| Bootrom.
  −
| -
  −
| Yes
  −
|-
  −
| 0x08..0x0B
  −
| These keyslots use the same console-unique keyX. Each keyslot has a separate keyY.
   
| Bootrom.
 
| Bootrom.
 
| Bootrom.
 
| Bootrom.
Line 316: Line 310:  
|-
 
|-
 
| 0x0A
 
| 0x0A
| This is the console-unique keyslot used for encrypting the all-zero 0x10-byte block in the [[DSiWare_Exports|DSiWare_Exports]] header.
+
| DSiWare export key.
 +
 
 +
Used for encrypting the all-zero 0x10-byte block in the [[DSiWare_Exports|DSiWare_Exports]] header. Console-unique.
 
| See above keyslot info.
 
| See above keyslot info.
 
| See above keyslot info.
 
| See above keyslot info.
 
| -
 
| -
| Yes
  −
|-
  −
| 0x0C..0x0F
  −
| All of these keyslots are set to the same key-data, which is a regular normal-key. The keyX written before the normal-key is console-unique, this keyX is the same for all of these keyslots.
  −
| Bootrom.
  −
| Bootrom?
  −
| Bootrom.
   
| Yes
 
| Yes
 
|-
 
|-
 
| 0x0D
 
| 0x0D
| SSL-certificate key. See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]].
+
| SSL-certificate key.
 +
 
 +
See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]].
 
| -
 
| -
 
| -
 
| -
| Bootrom.
  −
| Yes
  −
|-
  −
| 0x10
  −
| The console-unique keyX is set before the normal-key.
  −
| Bootrom.
  −
| Bootrom?
   
| Bootrom.
 
| Bootrom.
 
| Yes
 
| Yes
 
|-
 
|-
 
| 0x11
 
| 0x11
| This is used for general normal-key crypto, where the normal-key is set by FIRM. This keyslot is also used by the New3DS [[FIRM]] arm9 binary loader.
+
| Temporary keyslot.
 +
 
 +
Used by FIRM for general normal-key crypto. Also used by the New3DS [[FIRM]] arm9 binary loader.
 
| Arm9Loader.  
 
| Arm9Loader.  
 
| Arm9Loader.
 
| Arm9Loader.
 
| NATIVE_FIRM.
 
| NATIVE_FIRM.
 
| Yes
 
| Yes
|-
  −
| 0x12
  −
| Unused
  −
| -
  −
| -
  −
| -
  −
| -
  −
|-
  −
| 0x13
  −
| Unused
  −
| -
  −
| -
  −
| -
  −
| -
   
|-
 
|-
 
| 0x14
 
| 0x14
Line 369: Line 341:  
| NATIVE_FIRM boot.
 
| NATIVE_FIRM boot.
 
| -
 
| -
| Yes
  −
|-
  −
| 0x15..0x16
  −
| The console-unique keyX is set before the normal-key.
  −
| Bootrom.
  −
| Bootrom?
  −
| Bootrom.
   
| Yes
 
| Yes
 
|-
 
|-
Line 391: Line 356:  
| See previous info for this keyslot.
 
| See previous info for this keyslot.
 
| No
 
| No
|-
  −
| 0x17
  −
| The console-unique keyX is set before the normal-key.
  −
| Bootrom.
  −
| Bootrom?
  −
| Bootrom.
  −
| Yes
  −
|-
  −
| 0x18..0x1B
  −
| All of these keyslots are set to the same key-data, which is a regular normal-key. The console-unique keyX is set before the normal-key, this keyX is the same for all of these keyslots.
  −
| Bootrom.
  −
| Bootrom?
  −
| Bootrom.
  −
| Yes
  −
|-
  −
| 0x1C..0x1F
  −
| All of these keyslots are set to the same key-data, which is a regular normal-key. The console-unique keyX is set before the normal-key, this keyX is the same for all of these keyslots.
  −
| Bootrom.
  −
| Bootrom?
  −
| Bootrom.
  −
| Yes
   
|-
 
|-
 
| 0x18..0x1F
 
| 0x18..0x1F
Line 421: Line 365:  
|-
 
|-
 
| 0x18
 
| 0x18
| New3DS [[NCCH]] keyslot, starting with [[9.3.0-21|9.3.0-X]].
+
| New3DS [[NCCH]] key.
| See above keyslot info.
+
 
 +
Starting with [[9.3.0-21|9.3.0-X]].
 +
| Arm9Loader.
 
| NATIVE_FIRM
 
| NATIVE_FIRM
 
| -
 
| -
| Yes
+
| No
 
|-
 
|-
 
| 0x19
 
| 0x19
| New3DS gamecard [[Savegames|savedata]] keyslot equalivant of keyslot 0x33, used when a [[NCSD]] flag is set to a certain value(implemented with [[9.3.0-21|9.3.0-X]]).
+
| New3DS gamecard [[Savegames|savedata]] AES-MAC key.
| See above keyslot info.
+
 
 +
Equivalent of keyslot 0x33, used when a [[NCSD]] flag is set to a certain value (implemented with [[9.3.0-21|9.3.0-X]]).
 +
| Arm9Loader.
 
| NATIVE_FIRM
 
| NATIVE_FIRM
 
| -
 
| -
| Yes
+
| No
 
|-
 
|-
 
| 0x1A
 
| 0x1A
| New3DS gamecard [[Savegames|savedata]] keyslot equalivant of keyslot 0x37, used when a [[NCSD]] flag is set to a certain value(implemented with [[9.3.0-21|9.3.0-X]]).
+
| New3DS gamecard [[Savegames|savedata]] actual key.
| See above keyslot info.
+
 
 +
Equivalent of keyslot 0x37, used when a [[NCSD]] flag is set to a certain value (implemented with [[9.3.0-21|9.3.0-X]]).
 +
| Arm9Loader.
 
| NATIVE_FIRM
 
| NATIVE_FIRM
 
| -
 
| -
| Yes
+
| No
|-
  −
| 0x20..0x23
  −
| All of these keyslots are set to the same key-data, which is a regular normal-key. The keyX written to these keyslots before writing the normal-key by the bootrom, is console-unique.
  −
| Bootrom.
  −
| -
  −
| Bootrom.
  −
| Yes
  −
|-
  −
| 0x24
  −
| This is set to a normal-key by bootrom. The keyX written to this keyslot before writing the normal-key by the bootrom, is console-unique.
  −
| Bootrom.
  −
| Bootrom?
  −
| Bootrom.
  −
| Yes
   
|-
 
|-
 
| 0x25
 
| 0x25
 
| [[7.0.0-13|v7.0]] [[NCCH]] key.
 
| [[7.0.0-13|v7.0]] [[NCCH]] key.
<!--
  −
The keyX and keyY initialized by bootrom for this keyslot are console-unique.
  −
-->
   
| NATIVE_FIRM [[Savegames#6.0.0-11_Savegame_keyY|boot]].
 
| NATIVE_FIRM [[Savegames#6.0.0-11_Savegame_keyY|boot]].
 
| NATIVE_FIRM.
 
| NATIVE_FIRM.
| -
  −
| Yes
  −
|-
  −
| 0x26
  −
| Unused
  −
| -
  −
| -
  −
| -
  −
| Yes
  −
|-
  −
| 0x27
  −
| Unused
  −
| -
  −
| -
  −
| -
  −
| Yes
  −
|-
  −
| 0x28
  −
| Unknown. The normal-key for this is the same as keyslot 0x24, the console-unique keyX written before the normal-key is different from keyslot 0x24.
  −
| Bootrom.
  −
| Bootrom?
  −
| Bootrom.
  −
| Yes
  −
|-
  −
| 0x29
  −
| Unknown. The keyX written before the normal-key is console-unique.
  −
| Bootrom.
  −
| Bootrom?
  −
| Bootrom.
  −
| Yes
  −
|-
  −
| 0x2A
  −
| Unknown. The keyX written before the normal-key is console-unique.
  −
| Bootrom.
  −
| Bootrom?
  −
| Bootrom.
  −
| Yes
  −
|-
  −
| 0x2B
  −
| Unknown. The keyX written before the normal-key is console-unique.
  −
| Bootrom.
  −
| Bootrom?
  −
| Bootrom.
  −
| Yes
  −
|-
  −
| 0x2C..0x2F
  −
| All of these keyslots use the same keyX initialized by bootrom. During key-init in arm9 bootrom, keyslots 0x2D and 0x2F are set to the same keyY.
  −
| Bootrom.
  −
| Bootrom, then NATIVE_FIRM for keyslots 0x2C and 0x2F on >=v6.0 FIRM.
   
| -
 
| -
 
| Yes
 
| Yes
 
|-
 
|-
 
| 0x2C
 
| 0x2C
| [[NCCH|NCCH]] key. Keyslots 0x2C..0x2F all use the same keyX, set by bootrom.
+
| [[NCCH|NCCH]] key.
 
| Bootrom.
 
| Bootrom.
 
| Process9.
 
| Process9.
Line 522: Line 406:  
|-
 
|-
 
| 0x2D
 
| 0x2D
| UDS local-WLAN CCMP key. See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]].
+
| UDS local-WLAN CCMP key.
 +
 
 +
See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]].
 
| Bootrom.
 
| Bootrom.
 
| Bootrom.
 
| Bootrom.
Line 529: Line 415:  
|-
 
|-
 
| 0x2E
 
| 0x2E
| See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]].
+
| Unknown key.
 +
 
 +
See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]].
 
| Bootrom.
 
| Bootrom.
 
| NATIVE_FIRM.
 
| NATIVE_FIRM.
Line 538: Line 426:  
| [[Savegames#6.0.0-11_Savegame_keyY|v6.0]] save key.
 
| [[Savegames#6.0.0-11_Savegame_keyY|v6.0]] save key.
 
| Bootrom.
 
| Bootrom.
| Bootrom, then later NATIVE_FIRM.
+
| NATIVE_FIRM.
| -
  −
| Yes
  −
|-
  −
| 0x30-0x33
  −
| All of these keyslots use the same keyX. The keyY for keyslots 0x32 and 0x33 are set to the same keyY by bootrom.
  −
| Bootrom.
  −
| Bootrom, then later NATIVE_FIRM except for keyslot 0x32.
   
| -
 
| -
 
| Yes
 
| Yes
 
|-
 
|-
 
| 0x30
 
| 0x30
| This keyY is initialized via [[Nand/private/movable.sed|movable.sed]]. This is used for calculating the AESMACs under SD [[SD_Filesystem|/Nintendo 3DS/<ID0>/<ID1>/]](except [[DSiWare_Exports]]) and [[Flash_Filesystem|NAND]] /data/.
+
| SD/NAND AES-MAC key.
 +
 
 +
This keyY is initialized via [[Nand/private/movable.sed|movable.sed]]. This is used for calculating the AESMACs under SD [[SD_Filesystem|/Nintendo 3DS/<ID0>/<ID1>/]] (except [[DSiWare_Exports]]) and [[Flash_Filesystem|NAND]] /data/.
 
| Bootrom.
 
| Bootrom.
| Bootrom(?), then later NATIVE_FIRM.
+
| NATIVE_FIRM.
 
| -
 
| -
 
| Yes
 
| Yes
 
|-
 
|-
 
| 0x31
 
| 0x31
| APT wrap key. See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]]
+
| APT wrap key.
   −
NATIVE_FIRM sets this keyY to the same one used for keyslot 0x2E.
+
See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]]. NATIVE_FIRM sets this keyY to the same one used for keyslot 0x2E.
 
| Bootrom.
 
| Bootrom.
 
| Bootrom(?), then later NATIVE_FIRM.
 
| Bootrom(?), then later NATIVE_FIRM.
Line 566: Line 449:  
|-
 
|-
 
| 0x32
 
| 0x32
| See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]].
+
| Unknown.
 +
 
 +
See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]].
 
| Bootrom.
 
| Bootrom.
 
| Bootrom.
 
| Bootrom.
Line 573: Line 458:  
|-
 
|-
 
| 0x33
 
| 0x33
| This is the keyslot for the gamecard [[Savegames|savedata]] AESMAC.
+
| Gamecard [[Savegames|savedata]] AES-MAC.
 
| Bootrom.
 
| Bootrom.
| Bootrom, then later NATIVE_FIRM.
+
| NATIVE_FIRM.
| -
  −
| Yes
  −
|-
  −
| 0x34-0x37
  −
| All four of these keyslots use the same keyX. Keyslots 0x35, 0x36, and 0x37 use the same bootrom keyY. See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]] for keyslot 0x36.
  −
| Bootrom.
  −
| Bootrom, then NATIVE_FIRM for keyslot 0x37.
   
| -
 
| -
 
| Yes
 
| Yes
 
|-
 
|-
 
| 0x34
 
| 0x34
| This keyY is initialized via [[Nand/private/movable.sed|movable.sed]]. This is used for encrypting *all* SD card data under [[SD_Filesystem|/Nintendo 3DS/<ID0>/<ID1>/]].
+
| SD key.
 +
 
 +
This keyY is initialized via [[Nand/private/movable.sed|movable.sed]]. This is used for encrypting *all* SD card data under [[SD_Filesystem|/Nintendo 3DS/<ID0>/<ID1>/]].
 
| Bootrom.
 
| Bootrom.
| Bootrom(?), then later NATIVE_FIRM.
+
| NATIVE_FIRM.
 
| -
 
| -
 
| Yes
 
| Yes
 
|-
 
|-
 
| 0x35
 
| 0x35
| This is the keyslot used for movable.sed encryption + AESMAC with the import/export [[FSPXI:ImportIntegrityVerificationSeed|commands]].
+
| Movable.sed key.
 +
 
 +
This is the keyslot used for movable.sed encryption + AES-MAC with the import/export [[FSPXI:ImportIntegrityVerificationSeed|commands]].
 
| Bootrom.
 
| Bootrom.
 
| Bootrom.
 
| Bootrom.
Line 602: Line 484:  
| 0x36
 
| 0x36
 
| Unknown.
 
| Unknown.
 +
 +
See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]].
 
| Bootrom.
 
| Bootrom.
 
| Bootrom.
 
| Bootrom.
Line 608: Line 492:  
|-
 
|-
 
| 0x37
 
| 0x37
| This is the keyslot for the actual gamecard [[Savegames|savedata]] encryption.
+
| Gamecard [[Savegames|savedata]] actual key.
 
| Bootrom.
 
| Bootrom.
| Bootrom, then later NATIVE_FIRM.
+
| NATIVE_FIRM.
| -
  −
| Yes
  −
|-
  −
| 0x38-0x3B
  −
| All of these keyslots use the same keyX. Keyslot 0x3B uses an unique keyY initialized by bootrom.
  −
| Bootrom.
  −
| Bootrom, then NATIVE_FIRM for keyslot 0x3A.
   
| -
 
| -
 
| Yes
 
| Yes
 
|-
 
|-
 
| 0x38
 
| 0x38
| See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]].
+
| Unknown.
 +
 
 +
See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]].
 
| Bootrom.
 
| Bootrom.
 
| Bootrom.
 
| Bootrom.
Line 629: Line 508:  
|-
 
|-
 
| 0x39
 
| 0x39
| See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]]. NATIVE_FIRM sets this keyY to the same one used for keyslot 0x2E.
+
| Unknown.
 +
 
 +
See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]]. NATIVE_FIRM sets this keyY to the same one used for keyslot 0x2E.
 
| Bootrom.
 
| Bootrom.
| Bootrom, then NATIVE_FIRM.
+
| NATIVE_FIRM.
 
| -
 
| -
 
| Yes
 
| Yes
 
|-
 
|-
 
| 0x3A
 
| 0x3A
| This keyY is initialized via [[Nand/private/movable.sed|movable.sed]]. This is used for calculating the AESMACs for SD [[DSiWare_Exports]].
+
| DSiWare export key.
| Bootrom.
+
 
| Bootrom(?), then later NATIVE_FIRM.
+
This keyY is initialized via [[Nand/private/movable.sed|movable.sed]]. This is used for calculating the AESMACs for SD [[DSiWare_Exports]].
| -
  −
| Yes
  −
|-
  −
| 0x3B
  −
| Unknown.
  −
| Bootrom.
  −
| Bootrom.
  −
| -
  −
| Yes
  −
|-
  −
| 0x3C
  −
| Unknown. The keyX for this is unique for this keyslot. The keyY for this initialized by bootrom is the same as keyslot 0x38.
  −
| Bootrom.
   
| Bootrom.
 
| Bootrom.
 +
| NATIVE_FIRM.
 
| -
 
| -
 
| Yes
 
| Yes
 
|-
 
|-
 
| 0x3D
 
| 0x3D
| Common key. Used to decrypt title keys in [[Ticket]]. Used by Gateway.
+
| Common key.
 +
 
 +
Used to decrypt title keys in [[Ticket]]. Used by Gateway.
 
| Bootrom.
 
| Bootrom.
 
| NATIVE_FIRM.
 
| NATIVE_FIRM.
| -
  −
| Yes
  −
|-
  −
| 0x3E
  −
| Unknown. This keyslot uses an unique keyX/keyY.
  −
| Bootrom.
  −
| Bootrom.
  −
| -
  −
| Yes
  −
|-
  −
| 0x3F
  −
| Unknown. This keyslot uses an unique keyX/keyY.
  −
| Bootrom.
  −
| Bootrom.
   
| -
 
| -
 
| Yes
 
| Yes

Navigation menu