Dieser Artikel betrifft die Nintendo Wii

WAD: Unterschied zwischen den Versionen

Aus WiiDatabase Wiki
Zur Navigation springenZur Suche springen
Zeile 23: Zeile 23:
| 0x000B
| 0x000B
| 4
| 4
| Größe der [[Zertifikatskette]]
| [[Zertifikatskette|Zertifikatsketten]]-Größe
|-
|-
| 0x000C
| 0x000C

Version vom 27. November 2018, 16:12 Uhr

Eine WAD (Wii Archive Data) ist ein verschlüsselter Container, der Titel für die Nintendo Wii beinhaltet - darunter Kanäle, IOS und Systemmenüs. WADs können mit einem WAD-Installer installiert werden - wenn es sich dabei um Kanäle handelt, tauchen diese im Wii-Menü auf (sollten diese keine versteckte Kanäle sein, wie der EULA-Kanal).

Struktur

Header

Start Ende Länge Beschreibung
0x0000 0x0003 4 Header-Größe (immer 0x0020)
0x0004 0x0007 4 WAD-Typ ('Is\0\0' oder 'ib\0\0' (boot2) oder 'Bk\0\0'))
0x0008 0x000B 4 Zertifikatsketten-Größe
0x000C 0x000F 4 Reserviert (immer 0)
0x0010 0x0013 4 Ticket-Größe (ohne Zertifikate)
0x0014 0x0017 4 TMD-Größe (ohne Zertifikate)
0x0018 0x001B 4 Daten-Größe der verschlüsselten APP-Daten
0x001C 0x001F 4 Footer-Größe

Körper

Die Sektionen im Körper der WAD sind in der gleichen Reihenfolge angeordnet wie im Header. Jeder Block (Header, Sektionen) ist an 0x40 Bytes ausgerichtet. Demzufolge ist der Körper so angeordnet:

  • Zertifikatskette
  • Ticket
  • TMD
  • Verschlüsselte APP-Dateien

Dateien

Die Dateien im Körper sind verschlüsselt mit dem Title-Key (kann vom Ticket entschlüsselt werden), wobei der jeweilige Inhaltsindex als Initialisierungsvektor dient (die ersten zwei Bytes, die restlichen 14 sind mit Nullen aufgefüllt). Die SHA1-Summen der entschlüsselten Dateien muss mit den SHA1-Summen aus der TMD übereinstimmen.

Footer

Der Footer ist ein optionaler, unverschlüsselter Time-/Buildstamp.

Hinweise

  • Die Datengröße im Header bezieht sich auf die Größe der verschlüsselten App-Daten, nicht auf die Größe der entschlüsselten Daten (also mit Padding)
  • Die APP-Daten im Körper scheinen an 16 Bytes, anstatt an 64 ausgerichtet zu sein