Ticket: Difference between revisions

3dsguy (talk | contribs)
No edit summary
3dsguy (talk | contribs)
No edit summary
Line 43: Line 43:
| 0x0||0x40||Issuer
| 0x0||0x40||Issuer
|-
|-
| 0x40||0x3C||ECDH data for console-unique eShop tickets.
| 0x40||0x3C||ECC PublicKey
|-
|-
| 0x7C||0x3||Unknown, first u8 is 0x01.
| 0x7C||0x1||Format Version
|-
| 0x7D||0x1||CaCrlVersion
|-
| 0x7E||0x1||SignerCrlVersion
|-
|-
| 0x7F||0x10||Encrypted TitleKey
| 0x7F||0x10||Encrypted TitleKey
|-
|-
| 0x8F||0x1||Unknown
| 0x8F||0x1||Reserved
|-
|-
| 0x90||0x8||TicketID
| 0x90||0x8||TicketID
Line 57: Line 61:
| 0x9C||0x8||TitleID
| 0x9C||0x8||TitleID
|-
|-
| 0xA4||0x2||Unknown
| 0xA4||0x2||Systitle Access Mask (TWL Only. Clear for CTR)
|-
| 0xA6||0x2||Ticket title version
|-
|-
| 0xA6||0x2||Ticket title version, this generally the same as the title version stored in the [[TMD|Title Metadata]].
| 0xA8||0x4||AccessTitleId - Indicates which titles can access this title (TWL Only. Clear for CTR)
|-
|-
| 0xA8||0x8||Unused
| 0xAC||0x4||AccessTitleMask (Mask for AccessTitleId) (TWL Only. Clear for CTR)
|-
|-
| 0xB0||0x1||Unused
| 0xB0||0x1||License Type
|-
|-
| 0xB1||0x1||Ticket common [[AES|keyY]] index, usually 0x1 for retail system titles.
| 0xB1||0x1||Ticket common [[AES|keyY]] index, usually 0x1 for retail system titles.
|-
|-
| 0xB2||0x2F||Unused
| 0xB2||0x2A||Reserved
|-
| 0xDC||0x4||eShop Account ID?
|-
| 0xE0||0x1||Reserved
|-
| 0xE1||0x1||Audit
|-
| 0xE2||0x40||Content Index (TWL Only. Clear for CTR)
|-
|-
| 0xE1||0x1||Unknown
| 0x122||0x2||Reserved
|-
|-
| 0xE2||0x82||Unused
| 0x124||0x40||Limits
|-
|-
| 0x164||0xAC||Content Index Setup (Complex)
| 0x164||0xAC||Content Index (CTR Only)
|}
|}


The titlekey is decrypted by using the [[AES]] engine with the ticket common-key keyslot where the keyY is one of 6 keyYs loaded via the keyY index stored in the ticket. AES-CBC mode is used where the IV is the big-endian titleID. Note that on a retail unit index0 is a retail keyY, while on a dev-unit index0 is the dev common-key which is a normal-key.(On retail for these keyYs, the hardware key-scrambler is used)
* The Ticket Title Version is generally the same as the title version stored in the [[TMD|Title Metadata]]. Although it doesn't have to match the TMD version to be valid.
 
* The titlekey is decrypted by using the [[AES]] engine with the ticket common-key keyslot where the keyY is one of 6 keyYs loaded via the keyY index stored in the ticket. AES-CBC mode is used where the IV is the big-endian titleID. Note that on a retail unit index0 is a retail keyY, while on a dev-unit index0 is the dev common-key which is a normal-key.(On retail for these keyYs, the hardware key-scrambler is used)


== Certificate Chain ==
== Certificate Chain ==