Was ist das DFU-Dateiformat?
.dfu-Dateien speichern Firmware-Update-Daten für über USB angeschlossene Geräte gemäß der USB Device Firmware Upgrade-Spezifikation (USB-IF, Revision 1.1, 2004). Das Format wird primär für eingebettete Systeme und Mikrocontroller - STM32, Atmel, Nordic Semiconductor und ähnliche Plattformen - verwendet, entgegen einem weit verbreiteten Missverständnis nicht für Apple-Endgeräte.
Die Aktualisierung der Geräte-Firmware birgt immer das Risiko, das Gerät zu beschädigen, und sollte mit größter Sorgfalt durchgeführt werden. Firmware ist ein Softwareprogramm, das im dauerhaften Speicher des Geräts in Form eines vollständigen Betriebssystems oder einer Zwischensteuerungsebene eingebettet ist. Die Firmware kann über eine USB-Verbindung mit .dfu-Dateien aktualisiert werden. Eine beschädigte Firmware kann dauerhafte Schäden am Gerät verursachen. Die meisten modernen Geräte verfügen über Sicherheitsmaßnahmen gegen fehlgeschlagene Updates: Der DFU-Suffix fügt jeder .dfu-Datei eine CRC32-Prüfsumme hinzu, sodass das Gerät die Integrität überprüfen kann, bevor das Update angewendet wird.
Eine .dfu-Datei besteht aus einer gerätespezifischen Firmware-Nutzlast, gefolgt von einem obligatorischen 16-Byte-DFU-Suffix am Ende der Datei. Der Suffix kodiert die USB-Hersteller-ID (Vendor ID), die Produkt-ID, die DFU-Spezifikationsversion (bcdDFU) und die CRC32. STMicroelectronics erweitert das Basisformat um eine DfuSe-Variante, die vom STM32CubeProgrammer verwendet wird.
Der iOS-DFU-Wiederherstellungsmodus von Apple verwendet dasselbe USB-Protokoll, aber Apple verteilt Firmware als signierte .ipsw-Pakete - nicht als reine .dfu-Dateien.
Sicherheit
RISIKO: MEDIUMDFU-Dateien sind Firmware-Images, die zum Flashen auf Hardwaregeräte bestimmt sind. Das Flashen falscher oder bösartiger Firmware kann ein Gerät dauerhaft unbrauchbar machen («bricken»), da fehlerhafte Firmware Bootloader beschädigen kann. Flashen Sie nur .dfu-Dateien vom offiziellen Gerätehersteller. Die Datei selbst ist als Datensatz inert; das Risiko liegt in der Ausführung des Flash-Vorgangs. Seien Sie vorsichtig bei Websites, die Firmware verteilen - vergleichen Sie diese immer mit offiziellen Herstellerquellen und prüfen Sie die CRC.
Formatdetails
kurz gefasst- Apple iOS DFU-Modus - Apple-Geräte unterstützen den DFU-Modus (ein USB-Gerätezustand), aber Apple-Firmware wird als signierte .ipsw-Dateien verteilt, nicht als .dfu-Dateien; .dfu ist keine Apple-spezifische Dateiendung.
Programme zum Öffnen von DFU-Dateien
Technische Details
technische Spezifikation| Position des DFU-Suffixes | Letzte 16 Bytes der Datei - die DFU-Signatur ist ein Suffix, kein Header |
| Suffix-Magic | Bytes bei EOF-7 bis EOF-5: `0x55`, `0x46`, `0x44` - ergibt `DFU` rückwärts gelesen (`UFD`) |
| Integritätsprüfung | CRC32 über alle Dateibytes außer dem finalen 4-Byte-Feld `dwCRC` selbst; gespeichert im DFU-Suffix |
| Byte-Reihenfolge | Little-endian (DFU-Suffixfelder gemäß USB-IF-Spezifikation) |
| DFU-Spezifikationsversion | `bcdDFU`-Feld im Suffix: `0x0100` = DFU 1.0 (1999); `0x011A` = DFU 1.1 (2004) |
| Firmware-Nutzlast | Gerätespezifische binäre Rohdaten vor dem Suffix - keine Standard-Magic-Bytes; Format ist herstellerdefiniert |
| Hersteller-/Produkt-ID | Die Felder `idVendor` und `idProduct` im Suffix identifizieren die Ziel-USB-Geräteklasse |
| STMicroelectronics DfuSe | Erweiterte Variante: `DfuSe` ASCII-Präfix am Anfang der Nutzlast; verwendet vom STM32CubeProgrammer für STM32-Firmware |
| Apple-Unterscheidung | Die iOS-DFU-Wiederherstellung nutzt dasselbe USB-Protokoll, aber die Firmware wird als signierte `.ipsw`-Pakete verteilt, nicht als `.dfu`-Dateien |
| Kompression | Keine in der Basis-DFU-Spezifikation |
| Hauptanwendung | Eingebettete Mikrocontroller (STM32, Atmel/AVR, Nordic Semiconductor) und andere USB-DFU-fähige Geräte |
| Offene Spezifikation | USB DFU Specification Revision 1.1 (USB-IF, 2004) definiert den Suffix; das Format der Firmware-Nutzlast ist herstellergebunden |
| Plattformübergreifende Tools | Das Open-Source-Kommandozeilentool `dfu-util` unterstützt Standard-DFU-Geräte unter Windows, macOS und Linux |
| Veröffentlicht | 1999 (USB DFU specification 1.0 from USB-IF; revision 1.1 published 2004) |
| Neueste Version | USB DFU Specification Revision 1.1 (2004, USB.org) |
| Offener Standard | Ja · lizenzgebührenfrei |
| Spezifikation | www.usb.org |
DFU-Konvertierungen
Community Q&A
von Nutzern gefragtNoch keine Fragen - stellen Sie die erste Frage zu DFU-Dateien.