DE10118527C2 - Verfahren zur Integritätsprüfung binärer Daten - Google Patents
Verfahren zur Integritätsprüfung binärer DatenInfo
- Publication number
- DE10118527C2 DE10118527C2 DE2001118527 DE10118527A DE10118527C2 DE 10118527 C2 DE10118527 C2 DE 10118527C2 DE 2001118527 DE2001118527 DE 2001118527 DE 10118527 A DE10118527 A DE 10118527A DE 10118527 C2 DE10118527 C2 DE 10118527C2
- Authority
- DE
- Germany
- Prior art keywords
- bit
- value
- signature
- values
- cluster
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
Description
Die Erfindung bezieht sich auf ein Verfahren zur gezielten und versteckten
Integration von Informationen in einen binären Datensatz, vorzugsweise einen
multimedialen Datensatz, der sich aus einer Menge von n-Bit-Dateneinheiten
zusammensetzt sowie auf ein entsprechendes Verfahren zum Wiederauffinden und
gleichzeitigen Überprüfen der Integrität der versteckt integrierten Informationen.
Die Überprüfbarkeit auf Integrität, d. h. Echtheit bzw. Unverfälschtheit, von
multimedialen, binären Datensätzen, die beispielsweise als Audio- oder Videodaten
oder als statische Datensätze vorliegen, betrifft einen zunehmend wichtiger
werdenden Aspekt beim verantwortungsvollen Umgang, insbesondere mit
sicherheitsrelevante Informationen enthaltenden, binären Datensätzen.
Bisher bekannte Techniken für einen weitgehend manipulationsgeschützten
Austausch multimedialer Daten sehen sogenannte Signaturverfahren vor, bei denen
eine digitale Signatur an den zu übertragenden, binären Datensatz als eigenständige
Datei hinzugefügt und bei Weiterleitung mitübertragen wird. Zur nachträglichen
Verifikation der digitalen Signatur bedarf es sowohl des Ursprungsdatensatzes als
auch der Signaturdatei. Insbesondere bei einer großen Anzahl von zu übertragenden,
binären Datensätzen, die einzeln jeweils mit einer digitalen Signatur zu versehen sind,
muß eine entsprechend große Anzahl von Signaturdateien generiert und zusammen
mit den Ursprungsdatensätzen übertragen werden. Unstreitig ist, dass die
Verwaltung und korrekte Zuordnung zwischen den korrespondierenden Ursprungs-
und Signaturdateipaaren entsprechende Techniken erfordern, die letztlich mit einem
nicht allzu geringen Aufwand verbunden sind. Hinzu kommt, dass die zuweilen in
einer großen Menge vorliegenden Signaturdateien einen zusätzlich großen
Speicherbedarf benötigen. Beide vorstehend genannten Aspekte erweisen sich
jedoch als problematisch, möchte man den Manipulationsschutz von binären Dateien
mit möglichst einfachen, technischen Mitteln mit einer geringen, technischen
Performance, d. h. eingeschränkter Funktionalität des Betriebssystems sowie
geringem Speichervermögen, wie es beispielsweise bei Digitalkameras der Fall ist,
realisieren.
Ein weiteres Problem im Umgang mit den bisher bekannten Signaturverfahren
erwächst bei der Bearbeitung eines Datensatzes durch mehrere Personen, die
beispielsweise zeitlich hintereinander an ein und demselben Datensatz arbeiten und
diesen nach entsprechender Beendigung digital signieren, wobei für ein und
denselben Datensatz mehrere Signaturdateien entstehen. Dieser Fall tritt häufig bei
der Bearbeitung von Audio- sowie Videodaten auf, die zumeist von einer Mehrzahl
von Personen bearbeitet werden. Für eine spätere Überprüfung der Integrität bzw.
der Manipulationsfreiheit des jeweiligen Datensatzes zu einem bestimmten Zeitpunkt
bzw. in einer bestimmten Bearbeitungsstufe ist es zwingend erforderlich, dass alle
Signaturdateien und alle Originaldatensätze zu den jeweiligen Arbeitsständen
verfügbar sind. Dies gestaltet sich jedoch bei einer zunehmenden Anzahl von am
Bearbeitungsprozess beteiligten Personen zunehmend komplizierter.
So beschreibt die DE 195 21 969 C1 ein Verfahren zur Markierung binär codierter
Datensätze, insbesondere von Bilddaten, durch Implementierung wenigstens einer
Informationseinheit in einen Datensatz. Der zu markierende Datensatz wird hierzu in
Blöcke von Pixeln zerlegt, die mittels einer Transformationsfunktion vom Ortsraum in
den Frequenzraum transformiert werden. Außerdem wird eine diskrete Positionsfolge
zur Implementierung von Informationseinheiten in den zu markierenden Datensatz
unter Berücksichtigung eines Schlüssels sowie datensatzspezifischer Eigenschaften
generiert. Die zu implementierende Informationseinheit wird anschließend an die
durch die Positionsfolge festgelegten Positionen im Datensatz geschrieben bzw.
ausgelesen. In dieser Druckschrift wird somit ein Verfahren beschrieben, mit dem
Bilder in Blöcke von Pixeln zerlegt werden können, in die wenigstens eine
Informationseinheit implementiert wird und diese Informationseinheit später auch
wieder ausgelesen werden kann. Damit ermöglicht es dieses Verfahren allerdings
nicht, allgemein eine Integritätsprüfung eines in binärer Form vorliegenden
Datensatzes durchzuführen, ohne erweiterte Speicherkapazitäten zu benötigen.
In [Zhao, J. u. a.: "A Video-Copyright-Protection-System, Based on ContentID." In:
IEICE Transactions on Information and Systems, Vol. E83-D, Nr. 12, Dezember
2000, Seiten 2131-2141] wird ein System, um Videofilme vor unrechtmäßiger
Vervielfältigung zu schützen, beschrieben. Das Schutzsystem basiert auf einem
Inhaltidentifikationsmerkmal, das spezielle Charakteristika einer Aufnahme
beinhaltet. Das Inhaltidentifikationsmerkmal enthält sowohl Informationen über
Position als auch über die zeitlich veränderbare Farbe. Um eine unrechtmäßige Kopie
von einem Original unterscheiden zu können, werden Cluster gebildet, die
anschließend auf ihre Ähnlichkeit hin untersucht werden.
In [INOUE, H. u. a.: "A Digital-Watermark-Technique, Based on the Wavelet-Transform
and Its Robustness on Image-Compression and Transformation." In: IEICE
Transactions on Fundamentals, Vol. E82-A, Nr. 1, Januar 1999, Seiten 2-9] wird
ein Verfahren zum Einbringen eines Wasserzeichens in einen Datensatz
beschrieben. Der Datensatz besteht hierbei aus einer Menge von Dateneinheiten, die
in einzelne Dateneinheiten unterteilt sind. Weiterhin wird in dieser Druckschrift
beschrieben, dass Wavelet-Koeffizienten in signifikante und nicht-signifikante
Koeffizienten unterteilt werden. Problematisch ist hierbei erneut, dass dem zu
übertragenden Datensatz eine zusätzliche Kennzeichnung beigefügt wird, die
zusätzlichen Speicherplatz benötigt.
Die EP 1 081 890 A2 beschreibt ein Verfahren zur Zeitstempelung von Datensätzen,
bei dem verschiedene Prüfwerte miteinander verkettet werden. Mit Hilfe dieses
Verfahrens ist es möglich, Datensätze, die um eine Zeitinformation ergänzt sind und
auf einem Client erzeugt werden, mit Hilfe von während der Bearbeitung auf einem
Server erzeugten Paralleldatensätzen zu vergleichen und damit zu verifizieren. Zu
Problemen kann es beim Einsatz dieses Verfahrens kommen, wenn mehrere
Bearbeiter annähernd zeitgleich an einem Datensatz arbeiten, der jeweils mit einer
anderen Zeitstempelung versehen wird.
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren zur Integritätsprüfung eines
in binärer Form vorliegenden Datensatzes, beispielsweise eines multimedialen
Datensatzes, derart anzugeben, dass mit möglichst einfachen, technischen
Hilfsmitteln die Integrität eines vorliegenden, binären Datensatzes überprüfbar ist,
wobei das Verfahren in punkto Sicherheit und Zuverlässigkeit, mit der die Integrität
nachgewiesen wird, allen bisher bekannten Verfahren überlegen ist. Ferner soll es
möglich sein, mit geringem Aufwand die Bearbeitung eines binären Datensatzes
durch mehrere Bearbeiter zu ermöglichen, wobei stets eine Integritätsüberprüfung
des Datensatzes ohne das Vorliegen der Vielzahl an Signaturdateien mit
entsprechenden Originaldateien möglich sein soll.
Die Lösung der der Erfindung zugrundeliegenden Aufgabe ist im Anspruch 1
angegeben, der ein Verfahren zur gezielten und versteckten Integration von
Informationen in einen binären Datensatz zum Inhalt hat. Zur Integritätsüberprüfung
ist im Anspruch 20 ein Verfahren angegeben, mit dem die gemäß Anspruch 1 in den
binären Datensatz integrierten Informationen in geeigneter Weise detektiert werden
können. Den Erfindungsgedanken vorteilhaft weiterbildende Merkmale sind
Gegenstand der Unteransprüche sowie der nachstehenden Beschreibung unter
Bezugnahme auf die Figuren zu entnehmen.
Dem erfindungsgemäßen Verfahren liegt die Idee zugrunde, bestimmte, unter
Maßgabe eines bestimmten Schlüssels unmittelbar aus dem zu markierenden,
binären Datensatz stammende Informationen zu selektieren und diese nach
entsprechender Kodierung wieder in den Datensatz zu integrieren. Auf diese Weise
kann vermieden werden, dass, wie bei bekannten Signaturverfahren, zusätzliche
Signaturdateien entstehen, die den weiteren Programmablauf unnötig
verkomplizieren.
Besondere Bedeutung kommt beim erfindungsgemäßen Verfahren der Art und
Weise zu, mit der die aus dem binären Datensatz entnommenen Informationen
kodiert und in den Datensatz wieder integriert werden. Durch die im weiteren
beschriebenen, erfindungsgemäßen Maßnahmen wird eine unter Verwendung
möglichst einfacher, technischer Mittel bislang nicht erreichte Zuverlässigkeit in der
Überprüfbarkeit auf Vorliegen einer Datensatzmanipulation erlangt. Hierdurch eröffnet
sich grundsätzlich die Möglichkeit, binäre, multimediale Datensätze als
Echtheitszertifikate einzusetzen, die als gerichtlich anerkannte Beweismittel erheblich
an Bedeutung gewinnen.
Das erfindungsgemäße Verfahren zur gezielten und versteckten Integration von
Informationen in einen binären, multimedialen Datensatz, der als Bild-, Audio- oder
Videodatensatz vorliegt, setzt sich in erfindungsgemäßer Weise aus folgenden
Verfahrensschritten zusammen:
Der multimediale Datensatz ist als ein Datenstrom aufzufassen, der sich aus einer Vielzahl von n-Bit-Dateneinheiten zusammensetzt, die als "Byte", "Word" oder "Double" etc. bezeichenbare, zeitlich und/oder räumlich lokalisierbare Dateneinheiten darstellbar sind.
Der multimediale Datensatz ist als ein Datenstrom aufzufassen, der sich aus einer Vielzahl von n-Bit-Dateneinheiten zusammensetzt, die als "Byte", "Word" oder "Double" etc. bezeichenbare, zeitlich und/oder räumlich lokalisierbare Dateneinheiten darstellbar sind.
In einem ersten Schritt werden die n-Bit-Dateneinheiten in sogenannte n-Layer -
handelt es sich bei dem Datenstrom um eine Bilddatei, so kann man auch von
n-Billayern sprechen - unterteilt, wobei die n-Layer in sogenannte signifikante und
nichtsignifikante Layer gruppiert werden. Zu jedem der einzelnen n-Layer werden
Prüfwerte gebildet, die im einfachsten Fall Checksummen entsprechen,
vorzugsweise jedoch mit Hilfe einer Einweg-Hashfunktion als Layer spezifische
Hashwerte gewonnen werden. Einweg-Hashfunktionen haben hierbei die vorteilhafte
Eigenschaft, nicht umkehrbar zu sein, d. h. aus dem Hashwert kann nicht die dem
Hashwert zugrundeliegende Originaldatei hergeleitet oder reproduziert werden.
Die Prüfwertbildung erfolgt derart, dass alle Bits pro Layer zur Bildung des Layer-
bezogenen Prüfwertes herangezogen werden, mit Ausnahme der nichtsignifikanten
Layer, bei denen zur Layer-bezogenen Prüfwertbildung eine bestimmte Anzahl von
Bits, den sogenannten Signatur-Bits, von der Prüfwertbildung ausgenommen wird.
Die auf diese Weise erhaltenen n-Prüfwerte werden anschließend zu einem, alle n-
Layer repräsentierenden Gesamtprüfwert verbunden.
Die vorstehend aus den nichtsignifikanten Layern ausgewählten Signaturbits
werden in geeigneter Weise in sogenannte Cluster aufgeteilt, in denen sie
clusterweise derart logisch miteinander verknüpft werden, so dass für jeden Cluster
ein alle Signaturbits pro Cluster repräsentierender Bitwert erhalten wird. Bei der
Wahl der Anzahl der Cluster ist darauf zu achten, dass die Bitstelligkeit des
vorstehend beschriebenen Gesamtprüfwerts, der sich durch Verbinden aller, die
einzelnen n-Layer repräsentierender Prüfwerte ergibt, kleiner oder gleich der Anzahl
der Cluster ist. Damit ist gewährleistet, dass jedes einzelne Bit des
Gesamtprüfwertes einem Cluster-bezogenen Bitwert eineindeutig zugeordnet werden
kann.
Nun gilt es, einen Vergleich zwischen den Cluster-bezogenen Bitwerten und den Bits
des Gesamtprüfwertes durchzuführen. Bei vorliegender Nicht-Identität bei einem Bit-
Paar gilt es, wenigstens ein Signaturbit innerhalb des dem Bit-Paar zugeordneten
Clusters zu verändern, so dass nach wiederholter, logischer Verknüpfung aller
Signaturbits innerhalb des betreffenden Clusters das Identitätskriterium zwischen
dem zugeordneten Cluster-bezogenen Bitwert und dem entsprechenden Bit
innerhalb des Gesamtprüfwertes erfüllt ist.
Auf diese Weise werden Informationen gezielt und versteckt innerhalb der
nichtsignifikanten Layer des eingangs erwähnten, multimedialen Datensatzes
integriert.
Zum Erhalt des mit Hilfe des vorstehend beschriebenen, erfindungsgemäßen
Verfahrens markierten, binären Datensatzes ist eine Rückzuordnung der in Clustern
gruppierten Signaturbits an die ursprünglichen Positionen innerhalb der
nichtsignifikanten Layer erforderlich, aus denen die einzelnen Bits in die eingangs
vorliegende Datensatzstruktur in Form von einer Menge n-Bit-Dateneinheiten als
Datenstrom rückzugeordnet werden.
Wird der auf die vorstehende Weise markierte, multimediale Datensatz an einen
Empfänger übermittelt, beispielsweise im Wege der Übertragung durch das Internet
oder auf entsprechend anderem Wege unter Verwendung geeigneter Datenträger, so
ist es für den Empfänger möglich, anhand des ihm vorliegenden, multimedialen
Datensatzes die Integrität, d. h. Unversehrtheit und Echtheit des Datensatzes, zu
überprüfen. Hierzu ist es lediglich erforderlich, die in Clustern gruppierten
Signaturpixel zu bestimmen und diese mit Hilfe der bei der eingangs beschriebenen
Kodierung verwendeten, logischen Verknüpfung zum Erhalt der die Cluster
repräsentierenden Bitwerte zu verknüpfen.
Zudem ist es erforderlich, den alle n-Layer repräsentierenden Gesamtprüfwert zu
bestimmen, den es gilt, Bit-weise den vorstehend evaluierten Cluster-bezogenen
Bitwerten gegenüberzustellen. Liegt in allen miteinander zu vergleichenden Bit-
Paaren Identität vor, so ist die Integrität des übersandten, binären, multimedialen
Datensatzes gewährleistet. Tritt jedoch ein Unterschied bereits in einem einzigen Bit-
Paar auf, so ist davon auszugehen, dass der beim Empfänger vorliegende Datensatz
einer Manipulation unterlegen ist und somit dem Originaldatensatz nicht entspricht.
Das erfindungsgemäße Verfahren zeichnet sich insbesondere dadurch aus, dass die
in den Datensatz integrierten Informationen höchst sensibel hinsichtlich
Manipulationen am Datensatz sind. So ist einerseits gewährleistet, dass durch
Integration von Informationen in nichtsignifikanten Datenbereichen des Datensatzes
die Natur des Datensatzes unverändert bleibt. Andererseits repräsentieren die am
Bit-Vergleich beteiligten Bitwerte den gesamten Informationsgehalt am übertragenen
Datensatz. So ergibt sich beispielsweise der alle n-Layer repräsentierende
Gesamtprüfwert aus allen im multimedialen Datensatz enthaltenen Bits, mit
Ausnahme der ausgewählten Signaturbits, die jedoch zur Bitgegenüberstellung im
Rahmen der Cluster-bezogenen Bitwerte eine entscheidende Rolle am Prozess der
Informationsintegration spielen.
Ferner ist es mit dem erfindungsgemäßen Verfahren selbst unter Einsatz eines
vertretbaren Rechenaufwandes nicht möglich, einen mit dem erfindungsgemäßen
Verfahren markierten, multimedialen Datensatz derart zu verändern, dass bei
Anwendung der die Prüfwerte erzeugenden Algorithmen die gleichen Prüfwerte
erhalten werden, wie für den nichtmanipulierten Datensatz.
Hierdurch wird beispielsweise die Möglichkeit für Aufnahmen einfacher
Digitalkameras eröffnet, die mit diesen Kameras aufgenommene, digitale Bilder im
Beweisfall als Beweismittel zu verwenden, zumal mit dem erfindungsgemäßen
Verfahren sichergestellt wird, dass die erfindungsgemäß markierten Digitalbilder
eineindeutig auf ihre Integrität überprüft werden können.
Ferner ist es möglich, das erfindungsgemäße Verfahren auch für die Überprüfbarkeit
der Integrität eines Datensatzes anzuwenden, der in mehreren Stufen, vorzugsweise
von mehreren Bearbeitern, bearbeitet wird. So können beispielsweise lediglich Teile
multimedialer Datensätze markiert werden, die jeweils von einem entsprechenden
Bearbeiter bearbeitet werden. Zur Verifikation der Integrität des bearbeiteten
Datenteils wird nun eine personenspezifische Schlüsselinformation mit dem
erfindungsgemäßen Verfahren in den markierten Datensatz versteckt integriert.
Erfolgt dies für jeweils unterschiedliche Datenteile, die jeweils von unterschiedlichen
Personen bearbeitet worden sind, so kann jeder Datenteil für sich auf Integrität
überprüft werden.
Wird im Unterschied zur vorstehend beschriebenen Integration eine
personenspezifische Schlüsselinformation nicht in einem markierten, sondern im
gesamten Datensatz versteckt, wobei der Datensatz ebenfalls von mehreren
Personen zeitlich nacheinander bearbeitet worden ist, so kann nur eine mehrstufige
Integritätsprüfung stattfinden. Zur Überprüfung wird dabei die Integrität rücklaufend
geprüft, d. h. zunächst die personenspezifische Schlüsselinformation bzw. Signatur
jenes Bearbeiters, der den Datensatz zuletzt bearbeitet und die Information in diesen
eingebracht hat. Diese wird dann, basierend auf dem personenspezifischen
Signaturschlüssel, aus dem Datensatz temporär entfernt, so dass anschließend die
nächste Integritätsprüfung anhand der Signatur des Vorgängerbearbeiters
durchgeführt werden kann. Dieser Vorgang setzt sich entsprechend wiederholt fort,
bis die Integrität sowie wie auch Authentizität des allerersten Bearbeiters des
Datensatzes überprüft wird.
Die vorstehend beschriebenen, alternativen Möglichkeiten, die Integrität eines
Datensatzes mittels personenspezifischer, in den Datensatz versteckter
Informationen zu überprüfen, setzt voraus, dass der personenspezifische, digitale
Signaturschlüssel bekannt ist.
Zur Intergration personenspezifischer Informationen in den zu markierenden
Datzensatz wird auf das untenstehende Ausführungsbeispiel im einzelnen
verwiesen.
Die Erfindung wird nachstehend ohne Beschränkung des allgemeinen
Erfindungsgedankens anhand eines Ausführungsbeispieles unter Bezugnahme auf
die Zeichnung exemplarisch beschrieben. Es zeigen:
Fig. 1 Darstellung zur Unterteilung des binären Datensatzes in n-Layer sowie
Fig. 2 schematisiertes Ablaufschema des erfindungsgemäßen Verfahrens.
Das erfindungsgemäße Verfahren bietet die Möglichkeit, in multimediale Datensätze,
die in Form eines Datenstromes vorliegen, der aus einer Vielzahl zeitlich oder
räumlich lokalisierbarer n-Bit-Dateneinheiten zusammengesetzt ist, gezielt und
versteckt Informationen zu integrieren.
Aus Fig. 1 geht ein derartiger Datenstrom D graphisch hervor, der aus zeitlich
hintereinander folgenden Dateneinheiten DE gebildet wird, die jeweils aus n-Bits (b1,
b2, . . ., bn) zusammengesetzt sind. In dem in Fig. 1 dargestellten Fall werden die n-
Bit-Dateneinheiten DE in n unterschiedliche Layer derart aufgeteilt, sodass alle Bits
gleicher Wertigkeit innerhalb der einzelnen Dateneinheiten jeweils in einem
gemeinsamen Layer zusammengefasst werden. Somit gelangen die Bits b1 mit der
höchsten Wertigkeit in den Layer 1, und entsprechend erfolgt die Aufteilung der
einzelnen Bits bis zum Layer n. In ansich bekannter Weise erfolgt die Anordnung der
einzelnen Bits (b1, b2, . . ., bn) innerhalb der Dateneinheiten, entsprechend ihrer
Datenrelevanz, so dass die in der Reihenfolge zu anfangs angeordneten Bits b1, b2
etc. eine höhere Bedeutung besitzen, als jene, die am Ende der Bitanordnung pro
Dateneinheit (. . ., bn-1, bn) stehen. Entsprechendes gilt für die Zuordnung der
einzelnen Bits in die Layer 1 bis n, wobei im Layer 1 die höchstwertigen Bits und im
Layer n die niedrigwertigsten Bits vereint sind.
Zur Vereinfachung der weiteren Beschreibung des erfindungsgemäßen Verfahrens
wird angenommen, dass sich der zu markierende Datenstrom aus einem 8-Bit-
Grauwertbild zusammensetzt, so dass sich der binäre Datensatz nach der in Fig. 1
beschriebenen Dekomposition in n = 8 Layer aufteilt.
Ausgehend von den n = 8 Layern werden die einzelnen Layer in signifikante und
nicht-signifikante Layer unterteilt. Gemäß Fig. 2 werden die Layer 1 bis m, mit m = 6
als signifikante Layer und die Layer m + 1 bis n, also die Layer 7 und 8 als
nichtsignifikante Layer bezeichnet.
Zunächst gilt es, bezüglich der signifikanten Layer 1 bis m Layer-bezogene Prüfwerte
zu bilden. Dies erfolgt unter Vorgabe eines Schlüssels S, der einen zur
Prüfwertbildung verwendeten, mathematischen Algorithmus, vorzugsweise eine
Hashfunktion, direkt steuert.
Der Schlüssel kann ein fest vorgegebener oder ein frei wählbarer Schlüssel sein oder
auch einem Schlüssel-Paar entsprechen, bestehend aus einem privaten und einem
öffentlichen Schlüssel, bei dem beispielsweise mit dem privaten Schlüssel der
Datensatz im Sinne einer Integration einer Information codiert und mit dem
öffentlichen Schlüssel der markierte Datensatz dekodiert wird. Auf diese Weise kann
der Datensatz sowohl auf Integrität als auch auf Authentizität überprüft werden. Die
Authentizitätsüberprüfung ist aber ebenso mit einem personenspezifischen Schlüssel
möglich. Die geeignete Wahl personenspezifischer Schlüssel ist insbesondere in den
eingangs genannten Fällen sinnvoll, in denen mehrere Personen an einem
Datensatz arbeiten; Stichwort Integritäts- und Authentizitätsprüfung bei einem in einem
Workflow befindlichen Datensatz.
Die zur Prüfwertbildung eingesetzte Hashfunktion ist eine Einweg-Hashfunktion
(beispielsweise MD5), die die Eigenschaft besitzt, nicht umkehrbar zu sein, d. h. dass man aus
dem mit der Hashfunktion ermittelten Hashwert nicht auf die Originaldatei
zurückrechnen kann. Im Fall der in den einzelnen, signifikanten Layern L (1, . . ., m)
enthaltenen Bits bedeutet dies, dass die Anwendung der Hashfunktion H auf die
einzelnen Bits pro Layer zu Layer bezogenen Hashwerten HL1, . . ., HLm führt, wobei
eine Rückabbildung der Hashwerte auf die einzelnen, in den Layern vorhandenen
Bits nicht möglich ist.
Die auf diese Weise erhaltenen Hashwerte HL1 bis HLm werden im Weiteren mit Hilfe
einer Verbindungsfunktion V zu einem, alle signifikanten Layer L (1, . . ., m)
repräsentierenden Hashwert HL(1,...,m) zusammengefasst. Die Verbindung bzw.
Verknüpfung der einzelnen Hashwerte HL1 bis HLm erfolgt entweder durch bloßes
Aneinanderreihen oder durch Verwendung einer algorithmischen
Verbindungsfunktion.
Im Unterschied zur vorstehend beschriebenen Hashwertbildung, betreffend die
signifikanten Layer L (1, . . ., m) werden bei den nichtsignifikanten Layern
L (m + 1, . . ., m) vor Anwendung der entsprechenden Hashfunktion H, die vorzugsweise
mit der bei den signifikanten Layern verwendeten Hashfunktion H identisch ist, eine
bestimmte Anzahl AB an Bits, die sogenannten Signaturbits, aus den jeweiligen,
nichtsignifikanten Layern L (m + 1, . . ., m) ausgewählt, die bei der Layer-bezogenen
Hashwertbildung ausgenommen werden.
Hierzu gilt es, eine Anzahl AB von Signaturbits zu bestimmen, von denen wenigstens
Teile die in den multimedialen Datensatz versteckt zu integrierenden Informationen
aufnehmen sollen.
Zunächst wird zur Bestimmung der Anzahl AB die Länge der Layer-bezogenen Prüf-
bzw. Hashwerte festgelegt. Grundsätzlich kann die Prüf- bzw. Hashwertlänge frei
gewählt werden. Beispielsweise sei angenommen, dass die Länge der Hashwerte HL1, . . . HLn
128 Bits beträgt.
Wie bereits eingangs kurz erläutert und im Weiteren noch detaillierter darzulegen ist,
gilt es, im Rahmen der gezielt versteckten Informationsintegration sogenannte Cluster
Ci zu bilden, deren Anzahl AC in einem nächsten Schritt zu bestimmen ist. (Der Index
i dient lediglich der Clusteridentität und nimmt Werte zwischen 1 und maximal AC
an.) Die Anzahl AC ergibt sich aus der Multiplikation der Gesamtanzahl n der Layer
mit der Anzahl der Bits pro Hashwert. Bezugnehmend auf das eingeführte Beispiel
beträgt die Clusteranzahl AC somit 8 (Layer) × 128 Bits (Hashlänge) = 1024 Cluster.
Schließlich gilt es, ein Signaturbit-Clusterverhältnis anzugeben, d. h. wieviel der
ausgewählten Signaturbits werden jeweils einem Cluster zugeordnet, das mit der
Clusteranzahl AC zu multiplizieren ist, um schließlich die Anzahl AB an Signaturpixeln
zu erhalten. Sei bspw. das Signaturbit-Clusterverhältnis als 64 : 1 gewählt, so ergibt
sich AB zu 64 × 1024 = 65.536 Signaturpixel bei einer Hashwertlänge pro Layer von
128 Bit.
Unter Vorgabe der vorstehend ermittelten Anzahl AB an Signaturbits gilt es konkrete
Positionswerte PL(m+1,...,n)(x, y) innerhalb der nichtsignifikanten Layern zu bestimmen.
Die einzelnen Layer können als eine zweidimensionale Feldanordnung von einzelnen
Bitwerten angesehen werden, sodass jedes einzelne Bit durch die Koordinaten (x, y)
sowie durch die Layer-Zugehörigkeit definiert ist.
Die Positionswertbestimmung wird mit Hilfe eines Zufallsalgorithmuses Z
durchgeführt, der zudem von dem die signifikanten Layer repräsentierenden
Hashwert HL(1,...,m) gesteuert wird. Neben dem Positionswert PL(m+1,...,n)(x, y), der die
genaue Position eines ausgewählten Bits pro Layer definiert, wird eine binäre
Zufallszahl ZB bestimmt, die für jede einzelne Pixelposition PL(m+1,...,n)(x, y) die
Layerzugehörigkeit innerhalb der nichtsignifikanten Layer bestimmt, und somit den
nichtsignifikanten Layer definiert, indem sich das Signaturbit befindet. Die
Bestimmung der binären Zufallszahl ZB wird gleichsam dem Zufallsalgorithmus Z
durch den, die signifikanten Layer L(1, . . ., m) repräsentierenden Hashwert HL(1,...,m)
als Startwert gesteuert.
Nach Bestimmung der innerhalb der nichtsignifikanten Layer befindlichen
Signaturbits PL(m+1,...,n)(x, y) erfolgt gleichsam der Layer bezogenen Hashwertbildung
bei den signifikanten Layern L(1, . . ., m), wie vorstehend beschrieben, ebenso die
Hashwertbestimmung für jeden einzelnen nichtsignifikanten Layer L(m + 1, . . ., n),
wobei die in vorstehender Weise ermittelten Signaturbits
PL(m+1,...,n)(x, y) bei der diesbezüglichen Hashwertbildung ausgenommen werden.
Auch werden im Falle der nichtsignifikanten Layer L(m + 1, . . ., n) die einzelnen
Hashwerte HL(m+1) bis HLn miteinander zu einen die nichtsignifikanten Layer
L(m + 1, . . ., n) repräsentierenden Hashwert HL(m+1,...,n) zusammengefasst.
In einem letzten Schritt erfolgt die Verknüpfung des die signifikanten Layer
L(1, . . ., m) repräsentierenden Hashwert H(1,...,m) mit dem die nichtsignifikanten Layer
L(m + 1, . . ., n) repräsentierenden Hashwert HL(m+1,...,n) zu einem die gesamten Layer
L(1, . . ., n) repräsentierenden Gesamthashwert HL(1,...,n). Dies erfolgt wiederum mit
einer Verbindungsfunktion VG, die vorzugsweise aber nicht notwendigerweise
identisch mit der Verbindungsfunktion V ist.
Der alle Layer repräsentierende Gesamthashwert HL(1,...,m) setzt sich aus einer
k-Bit-stelligen Binärzahl zusammen, auf deren Bedeutung im Weiteren noch
einzugehen ist.
Wie bereits vorstehend erläutert, ist sind konkrete Positionswerte für die Anzahl AB
Signaturbits unter Verwendung des Zufallsalgorithmuses Z sowie der Zufallszahl ZB
aus den nichtsignifikanten Layern ausgewählt worden, die es im Weiteren gilt auf
eine Anzahl AC an Clustern Ci aufzuteilen. Im Beispiel der Fig. 2 ist die Anzahl AC = i
gewählt, wobei für i gilt, i ≧ k. Die nähere Bedeutung dieses Erfordernisses wird im
Weiteren noch deutlich.
Um die ausgewählten Signaturbits in einer eineindeutigen Weise auf AC Cluster zu
verteilen, wird ein Seed-Wert-abhängiger Algorithmus verwendet, durch den eine
Pseudozufallsfolge von Clusternummern i, mit i von 1 bis AC, bestimmt wird,
Gemäß der Pseudozufallsfolge werden die AB Signaturbits in einer vorgebbaren
Reihenfolge den Clusternummern und somit den Clustern zugeordnet.
In Fig. 2 ist dies durch die konkrete Zuordnung von Clusternummern Ci zu den
einzelnen Signaturbits P(x, y, ZB, Ci) angegeben, die in die Anzahl AC von Clustern Ci
zugeordnet werden, wobei die tatsächliche Clustergröße als Zufallszahl ermittelt
wird, die statistisch um den Bereich des vorgegebenen Bit-/Clusterverhältnisses
(siehe oben stehend 64 : 1) schwankt. Hierzu wird eine Schwankungsgröße ΔVPC
ermittelt, um die sich die Verteilung der Signaturpixel um das tatsächliche Bit-
/Clusterverhältnisses ändern kann.
Um im eingangs eingeführten Beispiel zu bleiben, werden somit mit Hilfe des Seed-
Wert abhängigen Algorithmuses 65.536 Signaturbits auf 1.024 Cluster verteilt, wobei
durchschnittlich 64 Signaturbits pro Cluster enthalten sind.
In einem weiteren Schritt werden alle pro Cluster enthaltenen Signaturbits durch eine
assoziative Operation miteinander logisch verknüpft, so dass pro Cluster ein Cluster-
bezogener Bitwert BC(y) erhalten wird. Wendet man als logische Verknüpfung eine
Exklusiv Oder-Verknüpfung (XOR) auf alle in allen Clustern enthaltenen Signaturbits
an, so werden i Cluster-bezogene Bitwerte BC(y) (mit y von 1 bis i) erhalten.
In einem weiteren und letzen Schritt wird ein Vergleich zwischen den Cluster-
bezogenen Bitwerten BC(y) und dem k-Bit-stelligen Gesamtprüfwert HL(1,...,n)(x) in der
Weise durchgeführt, dass die einzelnen Bits beider Binärwertdarstellungen
miteinander verglichen werden. Der Vergleich erfolgt derart, dass jeweils das Bit des
Gesamtprüfwertes HL(1,...,n)(x) an einer Stelle x mit dem Cluster-bezogenen Bitwert
BC(y) an der Stelle y verglichen wird, wobei x = y gilt.
An dieser Stelle wird die vorstehend genannte Forderung erhellt, wonach die Anzahl i
des Cluster-bezogenen Bitwerte größer oder zumindest gleich der Länge k des
Gesamtprüfwertes sein soll. Auf diese Weise wird nämlich sichergestellt, dass jede
einzelne Bitstelle des Gesamtprüfwertes HL(1,...,n) mit einer Bitstelle des Cluster-
bezogenen Bitwertes BC(y) verglichen werden kann.
Wird beim Vergleich der Bit-Paare Identität festgestellt, so verbleiben die miteinander
zu vergleichenden Bits unverändert. Unterscheidet sich das Bit des Cluster-
bezogenen Bitwert von jener korrespondierenden Bitstelle im Gesamthashwert,
so wird wenigstens ein Signaturbit innerhalb des zugehörigen Clusters geändert wird,
sodass der dem Cluster zugehörige Bitwert BC(y) den korrespondierenden Bit im
Gesamtprüfwert HL(1,...,n)(x) annimmt. Auf diese Wesie erfolgt die versteckte
Integration einer Information in den Datensatz, die sich einzig und allein aus der
Natur des Datensatzes selbst generiert.
Nach erfolgtem Abgleich zwischen den Cluster-bezogenen Bitwerten und dem
Gesamtprüfwert HL(1-n)(x) erfolgt eine Rückzuordnung der in Clustern aufgeteilten
Signaturbits in die nichtsignifikanten Layer auf Grundlage des verwendeten
Seedwert-abhängigen Algorithmus. Hierdurch erfolgt eine Wiederherstellung der
Ordnung in n-Bit-Dateneinheiten zum Erhalt eines gekennzeichneten Datensatzes in
Form des ursprünglichen Datenstromes siehe Fig. 1.
Um nun einen in vorstehender Weise markierten multimedialen Datensatz einer
Integritätsprüfung zu unterziehen, ist es zum einen erforderlich unter
Zugrundelegung des zu untersuchenden Datensatzes die Cluster Ci mit den darin
befindlichen Signaturpixeln PL(m+1,...,n)(x, y, ZB, Ci) zu ermitteln, um unter Anwendung
der logischen Verknüpfung den Cluster-bezogenen Bitwert BC(y) zu erhalten. Zum
anderen bedarf es der Ermittlung des alle n Layer repräsentierenden Gesamthash-
bzw- prüfwert HL(1,...,n)(x), um diesen in geeigneter Weise mit dem Cluster-
bezogenen Bitwert BC(y) vergleichen zu können. Sind die Bits der einzelnen binären
Werte identisch, ist Manipulationsfreiheit am zu untersuchenden multimedialen
Datensatz vorhanden, liegt eine Abweichung bereits in nur einem zu vergleichenden
Bitpaar vor, so ist der ursprünglich markierte Datensatz manipuliert worden.
Zur Integritätsüberprüfung eines markierten Datensatzes ist die Kenntnis über
folgende Informationen erforderlich:
Der eingangs verwendete Schlüssel sowie der mathematische Algorithmus, bspw. die Einweg-Hashfunktion zum Erhalt der die Layer repräsentierenden Hashwerte HL1 bis HLn. Ferner bedarf es der Verbindungsfunktion V, mit der alle n Layer repräsentierenden Hashwerte zum Erhalt des Gesamthashwertes HL(1,...,n)(x) verknüpft werden.
Der eingangs verwendete Schlüssel sowie der mathematische Algorithmus, bspw. die Einweg-Hashfunktion zum Erhalt der die Layer repräsentierenden Hashwerte HL1 bis HLn. Ferner bedarf es der Verbindungsfunktion V, mit der alle n Layer repräsentierenden Hashwerte zum Erhalt des Gesamthashwertes HL(1,...,n)(x) verknüpft werden.
Zur Ermittlung der in Cluster aufgeteilten Signaturpixel ist die Kenntnis des
Zufallsalgorithmuses Z sowie der Zufallszahl ZB nötig, um die Positionswerte der
Signaturwerte innerhalb der nichtsignifikanten Layern L(m + 1, . . ., n) ermitteln zu
können. Auf der Grundlage jener Positionswerte bedarf es überdies der Kenntnis
über den Seedwert-abhängigen Algorithmus, durch den eine Pseudozufallsfolge an
Clusternummern erhalten wird, gemäß denen die AB Signaturbits den einzelnen i
Clustern zugeordnet werden, die über eine vorgegebene Clustergröße verfügen. Mit
Hilfe der bekannten assoziativen Operation, vorzugsweise der Exklusiv-Oder-
Verknüpfung ist es möglich, die einzeln innerhalb der Cluster befindlichen
Signaturwerte logisch miteinander zu verknüpfen, um den Cluster-bezogenen Bitwert
BC(y) zu erhalten, der mit dem eingangs erläuterten Gesamthashwert HL(1,...,n)(x)
verglichen werden kann.
Das vorstehende erfindungsgemäße Verfahren ermöglicht eine funktionelle
Modifikation von Daten, vorzugsweise von multimedialen Daten, wie Audio-,
Videodaten oder statische Bilder. Das Verfahren zeichnet sich insbesondere dadurch
aus, dass die an den Daten vorgenommenen Modifikationen
- 1. die Unversehrtheit der Daten numerisch nachweisbar machen,
- 2. die Kombination mit kryptografischen Methoden ermöglichen (Stichwort privat/public key),
- 3. Änderungen an den Daten selbst nur geringfügig hervorrufen und
- 4. nicht aus dem modifizierten Daten selbst bestimmt werden können.
Damit liegt das Einsatzfeld des erfindungsgemäßen Verfahrens vorzugsweise bei der
Übertragung multimedialer Daten, bei denen geringe Änderungen keine funktionale
Einschränkungen in der Datenbenutzung mit sich bringen, und erlaubt den Vergleich
der Übereinstimmung der übertragenen Daten von Quelle und Empfänger ohne
weitere Kommunikation zwischen beiden Parteien.
Vorzugsweise sollte der zu markierende Datensatz redundante Datenteile aufweisen,
wodurch es möglich ist, die Modifikationen auf die redundanten Datenbestandteile
einzuschränken, die Parameter der Modifikationen jedoch aus den nicht-redundanten
Teilen numerisch abzuleiten. Dadurch existiert nach der Modifikation in den Daten
eine funktionelle, nachrechenbare Beziehung, die bei jeder weiteren Veränderung
der Daten verlorengehen würde.
Diese Beziehung kann stets auf ihr Vorhandensein in den Daten geprüft werden. So
läßt sich sicher nachweisen, daß die vom Empfänger erhaltenen Daten tatsächlich
die sind, die der Sender abgeschickt hat.
Claims (24)
1. Verfahren zur gezielten und versteckten Integration von Informationen in einen
binären Datensatz, vorzugsweise einen multimedialen Datensatz, der sich aus einer
Menge von n-Bit Dateneinheiten zusammensetzt,
gekennzeichnet durch folgende Verfahrensschritte:
- - Unterteilung der n-Bit Dateneinheiten in n Layer L(1, . . ., n) und Unterteilung der n Layer in signifikante Layer L(1, . . ., m) und nichtsignifikante Layer L(m + 1, . . ., n),
- - Bildung jeweils eines Prüfwertes HL(1,...,n) zu jedem der einzelnen n Layer, wobei in den nichtsignifikanten Layern L(m + 1, . . ., n) eine Anzahl von Bits, den sogenannten Signaturbits, von der Prüfwertbildung ausgenommen wird,
- - Verbindung aller ermittelter Prüfwerte HL(1,...,n) zu einem gesamten, alle n Layer repräsentierenden Gesamtprüfwert HL(1,...,n)(x) mit x ∈ {1, . . ., k},
- - Eindeutige Zuordnung der Signaturbits auf i Gruppen, den sogenannten Clustern, mit i ≧ k,
- - Logische Verknüpfung aller Signaturbits pro Cluster zum Erhalt jeweils eines Cluster-bezogenen Bitwertes BC(y) mit y ∈ {1, . . ., i},
- - Veränderung wenigstens eines Signaturbits pro Cluster in jenen Fällen, in
denen HL(1,...,n)(x) ≠ BC(y) mit x = y ∈ {1, . . ., min(k, i)} ist, derart, dass gilt:
HL(1-n)(x) = BC(y).
2. Verfahren nach Anspruch 1,
dadurch gekennzeichnet, dass der binäre Datensatz ein Datenstrom ist, bestehend
aus einer Vielzahl zeitlich und/oder räumlich lokalisierbarer n-Bit Dateneinheiten ist.
3. Verfahren nach Anspruch 1 oder 2,
dadurch gekennzeichnet, dass die Unterteilung der n-Bit Dateneinheiten in n Layer
durch Zusammenschluß aller Bits gleicher Wertigkeit in den n-Bit Dateneinheiten zu
jeweils einem Layer L(1, . . ., n) erfolgt.
4. Verfahren nach einem der Ansprüche 1 bis 3,
dadurch gekennzeichnet, dass der Prüfwert HL(1,...,n) unter Verwendung eines
mathematischen Algorithmus erhalten wird.
5. Verfahren nach Anspruch 4,
dadurch gekennzeichnet, dass als mathematischer Algorithmus ein
Hashalgorithmus verwendet wird und der Prüfwert HL(1,...,n) ein eineindeutig
zuordenbarer Hashwert ist.
6. Verfahren nach Anspruch 4 oder 5,
dadurch gekennzeichnet, dass ein Schlüssel vorgegeben wird, mit dem der
mathematische Algorithmus zum Erhalt der Prüfwerte gesteuert wird.
7. Verfahren nach einem der Ansprüche 1 bis 6,
dadurch gekennzeichnet, dass unter Zugrundelegung eines Zufallsalgorithmus eine
Anzahl AB sowie entsprechende Positionswerte von Signaturwerten aus den
nichtsignifikanten Layern L(m + 1, . . ., n) ermittelt werden, die bei der Prüfwertbildung
ausgenommen werden, und dass zu jedem einzelnen Signaturwert eine Zufallszahl
ZB ermittelt wird, die jenen nichtsignifikante Layer L(m + 1, . . ., n) kennzeichnet, in dem
sich der einzelne Signaturwert befindet.
8. Verfahren nach einem der Ansprüche 1 bis 7,
dadurch gekennzeichnet, dass die Prüfwerte HL(1,...,m) von allen signifikanten Layern
L(1, . . ., m) und die Prüfwerte HL(m+1,...,n) von allen nichtsignifikanten Layern L(m + 1, . . .,
n) getrennt voneinander miteinander verknüpft werden zum Erhalt jeweils einen die
signifikanten Layer L(1, . . ., m) repräsentierenden Prüfwertes HL(1,...,m) sowie jeweils
einen die nichtsignifikanten Layer L(m + 1, . . ., n) repräsentierenden Prüfwertes
HL(m+1,...,n).
9. Verfahren nach Anspruch 8,
dadurch gekennzeichnet, dass die Verknüpfung der einzelnen Prüfwerte HL(1,...,m)
bzw. HL(m+1,...,n) entweder durch bloßes Aneinanderreihen der Prüfwerte oder unter
Verwendung einer algorithmischen Verbindungsfunktion erfolgt.
10. Verfahren nach Anspruch 7 oder 8,
dadurch gekennzeichnet, dass der Zufallsalgorithmus sowie die Zufallszahl ZB
durch den die signifikanten Layer L(1, . . ., m) repräsentierenden Prüfwert HL(1,...,m)
gesteuert wird.
11. Verfahren nach Anspruch 8 oder 9,
dadurch gekennzeichnet, dass der die signifikanten Layer L(1, . . ., m)
repräsentierende Prüfwert HL(1,...,m) sowie der die nichtsignifikanten Layer
L(m + 1, . . ., n) repräsentierende Prüfwert HL(m+1,...,n) zu dem Gesamtprüfwert
HL(1,...,n)(x) verknüpft werden.
12. Verfahren nach Anspruch 11,
dadurch gekennzeichnet, dass die Verknüpfung der Prüfwerte HL(1,...,m) und
HL(m+1,...,n) entweder durch bloßes Aneinanderreihen der Prüfwerte oder unter
Verwendung einer algorithmischen Verbindungsfunktion erfolgt.
13. Verfahren nach einem der Ansprüche 1 bis 12,
dadurch gekennzeichnet, dass der Gesamtprüfwert HL(1,...,n)(x) einen k-Bit-stelligen Wert darstellt, und
dass die Anzahl i der Cluster dem Produkt aus einer einheitlich für alle Prüfwerte HL(1,...,n) festgelegte Bit-Stelligkeit und der Anzahl n der Layer entspricht.
dadurch gekennzeichnet, dass der Gesamtprüfwert HL(1,...,n)(x) einen k-Bit-stelligen Wert darstellt, und
dass die Anzahl i der Cluster dem Produkt aus einer einheitlich für alle Prüfwerte HL(1,...,n) festgelegte Bit-Stelligkeit und der Anzahl n der Layer entspricht.
14. Verfahren nach einem der Ansprüche 1 bis 13,
dadurch gekennzeichnet, dass die Zuordnung der Signaturbits zu den i Clustern
derart erfolgt, dass über einen Seedwert-abhängigen Algorithmus eine
Pseudozufallsfolge von Clusternummern bestimmt wird, deren Anzahl der Anzahl.
AB an Signaturpixeln entspricht und die Zahlenwerte besitzen, die die indizierten
Cluster repräsentieren, und dass die AB Signaturbits in einer vorgebbaren
Reihenfolge den Clusternummern und somit den Clustern zugeordnet werden.
15. Verfahren nach einem der Anspüche 1 bis 14,
dadurch gekennzeichnet, dass die i Cluster jeweils eine Clustergröße aufweisen,
die einem vorgegebenen Bit/Clusterverhältnis VPC ± ΔVPC entspricht.
16. Verfahren nach einem der Ansprüche 1 bis 15,
dadurch gekennzeichnet, dass die logische Verknüpfung aller Signaturbits pro
Cluster zum Erhalt jeweils eines Cluster-bezogenen Bitwertes BC(y) mit y ∈ {1, . . ., i}
durch eine assoziative Operation erfolgt mit der Eigenschaft, daß eine ein- oder
mehrfache Nacheinanderausführung der Operation die identische Operation ist
17. Verfahren nach Anspruch 16,
dadurch gekennzeichnet, dass die assoziative Operation eine exklusiv Oder-
Verknüpfung, XOR, ist.
18. Verfahren nach einem der Ansprüche 1 bis 17,
dadurch gekennzeichnet, dass ein Vergleich von Bits zwischen dem k-Bit-stelligen Gesamtprüfwert HL(1,...,n)(x) mit x ∈ {1, . . ., k} mit den Cluster- bezogenen Ein-Bit-Binärwerten BC(y) mit y ∈ {1, . . ., i} derart erfolgt, dass jeweils das Bit des Gesamtprüfwert HL(1,...,n)(x) an der Stelle x mit dem Ein-Bitwert BC(y) an der Stelle y verglichen wird, wobei x = y gilt und der Vergleich solange durchgeführt wird bis einer der Parameter k erreicht wird, und
dass bei festgestellter Identität beider Bits keine Änderung der Signalbits erfolgt und bei festgestelltem Unterschied wenigstens ein Signaturbit innerhalb des Clusters geändert wird, sodass der dem Cluster zugehörige Ein-Bitwert BC(y) den korrespondierenden Bit im Gesamtprüfwert HL(1,...,n)(x) annimmt.
dadurch gekennzeichnet, dass ein Vergleich von Bits zwischen dem k-Bit-stelligen Gesamtprüfwert HL(1,...,n)(x) mit x ∈ {1, . . ., k} mit den Cluster- bezogenen Ein-Bit-Binärwerten BC(y) mit y ∈ {1, . . ., i} derart erfolgt, dass jeweils das Bit des Gesamtprüfwert HL(1,...,n)(x) an der Stelle x mit dem Ein-Bitwert BC(y) an der Stelle y verglichen wird, wobei x = y gilt und der Vergleich solange durchgeführt wird bis einer der Parameter k erreicht wird, und
dass bei festgestellter Identität beider Bits keine Änderung der Signalbits erfolgt und bei festgestelltem Unterschied wenigstens ein Signaturbit innerhalb des Clusters geändert wird, sodass der dem Cluster zugehörige Ein-Bitwert BC(y) den korrespondierenden Bit im Gesamtprüfwert HL(1,...,n)(x) annimmt.
19. Verfahren nach Anspruch 18,
dadurch gekennzeichnet, dass nach erfolgtem Abgleich zwischen den Signaturbits
und dem Gesamtprüfwert HL(1,...,n)(x) eine Rückzuordnung der in Clustern
aufgeteilten Signaturbits in die nichtsignifikanten Layern L(m + 1, . . ., n) und eine
Wiederherstellung der Ordnung in n-Bit Dateneinheiten zum Erhalt eines
gekennzeichneten Datensatzes erfolgt.
20. Verfahren zur Dekodierung eines mit dem Verfahren nach einem der
Ansprüche 1 bis 19 kodierten Datensatzes, der sich aus einer Vielzahl einzelner n-Bit
Dateneinheiten zusammensetzt,
gekennzeichnet durch folgende Verfahrensschritte:
- - Ermittlung der in i Cluster unterteilten Signaturbits,
- - Ermittlung der Cluster-bezogenen Bitwerte BC(y) mit y ∈ {1, . . ., i} und Erstellung eines i-Bit-stelligen Soll-Wertes durch Aneinanderreihen aller Cluster- bezogenen Bitwerte BC(y) mit y ∈ {1, . . ., i},
- - Ermittlung des Gesamtprüfwertes HL(1,...,n)(x) mit x ∈ {1, . . ., k} und
- - Vergleich des i-Bit-stelligen Soll-Wertes mit dem Gesamtprüfwert HL(1,...,n)(x) mit x ∈ {1, . . ., k}, wenn festgestellt wird, dass Identität vorliegt, so ist Manipulationsfreiheit am binären Datensatz erwiesen.
21. Verfahren nach Anspruch 20,
dadurch gekennzeichnet, dass die in i Cluster unterteilten Signaturbits in Kenntnis
folgender Informationen ermittelt werden:
- - Zufallsalgorithmus zur Bestimmung der Positionswerte der AB Signaturwerte sowie der Zufallszahl ZB, für die Zuordnung der einzelnen Signaturwerte zu den entsprechenden nichtsignifikanten Layern L(m+1,...,n),
- - Seedwert-abhängiger Algorithmus zur Erzeugung der Pseudozufallsfolge von Clusternummern, gemäß denen die AB Signaturbits den einzelnen i Clustern zugeordnet werden, die über eine vorgegebene bekannte Clustergröße verfügen.
22. Verfahren nach Anspruch 20,
dadurch gekennzeichnet, dass die Bitwerte BC(y) mit der bei der Kodierung
verwendeten assoziativen Operation in Anwendung auf die pro Cluster vorhandenen
Signaturbits ermittelt werden.
23. Verfahren nach Anspruch 20,
dadurch gekennzeichnet, dass der Gesamtprüfwertes HL(1,...,n)(x) mit x ∈ {1, . . ., k} in
Kenntnis folgender Informationen ermittelt wird:
- - Schlüssel sowie mathematischer Algorithmus zum Erhalt der Prüfwerte HL(1,...,n) unter Ausschluß der Signaturbits in den nichtsignifikanten Layern L(m + 1, . . ., n),
- - Verbindungsfunktion für die Verknüpfung aller Prüfwerte HL(1,...,n) zum Erhalt des Gesamtprüfwertes HL(1,...,n)(x).
24. Verwendung des Verfahren nach einem der Ansprüche 1 bis 19 sowie des
Dekodierverfahrens nach einem der Ansprüche 20 bis 23 zur Überprüfung der
Integrität eines binären Datensatzes.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2001118527 DE10118527C2 (de) | 2001-04-14 | 2001-04-14 | Verfahren zur Integritätsprüfung binärer Daten |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2001118527 DE10118527C2 (de) | 2001-04-14 | 2001-04-14 | Verfahren zur Integritätsprüfung binärer Daten |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10118527A1 DE10118527A1 (de) | 2002-10-24 |
DE10118527C2 true DE10118527C2 (de) | 2003-02-20 |
Family
ID=7681531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2001118527 Expired - Fee Related DE10118527C2 (de) | 2001-04-14 | 2001-04-14 | Verfahren zur Integritätsprüfung binärer Daten |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE10118527C2 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102021112394A1 (de) | 2021-05-12 | 2022-11-17 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren, Vorrichtung, Fahrzeug, Computerprogramm, computerlesbares Speichermedium zur Validierung eines anzuzeigenden Bildes |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19521969C1 (de) * | 1995-06-16 | 1997-02-27 | Fraunhofer Ges Forschung | Verfahren zur Markierung binär codierter Datensätze |
EP1081890A2 (de) * | 1999-09-01 | 2001-03-07 | Nippon Telegraph and Telephone Corporation | Vorrichtung zur Zeitstempelung vom Mappentyp und verteiltes Zeitstempelungssystem |
-
2001
- 2001-04-14 DE DE2001118527 patent/DE10118527C2/de not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19521969C1 (de) * | 1995-06-16 | 1997-02-27 | Fraunhofer Ges Forschung | Verfahren zur Markierung binär codierter Datensätze |
EP1081890A2 (de) * | 1999-09-01 | 2001-03-07 | Nippon Telegraph and Telephone Corporation | Vorrichtung zur Zeitstempelung vom Mappentyp und verteiltes Zeitstempelungssystem |
Non-Patent Citations (2)
Title |
---|
INOUE, H. u.a.: A Digital Watermark Technique Based on the Wavelet Transform and Its Robust- ness on Image Compression and Transformation. In: IEICE Transactions on Fundamentals, Vol. E82-A, Nr. 1, Januar 1999, S. 2-9 * |
ZHAO, J. u.a.: A Video Copyright Protection System Based on Content ID. In: IEICE Trans- actions on Information and Systems, Vol. E83-D, Nr. 12, Dezember 2000, S. 2131-2141 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102021112394A1 (de) | 2021-05-12 | 2022-11-17 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren, Vorrichtung, Fahrzeug, Computerprogramm, computerlesbares Speichermedium zur Validierung eines anzuzeigenden Bildes |
Also Published As
Publication number | Publication date |
---|---|
DE10118527A1 (de) | 2002-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69933153T2 (de) | Elektronisches Gerät, Datenverarbeitungsverfahren und -system sowie rechnerlesbares Speichermedium | |
DE69736310T2 (de) | Erzeugung und Verteilung digitaler Dokumente | |
EP0879535B1 (de) | Verfahren zur markierung binär codierter datensätze | |
Li et al. | Tamper detection and localization for categorical data using fragile watermarks | |
DE69828629T2 (de) | Erzeugung von wasserzeichen für digitale daten | |
DE69634880T2 (de) | Verfahren und gerät zum kontrollierten zugriff zu verschlüsselten datenakten in einem computersystem | |
DE10195850B4 (de) | Verfahren zum Integrieren eines Wasserzeichens in ein komprimiertes Bild | |
EP1214812B1 (de) | Verfahren zum schutz von daten | |
DE4243908C2 (de) | Verfahren zur Erzeugung einer digitalen Signatur mit Hilfe eines biometrischen Merkmals | |
DE69816986T2 (de) | Verfahren und vorrichtung zur versiegelung und unterschrift von objekten | |
US7730037B2 (en) | Fragile watermarks | |
DE60127747T2 (de) | Verfahren und System zur reversiblen Markierung eines Textdokuments mit einem Muster der zusätzlichen Leerzeichen für Beglaubigung | |
CN109635576B (zh) | 一种在图像中隐藏数据方法和系统 | |
DE69737806T2 (de) | Datenverschlüsselungsverfahren | |
EP1163776A2 (de) | Anonymisierungsverfahren | |
DE10118527C2 (de) | Verfahren zur Integritätsprüfung binärer Daten | |
EP2253097A1 (de) | Verfahren zur unmanipulierbaren, abhörsicheren und nicht hackbaren p2p-kommunikation in mehrteilnehmernetze | |
EP1810442B1 (de) | Vorrichtung und verfahren zum detektieren einer manipulation eines informationssignals | |
DE102004019681A1 (de) | Verfahren zum Schreiben von Daten und Datenverarbeitungsgerät | |
WO2015074745A1 (de) | Verfahren, vorrichtungen und system zur online-datensicherung | |
WO2007090795A2 (de) | Verfahren und vorrichtung zum generieren zumindest eines nutzerspezifisch markierten datenstroms | |
WO2021190715A1 (de) | Computerimplementiertes verfahren und verteiltes speichersystem zum bereitstellen vertrauenswürdiger datenobjekte | |
DE102016207145A1 (de) | Steuersystem für eine Verarbeitung von Bilddaten | |
DE102008010792A1 (de) | Verfahren für den unmanipulierbaren und abhörsicheren Datei- und Ordnerzugriff | |
DE10229976B4 (de) | Verfahren zur Ver- und Entschlüsselung von nach dem Verfahren der priorisierten Pixelübertragung übertragenen oder gespeicherten digitalen Daten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8304 | Grant after examination procedure | ||
8364 | No opposition during term of opposition | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |