WO2005046117A1 - Method for encoding electrical data - Google Patents

Method for encoding electrical data Download PDF

Info

Publication number
WO2005046117A1
WO2005046117A1 PCT/DE2004/001865 DE2004001865W WO2005046117A1 WO 2005046117 A1 WO2005046117 A1 WO 2005046117A1 DE 2004001865 W DE2004001865 W DE 2004001865W WO 2005046117 A1 WO2005046117 A1 WO 2005046117A1
Authority
WO
WIPO (PCT)
Prior art keywords
elements
electronic
code
data
sequence
Prior art date
Application number
PCT/DE2004/001865
Other languages
German (de)
French (fr)
Inventor
Luis Rocha
Original Assignee
Europa-Universität Viadrina Franfurt (Oder)
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 Europa-Universität Viadrina Franfurt (Oder) filed Critical Europa-Universität Viadrina Franfurt (Oder)
Priority to DE112004002623T priority Critical patent/DE112004002623D2/en
Publication of WO2005046117A1 publication Critical patent/WO2005046117A1/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms

Definitions

  • the invention is in the field of encryption of electronic data, in particular with the aid of coding techniques that use variable length codes (VLC - "Variable Length Code”).
  • Elements of electronic data sets are encrypted to prevent unauthorized access to the data.
  • Various cryptographic procedures are known from the prior art, which are usually implemented in connection with electronic data with the aid of so-called crypto chips.
  • the crypto chips are able to perform the operations necessary to encrypt / decrypt the electronic data.
  • they are equipped with the corresponding application software according to the desired process.
  • different crypto chip modules can be produced with the help of different hardware designs.
  • a device for encrypting or decrypting electronic data is known from document DE 199 63 042 AI.
  • VL codes are characterized in that not all code words of one code have the same length, but that the code words of one code have different lengths and that the code of each element to be coded is unique and never to be coded from left to right in the code of another code Element of greater length is included.
  • a code word is formed from a set of coding elements, so that with the aid of the coding elements a code word belonging to a respective element of an alphabet to be coded is created.
  • the set of all code words for all elements of the alphabet to be encoded forms the associated code.
  • the encryption / decryption of electronic data is important in a wide variety of applications in which electronic data are to be transmitted, for example, via a communication line between a transmitter module and a receiver module.
  • the transmission of the electronic data can, for example, also include the filing or interpretation. relate to electronic data in or from a memory. But also in connection with any telecommunications application, for example in mobile telephones or the like, there is often a need to protect electronic data from unauthorized access.
  • a method for encrypting numerical information and a transmission module are known from document DE 199 58 599 A1.
  • Coding methods with variable word lengths are known from the prior art, for example the Huffman code, which is a VLC method.
  • One of its essential properties is that elements of an alphabet to be encoded that occur very often have a shorter code length than elements of the alphabet to be encoded that do not occur very often.
  • such methods have an extraordinary property: the code of a coded element is never contained at the beginning of a code of another coded element of greater length. Therefore, such a code is called: prefix code.
  • prefix code the code of each element of the alphabet to be encoded is unique and is never contained from left to right in the code of another element of the alphabet of greater length to be encoded. This enables clear decoding and prevents manipulation of the encrypted message.
  • the object of the invention is to provide an improved method for encrypting an electronic amount of data, in which the encryption / decryption can be carried out while maintaining a sufficient security standard with the lowest possible computing power, so that it is particularly suitable for use in conventional computer equipment, for example laptops or personal computers.
  • the invention has the advantage over the prior art that a method which also meets demanding security requirements is made available, which on the other hand ensures fast encryption of electronic data with the aid of the computing power usually available in a normal personal computer. Despite the high security wire of the process, the encrypted text is generated in very short times. In this way, the method is suitable, for example, for use in connection with the daily exchange of electronic messages (“email”).
  • the method can be implemented as application software with little programming effort, and it can be integrated into standard programs.
  • the method according to the invention is an encryption method in which a prefix property is retained, so that unique encryption is made possible, which prevents manipulation of the encrypted text.
  • the expiration can be optimized in an expedient further development of the invention by querying a number of the key elements of the key used for the encryption and automatically entering a user input for specifying the number of key elements. In this way, the user of the encryption method is given an opportunity to freely choose the desired level of security.
  • an interleaved encryption is carried out in that the amount of electronic data to be delivered is an encrypted amount of data. This means that the encryption process is carried out several times, so that in the second application the output quantity of electronic data is already an encrypted data quantity.
  • Figure 1 is a schematic representation of an apparatus for performing a method for encrypting / decrypting an amount of electronic data
  • Figures 2A to 2F representations of a matrix in the course of an encryption process.
  • the method is carried out with the aid of a device which is shown schematically in FIG. 1.
  • the quantity V of electronic data is stored in a storage device 1 and is loaded from the storage device 1 for encryption / decryption by a processing module 2.
  • the processing module 2 can be, for example, a conventional microprocessor that is equipped with the aid of suitable software and / or digital hardware technology in order to carry out the method for encryption / decryption or coding / decoding described below.
  • the processing module 2 can be part of a personal computer or another device which has means for processing electronic data, for example a mobile radio telephone or the like.
  • Encrypted / decrypted data can then be delivered by the processing module 2, for example via an output device 3 to another device 4 and / or to the storage device 1.
  • the delivery to the other device 4 relates, for example, to the transmission of an encrypted electronic message which is then stored in the other device 4 is automatically decrypted. Additionally or alternatively, a direct transmission of the encrypted / decrypted data between the processing module and another data processing device 5 can also be provided.
  • the elements of the alphabet data set W can be, for example, the ASCII elements. With the help of the ASCII elements, a message can be written that then to be encoded.
  • the coding elements Z j are, for example, the numbers 0 and 1 (binary code), which are combined with one another in order to form an associated code word for each ASCII element.
  • the stringing together of the code words for the ASCII elements contained in the message to be coded then forms a coded message which can be processed electronically, for example sent or saved to a recipient.
  • Each initial vector x ° generates a certain sequence of numbers ⁇ x v ⁇ , ie to master the whole sequence it is sufficient to know the vector x °.
  • the number ⁇ is preferred to choose the number ⁇ as a parameter such that the sequence ⁇ x v ⁇ behaves chaotically, ie that it does not converge to a fixed point.
  • the numbers ⁇ x v ⁇ are each assigned a specific ASCII element, namely a specific character of the ASCII code.
  • nf 1 to nf is set & kc + ⁇ , i ⁇ ⁇ .
  • the length of the key depends on k and is determined in advance.
  • a coded text is to be decoded, which is composed of elements of D.
  • the iteration function ⁇ : 9 ⁇ k + 1 - 5R as well as the parameter ⁇ are known, ie exactly as with encryption.
  • the decoding is then carried out in the exemplary embodiment with the following steps:
  • the vector code (v) is used as a kind of catalog.
  • the coded text is started to be read character by character from the beginning and each time a comparison is made as to whether the read characters already together represent an encoded word of the vector code (v). If this is the case, decoding is carried out. Then you start to read and compare character by character again. This is only possible thanks to the prefix property of the generated code. The whole process can be carried out very quickly. A large number of operations are not necessary, as is the case with asymmetrical methods.
  • An alphabet set W to be encoded comprises the letter set ⁇ R, O, M, A ⁇ .
  • the elements of the matrix A (a Pjm ) are considered, the cells or elements of the matrix A, which are identified by the character “0”, having no meaning and being disregarded, ie they are neither used nor used cells of matrix A marked with the symbol "•" indicate the markings of matrix A.
  • Cell a 21 is marked in the second line and cell a 31 in the third line. Only the elements of a selected cell can multiply. When the matrix A is occupied, the following multiplication rules should apply in the exemplary embodiment during the row-by-row coverage: - All symbols that land in a marked cell of matrix A are to be considered as a mother.
  • the starting position (line 2) according to FIG. 2A results.
  • the first mother is in cell a 21 , she has two children and goes into the next generation as 00 and 01.
  • the second generation (row 3) then results according to FIG. 2B.
  • the second mother is in cell a 31 , she has two children and gerxt in the next generation (row 4) as 10 and 11, so that there is a matrix assignment according to FIG. 2C.
  • the desired code words for the letters ⁇ R, O, M, A ⁇ to be coded then result from line 4.
  • the decoding is done from left to right and without any problems due to the prefix property of the code.
  • Data compression ierun ⁇ Another advantage of the method is that encrypted data compression can be carried out if: 1.
  • the set D is any subset of the set ⁇ 1, 2, ..., 9 ⁇ and comprises at least two elements. 2.
  • the end result is an encrypted file that is smaller than the original file.
  • the decoding is done analogously: 1. There is an encrypted message which has been represented with the extended ASCII table and which has been encrypted using the method presented above. 2. The key to the process is known. There is thus information about the set D that was used as the code alphabet.
  • the decompressed file is then obtained as follows: 3. Read each symbol and determine its numerical representation in the extended ASCII table. 4. Each number obtained in 3. is shown in the numerical representation according to base b according to 2.. 5. After step 4. there is an encrypted file. 6. Use the procedure outlined above.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The invention relates to a method for encoding a quantity of electronic data quantity to be sent from an emitter device to a receiver device. Said method can be implemented at a low cost and ensures a temporally efficient encoding of electronic data, meeting the required safety standards. The encoding is based on codes of a variable length, fitting a prefix property.

Description

VERFAHREN ZUM VERSCHLÜSSELN VON ELEKTRISCHEN DATEN METHOD FOR ENCRYPTING ELECTRICAL DATA
Die Erfindung liegt auf dem Gebiet der Verschlüsselung elektronischer Daten, insbesondere mit Hilfe von Codiertechniken, die Code variabler Länge nutzen (VLC - „Variable Length Code").The invention is in the field of encryption of electronic data, in particular with the aid of coding techniques that use variable length codes (VLC - "Variable Length Code").
Stand der TechnikState of the art
Elemente elektronischer Datenmengen werden verschlüsselt, um einen unberechtigten Zugriff auf die Daten zu verhindern. Aus dem Stand der Technik sind unterschiedliche kryptographi- sche Verfal ren bekannt, die in Verbindung mit elektronischen Daten üblicherweise mit Hilfe von sogenannten Kryptochips umgesetzt werden. Die Kryptochips sind in der Lage, die zum Verschlüsseln/Entschlüsseln der elektronischen Daten notwendigen Operationen auszuführen. Zu diesem Zweck werden sie dem gewünschten Verfahren entsprechend mit zugehöriger Anwendungssoftware ausgestattet. Darüber hinaus können mit Hilfe unterschiedlicher Hardware-Gestaltungen verschiedene Kryptochip-Module hergestellt werden. Beispielsweise ist aus dem Dokument DE 199 63 042 AI eine Vorrichtung zum Verschlüsseln bzw. Entschlüsseln von elektronischen Daten bekannt.Elements of electronic data sets are encrypted to prevent unauthorized access to the data. Various cryptographic procedures are known from the prior art, which are usually implemented in connection with electronic data with the aid of so-called crypto chips. The crypto chips are able to perform the operations necessary to encrypt / decrypt the electronic data. For this purpose, they are equipped with the corresponding application software according to the desired process. In addition, different crypto chip modules can be produced with the help of different hardware designs. For example, a device for encrypting or decrypting electronic data is known from document DE 199 63 042 AI.
Eine bekannte Form der Codiertechniken, die zum Verschlüsseln elektronischen Datenmengen genutzt werden, ist die Codiertechnik der variablen Codelänge, nämlich die VLC-Codier- technik. VL-Codes zeichnen sich dadurch aus, daß nicht alle Codewörter eines Codes dieselbe Länge haben, sondern daß die Codewörter eines Codes unterschiedliche Länge haben und daß der Code jedes zu codierenden Elementes eindeutig ist und niemals von links nach rechts in dem Code eines anderen zu codierenden Elementes größerer Länge enthalten ist. Ein Codewort wird aus einer Menge von Codierelementen gebildet, so daß mit Hilfe der Codierelemente ein zu einem jeweiligen Element eines zu codierenden Alphabets gehöriges Codewort geschaffen ist. Die Menge aller Codewörter für sämtliche Elemente des zu codierenden Alphabets bildet den zugehörigen Code.A known form of coding technology that is used to encrypt electronic data sets is the coding technology of the variable code length, namely the VLC coding technology. VL codes are characterized in that not all code words of one code have the same length, but that the code words of one code have different lengths and that the code of each element to be coded is unique and never to be coded from left to right in the code of another code Element of greater length is included. A code word is formed from a set of coding elements, so that with the aid of the coding elements a code word belonging to a respective element of an alphabet to be coded is created. The set of all code words for all elements of the alphabet to be encoded forms the associated code.
Das Verschlüsseln/Entschlüsseln elektronischer Daten ist bei verschiedensten Anwendungen von Bedeutung, in denen elektronische Daten beispielsweise über eine Kommunikationsleitung zwischen einem Sendemodul und einem Empfangsmodul zu übertragen sind. Die Über- tragung der elektronischen Daten kann hierbei beispielsweise auch das Ablegen oder Ausle- sen elektronischer Daten in bzw. aus einem Speicher betreffen. Aber auch in Verbindung mit beliebigen Anwendungen der Telekommunikation, beispielsweise bei Mobilfunktelefonen oder dergleichen, besteht häufig der Bedarf, elektronische Daten vor dem unberechtigten Zugriff zu schützen. So ist aus der Druckschrift DE 199 58 599 AI ein Verfahren zum Ver- schlüsseln einer numerischen Information und ein Sendemodul bekannt.The encryption / decryption of electronic data is important in a wide variety of applications in which electronic data are to be transmitted, for example, via a communication line between a transmitter module and a receiver module. The transmission of the electronic data can, for example, also include the filing or interpretation. relate to electronic data in or from a memory. But also in connection with any telecommunications application, for example in mobile telephones or the like, there is often a need to protect electronic data from unauthorized access. A method for encrypting numerical information and a transmission module are known from document DE 199 58 599 A1.
Aus dem Stand der Technik sind Codierverfahren mit variabler Wortlänge bekannt, beispielsweise der Huffman-Code, bei dem es sich um ein VLC- Verfahren handelt. Eine seiner wesentlichen Eigenschaften lautet: Elemente eines zu codierenden Alphabets, die sehr oft vorkommen, besitzen eine kleinere Codelänge, als Elemente des zu codierenden Alphabets, die nicht sehr oft vorkommen. Außerdem haben solche Verfahren eine außerordentliche Eigenschaft: Der Code eines codierten Elementes ist niemals enthalten am Anfang eines Codes eines anderen codierten Elementes größerer Länge. Deshalb heißt ein solcher Code: Präfix- Code. Die Folge ist, daß ein solcher Code eine eindeutige Decodierung gestattet, ohne die zu decodierende Elementemeήge in Blöcke fester Länge aufteilen zu müssen. Die Präfixe- Eigenschaft bedeutet des weiteren, daß der Code jedes Elementes des zu codierenden Alphabets eindeutig ist und niemals von links nach rechts im Code eines anderen Elementes des zu codierenden Alphabets größerer Länge enthalten ist. Dies ermöglicht eine eindeutige Decodierung und verhindert die Manipulation der verschlüsselten Nachricht.Coding methods with variable word lengths are known from the prior art, for example the Huffman code, which is a VLC method. One of its essential properties is that elements of an alphabet to be encoded that occur very often have a shorter code length than elements of the alphabet to be encoded that do not occur very often. In addition, such methods have an extraordinary property: the code of a coded element is never contained at the beginning of a code of another coded element of greater length. Therefore, such a code is called: prefix code. The result is that such a code permits unambiguous decoding without having to divide the set of elements to be decoded into blocks of fixed length. The prefix property also means that the code of each element of the alphabet to be encoded is unique and is never contained from left to right in the code of another element of the alphabet of greater length to be encoded. This enables clear decoding and prevents manipulation of the encrypted message.
Bekannte Verschlüsselungsverfahren, ob mit oder ohne Präfix-Eigenschaft, erfordern häufig einen sehr großen Rechenaufwand bei der Verschlüsselung der in elektronischer Form vorliegenden Daten, was einerseits zum Bedarf einer erheblichen Rechenkapazität führt, um das Verschlüsseln/Entschlüsseln in einem vertretbaren Zeitrahmen zu halten. Andernfalls kommt es zu längeren Rechenprozessen, die von Nutzern dann häufig nicht akzeptiert werden.Known encryption methods, whether with or without a prefix property, often require a great deal of computational effort when encrypting the data in electronic form, which on the one hand leads to the need for considerable computing capacity in order to keep the encryption / decryption within a reasonable time frame. Otherwise there are longer computing processes, which are often not accepted by users.
Ausgabe der Erfindung Aufgabe der Erfindung ist es, ein verbessertes Verfahren zum Verschlüsseln einer elektronischen Datenmenge anzugeben, bei dem das Verschlüsseln/Entschlüsseln unter Erhaltung eines ausreichenden Sicherheitsstandards mit möglichst geringer Rechenleistung ausführbar ist, so daß es insbesondere für die Nutzung in üblichen Computereinrichtungen geeignet ist, beispielsweise Laptops oder Personalcomputern.SUMMARY OF THE INVENTION The object of the invention is to provide an improved method for encrypting an electronic amount of data, in which the encryption / decryption can be carried out while maintaining a sufficient security standard with the lowest possible computing power, so that it is particularly suitable for use in conventional computer equipment, for example laptops or personal computers.
Diese Aufgabe wird erfindungs gemäß durch ein Verfahren nach dem unabhängigen Anspruch 1 gelöst. Die Erfindung hat gegenüber dem Stand der Technik den Vorteil, daß ein auch anspruchsvollen Sicherheitsanforderungen genügendes Verfahren zur Verfügung gestellt wird, was andererseits mit Hilfe der in einem normalen Personalcomputer üblicherweise zur Verfügung stehenden Rechenleistung eine schnelle Verschlüsselung von elektronischen Daten gewährlei- stet. Trotz des hohen Sicherheitsdrahts des Verfahrens wird der verschlüsselte Text in sehr kurzen Zeiten erzeugt. Auf diese Weise ist das Verfahren beispielsweise für eine Verwendung im Zusammenhang mit dem täglichen Austausch elektronischer Nachrichten („Email") geeignet. Das Verfahren kann mit Hilfe eines geringen programmtechnischen Aufwands als Anwendungssoftware implementiert werden, wobei es in Standard-Programme integriert werden kann.This object is achieved according to the invention by a method according to independent claim 1. The invention has the advantage over the prior art that a method which also meets demanding security requirements is made available, which on the other hand ensures fast encryption of electronic data with the aid of the computing power usually available in a normal personal computer. Despite the high security wire of the process, the encrypted text is generated in very short times. In this way, the method is suitable, for example, for use in connection with the daily exchange of electronic messages (“email”). The method can be implemented as application software with little programming effort, and it can be integrated into standard programs.
Ein weiterer Vorteil des Verfahrens besteht darin, daß das erfindungsgemäße Verfahren ein Verschlüsselungsverfahren ist, bei dem eine Präfix-Eigenschaft erhalten bleibt, so daß eine eindeutige Verschlüsselung ermöglicht ist, die die Manipulation des verschlüsselten Textes verhindert.Another advantage of the method is that the method according to the invention is an encryption method in which a prefix property is retained, so that unique encryption is made possible, which prevents manipulation of the encrypted text.
Das Verfaliren kann je nach gewünschtem Grad der Sicherheit bei einer zweckmäßigen Fortbildung der Erfindung optimiert werden, indem eine Anzahl der Schlüsselelemente des für die Verschlüsselung verwendeten Schlüssels abgefragt und eine Nutzereingabe zum Festlegen der Anzahl der Schlüsselelemente automatisch erfaßt wird. Auf diese Weise ist dem Nutzer des Verschlüsselungsverfahrens eine Möglichkeit an die Hand gegeben, den gewünschten Grad der Sicherheit frei zu wählen.Depending on the desired level of security, the expiration can be optimized in an expedient further development of the invention by querying a number of the key elements of the key used for the encryption and automatically entering a user input for specifying the number of key elements. In this way, the user of the encryption method is given an opportunity to freely choose the desired level of security.
Zur weiteren Optimierung der Sicherheit des Verschlüsseins gegen den unberechtigten Zugriff auf die zu verschlüsselnden elektronischen Daten ist bei einer zweckmäßigen Ausführungsform der Erfindung dadurch erreicht, daß eine verschachtelte Verschlüsselung ausgeführt wird, indem die abzugebende Menge elektronischer Daten eine verschlüsselte Daten- menge ist. Dieses bedeutet, daß das Verschlüsselungsverfahren mehrfach ausgeführt wird, so daß bei der zweiten Anwendung die Ausgangsmenge elektronischer Daten bereits eine verschlüsselte Datenmenge ist.In order to further optimize the security of encryption against unauthorized access to the electronic data to be encrypted, in an expedient embodiment of the invention an interleaved encryption is carried out in that the amount of electronic data to be delivered is an encrypted amount of data. This means that the encryption process is carried out several times, so that in the second application the output quantity of electronic data is already an encrypted data quantity.
Die Erfindung wird im folgenden anhand von Ausführungsbeispielen unter Bezugnahme auf eine Zeichnung näher erläutert. Hierbei zeigen: Figur 1 eine schematische Darstellung einer Vorrichtung zum Ausführen eines Verfahrens zum Verschlüsseln/Entschlüsseln einer elektronischen Datenmenge; undThe invention is explained in more detail below using exemplary embodiments with reference to a drawing. Here show: Figure 1 is a schematic representation of an apparatus for performing a method for encrypting / decrypting an amount of electronic data; and
Figuren 2A bis 2F Darstellungen einer Matrix im Verlauf eines Verschlüsselungsverfahrens.Figures 2A to 2F representations of a matrix in the course of an encryption process.
Im folgenden wird das Verfahren zum Verschlüsseln/Entschlüsseln bzw. Codieren/Decodieren einer Menge V elektronischer Daten (V={vls ..., vq}, q > 1) beschrieben. Das Verfahren wird mit Hilfe einer Vorrichtung ausgeführt, die in Figur 1 schematisch dargestellt ist. Die Menge V elektronischer Daten ist in einer Speichereinrichtung 1 gespeichert und wird zum Verschlüsseln/Entschlüsseln von einem Verarbeitungsmodul 2 aus der Speichereinrichtung 1 geladen. Bei dem Verarbeitungsmodul 2 kann es sich beispielsweise um einen üblichem Mikroprozessor handeln, der mit Hilfe geeigneter Software und/oder digitaler Hardwaretechnik ausgestattet ist, um das im folgenden beschriebene Verfahren zum Verschlüsseln/Entschlüsseln bzw. Codieren/Decodieren auszuführen. Das Verarbeitungsmodul 2 kann Teil eines Personalcomputers oder eines anderen Geräts sein, welches über Mittel zur Verarbeitung elektro- nischer Daten verfügt, beispielsweise ein Mobilfunktelefon oder dergleichen.The method for encrypting / decrypting or coding / decoding a set V of electronic data (V = {v ls ..., v q }, q> 1) is described below. The method is carried out with the aid of a device which is shown schematically in FIG. 1. The quantity V of electronic data is stored in a storage device 1 and is loaded from the storage device 1 for encryption / decryption by a processing module 2. The processing module 2 can be, for example, a conventional microprocessor that is equipped with the aid of suitable software and / or digital hardware technology in order to carry out the method for encryption / decryption or coding / decoding described below. The processing module 2 can be part of a personal computer or another device which has means for processing electronic data, for example a mobile radio telephone or the like.
Verschlüsselte/entschlüsselte Daten können von dem Verarbeitungsmodul 2 dann abgegeben werden, beispielsweise über eine Ausgabeeinrichtung 3 an ein anderes Gerät 4 und/oder an die Speichereinrichtung 1. Die Abgabe an das andere Gerät 4 betrifft beispielsweise die Übermittlung einer verschlüsselten elektronischen Nachricht, die dann in dem anderen Gerät 4 automatisch entschlüsselt wird. Es kann ergänzend oder alternativ auch eine direkte Übertragung der verschlüsselten/entschlüsselten Daten zwischen dem Verarbeitungsmodul und einem anderen Datenverarbeitungsgerät 5 vorgesehen sein.Encrypted / decrypted data can then be delivered by the processing module 2, for example via an output device 3 to another device 4 and / or to the storage device 1. The delivery to the other device 4 relates, for example, to the transmission of an encrypted electronic message which is then stored in the other device 4 is automatically decrypted. Additionally or alternatively, a direct transmission of the encrypted / decrypted data between the processing module and another data processing device 5 can also be provided.
Die Daten V={vl s ..., vq} sind mittels Elementen einer elektronischen Alphabet-Datenmenge W (W={w1, ..., wn}, n > 1) gebildet unter Verwendung einer Menge D
Figure imgf000006_0001
..., zμ}, μ > 2) mit Codierelementen Zj (j = 1, ..., μ), wobei n = μ + kc (μ - 1) mit kceN. Wenn letzteres nicht der Fall ist, dann wird eine Zahl nf mit nf > n gesucht, so daß die Gleichung tatsächlich mit einer natürlichen Zahl kc stattfindet, d. h. nf = μ + kc (μ - 1). Eine solche Zahl nf mit der zugehörigen Zahl c kann immer ohne Schwierigkeiten gefunden werden.
The data V = {v ls ..., v q } are formed using elements of an electronic alphabet data set W (W = {w 1 , ..., w n }, n> 1) using a set D.
Figure imgf000006_0001
..., z μ }, μ> 2) with coding elements Z j (j = 1, ..., μ), where n = μ + k c (μ - 1) with k c eN. If the latter is not the case, then a number n f with n f > n is sought, so that the equation actually takes place with a natural number k c , ie n f = μ + k c (μ - 1). Such a number n f with the associated number c can always be found without difficulty.
Bei den Elementen der Alphabet-Datenmenge W kann es sich beispielsweise um die ASCII- Elemente handeln. Mit Hilfe der ASCII-Elemente kann eine Nachrichten verfaßt werden, die dann zu codieren ist. Als Codierelementen Zj kommen dann beispielsweise die Zahlen 0 und 1 in Frage (Binärcode), die miteinander kombiniert werden, um für jedes ASCII-Element ein zugehöriges Codewort zu bilden. Die Aneinanderreihung der Codewörter für die in der zu codierenden Nachricht enthaltenen ASCII-Elemente bildet dann eine codierte Nachricht, wel- ehe elektronisch weiter verarbeitet werden kann, beispielsweise an einen Empfänger gesendet oder gespeichert werden kann.The elements of the alphabet data set W can be, for example, the ASCII elements. With the help of the ASCII elements, a message can be written that then to be encoded. The coding elements Z j are, for example, the numbers 0 and 1 (binary code), which are combined with one another in order to form an associated code word for each ASCII element. The stringing together of the code words for the ASCII elements contained in the message to be coded then forms a coded message which can be processed electronically, for example sent or saved to a recipient.
Im folgenden wird die Bildung von Matrixelementen av>m mit p = 1, ..., kc+2 und m = 1, ..., nf einer Matrix A = (aPjm) beschrieben, wobei die Matrixelemente ap>m mittels eines oder mehreren Codierelementen Zj gebildet werden, so daß Kandidaten-Codeelemente gebil- det werden, die einer Präfixcode-Eigenschaft genügen. Es sei φ : 5R +1 — >■ 5R+ eine beliebige, streng positive, beschränkte, reelle Funktion. Wenn ein Vektor x° mitThe following describes the formation of matrix elements a v> m with p = 1, ..., k c +2 and m = 1, ..., n f of a matrix A = (a Pjm ), the matrix elements a p > m are formed by means of one or more coding elements Z j , so that candidate code elements are formed which satisfy a prefix code property. Let φ: 5R +1 -> ■ 5R + be any, strictly positive, limited, real function. If using a vector x °
Figure imgf000007_0001
Figure imgf000007_0001
wobei k ≥ l 2 < μ < n - 32 0 < Xj < 1, i = L ..., k,where k ≥ l 2 <μ <n - 32 0 <Xj <1, i = L ..., k,
vorgegeben ist, wird iteraktiv die Folge {xv, v > k} gemäßis given, the sequence {x v , v> k} becomes iterative
Xv+k+i = φ(λ, Xv+to-, Xv i), v > 0 erzeugt. Dies bedeutetXv + k + i = φ (λ, Xv + to-, Xv i), v> 0 generated. this means
Figure imgf000008_0001
Figure imgf000008_0001
und somit wird jedem Symbol v der ASCII-Tabelle k + v, d. h. v → k + v, v = l 255and thus each symbol v of the ASCII table k + v, d. H. v → k + v, v = l 255
Eine solche Iteration ist k + 1 stufig, denn sie braucht k + 1 Anfangswerte, um beginnen zu können. Jede neue Zahl xv der Folge X = {xv,v > k} wird gewonnen, indem die Funktion φ immer mit von k +. 1 Argumenten gefüttert wird. Die Folgen {xv,v > k} haben die folgenden Eigenschaften:Such an iteration is k + 1 step, because it needs k + 1 initial values to be able to start. Every new number x v of the sequence X = {x v , v> k} is obtained by the function φ always from k +. 1 arguments is fed. The sequences {x v , v> k} have the following properties:
(i) Sie sind mit wenig Aufwand zu erzeugen.(i) They can be generated with little effort.
(ii) Jeder Anfangsvektor x° erzeugt eine bestimmte Folge von Zahlen {xv}, d. h. um die gan- ze Folge zu beherrschen genügt den Vektor x° zu kennen.(ii) Each initial vector x ° generates a certain sequence of numbers {x v }, ie to master the whole sequence it is sufficient to know the vector x °.
(iii) Die Kenntnis von k + 1 Elementen der Folge erlaubt die nächsten Elemente zu erzeugen, gibt aber keine Auskunft über die vorherigen Elemente. Es handelt sich um eine Einweg- Funktion.(iii) Knowing k + 1 elements of the sequence allows the next elements to be generated, but does not provide any information about the previous elements. It is a one-way function.
Da die Folge {xv,v > k} schnell divergieren kann, wird ein Parameter λ eingeführt, welcher zwei Aufgaben zu erfüllen hat:Since the sequence {x v , v> k} can diverge quickly, a parameter λ is introduced which has two tasks to perform:
(i) Es wird verhindert, daß die Folge {xv} schnell gegen einen Fixpunkt konvergiert. Ab einer bestimmten Grenze bis zu einer anderen, empirisch bestimmbaren Grenze, die von k abhängen, ein ergodisches Verhalten der Folge erzwungen.(i) The sequence {x v } is prevented from quickly converging against a fixed point. From a certain limit to another, empirically determinable limit, which depends on k, an ergodic behavior of the sequence is forced.
(ii) Es ist der Anfangswert einer kleinen zufälligen Wahl von den Anfangselementen des Codealphabets, denn das Codealphabet besitzt ja μ Symbole, die beliebig gewählt werden können. Jeder Schlüssel erzeugt einen persönlichen Code, d. h. der Code wird mit bestimmten Symbolen erzeugt. Benutzt man als Schlüsselteil immer die gleichen Zahlen λ und μ sowie nur diese Zahlen, wobei die anderen Zahlen des Vektors x° beliebig zwischen Null und Eins gewählt werden können, dann werden Codes mit den gleichen Code- Symbolen erzeugt. Selbstverständlich sind nur die Codesymbole gleich, nicht aber die Codewörter.(ii) It is the initial value of a small random selection of the initial elements of the code alphabet, because the code alphabet has μ symbols that can be chosen arbitrarily. Each key generates a personal code, ie the code is generated with certain symbols. If you always use the same numbers λ and μ as key part and only these numbers, whereby the other numbers of the vector x ° can be chosen arbitrarily between zero and one, then codes with the same code Symbols. Of course, only the code symbols are the same, but not the code words.
Es wird bevorzugt, die Zahl λ als einen Parameter so zu wählen, daß die Folge {xv} sich chaotisch verhält, d. h. daß sie nicht zu einem Fixpunkt konvergiert.It is preferred to choose the number λ as a parameter such that the sequence {x v } behaves chaotically, ie that it does not converge to a fixed point.
Danach wird den Zahlen {xv} jeweils ein bestimmte ASCII-Elelment, nämlich ein bestimmtes Zeichen des ASCII-Codes, zugeordnet. Die Zahlen werden der Größe nach sortiert und in der letzten Zeile der Matrix A gespeichert, d. h. (ak +2J ) . Für alle Elemente der Zeile von i = n +Then the numbers {x v } are each assigned a specific ASCII element, namely a specific character of the ASCII code. The numbers are sorted according to size and saved in the last row of matrix A, ie (a k + 2J ). For all elements of the line from i = n +
1 bis nf wird &kc+ι,i ~ ^ gesetzt. Es gilt: a h+21 ≥ a 'kc+2,2 ≥ ... ≥ aτ ,+2,nf 1 to nf is set & kc + ι, i ~ ^. The following applies: a h + 21 ≥ a 'k c +2.2 ≥ ... ≥ a τ , + 2, n f
Nun ist die Markierung auszuführen. Die Matrix A sieht wie folgt aus:The marking must now be carried out. The matrix A looks like this:
Figure imgf000009_0001
Figure imgf000009_0001
Danach werden die folgenden Schritte ausgeführt:Then the following steps are carried out:
(a) Sei i=kc und nf = μ + z'(μ - 1) n = nf -(μ -1)(a) Let i = k c and n f = μ + z ' (μ - 1) n = n f - (μ -1)
(b) Die letzten μ Elemente der Zeile i + 2 werden addiert:(b) The last μ elements of row i + 2 are added:
S = Σ a^2J S = Σ a ^ 2J
Man setzt: al+2 ~ = . Die Elemente dieser Zeile sind bis zu der Position ϊϊ noch einmal zu sortieren. (c) Für alle j = 1, ..., n setze ai+l,j ~ ai+2 d. h. alle Elemente der oberen Zeile, die sortiert worden sind, werden in die untere Zeile der Matrix A kopiert. Es gilt dannOne sets: a l + 2 ~ =. The elements of this line are to be sorted again up to position ϊϊ. (c) For all j = 1, ..., n set a i + l, j ~ a i + 2 ie all elements of the upper row that have been sorted are copied into the lower row of matrix A. Then it applies
a ≥ S ≥ - .n a ≥ S ≥ - .n
(d) Die neue Position der Zahl s wird in einem Vektor b(i) gespeichert.(d) The new position of the number s is stored in a vector b (i).
(e) Es sei i = i - 1, und Rückkehr zu (a).(e) Let i = i - 1, and return to (a).
Es folgt das Wiederholen der Schritten (a) - (e) bis die Zeile 2 der Matrix A erreicht ist, d.h. bis i = 1 ist. Dann erhält man in dem Vektor b(i), i = 1, ..., kc, alle Positionen der Summe, und somit ist die Bildung der Matrix A abgeschlossen. Es ergibt sich, daß für i = 1, ..., kc die verlangte Bedingung l ≤ b(i) < μ + (i -l) (μ - l)Repeat steps (a) - (e) until row 2 of matrix A is reached, ie until i = 1. Then in the vector b (i), i = 1, ..., k c , all positions of the sum are obtained, and the formation of the matrix A is thus completed. It follows that for i = 1, ..., k c the required condition l ≤ b (i) <μ + (i -l) (μ - l)
erfüllt ist.is satisfied.
Bei der Bildung der Matrix A gilt somit:The following therefore applies when forming matrix A:
Zeile 2 a2 j 1 ≤ j < μLine 2 a 2 j 1 ≤ j <μ
Zeile 3 a3J 1 <j < μ + (μ - 1)Row 3 a 3J 1 <j <μ + (μ - 1)
Zeile s asj 1 < j < μ + (s - 2)(μ - 1)Row sa s j 1 <j <μ + (s - 2) (μ - 1)
Zeile kc +l aw 1 <j < μ + (kc - l)(μ - 1) =nf- (μ - 1)Row k c + la w 1 <j <μ + (k c - l) (μ - 1) = n f - (μ - 1)
Im folgenden ist die Matrix A nun zu markieren. Hierbei gilt: In jeder Zeile wird nur eine zulässige Zelle ausgewählt, und nur aus dieser Zelle dürfen „Kinder in die nächste Zeile schlüpfen". Mutter und Kind werden in den μ letzten zulässigen Zelle der übernächsten Zeile plaziert. Vermelirungsregel: Jede markierte Zelle der Matrix A hat μ Kinder und belegt die nächste Generation die μ letzten zulässigen Zellen, die restlichen Zellen springen ohne Veränderungen auch mit. Zum Beispiel sei n = 7 und μ = 3 und D = {a, b, c} . Dann gilt 7 = 3 + 2 - 2, also ist kc = 2. Die Matrix A in der ersten und zweiten Generation sieht dann wie folgt aus:In the following, matrix A is to be marked. The following applies: Only one permissible cell is selected in each row, and only from this cell may "children slip into the next row". Mother and child are placed in the μ last permissible cell of the next but one row. Merging rule: Every marked cell of the matrix A has μ children and the next generation occupies the μ last permissible cells, the remaining cells also jump with no changes. For example, let n = 7 and μ = 3 and D = {a, b, c}. Then 7 = 3 + 2 - 2, so k c = 2. The matrix A in the first and second generation then looks like this:
Figure imgf000011_0001
Figure imgf000011_0001
Die nächste Population ist dann:The next population is then:
Figure imgf000011_0002
Figure imgf000011_0002
Nach der letzten Vermehrung wird erhalten:After the last propagation you get:
Figure imgf000011_0003
Figure imgf000011_0003
Somit liegt der Code zum Einsatz in der Zeile 4 zum Codieren vor. Ist die Markierung der Matrix A bekannt, kann der Code mit Präfix-Eigenschaft erzeugt werden. Es ergibt sich, daß die Anzahl von verschiedenen Markierungen für n > 50 sehr groß ist. Im Fall der ASCII- Zeichen wird mit n = 255 codiert.Thus the code for use is in line 4 for coding. If the marking of matrix A is known, the code can be generated with the prefix property. It turns out that the number of different markings for n> 50 is very large. In the case of the ASCII characters, coding is done with n = 255.
Die Verfahrensschritte des Verfahrens zum Codieren/Decodieren werden in den folgenden Zusammenfassungen noch einmal aufgezählt.The process steps of the coding / decoding process are listed again in the following summaries.
Verfahren zum CodierenCoding method
Die Länge der Schlüssel hängt von k ab und sei vorab festgelegt.The length of the key depends on k and is determined in advance.
(1) Auswählen von μ, so daß 2 < μ < n -32 gilt. (2) Wählen einer Iterationsfunktion φ : 9? ,k+l -» 5R.(1) Select μ so that 2 <μ <n -32. (2) Choose an iteration function φ: 9? , k + l - »5R.
(3) Bestimmen des Bereichs für den Parameter λ.(3) Determine the range for the parameter λ.
(4) Erzeugen von n Elementen der Folge xv+k + ι = φ (λ;xv+k, ... xv+1),v > Oundλ passend.(4) Generation of n elements of the sequence x v + k + ι = φ (λ; x v + k , ... x v + 1 ), v> O and λ suitable.
(5) Sortieren der Zahlen {xv+k, 1 < v < n} der Größe nach.(5) Sort the numbers {x v + k , 1 <v <n} in size.
(6) Bestimmen von kc und der entsprechenden Zahl nf, so daß gilt nf=μ + kc(μ-l).(6) Determine k c and the corresponding number n f such that n f = μ + kc (μ-l).
(7) An den Stellen i = n + 1 bis nf setzen x, = 0.(7) At positions i = n + 1 to n f set x, = 0.
(8) Bestimmen der Markierung der Matrix A. Bestimmen der Werte des Vektors b(i) mit 1 < i < kc, wobei l≤b(i)<μ + (i-l)(μ-l) i = l5...,kc (8) Determine the marking of the matrix A. Determine the values of the vector b (i) with 1 <i <k c , where l≤b (i) <μ + (il) (μ-l) i = l 5 . .., k c
(9) Erzeugen des Vektors Code(v), mit v = 1,..., n, wobei sich in Code(v) sich der Code des Zeichens v befindet, dem die Zahl xv+k der Iteration zugeordnet worden ist.(9) Generation of the vector code (v), with v = 1, ..., n, where in code (v) is the code of the character v to which the number x v + k of the iteration has been assigned.
Verfahren zum DecodierenDecoding method
Es wird davon ausgegangen, daß folgende Information zur Verfügung steht: Seien W = {wls ..., wn} ein Alphabet, D = {z1; ..., zμ} das zugehörige Codealphabet mit Codierelementen und der VektorIt is assumed that the following information is available: Let W = {w ls ..., w n } be an alphabet, D = {z 1; ..., z μ } the associated code alphabet with coding elements and the vector
Figure imgf000012_0001
Figure imgf000012_0001
der Schlüssel. Es ist ein codierter Text zu decodieren, der aus Elementen von D zusammengesetzt ist. Die Iterationsfunlction φ: 9ϊk+ 1 - 5R sowie das Parameter λ sind bekannt, d.h. genau so wie bei der Verschlüsselung. Das Decodieren wird dann in dem Ausführungsbeispiel mit den folgenden Schritten ausgeführt:the key. A coded text is to be decoded, which is composed of elements of D. The iteration function φ: 9ϊ k + 1 - 5R as well as the parameter λ are known, ie exactly as with encryption. The decoding is then carried out in the exemplary embodiment with the following steps:
(1) Erzeugen von n Elementen der Folge xv+k+ =φ(λ, xv+k,..., xv + ι) , v > Oundλ passend. (2) Sortieren der Zahlen {xv + , 1 < v < n} der Größe nach. (3) Bestimmen von kc und der entsprechenden Zahl nf, so daß gilt: nf = μ + kc (μ - 1). (4) An den Stellen i = n + 1 bis nf. Setzen x, = 0. (5) Bestimmen der Markierung der Matrix A. Bestimmen der Werte des Vektors b(i) mit 1 < i < kc, wobei l ≤ b(i) < μ + (i - l) (μ - l), i = 1- .... kc (1) Generation of n elements of the sequence x v + k + = φ (λ, x v + k , ..., x v + ι), v> O and λ suitable. (2) Sort the numbers {x v + , 1 <v <n} in size. (3) Determine k c and the corresponding number n f so that: n f = μ + k c (μ - 1). (4) At positions i = n + 1 to n f . Set x, = 0. (5) Determine the marking of the matrix A. Determine the values of the vector b (i) with 1 <i <k c , where l ≤ b (i) <μ + (i - l) (μ - l), i = 1- .... k c
(6) Erzeugen des Vektors Code(v) mit v = 1, ..., n, wobei sich in Code(v) der Code des Zeichens v befindet, dem die Zahl xv + k der Iteration zugeordnet worden ist.(6) Generation of the vector code (v) with v = 1, ..., n, wherein in code (v) is the code of the character v to which the number x v + k of the iteration has been assigned.
Der Vektor Code(v) wird als eine Art Katalog benutzt. Es wird begonnen, den codierten Text von Anfang an Zeichen für Zeichen zu lesen, und jedes Mal wird verglichen, ob schon die gelesenen Zeichen zusammen ein codiertes Wort des Vektors Code(v) darstellen. Ist das der Fall, wird decodiert. Danach beginnt man wieder Zeichen für Zeichen weiter zu lesen und zu vergleichen. Dies ist nur möglich dank der Präfix-Eigenschaft des erzeugten Codes. Das ganze Verfaliren kann sehr schnell ausgeführt werden. Es sind keine Vielzahl von Operationen notwendig, wie dies bei asymmetrischen Verfahren der Fall ist.The vector code (v) is used as a kind of catalog. The coded text is started to be read character by character from the beginning and each time a comparison is made as to whether the read characters already together represent an encoded word of the vector code (v). If this is the case, decoding is carried out. Then you start to read and compare character by character again. This is only possible thanks to the prefix property of the generated code. The whole process can be carried out very quickly. A large number of operations are not necessary, as is the case with asymmetrical methods.
Im folgenden wird unter Bezugnahme auf Figuren 2A bis 2F das beschriebene Verfahren weiter erläutert. Eine zu codierende Alphabet-Menge W umfasse die Buchstabenmenge {R, O, M, A} . Die Menge D umfaßt als frei wählbare Codierelemente zwei Symbole, d. h. D = {0, 1}.The method described is further explained below with reference to FIGS. 2A to 2F. An alphabet set W to be encoded comprises the letter set {R, O, M, A}. The set D comprises two symbols as freely selectable coding elements, i. H. D = {0, 1}.
Es werden die Elemente der Matrix A = (aPjm) betrachtet, wobei die Zellen bzw. Elemente der Matrix A, die mit dem Zeichen „ 0 " gekennzeichnet sind, ohne Bedeutung und unberücksichtigt bleiben, d. h. sie werden weder belegt noch gebraucht. Die mit dem Zeichen „•" gekennzeichneten Zellen der Matrix A zeigen die Markierungen der Matrix A an.The elements of the matrix A = (a Pjm ) are considered, the cells or elements of the matrix A, which are identified by the character “0”, having no meaning and being disregarded, ie they are neither used nor used cells of matrix A marked with the symbol "•" indicate the markings of matrix A.
In der zweiten Zeile ist die Zelle a21 und in der dritten Zeile die Zelle a31 markiert. Nur die Elemente einer markierten Zelle können sich vermehren. Bei dem Belegen der Matrix A sollen in dem Ausführungsbeispiel während des zeilenweisen Belegens die folgenden Vermehrungsregeln gelten: - Alle Symbole, die in einer markierten Zelle der Matrix A landen, sind als eine Mutter zu betrachten.Cell a 21 is marked in the second line and cell a 31 in the third line. Only the elements of a selected cell can multiply. When the matrix A is occupied, the following multiplication rules should apply in the exemplary embodiment during the row-by-row coverage: - All symbols that land in a marked cell of matrix A are to be considered as a mother.
- Jede Mutter hat so viele Kinder wie Symbole in der zweiten Zeile der Matrix existieren.- Every mother has as many children as there are symbols in the second line of the matrix.
- Mutter plus Kind kommen jeweils in die nächste Generation, d.h. die aufwärts folgende nächste Zeile und belegen darüber die zwei letzten Zellen, jeweils so: Mutter plus erstes Kind und in der nächsten Zelle Mutter plus zweites Kind. Die Symbole in den Zellen ohne Markierung gehen ohne Änderungen weiter zm der nächsten Generation, d.h. die nächste Zeile.- Mother and child come into the next generation, i.e. the next line upwards and occupy the last two cells, each like this: mother plus first child and in the next cell mother plus second child. The symbols in the cells without marking continue without changes to the next generation, i.e. the next line.
Bei dem Ausführungsbeispiel ergibt sich die Ausgangsposition (Zeile 2) gemäß Figur 2A. Die erste Mutter ist in der Zelle a21, sie bekommt zwei Kinder und geht in die nächste Generation als 00 und 01. Die zweite Generation (Zeile 3) ergibt sich dann gemäß Figur 2B. In dieser Generation ist die zweite Mutter in der Zelle a31, sie bekommt zwei Kinder und gerxt in die nächste Generation (Zeile 4) als 10 und 11, so daß sich eine Matrixbelegung gemäß Figur 2C ergibt. Die gesuchten Codewörter für die zu codierenden Buchstaben {R, O, M, A} ergeben sich dann aus Zeile 4.In the exemplary embodiment, the starting position (line 2) according to FIG. 2A results. The first mother is in cell a 21 , she has two children and goes into the next generation as 00 and 01. The second generation (row 3) then results according to FIG. 2B. In this generation the second mother is in cell a 31 , she has two children and gerxt in the next generation (row 4) as 10 and 11, so that there is a matrix assignment according to FIG. 2C. The desired code words for the letters {R, O, M, A} to be coded then result from line 4.
Soll dann zum Beispiel das Wort AMOR codiert werden, ergibt sich als Code: 111O0100.If, for example, the word AMOR is to be coded, the following code results: 111O0100.
Wäre die Markierung der Matrix anders gewählt wurden, wie es beispielhaft in Figur 2D gezeigt ist, dann ergibt sich die Belegung der Matrix A bei dem Ausführungsbeispiel unter Berücksichtigung der obigen Regeln gemäß den Figuren 2E und 2F. Soll der Text „AMOR MORA ROMA" codiert werden, ergibt sich in diesem Fall: AMOR = 001000011 MORA = 000011001 ROMA = 101000001If the marking of the matrix were chosen differently, as is shown by way of example in FIG. 2D, then the assignment of the matrix A in the exemplary embodiment results, taking into account the above rules according to FIGS. 2E and 2F. In this case, if the text "AMOR MORA ROMA" is to be encoded, the following results: AMOR = 001000011 MORA = 000011001 ROMA = 101000001
Das führt dann zu dem codierten Text: 001000011000011001101000001. Die Decodierung erfolgt von links nach rechts und aufgrund der Präfix-Eigenschaft des Codes problemlos. Datenkomprim ierunε Ein weiterer Vorteil des Verfahrens besteht darin, daß eine verschlüsselte Datenkomprimierung ausgeführt werden kann, wenn: 1. Die Menge D ist eine beliebige Untermenge der Menge {1, 2,..., 9} und umfaßt min- destens zwei Elemente. 2. Es liegt eine verschlüsselte Datei vor, die mit D wie Punkt 1. und mit dem oben vorgestellten Verfahren erzeugt worden ist.This then leads to the coded text: 001000011000011001101000001. The decoding is done from left to right and without any problems due to the prefix property of the code. Data compression ierunε Another advantage of the method is that encrypted data compression can be carried out if: 1. The set D is any subset of the set {1, 2, ..., 9} and comprises at least two elements. 2. There is an encrypted file that was created with D as in point 1 and with the method presented above.
Aufgrund der Präfix-Eigenschaft ist so eine Kodierung eindeutig und kann mit Symbolen einer erweiterten ASCII-Tabelle dargestellt werden. In einer erweiterten ASCII-Tabelle ist jedes Symbol mit zwei Byte, d.h. 2Λ16 Bits dargestellt, was bedeutet, daß die Tabelle 65536 Symbole enthält.Due to the prefix property, such coding is unique and can be represented with symbols from an extended ASCII table. In an extended ASCII table, each symbol is represented with two bytes, ie 2 Λ 16 bits, which means that the table contains 65536 symbols.
Bei der Datenkomprimierung sind die folgenden Schritte auszuführen: 1. Bestimmen von z = max{z1,...,zμ}, 2 < μ < 9, Zj e {1,...,9}. 2. Basis des numerischen Darstellung ist dann b = z + 1. 3. Wählen von G* = 215 - 1 4. Von links nach rechts ließt man die Symbole Zj der verschlüsselten Nachricht: a. Setzen von j=0 und s = Zj • b1. b. Wenn s < G , dann lesen des nächsten Symbols und Setzen von:The following steps must be carried out for data compression: 1. Determine z = max {z 1 , ..., z μ }, 2 <μ <9, Z j e {1, ..., 9}. 2. The basis of the numerical representation is then b = z + 1. 3. Select G * = 2 15 - 1 4. From left to right, read the symbols Z j of the encrypted message: a. Setting j = 0 and s = Z j • b 1 . b. If s <G, then read the next symbol and set:
1- j =j + l 2. s = s+ z,bi c. Wenn s > G , Speichern des Symbols, das in der erweiterten ASCII- Tabelle liegt.1- j = j + l 2. s = s + z, b i c. If s> G, save the symbol that is in the extended ASCII table.
Weil von einer kleinerer ASCII-Tabelle zu einer größeren gewechselt wird, entsteht am Ende eine verschlüsselte Datei, die kleiner als die ursprüngliche Datei ist.Because the system changes from a smaller ASCII table to a larger one, the end result is an encrypted file that is smaller than the original file.
DatendekomprimierunsDatendekomprimieruns
Die Dekodierung erfolgt analog: 1. Es liegt eine verschlüsselte Nachricht vor, die mit der erweiterten ASCII-Tabelle dargestellt worden ist und mit dem oben vorgestellten Verfahren verschlüsselt wurde. 2. Der Schlüssel des Verfahrens ist bekannt. Somit liegt Information über die Menge D vor, die als Codealphabet benutzt wurde. Die dekomprimierte Datei wird dann wie folgt gewonnen: 3. Lesen jedes Symbols und Bestimmen seiner numerischen Darstellung in der erweiterten ASCII-Tabelle. 4. Jede Zahl, die in 3. gewonnen wird, wird in der numerischen Darstellung nach Basis b gemäß 2. dargestellt. 5. Nach dem Schritt 4. liegt dann eine verschlüsselte Datei vor. 6. Benutzen des oben dargestellten Verfahrens.The decoding is done analogously: 1. There is an encrypted message which has been represented with the extended ASCII table and which has been encrypted using the method presented above. 2. The key to the process is known. There is thus information about the set D that was used as the code alphabet. The decompressed file is then obtained as follows: 3. Read each symbol and determine its numerical representation in the extended ASCII table. 4. Each number obtained in 3. is shown in the numerical representation according to base b according to 2.. 5. After step 4. there is an encrypted file. 6. Use the procedure outlined above.
Das hier vorgestellte Verfaliren wurde in der Programmiersprache Visual Basic mit der EXCEL-Oberfläche implementiert. Wegen der Einfachheit des Verfahrens kann es selbstverständlich in einer beliebigen Programmiersprache implementiert werden.The procedure presented here was implemented in the programming language Visual Basic with the EXCEL interface. Because of the simplicity of the method, it can of course be implemented in any programming language.
Die in der vorstehenden Beschreibung, den Ansprüchen und der Zeichnung offenbartenThose disclosed in the foregoing description, claims and drawings
Merkmale der Erfindung können sowohl einzeln als auch in beliebiger Kombination für die Verwirklichung der Erfindung in ihren verschiedenen Ausführungsformen von Bedeutung sein. Features of the invention can be important both individually and in any combination for realizing the invention in its various embodiments.

Claims

AnsprücheExpectations
Verfahren zum Verschlüsseln einer von einer Sendeeinrichtung an eine Empfangseinrichtung abzugebenden Menge V elektronischer Daten (V-{v1 , ..., vq}, q > 1), die mittels Elementen einer elektronischen Alphabet-Datenmenge W (W={Wj , ..., wn}, n > 1) gebildet ist, mit Hilfe eines von einem Rechner umfaßten Verarbeitungsmoduls und unter Verwendung einer Menge D (D = {z1} ..., zμ}, 2 < μ < n-32) mit Codierelementen Zj (j = 1, ..., μ), wobei n = μ + kc (μ - 1) mit kceN und wobei das Verfahren die folgenden Schritte umfaßt:Method for encrypting a quantity V of electronic data (V- {v 1 , ..., v q }, q> 1) to be delivered from a transmitting device to a receiving device, which can be transmitted using elements of an electronic alphabetical data quantity W (W = {W j , ..., w n }, n> 1), with the help of a processing module comprised by a computer and using a set D (D = {z 1} ..., z μ }, 2 <μ <n -32) with coding elements Z j (j = 1, ..., μ), where n = μ + k c (μ - 1) with k c eN and the method comprises the following steps:
- Einlesen der elektronischen Alphabet-Datenrnenge W durch das Verarbeitungsmodul aus einem Speichermodul;- Reading of the electronic alphabet data W by the processing module from a memory module;
- unter Berücksichtigung von Schlüsselelementen eines elektronischen Schlüssels, die Koordinaten x; eines Vektors x° bilden, mit- taking into account key elements of an electronic key, the coordinates x; form a vector x ° with
Figure imgf000017_0001
wobei
Figure imgf000017_0001
in which
0 < i < 1 i =l, 2 k0 <i <1 i = 1.2 k
Ausführen einer Abbildung φ: 9ϊk+1 -» 5R+der Elemente w, (i = 1, ..., n) der elektronischen Alphabet-Datenmenge W mit Hilfe einer nicht umkehrbaren, reellen Funktion φ gemäßExecution of a mapping φ: 9ϊ k + 1 - »5R + of the elements w, (i = 1, ..., n) of the electronic alphabet data set W with the help of an irreversible, real function φ according to
Xv+k+i = φ(λ, xv+k,..., Xy+i), mit v > 0 zum iterativen Bilden von Folgeelementen xv einer FolgeXv + k + i = φ (λ, x v + k , ..., Xy + i), with v> 0 for iteratively forming sequence elements x v of a sequence
X = {xv, v > k} mit Hilfe des Verarbeitungsmoduls, wobei λ in einem von k abhängigen Intervall liegt, so daß die Folge X chaotisch ist und jedem Element Wj ein Folgeelement x, e X zugeordnet wird; - Sortieren der Folgeelemente xv der Größe nach, wobei ein größtes Folgeelement ein erstes Folgeelement einer sortierten Folge X' = {x'v}, v > k bildet; - Bilden von Matri elementen aPjirι mit p = 1, ..., kc+2 und m = 1, ..., nf einer Matrix A = (aP)m), wobei die Matrixelemente ap,m mittels eines oder mehreren Codierelementen Zj gebildet werden, so daß Kandidaten-Codeelemente gebildet werden, die einer Präfixcode-Eigenschaft genügen; - Auswählen jeweils wenigstens eines Codeelementes in jeder Zeile p mit 2 < p < kc + 1 der Matrix A aus den Kandidaten-Codeelementen; - Zuordnen jedes ausgewählten Codeelementes zu je einem der Elemente w; der elektronischen Alphabet-Datenmenge W; und - Verschlüsseln der abzugebenden Menge V von elektronischen Daten mit dem Verar- beitungsmodul gemäß der vorher getroffenen Zuordnung zwischen den ausgewählten Codeelementen und den Elementen Wj der elektronischen Alphabet-Datenmenge W.X = {x v , v> k} with the help of the processing module, where λ lies in an interval dependent on k, so that the sequence X is chaotic and a sequence element x, e X is assigned to each element Wj; - Sorting the sequence elements x v in terms of size, a largest sequence element forming a first sequence element of a sorted sequence X '= {x' v }, v>k; - Forming matrix elements a Pjirι with p = 1, ..., k c +2 and m = 1, ..., n f of a matrix A = (a P) m), the matrix elements a p , m using one or more coding elements Z j are formed so that candidate code elements are formed which satisfy a prefix code property; - Selecting at least one code element in each line p with 2 <p <k c + 1 of matrix A from the candidate code elements; Assigning each selected code element to each of the elements w; the electronic alphabet data set W; and encrypting the quantity V of electronic data to be dispensed with the processing module in accordance with the previously made association between the selected code elements and the elements Wj of the electronic alphabet data quantity W.
2. Verfahren nach Anspruch 1 , dadurch g ekennz ei chn et, daß vor dem Ausführen der Abbildung φ: 5Rk+1 — > SH+ der Elemente Wj der elektronischen Alphabet-Datenmenge W eine Anzahl der Schlüsselelemente abgefragt und eine Nutzereingabe zum Festlegen der Anzahl der Schlüsselelemente automatisch erfaßt wird.2. The method according to claim 1, characterized g ekennz ei chn et that before executing the mapping φ: 5R k + 1 -> SH + of the elements Wj of the electronic alphabet data set W a number of the key elements is queried and a user input for specifying the Number of key elements is recorded automatically.
3. Verfahren nach Anspruch 1 oder 2, dadurch g ekennz ei chnet, daß in Abhängigkeit von μ eine verschachtelte Verschlüsselung ausgeführt wird, indem die abzugebende Menge V elektronischer Daten eine verschlüsselte Datenmenge ist.3. The method according to claim 1 or 2, characterized g ekennz ei chnet that depending on μ an interleaved encryption is carried out by the amount V of electronic data to be delivered is an encrypted amount of data.
4. Verfahren nach einem der vorangehenden Ansprüche, dadurch g ek ennz ei chnet, daß die abzugebende Menge V komprimiert wird.4. The method according to any one of the preceding claims, characterized in that the quantity V to be dispensed is compressed.
5. Verwendung des Verfahrens nach einem der Ansprüche 1 bis 4 zum Verschlüsseln einer elektronischen Datei. 5. Use of the method according to one of claims 1 to 4 for encrypting an electronic file.
6. Verwendung des Verfahrens nach einem der Ansprüche 1 bis 4 zur verschlüsselten Datenarchivierung.6. Use of the method according to one of claims 1 to 4 for encrypted data archiving.
7. Verwendung des Verfahrens nach einem der Ansprüche 1 bis 4 zum Verschlüsseln einer elektronischen Datei mit einem Mobilfunktelefon. 7. Use of the method according to one of claims 1 to 4 for encrypting an electronic file with a mobile radio telephone.
PCT/DE2004/001865 2003-10-31 2004-08-20 Method for encoding electrical data WO2005046117A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE112004002623T DE112004002623D2 (en) 2003-10-31 2004-08-20 Method for encrypting electrical data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10351022.2 2003-10-31
DE2003151022 DE10351022B8 (en) 2003-10-31 2003-10-31 Method for encrypting a quantity of electronic data to be output by a transmitting device to a receiving device

Publications (1)

Publication Number Publication Date
WO2005046117A1 true WO2005046117A1 (en) 2005-05-19

Family

ID=34559274

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE2004/001865 WO2005046117A1 (en) 2003-10-31 2004-08-20 Method for encoding electrical data

Country Status (2)

Country Link
DE (2) DE10351022B8 (en)
WO (1) WO2005046117A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011110887A1 (en) 2010-03-11 2011-09-15 Luis Rocha Cryptographic system and method using new one-way function families

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2162125C (en) * 1993-05-05 2005-09-20 Zunquan Liu A repertoire of mappings for a cryptosystem
DE19958599A1 (en) * 1999-05-27 2000-11-30 Bosch Gmbh Robert Method for encryption of numerical information and transmission module
DE19963042A1 (en) * 1999-12-24 2001-07-05 Websmart Technology Gmbh Data coding/decoding device has interface coupled to computer and processor for coding/decoding data fed to and from interface

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
FRAENKEL A S; KLEIN S T: "Complexity Aspects of Guessing Prefix Codes", ALGORITHMICA, vol. 12, no. 4/5, November 1994 (1994-11-01), pages 1 - 10, XP002309024, Retrieved from the Internet <URL:http://citeseer.ist.psu.edu/cs> [retrieved on 20041203] *
GUNTHER C G: "Universal algorithm for homophonic coding", ADVANCES IN CRYPTOLOGY. EUROCRYPT' 88, 27 May 1988 (1988-05-27), DAVOS, SWITZERLAND, pages 405 - 414, XP002954713, ISBN: 3-540-50251-3 *
SILVA O P ET AL: "Introduction to chaos-based communications and signal processing<1>", 2000 IEEE AEROSPACE CONFERENCE. PROCEEDINGS, vol. 11, 1 February 2000 (2000-02-01), BIG SKY, MT, USA, pages 279 - 299, XP010518483, ISBN: 0-7803-5846-5 *

Also Published As

Publication number Publication date
DE10351022A1 (en) 2005-06-09
DE10351022B8 (en) 2006-08-10
DE10351022B4 (en) 2006-03-09
DE112004002623D2 (en) 2006-09-21

Similar Documents

Publication Publication Date Title
DE60112130T2 (en) DEVICE FOR DATA ENCRYPTION USING A KEY MATRIX
EP2433242B1 (en) Use of a string of characters in systems of cryptography, statistics, simulation, randomization, gaming machines and the like
DE69929251T2 (en) ENCRYPTION SYSTEM WITH A KEY OF CHANGING LENGTH
DE69736148T2 (en) Method and device for data encryption
DE4423209C2 (en) Method for performing point-to-point communication in tap-proof communication systems
WO2004097734A2 (en) Data processing method
EP1163776A2 (en) Anonymization method
DE102008010794B3 (en) Method for unmanipulable, tap-proof and non-hackable P2P communication in multi-subscriber networks
DE10351022B4 (en) Method for encrypting a quantity of electronic data to be output by a transmitting device to a receiving device
DE112008003630T5 (en) Shared secret used between keyboard and application
DE102018113772B4 (en) Encryption method
DE102018126763B4 (en) CRYPTOGRAPHY METHOD
EP2835931B1 (en) Method for encryption of character strings
WO2016096117A1 (en) Method and device for securely storing data and for accessing said data
DE10158003B4 (en) Method for generating keys for data encryption and method for data encryption
DE202009008987U1 (en) Device for encrypting data
DE2136536A1 (en) PROCESS FOR THE COMPRESSION AND DECOMPRESSION OF BINARY DATA
DE3615255C2 (en)
DE19630354A1 (en) Symmetric matrix encryption with variable key generation coding process for digital data transmission
DE19910184A1 (en) Methods for increasing the data security of implementations of cryptographic algorithms
DE10164174A1 (en) Datenverarbeidungsvorrichtung
DE19856793A1 (en) Block format coding for data transmission
DE10027974A1 (en) End-to-end encryption method for data communication system, involves splitting data into symbols using subscriber key blocks, and converting them to assigned data block values
DE19922780A9 (en) Coding process to code sequence of plain symbols by means of computer device has storage of starting value in feedback store plus addition of content of storage cell to content of feedback store
DE19922780A1 (en) Coding process to code sequence of plain symbols by means of computer device has storage of starting value in feedback store plus addition of content of storage cell to content of feedback store

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1120040026237

Country of ref document: DE

REF Corresponds to

Ref document number: 112004002623

Country of ref document: DE

Date of ref document: 20060921

Kind code of ref document: P

WWE Wipo information: entry into national phase

Ref document number: 112004002623

Country of ref document: DE

122 Ep: pct application non-entry in european phase