DE102015200486B4 - Verfahren zur Bestimmung eines nachrichtabhängigen Kontrollwerts, Verfahren zur Zertifizierung der Echtheit einer Nachricht, Verfahren zur Überprüfung der Echtheit einer Nachricht, Vorrichtung zum Versenden einer Nachricht, Vorrichtung zum Empfangen einer Nachricht und Datenträger - Google Patents

Verfahren zur Bestimmung eines nachrichtabhängigen Kontrollwerts, Verfahren zur Zertifizierung der Echtheit einer Nachricht, Verfahren zur Überprüfung der Echtheit einer Nachricht, Vorrichtung zum Versenden einer Nachricht, Vorrichtung zum Empfangen einer Nachricht und Datenträger Download PDF

Info

Publication number
DE102015200486B4
DE102015200486B4 DE102015200486.4A DE102015200486A DE102015200486B4 DE 102015200486 B4 DE102015200486 B4 DE 102015200486B4 DE 102015200486 A DE102015200486 A DE 102015200486A DE 102015200486 B4 DE102015200486 B4 DE 102015200486B4
Authority
DE
Germany
Prior art keywords
message
control value
authenticity
value
values
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
Application number
DE102015200486.4A
Other languages
English (en)
Other versions
DE102015200486A1 (de
Inventor
Ralf Salomon
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Universitaet Rostock
Original Assignee
Universitaet Rostock
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Universitaet Rostock filed Critical Universitaet Rostock
Priority to DE102015200486.4A priority Critical patent/DE102015200486B4/de
Publication of DE102015200486A1 publication Critical patent/DE102015200486A1/de
Application granted granted Critical
Publication of DE102015200486B4 publication Critical patent/DE102015200486B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3236Cryptographic 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
    • H04L9/3242Cryptographic 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 involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

Verfahren zur Bestimmung von mindestens einem nachrichtabhängigen Kontrollwert zu einer Nachricht unter Verwendung der Nachricht, wobei der nachrichtabhängige Kontrollwert weiterhin unter Verwendung eines Hilfskontrollwerts bestimmt wird, dadurch gekennzeichnet, dass der Hilfskontrollwert aus einem vorbestimmten Kontrollwerte-Array ausgewählt wird, wobei zur Auswahl des Hilfskontrollwerts aus dem vorbestimmten Kontrollwerte-Array ein Bitstring der Nachricht als Ganzzahlwert ausgewertet wird, wobei ein Index zur Auswahl aus dem Kontrollwerte-Array aus dem Ganzzahlwert MODULO einer Anzahl Lh von Hilfskontrollwerten im Kontrollwerte-Array bestimmt wird.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft ein Verfahren zur Bestimmung eines nachrichtabhängigen Kontrollwerts, ein Verfahren zur Zertifizierung der Echtheit einer Nachricht, ein Verfahren zur Überprüfung der Echtheit einer Nachricht, eine Vorrichtung zum Versenden einer Nachricht, eine Vorrichtung zum Empfangen einer Nachricht und einen Datenträger.
  • STAND DER TECHNIK
  • Echtheit von Nachrichten, die versandt oder empfangen werden, kann anhand von nachrichtabhängig ermittelten Kontrollwerten zertifiziert oder überprüft werden. Ein Beispiel für Kontrollwerte sind Prüfsummen und Hashwerte. Hashwerte können anhand der Nachricht M mittels einer Hashfunktion H(M) ermittelt werden. Die Hashfunktion kann dabei von einem weiteren, beispielsweise zufällig gewählten Parameter abhängen. Alternativ oder zusätzlich kann die Hashfunktion von einem geheimen Schlüssel abhängen. DE 196 40 526 A1 beschreibt eine Authentifikation von Signalen einer Nachricht anhand von zugehörigen Token.
  • Die Kontrollwerte werden dabei auf Senderseite nachrichtabhängig berechnet und an die Nachricht angehängt. Ein Empfänger, der den geheimen Schlüssel und/oder einen weiteren Parameter kennt, kann nun anhand der Nachricht selbst die Hashwerte bestimmen und mit den an die Nachricht angehängten Hashwerten vergleichen.
  • Wurde nämlich die Nachricht bzw. die angehängten Kontrollwerte verändert, so sind die empfängerseitig bestimmten Kontrollwerte unterschiedlich zu den angehängten Kontrollwerten. Es ist aufgrund der Komplexität der Hashfunktion zudem praktisch unmöglich, wie die angehängten Hashwerte zusammen mit der Nachricht M so zu ändern, dass die empfängerseitig bestimmten Kontrollwerte zur veränderten Nachricht gleich den an die veränderte Nachricht angehängten veränderten Kontrollwerten sind.
  • Die Komplexität der Hashfunktion bewirkt jedoch auch, dass die algorithmische Berechnung zeitaufwändig ist und/oder entsprechende Rechenkapazität erfordert. Da der Hashwert zudem anhand der Nachricht bestimmt wird, kann eine Berechnung der Hashfunktion erst nach Erhalt der Nachricht erfolgen. Die Latenz zwischen dem vollständigen Empfang und der Verifizierung der Nachricht ist also groß.
  • OFFENBARUNG DER ERFINDUNG
  • Die vorliegende Erfindung befasst sich mit einer Verringerung der Latenz zwischen dem vollständigen Empfang und der Verifizierung der Nachricht sowie der hierfür benötigten Rechenkapazität.
  • Erfindungsgemäß wird daher ein Verfahren nach Anspruch 1 zur Bestimmung von mindestens einem nachrichtabhängigen Kontrollwert zu einer Nachricht unter Verwendung der Nachricht vorgeschlagen. Das Verfahren ist dadurch gekennzeichnet, dass der nachrichtabhängige Kontrollwert weiterhin unter Verwendung eines vorbestimmten Hilfskontrollwerts bestimmt wird, wobei der Hilfskontrollwert unter Verwendung einer Auswertung eines Bitstrings der Nachricht als Ganzzahlwert aus einem vorbestimmten Kontrollwerte-Array ausgewählt wird, wobei der Ganzzahlwert MODULO einer Anzahl Lh von Hilfskontrollwerten im Kontrollwerte-Array zur Auswahl verwendet wird.
  • Es ist also möglich, den Hilfskontrollwert vorab zu berechnen. Trifft dann eine Nachricht ein, oder soll eine Nachricht versendet werden, so kann der nachrichtabhängige Kontrollwert schneller berechnet werden.
  • In einer bevorzugten Ausführungsform kann der mindestens eine nachrichtabhängige Kontrollwert zum Beispiel durch eine bitweise XOR-Verknüpfung des ausgewählten Hilfskontrollwertes mit mindestens einem weiteren Hilfskontrollwert bestimmt werden.
  • Dabei kann der oder weitere Hilfskontrollwerte ebenfalls unter Verwendung der Nachricht aus dem Kontrollwerte-Array ausgewählt werden.
  • Unterscheidet sich eine weitere Nachricht lediglich in einem Bit von der Nachricht, so kann sich ein zugehöriger, weiterer nachrichtabhängig bestimmter Kontrollwert von dem nachrichtabhängigen Kontrollwert in mindestens einem Bit unterscheiden. Dabei kann durch ein, mehrere oder alle verbleibenden Bits der Nachricht M bestimmt sein, in welchem Bit sich der weitere nachrichtabhängige Kontrollwert von dem nachrichtabhängigen Kontrollwert unterscheidet.
  • Erfindungsgemäß wird weiterhin ein Verfahren nach Anspruch 4 zur Zertifizierung der Echtheit einer Nachricht anhand von nachrichtabhängigen Kontrollwerten, umfassend Bestimmung von nachrichtabhängigen Kontrollwerten nach dem erfindungsgemäß vorgeschlagenen Verfahren und Anhängen der bestimmten Kontrollwerte an die Nachricht.
  • Erfindungsgemäß wird auch ein Verfahren nach Anspruch 5 zur Überprüfung der Echtheit einer Nachricht anhand von nachrichtabhängigen Kontrollwerten, umfassend Bestimmung von nachrichtabhängigen Kontrollwerten nach dem erfindungsgemäß vorgeschlagenen Verfahren und Vergleichen der bestimmten Kontrollwerte mit an die Nachricht angehängten Kontrollwerten.
  • Erfindungsgemäß wird darüber hinaus eine Vorrichtung gemäß Anspruch 6 zum Empfangen von Nachrichten vorgeschlagen, wobei die Vorrichtung konfiguriert ist, das erfindungsgemäße Verfahren zur Überprüfung der Echtheit einer Nachricht auszuführen, um die Nachrichten auf Echtheit zu überprüfen.
  • Erfindungsgemäß wird darüber hinaus eine Vorrichtung gemäß Anspruch 7 zum Versenden von Nachrichten vorgeschlagen, wobei die Vorrichtung konfiguriert ist, das erfindungsgemäße Verfahren zur Zertifizierung der Echtheit einer Nachricht auszuführen, um die Nachrichten auf Echtheit zu zertifizieren.
  • Erfindungsgemäß wird schließlich ein Datenträger gemäß Anspruch 8 vorgeschlagen. Der Datenträger umfasst auf dem Datenträger gespeicherte prozessorausführbare Anweisungen, wobei bei Ausführung der Anweisungen durch einen Prozessor eines der erfindungsgemäßen Verfahren ausgeführt wird.
  • ZEICHNUNGEN
  • Ausführungsbeispiele der Erfindung werden anhand der Zeichnungen und der nachfolgenden Beschreibung näher erläutert. Es zeigen, schematisch:
  • 1 Ausführungsbeispiele der erfindungsgemäßen Vorrichtungen zum Senden bzw. Empfangen von Nachrichten,
  • 2 ein Ausführungsbeispiel eines erfindungsgemäßen Verfahrens und
  • 3 ein Ausführungsbeispiel eines erfindungsgemäßen Datenträgers.
  • AUSFÜRUNGSFORMEN DER ERFINDUNG
  • 1 zeigt beispielhaft und schematisch eine Vorrichtung 100 zum Senden von Nachrichten, die mit einer Vorrichtung 200 zum Empfangen von Nachrichten verbunden ist. Die Vorrichtung 100 umfasst eine auch als Mittel zum Senden bezeichnete Sendeeinheit 120, die konfiguriert ist, Nachrichten zur Vorrichtung 200 zu übertragen. Die Vorrichtung 200 umfasst eine auch als Mittel zum Empfang bezeichnete Empfangseinheit 220, die konfiguriert ist, Nachrichten von der Vorrichtung 100 zu empfangen.
  • Eine Zertifizierungseinheit 110, die ebenfalls von der Vorrichtung 100 umfasst ist, ist dabei konfiguriert, mindestens einen von einer zu sendenden Nachricht abhängigen Kontrollwert unter Verwendung der zu sendenden Nachricht zu bestimmen und an die zu sendende Nachricht anzuhängen.
  • Die Vorrichtung 200 umfasst dabei eine zugehörige Überprüfungs- oder Verifizierungseinheit 210. Die Verifizierungseinheit 210 ist konfiguriert, einen oder mehrere von einer empfangenen Nachricht umfasste Kontrollwerte von einem Rest der Nachricht abzutrennen, eine entsprechende Anzahl weiterer Kontrollwerte unter Verwendung des Rest der Nachricht zu bestimmen und die abgetrennten Kontrollwerte mit den weiteren Kontrollwerten zu vergleichen.
  • Dabei sind die Verifizierungseinheit 210 und die Zertifizierungseinheit 110 so aufeinander abgestimmt, dass die weiteren Kontrollwerte, die von der Verifizierungseinheit 210 unter Verwendung des Rest der empfangenen Nachricht bestimmt werden, identisch zu den Kontrollwerten sind, die von der Zertifizierungseinheit 110 unter Verwendung der zu sendenden Nachricht bestimmt werden, sofern der Rest der empfangenen Nachricht identisch mit der zu sendenden Nachricht ist.
  • Insbesondere sind die Verifizierungseinheit 210 und die Zertifizierungseinheit 110 in einer beispielhaften Ausführungsform konfiguriert, mindestens einen nachrichtabhängigen Kontrollwert durch eine bitweise XOR-Verknüpfung eines Hilfskontrollwertes mit mindestens einem weiteren Hilfskontrollwert zu bestimmen. Dabei kann die Nachricht dazu verwendet werden, den Hilfskontrollwert aus einem vorbestimmten Kontrollwerte-Array auszuwählen. Zusätzlich oder alternativ kann die Nachricht dazu verwendet werden, den weiteren Hilfskontrollwert aus einem vorbestimmten Kontrollwerte-Array auszuwählen.
  • Die Hilfskontrollwerte im Kontrollwerte-Array können beispielsweise Bytes eines Hashwerts sein, der anhand einer Hashfunktion bestimmt ist. Die Hashfunktion kann in einem Ausführungsbeispiel mittels mindestens eines der folgenden Elemente initialisiert sein: ein Schlüssel, eine Zufallszahl und eine vorbestimmte Nachricht. Ein Beispiel einer vorbestimmten Nachricht ist die Nachricht M0, in der alle Bits den Wert ‚0‘ haben; natürlich kann die Nachricht auch jede andere vorher zwischen den beiden Einheiten 110 und 210 vereinbarte Bitkombination sein. Das oder die initialisierenden Elemente werden zwischen der Sendeeinheit und der Empfangseinheit im Vorfeld der Nachrichtenübertragung ausgetauscht oder vereinbart.
  • Die Nachricht kann beispielsweise so zur Auswahl verwendet werden, dass ihr Bitstring oder ein Teilbitstring als ein Ganzzahlwert ausgewertet und der Ganzzahlwert MODULO einer Anzahl Lh von Hilfskontrollwerten im Kontrollwertarray (Lh Bytes im Hashwert) auf den Wertebereich [0; Lh] beschränkt wird, sofern der größte in dem Bitstring/Teilbitstring darstellbare Ganzzahlenwert größer als Lh ist. Der gegebenenfalls beschränkte Ganzzahlwert VAL kann dann als ein Index zur Auswahl des Hilfskontrollwerts aus dem Kontrollwertarray verwendet werden.
  • Dabei gilt: X Modulo Y = X – Y·[X/Y], wobei [X/Y] der ganzzahlige Anteil von X/Y ist. Lh kann auch so gewählt werden, dass Lh = 2n. Dann lässt sich mit einem Teilbitstring mit n Bits ein Hilfskontrollwert im Array adressieren.
  • Insbesondere bei Verwenden eines Teilbitstrings können weitere Teilbitstrings zu einer entsprechenden Auswahl eines oder mehrerer weiterer Hilfskontrollwerte aus dem Kontrollwertearray verwendet werden.
  • Zu einer Nachricht können mehrere von der Nachricht abhängige Kontrollwerte bestimmt werden, beispielsweise kann die Anzahl der bestimmten nachrichtabhängigen Kontrollwerte der Anzahl Lh oder einer Anzahl Lm von Bits in der Nachricht entsprechen.
  • Dabei kann jeder der nachrichtabhängigen Kontrollwerte durch eine XOR-Verknüpfung eines zugehörigen Hilfskontrollwerts mit einem oder mehreren zugehörigen weiteren Hilfskontrollwert(en) bestimmt werden.
  • 2 zeigt beispielhaft und schematisch ein Verfahren zur Bestimmung nachrichtabhängiger Kontrollwerte.
  • Das gezeigte Verfahren umfasst einen Initiierungsschritt S1, einen Verknüpfungsschritt S2, einen Variablenschaltschritt S3 und einen Entscheidungsschritt S4.
  • Im Schritt S1 werden eine Zählervariable i und mindestens zwei Indexvariablen initialisiert. Mindestens eine der Indexvariablen wird dabei unter Verwendung eines Ganzzahlwertes initialisiert, der aus einem (Teil-)Bitstring der Nachricht gewonnen wurde.
  • In Schritt S2 werden Hilfskontrollwerte miteinander verknüpft, beispielsweise bitweise XOR-verknüpft. Dabei werden die Hilfskontrollwerte aus einem Kontrollwertarray anhand der Indexvariablen ausgewählt. Das Ergebnis ist ein nachrichtabhängiger Kontrollwert.
  • In Schritt S3 werden die Zählervariable i und die Indexvariablen weitergeschaltet. Mindestens eine der Indexvariablen wird dabei um Eins erhöht, sofern durch das Erhöhen die eine Indexvariable nicht gleich der Anzahl Lh der Hilfskontrollwerte im Kontrollwertarray wird, in welchem Fall die eine Indexvariable auf Null gesetzt wird, und mindestens eine andere der Indexvariablen wird dabei um Eins erniedrigt, sofern durch das Erniedrigen die Indexvariable nicht kleiner Null wird, in welchem Fall die eine andere Indexvariable auf Lh-1 gesetzt wird. Die Zählervariable wird um Eins erhöht. Die Reihenfolge der Schritte S2 und S3 ist frei wählbar, muss jedoch bei der Initialisierung und/oder im folgenden Schritt S4 berücksichtigt werden.
  • In Schritt S4 wird geprüft, ob die Zählervariable kleiner als ein Looplängenwert ist. Der Looplängenwert kann etwa der Anzahl Lh der Hilfskontrollwerte im Kontrollwertarray oder der Anzahl Mh der Bits in der Nachricht entsprechen. Er kann insbesondere der größeren der beiden Anzahlen Lh, Mh entsprechen. Ist die Zählervariable kleiner als der Looplängenwert, so kehrt das Verfahren zu Schritt S2 zurück. Andernfalls endet das Verfahren.
  • In einer ersten beispielhaften Ausführungsform wird zur Bestimmung des i-ten Kontrollwertes der i-te Hilfskontrollwert aus dem Kontrollwertarray mit dem k-ten Hilfskontrollwert aus dem Kontrollwertarray bitweise XOR verknüpft, wobei die Indexvariable k unter Verwendung von i, VAL2 und Lh bestimmt wird. Beispielsweise wird k = (VAL – i) Modulo Lh gesetzt.
  • Die erste beispielhafte Ausführungsform ist besonders vorteilhaft, wenn die Nachricht, deren Echtheit zertifiziert/verifiziert werden soll, aus maximal so vielen Bits besteht, wie für das Adressieren eines der Hilfskontrollwerte aus einem Kontrollwertarray benötigt werden.
  • In einer zweiten beispielhaften Ausführungsform wird die Nachricht in zwei disjunkte Teilbitstrings zerlegt, die als Ganzzahlwerte VAL1, VAL2 ausgewertet und gegebenenfalls auf den auf den Wertebereich [0; Lh] beschränkt werden.
  • Dann wird zur Bestimmung des i-ten Kontrollwertes der j-te Hilfskontrollwert aus dem Kontrollwertarray mit dem k-ten Hilfskontrollwert aus dem Kontrollwertarray bitweise XOR verknüpft, wobei die Indexvariable k unter Verwendung von i, VAL2 und Lh und die weitere Indexvariable j unter Verwendung von i, VAL1 und Lh bestimmt wird. Beispielsweise wird j = (VAL1 + i) Modulo Lh und k = (VAL2 – i) Modulo Lh gesetzt.
  • Die zweite beispielhafte Ausführungsform ist besonders vorteilhaft, wenn die Nachricht, deren Echtheit zertifiziert/verifiziert werden soll, aus maximal doppelt so vielen Bits besteht, wie für das Adressieren eines der Hilfskontrollwerte aus einem Kontrollwertarray benötigt werden.
  • In einer dritten beispielhaften Ausführungsform wird die Nachricht in drei disjunkte Teilbitstrings zerlegt, die als Ganzzahlwerte VAL1, VAL2, VAL3 ausgewertet und gegebenenfalls auf den auf den Wertebereich [0; Lh] beschränkt werden.
  • Dann wird zur Bestimmung des i-ten Kontrollwertes der j-te Hilfskontrollwert aus dem Kontrollwertarray mit dem k-ten Hilfskontrollwert aus dem Kontrollwertarray und mit dem mit dem l-ten Hilfskontrollwert aus dem Kontrollwertarray bitweise XOR verknüpft, wobei die Indexvariable k unter Verwendung von i, VAL2 und Lh, die weitere Indexvariable j unter Verwendung von i, VAL1 und Lh und die noch weitere Indexvariable l unter Verwendung von i, VAL3 und Lh bestimmt werden. Beispielsweise wird j = (VAL1 + i) Modulo Lh, k = ((VAL2 – HK0 – i) Modulo Lh und l= (VAL3 – i) Modulo Lh gesetzt, wobei HK0 der Hilfskontrollwert im Kontrollwertarray zum Index Null ist.
  • Die dritte beispielhafte Ausführungsform ist besonders vorteilhaft, wenn die Nachricht, deren Echtheit zertifiziert/verifiziert werden soll, aus maximal dreimal so vielen Bits besteht, wie für das Adressieren eines der Hilfskontrollwerte aus einem Kontrollwertarray benötigt werden.
  • Ein besonderer Vorzug der ersten bis dritten beispielhaften Ausführungsform ist, dass die nachrichtabhängigen Kontrollwerte empfängerseitig in der Reihenfolge des Eintreffens der Nachrichtenteile mittels einfacher XOR-Operation auf Korrektheit überprüft werden können.
  • In einer vierten beispielhaften Ausführungsform wird die Nachricht in m Teilbitstrings mit je n Bits zerlegt, wobei 2(n-1) < Lh ≤ 2n bevorzugt Lh = 2n ist. Zu jedem Teilbitstring wird ein Kontrollwert ermittelt. Dazu werden zuerst die nachrichtabhängigen Kontrollwerte initialisiert, indem der i-te nachrichtabhängige Kontrollwert gleich dem (i Modulo Lh)-ten Hilfskontrollwert gesetzt wird.
  • Dann wird unter Verwendung einer Zählervariable 0 ≤ i < m ein Hilfskontrollwert aus dem Kontrollwertarray ausgewählt und unter Verwendung des ausgewählten Hilfskontrollwert und des i-ten Teilstrings eine Indexvariable j bestimmt.
  • Schließlich wird der j-te nachrichtabhängige Kontrollwert mit dem ausgewählten Hilfskontrollwert verknüpft, beispielsweise bitweise XOR-verknüpft. Mit dem Ergebnis wird dann der j-te Kontrollwert aktualisiert.
  • Die vierte beispielhafte Ausführungsform ist besonders vorteilhaft, wenn die Nachricht, deren Echtheit zertifiziert/verifiziert werden soll, aus mehr als dreimal so vielen Bits besteht, wie für das Adressieren eines der Hilfskontrollwerte aus einem Kontrollwertarray benötigt werden.
  • In der vierten beispielhaften Ausführungsform werden die einzelnen Kontrollwerte anhand der Hilfskontrollwerte im Kontrollwertarray initialisiert und anschließend in einer Reihenfolge verändert, die sich aus den Nachrichtenwerten sowie den Werten des Kontrollwertarray ergibt. Bei einem nachrichtabhängigen Kontrollwert mit 1024 Bits liegt die Sicherheit gegenüber einer Ein-Bit Manipulation bei 1:230
  • 3 zeigt einen exemplarischen Datenträger 300 in Form einer optischen Disk, zum Beispiel eine CD, DVD oder eine Blu-ray-Disk. Auf dem Datenträger sind prozessorausführbare Anweisungen gespeichert. Bei Ausführung der Anweisungen durch einen Prozessor wird eines der Ausführungsbeispiele des erfindungsgemäßen Verfahrens ausgeführt.
  • Die prozessorausführbaren Anweisungen, bei deren Ausführung durch einen Prozessor eines der Ausführungsbeispiele des erfindungsgemäßen Verfahrens ausgeführt wird, können auf anderen Datenträgern, beispielsweise auf einer lokal oder remote gehosteten Festplatte oder auf einem USB-Stick gespeichert sein.
  • Ein Vorteil der vorliegenden Erfindung ist, dass die Kontrollwerte vorausberechnet werden können und die eigentliche Prüfung einfach ist. Dies gewährt gegenüber dem nachrichtabhängigen Berechnen von Hash-Werten einen Geschwindigkeits- und/oder Speicherplatzvorteil. Ein weiterer Vorteil ist, dass sich die Erfindung auf bekannte Hash-Funktionen wie SHA-1, SHA-256 etc. aufbauen lässt.
  • Beispielhafte Ausführungsformen des Verfahrens können, müssen jedoch nicht, auf folgenden Verfahren aufbauen:
    Vor dem eigentlichen Senden der Nachricht schickt ein Empfänger E eine Zufallszahl r1 an den späteren Sender S der Nachricht M. Hierzu verwenden beide Kommunikationspartner einen vorher festgelegten Hash-Algorithmus, beispielsweise SHA-1 oder SHA-256, sowie einen geheimen Schlüssel, den beide Partner in einer initialen Konfigurationsphase ausgetauscht haben. Diese Form der Hash-Anwendung ist auch als Salted-Hashes bekannt.
  • Dann können Sender S und Empfänger E zu einer symbolischen Nachricht M0 und unter Verwendung der zuvor ausgetauschten Zufallszahl r1 einen Hash-Wert h0 errechnen. Die symbolische Nachricht M0 kann beispielsweise die leere Nachricht (alle Nachrichtenbits haben den Wert 0) oder jede beliebige andere Nachricht sein, auf die sich beide Kommunikationspartner verständigt haben.
  • Für die Berechnung dieses (ersten) Hash-Wertes muss noch nicht einmal die Nachricht M0 verwendet werden. Es reicht aus, die zuvor ausgetauschte Zufallszahl zu verwenden. Die Berechnung kann vor dem Ausstauch der eigentlichen Nachricht M erfolgen.
  • Wird nun eine Nachricht ausgetauscht, können die Kommunikationspartner eine im Vergleich zur Hash-Funktion einfach berechenbare Funktion f(M, h) verwenden, die aus dem ersten Hash-Wert h und der eigentlichen Nachricht einen modifizierten Hash-Wert hm berechnet. Diese Funktion f() kann dabei auf weitere Geheimnisse bzw. Hash-Werte zurückgreifen, die beide Kommunikationspartner im Voraus (also vor dem Versenden der eigentlichen Nachricht) berechnen können.
  • Es ist vorteilhaft aber nicht notwendig, wenn die Funktion F so gewählt ist, dass eine Änderung eines Bits der Nachricht M zu mehreren Änderungen des modifizierten Hash-Wertes hm führt, um so besonders gute Fälschungssicherheit zu erreichen.
  • Weiterhin ist es vorteilhaft aber nicht notwendig, wenn die Funktion F so gewählt ist, dass in die Bestimmung des modifizierten Hash-Wertes hm möglichst viele oder alle Bits der eigentlichen Nachricht einfließen, da so das Erstellen einer gefälschten Nachricht mit passendem modifizierten Hash-Wert besonders schwer wird.
  • Weiterhin ist es vorteilhaft aber nicht notwendig, wenn die Funktion F so gewählt ist, dass ein externer Zuhörer nicht wissen kann, an welchen Stellen sich der modifizierte Hash-Wert hm ändert, wenn sich ein bestimmtes Bit der eigentlichen Nachricht ändert, da so das Erstellen einer gefälschten Nachricht mit passendem modifizierten Hash-Wert besonders schwer wird.

Claims (8)

  1. Verfahren zur Bestimmung von mindestens einem nachrichtabhängigen Kontrollwert zu einer Nachricht unter Verwendung der Nachricht, wobei der nachrichtabhängige Kontrollwert weiterhin unter Verwendung eines Hilfskontrollwerts bestimmt wird, dadurch gekennzeichnet, dass der Hilfskontrollwert aus einem vorbestimmten Kontrollwerte-Array ausgewählt wird, wobei zur Auswahl des Hilfskontrollwerts aus dem vorbestimmten Kontrollwerte-Array ein Bitstring der Nachricht als Ganzzahlwert ausgewertet wird, wobei ein Index zur Auswahl aus dem Kontrollwerte-Array aus dem Ganzzahlwert MODULO einer Anzahl Lh von Hilfskontrollwerten im Kontrollwerte-Array bestimmt wird.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der mindestens eine nachrichtabhängige Kontrollwert durch eine bitweise XOR-Verknüpfung des ausgewählten Hilfskontrollwertes mit mindestens einem weiteren Hilfskontrollwert bestimmt wird.
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass der oder weitere Hilfskontrollwerte ebenfalls unter Verwendung der Nachricht aus dem Kontrollwerte-Array ausgewählt werden.
  4. Verfahren zur Zertifizierung der Echtheit einer Nachricht anhand von nachrichtabhängigen Kontrollwerten, umfassend Bestimmen von nachrichtabhängigen Kontrollwerten nach einem der vorangehenden Ansprüche und Anhängen der bestimmten Kontrollwerte an die Nachricht.
  5. Verfahren zur Überprüfung der Echtheit einer Nachricht anhand von nachrichtabhängigen Kontrollwerten, umfassend Bestimmen von Kontrollwerten nach einem der Ansprüche 1–3 und Vergleichen der bestimmten Kontrollwerte mit an die Nachricht angehängten Kontrollwerten.
  6. Vorrichtung zum Empfangen von Nachrichten, wobei die Vorrichtung konfiguriert ist, dass Verfahren gemäß Anspruch 5 auszuführen, um die Nachrichten auf Echtheit zu überprüfen.
  7. Vorrichtung zum Versenden von Nachrichten, wobei die Vorrichtung konfiguriert ist, das Verfahren gemäß Anspruch 4 auszuführen, um die Nachrichten auf Echtheit zu zertifizieren.
  8. Datenträger umfassend auf dem Datenträger gespeicherte prozessorausführbare Anweisungen, wobei bei Ausführung der Anweisungen durch einen Prozessor ein Verfahren ausgeführt wird, dadurch gekennzeichnet, dass das Verfahren nach einem der Ansprüche 1 bis 5 ausgeführt wird.
DE102015200486.4A 2015-01-14 2015-01-14 Verfahren zur Bestimmung eines nachrichtabhängigen Kontrollwerts, Verfahren zur Zertifizierung der Echtheit einer Nachricht, Verfahren zur Überprüfung der Echtheit einer Nachricht, Vorrichtung zum Versenden einer Nachricht, Vorrichtung zum Empfangen einer Nachricht und Datenträger Expired - Fee Related DE102015200486B4 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102015200486.4A DE102015200486B4 (de) 2015-01-14 2015-01-14 Verfahren zur Bestimmung eines nachrichtabhängigen Kontrollwerts, Verfahren zur Zertifizierung der Echtheit einer Nachricht, Verfahren zur Überprüfung der Echtheit einer Nachricht, Vorrichtung zum Versenden einer Nachricht, Vorrichtung zum Empfangen einer Nachricht und Datenträger

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015200486.4A DE102015200486B4 (de) 2015-01-14 2015-01-14 Verfahren zur Bestimmung eines nachrichtabhängigen Kontrollwerts, Verfahren zur Zertifizierung der Echtheit einer Nachricht, Verfahren zur Überprüfung der Echtheit einer Nachricht, Vorrichtung zum Versenden einer Nachricht, Vorrichtung zum Empfangen einer Nachricht und Datenträger

Publications (2)

Publication Number Publication Date
DE102015200486A1 DE102015200486A1 (de) 2016-07-14
DE102015200486B4 true DE102015200486B4 (de) 2017-03-16

Family

ID=56233864

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015200486.4A Expired - Fee Related DE102015200486B4 (de) 2015-01-14 2015-01-14 Verfahren zur Bestimmung eines nachrichtabhängigen Kontrollwerts, Verfahren zur Zertifizierung der Echtheit einer Nachricht, Verfahren zur Überprüfung der Echtheit einer Nachricht, Vorrichtung zum Versenden einer Nachricht, Vorrichtung zum Empfangen einer Nachricht und Datenträger

Country Status (1)

Country Link
DE (1) DE102015200486B4 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19640526A1 (de) * 1996-10-01 1998-04-02 Deutsche Telekom Ag Verfahren zur Übertragung von Signalen

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19640526A1 (de) * 1996-10-01 1998-04-02 Deutsche Telekom Ag Verfahren zur Übertragung von Signalen

Also Published As

Publication number Publication date
DE102015200486A1 (de) 2016-07-14

Similar Documents

Publication Publication Date Title
DE102020101358A1 (de) Selektive Echtzeit-Kryptographie in einem Fahrzeugkommunikationsnetz
DE102011011652B4 (de) Verfahren zum Verwenden eines ECDSA mit Winternitzeinmalsignatur
DE60133266T2 (de) Verfahren und Vorrichtung zum Schutz der Datenintegrität
DE102014221893A1 (de) Verfahren und Vorrichtung zum Erzeugen eines geheimen Schlüssels
EP3110101A1 (de) Verfahren zu einem manipulationsschutz von über ein bussystem zwischen systemkomponenten zu übertragenden nutzdatenpaketen
DE102013206185A1 (de) Verfahren zur Erkennung einer Manipulation eines Sensors und/oder von Sensordaten des Sensors
DE102009000869A1 (de) Verfahren und Vorrichtung zur manipulationssicheren Übertragung von Daten
DE102009002396A1 (de) Verfahren zum Manipulationsschutz eines Sensors und von Sensordaten des Sensors und einen Sensor hierzu
DE102013218212A1 (de) Verfahren zum abgesicherten Übermitteln von Daten
DE102020121533A1 (de) Vertrauenswürdige authentifizierung von automotiven mikrocon-trollern
DE102012209408A1 (de) Sichere Übertragung einer Nachricht
DE102014007820A1 (de) Datenrahmen für geschützte Datenübertragungen
EP3412018B1 (de) Verfahren zum austausch von nachrichten zwischen sicherheitsrelevanten vorrichtungen
DE102015200486B4 (de) Verfahren zur Bestimmung eines nachrichtabhängigen Kontrollwerts, Verfahren zur Zertifizierung der Echtheit einer Nachricht, Verfahren zur Überprüfung der Echtheit einer Nachricht, Vorrichtung zum Versenden einer Nachricht, Vorrichtung zum Empfangen einer Nachricht und Datenträger
EP2695324B1 (de) Verfahren zum aussenden von nachrichten mit integritätsschutz
EP2253097A1 (de) Verfahren zur unmanipulierbaren, abhörsicheren und nicht hackbaren p2p-kommunikation in mehrteilnehmernetze
DE102004038594A1 (de) Verschlüsselungsverfahren und -vorrichtung
DE102014217320A1 (de) Verfahren zur Generierung eines kryptographischen Schlüssels in einem Gerät sowie hierzu eingerichtetes Gerät
DE102018203143A1 (de) Verfahren zum Versenden und Verfahren zum Überprüfen von wenigstens zwei unter Verwendung eines Schlüssels authentifizierten Datenblöcken
WO2010149191A1 (de) Gegen manipulation geschützte datenübertragung zwischen automatisierungsgeräten
WO2022013335A1 (de) Verfahren und wiedergabeeinheit zur wiedergabe von gesicherten nachrichten
EP3903440B1 (de) Verfahren zum betreiben von im zähler-modus betriebenen schlüsselstromgeneratoren zur sicheren datenübertragung, schlüsselstromgenerator mit zähler-modus-betrieb zur sicheren datenübertragung und computer-programm-produkt zur schlüsselstromerzeugung
DE10223217A1 (de) Verfahren und Anordnung zur Verschlüsselung bzw. Entschlüsselung von Datenpaketen in drahtlosen Netzwerken
EP3554001B1 (de) Verfahren zum abgesicherten übertragen und verfahren zum abgesicherten bidirektionalen austauschen von elektronischen datenpaketen in einem netzwerk
DE102015219993B4 (de) Verfahren und Vorrichtung zum Erzeugen eines gemeinsamen Geheimnisses vorgegebener Länge

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee