7.838
Bearbeitungen
ICON (Diskussion | Beiträge) (Signatur) |
ICON (Diskussion | Beiträge) |
||
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 89: | Zeile 89: | ||
{{Hauptartikel|Zertifikatskette}} | {{Hauptartikel|Zertifikatskette}} | ||
Die Signatur beinhaltet den SHA1-Hash der TMD (vom Aussteller bis zum Ende der Inhalte), welcher mit dem Private-Key verschlüsselt ist. Um diesen zu entschlüsseln, muss der Public-Key aus dem CP-Zertifikat (welches üblicherweise das erste angehängte Zertifikat ist) [[w:RSA-Kryptosystem#Erzeugung_des_öffentlichen_und_privaten_Schlüssels|gebildet]] und die Signatur entschlüsselt werden (nur die Daten, ohne Signatur-Typ und Padding). Stimmt der gebildete SHA1-Hash der TMD mit dem entschlüsselten Hash aus der Signatur überein, ist die TMD valide und von Nintendo signiert. | Die Signatur beinhaltet den SHA1-Hash der TMD (vom Aussteller bis zum Ende der Inhalte), welcher mit dem Private-Key verschlüsselt ist. Um diesen zu entschlüsseln, muss der Public-Key aus dem CP-Zertifikat (welches üblicherweise das erste angehängte Zertifikat ist) [[w:RSA-Kryptosystem#Erzeugung_des_öffentlichen_und_privaten_Schlüssels|gebildet]] und die Signatur entschlüsselt werden (nur die Daten, ohne Signatur-Typ und Padding). Stimmt der gebildete SHA1-Hash der TMD mit dem entschlüsselten Hash aus der Signatur überein, ist die TMD valide und von Nintendo signiert. | ||
Wenn der SHA1-Hash nicht übereinstimmt und der gebildete SHA1-Hash der TMD mit <code>00</code> beginnt, ist diese [[Fakesigning|fakesigned]]. | |||
Das CP-Zertifikat ist von dem CA-Zertifikat signiert, welches wiederum mit dem Wii Root-Zertifikat signiert ist. | Das CP-Zertifikat ist von dem CA-Zertifikat signiert, welches wiederum mit dem Wii Root-Zertifikat signiert ist. | ||
Zeile 153: | Zeile 155: | ||
== Anwendungsbeispiel == | == Anwendungsbeispiel == | ||
''Siehe auch: [https://github.com/WiiDatabase/PyNUSD/blob/master/WADGEN.py WADGEN]'' | |||
Dieses Code-Beispiel in Python 3 parst eine TMD. | Dieses Code-Beispiel in Python 3 parst eine TMD. | ||
<syntaxhighlight lang="python"> | <syntaxhighlight lang="python"> | ||
Zeile 202: | Zeile 206: | ||
{{Top Icon Wii}} | {{Top Icon Wii}} | ||
{{Top Icon DSi}} | {{Top Icon DSi}} | ||
[[Kategorie:Nintendo DSi]] | |||
[[Kategorie:Nintendo Wii]] | |||
[[Kategorie:vWii]] |
Bearbeitungen