Fingerprinting
So, wie ein menschlicher Fingerabdruck eine Person identifiziert, versucht “Fingerprinting” z.B. für Musikstücke, Filme oder andere Dateien eindeutige Kennzeichen zu ermitteln, um diese eindeutig zuzuordnen. Fingerprinting funktioniert dabei nicht nur für Dateien, sondern auch für Datensätze wie z.B. Kunden- und Verhaltensdaten. Ziel ist es dabei, die Zuordnung auch dann zuverlässig vornehmen zu können, wenn nur ein Ausschnitt des zu klassifizierenden Datenobjekts vorliegt.
Zunutze machen sich Fingerprinting beispielsweise Apps, die ein laufendes Musikstück anhand einer kurzen, wenige Sekunden langen Aufnahme identifizieren können.
Die naheliegendsten Anwendungen von Fingerprinting findet sich in der Datenspeicherung, beispielsweise bei der Duplikaterkennung: Statt die gleiche Daten mehrfach für unterschiedliche Nutzer (oder den gleichen Nutzer in verschiedenen Verzeichnissen) zu speichern, wird mittels Fingerprinting überprüft, ob es sich um eine Kopie einer bekannten Datei handelt – und dann keine separate Kopie, sondern nur eine Referenz auf das Original gespeichert. Das spart unter Umständen erheblichen Speicherplatz. Für Cloud-Anwendungen ist es darüberhinaus wichtig, dass der Fingerprinting-Algorithmus bereits greift, bevor die Datei zum Speicherdienst übertragen wird. Damit wird die zu übertragende Datenmenge minimiert.
Fingerprinting wird aber auch im Bereich des Digital Rights Managements (DRM) angewendet: Die Verfahren können eingesetzt werden, um urheberrechtlich geschütztes Material zu identifizieren sowie eine Weitergabe oder Modifikation zu verhindern. Gleichzeitig funktionieren viele Fingerprinting-Algorithmen auch bei geringen Modifikationen der Daten – eine Zuordnung ist dann weiterhin möglich, obwohl sich die Dateien geringfügig unterscheiden. Das entspricht in etwa der Situation, dass ein Fingerabdruck nicht ganz vollständig ist oder der Finger eine Verletzung aufweist, aber trotzdem eine Identifikation ermöglicht. Eng verwandt mit dem Fingerprinting ist dabei auch Einbettung von Wasserzeichen in Dateien, um diese eindeutig zuordnen zu können.
Weitere Anwendungsbereiche umfassen die Identifikation von Webbrowsern (und damit Nutzern) anhand “unpersönlicher” Daten (z.B. Betriebssystem- und Browser-Version, installierten Plugins, Abweichung der Systemzeit, Verbindungsparametern und mehr) oder die Erkennung von Nutzern am Rechner durch ihr Tippverhalten.
Ein anderes Anwendungsfeld ist die Orts- oder Aktivitätsbestimmung durch “Atmo-Fingerprinting”: Jeder, der einmal einen Film gesehen hat, der in New York spielt, (oder der Stadt selbst einen Besuch abgestattet hat), erkennt die Sound-Kulisse. Smartphones können (zumal vernetzt) noch wesentlich mehr – prinzipiell ist es so anhand des Atmo-Fingerprintings sogar möglich, herauszufinden, wenn sich zwei Personen, die sich nicht kennen, auf der gleichen Veranstaltung befinden. Da verwundet es nicht mehr, dass Fingerprinting auch experimentell eingesetzt wird, um zu identifizieren, welche Fernsehsendungen oder Filme sich eine Person anschaut – rein anhand der Analyse der Geräuschkulisse (und möglicherweise unbemerkt vom Nutzer).
In der Industrie findet das Atmo-Fingerprinting unter anderem Anwendung, um den Werkzeugverschleiß bzw. Abweichungen von der Produktionsnorm im Produktionsumfeld automatisiert zu erkennen.