RSA-Verschlüsselung
Aus open7x0.org
Inhaltsverzeichnis |
RSA-Verschlüsselung
MD5 - wofür ?
Siemens verteilt die Firmware-Updates für die Gigaset M7x0 in Dateien mit der Endung WSW. Daher werden die Dateien auch als WSW Dateien bezeichnet. Um sicherzustellen, dass eine WSW-Datei korrekt und vollständig auf die Box geladen wird, ist eine Prüfsumme mit in der WSW-Datei integriert. Die Prüfsumme wird mit dem bekannten MD5 Verfahren berechnet.
Nach der Übertragung der WSW-Datei auf die DVB-T Box wird die Prüfsumme der WSW-Datei von der Box berechnet und mit der Prüfsumme verglichen, die in der WSW-Datei abgelegt ist. Diese beiden Prüfsummen müssen übereinstimmen. Wenn dies nicht so ist, ist die WSW-Datei nicht vollständig übertragen worden oder wurde verändert.
RSA - wofür ?
Um nun zu verhindern, dass Dritte Änderungen an der WSW-Datei vornehmen kann man in die Trickkiste der Verschlüsselung greifen. Die MD5 Prüfsumme wird nicht einfach so in der WSW-Datei abgelegt, sondern sie wird verschlüsselt abgelegt. Als Verfahren hat Siemens hierzu RSA gewählt (zum Glück mit einer sehr kurzen Schlüssellänge von 168 Bit). Bei RSA wird ein Schlüsselpaar erzeugt. Der private Key und der public Key. Der private Key wird zum verschlüsseln verwendet, der public Key zum entschlüsseln.
Zwei Prüfsummen - wofür ?
Die Firmware-Updates der Gigaset M7x0 verwenden zwei Prüfsummen. Dabei handelt es sich um dieselbe MD5-Prüfsumme, die aber mit zwei unterschiedlichen RSA-Schlüsseln kodiert sind.
Der Grund für den zweiten RSA-Schlüssel ist relativ einfach: Es gelang einem M740AV-Besitzer den relativ schwachen RSA Schlüssel zu knacken. Seitdem waren wir auch in der Lage, eigene Updates zu generieren. Dieses gefiel Siemens aber gar nicht. Daher bauten die Siemensianer in ihren eigenen Updates ab Firmware 1.29.5 einem zweiten und wesentlich stärkeren RSA-Schlüssel ein. Und ab dieser Version haben alle Firmwareversionen von Siemens zwei Prüfsummen an Bord: die alte und die neue.
MD5 und RSA
Die MD5 Summe wird beim Erzeugen der WSW-Datei mit den private Key verschlüsselt und in der WSW-Datei abgelegt.
Die DVB-T Box prüft beim Update zuerst, ob die WSW-Datei unversehrt geblieben ist. Hierzu berechnet die Box die MD5 Summe des neuen Images und vergleicht diese mit der MD5 Summe aus der WSW-Datei, die mit Hilfe des public Keys entschlüsselt wurde. Sind diese beiden MD5 Summen identisch so wird das Update vollzogen.
Links zum Thema »Firmware«
- Allgemeine Infos:
- Hintergrundwissen:
- WSW-Dateien (M740AV), WSW-Header, RSA-Verschlüsselung
- RAM-Disk, Flash-RAM, Journaling Flash File System, Compressed ROM file system
- EPG Datenformat
- Reset, Rettungssystem

