Difference between revisions of "DSiWare Exports"

From 3dbrew
Jump to navigation Jump to search
Line 1: Line 1:
The DSiWare exported from a 3DS is located at "[[SD_Filesystem|sdmc]]:/Nintendo 3DS/<ID0>/<ID1>/Nintendo DSiWare". Filenames are same format as DSi: "<TitleID-Low>.bin". The keys/format for these files are completely different from [http://dsibrew.org/wiki/Tad DSi]. Like DSi, 3DS DSiWare exports seem to use [http://dsibrew.org/wiki/ES_block_encryption ES] block encryption. The below sizes include the 0x20-byte ES block metadata.
+
The DSiWare exported from a 3DS is located at "[[SD_Filesystem|sdmc]]:/Nintendo 3DS/<ID0>/<ID1>/Nintendo DSiWare". Filenames are same format as DSi: "<TitleID-Low>.bin". The keys/format for these files are completely different from [http://dsibrew.org/wiki/Tad DSi]. The below sizes include the 0x20-byte block metadata.
  
DSiWare exported from 3DS are encrypted using the same [[Nand/private/movable.sed|keyslot]] used for encrypting other 3DS [[SD_Filesystem|SD]] card data.
+
DSiWare exported from 3DS use [[Nand/private/movable.sed|keyslots]] initialized by movable.sed, these exports are encrypted with AES-CTR.
  
=File structure=
+
=Block Metadata=
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
!  Size
 +
!  Description
 +
|-
 +
| 0x0
 +
| 0x10
 +
| AES MAC
 +
|-
 +
| 0x10
 +
| 0x10
 +
| CTR
 +
|}
 +
 
 +
Each section begins with the actual encrypted data, followed by this block metadata.
 +
 
 +
=File Structure=
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 12: Line 30:
 
| 0x0
 
| 0x0
 
| 0x4020
 
| 0x4020
| Banner?
+
| Banner section
 
|-
 
|-
 
| 0x4020
 
| 0x4020
 
| 0xA0
 
| 0xA0
| Header?
+
| Header section
 
|-
 
|-
 
| 0x40C0
 
| 0x40C0
 
| 0x400
 
| 0x400
| Footer?
+
| Footer section
 
|-
 
|-
 
| 0x44C0
 
| 0x44C0
 
|  
 
|  
| Data for the content sections is stored here, where each section is encrypted under separate ES blocks.
+
| Data for the 4 content sections are stored here.
 
|}
 
|}

Revision as of 07:19, 22 April 2013

The DSiWare exported from a 3DS is located at "sdmc:/Nintendo 3DS/<ID0>/<ID1>/Nintendo DSiWare". Filenames are same format as DSi: "<TitleID-Low>.bin". The keys/format for these files are completely different from DSi. The below sizes include the 0x20-byte block metadata.

DSiWare exported from 3DS use keyslots initialized by movable.sed, these exports are encrypted with AES-CTR.

Block Metadata

Offset Size Description
0x0 0x10 AES MAC
0x10 0x10 CTR

Each section begins with the actual encrypted data, followed by this block metadata.

File Structure

Offset Size Description
0x0 0x4020 Banner section
0x4020 0xA0 Header section
0x40C0 0x400 Footer section
0x44C0 Data for the 4 content sections are stored here.