Ich habe eine Frage zum digitalen Fingerabruck.
Hat jede Datei von sich aus einen sog digitalen Fingerabdruck
bzw eine digitale Signatur?
Wenn ja: Wie ist dieser aufgebaut, wie kann ihn erkennen?
Der „Fingerabdruck“, bei dem es bei Perkeo geht, basiert auf kryptologischen Hash-Algorithmen. Das sind Algorithmen, also Rechenverfahren, die einem beliebigen Datum, also z.B. dem Inhalt einer Datei, eine (nahezu) eindeutige Kennung zuordnen. Diese Kennung bzw diesen Fingerabdruck nennt man dabei eigentlich auch nicht Fingerabdruck, sondern Prüfsumme oder noch genauer „Hash“.
Dazu werden bestimmte mathematische Funktionen verwendet, die man als „kollisionsresistente Einweg-Hashfunktionen“ bezeichnet. Wenn du einen Eingabewert x (also z.B. die Daten einer Datei) hast, dann bildet diese Funktion h diesen Eingabewert auf eine bestimmte Kennung k ab. Also h(x) = k. Diese Kennung bezeichnet man dabei auch als „Hash“.
Diese Funktionen müssen bestimmte Dinge erfüllen:
- Zu einem Hash k ist es unmöglich, den dazugehörigen Eingabewert x zu finden.
- Zu einem bestimmten Eingabewert x ist es unmöglich, einen anderen Eingabewert y zu finden, der denselben Hash k erzeugt (schwache Kollisionsresistenz)
- Es ist unmöglich, dass man zwei beliebige aber verschiedene Eingaben x und y findet, die denselben Hash k erzeugen.
„Unmöglich“ heißt dabei: Nicht in vernünftiger Zeit berechenbar. Denn in der Tat gibt es solche Kollisionen in jedem Hash-Algorithmus, so dass zwei Eingaben auf denselben Hash abbilden. Es muss mathematisch nur so aufwändig sein, dass man solche Kollisionen selbst mit riesiger Rechenleistung nicht in vernünftiger Zeit finden kann. Wenn du also nur ein einziges Bit in einer 4 GB großen DVD änderst, dann ergibt das einen anderen Hash-Wert.
Wie exakt mathematisch diese Funktionen arbeiten, das ist nicht einfach erklärbar. Wenn du dich aber näher dazu informieren willst, dann bieten diese Seiten einen guten Einstieg:
http://de.wikipedia.org/wiki/Hashfunktion
http://de.wikipedia.org/wiki/Kryptologische_Hashfunk…
Beispiele für solche Hash-Algorithmen sind z.B SHA-1 oder RIPEMD:
http://de.wikipedia.org/wiki/Secure_Hash_Algorithm
http://de.wikipedia.org/wiki/RIPEMD
Du kannst auch ganz einfach selbst die Hashes von beliebigen Dateien dir selber ausrechnen. Dazu gibt es viele Programme die dir die Hashes berechnen können wie z.B. HashTab. Dieses zeigt dir im Windows Explorer in den Datei-Eigenschaften auf einem neuen Reiter namens „Hashwerte“ die Hash-Wert der Datei berechnet nach verschiedenen Hash-Funktionen wie z.B. SHA oder RIPEMD an:
http://beeblebrox.org/hashtab/
Wenn nein: Wie arbeitet dann das Programm PERKEO vom LKA? Das
sucht laut Herstellerangaben nach dem digitalen Fingerabdruck
bei Dateien, um somit illegale Kinderpornografie aufzuspüren.
Mit obigen Hash-Funktionen hat man ein Werkzeug in der Hand, in der man z.B. eine Datei auf einen solchen Hash abbilden kann und man keine zweite Datei findet, die denselben Hash erzeugt.
Was PERKEO also macht (und was eigentlich absolut trivial ist) ist, dass es z.B. für alle Dateien auf einem Rechner diesen Hash berechnet und diesen Wert mit den bekannten Hash-Werten von bekannten kinderpornographischen Bildern vergleicht.
PERKEO verfügt also einfach über eine Datenbank von bekannten Hashwerten von Kinderpornos und vergleicht diese mit den Hashwerten von allen Dateien auf einem Rechner. Findet es dabei einen Hashwert, der in der Datenbank vorhanden ist, dann kannst du mit quasi 100%iger Sicherheit sagen, dass sich auf diesem Rechner ein Kinderporno-Bild befindet. Nur dadurch kann der Hersteller seine „0% Fehlerquote“ garantieren.
Der Gedanke der dahintersteckt ist der, dass oft die gleichen bekannten Bilder zwischen Pädophilen ausgetauscht werden. Neue Kinderpornos oder nicht in der Datenbank verzeichnete Kinderporno-Dateien kann PERKEO nicht erkennen.
Dies bedeutet aber auch, dass das Programm z.B. nicht mit ZIP komprimierte Bilder erkennen würde. Auch ein ganz einfach bearbeitetes Bild, bei dem z.B. nur ein einzelner Pixel geändert wurde, wird nicht erkannt. Das Programm kann daher verhältnismäßig einfach überlistet werden. Da in den meisten Fällen die Pädophilen sowas aber nicht machen, dürften Treffer damit dennoch leicht möglich sein.