Difference between revisions of "Extdata"

From 3dbrew
Jump to navigation Jump to search
(Created page with "This page describes the format and crypto of extdata, "extra data" and StreetPass data stored on SD card. At /Nintendo 3DS/<SomeID>/<SomeID>/extdata/00000000 is...")
 
Line 2: Line 2:
 
At /Nintendo 3DS/<SomeID>/<SomeID>/extdata/00000000 is directories for each title, with Quota.dat inside each dir. Then there's a sub-directory 00000000, which contains the actual extdata. Size and number of files in this dir varies per title.
 
At /Nintendo 3DS/<SomeID>/<SomeID>/extdata/00000000 is directories for each title, with Quota.dat inside each dir. Then there's a sub-directory 00000000, which contains the actual extdata. Size and number of files in this dir varies per title.
  
These files are encrypted with AES-CTR. The key is unknown, might be title and console unique. The base CTR is fixed: the CTR never changes after each write. Thus it is possible to obtain some cleartext by XORing one file with a newer file, where the newer file overwrote zeros in the original file with non-zero data. Some Ridge Racer extdata from some replay data: https://gist.github.com/d6b646c581d386b4fa83
+
These files are encrypted with AES-CTR. The key is unknown, this is console-unique and presumably game-unique. The base CTR is fixed: the CTR never changes after each write. Thus it is possible to obtain some cleartext by XORing one file with a newer file, where the newer file overwrote zeros in the original file with non-zero data. Some Ridge Racer extdata from some replay data: https://gist.github.com/d6b646c581d386b4fa83

Revision as of 03:33, 13 April 2011

This page describes the format and crypto of extdata, "extra data" and StreetPass data stored on SD card. At /Nintendo 3DS/<SomeID>/<SomeID>/extdata/00000000 is directories for each title, with Quota.dat inside each dir. Then there's a sub-directory 00000000, which contains the actual extdata. Size and number of files in this dir varies per title.

These files are encrypted with AES-CTR. The key is unknown, this is console-unique and presumably game-unique. The base CTR is fixed: the CTR never changes after each write. Thus it is possible to obtain some cleartext by XORing one file with a newer file, where the newer file overwrote zeros in the original file with non-zero data. Some Ridge Racer extdata from some replay data: https://gist.github.com/d6b646c581d386b4fa83