Line 112: |
Line 112: |
| The first 0x10-bytes are all-zero except the first byte which is usually 0x80. It's unknown what the first 0x10-bytes are used for. | | The first 0x10-bytes are all-zero except the first byte which is usually 0x80. It's unknown what the first 0x10-bytes are used for. |
| | | |
− | The hash at offset 0x12 hashes the 0x12-byte data at offset 0x0 followed by a zero u16. The RSA signature is signed by Nintendo. Following this header is the actual content payload, which is written to a cleartext file under the [[extdata]] /boss directory. The data following the payload header is written to extdata, but it's unknown what data is written to the extdata file before the content payload. | + | The hash at offset 0x12 hashes the 0x12-byte data at offset 0x0 followed by a zero u16. The RSA signature is signed by Nintendo. Following this header is the actual content payload, which is written to a cleartext file under the [[extdata]] /boss directory. |
| | | |
| === Payload Content Header === | | === Payload Content Header === |
Line 144: |
Line 144: |
| | 0x18 | | | 0x18 |
| | 0x4 | | | 0x4 |
− | | ? | + | | Probably some version field for the payload |
| |- | | |- |
| | 0x1C | | | 0x1C |
Line 158: |
Line 158: |
| | | |
| The hash at offset 0x1C hashes the 0x1C-byte data at offset 0x0 followed by a zero u16, followed by all of the remaining cleartext data following this header(the actual content data). | | The hash at offset 0x1C hashes the 0x1C-byte data at offset 0x0 followed by a zero u16, followed by all of the remaining cleartext data following this header(the actual content data). |
| + | |
| + | The downloaded boss data is written in the following format to extdata. |
| + | First an extdata header in the following format |
| + | {| class="wikitable" |
| + | |- |
| + | ! Offset |
| + | ! Length |
| + | ! Description |
| + | |- |
| + | | 0x0 |
| + | | 0x1 |
| + | | Size of header including this field. Always 0x18 |
| + | |- |
| + | | 0x1 |
| + | | 0xB |
| + | | Usually zero? |
| + | |- |
| + | | 0xC |
| + | | 0x4 |
| + | | Unknown |
| + | |- |
| + | | 0x10 |
| + | | 0x4 |
| + | | Download date in format: Bit 0-6 = day, Bit 7-10 = month, Bit 11-21 = year |
| + | |- |
| + | | 0x14 |
| + | | 0x4 |
| + | | Usually zero? Padding? |
| + | |} |
| + | Followed by the Payload Content Header without the hash and signature (first 0x1C bytes) and the actual payload. |
| | | |
| [[Category:Nintendo Software]] | | [[Category:Nintendo Software]] |