DE69729297T2 - Verschlüsselungsvorrichtung für binärkodierte nachrichten - Google Patents

Verschlüsselungsvorrichtung für binärkodierte nachrichten Download PDF

Info

Publication number
DE69729297T2
DE69729297T2 DE69729297T DE69729297T DE69729297T2 DE 69729297 T2 DE69729297 T2 DE 69729297T2 DE 69729297 T DE69729297 T DE 69729297T DE 69729297 T DE69729297 T DE 69729297T DE 69729297 T2 DE69729297 T2 DE 69729297T2
Authority
DE
Germany
Prior art keywords
binary
encryption
block
elements
bit
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
DE69729297T
Other languages
English (en)
Other versions
DE69729297D1 (de
Inventor
Alexandr Andreevich Moldovyan
Nikolai Andreevich Moldovyan
Petr Andreevich Moldovyanu
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.)
MOLDOVYANU, PETR ANDREEVICH, VSEVOLOZHSK, RU
OAO "MOSKOVSKAYA GORODSKAYA TELEFONNAYA SET", MOSK
Original Assignee
Alexandr Andreevich Moldovyan
Nikolai Andreevich Moldovyan
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 Alexandr Andreevich Moldovyan, Nikolai Andreevich Moldovyan filed Critical Alexandr Andreevich Moldovyan
Publication of DE69729297D1 publication Critical patent/DE69729297D1/de
Application granted granted Critical
Publication of DE69729297T2 publication Critical patent/DE69729297T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)
  • Computer And Data Communications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Communication Control (AREA)
  • Optical Recording Or Reproduction (AREA)

Description

  • Die Erfindung betrifft das Gebiet der Telekommunikation und Computertechnik und insbesondere Verschlüsselungsverfahren und Vorrichtungen zum Verschlüsseln von Nachrichten (Daten).
  • Stand der Technik
  • In der Beschreibung des beanspruchten Verfahrens, bei Betrachtung der Ansammlung seiner Merkmale, werden die folgenden Konzepte verwendet.
  • Mit „Cipher" meinen wir eine binäre Information, die nur dem autorisierten Benutzer bekannt ist.
  • Mit „Schlüssel" meinen wir die Kombination von elementaren Schritten des Prozesses der Umwandlung von Eingabedaten unter Verwendung des Geheimschlüssels, die entweder in Form eines Computerprogramms oder als eine separate Einheit implementiert ist.
  • „Verschlüsselung" ist der Prozeß der Umwandlung von digitalen Informationen unter der Steuerung des Geheimschlüssels, die die Transformation der Quelldaten in einen verschlüsselten Text ermöglicht, der durch eine pseudozufällige Sequenz von Zeichen repräsentiert wird, so daß praktisch unmöglich ist, irgendeine Information daraus abzuleiten, ohne den Schlüssel zu kennen.
  • Die „Entschlüsselung" ist der zur Verschlüsselung umgekehrte Prozeß, der ermöglicht, die Information gemäß dem Kryptogramm wiederherzustellen, vorausgesetzt, daß der Bediener den Verschlüsselungsschlüssel kennt.
  • Mit „Binärvektor" ist allgemein eine bestimmte Sequenz von Ein- und Aus-Bits, zum Beispiel diejenige gemeint, die dem in der Kommunikationsverbindung vorhandenen Stromversorgungsgeräusch oder den Störsignalen entspricht; in der vorliegenden Anmeldung bezeichnet der Binärvektor einen Zug von geordneten Bits, die vom Akzeptor (Empfänger) von Daten nicht als ein gewünschtes Signal oder als die Information interpretiert sind.
  • „Pseudozufallsgesetz der Bildung von Binärvektoren" stellt eine vorab festgelegte Regel bezüglich der Erzeugung einer erweiterten Sequenz von Bits auf der Grundlage eines Startparameters und bezüglich der Unterteilung der Sequenz in Elemente mit notwendiger Größe dar; es ist möglich, als einen Startparameter den Geheimschlüssel oder eine zufällige Zahl zu verwenden; wenn ihr Wert unbekannt ist, wird die Ausgabesequenz in der Tat von zufällig erzeugten Signalen nicht unterscheidbar sein.
  • „Kryptanalyse" ist die Technik der Berechnung des Geheimschlüssels, um einen nicht autorisierten Zugriff auf die verschlüsselte Information zu haben, oder die Ausarbeitung eines Verfahrens, das Zugreifen auf derartige Information ermöglicht, ohne den Geheimschlüssel berechnen zu müssen.
  • „Kryptographische Beständigkeit" bildet das Maß der Zuverlässigkeit von Datenschutz und stellt die Arbeitsintensität dar, die in Form der Anzahl von elementaren Operationen, die durchzuführen sind, um die Information gemäß dem Kryptogramm unter Bedingungen wiederherzustellen, wenn der Benutzer den Umwandlungsalgorithmus und nicht den Geheimschlüssel kennt, angegeben ist.
  • Es sind zahlreiche Verfahren zur Blockverschlüsselung von Daten bekannt: siehe zum Beispiel den Cipher RCS [R. Rivest, The RCS Encyption Alorithm, Fast Software Encryption, Second International Workshop Proceedings (Leuven, Belgien, 14.–16. Dezember, 1994), Lecture Notes in Computer Science, v. 1008, Springer-Verlag, 1995, S. 86–96]. Gemäß diesem herkömmlichen Verfahren wird die Verschlüsselung von Datenblöcken durch bilden eines Geheimschlüssels, danach Unterteilen des umzuwandelnden Datenblocks in Unterblöcke und alternierend Ändern der letzteren mittels zyklischer Verschiebeoperationen und letztendlich Nehmen einer Modulo-2-Summe und einer Modulo-232-Summe bezüglich des aktuellen Blocks durchgeführt. Dieses Blockverfahren stellt eine hohe Verschlüsselungsrate im Falle der Implementierung des Ciphers in Form eines Computerprogramms sicher.
  • Es weist jedoch keine ausreichende Beständigkeit gegen die differentielle und lineare Kryptanalyse [Kaliski B. S., Yin Y. L. On Differential and Linear Cryptanalysis of the RCS Encryption Algorithm. Advances in Cryptology – CRYPTO' 95 Proc., Springer-Verlag, 1995, S. 171–184] aufgrund der Tatsache auf, dass mit einer derartigen Kryptanalysetechnik der Angreifer die Möglichkeit hat, speziell ausgewählte Originaltexte zu verschlüsseln.
  • Man kann als dasjenige Verfahren, das, hinsichtlich seines technischen Wesens, dem beanspruchten Verfahren zur Blockverschlüsselung am nächsten kommt, dasjenige ist, das in US Standard DES [National Bureau of Standards, Date Encryption Standar. Federal Information Processing Standards Publication 46, Januar 1977] beschrieben ist. Dieses Verfahren umfasst die Schritte der Bildung eines Geheimschlüssels mit einer bestimmten Länge, Teilens der in Form eines Binärcodes vorgelegten Eingangsinformation in 64 Bits lange Elemente, Erzeugens, auf der Grundlage der letzten, von 64-Bit-Datenblöcken und Umwandeln der Datenblöcke unter der Steuerung des Geheimschlüssels. Vor der Umwandlung wird jeder Datenblock in zwei 32-Bit-Unterblöcke L und R unterteilt, die danach abwechselnd während 16 ähnlicher Umwandlungsrunden behandelt werden. Eine einzelne Umwandlungsrunde besteht aus Operationen mit Substitution, Permutation und Ermitteln einer Modulo-2-Summe, die auf dem Unterblock R gebildet ist. Jede Runde wird in der Permutation der Unterblöcke R und L beendet. Das oben beschriebene Verfahren zur Blockverschlüsselung von Information liefert hohe Umwandlungsraten im Falle der Implementierung in Form von speziellen elektronischen Schaltungen.
  • Leider leidet es jedoch an dem Nachteil, der darin besteht, dass es bei Verwendung dieses Verfahrens möglich wird, zahlreiche Kryptanalysetechniken, die auf speziell ausgewählten Eingabeblöcken des Anfangstextes basieren, effizient anzuwenden. Dieser Nachteil ergibt sich aufgrund der Tatsache, daß bei einer derartigen Kryptanalyse der Analyst Anfangseingabetexte auswählen kann, deren Verschlüsselung von der Darlegung der statistischen Eigenschaften des Verschlüsselungsalgorithmus begleitet ist.
  • Die US 3978288 offenbart die Bereitstellung von Zufallsfüllsignalen zum Füllen von Lücken in einem analogen Sprachsignal entweder vor oder nach Verschlüsselung des Signals, aber offenbart keine Verschlüsselung von binärkodierten Informationen.
  • Somit besteht die Aufgabe der Erfindung darin, ein Verfahren zur Verschlüsselung von binärkodierten Informationen bereitzustellen, gemäß dem die Umwandlung von Eingabedaten derart durchgeführt wird, daß, mit einem bestimmten festen Geheimschlüssel, die Umwandlung des Anfangstextes in einen verschlüsselten Text ermöglicht wird, dessen Struktur nicht vorab festgelegt wird, wodurch die Detektion der statischen Eigenschaften des Verschlüsselungsalgorithmus schwieriger gemacht und die Beständigkeit gegenüber der Kryptanalyse, die auf der Grundlage der ausgewählten Originaltexte vorgenommen wird, verbessert wird.
  • Offenbarung der Erfindung
  • Das oben genannte Problem wird gelöst durch Bereitstellung eines Verfahrens zur Verschlüsselung von binärkodierten Informationen, umfassend die Schritte des Bildens eines Geheimschlüssels (K), des Aufstellens von mehr als einem Datenblock (B), enthaltend P ≥ 1 Elemente der binärkodierten Informationen, und Umwandelns der Datenblöcke (B) unter Kontrolle des Geheimschlüssels (K), dadurch gekennzeichnet, daß D ≥ 1 Binärvektoren (R), die von Elementen der binärkodierten Informationen unabhängig sind, zusätzlich erzeugt werden und die Datenblöcke (B) durch Verknüpfen der Binärvektoren (R) mit korrespondierenden Elementen (P) der binärkodierten Informationen aufgestellt werden und daß die Binärvektoren (R) eine feste Länge aufweisen und die Elemente (P) der binärkodierten Informationen eine feste Länge aufweisen, fortsetzen.
  • Mit einer derartigen Lösung hängt die Konfiguration der Blöcke mit verschlüsseltem Text nicht nur vom Geheimschlüssel und der Struktur der Elemente der binärkodierten Informationen, sondern auch von der Struktur der Binärvektoren ab, was zur Folge hat, daß genannte Konfiguration der Blöcke mit verschlüsseltem Text nicht länger für einen bestimmten Ausgangstext und den verwendeten Geheimschlüssel festgelegt ist. Folglich wird, es schwieriger, die statistischen Eigenschaften des Verschlüsselungsalgorithmus aufzudecken, was zu einer Zunahme der Beständigkeit gegen Kryptanalyse führt, die auf der Basis von ausgewählten Quelltexten ausgeführt wird.
  • Ein weiteres neuartiges Merkmal der Erfindung besteht darin, daß diese Vektoren zufällig erzeugt werden. Dies ermöglicht eine zufällige Modifikation eines Blocks mit verschlüsseltem Text zu erhalten, wodurch die Beständigkeit gegenüber Kryptanalyse verbessert wird, die entsprechend bekannten Verfahren durchgeführt wird.
  • Ein weiteres Merkmal besteht darin, daß die Binärvektoren pseudozufällig erzeugt werden, wodurch die Möglichkeit geliefert wird, das beanspruchte Verfahren auf einen PC mittels Software zu implementieren, ohne zusätzliche elektronische Schaltungen bei der Erzeugung von Zufallszahlen verwenden zu müssen.
  • Ein weiteres neuartiges Merkmal besteht darin, daß die Binärvektoren mit den korrespondierenden Elementen der binärkodierten Informationen auf der Basis des Geheimschlüssels verknüpft werden. Diese Lösung stellt einen Zunahme der Beständigkeit des Verschlüsselungssystems aufgrund der Einführung einer zusätzlichen Unsicherheit in den Prozeduren zur Aufstellung von Datenblöcken sicher.
  • Die vorliegende Erfindung wird nun detaillierter anhand beispielhafter Ausführungsformen derselben unter Bezugnahme auf die beigefügten Zeichnungen erläutert werden.
  • Kurzbeschreibung der Zeichnungen
  • 1 zeigt schematisch den Prozeß der Verschlüsselung eines Anfangstextes P gemäß dem vorgeschlagenen Verfahren.
  • 2 zeigt ein Blockdiagramm des Prozesses der Entschlüsselung des verschlüsselten Textes C.
  • 3 gibt ein Schema zur Unterteilung der binärkodierten Informationen in Elemente p1, p2, ... pi, ... und eines Satzes von erzeugten Binärvektoren r1, r2, ... ri ... wieder.
  • 4 zeigt schematisch einen Eingabedatenblock, der durch Verbinden der Elemente der binärkodierten Informationen mit den Binärvektoren aufgestellt ist.
  • 5 zeigt ein Blockdiagramm der Verschlüsselung in Beziehung zum Beispiel 2 unten.
  • Bevorzugte Ausführungsformen der Erfindung
  • Die Erfindung wird mit Hilfe des allgemeinen Diagramms der kryptographischen Umwandlung von Datenblöcken gemäß dem in 1 angegebenen beanspruchten Verfahren leichter verständlich werden, wobei:
    die Einheit RNG ein Zufallszahlengenerator ist, R ein Zufallsbinärvektor ist, P ein Element der umzuwandelnden Binärinformationen ist, E eine Verschlüsselungseinheit repräsentiert, K der Geheimschlüssel ist, C der verschlüsselte Ausgabetext ist und [|] das Zeichen darstellt, das die Verknüpfungsoperation symbolisiert.
  • Im Verschlüsselungssystems wird ein Element der Binärinformationen mit einem zufällig erzeugten Binärvektor R verbunden, um einen Datenblock B = R|P zu bilden, der zum Eingang der Verschlüsselungseinheit E geliefert wird, die einen verschlüsselten Text aufstellt.
  • Es wird entsprechend der Erfindung angenommen, daß der Block, der Binärvektoren erzeugt, Teil des Ciphers bildet und somit im Verlauf einer auf der Basis von ausgewählten Texten durchgeführten Kryptanalyse nicht von einem feindlichen Analysten ersetzt werden kann, noch der Verschlüsselungsalgorithmus verändert werden kann. Diese letztgenannte Maßnahme bildet ein Erfordernis, das allen bekannten Ciphern gemein ist. Die Struktur eines Binärvektors variiert in einer nicht vorhersagbaren Weise während der Verschlüsselungsprozedur, da sie vom Zufallszahlengenerator geliefert wird. Somit kann der zu verschlüsselnde Datenblock, der erhalten wird, nachdem der Binärvektor mit dem Eingabeblock verbunden worden ist, im Voraus nicht bekannt sein oder ausgewählt werden, wodurch ein kaum überwindbares Hindernis auf dem Weg einer auf der Grundlage von ausgewählten Anfangstexten unternommenen Attacke erzeugt wird.
  • Da der autorisierte Benutzer über den Verschlüsselungsschlüssel informiert ist, kann er, unter Verwendung eines geeigneten Algorithmus, die Struktur der Binärvektoren und diejenige des Eingabeblocks wieder herstellen. Wenn dieser Benutzer einen Binärvektor, der keinen Teil der zu übertragenden Information enthält, isoliert und verwirft, wird er die für ihn vorgesehene Erfindung vollständig und eindeutig wiederfinden.
  • 2 zeigt ein Blockdiagramm, das die Verschlüsselungsprozedur gemäß der Erfindung darstellt. Ein Block mit verschlüsseltem Text wird der Entschlüsselungseinheit D zugeführt, die die Wiederherstellung des Wertes des Datenblocks B = R|P unter Verwendung des eingegebenen Geheimschlüssels K sicherstellt. Die wiederhergestellten Binärvektoren R, die früher im Verschlüsselungsprozeß aufgestellt und verwendet worden sind, werden im Verschlüsselungssystem mittels Bit-für-Bit-Summierung auf Modulo 2 über R und über einen neuen Zufallswert, der am Ausgang des Zufallszahlengenerators geliefert wird, gelöscht werden.
  • Die zufällige Erzeugung von Binärvektoren kann zum Beispiel durch Messung eines wahrscheinlichkeitstheoretischen physikalischen Prozesses oder des Signals eines Rauschwandlers, für den es möglich ist, in vielen Anwendungen speziell gestaltete elektronische Schaltungen zu verwenden, durchgeführt werden. Gemäß einer anderen Ausführungsform kann man anstelle des Zufallszahlengenerators einen Pseudozufallszahlengenerator verwenden, dessen Eingang mit einer zufällig gewählten Binärzahl beliefert wird, um an seinem Ausgang eine pseudozufällige Sequenz mit erforderlicher Größe zu erhalten. Es ist eine Anzahl von Verfahren zum Aufbauen von Pseudozufallszahlengeneratoren bekannt: siehe zum Beispiel [B. Schneier, "Applied Cryptography", Second Edition, John Wiley & Sons, Inc., New York, 1966, S. 416–418], die bei der Implementierung der beanspruchten Lösung gut verwendet werden können. Die Verwendung eines derartigen Generators ermöglicht die Realisierung des vorgeschlagenen Verfahrens mittels Software-Einrichtungen, wenn wir z. B. als eine Anfangszufallzahl den Wert des Zeitintervalls nehmen, das zwischen aufeinanderfolgenden Tastenanschlägen verstrichen ist.
  • Zur Verschlüsselung von Umwandlungen von Unterblöcken ist es möglich, zum Beispiel das oben erwähnte analoge Verfahren im Stand der Technik oder das dem beanspruchten am nahestehensten sowie ein weiteres bekanntes Blockverschlüsselungsverfahren zu verwenden, das in dem US-Patent Nr. 5, 003, 596 [M. C. Wood, "Method of Cryptographically Transforming Electronic Digital Data from One Form to Another", US-Patent #5, 003, 596, 26. März 1991] zu verwenden.
  • Die technologische Machbarkeit des beanspruchten Verfahrens wird mittels der folgenden besonderen Beispiele von Ausführungsformen derselben bewiesen. Der Kürze halber und zum leichteren Verständnis werden diese Beispiele in Form von Algorithmen gebracht, die eine Sorte von Datensätzen von aufeinanderfolgenden Prozeduren zur Implementierung von besonderen Ausführungsformen des vorgeschlagenen Blockverschlüsselungsverfahrens bilden.
  • Beispiel 1
  • Dieses Beispiel dient dazu, das Verfahren zur Verschlüsselung von Informationen darzustellen, die in Form eines Binärcodes vorgelegt werden, der in 32-Bit-Elemente unterteilt ist. Die hierin verwendete Einheit E stellt die Durchführung der Verschlüsselung von 64-Bit-Datenblöcken gemäß dem oben genannten nahesten Verfahren im Stand der Technik sicher. Zur Beschreibung von Beispiel 1 wird der folgende Algorithmus verwendet.
  • Algorithmus 1: 32-Bit-Blockcipher
    • 1. Nimm ein nächstes 32-Bit-Element der binärkodierten Information P, stelle einen 32-Bit-Zufallsvektor R auf und erzeuge einen Datenblock B = R|P, wobei das Zeichen "|" die Verknüpfung (Verbindung) symbolisiert.
    • 2. Verschlüssele den 64-Bit-Datenblock unter Verwendung des nächsten Verfahrens im Stand der Technik.
  • Beispiel 2
  • Dieses Beispiel stellt das Verfahren zur Verschlüsselung von Informationen dar, die in Form eines Binärcodes vorgelegt wird, der in 12-Bit-Elemente unterteilt ist. Es kann jedes bekannte Verfahren zur Verschlüsselung von 64-Bit-Blöcken B (wobei B = X|Y), zum Beispiel das naheste Verfahren im Stand der Technik verwenden. Die Verschlüsselungsfunktion wird durch E(B) bestimmt, d. h., wenn der Bock B verschlüsselt wird, wird letzterer gemäß der Regel B←E(B) umgewandelt, wobei „←" dazu dient, die Zuordnungsoperation zu bezeichnen. Für die Beschreibung von Beispiel 2 wird der folgende Algorithmus verwendet.
  • Algorithmus 2: 48-Bit-Blockcipher
    • 1. Bilde einen Verschlüsselungsschlüssel.
    • 2. Nimm die nächsten vier 12-Bit-Elemente der binärkodierten Informationen p1, p2, p3 und p4, stelle zufällig vier 20-Bit-Binärvektoren v1, v2, v3 und v4 auf und erzeuge einen Datenblock P = p1|v1|p2|v2|p3|v3|p4|v4.
    • 3. Unterteile den Datenblock P in zwei Unterblöcke: P = X|Y, wobei X = p1|v1|p2|v2 und Y = p3|v3|p4|v4.
    • 4. Wandle den Unterblock X um: X←E(X).
    • 5. Lege den Unterblock X auf den Unterblock Y: Y←IX, wobei das Symbol „..." die Operation des Bit-für-Bit-Summierens auf Modulo 2 bezeichnet.
    • 6. Wandle den Unterblock Y um: Y←E(Y).
    • 7. Lege den Unterblock Y auf den Unterblock X: XY←XY.
    • 8. Wandle den Unterblock X um: X← E(X).
    • 9. Lege den Unterblock X auf den Unterblock Y: Y←YX.
    • 10. Wandle den Unterblock Y um: Y←E(Y)
    • 11. Lege den Unterblock Y auf den Unterblock X: X←XY
    • 12. Liefer den Block X|Y als den Ausgabeblock des verschlüsselten Textes.
  • Das obige Beispiel 2 ist in den 3 bis 5 dargestellt. In 3 ist der Block 1 eine in 12-Bit-Elemente unterteilte binärkodierte Information und gibt der Block 2 eine Sequenz von erzeugten 20-Bit-Vektoren wider. 4 zeigt die Konfiguration der so gebildeten Datenblöcke. Das Schema der Umwandlungen wird von 5 dargestellt, wo der Block E die Verschlüsselungsprozeduren gemäß dem nahesten Verfahren im Stand der Technik symbolisiert.
  • Beispiel 3
  • Dieses Beispiel stellt die Anwendung des Geheimschlüssels auf die Definition des Gesetzes zur Aufstellung eines 1024-Byte-Datenblocks B durch Verwendung von 32-Bit-Elementen der binärkodierten Informationen und 32-Bit-Zufallsbinärvektoren dar. Der Verschlüsselungsprozeß verwendet den in der Arbeit [Kaliski B. S., Robshaw M. J. B. Fast Block Cipher Proposal. Fast Software Encryption, Proceedings of the Cambridge Security Workshop, Lecture Notes in Computer Science, v. 809, Springer-Verlag, 1994, Seiten 26–39; siehe auch B. Schneier, „Applied Cryptography", Second Edition, John Wiley & Sons, Inc., Newe York, 1966, Seiten 342–344] beschriebenen Cipher "Crab". Dieser Cipher dient dazu, 1024 Byte-Datenblöcke, die als eine Sequenz von 32-Bit-Unterblöcken B0, B1, B2, ... B255 vorgelegt werden, umzuwandeln, und verwendet einen Geheimschlüssel in Form einer Permutationstabelle und einer geordneten Sequenz, die aus 2048 Unterschlüsseln Q0, Q1, Q2, ... Q2047 mit jeweils der Länge von 32 Bits zusammengesetzt ist. Lassen wir die vom Cipher "Crab" definierte Verschlüsselungsfunktion „E" bezeichnen. Der folgende Algorithmus beschreibt die Prozeduren betreffend Beispiel 3.
  • Algorithmus 3: 512-Byte-Wahrscheinlichkeitscipher
  • EINGABE: 512-Byte-Elemente der binärkodierten Informationen, die in Form einer Sequenz von 32-Bit-Elementen von binärkodierten Informationen p0, P1, p2, ..., p127 vorgelegt ist.
    • 1. Bilde 128 Zufalls-32-Bit-Binärvektoren r0, r1, r2, ..., r127.
    • 2. Integriere die 32-Bit-Binärvektoren und die 32-Bit-Elemente der binärkodierten Information in einem Zwischenblock. (t0|t1|t2| ... |t255) (t0|t1|t2| ... |t127) = (r0|r1|r2| ... r127) (t128|t129|t130| ... |t255) = (p0|p1|p2| ... |p127).
    • 3. Berechne unter Verwendung der Unterschlüssel Q0, Q1, Q2, Q3 und Q4 die Parameter u1 = Q0 mod 256, u2 = Q1 mod 256, u3 = Q2 mod 256, s (1) = Q3 mod 8, s (2) = Q4 mod 8.
    • 4. Stelle einen Anfangszählerwert i = 0 auf und erzeuge 32-Bit-Variablen b0 = b1 = b2 = ... = b255 = 0.
    • 5. Berechne den Index h = [(u1⊖i)<<<s(1) + u2]<<<s(2)⊕u3
    • 6. Ordne der Variablen b1 zu den Wert tn: b1←tn.
    • 7. Wenn i ≠ 255, erhöhe i←i + 1 und gehe zu Ziffer 5.
    • 8. Integriere die Variablen bi in einem 1024-Byte-Datenblock: B = b0|b1|b2| ... |b255 = 0
    • 9. Verschlüssele unter Verwendung des Ciphers "Crab" den Block B:C = E(B), wobei E die vom Cipher definierte Verschlüsselungsfunktion bezeichnet.
  • AUSGABE: Ein 1024-Byte-Block mit verschlüsseltem Text C.
  • Die Ziffern 2, 3, ..., 7 beschreiben die Prozedur des Verbindens der Elemente der binärkodierten Informationen mit den auf dem Geheimschlüssel und genauer gesagt auf den Unterschlüsseln Q0, Q1, Q2, Q3, Q4 basierenden Binärvektoren.
  • Gewerbliche Anwendbarkeit
  • Wie durch die obigen Beispiele gezeigt wurde, ist das beanspruchte Verfahren zur Blockverschlüsselung technisch durchführbar und die verfolgte Aufgabe gut erzielbar.
  • Diese Beispiele sind zum Beispiel auf Personalcomputern leicht zu implementieren und ermöglichen, auf dieser Basis, Softwareverschlüsselungsmodule herzustellen, die eine hohe Beständigkeit gegen Attacken aufweisen, die unter Verwendung von ausgewählten Anfangstexten unternommen werden.
  • Durch diese Beispiele ist bewiesen, daß das vorgeschlagene Verfahren zur kryptographischen Umwandlung von Digitaldatenblöcken technisch machbar ist und erlaubt, das gesuchte Ziel zu erreichen.
  • Das beanspruchte Verfahren kann zum Beispiel auf einem PC implementiert werden, was die Möglichkeit bietet, auf seiner Basis hochschnelle Softwareverschlüsselungsmodule zu schaffen und einen mit einem Softwaresystem mit schneller Verschlüsselung ausgestatteten Personalcomputer als Ersatz für die gegenwärtigen teuren und komplizierten Verschlüsselungseinrichtungen zu verwenden.

Claims (4)

  1. Verfahren zur Verschlüsselung von binärkodierten Informationen, umfassend die Schritte des Bildens eines Geheimschlüssels (K), des Aufstellens von mehr als einem Datenblock (B), enthaltend P ≥ 1 Elemente der binärkodierten Informationen, und Umwandelns der Datenblöcke (B) unter Kontrolle des Geheimschlüssels (K), dadurch gekennzeichnet, daß D ≥ 1 Binärvektoren (R), die von Elementen der binärkodierten Informationen unabhängig sind, zusätzlich erzeugt werden und die Datenblöcke (B) durch Verknüpfen der Binärvektoren (R) mit korrespondierenden Elementen (P) der binärkodierten Informationen aufgestellt werden und daß die Binärvektoren (R) eine feste Länge aufweisen und die Elemente (P) der binärkodierten Informationen eine feste Länge aufweisen.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Binärvektoren (R) zufällig erzeugt werden.
  3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Binärvektoren (R) pseudozufällig erzeugt werden.
  4. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß die Binärvektoren (R) mit den korrespondierenden Elementen (P) der binärkodierten Informationen auf der Grundlage des Geheimschlüssels (K) verknüpft werden.
DE69729297T 1997-04-02 1997-12-24 Verschlüsselungsvorrichtung für binärkodierte nachrichten Expired - Fee Related DE69729297T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
RU97104754 1997-04-02
RU97104754A RU2103829C1 (ru) 1997-04-02 1997-04-02 Способ шифрования информации, представленной двоичным кодом
PCT/RU1997/000419 WO1998044678A1 (fr) 1997-04-02 1997-12-24 Dispositif de chiffrage d'information presentee en code binaire

Publications (2)

Publication Number Publication Date
DE69729297D1 DE69729297D1 (de) 2004-07-01
DE69729297T2 true DE69729297T2 (de) 2005-06-09

Family

ID=20191234

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69729297T Expired - Fee Related DE69729297T2 (de) 1997-04-02 1997-12-24 Verschlüsselungsvorrichtung für binärkodierte nachrichten

Country Status (10)

Country Link
US (1) US6463150B1 (de)
EP (1) EP0907269B1 (de)
JP (1) JP2000511755A (de)
CN (1) CN1241352C (de)
AT (1) ATE268080T1 (de)
DE (1) DE69729297T2 (de)
PL (1) PL188578B1 (de)
RU (1) RU2103829C1 (de)
UA (1) UA41481C2 (de)
WO (1) WO1998044678A1 (de)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2345229B (en) * 1998-12-23 2003-12-03 Motorola Ltd Method for encrypting data
GB2374260B (en) * 2001-10-12 2003-08-13 F Secure Oyj Data encryption
JP2003162986A (ja) * 2001-11-27 2003-06-06 Sanyo Electric Co Ltd Id発生装置及びid確認装置
US7346160B2 (en) * 2003-04-23 2008-03-18 Michaelsen David L Randomization-based encryption apparatus and method
JP2005012663A (ja) * 2003-06-20 2005-01-13 Sanyo Electric Co Ltd 認証システム及びid発生装置
US20050044388A1 (en) * 2003-08-19 2005-02-24 Brant Gary E. Reprise encryption system for digital data
JP2005072355A (ja) * 2003-08-26 2005-03-17 Sanyo Electric Co Ltd 半導体装置及びid発生装置
JP2005073053A (ja) * 2003-08-26 2005-03-17 Sanyo Electric Co Ltd Id確認装置、id発生装置及び認証システム
US7643633B2 (en) * 2005-05-06 2010-01-05 Research In Motion Limited Adding randomness internally to a wireless mobile communication device
ATE472212T1 (de) * 2005-11-08 2010-07-15 Irdeto Access Bv Verfahren zur verschlüsselung und entschlüsselung von dateneinheiten
CN101072099B (zh) * 2007-06-22 2010-06-16 苏盛辉 一种基于非均匀超递增序列的公钥加密方法
RU2459275C1 (ru) * 2011-08-02 2012-08-20 Николай Андреевич Молдовян Способ блочного шифрования сообщения м, представленного в двоичном виде
RU2581772C2 (ru) * 2014-09-15 2016-04-20 Федеральное государственное казенное военное образовательное учреждение высшего профессионального образования "Военная академия Ракетных войск стратегического назначения имени Петра Великого" Министерства обороны Российской Федерациии Способ шифрования информации, представленной двоичным кодом
RU2623894C1 (ru) * 2016-10-17 2017-06-29 Российская Федерация, от имени которой выступает Государственная корпорация по атомной энергии "Росатом" Способ преобразования данных с равновероятностной инициализацией
EP3618344B8 (de) * 2017-06-27 2022-05-25 Mitsubishi Electric Corporation Codeerzeugungsvorrichtung, codeerzeugungsverfahren und codeerzeugungsprogramm
CN109218013A (zh) * 2018-10-10 2019-01-15 青岛科技大学 掩盖明文符号边界的二进制数据通信加密法
CN115189878B (zh) * 2022-09-08 2022-12-23 蓝象智联(杭州)科技有限公司 一种基于秘密分享的共享数据排序方法及电子设备

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL126876C (de) * 1964-07-31
CH559483A5 (de) * 1973-06-12 1975-02-28 Patelhold Patentverwertung
DE2658065A1 (de) * 1976-12-22 1978-07-06 Ibm Deutschland Maschinelles chiffrieren und dechiffrieren
FR2410921A1 (fr) * 1977-11-30 1979-06-29 Telecommunications Sa Systeme de brouillage et de debrouillage de signaux numeriques
FR2650458B1 (fr) * 1989-07-25 1991-10-11 Trt Telecom Radio Electr Procede de traitement d'une permutation irreguliere de donnees protegees par chiffrement
US5003596A (en) 1989-08-17 1991-03-26 Cryptech, Inc. Method of cryptographically transforming electronic digital data from one form to another
US5142578A (en) * 1991-08-22 1992-08-25 International Business Machines Corporation Hybrid public key algorithm/data encryption algorithm key distribution method based on control vectors
RU2072635C1 (ru) * 1993-04-01 1997-01-27 Михаил Калистович Жемчугов Устройство кодирования цифровой информации
GB2288519A (en) * 1994-04-05 1995-10-18 Ibm Data encryption
US5479513A (en) * 1994-11-18 1995-12-26 Martin Marietta Energy Systems, Inc. Fast and secure encryption-decryption method based on chaotic dynamics
RU2077113C1 (ru) * 1995-04-19 1997-04-10 Военная академия связи Способ криптозащиты системы телекоммуникационных технологий
US5778074A (en) * 1995-06-29 1998-07-07 Teledyne Industries, Inc. Methods for generating variable S-boxes from arbitrary keys of arbitrary length including methods which allow rapid key changes
JP3992742B2 (ja) * 1996-05-20 2007-10-17 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ データブロックおよび鍵を非線形的に結合する暗号方法および装置

Also Published As

Publication number Publication date
CN1244321A (zh) 2000-02-09
CN1241352C (zh) 2006-02-08
PL332675A1 (en) 1999-09-27
US6463150B1 (en) 2002-10-08
EP0907269A1 (de) 1999-04-07
EP0907269A4 (de) 2000-11-02
EP0907269B1 (de) 2004-05-26
PL188578B1 (pl) 2005-02-28
RU2103829C1 (ru) 1998-01-27
JP2000511755A (ja) 2000-09-05
WO1998044678A1 (fr) 1998-10-08
ATE268080T1 (de) 2004-06-15
UA41481C2 (uk) 2001-09-17
DE69729297D1 (de) 2004-07-01

Similar Documents

Publication Publication Date Title
DE69729297T2 (de) Verschlüsselungsvorrichtung für binärkodierte nachrichten
DE69721439T2 (de) Kryptographisches verfahren und einrichtung zum nichtlinearen zusammenfugen eines datenblocks und eines schlussels
DE69929251T2 (de) Verschlüsselungssystem mit einem schlüssel veränderlicher länge
DE69433257T2 (de) Verfahren und Kommunikationssystem unter Verwendung einer Verschlüsselungseinrichtung
DE2231835C3 (de) Verfahren zur in mehreren Stufen erfolgenden Ver- und Entschlüsselung binärer Daten
DE69728465T2 (de) Nichtparalleler Mehrzyklus-Verschlüsselungsapparat
DE60119410T2 (de) Vorrichtung und Verfahren zur Blockverschlüsselung und zur Entschlüsselung
DE69916160T2 (de) Vorrichtung und Verfahren zur kryptographischen Verarbeitung sowie Aufzeichnungsmedium zum Aufzeichnen eines kryptographischen Verarbeitungsprogramms zur Ausführung einer schnellen kryptographischen Verarbeitung ohne Preisgabe der Sicherheit
DE60313704T2 (de) Verfahren und Vorrichtung zur Erzeugung eines Geheimschlüssels
DE60024941T2 (de) Verschlüsselungsverfahren und -Vorrichtung, Entschlüsselungsverfahren und -Vorrichtung
DE19827904C2 (de) Blockchiffrier- oder -dechiffrierverfahren und Blockchiffrier- oder -dechiffriervorrichtung
DE60315700T2 (de) Verfahren zum erzeugen einer stromverschlüsselung mit mehreren schlüsseln
DE69831982T2 (de) Kryptographisches vermittlungsverfahren und gerät
DE10148415C2 (de) Verfahren und Vorrichtung zum Verschlüsseln und Entschlüsseln von Daten
CH693252A5 (de) Verfahren und Vorrichtung zurErzeugung einer ganzen Zahl
DE102008010789B4 (de) Verfahren zur zugriffs- und kommunikationsbezogenen Zufallsver- und Entschlüsselung von Daten
DE69333257T2 (de) Anlage für Signalschaltung und -verarbeitung
DE102004042826B4 (de) Verfahren und Vorrichtung zur Datenverschlüsselung
DE60311507T2 (de) Verfahren zur elliptische-kurven-verschlüsselung
DE102008010794B3 (de) Verfahren zur unmanipulierbaren, abhörsicheren und nicht hackbaren P2P-Kommunikation in Mehrteilnehmernetze
EP0307627B1 (de) Verfahren zur Erzeugung und Verteilung von Geheimschlüsseln
DE3631797C2 (de)
DE10352680A1 (de) Verschlüsselungsvorrichtung und Verschlüsselungsverfahren
DE19757370C2 (de) Verfahren zur taktilen Erzeugung pseudo-zufälliger Datenworte
DE19513898B4 (de) Public-Key-Verfahren zur Verschlüsselung von Daten

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: MOLDOVYAN, ALEXANDR ANDREEVICH, VSEVOLOZHSK, RU

Owner name: MOLDOVYAN, NIKOLAI ANDREEVICH, VSEVOLOZHSK, RU

8327 Change in the person/name/address of the patent owner

Owner name: OAO "MOSKOVSKAYA GORODSKAYA TELEFONNAYA SET", MOSK

Owner name: MOLDOVYANU, PETR ANDREEVICH, VSEVOLOZHSK, RU

8339 Ceased/non-payment of the annual fee