915 bytes added
, 18:50, 25 August 2012
=Summary=
The console-unique CTCert is used for signing CTX files, the DeviceCert used by [[eShop]], and presumably for DSiWare exports. This ECDSA signature, the ECDSA private key, and the IssuerID is loaded from memory instead of NAND. This is the 3DS equivalent of DSi TWCert.
=Structure=
{| class="wikitable" border="1"
! Offset
! Size
! Description
|-
| 0x00
| 0x04
| Type
|-
| 0x04
| 0x3C
| ECDSA Signature
|-
| 0x40
| 0x40
| Padding
|-
| 0x80
| 0x40
| Cert Issuer ID, for retail this is "Nintendo CA - G3_NintendoCTR2prod", for dev "Nintendo CA - G3_NintendoCTR2dev"
|-
| 0xC0
| 0x04
| Key Type
|-
| 0xC4
| 0x40
| Key ID: "CT<DeviceId>-<ConsoleType>", where DeviceId is the hex [[PSPXI:GetDeviceId|DeviceId]], and ConsoleType is 00 for retail, 01 for dev
|-
| 0x104
| 0x3C
| ECDSA Public Key
|-
| 0x140
| 0x40
| Padding
|}
The ECDSA private key is located 0x3C bytes before this cert in internal memory.