EP1034527A2 - Method for reducing storage space requirements for a first electronic key and coding/decoding arrangement - Google Patents

Method for reducing storage space requirements for a first electronic key and coding/decoding arrangement

Info

Publication number
EP1034527A2
EP1034527A2 EP98966766A EP98966766A EP1034527A2 EP 1034527 A2 EP1034527 A2 EP 1034527A2 EP 98966766 A EP98966766 A EP 98966766A EP 98966766 A EP98966766 A EP 98966766A EP 1034527 A2 EP1034527 A2 EP 1034527A2
Authority
EP
European Patent Office
Prior art keywords
key
permutation
blocks
identifier
permutations
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.)
Withdrawn
Application number
EP98966766A
Other languages
German (de)
French (fr)
Inventor
Jean Georgiades
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Publication of EP1034527A2 publication Critical patent/EP1034527A2/en
Withdrawn 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage

Definitions

  • the invention relates to a method for reducing the storage space requirement for an electronic first key and an arrangement for encryption and decryption.
  • a "key” is understood to mean data that are to be kept secret and are to be used in particular in a cryptographic process.
  • An "attacker” is an unauthorized person with the goal of getting the key.
  • keys are each determined with lengths of several 100 bits.
  • a memory area of a computer or portable medium that is protected from an attack that is, a memory area that an attacker cannot read, is usually very small.
  • a length of a key of several 100 bits stored in such a protected memory area reduces free memory space within the protected memory area, so that relatively few such keys can be stored together.
  • the object of the invention is to provide a method for reducing the storage space requirement for an electronic key and an arrangement for encryption and decryption, the disadvantage described above being avoided.
  • a method for reducing the storage space requirement for an electronic first key with a predetermined length is specified, in which the first key contains a number of units corresponding to the predetermined length. Several units are combined into one block.
  • the first key is represented by several blocks, and a publicly accessible identifier is created from the first key by determining a permutation of the blocks and storing an index for this permutation as an electronic second key.
  • the index identifies the permutation after which the blocks of the first key have been exchanged.
  • a first position in the index can contain a number that describes the position to which the first block of the first key has been moved based on the permutation.
  • the second position of the index refers to the position (a block corresponds to a position) of the public identifier which represents the second block of the first key, etc.
  • the result of continuing this process until all blocks have been assigned is one Permutation number (PERM, see Fig. 3) that uniquely references the first key from the publicly accessible identifier.
  • the index can also be a shortened form of the permutation number. If n denotes the number of blocks, then (if all blocks are different in pairs) n! Possibilities to arrange the blocks. Blocks 1 to n can be arranged in different ways. Sorting the possibilities of the arrangement according to a given scheme (e.g. in a table) by size, whereby each block receives a number according to its position, you can determine the index by looking for the entry of the permutation number and its place within the arrangement (with reproducible order) is saved as an index (see example in Fig. 3 and Table 1).
  • the reduction in the storage space requirement for the first key results from the fact that only the second key is stored.
  • the second key comprises the index and therefore requires significantly less storage space than the first key.
  • the storage space requirement for the second key is preferably determined by the number of possible permutations.
  • the created identifier can be made publicly accessible, so it does not have to be stored in a protected memory area. An attacker who learns of this identifier, even if he knows the block size, has n! Possibilities (n is the number of blocks) to determine the first key from the identifier. In practice, such an attempt is extremely unlikely to succeed.
  • a further development consists in the blocks each comprising an equal number of units. It is also a further development that one of the following units is used: a) number; b) alphanumeric character; c) byte; d) bit.
  • the second key is stored in a protected memory area, preferably on a chip card.
  • Storage area provides.
  • the protected memory area ensures that data contained there cannot be easily read by an attacker. Since the available storage space in the protected storage area is generally small, it is a significant advantage if a key to be stored in the protected storage area is reduced in length without having to accept a reduced security of the cryptographic method.
  • Permutation of the blocks is determined by carrying out the following steps: A permutation is randomly determined from all possible permutations, the permutations being created according to a specific scheme and thus an order of the permutations created can be reproduced. The index then determines a place for the permutation within the sequence of the permutations.
  • the Blocks swapped and saved as a publicly accessible identifier.
  • a third key is determined on the basis of the second key, this third key being equal to the first key.
  • the public identifier is divided into blocks, each block comprising several units of the identifier.
  • a third key is determined from the identifier and the second key, in that all possible permutations of the blocks, which are reproducibly created in their sequence, and the permutation among the permutations that represents the third key is determined using the second key.
  • the index (second key) is used for addressing within the sequence of the permutations, so that the associated permutation with the publicly accessible identifier defines a third key which is the same as the first key.
  • the second key is a secret key and is protected
  • Memory area e.g. a chip card.
  • an arrangement for encryption and decryption is also specified with a medium which has a protected memory area and with a
  • Computing unit which is set up in such a way that a first key is shortened in accordance with the steps of the method described above.
  • the medium is preferably a portable medium, for example a chip card.
  • the protected memory area can be stored both on the medium and within a computer, which is connected, for example, in a network with other computers.
  • the protected memory area should be sufficiently secure against unauthorized access. This ensures suitable mechanisms, for example reading the protected
  • FIG. 1 shows a sketch which represents a method for reducing the storage space requirement for an electronic first key
  • FIG. 2 shows a sketch which represents a method for restoring the first key from the publicly accessible identifier and the second key
  • a computing unit 1 shows a method for reducing the storage space requirement for an electronic first key.
  • the first key is divided into blocks, the blocks each containing an equal number of units. Such units are preferably numbers, alphanumeric characters, bytes or bits.
  • a permutation is randomly determined from all permutations of the blocks that are reproducible in their order. This random permutation is used as a publicly available identifier. From the order of the blocks corresponding to this permutation, it is extremely unlikely that the first key will be restored if the first key is provided with a suitable number of units. The selected permutation has a certain place within the order of all permutations (order reproducible) (see step 103).
  • the index is stored as a second key. The second key is stored in a protected memory area.
  • step 201 shows steps of a method for restoring the first key from the publicly accessible identifier with the second key.
  • a step 201 reproducible permutations of the blocks of the identifier are determined from the identifier.
  • a permutation among the permutations is determined as a third key (see step 202).
  • the third key is equal to the first key (see step 203). The first key that was mapped in a second key to reduce storage space is thus restored.
  • Fig. 3 illustrates the relationships.
  • the first key Kl "1234567890” comprises several units UNIT “1", “2", “3”, “4", “5", “6", “7”, “8”, “9”, “0” which are each represented by an alphanumeric character.
  • a step 301 the first key K1 is subdivided into blocks BL “1 2", “3 4", “5 6", “7 8", “9 0”, each of which comprises two units EINH.
  • a next step 302 determines a random combination of the blocks BL to form an identifier KEN "3478129056", which can be publicly accessible.
  • a step 303 represents a permutation number PERM "24153" which uniquely converts the identifier KEN into the first key K1.
  • the permutation number PERM maps the identifier KEN to the first key, in that the first digit of the permutation number PERM "2" is the first digit of the identifier KEN "3 4" based on blocks of two units and this block as the second block of the first key Kl identifies. The second digit of the identifier KEN "7 8" is therefore the fourth digit of the first key K1, etc. After complete assignment, the permutation number clearly results in the first key K1 to "1234567890".
  • a further assignment results in a representation of the first key K1 that is significantly shortened in relation to the length of the permutation number PERM.
  • a place in this order is determined from the permutation number PERM based on the sequence of all permutations that have the same number of digits as the permutation number PERM using table 1.
  • Sorting the possible permutations according to size results in a clear order of all permutations (from 0 to n! -L) (see table 1 as a section of the first 47 options).
  • the entry is determined in a step 305 which references the permutation number PERM in the table LISTE.
  • the 37th entry in Table 1 (LIST in Fig. 3) is equal to the permutation number PERM. Accordingly, the 37th entry, ie the character string “037”, is stored as the second key K2.
  • the second key K2 has a significantly reduced length compared to the first key Kl.
  • the second key K2 is preferably protected Storage area filed.
  • the size of the second key K2 is determined by the number of possible permutations. If n is the number of blocks BL into which the first key K1 is divided, the number of possibilities for "n! Results. Here in the example there are 5 blocks, i.e. 120
  • the second key K2 is three digits ("000" to "119") in decimal notation, but only 7 bits in binary notation.
  • the first key Kl comprises several 100 bits
  • Table 1 mainly serves to illustrate the basic procedure.
  • the number of blocks n is usually large, so that the assignment described, indicated by Table 1, is preferably carried out according to a specific scheme. Such a scheme will be explained below.
  • T position of the read number from list L 3.
  • k k + (T-l) * (n-s)!
  • the s-th block of the permuted key is the block of the secret key located at (E + 1) -th position of the list L 5.
  • the (E + l) th entry in list L is deleted, subsequent entries move forward by one position
  • 3rd R 0 4th 4th block of the permuted key is the 2nd position of the
  • the permutation is: 2,4,1,5,3 3 that the identifier K2 can be determined from the PERM permutation and vice versa the PERM permutation can be determined from the identifier K2.
  • the LIST block ensures an allocation of the location of the PERM permutation within the set of all permutations of the same length, the permutations being sorted according to size.
  • FIG. 1 An arrangement for encryption and decryption is shown in FIG. 1
  • a portable medium 401 preferably a chip card, comprises a (conventional) memory area MEM 403 and a protected memory area SEC 402
  • Interface IFC 404 data is exchanged between the medium 401 and a computer network 406 via a channel 405.
  • the computer network 406 comprises a plurality of computers which are connected to one another and communicate with one another. Data for the operation of the portable medium 401 are preferably available distributed in the computer network RN 406.
  • the protected memory area 402 is designed to be unreadable.
  • the data of the protected memory area 402 is used on the basis of a computing unit which is accommodated on the portable medium 401 or in the computer network 406. As a result, a comparison operation can indicate whether or not a comparison of an entry with a key in the protected memory area 402 was successful.
  • a computing unit 501 is shown in FIG.
  • the arithmetic unit 501 comprises a processor CPU 502, a memory 503 and an input / output interface 504, which is used in different ways via an interface 505 led out of the arithmetic unit 501: an output on a monitor 507 is visible via a graphics interface and / or printed out on a printer 508. A Input takes place via a mouse 509 or a keyboard 510.
  • the computing unit 501 also has a bus 506, which ensures the connection of memory 503, processor 502 and input / output interface 504. It is also possible to connect additional components to bus 506: additional memory, hard disk, etc.

Abstract

In order to save the storage space required for a secret key, the latter is subdivided into blocks, the blocks are then permutated and a permutation-linked index is stored. The index is significantly shortened in relation to the secret key. On the other hand, the secret key can be recovered from the index by determining the permutation in the index. The secret key is determined by means of the non-secret permutated blocks and the permutation. The invention also relates to an arrangement, i.e. a chip card, for coding and decoding.

Description

Beschreibungdescription
Verfahren zur Reduzierung von Speicherplatzbedarf für einen elektronischen ersten Schlüssel und Anordnung zur Ver- und EntschlüsselungMethod for reducing the storage space requirement for an electronic first key and arrangement for encryption and decryption
Die Erfindung betrifft ein Verfahren zur Reduzierung von Speicherplatzbedarf für einen elektronischen ersten Schlüssel und eine Anordnung zur Ver- und Entschlüsselung.The invention relates to a method for reducing the storage space requirement for an electronic first key and an arrangement for encryption and decryption.
Unter einem "Schlüssel" werden Daten verstanden, die geheimzuhalten sind und insbesondere in einem kryptographischen Verfahren angewandt werden sollen.A "key" is understood to mean data that are to be kept secret and are to be used in particular in a cryptographic process.
Ein "Angreifer" sei eine nichtautorisierte Person mit dem Ziel, an den Schlüssel zu gelangen.An "attacker" is an unauthorized person with the goal of getting the key.
Es sind zahlreiche kryptographische Verfahren bekannt, u.a. symmetrische und asymmetrische Verfahren. Insbesondere in einem Rechnernetz, in zunehmenden Maße aber auch in portablen Medien, z.B. einem Mobiltelefon oder einer Chipkarte, ist sicherzustellen, daß ein abgespeicherter Schlüssel auch dann nicht zugänglich ist, wenn ein Angreifer sich des Rechners, des Mobiltelefons oder der Chipkarte bemächtigt.Numerous cryptographic methods are known, including symmetrical and asymmetrical processes. Especially in a computer network, but increasingly also in portable media, e.g. a cell phone or chip card, it must be ensured that a stored key is not accessible even if an attacker seizes the computer, cell phone or chip card.
Um ausreichende Sicherheit kryptographischer Verfahren zu gewährleisten, werden Schlüssel, insbesondere bei asymmetrischen Verfahren, jeweils mit Längen von mehreren 100 Bits bestimmt. Ein vor einem Angriff geschützter Speicherbereich eines Rechners oder portablen Mediums, also ein Speicherbereich, den ein Angreifer nicht auslesen kann, ist zumeist knapp bemessen. Eine Länge eines in einem solchen geschützten Speicherbereich gespeicherten Schlüssels von mehreren 100 Bits vermindert freien Speicherplatz innerhalb des geschützten Speicherbereichs, so daß relativ wenige solcher Schlüssel zusammen abgespeichert werden können. Die Aufgabe der Erfindung besteht darin, ein Verfahren zur Reduzierung des Speicherplatzbedarfs für einen elektronischen Schlüssel und eine Anordnung zur Ver- und Entschlüsselung anzugeben, wobei der oben beschriebene Nachteil vermieden wird.In order to ensure sufficient security of cryptographic methods, keys, in particular in the case of asymmetrical methods, are each determined with lengths of several 100 bits. A memory area of a computer or portable medium that is protected from an attack, that is, a memory area that an attacker cannot read, is usually very small. A length of a key of several 100 bits stored in such a protected memory area reduces free memory space within the protected memory area, so that relatively few such keys can be stored together. The object of the invention is to provide a method for reducing the storage space requirement for an electronic key and an arrangement for encryption and decryption, the disadvantage described above being avoided.
Diese Aufgabe wird gemäß den Merkmalen der unabhängigen Patentansprüche gelöst .This object is achieved in accordance with the features of the independent claims.
Es wird ein Verfahren zur Reduzierung von Speicherplatzbedarf für einen elektronischen ersten Schlüssel mit einer vorgegebenen Länge angegeben, bei dem der erste Schlüssel eine der vorgegebenen Länge entsprechende Anzahl von Einheiten enthält. Mehrere Einheiten werden jeweils zu einem Block zusammengefaßt. Der erste Schlüssel wird durch mehrere Blöcke dargestellt, und aus dem ersten Schlüssel wird eine öffentlich zugängliche Kennung erstellt, indem eine Permutation der Blöcke ermittelt wird und ein Index für diese Permutation als ein elektronischer zweiter Schlüssel abgespeichert wird.A method for reducing the storage space requirement for an electronic first key with a predetermined length is specified, in which the first key contains a number of units corresponding to the predetermined length. Several units are combined into one block. The first key is represented by several blocks, and a publicly accessible identifier is created from the first key by determining a permutation of the blocks and storing an index for this permutation as an electronic second key.
Der Index kennzeichnet diejenige Permutation, nach der die Blöcke des ersten Schlüssels vertauscht worden sind. Dazu kann eine erste Stelle des Index eine Zahl enthalten, die beschreibt, an welche Stelle der erste Block des ersten Schlüssels anhand der Permutation verschoben worden ist. Analog wird mit der zweiten Stelle des Index auf diejenige Stelle (ein Block entspricht einer Stelle) der öffentlichen Kennung verwiesen, die den zweiten Block des ersten Schlüssels darstellt, usf. Es ergibt sich aus der Fortsetzung dieses Verfahrens, bis alle Blöcke zugeordnet sind, eine Permutationszahl (PERM, siehe Fig.3), die den ersten Schlüssel eindeutig aus der öffentlich zugänglichen Kennung referenziert .The index identifies the permutation after which the blocks of the first key have been exchanged. For this purpose, a first position in the index can contain a number that describes the position to which the first block of the first key has been moved based on the permutation. Analogously, the second position of the index refers to the position (a block corresponds to a position) of the public identifier which represents the second block of the first key, etc. The result of continuing this process until all blocks have been assigned is one Permutation number (PERM, see Fig. 3) that uniquely references the first key from the publicly accessible identifier.
Der Index kann auch eine verkürzte Form der Permutationszahl sein. Bezeichnet n die Anzahl der Blöcke, so gibt es (falls alle Blöcke paarweise verschieden sind) n! Möglichkeiten zur Anordnung der Blöcke. Die Blöcke 1 bis n können auf unterschiedliche Art angeordnet sein. Sortiert man die Möglichkeiten der Anordnung nach einem vorgegebenen Schema (z.B. in einer Tabelle) der Größe nach, wobei jeder Block eine Ziffer gemäß seiner Stellung erhält, so kann man den Index bestimmen, indem der Eintrag der Permutationszahl gesucht wird und dessen Platz innerhalb der Anordnung (mit reproduzierbarer Reihenfolge) als Index abgespeichert wird (siehe Beispiel in Fig.3 und Tabelle 1) .The index can also be a shortened form of the permutation number. If n denotes the number of blocks, then (if all blocks are different in pairs) n! Possibilities to arrange the blocks. Blocks 1 to n can be arranged in different ways. Sorting the possibilities of the arrangement according to a given scheme (e.g. in a table) by size, whereby each block receives a number according to its position, you can determine the index by looking for the entry of the permutation number and its place within the arrangement (with reproducible order) is saved as an index (see example in Fig. 3 and Table 1).
Hierbei sei angemerkt, daß zur Veranschaulichung von einerIt should be noted here that to illustrate a
Anordnung in einer Tabelle ausgegangen wird, wohingegen in der Praxis eine Anordnung nach einem bestimmten SchemaArrangement is assumed in a table, whereas in practice an arrangement according to a certain scheme
64 vorzuziehen ist, da z.B. bei n=50 die Tabelle ca. 3*1064 is preferable because e.g. with n = 50 the table approx. 3 * 10
Einträge haben müßte. Ein Beispiel für eine Anordnung nach einem bestimmten Schema wird in der Figurenbeschreibung näher erläutert .Should have entries. An example of an arrangement according to a certain scheme is explained in more detail in the description of the figures.
Die Reduzierung des Speicherplatzbedarfs für den ersten Schlüssel ergibt sich dadurch, daß nurmehr der zweite Schlüssel abgespeichert wird. Der zweite Schlüssel umfaßt den Index und benötigt daher deutlich weniger Speicherplatz als der erste Schlüssel . Vorzugsweise wird der Speicherplatzbedarf für den zweiten Schlüssel bestimmt durch die Anzahl der möglichen Permutationen. Die erstellte Kennung kann öffentlich zugänglich gemacht werden, muß demnach nicht in einem geschützten Speicherbereich abgelegt sein. Ein Angreifer, der von dieser Kennung erfährt, hat, auch wenn er die Blockgröße kennt, n! Möglichkeiten (n ist die Anzahl der Blöcke) , um aus der Kennung den ersten Schlüssel zu ermitteln. In der Praxis ist das Gelingen eines solchen Versuchs äußerst unwahrscheinlich.The reduction in the storage space requirement for the first key results from the fact that only the second key is stored. The second key comprises the index and therefore requires significantly less storage space than the first key. The storage space requirement for the second key is preferably determined by the number of possible permutations. The created identifier can be made publicly accessible, so it does not have to be stored in a protected memory area. An attacker who learns of this identifier, even if he knows the block size, has n! Possibilities (n is the number of blocks) to determine the first key from the identifier. In practice, such an attempt is extremely unlikely to succeed.
Eine Weiterbildung besteht darin, daß die Blöcke jeweils eine gleiche Anzahl von Einheiten umfassen. Auch ist es eine Weiterbildung, daß eine der folgenden Einheiten verwendet wird: a) Nummer; b) alphanumerisches Zeichen; c) Byte; d) Bit.A further development consists in the blocks each comprising an equal number of units. It is also a further development that one of the following units is used: a) number; b) alphanumeric character; c) byte; d) bit.
Eine andere Weiterbildung besteht darin, daß der zweite Schlüssel in einem geschützten Speicherbereich, vorzugsweise auf einer Chipkarte, abgespeichert wird.Another development is that the second key is stored in a protected memory area, preferably on a chip card.
Dabei ist es von Vorteil, daß der zweite Schlüssel eine gegenüber dem ersten Schlüssel deutlich reduzierte Länge aufweist und damit geringere Anforderungen an den Speicherplatzbedarf innerhalb des geschütztenIt is advantageous that the second key has a significantly reduced length compared to the first key and thus less demands on the storage space within the protected
Speicherbereichs stellt. Der geschützte Speicherbereich stellt sicher, daß dort enthaltene Daten von einem Angreifer nicht einfach ausgelesen werden können. Da verfügbarer Speicherplatz im geschützten Speicherbereich allgemein gering ist, ist es ein signifikanter Vorteil, wenn ein in dem geschützten Speicherbereich abzulegender Schlüssel in seiner Länge reduziert ist, ohne auch eine reduzierte Sicherheit des kryptographisehen Verfahrens hinnehmen zu müssen.Storage area provides. The protected memory area ensures that data contained there cannot be easily read by an attacker. Since the available storage space in the protected storage area is generally small, it is a significant advantage if a key to be stored in the protected storage area is reduced in length without having to accept a reduced security of the cryptographic method.
Im Rahmen einer zusätzlichen Weiterbildung wird dieAs part of additional training, the
Permutation der Blöcke ermittelt, indem folgende Schritte durchgeführt werden: Zufällig wird eine Permutation aus allen möglichen Permutationen bestimmt, wobei die Permutationen nach einem bestimmten Schema erstellt werden und somit eine Reihenfolge der erstellten Permutationen reproduzierbar ist. Daraufhin wird mittels des Index ein Platz der Permutation innerhalb der Reihenfolge der Permutationen ermittelt.Permutation of the blocks is determined by carrying out the following steps: A permutation is randomly determined from all possible permutations, the permutations being created according to a specific scheme and thus an order of the permutations created can be reproduced. The index then determines a place for the permutation within the sequence of the permutations.
Somit stellt dieser Index eine, anhand der Vorschrift (=vorgegebenes Schema) zur Bildung der Permutationen reproduzierbare, Abbildung des ersten Schlüssels dar. Entsprechend der zufällig ermittelten Permutation werden die Blöcke vertauscht und als öffentlich zugängliche Kennung abgespeichert .This index thus represents a reproduction of the first key, which is reproducible on the basis of the regulation (= predefined scheme) for forming the permutations. According to the randomly determined permutation, the Blocks swapped and saved as a publicly accessible identifier.
In einer Weiterbildung der Erfindung wird ein dritter Schlüssel anhand des zweiten Schlüssels ermittelt, wobei dieser dritte Schlüssel gleich dem ersten Schlüssel ist. Dazu wird die öffentliche Kennung in Blöcke unterteilt, wobei jeder Block mehrere Einheiten der Kennung umfaßt. Aus der Kennung und dem zweiten Schlüssel wird ein dritter Schlüssel ermittelt, indem alle möglichen Permutationen der Blöcke, die in ihrer Reihenfolge reproduzierbar erstellt werden und anhand des zweiten Schlüssels diejenige Permutation unter den Permutationen ermittelt wird, die den dritten Schlüssel darstellt .In a development of the invention, a third key is determined on the basis of the second key, this third key being equal to the first key. For this purpose, the public identifier is divided into blocks, each block comprising several units of the identifier. A third key is determined from the identifier and the second key, in that all possible permutations of the blocks, which are reproducibly created in their sequence, and the permutation among the permutations that represents the third key is determined using the second key.
Dies entspricht im wesentlichen der inversen Operation zur Bildung der Permutation der Blöcke, die in ihrer Reihenfolge reproduzierbar sind. Anhand des Index (zweiten Schlüssels) wird eine Adressierung innerhalb der Reihenfolge der Permutationen vorgenommen, so daß die zugehörige Permutation mit der öffentlich zugänglichen Kennung einen dritten Schlüssel definiert, der gleich dem ersten Schlüssel ist.This corresponds essentially to the inverse operation to form the permutation of the blocks, which are reproducible in their order. The index (second key) is used for addressing within the sequence of the permutations, so that the associated permutation with the publicly accessible identifier defines a third key which is the same as the first key.
Auch ist es eine Weiterbildung, daß der zweite Schlüssel ein geheimer Schlüssel ist und in einem geschütztenIt is also a further development that the second key is a secret key and is protected
Speicherbereich, z.B. einer Chipkarte, abgelegt wird.Memory area, e.g. a chip card.
Erfindungsgemäß angegeben wird auch eine Anordnung zur Verschlüsselung und zur Entschlüsselung mit einem Medium, das einen geschützten Speicherbereich aufweist und mit einerAccording to the invention, an arrangement for encryption and decryption is also specified with a medium which has a protected memory area and with a
Recheneinheit, die derart eingerichtet ist, daß ein erster Schlüssel verkürzt wird gemäß den Schritten des oben dargestellten Verfahrens.Computing unit which is set up in such a way that a first key is shortened in accordance with the steps of the method described above.
Vorzugsweise handelt es sich bei dem Medium um ein portables Medium, z.B. eine Chipkarte. Der geschützte Speicherbereich kann sowohl auf dem Medium als auch innerhalb eines Rechners, der beispielsweise in einem Netzwerkverbund mit anderen Rechnern zusammengeschlossen ist, angeordnet sein. Dabei soll der geschützte Speicherbereich vor unberechtigtem Zugriff ausreichend sicher sein. Dies stellen geeignete Mechanismen sicher, die beispielsweise ein Lesen des geschütztenThe medium is preferably a portable medium, for example a chip card. The protected memory area can be stored both on the medium and within a computer, which is connected, for example, in a network with other computers. The protected memory area should be sufficiently secure against unauthorized access. This ensures suitable mechanisms, for example reading the protected
Speicherbereichs verhindern und anhand interner Mechanismen, wahrgenommen durch einen Rechner, der auf den geschützten Speicherbereich zugreift, lediglich ein Ergebnis einer Vergleichsoperation mit einem Eintrag, insbesondere einem Schlüssel, des geschützten Speicherbereichs nach außen mitgeteilt wird.Prevent the memory area and, based on internal mechanisms, as perceived by a computer that accesses the protected memory area, only a result of a comparison operation with an entry, in particular a key, of the protected memory area is communicated to the outside.
Weiterbildungen der Erfindung ergeben sich auch aus den abhängigen Ansprüchen.Further developments of the invention also result from the dependent claims.
Ausführungsbeispiele der Erfindung werden nachfolgend anhand der Zeichnungen dargestellt und erläutert.Exemplary embodiments of the invention are illustrated and explained below with reference to the drawings.
Es zeigenShow it
Fig.l eine Skizze, die ein Verfahren zur Reduzierung von Speicherplatzbedarf für einen elektronischen ersten Schlüssel darstellt,1 shows a sketch which represents a method for reducing the storage space requirement for an electronic first key,
Fig.2 eine Skizze, die ein Verfahren zur Wiederherstellung des ersten Schlüssels aus der öffentlich zugänglichen Kennung und dem zweiten Schlüssel darstellt,2 shows a sketch which represents a method for restoring the first key from the publicly accessible identifier and the second key,
Fig.3 ein Beispiel für ein Verfahren zur Reduzierung von Speicherplatzbedarf für einen geheimen Schlüssel,3 shows an example of a method for reducing the storage space requirement for a secret key,
Fig.4 eine Anordnung zur Verschlüsselung und zur Entschlüsselung,4 shows an arrangement for encryption and decryption,
Fig.5 eine Recheneinheit In Fig.1 ist ein Verfahren zur Reduzierung von Speicherplatzbedarf für einen elektronischen ersten Schlüssel dargestellt. In einem Schritt 101 wird der erste Schlüssel in Blöcke unterteilt, wobei die Blöcke jeweils eine gleiche Anzahl von Einheiten enthalten. Derartige Einheiten sind vorzugsweise Nummern, alphanumerische Zeichen, Bytes oder Bits. In einem Schritt 102 wird aus allen Permutationen der Blöcke, die in ihrer Reihenfolge reproduzierbar sind, eine Permutation zufällig ermittelt. Diese zufällige Permutation wird als eine öffentlich zugängliche Kennung verwendet. Aus der dieser Permutation entsprechenden Reihenfolge der Blöcke ist eine Wiederherstellung des ersten Schlüssels äußerst unwahrscheinlich, wenn man den ersten Schlüssel mit einer geeigneten Anzahl von Einheiten vorsieht. Die ausgewählte Permutation hat innerhalb der Reihenfolge aller Permutationen (Reihenfolge reproduzierbar) einen bestimmten Platz (siehe Schritt 103) . In einem Schritt 104 wird der Index als ein zweiter Schlüssel abgespeichert. Der zweite Schlüssel wird in einem geschützten Speicherbereich abgelegt.5 shows a computing unit 1 shows a method for reducing the storage space requirement for an electronic first key. In a step 101, the first key is divided into blocks, the blocks each containing an equal number of units. Such units are preferably numbers, alphanumeric characters, bytes or bits. In a step 102, a permutation is randomly determined from all permutations of the blocks that are reproducible in their order. This random permutation is used as a publicly available identifier. From the order of the blocks corresponding to this permutation, it is extremely unlikely that the first key will be restored if the first key is provided with a suitable number of units. The selected permutation has a certain place within the order of all permutations (order reproducible) (see step 103). In a step 104, the index is stored as a second key. The second key is stored in a protected memory area.
In Fig.2 sind Schritte eines Verfahrens zur Wiederherstellung des ersten Schlüssels aus der öffentlich zugänglichen Kennung mit dem zweiten Schlüssel dargestellt. Dazu werden in einem Schritt 201 aus der Kennung in ihrer Reihenfolge reproduzierbare Permutationen der Blöcke der Kennung ermittelt . Anhand des zweiten Schlüssels wird eine Permutation unter den Permutationen als ein dritter Schlüssel ermittelt (siehe Schritt 202) . Der dritte Schlüssel ist gleich dem ersten Schlüssel (siehe Schritt 203) . Somit ist der erste Schlüssel, der zur Reduzierung von Speicherplatz in einem zweiten Schlüssel abgebildet wurde, wiederhergestellt.2 shows steps of a method for restoring the first key from the publicly accessible identifier with the second key. For this purpose, in a step 201, reproducible permutations of the blocks of the identifier are determined from the identifier. On the basis of the second key, a permutation among the permutations is determined as a third key (see step 202). The third key is equal to the first key (see step 203). The first key that was mapped in a second key to reduce storage space is thus restored.
Das im folgenden dargestellte Beispiel erläutert die Arbeitsweise des Verfahrens zur Reduzierung des Speicherplatzbedarfs für einen elektronischen Schlüssel. Fig.3 illustriert die Zusammenhänge.The example shown below explains the method of operation for reducing the Storage space requirement for an electronic key. Fig. 3 illustrates the relationships.
Der erste Schlüssel Kl "1234567890" umfaßt mehrere Einheiten EINH "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", die jeweils anhand eines alphanumerischen Zeichens darstellt sind. In einem Schritt 301 erfolgt die Unterteilung des ersten Schlüssels Kl in Blöcke BL "1 2", "3 4", "5 6", "7 8", "9 0", die jeweils zwei Einheiten EINH umfassen. Ein nächster Schritt 302 bestimmt eine zufällige Kombination der Blöcke BL zu einer Kennung KEN "3478129056", die öffentlich zugänglich sein kann. Ein Schritt 303 stellt abhängig von der Permutation des ersten Schlüssels Kl und der Kennung KEN eine Permutationszahl PERM "24153" dar, die die Kennung KEN eindeutig in den ersten Schlüssel Kl überführt.The first key Kl "1234567890" comprises several units UNIT "1", "2", "3", "4", "5", "6", "7", "8", "9", "0" which are each represented by an alphanumeric character. In a step 301 the first key K1 is subdivided into blocks BL "1 2", "3 4", "5 6", "7 8", "9 0", each of which comprises two units EINH. A next step 302 determines a random combination of the blocks BL to form an identifier KEN "3478129056", which can be publicly accessible. Depending on the permutation of the first key K1 and the identifier KEN, a step 303 represents a permutation number PERM "24153" which uniquely converts the identifier KEN into the first key K1.
Die Permutationszahl PERM bildet die Kennung KEN auf den ersten Schlüssel ab, indem die erste Stelle der Permutationszahl PERM "2" die erste Stelle der auf Blöcken aus zwei Einheiten basierenden Kennung KEN "3 4" und diesen Block als den zweiten Block des ersten Schlüssels Kl ausweist. Die zweite Stelle der Kennung KEN "7 8" ist demzufolge die vierte Stelle des ersten Schlüssels Kl, usf. Nach vollständiger Zuordnung ergibt sich aus der Permutationszahl eindeutig der erste Schlüssel Kl zu "1234567890" .The permutation number PERM maps the identifier KEN to the first key, in that the first digit of the permutation number PERM "2" is the first digit of the identifier KEN "3 4" based on blocks of two units and this block as the second block of the first key Kl identifies. The second digit of the identifier KEN "7 8" is therefore the fourth digit of the first key K1, etc. After complete assignment, the permutation number clearly results in the first key K1 to "1234567890".
Eine bezogen auf die Länge der Permutationszahl PERM deutlich verkürzte Darstellung des ersten Schlüssels Kl ergibt sich durch eine weitere Zuordnung. In einem Schritt 304 wird aus der Permutationszahl PERM anhand der Reihenfolge aller Permutationen, die die gleiche Anzahl Stellen aufweisen wie die Permutationszahl PERM ein Platz in dieser Reihenfolge anhand der Tabelle 1 ermittelt. Tabelle umfaßt einen Ausschnitt aus der Gesamtzahl an Möglichkeiten zur Anordnung der Blöcke BL. n=5 => n ! = 120 Möglichkeiten zur Anordnung der BlöckeA further assignment results in a representation of the first key K1 that is significantly shortened in relation to the length of the permutation number PERM. In a step 304, a place in this order is determined from the permutation number PERM based on the sequence of all permutations that have the same number of digits as the permutation number PERM using table 1. The table includes a section of the total number of options for arranging the blocks BL. n = 5 => n! = 120 options for arranging the blocks
Sortiert man die möglichen Permutationen der Größe nach, so ergibt sich eine eindeutige Reihenfolge aller Permutationen (von 0 bis n!-l) (siehe Tabelle 1 als Ausschnitt der ersten 47 Möglichkeiten) . Sorting the possible permutations according to size results in a clear order of all permutations (from 0 to n! -L) (see table 1 as a section of the first 47 options).
TaJelle 1TaJelle 1
Anhand der Tabelle LISTE wird in einem Schritt 305 der Eintrag bestimmt, der die Permutationszahl PERM in der Tabelle LISTE referenziert . Wie aus Tabelle 1 hervorgeht, ist der 37. Eintrag der Tabelle 1 (LISTE in Fig.3) gleich der Permutationszahl PERM. Als zweiter Schlüssel K2 wird demnach der 37. Eintrag, also die Zeichenfolge "037" abgespeichert. Der zweite Schlüssel K2 weist eine gegenüber dem ersten Schlüssel Kl deutlich reduzierte Länge auf. Der zweite Schlüssel K2 wird vorzugsweise in einem geschützten Speicherbereich abgelegt. Die Größe des zweiten Schlüssels K2 ist bestimmt durch die Anzahl der möglichen Permutationen. Ist n die Anzahl der Blöcke BL, in die der erste Schlüssel Kl unterteilt wird, so ergibt sich die Anzahl der Möglichkeiten zu "n!". Hier im Beispiel sind es 5 Blöcke, also 120Using the table LISTE, the entry is determined in a step 305 which references the permutation number PERM in the table LISTE. As can be seen from Table 1, the 37th entry in Table 1 (LIST in Fig. 3) is equal to the permutation number PERM. Accordingly, the 37th entry, ie the character string “037”, is stored as the second key K2. The second key K2 has a significantly reduced length compared to the first key Kl. The second key K2 is preferably protected Storage area filed. The size of the second key K2 is determined by the number of possible permutations. If n is the number of blocks BL into which the first key K1 is divided, the number of possibilities for "n!" Results. Here in the example there are 5 blocks, i.e. 120
Möglichkeiten. Als zweiter Schlüssel K2 sind in dezimaler Notation drei Stellen ("000" bis "119"), in Binärschreibweise jedoch nur 7 Bit notwendig.Possibilities. The second key K2 is three digits ("000" to "119") in decimal notation, but only 7 bits in binary notation.
Umfaßt der erste Schlüssel Kl mehrere 100 Bit, so ist es einsichtig, daß, auch bei Zusammenfassung in Blöcke mehrerer Bits, immer noch eine große Anzahl von Blöcken vorhanden ist, und die Fakultät dieser Anzahl den Möglichkeiten entspricht, die der Angreifer ausprobieren müßte, um auf den ersten Schlüssel zu kommen. Eine Wahrscheinlichkeit für solch ein Ereignis ist gering.If the first key Kl comprises several 100 bits, it is clear that, even when combined into blocks of several bits, there is still a large number of blocks, and the factorial of this number corresponds to the possibilities that the attacker would have to try out to get the first key. The likelihood of such an event is slim.
Tabelle 1 dient vorwiegend zur Veranschaulichung der prinzipiellen Vorgehensweise. In der Praxis ist zumeist die Anzahl der Blöcke n groß, so daß die beschriebene, durch Tabelle 1 angedeutete, Zuordnung vorzugsweise nach einem bestimmten Schema erfolgt. Ein derartiges Schema soll nachfolgend erläutert werden.Table 1 mainly serves to illustrate the basic procedure. In practice, the number of blocks n is usually large, so that the assignment described, indicated by Table 1, is preferably carried out according to a specific scheme. Such a scheme will be explained below.
ZUORDNUNG DER PERMUTATION AUF DIE KENNUNG:ASSIGNMENT OF THE PERMUTATION TO THE IDENTIFIER:
Es gelten folgende Abkürzungen:The following abbreviations apply:
n Anzahl der Blöcke, PERM Permutation,n number of blocks, PERM permutation,
L Liste mit noch nicht ausgewerteten Blöcken des geheimen Schlüssels, Initialisierung mitL List with not yet evaluated blocks of the secret key, initialization with
L=(l,2,3, ... ,n) , k:=0L = (l, 2,3, ..., n), k: = 0
Die Vorschrift für eine Zuordnung der Permutation auf die Kennung lautet wie folgt : FOR s= l TO n- 1 DOThe rule for assigning the permutation to the identifier is as follows: FOR s = 1 TO n- 1 DO
1. Lese s-te Zahl der Permutation1. Read s th number of permutation
2. T = Position der gelesenen Zahl der Liste L 3. k = k+ (T-l) * (n-s) !2. T = position of the read number from list L 3. k = k + (T-l) * (n-s)!
4. Streiche aus der Liste L die T-te Position, nachfolgende Positionen rücken um eine Stelle vor4. Delete the T-th position from list L, subsequent positions advance by one position
5. s = n-1 ? JA? => Programmende5. s = n-1? YES? => End of program
Ergebnis : k = KennungResult: k = identifier
Nachfolgend wird anhand eines Beispiels der Zusammenhang verdeutlicht :The relationship is illustrated below using an example:
n = 5n = 5
PERM = 2,4,1,5,3PERM = 2,4,1,5,3
L= (1,2,3,4,5) k=0L = (1,2,3,4,5) k = 0
1. Schritt : s = 1, n-s = 4, (n-s)! = 24, k = 0, L = (1,2,3,4,5]1st step: s = 1, n-s = 4, (n-s)! = 24, k = 0, L = (1,2,3,4,5]
1. s-te Zahl der Permutation: 21. sth number of permutation: 2
2. T = 2 3. k = 0 + (2-1) * 24 = 242. T = 2 3. k = 0 + (2-1) * 24 = 24
4. L = (1,3,4,5)4. L = (1,3,4,5)
2. Schritt: s = 2, n-s = 3, (n-s)! = 6, k = 24, L = (1,3,4,5) 1. s-te Zahl der Permutation: 42nd step: s = 2, n-s = 3, (n-s)! = 6, k = 24, L = (1,3,4,5) 1st sth number of permutation: 4
2. T = 32. T = 3
3. k = 24 + (3-1) * 6 = 363. k = 24 + (3-1) * 6 = 36
4. L = (1,3,5)4. L = (1,3,5)
3. Schritt: s = 3, n-s = 2, (n-s)! = 2, k = 36, L = (1,3,5) 1. s-te Zahl der Permutation: 1 2. T = 13rd step: s = 3, ns = 2, (ns)! = 2, k = 36, L = (1,3,5) 1. sth number of permutation: 1 2. T = 1
3. k = 36 + (1-1) * 2 = 363. k = 36 + (1-1) * 2 = 36
4. L = (3,5)4. L = (3.5)
4. Schritt: s = 4, n-s = 1, (n-s)! = 1, k = 36, L = (3,5)4th step: s = 4, n-s = 1, (n-s)! = 1, k = 36, L = (3.5)
1. s-te Zahl der Permutation: 51. sth number of permutation: 5
2. T = 22. T = 2
3. k = 36 + (2-1) * 1 = 37 4. L = (3)3. k = 36 + (2-1) * 1 = 37 4. L = (3)
5. s = n-1 = 4? => JA! => Programmende5. s = n-1 = 4? => YES! => End of program
Ergebnis: Kennung = k = 37.Result: identifier = k = 37.
ZUORDNUNG DER KENNUNG ZU DER PERMUTATION:ASSIGNMENT OF THE IDENTIFIER TO THE PERMUTATION:
Es gelten folgende Abkürzungen:The following abbreviations apply:
n Anzahl der Blöcke, k Kennungn number of blocks, k identifier
L Liste mit noch nicht identifizierten Positionen des geheimen Schlüssels, Initialisierung mit L= (1, 2 , 3 , ... , n) .L List with as yet unidentified positions of the secret key, initialization with L = (1, 2, 3, ..., n).
Die Vorschrift für eine Zuordnung der Kennung auf die Permutation lautet wie folgt:The rule for assigning the identifier to the permutation is as follows:
FOR s=l TO n-1 DO 1. Dividiere k/(n-s) !FOR s = l TO n-1 DO 1.Divide k / (n-s)!
2. E = ganzzahliges Ergebnis der Division in 1.2. E = integer result of the division in 1.
3. R = Rest der Division in 1.3. R = rest of division in 1.
4. der s-te Block des permutierten Schlüssels ist der sich an (E+l) -ter Position der Liste L befindende Block des geheimen Schlüssels 5. der (E+l) -te Eintrag der Liste L wird gestrichen, nachfolgende Einträge rücken um eine Position vor4. The s-th block of the permuted key is the block of the secret key located at (E + 1) -th position of the list L 5. the (E + l) th entry in list L is deleted, subsequent entries move forward by one position
6. k nimmt den Wert R an6. k takes the value R.
7. s = n-1 ?7. s = n-1?
JA? => dann ist der n-te Block des permutierten Schlüssels derjenige Block des geheimen Schlüssels, der noch in der Liste L übriggeblieben ist => Programmende.YES? => then the nth block of the permuted key is the block of the secret key that is still left in list L => end of program.
Nachfolgend wird anhand eines Beispiels der Zusammenhang verdeutlicht (gemäß obigem Beispiel zu Tabelle 1: Kennung 37 => Permutation 24153) :The relationship is illustrated below using an example (according to the above example for Table 1: identifier 37 => permutation 24153):
n = 5 k = 37n = 5 k = 37
1. Schritt : s = 1, k = 37, (n-s)! = (5-1)! = 24, L = (1,2,3,4,5) 1. 37/24 = 1, Rest 131st step: s = 1, k = 37, (n-s)! = (5-1)! = 24, L = (1,2,3,4,5) 1. 37/24 = 1, remainder 13
2. E = 12. E = 1
3. R = 133. R = 13
4. der 1. Block des permutierten Schlüssels ist der sich an 2. Position der Liste L = (1,2,3,4,5) befindende Block des geheimen Schlüssels4. the 1st block of the permuted key is the block of the secret key located at the 2nd position in the list L = (1,2,3,4,5)
5. der 2. Eintrag der Liste L wird gestrichen, nachfolgende Einträge rücken um eine Position vor => L = (1,3,4,5) 6. k = 135. the 2nd entry in list L is deleted, subsequent entries move forward by one position => L = (1,3,4,5) 6. k = 13
2.Schritt : s = 2, k = 13, (n-s)! = 6, L = (1,3,4,5) 1. 13/6 = 2, Rest 1 2. E = 2Step 2: s = 2, k = 13, (n-s)! = 6, L = (1,3,4,5) 1. 13/6 = 2, remainder 1 2. E = 2
3. R = 1 4. der 2. Block des permutierten Schlüssels ist der sich an 3. Position der Liste L = (1,3, 4., 5) befindende Block des geheimen Schlüssels 5. L = (1,3,5)3. R = 1 4. the 2nd block of the permuted key is the block of the secret key 5 located at the 3rd position in the list L = (1,3, 4th, 5). L = (1,3,5)
6. k = 16. k = 1
3.Schritt: s = 3, k = 1, (n-s)! = 2, L = (1,3,5) 1. 1/2 = 0, Rest 13rd step: s = 3, k = 1, (n-s)! = 2, L = (1,3,5) 1. 1/2 = 0, remainder 1
2. E = 02. E = 0
3. R = 13. R = 1
4. der 3. Block des permutierten Schlüssels ist der sich an 1. Position der Liste L = (1,3,5) befindende Block des geheimen Schlüssels4. The 3rd block of the permuted key is the block of the secret key located at the 1st position in the list L = (1,3,5)
5. L = (3,5)5. L = (3.5)
6. k = 16. k = 1
4. Schritt: s = 4, k = 1, (n-s) ! = 1, L = (3,5)4th step: s = 4, k = 1, (n-s)! = 1, L = (3.5)
1. 1/1 = 1, Rest 01.1 / 1 = 1, remainder 0
2. E = 12. E = 1
3. R = 0 4. 4. Block des permutierten Schlüssels ist der sich an 2. Position der3rd R = 0 4th 4th block of the permuted key is the 2nd position of the
Liste L = (3,5.) befindende Block des geheimenList L = (3,5.) Located block of the secret
Schlüssels 5. L = (3) 6. k = 1Key 5. L = (3) 6. k = 1
7. s = n-1 ? => JA! => Dann ist der 5. Block des permutierten Schlüssels derjenige Block des geheimen Schlüssels, der noch in der7. s = n-1? => YES! => Then the 5th block of the permuted key is the block of the secret key that is still in the
Liste L = (3) übrig ist => Programmende.List L = (3) is left => end of program.
Ergebnis: die Permutation lautet: 2,4,1,5,3 Somit ist aus Fig.3 ersichtlich, daß anhand des beschriebenen Schemas sowohl die Kennung K2 aus der Permutation PERM und umgekehrt die Permutation PERM aus der Kennung K2 bestimmbar ist. Der Block LISTE gewährleistet eine Zuordnung des Platzes der Permutation PERM innerhalb der Menge aller Permutationen der gleichen Länge, wobei die Permutationen der Größe nach sortiert sind.Result: the permutation is: 2,4,1,5,3 3 that the identifier K2 can be determined from the PERM permutation and vice versa the PERM permutation can be determined from the identifier K2. The LIST block ensures an allocation of the location of the PERM permutation within the set of all permutations of the same length, the permutations being sorted according to size.
In Fig.4 ist eine Anordnung zur Verschlüsselung und Entschlüsselung dargestellt.An arrangement for encryption and decryption is shown in FIG.
Ein portables Medium 401, vorzugsweise eine Chipkarte, umfaßt einen (herkömmlichen) Speicherbereich MEM 403 und einen geschützten Speicherbereich SEC 402. Anhand einerA portable medium 401, preferably a chip card, comprises a (conventional) memory area MEM 403 and a protected memory area SEC 402
Schnittstelle IFC 404 werden über einen Kanal 405 Daten zwischen dem Medium 401 und einem Rechnernetz 406 ausgetauscht. Das Rechnernetz 406 umfaßt mehrere Rechner, die miteinander verbunden sind und untereinander kommunizieren. Daten für den Betrieb des portablen Mediums 401 sind vorzugsweise in dem Rechnernetz RN 406 verteilt verfügbar.Interface IFC 404 data is exchanged between the medium 401 and a computer network 406 via a channel 405. The computer network 406 comprises a plurality of computers which are connected to one another and communicate with one another. Data for the operation of the portable medium 401 are preferably available distributed in the computer network RN 406.
Der geschützte Speicherbereich 402 ist nicht lesbar ausgeführt. Anhand einer Recheneinheit, die auf dem portablen Medium 401 oder im Rechnernetz 406 untergebracht ist, werden die Daten des geschützten Speicherbereichs 402 genutzt. So kann eine Vergleichsoperation als Ergebnis angeben, ob ein Vergleich einer Eingabe mit einem Schlüssel im geschützten Speicherbereich 402 erfolgreich war oder nicht.The protected memory area 402 is designed to be unreadable. The data of the protected memory area 402 is used on the basis of a computing unit which is accommodated on the portable medium 401 or in the computer network 406. As a result, a comparison operation can indicate whether or not a comparison of an entry with a key in the protected memory area 402 was successful.
In Fig.5 ist eine Recheneinheit 501 dargestellt. Die Recheneinheit 501 umfaßt einen Prozessor CPU 502, einen Speicher 503 und eine Input/Output-Schnittstelle 504, die über ein aus der Recheneinheit 501 herausgeführtes Interface 505 auf unterschiedliche Art und Weise genutzt wird: Über eine Grafikschnittstelle wird eine Ausgabe auf einem Monitor 507 sichtbar und/oder auf einem Drucker 508 ausgegeben. Eine Eingabe erfolgt über eine Maus 509 oder eine Tastatur 510. Auch verfügt die Recheneinheit 501 über einen Bus 506, der die Verbindung von Speicher 503, Prozessor 502 und Input/Output-Schnittstelle 504 sicherstellt. Weiterhin ist es möglich, an den Bus 506 zusätzliche Komponenten anzuschließen: zusätzlicher Speicher, Festplatte, etc. A computing unit 501 is shown in FIG. The arithmetic unit 501 comprises a processor CPU 502, a memory 503 and an input / output interface 504, which is used in different ways via an interface 505 led out of the arithmetic unit 501: an output on a monitor 507 is visible via a graphics interface and / or printed out on a printer 508. A Input takes place via a mouse 509 or a keyboard 510. The computing unit 501 also has a bus 506, which ensures the connection of memory 503, processor 502 and input / output interface 504. It is also possible to connect additional components to bus 506: additional memory, hard disk, etc.

Claims

Patentansprüche claims
1. Verfahren zur Reduzierung von Speicherplatzbedarf für einen elektronischen ersten Schlüssel mit einer vorgegebenen Länge auf einem Rechner, a) bei dem der erste Schlüssel eine der vorgegebenen Länge entsprechende Anzahl von Einheiten enthält, b) bei dem mehrere Einheiten jeweils zu einem Block zusammengefaßt werden, c) bei dem der erste Schlüssel durch mehrere Blöcke dargestellt wird, d) bei dem aus dem ersten Schlüssel eine öffentlich zugängliche Kennung erstellt wird, indem eine1. Method for reducing the storage space requirement for an electronic first key with a predetermined length on a computer, a) in which the first key contains a number of units corresponding to the predetermined length, b) in which several units are combined to form a block, c) in which the first key is represented by several blocks, d) in which a publicly accessible identifier is created from the first key by a
Permutation für die Blöcke ermittelt wird und ein Index für diese Permutation als ein elektronischer zweiter Schlüssel abgespeichert wird.Permutation for the blocks is determined and an index for this permutation is stored as an electronic second key.
2. Verfahren nach Anspruch 1, bei dem die Blöcke jeweils eine gleiche Anzahl von Einheiten enthalten.2. The method of claim 1, wherein the blocks each contain an equal number of units.
3. Verfahren nach Anspruch 1 oder 2 , bei dem eine der folgenden Einheiten verwendet wird: a) Nummer, b) alphanumerisches Zeichen, c) Byte, d) Bit.3. The method of claim 1 or 2, wherein one of the following units is used: a) number, b) alphanumeric character, c) byte, d) bit.
4. Verfahren nach einem der vorhergehenden Ansprüche, bei dem der zweite Schlüssel in einem geschützten4. The method according to any one of the preceding claims, wherein the second key in a protected
Speicherbereich abgespeichert wird.Storage area is saved.
5. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die Permutation der Blöcke folgende Schritte umfaßt: a) es wird zufällig eine Permutation aus allen möglichen Permutationen bestimmt, wobei die Permutationen nach einem bestimmten Schema erstellt werden und somit eine Reihenfolge der Permutationen reproduzierbar ist; b) der Index stellt einen Platz der Permutation innerhalb der Reihenfolge der Permutationen dar.5. The method according to any one of the preceding claims, wherein the permutation of the blocks comprises the following steps: a) a permutation is randomly determined from all possible permutations, the permutations according to be created according to a certain scheme and thus an order of permutations is reproducible; b) the index represents a place of permutation within the order of permutations.
6. Verfahren zur Bestimmung eines dritten Schlüssels anhand des zweiten Schlüssels, der unter Anwendung des Verfahrens nach einem der Ansprüche 1 bis 5 erstellt wurde , a) bei dem die öffentliche Kennung in Blöcke unterteilt wird, wobei jeder Block mehrere Einheiten der Kennung umfaßt , b) bei dem aus der Kennung und dem zweiten Schlüssel der dritte Schlüssel ermittelt wird, indem alle möglichen Permutationen der Blöcke erstellt werden und anhand des zweiten Schlüssels diejenige Permutation ermittelt wird, die dem dritten Schlüssel entspricht.6. A method for determining a third key based on the second key, which was created using the method according to one of claims 1 to 5, a) in which the public identifier is divided into blocks, each block comprising several units of the identifier, b ) in which the third key is determined from the identifier and the second key, in that all possible permutations of the blocks are created and the permutation that corresponds to the third key is determined on the basis of the second key.
7. Anordnung zur Verschlüsselung und zur Entschlüsselung, a) bei der ein Medium einen geschützten Speicherbereich aufweist, b) mit einer Recheneinheit, die derart eingerichtet ist, daß ein erster Schlüssel verkürzt wird, indem7. Arrangement for encryption and decryption, a) in which a medium has a protected memory area, b) with a computing unit which is set up in such a way that a first key is shortened by
(1) der erste Schlüssel eine der vorgegebenen Länge entsprechende Anzahl von Einheiten enthält,(1) the first key contains a number of units corresponding to the predetermined length,
(2) mehrere Einheiten jeweils zu einem Block zusammengefaßt werden,(2) several units are combined to form a block,
(3) der erste Schlüssel durch mehrere Blöcke dargestellt wird, (4) aus dem ersten Schlüssel eine öffentlich zugängliche Kennung erstellt wird, indem eine Permutation für die Blöcke ermittelt wird und ein Index für diese Permutation als ein elektronischer zweiter Schlüssel abgespeichert wird.(3) the first key is represented by several blocks, (4) a publicly accessible identifier is created from the first key by determining a permutation for the blocks and storing an index for this permutation as an electronic second key.
Anordnung nach Anspruch 7 , bei der die Recheneinheit derart eingerichtet ist, daß a) zufällig eine Permutation aus allen möglichen Permutationen bestimmt wird, wobei die Permutationen nach einem bestimmten Schema erstellt werden und somit eine Reihenfolge der Permutationen reproduzierbar ist; b) der durch den Index ein Platz der Permutation innerhalb der Reihenfolge der Permutationen dargestellt wird.Arrangement according to Claim 7, in which the computing unit is set up in such a way that a) a permutation is randomly determined from all possible permutations, the permutations being created according to a specific scheme and thus an order of the permutations being reproducible; b) which is represented by the index a place of permutation within the order of the permutations.
9. Anordnung nach Anspruch 7 oder 8 , bei der die Recheneinheit derart eingerichtet ist, daß ein dritter Schlüssel anhand des zweiten Schlüssels, der unter Anwendung des Verfahrens nach einem der Ansprüche 1 bis 5 erstellt wurde, bestimmt wird, indem folgende Schritte durchgeführt werden: a) die öffentliche Kennung wird in Blöcke unterteilt, wobei jeder Block mehrere Einheiten der Kennung umfaßt, b) aus der Kennung und dem zweiten Schlüssel wird der dritte Schlüssel ermittelt, indem alle möglichen Permutationen der Blöcke erstellt werden und anhand des zweiten Schlüssels diejenige Permutation ermittelt wird, die dem dritten Schlüssel entspricht.9. Arrangement according to claim 7 or 8, in which the computing unit is set up in such a way that a third key is determined on the basis of the second key, which was created using the method according to one of claims 1 to 5, by performing the following steps: a) the public identifier is divided into blocks, each block comprising several units of the identifier, b) the third key is determined from the identifier and the second key by creating all possible permutations of the blocks and determining that permutation on the basis of the second key that corresponds to the third key.
10. Anordnung nach einem der Ansprüche 7 bis 9, bei der die Recheneinheit auf dem Medium vorgesehen ist.10. Arrangement according to one of claims 7 to 9, wherein the computing unit is provided on the medium.
11. Anordnung nach einem der Ansprüche 7 bis 9, bei der die Recheneinheit ein Rechner in einem Netzwerk aus mindestens einem Rechner und dem Medium ist .11. Arrangement according to one of claims 7 to 9, wherein the computing unit is a computer in a network of at least one computer and the medium.
12. Anordnung nach einem der Ansprüche 7 bis 11, bei der das Medium eine Chipkarte ist. 12. Arrangement according to one of claims 7 to 11, wherein the medium is a chip card.
EP98966766A 1997-12-01 1998-11-25 Method for reducing storage space requirements for a first electronic key and coding/decoding arrangement Withdrawn EP1034527A2 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
DE19753274 1997-12-01
DE19753274 1997-12-01
DE19801776 1998-01-19
DE19801776 1998-01-19
PCT/DE1998/003470 WO1999028887A2 (en) 1997-12-01 1998-11-25 Method for reducing storage space requirements for a first electronic key and coding/decoding arrangement

Publications (1)

Publication Number Publication Date
EP1034527A2 true EP1034527A2 (en) 2000-09-13

Family

ID=26042074

Family Applications (1)

Application Number Title Priority Date Filing Date
EP98966766A Withdrawn EP1034527A2 (en) 1997-12-01 1998-11-25 Method for reducing storage space requirements for a first electronic key and coding/decoding arrangement

Country Status (4)

Country Link
EP (1) EP1034527A2 (en)
JP (1) JP2001525624A (en)
CA (1) CA2312358A1 (en)
WO (1) WO1999028887A2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10158393A1 (en) * 2001-11-28 2003-06-12 Infineon Technologies Ag Memory for the central unit of a computer system, computer system and method for synchronizing a memory with the main memory of a computer system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2596177B1 (en) * 1986-03-19 1992-01-17 Infoscript METHOD AND DEVICE FOR QUALITATIVE BACKUP OF DIGITAL DATA
US5003596A (en) * 1989-08-17 1991-03-26 Cryptech, Inc. Method of cryptographically transforming electronic digital data from one form to another
JP3053527B2 (en) * 1993-07-30 2000-06-19 インターナショナル・ビジネス・マシーンズ・コーポレイション Method and apparatus for validating a password, method and apparatus for generating and preliminary validating a password, method and apparatus for controlling access to resources using an authentication code
JPH11511305A (en) * 1995-07-27 1999-09-28 ネクストレベル・システムズ・インコーポレイテッド Cryptographic device with hidden work factor

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO9928887A3 *

Also Published As

Publication number Publication date
JP2001525624A (en) 2001-12-11
WO1999028887A3 (en) 1999-07-29
CA2312358A1 (en) 1999-06-10
WO1999028887A2 (en) 1999-06-10

Similar Documents

Publication Publication Date Title
EP1246043B1 (en) Method for transferring data over a data bus
DE19839847A1 (en) Storage of data objects in the memory of a chip card
WO2001006341A1 (en) Data processing device
EP1618519A2 (en) Data processing method
DE69722085T2 (en) Method and device for compressing and decompressing messages
DE19621768B4 (en) Telephone with a recording device for a telephone memory card and method for transferring data from a telephone memory card
DE3809795C2 (en)
DE69729685T2 (en) A method for concealing a secret code in a computer authentication device
WO2018122269A1 (en) Bit-sequence-based data classification system
EP1637956A1 (en) Generation of anonymized data sets for testing and developping applications
WO2000056005A2 (en) Anonymization method
DE60114299T2 (en) A method and apparatus for translating IP telecommunications network addresses with a controlled leaky memory
DE2458331A1 (en) DATA PROCESSING SYSTEM FOR ADDRESSING A DATA SET STORED IN A SECONDARY MEMORY
DE19962902A1 (en) Device for password-protected handling of an electronic document
WO2001059548A2 (en) Device for processing electronic data in an access-protected manner
EP1034527A2 (en) Method for reducing storage space requirements for a first electronic key and coding/decoding arrangement
DE10205316B4 (en) Key management device and method for the encrypted storage of digital data words
DE3514660C2 (en)
DE10323755B3 (en) Document preparation and accessing method using computer network e.g. for medical records, using uniform resource locator containing fragment addresses for document page framgents and mask address
DE60315435T2 (en) METHOD FOR ENABLING COMMUNICATION BETWEEN AT LEAST TWO COMMUNICATION DEVICES
DE3615255C2 (en)
DE60126583T2 (en) Method and apparatus for automatic encryption / deciphering in a secure communication system
DE10351022B4 (en) Method for encrypting a quantity of electronic data to be output by a transmitting device to a receiving device
CH675920A5 (en) Access control using smart card - using code data generated to provide access to secured units
DE19932703A1 (en) Data processing apparatus with local file retrieving system

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20000417

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): DE FR GB SE

17Q First examination report despatched

Effective date: 20020919

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20030731