Was ist eine Dateisignatur?
Eine Dateisignatur in der Computerprogrammierung ist eine eindeutige Identifikationsnummer, die sich am Anfang einer Datei befindet. Diese Nummer identifiziert den Dateityp und gibt Auskunft über die in der eigentlichen Datei enthaltenen Daten. Anhand dieser Informationen kann ermittelt werden, welcher Dateityp gelesen wird, wenn die Dateierweiterung oder der Benutzerfehler die Datei als falschen Dateityp identifiziert hat. Die Dateisignatur kann auch Informationen enthalten, die sicherstellen, dass die in der Datei gespeicherten Originaldaten noch intakt sind und nicht geändert wurden. Die Kombination dieser Elemente ermöglicht es, dass eine Dateisignatur als wichtige Form der Überprüfung dient, insbesondere gegen Computerviren.
Das Konzept einer Dateisignatur entstand aufgrund der Notwendigkeit eines Datei-Headers, eines Datenblocks am Anfang einer Datei, der die Parameter für die Speicherung von Informationen in der Datei definiert. Ein Teil der Header-Informationen ist eine Folge von Bytes, die den ursprünglich erstellten Dateityp definiert. Dies kann eine Bilddatei, ein Dokument aus einem bestimmten Programm oder sogar ein Protokolltyp sein, wenn ein Dateistream als Kommunikationsmethode zwischen einem Client und einem Server verwendet wird. Der Dateikopf verwendet keinen definierten Standard. Stattdessen ist es für jedes Format proprietär, dh ein Programm oder Betriebssystem benötigt eine Dateisignaturdatenbank, um den Typ einer unbekannten Datei zu bestimmen.
Die eigentliche Dateisignatur wird manchmal als magische Zahl bezeichnet. Bei der Programmierung ist dies ein Wert, der in dem von ihm belegten Datenfeld eindeutig ist. Wenn Sie sich einen Dateikopf ansehen, um den Dateityp zu bestimmen, bedeutet dies, dass keine zwei Dateisignaturen identisch sein sollten, sodass jeder Formattyp eine eindeutige Zeichenfolge von Bytes aufweist. Dies kann von besonderem Nutzen sein, wenn es um die Übertragung und Interpretation von Dateien online geht, wobei die identifizierende Erweiterung einer Datei willkürlich sein kann und nicht als Kennung für einen Dateityp herangezogen werden kann.
Zusätzlich zum Dateityp kann eine Dateisignatur auch Informationen enthalten, mit denen eine Fehlerprüfung für eine Datei durchgeführt werden kann, damit bestätigt werden kann, dass die darin enthaltenen Daten intakt sind. Dies wird häufig mit einer Funktion durchgeführt, die als Prüfsumme bezeichnet wird. Eine Prüfsumme ist eine Funktion, die die Ganzzahlwerte der Dateidaten verwendet, um mathematische Werte zu erstellen, die nach dem Übertragen oder Laden einer Datei repliziert werden können. In der einfachsten Form umfasst dieser Prozess das Hinzufügen der Werte einer Reihe von Bytes in der Datei und das anschließende Aufzeichnen der Summe, sodass das Programm, das die Datei decodiert, dieselbe Funktion ausführen kann. Wenn die Ergebnisse während der Dekodierung unterschiedlich sind, ist die Datei möglicherweise beschädigt und die Daten sind entweder ungültig oder wurden aus böswilligen Gründen geändert.