Line 1: |
Line 1: |
− | The Nintendo 3DS utilizes a similar title-based organization as seen in the Wii and DSi platforms. The update server is located [http://nus.cdn.c.shop.nintendowifi.net/ccs/download/ here]. When using SSL, the update/shop servers must be accessed via SSLv3. | + | The Nintendo 3DS utilizes a similar title-based organization as seen in the Wii and DSi platforms. The update server is located [http://nus.cdn.c.shop.nintendowifi.net/ccs/download/ here]. |
| | | |
| For a list of 3DS titles see the [[Title list]]. | | For a list of 3DS titles see the [[Title list]]. |
Line 211: |
Line 211: |
| |} | | |} |
| | | |
− | "'''<ContentID>.tmd'''" - (The Content ID is a u32, initially: '''00000000''' when the title is first installed. Changing by an increment of +'''0x1''' for each title update the 3DS installs) This is the [[Title metadata]] associated with the title, it is encrypted with a console-unique [[AES|keyslot]]. The decrypted TMD is available on Nintendo's CDN server at "http://nus.cdn.c.shop.nintendowifi.net/ccs/download/TitleIDhere/tmd". Though CDN version of the title TMD has a certificate chain attached at the end of the TMD, so removing it will give you the 1:1 decrypted TMD. After installation the "<ContentID>.tmd" is redundant, because important title data is extracted and imported into the [[Title Database|title.db]] and ".cmd" files, but is however kept as a reference. | + | "'''<ContentID>.tmd'''" - (The Content ID is a u32, initially: '''00000000''' when the title is first installed. Changing by an increment of +'''0x1''' for each title update the 3DS installs) This is the [[Title metadata]] associated with the title, it is encrypted with a console-unique [[AES|keyslot]]. The decrypted TMD is available on Nintendo's CDN server at "http://nus.cdn.c.shop.nintendowifi.net/ccs/download/TitleIDhere/tmd.OptionallyTitleVersionHere". Though CDN version of the title TMD has a certificate chain attached at the end of the TMD, so removing it will give you the 1:1 decrypted TMD. After installation the "<ContentID>.tmd" is redundant, because important title data is extracted and imported into the [[Title Database|title.db]] and ".cmd" files, but is however kept as a reference. |
| | | |
| | | |
Line 249: |
Line 249: |
| |- | | |- |
| | 0x4 | | | 0x4 |
− | | 0x1C | + | | 0x4 |
− | | For NAND titles' .cmd these 2 words are usually value 1, the rest of the header is all-zero. The last 0x10-bytes of this header is an AES MAC? | + | | Number of entries? Usually the same as the following u32. |
| + | |- |
| + | | 0x8 |
| + | | 0x4 |
| + | | Number of AESMACs? Usually the same as the preceding u32. |
| + | |- |
| + | | 0xC |
| + | | 0x4 |
| + | | Unknown, usually (always?) 1. |
| + | |- |
| + | | 0x10 |
| + | | 0x10 |
| + | | AESMAC over contents? |
| |- | | |- |
| | 0x20 | | | 0x20 |
− | | 0x8*(No. of entries) | + | | 0x4*(No. of entries) |
− | | Entries for each content begin here with size 0x8. | + | | List of contentIDs in (usually) descending order |
| + | |- |
| + | | 0x20 + 0x4*(No. of entries) |
| + | | 0x4*(No. of entries) |
| + | | List of contentIDs in (usually) ascending order |
| |- | | |- |
| | 0x20+0x8*(No. of entries) | | | 0x20+0x8*(No. of entries) |
| | 0x10*(No. of entries) | | | 0x10*(No. of entries) |
− | | These are MACs, one for each content. | + | | These are AESMACs, one for each content. |
| |} | | |} |
| | | |