AES Registers: Difference between revisions
| Line 294: | Line 294: | ||
|- | |- | ||
| 0x00-0x03 | | 0x00-0x03 | ||
| TWL | | 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 | ||
| | | [[Flash_Filesystem|NAND]] partition keys. | ||
The New3DS Process9 sets the keyY for keyslot 0x05(New3DS CTRNAND) to a key from .(ro)data | |||
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. | | Bootrom. | ||
| Bootrom. | | Bootrom. | ||
| Line 316: | Line 310: | ||
|- | |- | ||
| 0x0A | | 0x0A | ||
| | | 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 | | Yes | ||
|- | |- | ||
| 0x0D | | 0x0D | ||
| SSL-certificate key. See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]]. | | SSL-certificate key. | ||
See [[PSPXI:EncryptDecryptAes|EncryptDecryptAes]]. | |||
| - | | - | ||
| - | | - | ||
| Bootrom. | | Bootrom. | ||
| Yes | | Yes | ||
|- | |- | ||
| 0x11 | | 0x11 | ||
| | | 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 | ||
|- | |- | ||
| 0x14 | | 0x14 | ||
| Line 369: | Line 341: | ||
| NATIVE_FIRM boot. | | NATIVE_FIRM boot. | ||
| - | | - | ||
| Yes | | Yes | ||
|- | |- | ||
| Line 391: | Line 356: | ||
| See previous info for this keyslot. | | See previous info for this keyslot. | ||
| No | | No | ||
|- | |- | ||
| 0x18..0x1F | | 0x18..0x1F | ||
| Line 421: | Line 365: | ||
|- | |- | ||
| 0x18 | | 0x18 | ||
| New3DS [[NCCH]] | | New3DS [[NCCH]] key. | ||
| | |||
Starting with [[9.3.0-21|9.3.0-X]]. | |||
| Arm9Loader. | |||
| NATIVE_FIRM | | NATIVE_FIRM | ||
| - | | - | ||
| | | No | ||
|- | |- | ||
| 0x19 | | 0x19 | ||
| New3DS gamecard [[Savegames|savedata]] | | New3DS gamecard [[Savegames|savedata]] AES-MAC key. | ||
| | |||
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 | ||
| - | | - | ||
| | | No | ||
|- | |- | ||
| 0x1A | | 0x1A | ||
| New3DS gamecard [[Savegames|savedata]] | | New3DS gamecard [[Savegames|savedata]] actual key. | ||
| | |||
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 | ||
| - | | - | ||
| | | No | ||
|- | |- | ||
| 0x25 | | 0x25 | ||
| [[7.0.0-13|v7.0]] [[NCCH]] key. | | [[7.0.0-13|v7.0]] [[NCCH]] key. | ||
| 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 | | Yes | ||
|- | |- | ||
| 0x2C | | 0x2C | ||
| [[NCCH|NCCH]] key | | [[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. | ||
| | | NATIVE_FIRM. | ||
| - | | - | ||
| 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. | ||
| | | NATIVE_FIRM. | ||
| - | | - | ||
| Yes | | Yes | ||
|- | |- | ||
| 0x31 | | 0x31 | ||
| APT wrap key. | | 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 | ||
| | | Gamecard [[Savegames|savedata]] AES-MAC. | ||
| Bootrom. | | Bootrom. | ||
| | | NATIVE_FIRM. | ||
| - | | - | ||
| 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. | ||
| | | NATIVE_FIRM. | ||
| - | | - | ||
| Yes | | Yes | ||
|- | |- | ||
| 0x35 | | 0x35 | ||
| This is the keyslot used for movable.sed encryption + | | 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 | ||
| | | Gamecard [[Savegames|savedata]] actual key. | ||
| Bootrom. | | Bootrom. | ||
| | | NATIVE_FIRM. | ||
| - | | - | ||
| 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. | ||
| | | 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. | ||
This keyY is initialized via [[Nand/private/movable.sed|movable.sed]]. This is used for calculating the AESMACs for SD [[DSiWare_Exports]]. | |||
| 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 | | Yes | ||