DE102004010666A1 - Schlüsselbitstromerzeugung - Google Patents

Schlüsselbitstromerzeugung Download PDF

Info

Publication number
DE102004010666A1
DE102004010666A1 DE102004010666A DE102004010666A DE102004010666A1 DE 102004010666 A1 DE102004010666 A1 DE 102004010666A1 DE 102004010666 A DE102004010666 A DE 102004010666A DE 102004010666 A DE102004010666 A DE 102004010666A DE 102004010666 A1 DE102004010666 A1 DE 102004010666A1
Authority
DE
Germany
Prior art keywords
bit
key
decimation
bit stream
lfsr
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.)
Granted
Application number
DE102004010666A
Other languages
English (en)
Other versions
DE102004010666B4 (de
Inventor
Rainer Dr. Göttfert
Berndt Dr. Gammel
Kalman Dr.-Ing. Cinkler
Stefan Dr.-Ing. Rüping
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies 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 Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE102004010666A priority Critical patent/DE102004010666B4/de
Priority to FR0502145A priority patent/FR2867636B1/fr
Priority to US11/073,018 priority patent/US7764789B2/en
Publication of DE102004010666A1 publication Critical patent/DE102004010666A1/de
Application granted granted Critical
Publication of DE102004010666B4 publication Critical patent/DE102004010666B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • H04L9/0668Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator producing a non-linear pseudorandom sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry

Abstract

Das Sicherheitsniveau eines auf einem Schlüsselbitstrom beruhenden kryptographischen Verschlüsselungsschemas wird stark verbessert, indem die durch ein rückgekoppeltes Schieberegister (112a-112d) erzeugte Bitfolge in einer entschlüsselungsseitig bekannten vorbestimmten Art und Weise mit einem variablen Dizimierungswert m DOLLAR I1 dezimiert wird (118a-118d), d. h. aus der Bitfolge jedes m-te Bit der Bitfolge herausgegriffen wird, um den Schlüsselbitstrom zu erhalten.

Description

  • Die vorliegende Erfindung bezieht sich auf die Schlüsselbitstromerzeugung, wie z.B. die Erzeugung eines Schlüsselbitstromes, wie er beispielsweise für die Vigenère-Ver- bzw. Entschlüsselung verwendet wird.
  • Bei einer Vielzahl von kryptographischen Algorithmen wird aus einem Hauptschlüssel oder einem Master-Key ein Schlüsselbitstrom erzeugt, basierend auf welchen dann der zu verschlüsselnde Datenstrom verschlüsselt wird. Zu diesen kryptographischen Algorithmen gehört beispielsweise der Vigenère-Algorithmus bzw. von demselben abgeleitete Algorithmen, bei dem aus einem Hauptschlüssel ein Schlüsselbitstrom mit einer bestimmten Periodenlänge erzeugt wird, und bei dem dann dieser Schlüsselbitstrom bitweise mit dem zu verschlüsselnden Datenstrom verknüpft wird, nämlich mittels einer XOR-Verknüpfung. Auf Entschlüsselungsseite wird auf gleiche Weise verfahren, nämlich der verschlüsselte Datenstrom wird bitweise mit dem selben Schlüsselbitstrom XOR-verknüpft, der entschlüsselungsseitig basierend auf dem selben Hauptschlüssel und die selbe Art und Weise erzeugt wird.
  • Zur Erzeugung von Bitfolgen mit einer bestimmten Periodenlänge werden zumeist rückgekoppelte Schieberegister, wie z.B. lineare rückgekoppelte Schieberegister bzw. LFSR (linear feedback shift register) verwendet, obwohl die Verwendung von nichtlinearen rückgekoppelten Schieberegistern bzw. NLFSR (nonlinear feedback shift register) ebenfalls möglich ist. Obwohl das Ausgangssignal eines solchen rückgekoppelten Schieberegisters gleich als der Schlüsselbitstrom verwendet werden könnte, werden meist mehrere rückgekoppelte Schieberegister nebeneinander verwendet, deren Ausgangsbitfolgen dann bitweise miteinander kombiniert werden, um den schließlich Schlüsselbitstrom zu erhalten. 6 zeigt eine mögliche An ordnung einer Schlüsselbitstromerzeugungsvorrichtung 910 dieser Art. Die Schlüsselbitstromerzeugungsvorrichtung 910 umfasst exemplarisch vier LFSR 912a, 912b, 912c und 912d. Sie weisen unterschiedliche Periodenlängen auf und werden bei Initialisierung, d.h. bei Beginn der Ver- oder Entschlüsselung, mit jeweils einem unterschiedlichen Teil eines Hauptschlüssels geladen, welcher in einem Speicher 914 dauerhaft gespeichert ist. Die LFSR 912a–d erzeugen jeweils Bitfolgen mit ihrer jeweiligen Bitlänge und geben diese an einen Kombinierer 916 weiter, welcher die einzelnen Bitfolgen der LFSR 912a–d bitweise unter Verwendung einer Booleschen Kombinierungsfunktion kombiniert, um den schließlichen Schlüsselbitstrom zu erhalten und an einem Ausgang 918 auszugeben.
  • Eine Verschlüsselung, die die Schlüsselbitstromerzeugungsvorrichtung 910 von 6 verwendet, ist nicht sicher vor kryptographischen Angriffen. Ein Angriffsszenario besteht beispielsweise darin, dass ein Angreifer in einem sogenannten Known-Plaintext- bzw. Bekannter-Klartext-Angriff die Verschlüsselung zu „knacken" versucht. Bei diesem Angriff verwendet ein Angreifer einen langen Text bzw. einen langen Datenstrom in unverschlüsselter Form (Klartext), der ihm bekannt ist, um aus der kryptographischen Vorrichtung, die die Vorrichtung 910 von 6 verwendet, auf das Anlegen des Klartextes hin das zugehörige Chiffrat zu erhalten. Zur Verschlüsselung dieser bekannten Klartexte wird dann natürlich der Geheimschlüssel aus dem Speicher 914 verwendet. Mittels diesen Angriffes kann nun der Angreifer problemlos die Verschlüsselungsfolge bzw. den Schlüsselbitstrom am Ausgang 918 der Vorrichtung 910 berechnen. Daraufhin analysiert der Angreifer den Schlüsselbitstrom mit dem Ziel, einerseits den geheimen Schlüssel herauszufinden, der durch die Anfangsbelegung der Flip-Flops der einzelnen Schieberegister 912a912d gegeben ist, und andererseits die genaue Form der LFSR 912a912d in der Verschlüsselungsvorrichtung, die die Schlüsselbitstromerzeugungsvorrichtung 910 verwendet, zu ermitteln.
  • Bisherige Lösungen, um einer auf der Vorrichtung nach 6 beruhende Verschlüsselungsvorrichtung auf ein höheres Sicherheitsniveau zu bringen, bestanden bisher lediglich darin, die Anzahl der verwendeten Schieberegister oder die Größe der Schieberegister zu erhöhen. Dies geht jedoch mit inakzeptabel erhöhten Hardware-Kosten einher, da kryptographische Vorrichtungen häufig in Massenartikeln implementiert, wie z.B. Chipkarten oder Smartcards oder dergleichen und sich damit Herstellungskostenerhöhungen empfindlich auf die Gewinnmarge auswirken. Um Hardware-Kosten zu sparen, besteht deshalb eher der Wunsch, die aus LFSRs oder NLFSRs basierende Verschlüsselungsvorrichtung so klein wie möglich zu bauen.
  • Die Aufgabe der vorliegenden Erfindung besteht darin, ein Schlüsselbitstromerzeugungsschema sowie ein darauf beruhendes Verschlüsselungsschema zu schaffen, so dass bei moderatem zusätzlichen Aufwand das Sicherheitsniveau vergleichsweise stark verbessert wird.
  • Diese Aufgabe wird durch eine Vorrichtung nach Anspruch 1 und ein Verfahren nach Anspruch 15 gelöst.
  • Der Kerngedanke der vorliegenden Erfindung besteht darin, dass das Sicherheitsniveau eines auf einem Schlüsselbitstrom beruhenden kryptographischen Verschlüsselungsschemas stark verbessert werden kann, wenn die durch ein rückgekoppeltes Schieberegister erzeugte Bitfolge in einer entschlüsselungsseitig bekannten vorbestimmten Art und Weise mit einem variablen Dezimierungswert m (m∈|N) dezimiert wird, d.h. aus der Bitfolge jedes m-te Bit der Bitfolge herausgegriffen wird, um den Schlüsselbitstrom zu erhalten.
  • Während der zusätzliche Hardware- und Schlüsselerzeugungszeitdaueraufwand gering ist, wird durch die erfindungsgemäße Abänderung der Schlüsselfolge die Angriffsanalyse vergleichsweise stark erschwert. Angreifer haben es plötzlich mit einer Schlüsselfolge zu tun, die scheinbar von einer anderen Ver schlüsselungsvorrichtung stammt. Genauer ausgedrückt, beobachtet man angreiferseitig plötzlich einen Schlüsselbitstrom, der von einer Verschlüsselungsvorrichtung gleicher Bauweise und mit gleicher Anfangsbelegung interner Flip-Flops erzeugt worden zu sein scheint, aber mit anderen Schieberegistern bzw. anderen Rückkopplungszweigen. Durch die Dezimierung wird zwar die Performance bzw. Leistungsfähigkeit der Verschlüsselungsvorrichtung, die den Schlüsselbitstrom verwendet, entweder auf Dauer oder nur vorübergehend herabgesetzt, dies ist aber in vielen Fällen unkritisch. Jedenfalls wird das Sicherheitsniveau der generierten Schlüsselfolge verglichen hierzu beträchtlich erhöht. Anders ausgedrückt, ergibt sich eine ernorme Erhöhung der Sicherheit auf Kosten lediglich einer temporären oder vergleichsweise geringen Performance- bzw. Leistungsfähigkeitsreduktion.
  • Ein Vorteil der vorliegenden Erfindung besteht folglich darin, dass es möglich ist, die Sicherheit von Verschlüsselungsvorrichtungen, die auf linearen oder nicht-linearen rückgekoppelten Schieberegistern bzw. hieraus erhaltenen Schlüsselbitströmen basieren, zu erhöhen.
  • Ein weiterer Vorteil der vorliegenden Erfindung besteht darin, dass zur Sicherheitserhöhung kaum Hardware notwendig ist. Damit verbunden besteht ein Vorteil der vorliegenden Erfindung ferner darin, dass das erfindungsgemäße Prinzip auch bei existierenden Verschlüsselungsvorrichtungen nachträglich vorgesehen werden kann.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:
  • 1 ein vereinfachtes Blockschaltbild einer Ver- oder Entschlüsselungsvorrichtung, die zur Ver- oder Entschlüsselung einen Schlüsselbitstrom verwendet, ge mäß einem Ausführungsbeispiel der vorliegenden Erfindung;
  • 2 eine schematische Darstellung zur Veranschaulichung der Funktionsweise der Vorrichtung von 1 bei einer Verschlüsselung;
  • 3 ein Blockschaltbild einer Schlüsselbitstromerzeugungsvorrichtung gemäß einem Ausführungsbeispiel der vorliegenden Erfindung;
  • 4a–f Blockschaltbilder von linearen rückgekoppelten Schieberegistern mit fünf Flip-Flops;
  • 5a eine Tabelle zur Veranschaulichung der Funktionsweise des linearen rückgekoppelten Schieberegisters von 4a;
  • 5b eine Tabelle zur Zusammenfassung der Eigenschaften der linearen rückgekoppelten Schieberegisters von 4a4f; und
  • 6 ein Blockschaltbild einer möglichen herkömmlichen Schlüsselbitstromerzeugungsvorrichtung.
  • 1 zeigt zunächst ein Ausführungsbeispiel für eine Ver- bzw. Entschlüsselungsvorrichtung, die einen Schlüsselbitstrom zur Ver- bzw. Entschlüsselung verwendet. Die Ver- bzw. Entschlüsselungsvorrichtung – im Folgenden als kryptographische Vorrichtung bezeichnet – ist allgemein mit 2 angezeigt. Sie umfasst einen Eingang 4, bei dem je nachdem, ob die Vorrichtung 2 eine Ver- oder Entschlüsselung durchführt, ein unverschlüsselter oder verschlüsselter Datenstrom erhalten wird, einen Schlüsselbitstromeingang 6, an dem der Schlüsselbitstrom erhalten wird, sowie einen Ausgang 8, an dem die kryptographische Vorrichtung 2 je nachdem, ob eine Ver- oder Ent schlüsselung vorliegt, den verschlüsselten oder entschlüsselten Datenstrom ausgibt.
  • Obwohl, wie es am Ende der Figurenbeschreibung noch näher erörtert werden wird, die kryptographische Vorrichtung 2 jeglichen kryptographischen Algorithmus implementieren kann, bei welchem ein Schlüsselbitstrom zur Ver- bzw. Entschlüsselung eines Datenstroms verwendet wird, wird im Folgenden davon ausgegangen, dass die kryptographische Vorrichtung 2 ein Chiffrierer bzw. ein Chipher von der Art ist, die einen Vigenère-Algorithmus implementiert. Um die Funktionsweise der kryptographischen Vorrichtung 2 für diesen Fall näher zu veranschaulichen, wird im Folgenden auf 2 unter gleichzeitiger Bezugnahme auf 1 Bezug genommen.
  • 2 zeigt schematisch in übereinander angeordneter Weise, von oben nach unten, den vom Eingang 6 zur kryptographischen Vorrichtung 2 gelangenden Schlüsselbitstrom 10, den vom Eingang 4 zu der kryptographischen Vorrichtung 2 gelangenden zu ver- oder entschlüsselnden Datenstrom 12 und den von der kryptographischen Vorrichtung 2 am Ausgang 8 ausgegebenen ver- oder entschlüsselten Datenstrom 14. Wie es zu sehen ist, wird davon ausgegangen, dass der Schlüsselbitstrom 10, der am Eingang 6 erhalten wird, eine gewisse Periodizität aufweist, nämlich eine Periodizität mit der Periodenlänge n. Anders ausgedrückt, wiederholt sich der Inhalt A des Schlüsselbitstroms 10 alle n Bit. Die kryptographische Vorrichtung 2 verknüpft nun bitweise den Schlüsselbitstrom 10 mit dem Datenstrom 12 mittels einer XOR-Verknüpfung, die in 2 mit 16 angedeutet ist, wodurch aus dem Datenstrom 10 am Eingang 4 ein Ver- bzw. Entschlüsselungsergebnis am Ausgang 8 in Form des Datenstroms 14 erhalten wird. Aufgrund der symmetrischen Eigenschaft der XOR-Verknüpfung führt das Anwenden des Schlüsselbitstroms 12 auf das Ver- bzw. Entschlüsselungsergebnis 14 durch die XOR-Verknüpfung 16 auf die gleiche Weise, d.h. mit dem gleichen Bitversatz zwischen den Strömen 10 und 12 bzw. 12 und 14, wieder zu dem ursprünglichen Datenstrom 10, weshalb die kryptographische Vorrichtung 2 sowohl als Ver- als auch als Entschlüsselungsvorrichtung dienen kann.
  • 3 zeigt nun ein Ausführungsbeispiel für eine Schlüsselbitstromerzeugungsvorrichtung gemäß einem Ausführungsbeispiel der vorliegenden Erfindung. Die Schlüsselbitstromerzeugungsvorrichtung von 3, die allgemein mit 110 angezeigt ist, umfasst vier LFSR 912a, 912b, 912c, 912d, einen Speicher 114 zum Bereitstellen eines Hauptschlüssels, der als Anfangsbelegung für die LFSR 912a–d dient, und einen Kombinierer 116, dessen Ausgang den Ausgang der Vorrichtung 110 darstellt und mit dem Schlüsselbitstromeingang 6 der kryptographischen Vorrichtung 2 von 1 verbunden ist.
  • Darüber hinaus umfasst die Vorrichtung 110 von 3 jedoch ferner vier Dezimierungseinrichtungen 118a, 118b, 118c, 118d, die zwischen jeweils eine der Dezimierungseinrichtungen 112a–d und den Kombinierer 116 geschaltet sind und von einer Steuereinrichtung 120 der Vorrichtung 110 im Hinblick auf zu verwendende Dezimierungswerte m1 ...m4 durch einen Vektor (m1, m2, m3, m4) gesteuert werden, sowie wahlweise eine Uhr 122, zum Versorgen der Steuereinrichtung 120 mit einer absoluten Zeitangabe, oder einen Taktzähler 124, zum Versorgen der Steuereinrichtung 120 mit einem Taktzählerwert, der, wie es im Folgenden noch beschrieben wird, als Maß für eine von einem vorbestimmten Ereignis an vergangene Zeitdauer dienen kann.
  • Nachdem im Vorhergehenden der Aufbau der Schlüsselbitstromerzeugungsvorrichtung 110 von 3 beschrieben worden ist, wird im Folgenden ihre Funktionsweise beschrieben. Jedes der LFSR 112a–d erzeugt, nachdem sie mittels jeweils eines Teils des Hauptschlüssels aus dem Speicher 114 als Anfangsbelegung ihrer internen Register initialisiert worden sind, eine Bitfolge, die eine gewisse, gegebenenfalls zu derjenigen der anderen der LSFR unterschiedliche Periodizität bzw. eine gewisse Periodenlänge aufweist. Beispielsweise weist das LFSR 112a eine Periodenlänge n1, das LFSR 112b eine Periodenlänge n2, das LFSR 112c eine Periodenlänge n3 und das LFSR 112d eine Periodenlänge n4 auf. Die Periodenlängen n1 ...n4 sind aus einem grund, der im folgenden noch erörtert wird, vorzugsweise teilerfremd zueinander.
  • Die von den LFSR 112a–d ausgegebenen Bitfolgen werden von den Dezimierungseinrichtungen 118a118d, die zwischen jeweils den Ausgang eines LFSR 112a und einen Eingang des Kombinierers 116 geschaltet sind, um einen Dezimierungswert dezimiert, welcher durch die Steuereinrichtung 120 für jede Dezimierungseinrichtung 118a–d eingestellt wird. Eine Dezimierung bedeutet hier das Herausgreifen jedes m-ten Bits aus der jeweiligen Bitfolge der Bitfolgen der LFSR 112a–d, wobei m den jeweiligen Dezimierungswert darstellen soll. Anders ausgedrückt, lässt jede der Dezimierungseinrichtungen 118a–d nur jedes m-te Bit der Bitfolge von dem jeweiligen LFSR 112a–d an den Kombinierer 116 durch, wobei jede Dezimierungseinrichtung 118a118d einen eigenen Dezimierungswert mi (mit i = 1...4) verwendet, der von der Steuerungseinrichtung 120, wie im Folgenden noch beschrieben, eingestellt wird. Die Periodenlängen der dezimierten Bitfolgen, wie sie der Kombinierer 116 an seinen vier Eingängen erhält, können, wie in den folgenden Ausführungsbeispielen beschrieben, den Periodenlängen der Bitfolgen, wie sie von den LFSR 112a–d ausgegeben worden sind, entsprechen. Sie können sich aber auch von denselben unterscheiden.
  • Anders ausgedrückt wirken die Paare von Dezimierungseinrichtung und LFSR derart zusammen, dass die Ansteuerung durch die Steuereinrichtung 120 bewirkt, dass nicht jedes Folgenglied ausgegeben wird, sondern nur beispielsweise jedes zweite Folgenglied, oder jedes dritte oder jedes fünfte Folgenglied, wie es im Folgenden noch beschrieben wird. Die so dezimierten bzw. ausgedünnten Ausgabefolgen der einzelnen Schieberegister werden dann durch den Kombinierer 116 weiterverarbeitet.
  • Der Kombinierer 116 kombiniert bitweise die dezimierten Bitfolgen durch eine Boolesche Kombinierungsfunktion F, die vorzugsweise in möglichst hohem Maße nicht linear ist. Genauer ausgedrückt wartet der Kombinierer 116 immer solange, bis er von jeder Dezimierungseinrichtung 118a–d ein nächstes Bit erhalten hat, und kombiniert dann bitweise diese vier Bits auf deterministische Weise bzw. mit der Funktion F, um ein Bit der schließlichen Schlüsselbitfolge zu erhalten und dieses an den Ausgang 6 auszugeben. Danach verarbeitet der Kombinierer 116 das nächste Bit der vier Dezimierungseinrichtungen 118a–d. Da die Dezimierungseinrichtungen 118a–d je nach Dezimierungswert m lediglich jeden m-ten Wert der Bitfolge des jeweiligen LFSR 112a–d weitergeben, muss der Kombinierer auf den nächsten vollständigen Satz von zu verknüpfenden vier Bits von den Dezimierungseinrichtungen 118a–d immer solange warten, wie es der größte Dezimierungswert der Einrichtungen 118a–d vorschreibt, wenn die Ausgangstaktrate für alle LFSR 112a–d gleich ist. Dies bedingt die im folgenden noch erörterte und im vorhergehenden bereits angedeutete Leistungseinbuße durch das Vorsehen der Dezimierungseinrichtungen 118a–d, die aber, wie bereits erwähnt und im folgenden noch näher erörtert, durch die Sicherheitserhöhung mehr als aufgewogen wird.
  • Das Ergebnis der bitweisen Verknüpfung der dezimierten Bitfolgen, das der Kombinierer 116 an seinem Ausgang ausgibt, ist der Schlüsselbitstrom, der von der kryptographischen Vorrichtung 2 von 1 an dem Schlüsselbitstromeingang 6 erhalten und zur Ver- bzw. Entschlüsselung verwendet wird. Solange die Periodenlängen n1' ...n4' der dezimierten Bitfolgen teilerfremd zueinander sind, entspricht die Periodenlänge n des Schlüsselbitstroms dem Produkt aus den vier Periodenlängen der dezimierten Bitfolgen (n = n1'·n2'·n3'·n4'), wodurch trotz geringer Summe der Anzahl an internen Registern der LFSR 112a–d bzw. trotz geringer Gesamtregisterlänge eine enorm hohe Periodenlänge n erzielt wird.
  • Die Steuereinrichtung 120 ist mit den Dezimierungseinrichtungen 118a–d wirksam verbunden, um den Dezimierungswert, den dieselben verwenden sollen, durch ein Quadrupel bzw. einen Vektor von vier Dezimierungswerten vorgeben bzw. einstellen zu können. Die Zeitpunkte, zu denen die Steuereinrichtung 120 die Dezimierungswerte für die Dezimierungseinrichtungen 118118d durch einen neuen Dezimierungsvektor neu einstellt, bestimmt die Steuereinrichtung 120 auf eine Weise, die vorab festgelegt ist, so dass sie für einen adressierten oder autorisierten Entschlüssler entschlüsselungsseitig bekannt ist, so dass während eines Entschlüsselungsvorganges die Neueinstellungen genau zu den selben Zeitpunkten bzw. an denselben Bits des Schlüsselbitstromes vorgenommen werden wie bei der Verschlüsselung bzw. bei entsprechenden Zeitpunkten, d.h. nach einer entsprechenden Anzahl von Bits des Datenstroms am Eingang 4 bzw. 6 (1). Nach einer Neueinstellung arbeiten die Dezimierungseinrichtungen 118a–d mit den neu eingestellten Dezimierungswerten.
  • Die Steuereinrichtung 120 kann beispielsweise die Dezimierung wochenweise ändern. Je nach Kalenderwoche, die die Steuereinrichtung 120 über die Uhr 122 bestimmen kann, stellt die Steuereinrichtung 120 die Dezimierungswerte auf einen von 52 vorgespeicherten und entschlüsselungsseitig bekannten Dezimierungsquadrupel ein. Anstelle einer wochenweisen Umstellung könnte jedoch auch eine vom Wochentag abhängige Umstellung vorgenommen werden oder dergleichen. Da nach diesem Ausführungsbeispiel die Umstellungszeitpunkte abhängig von einem absoluten Zeitmaß bestimmt werden, kann dafür gesorgt werden, dass zwei Kommunikationspartner, die über zwei unabhängige Verschlüsselungsvorrichtungen 2 und 110 miteinander verschlüsselt kommunizieren, immer gleiche Dezimierungsverhältnisse verwenden und damit die gleichen Schlüsselbitfolgen.
  • Die Steuereinrichtung 120 könnte aber auch die Dezimierungswerte im Laufe einer Ver- bzw. Entschlüsselung zu vorbestimmten Zeitpunkten ändern, indem dieselbe einen Taktzähler 124 daraufhin überwacht, ob der Zählerstand einen vorbestimmten Schwellwert überschreitet. Der Taktzähler 124 beginnt beispielsweise bei vorbestimmten Ereignissen von einem vorbestimmten Initialisierungswert an, wie z.B. Null, zu zählen, wie z.B. vom Beginn der Ver- bzw. Entschlüsselung an, für welche der Schlüsselbitstrom am Ausgang 6 der Vorrichtung 110 benötigt wird. Die Zählrate könnte dabei der Bitrate des Datenstroms am Eingang 4 entsprechen oder von ihr abhängen. Hierdurch würde effektiv die Steuereinrichtung 120 die Neueinstellung nach einer vorbestimmten Zeitdauer nach Ver- bzw. Entschlüsselungsbeginn durchführen. Möglich wäre ferner, dass der Taktzähler 124 hiernach erneut verwendet wird, damit die Steuereinrichtung 120 die Neueinstellungen zyklisch in vorbestimmten Zeitabständen wiederholt. Auf diese Weise könnten Ver- und Entschlüsselung zeitlich voneinander versetzt, beispielsweise nach einer zwischenzeitlichen Speicherung in einem Speicher, wie z.B. einem EEPROM einer Chipkarte, durchgeführt werden, ohne dass der zeitliche Abstand zwischen der absoluten Zeit der Verschlüsselung und der absoluten Zeit der Entschlüsselung zu einem ungewollten Fehler bei der Entschlüsselung führt.
  • Sobald eine Neueinstellung der Dezimierungswerte stattfinden soll, kann die Steuereinrichtung 120 diese auf verschiedenste Weise durchführen. Eine Möglichkeit besteht in dem oben erwähnten Zugriff auf eine Tabelle mittels beispielsweise der absoluten Zeitangabe, wie sie von der Uhr 122 geliefert wird, oder mittels eines hieraus ermittelten Quantisierungswertes, wie z.B. die Kalenderwochennummer, dem Wochentag oder dergleichen. Der Zugriff kann aber auch mittels der alten Dezimierungswerte als Index stattfinden. Eine weitere Möglichkeit besteht darin, die Dezimierungswerte durch arithmetische Berechnung auf neue Dezimierungswerte abzubilden. Eine weitere Möglichkeit besteht in dem zyklischen Auslesen eine Liste von Dezimierungswertquadrupeln (ml, m2, m3, m4) aus einer Liste von vorbestimmten Dezimierungswertquadrupeln.
  • Der Speicher 114 lädt vor Beginn einer Ver- bzw. Entschlüsselung die Register 112a112d auf der Basis des Hauptschlüssels, der in dem Speicher 114 gespeichert ist. Auf diese Weise starten die von den LFSR 112a112d ausgegebenen Bitfolgen sowohl ent- als auch verschlüsselungsseitig mit der Anfangsbelegung der internen Register.
  • In der vorhergehenden Beschreibung von 3 wurde die innere Struktur der LFSR 112a–d nicht näher erläutert. Auch die Dezimierungswerte und deren Verhältnis zu den Periodenlängen der LFSR 112a–d wurde nicht durch exemplarische Beispiele näher erläutert. Im Folgenden werden detailliertere Ausführungsbeispiele für Paare von Dezimierungseinrichtung und zugehörigem LFSR 18a, 112a bis 118d, 112d näher erläutert.
  • Die LFSR sind beispielsweise bevorzugt LFSRs solcher Art, die aus N internen, in Reihe geschalteten und mit einer gemeinsamen Rückkopplung versehenen Registern bzw. Flip-Flops bestehen, und die die Eigenschaft besitzen, Bitfolgen mit einer Periodenlänge 2N – 1 zu erzeugen. Insgesamt gibt es 2N LFSRs mit N-Zellen. Hiervon besitzen φ(2N – 1)/N die Eigenschaft, Folgen der Periodenlänge 2N – 1 generieren zu können. φ() bezeichnet hier die Eulersche Funktion. Wenn A eine natürliche Zahl ist, dann bedeutet φ(A) die Anzahl der Zahlen aus der Menge {1, 2, 3, 4, ...A – 1, A}, die teilerfremd sind zu A. Sei beispielsweise A = 10, dann gilt φ(A) = 4, da sich unter den Zahlen von 1 bis 10 genau vier Zahlen befinden, die zu A = 10 teilerfremd sind, nämlich die Zahlen 1, 3, 7 und 9.
  • Man betrachte beispielsweise die LFSRs der Länge 5, d.h. mit 5 internen Registern, bzw. man betrachte den Fall N = 5. Die Anzahl der LFSRs der Länge 5 beträgt 25, d.h. 32. 2N – 1 = 25 – 1 (mit N = 5) ist 31. Da 31 eine Primzahl ist, sind alle Zahlen von 1 bis 30 teilerfremd zu 31. Folglich gilt φ(25 – 1) = φ(31) = 30 (für N = 5). Daraus folgt aber wiederum, dass für φ(2N – 1)/N mit N = 5 φ(31)/5 = 30/5 = 6 gilt, so dass es nach obiger Formel genau 6 LFSRs unter den 32 LFSRs der Länge 5 gibt, de ren Eigenschaft es ist, Bitfolgen der für LFSRs der Länge 5 maximalen Periodenlänge 25 – 1 = 31 erzeugen zu können.
  • Betrachtet man diese sechs LFSRs der Länge 5 näher, so ist ihnen gemeinsam, dass sie alle eine Folge der Periodenlänge 31 generieren, wenn man ihre fünf internen Register bzw. Flip-Flops in beliebiger Weise bei Initialisierung lädt, mit der einzigen Ausnahme, dass nicht alle fünf internen Register bzw. Flip-Flops den Wert Null enthalten dürfen. Erhalten bzw. definiert werden die 6 LFSRs der Länge 5 mit der oben genannten Eigenschaft durch die 6 primitiven Polynome über GF(2) (GF = Golomb Field) vom Grad 5:
    • f1(x) = x5 + x2 + 1
    • f2(x) = x5 + x3 + 1
    • f3(x) = x5 + x3 + x2 + x + 1
    • f4(x) = x5 + x4 + x2 + x + 1
    • f5(x) = x5 + x4 + x3 + x + 1
    • f6(x) = x5 + x4 + x3 + x2 + 1
  • Exemplarische LFSRs, die den durch die Polynome f1(x) ... f6(x) definierten, entsprechen, sind in 4a4f dargestellt, und zwar insbesondere, das dem Polynom f1 entsprechende LFSR in 4a, das dem Polynom f2 entsprechende LFSR in 4b, ... und das dem Polynom f6 entsprechende LFSR in 4f. Jedes der LFSRs der Länge N, mit vorliegend N = 5, umfasst N interne Einbitregister bzw. D-Flip-Flops 200a, 200b, 200c, 200d und 200e, wobei dieselben wie in 4a4f zu sehen in Serie verschaltet sind, um ihren jeweiligen Bitinhalt an das jeweilige nachfolgende interne Register pro Taktzyklus weiterzuschieben. Das in der Reihe letzte interne Register 200a gibt pro Taktzyklus seinen Bitregisterinhalt an einem Ausgang 202 des LFSR sowie in einen Rückkopplungszweig 204 aus, welcher für jedes der LFSR von 4a4f unterschiedlich ist, und in welchen XOR-Gatter geschaltet sind, um den Registerinhalt des Registers 200a wie in den 4a4f gezeigt, mit dem Registerinhalt zumindest eines der anderen Register 200b200e durch XOR-Verknüpfungen modulo 2 zu summieren bzw. zu verknüpfen und an das vom Ausgang 202 am weitesten weg angeordnete interne Register 200e rückzukoppeln.
  • Um den Aufbau der LFSR von 4a4f besser zu verstehen, beachte man, dass, da die internen Register 200a200e ja unmittelbar hintereinander in Reihe geschaltet sind, das ausgangsseitige Register 200e stets das aktuelle Bit sn der von dem jeweiligen LFSR erzeugten Bitfolge enthält bzw. ausgibt, während die anderen internen Register 200b200e die jeweils nachfolgenden bzw. zukünftigen Bits der Bitfolge am Ausgang 202 enthalten, nämlich das Register 200b, das auf das aktuelle Bit sn unmittelbar folgende Bit sn+1, das Register 200c, das nächste Bit sn+2, das Register 200d, das nächste Bit sn+3 und das Register 200e das nächste Bit sn+4, wobei der Index die Bitposition des jeweiligen Bits in der Bitfolge s angebe, wie es von dem jeweiligen LFSR von 4a–f am Ausgang 202 ausgegeben wird. Verwendet man diese Bezeichnung für die Registerinhalte der Register 200a200e zu einem bestimmten Zeitpunkt, nämlich einem Zeitpunkt da das Bit an der Bitposition n das aktuelle Bit der Bitfolge des LSFR ist, dann ist beispielsweise in den Rückkopplungsweg 204 des LSFR von 4a ein XOR-Gatter 206 derart geschaltet, dass es stets das rückgekoppelte Bit sn mit dem Registerinhalt des Registers 200c, nämlich sn+2 XOR-verknüpft bzw. modulo 2 addiert, um das Ergebnis in das Register 200e rückzukoppeln. Der Rückkopplungsweg 204 im Fall des LFSR von 4a ist folglich derart beschaffen, dass sn+5 = Sn+2 + Sn gilt, wobei sn+5 ja der Speicherinhalt des Registers 200e im folgenden Taktzyklus ist.
  • Letztere Gleichung beschreibt nicht nur das LFSR von 4a bzw. dessen Rückkopplungsweg 204, sondern ferner auch eine Eigenschaft der von ihr erzeugten Bitfolge s, da für ein Bit einer Bitposition n, ein Bit einer Position n + 2 und ein Bit einer Bitposition n + 5 immer diese Gleichung erfüllt sein muss. Wie bereits oben erwähnt, ergibt sich durch das LFSR von 4a eine Bitfolge mit einer Periodenlänge 31. Anders ausgedrückt wiederholt sich alle 31 Bits die ausgegebene Bitfolge des LFSR von 4a.
  • Um die Funktionsweise des LFSR von 4a näher zu veranschaulichen, und insbesondere zu veranschaulichen, dass dasselbe zu einer Bitfolge der Periodenlänge 31 führt, zeigt 5a in einer Tabelle in 32 aufeinander folgenden Taktzyklen, die in der linken Spalte angegeben sind, die sich ergebenden Registerinhalte der Register 200a200e (mittlere Spalten) sowie, in der äußeren rechten Spalte, das Register-Ausgangssignal am Ausgang 202 zum jeweiligen Taktzyklus. Wie es zu sehen ist, wurde in 5a davon ausgegangen, dass im Taktzyklus (= n – 1) 1 das LFSR von 4a mit einer Anfangsbelegung von 11101 geladen worden ist. Zum nächsten Taktzyklus 2 hin gibt jedes Register 200b200e seinen jeweiligen Register-Bitinhalt an das nachfolgende Register 200a200d aus, wobei das ausgangsseitige Register 200a seinen Registerinhalt sn erstens als Bit der Bitfolge s am Ausgang 202 ausgibt, so dass das Bit des Bitsignals s im Taktzyklus 2, also s2, dem Registerinhalt von Register 200a zum Taktzyklus (n – 1) = 1, nämlich „1", entspricht, und zweitens über den Rückkopplungspfad 204 modular addiert mit dem Registerinhalt des Registers 200c zum Taktzyklus 1, nämlich mit „1", in das Register 200e rücckoppelt, weshalb der Registerinhalt dieses Registers 200e zum Taktzyklus 2 „0" (= 1 XOR 1) ergibt.
  • Wie es zu erkennen ist, stellt sich nach 32 Taktzyklen in den Registern 200a200e wieder die ursprüngliche Registerkonfiguration vom Taktzyklus 1 ein, so dass sich eine Periodenlänge von 31 Taktzyklen für das von dem LFSR von 4a erzeugte Ausgangssignal bzw. die von dem LFSR von 4a erzeugte Bitfolge ergibt, wie es im vorhergehenden ja bereits bestimmt worden ist. Insbesondere ergibt sich auf die Initialisierung des LFSR von 4a mit einer Anfangsbelegung von 11101 hin eine Bitfolge s von 1110101000010010110011111000110|11101...
  • Bei einer anderen Anfangsbelegung ergibt sich ebenfalls eine Bitfolge der Periodenlänge 31, die jedoch versetzt zu der soeben genannten beginnt. Bei einer Anfangsbelegung von 00001 ergibt sich beispielsweise eine Bitfolge s, die folgendermaßen beginnt: 0000100101100111110001101110101|0000100...
  • Die vorhergehende Beschreibung bezog sich lediglich exemplarisch auf das LFSR von 4a, lässt sich aber ohne weiteres auch auf die in 4b4f gezeigten anderen LFSRs übertragen. In der Tabelle von 5 sind für die einzelnen 4a4f die Eigenschaften des jeweiligen LFSR, das in der jeweiligen Figur dargestellt ist, angezeigt. Insbesondere ist in der zweiten Spalte das jeweilige Polynom dargestellt, das dem LFSR der jeweiligen Figur entspricht, in der dritten Spalte ist die Summe der Registerinhalte dargestellt, die als Summe sn+5 an das letzte Register 200e rückgekoppelt wird, und in der vierten Spalte die sich ergebende Bitfolge s vom Beginn an für den Fall dargestellt, dass die Anfangsbelegung 00001 beträgt.
  • Wie es die Tabelle von 5b zeigt, erzeugt jedes der LFSRs von 4a4f eine Bitfolge der Periodenlänge 31. Dabei gilt für jedes der LFSR von 4a4f, wie es in 5a für das LFSR von 4a exemplarisch gezeigt worden ist, dass die Belegung der Register 200a200e während einer Periode bzw. in 31 aufeinander folgenden Taktzyklen jedes der möglichen Fünfer-Tupeln von Bits, das nicht nur aus fünf Nullen besteht, genau einmal annimmt. Doch ist die Reihenfolge, in der die Fünfer-Tupel aufeinanderfolgen, unterschiedlich.
  • Es lässt sich nun zeigen, dass sich jedes der sechs LFSRs von 4a4f mit Hilfe eines der anderen LFSRs simulieren lässt, wenn die Bitfolge dieser anderen LFSRs dezimiert wird, d.h. aus ihrer Bitfolge lediglich jedes m-te Bit herausgegriffen wird, um die schließliche Bitfolge zu erhalten.
  • Genauer ausgedrückt erzeugt eines der LFSR von 4a4f beispielsweise die Bitfolge s0, S1, S2, S3, S4, S5, S6, S7, S8, ... Wenn man nun die Zahl m nimmt, die teilerfremd ist zu der Periodenlänge, in dem vorliegenden Beispiel also 31, und aus der obigen Folge beginnend mit so jedes m-te Folgenglied herausgreift, SO dass die Folge s0, Sm, S2m, S3m, S4m, ... entsteht, dann ist diese dezimierte Folge identisch mit der Ausgabefolge eines der anderen fünf LFSRs von 4a4f. Es lässt sich ferner zeigen, dass sich auf diese Weise aus einem festen LFSR einer bestimmten Länge N, das die Eigenschaft besitzt, eine Bitfolge der Periodenlänge 2N – 1 zu erzeugen, alle anderen LFSRs gleicher Länge mit gleicher Eigenschaft simulieren lassen. Genauer ausgedrückt gilt, wenn man den Dezimierungsfaktor m alle zur Periodenlänge 2N – 1 teilerfremden Zahlen von 1 bis 2N – 1 durchlaufen lässt, und mit m die Ausgabefolge eines bestimmten LFSRs der Länge N dezimiert, man jede Ausgabefolge jedes der LFSRs mit Länge N genau N mal erhält, die Bitfolgen der Periodenlänge 2N – 1 erzeugen.
  • Man betrachte beispielsweise die Bitfolge aus obiger Tabelle für Anfangsbelegungen 0001 des LFSR von 4a. Wird diese Bitfolge mit m = 3 dezimiert, bzw. wird aus dieser Bitfolge jedes dritte Bit herausgegriffen, erhält man die Bitfolge 0001010110100001100100111110111|00010... Dies ist jedoch eine verschobene Version einer Bitfolge, wie sie von dem LFSR nach 4f erzeugt wird. Folglich wird durch Dezimierung der Bitfolge, die von dem LFSR nach 4a ausgegeben wird, das Schieberegister nach 4f simuliert.
  • Für die oben erörterten LFSRs der Länge 5 gilt insbesondere, dass eine Dezimierung der Bitfolge, wie sie von dem LFSR nach 4a erzeugt wird, sich je nach Dezimierungswert m die Bitfolgen folgender anderer LFSR ergeben:
    Figure 00180001
  • Nachdem im Vorhergehenden exemplarisch Bezug nehmend auf LFSR der Länge 5 die Eigenschaften von LFSR beschrieben worden sind, wird im Folgenden Bezug nehmend auf 3 die Funktionsweise dieser Vorrichtung noch einmal detaillierter Bezug nehmend auf ein spezielles Ausführungsbeispiel beschrieben, bei dem die LFSR LFSR verschiedener Länge N1 ... N4 sind, die aber alle die Eigenschaft besitzen, Bitfolgen der mit dieser speziellen Registerlänge maximal möglichen Periodenlänge
    Figure 00180002
    mit i = 1 ... 4 zu erzeugen.
  • Insbesondere wird exemplarisch angenommen, dass das LFSR 112a-112d folgende Längen aufweisen (2. Spalte) und Bitfolgen der folgenden Periodenlänge erzeugen (3. Spalte):
    Figure 00180003
  • Der Hauptschlüssel, der in dem Speicher 114 gespeichert ist, hätte in dem vorliegendem exemplarischen Fall beispielsweise die Länge 7 + 9 + 10 + 11 = 27, wobei bei Initialisierung beispielsweise die ersten sieben Bits in das LFSR 112a, die nächsten, darauf folgenden neun Bits in das LFSR 112b, die wiederum nächsten zehn Bits in das LFSR 112c und die letzten elf Bits in das LFSR 112d geladen werden.
  • Wenn nun die Steuereinrichtung 120 die Dezimierungseinrichtungen 118a118d mit der in der Tabelle 2 dargestellten Konfiguration der LFSR 112a112d mit einem Dezimierungswertquadrupel (m1, m2, m3, m4) ansteuert, das für jede Dezimierungseinrichtung 118a118d einen Dezimierungswert mi (i = 1 ... 4) ungleich Null anzeigt, dann erzeugt die Schlüsselbitstromerzeugungsvorrichtung 110 einen Schlüsselbitstrom einer Periodenlänge, die dem Produkt der Periodenlängen ni' (i = 1 ... 4) der dezimierten Folgen der einzelnen LFSR 112a112d entspricht.
  • Wenn nun aber zu einem bestimmten Zeitpunkt, wie es im Vorhergehenden beschrieben worden ist, die Steuereinrichtung 120 die Einrichtungen 118a118d mit einem neu eingestellten Dezimierungswertquadrupel ansteuert, dann ändert sich der von der Vorrichtung 110 erzeugte Schlüsselbitstrom, ohne dass die LFSR 112a112d tatsächlich geändert worden wären.
  • Werden zudem nur Dezimierungswerte mi verwendet, die zu der jeweiligen Periodenlänge ni des zugeordneten LFSR teilerfremd sind, also stets mi teilerfremd zu ni ist, dann bleiben, wie es im Vorhergehenden beschrieben worden ist, die Periodenlängen der dezimierten Bitfolgen zu den Periodenlängen der Bitfolgen der einzelnen LFSR identisch, so dass auch die Periodenlänge des veränderten Schlüsselbitstromes der Vorrichtung 110 stets vor und nach der Umstellung des Dezimierungswertquadrupels gleich bleibt.
  • Würde beispielsweise der Dezimierungswertvektor von (1, 1, 1, 1) auf (3, 3, 5, 5) und somit die Ausgabefolge des LFSR 112a mit m = 3, die Ausgabe des LFSR 112b mit m = 3, die Ausgabefolge des LFSR 112c mit m = 5 und die Ausgabe des LFSR 112d mit m = 5 dezimiert werden, dann verhielte sich die Verschlüsselungsvorrichtung 110 von 3 genauso, als hätte man dieselbe aufgebohrt und die in ihr vorkommenden vier LFSRs 112a–d heraus genommen und durch andere LFSRs ersetzt, die dieselbe Eigenschaft besitzen, nämlich Bitfolgen der Periodenlänge 127, 511, 1023 bzw. 2047 zu erzeugen.
  • Mit dem soeben exemplarisch erörterten Dezimierungswertquadrupel von (3, 3, 5, 5) wird die Leistungsfähigkeit der Verschlüsselungsvorrichtung 110 auf 20% im Vergleich zu dem Dezimierungswertquadrupel (1, 1, 1, 1), d.h. dem Zustand ohne Dezimierungseinrichtung 118a118d bzw. mit dem Herausgreifen jedes Bits der Bitfolgen der LFSR 112a112d, herabgesetzt, da der Kombinierer 116 zur bitweisen Kombination der Bits aus den dezimierten Bitfolgen, wie sie aus den Dezimierungseinrichtungen 118a118d ausgegeben werden, je nach dem größten Dezimierungswert, – hier m = 5 – für jede Verknüpfung fünf Taktzyklen statt lediglich einem Taktzyklus darauf warten muss, bis alle für jede Verknüpfung notwendigen Bits aus den dezimierten Bitfolgen am Kombinierer 116 eingetroffen sind. Genauer ausgedrückt greifen bei dem exemplarisch betrachteten Dezimierungswertquadrupel von (3, 3, 5, 5) die Dezimierungseinrichtungen 118c und 118d aus den Bitfolgen der LFSR 112c und 112d nur jedes fünfte Bit heraus und geben dasselbe an den Kombinierer 116 weiter. Die anderen werden nicht weitergeleitet, sondern verworfen. Dementsprechend vergeht bis zur Weitergabe des nächsten Bits bei diesen Dezimierungseinrichtungen 118c und 118d stets fünfmal so viel Zeit als ohne Dezimierung bzw. als bei Dezimierungswert 1. Die Leistungseinbußen sind jedoch akzeptabel, da das Sicherheitsniveau der Verschlüsselungsvorrichtung 2, die die Schlüsselbitfolge der Vorrichtung 110 verwendet, dadurch beträchtlich ansteigt, selbst wenn die Neueinstellung der Dezimierungswerte für die Dezimierungseinrichtung 118a118d nur von Zeit zu Zeit vorgenommen wird.
  • Andere mögliche Dezimierungswertquadrupel sind beispielsweise (3, 3, 5, 7), (5, 3, 5, 5), (11, 3, 7, 5), ... Mit denselben bleibt die sich ergebende Periodenlänge der Schlüsselbitfolge am Ausgang 6 immer stets gleich.
  • Bei Zyklen nach vorhergehender Beschreibung wird noch auf folgendes hingewiesen. Im vorhergehenden wurde die vorliegende Erfindung anhand einer Kombination aus kryptographischer Vorrichtung 2 und Schlüsselgenerator 110 beschrieben, bei dem die kryptographische Vorrichtung eine nach dem Vigenere-Algorithmus arbeitende kryptographische Vorrichtung war. Die vorliegende Erfindung ist jedoch nicht auf Ver- bzw. Entschlüsselungsvorrichtungen dieser Art begrenzt. Andere Ver- bzw. Entschlüsselungsvorrichtungen könnten dadurch erhalten werden, dass eine Schlüsselbit-Stromerzeugungsvorrichtung nach 3 in Kombination mit kryptographischen Vorrichtungen anderer Art kombiniert wird, wie z.B. einem DES- oder AES-Modul oder einer nach einem anderen symmetrischen kryptographischen Algorithmus arbeitende Vorrichtung, an deren Schlüsseleingang der Schlüsselbitstrom angelegt wird, wie er von dem Schlüsselgenerator 110 erzeugt wird.
  • Ferner wird darauf hingewiesen, dass in 3 lediglich exemplarisch von dem Fall ausgegangen worden ist, dass der Schlüsselgenerator vier LFSRs aufweist. Die Zahl der rückgekoppelten Schieberegister kann jedoch jegliche Zahl annehmen. Insbesondere ist es ferner möglich, den Kombinierer 116 weg zu lassen und einen Schlüsselgenerator lediglich durch eine Kombination einer Dezimierungseinrichtung mit einem rückgekoppelten Schieberegister zu realisieren.
  • Ferner wird darauf hingewiesen, dass es nicht notwendig ist, LFSR zu verwenden, die die Eigenschaft besitzen, Bitfolgen der für ihre Registerlänge maximal möglichen Periodenlänge zu erzeugen. Vielmehr könnten auch andere LFSR verwendet werden. Ferner könnten auch Dezimierungswerte verwendet werden, die nicht teilerfremd zu der Periodenlänge des zugeordneten LFSR sind. In diesem Fall reduzierte sich lediglich die effektive Periodenlänge des dezimierten Bitstroms, was jedoch bei genügend großen LFSRs akzeptabel sein kann.
  • Ferner wird Bezug nehmend auf die vorhergehende Beschreibung darauf hingewiesen, dass die Steuereinrichtung 120 die Zeitpunkte, zu denen die Umstellung bzw. Neueinstellung der Dezimierungswerte bzw. des Dezimierungswerts vorgenommen wird, ferner auch anders als auf die im Vorhergehenden beschriebenen Art und Weisen bestimmt werden könnten, um eine Synchronität zwischen Ver- bzw. Entschlüsselung herzustellen. Beispielsweise könnte bei Kommunikation zwischen zwei Kommunikationspartnern mittels einer Ver- bzw. Entschlüsselung, die auf einem Schlüsselbitstrom basiert, wie er von der Vorrichtung gemäß 3 erzeugt wird, ein Kommunikationspartner dem anderen die Zeitpunkte gemäß einem festgesetzten Protokoll mitteilen.
  • Nicht zuletzt wird darauf hingewiesen, dass die vorliegende Erfindung nicht auf lineare rückgekoppelte Schieberegister begrenzt ist. Die vorliegende Erfindung ist ferner mit rückgekoppelten Schieberegistern ausführbar, die nicht-linear sind.
  • Es wird ferner darauf hingewiesen, dass die Neueinstellung durch die Steuereinrichtung 120 auf jegliche Weise vorgenommen werden kann, nämlich, durch, wie es bereits im Vorhergehenden beschrieben worden ist, Bereitstellen einer Liste von Dezimierungswerten bzw. Dezimierungswertvektoren, die zyklisch nacheinander von Neueinstellung zu Neueinstellung durchlaufen wird, oder durch Abbildungen der Dezimierungswerte auf die neuen Dezimierungswerte, wie z.B. eine Matrixmultiplikation des aktuellen Dezimierungswertvektors auf den neuen, neu einzustellenden Dezimierungswertvektor oder dergleichen.
  • Insbesondere wird darauf hingewiesen, dass abhängig von den Gegebenheiten das erfindungsgemäße Schema zur Schlüsselbitstromerzeugung auch in Software implementiert sein kann. Die Implementation kann auf einem digitalen Speichermedium, insbesondere einer Diskette oder einer CD mit elektronisch aus lesbaren Steuersignalen erfolgen, die so mit einem programmierbaren Computersystem zusammenwirken können, dass das entsprechende Verfahren ausgeführt wird. Allgemein besteht die Erfindung somit auch in einem Computerprogrammprodukt mit auf einem maschinenlesbaren Träger gespeicherten Programmcode zur Durchführung des erfindungsgemäßen Verfahrens, wenn das Computerprogrammprodukt auf einem Rechner abläuft. In anderen Worten ausgedrückt kann die Erfindung somit als ein Computerprogramm mit einem Programmcode zur Durchführung des Verfahrens realisiert werden, wenn das Computerprogramm auf einem Computer abläuft.
  • 2
    kryptographische Vorrichtung
    4
    Datenstromeingang
    6
    Schlüsselbitstromeingang
    8
    Ausgang
    10
    eingehender Datenstrom
    12
    Eingehender Schlüsselbitstrom
    14
    Ausgehender Datenstrom
    16
    XOR-Verknüpfung
    110
    Schlüsselbitstromerzeugungsvorrichtung
    112a–112d
    lineares rückgekoppeltes Schieberegister
    114
    Speicher
    116
    Kombinierer
    118a–118d
    Dezimierungseinrichtung
    120
    Steuereinrichtung
    122
    Uhr
    124
    Taktzähler
    200a–200e
    interne Register
    202
    Ausgang
    204
    Rückkopplungspfad
    206
    XOR-Gatter
    910
    Schlüsselbitstromerzeugungsvorrichtung
    912a–912d
    lineares rückgekoppeltes Schieberegister
    914
    Speicher
    916
    Kombinierer
    918
    Ausgang

Claims (16)

  1. Vorrichtung zum Erzeugen eines Schlüsselbitstroms mit einem rückgekoppelten Schieberegister (112a112d) zum Erzeugen einer Bitfolge; einer Dezimierungseinrichtung (118a118d) zum Herausgreifen, basierend auf einem Dezimierungswert m, jedes m-ten Bits der Bitfolge, um den Schlüsselbitstrom zu erhalten; und einer Neueinstellungseinrichtung (120) zum, ansprechend auf ein vorbestimmtes Ereignis, Neueinstellen des Dezimierungswertes m.
  2. Vorrichtung gemäß Anspruch 1, bei der die Bitfolge eine Periodenlänge n aufweist, und der Dezimierungswert m teilerfremd zu der Periodenlänge n ist.
  3. Vorrichtungen gemäß Anspruch 1 oder 2, bei der das rückgekoppelte Schieberegister (112a–d) ein lineares rückgekoppeltes Schieberegister ist.
  4. Vorrichtung gemäß einem der Ansprüche 1 bis 3, bei der das lineare rückgekoppelte Schieberegister aus groß N-internen Bitregistern (200a–e) besteht und die Eigenschaft besitzt, eine Bitfolge der Periodenlänge 2N – 1 zu erzeugen.
  5. Vorrichtung gemäß einem der vorhergehenden Ansprüche, die ferner folgendes Merkmal aufweist: eine Einrichtung (122) zum Bereitstellen einer absoluten Zeitangabe, wobei die Neueinstellungseinrichtung (120) ausgebildet ist, um die Neueinstellung ansprechend darauf vorzunehmend, dass die absolute Zeitangabe eine vorbestimmte Bedingung erfüllt.
  6. Vorrichtung gemäß einem der vorhergehenden Ansprüche, bei der die Neueinstellungseinrichtung (120) ausgebildet ist, um die Neueinstellung nach einer vorbestimmten Zeitdauer seit einem vorbestimmten Ereignis vorzunehmen.
  7. Vorrichtung gemäß Anspruch 6, bei der das vorbestimmte Ereignis das letzte Mal, bei dem die Neueinstellungseinrichtung (120) eine Neueinstellung vornahm, eine letzte Ankopplung der Vorrichtung an eine externe Spannungsversorgung oder ein vorbestimmter Zeitpunkt während oder der Beginn einer laufenden Ver- bzw. Entschlüsselung ist, bei der der Schlüsselbitstrom verwendet wird.
  8. Vorrichtung gemäß einem der vorhergehenden Ansprüche, mit einer Einrichtung (114) zum Initialisieren der Vorrichtung durch Laden eines Kryptoschlüssels in das rückgekoppelte Schieberegister (112a–d).
  9. Vorrichtung zum Verschlüsseln eines Datenstroms, mit einer Vorrichtung zum Erzeugen eines Schlüsselbitstroms gemäß einem der Ansprüche 1 bis 8; und einer Vorrichtung (2) zum Verschlüsselns des Datenstroms auf der Basis des Schlüsselbitstroms.
  10. Vorrichtung zum Entschlüsselns eines verschlüsselten Datenstroms, mit einer Vorrichtung zum Erzeugen eines Schlüsselbitstroms gemäß einem der Ansprüche 1 bis 8; und einer Vorrichtung (2) zum Entschlüsseln des verschlüsselten Datenstroms auf der Basis des Schlüsselbitstroms.
  11. Vorrichtung gemäß Anspruch 9 oder 10, bei der die Vorrichtung eine weitere Vorrichtung zum Erzeugen eines Schlüs selbitstroms gemäß einem der Ansprüche 1 bis 8 aufweist sowie eine Einrichtung (116) zum Kombinieren der Schlüsselbitströme der beiden Vorrichtungen zum Erzeugen eines Schlüsselbitstroms, um einen kombinierten Schlüsselbitstrom zu erhalten, wobei die Vorrichtung zum Ver- bzw. Entschlüsseln ausgebildet ist, um die Ver- bzw. Entschlüsselung auf der Basis des kombinierten Schlüsselbitstroms vorzunehmen.
  12. Vorrichtung gemäß Anspruch 11, bei der die Einrichtung (116) zum Kombinieren eine Einrichtung zum bitweisen nichtlinearen Kombinieren der Schlüsselbitströme der beiden Vorrichtungen zum Erzeugen eines Schlüsselbitstroms aufweist.
  13. Vorrichtung gemäß einem der Ansprüche 9 bis 12, bei der die Vorrichtung (2) zum Ver- bzw. Entschlüsseln ausgebildet ist, um den Datenstrom bzw. den verschlüsselten Datenstrom bitweise mit dem Schlüsselbitstrom zu kombinieren, um einen verschlüsselten bzw. entschlüsselten Datenstrom zu erhalten.
  14. Vorrichtung gemäß einem der Ansprüche 1 bis 8, bei der die Einrichtung (120) zum Neueinstellen ausgebildet ist, um die Neueinstellung durch Zugreifen auf eine Liste von vorbestimmten Dezimierungswerten oder durch Durchführen einer vorbestimmten arithmetischen Berechnung auf der Basis des Dezimierungswertes durchzuführen.
  15. Verfahren zum Erzeugen eines Schlüsselbitstroms, mit folgenden Schritten Erzeugen einer Bitfolge mittels eines rückgekoppelten Schieberegisters (112a112d); Herausgreifen, basierend auf einem Dezimierungswert m, jedes m-ten Bits der Bitfolge, um den Schlüsselbitstrom zu erhalten; und ansprechend auf ein vorbestimmtes Ereignis, Neueinstellen des Dezimierungswertes m.
  16. Computer-Programm mit einem Programmcode zur Durchführung des Verfahrens nach Anspruch 15, wenn das Computer-Programm auf einem Computer abläuft.
DE102004010666A 2004-03-04 2004-03-04 Schlüsselbitstromerzeugung Expired - Fee Related DE102004010666B4 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE102004010666A DE102004010666B4 (de) 2004-03-04 2004-03-04 Schlüsselbitstromerzeugung
FR0502145A FR2867636B1 (fr) 2004-03-04 2005-03-03 Production d'un train de bits servant de cle
US11/073,018 US7764789B2 (en) 2004-03-04 2005-03-04 Key bit stream generation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102004010666A DE102004010666B4 (de) 2004-03-04 2004-03-04 Schlüsselbitstromerzeugung

Publications (2)

Publication Number Publication Date
DE102004010666A1 true DE102004010666A1 (de) 2005-09-29
DE102004010666B4 DE102004010666B4 (de) 2006-02-02

Family

ID=34894966

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102004010666A Expired - Fee Related DE102004010666B4 (de) 2004-03-04 2004-03-04 Schlüsselbitstromerzeugung

Country Status (3)

Country Link
US (1) US7764789B2 (de)
DE (1) DE102004010666B4 (de)
FR (1) FR2867636B1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7509250B2 (en) * 2005-04-20 2009-03-24 Honeywell International Inc. Hardware key control of debug interface
DE102006039327B4 (de) * 2006-08-22 2008-06-26 Nokia Siemens Networks Gmbh & Co.Kg Verfahren zur Authentifizierung
US20080298583A1 (en) * 2007-05-31 2008-12-04 Lucent Technologies Inc. System and method of quantum encryption
WO2011006051A1 (en) * 2009-07-09 2011-01-13 Georgia Tech Research Corporation Systems and methods for providing physical layer security
US8855303B1 (en) * 2012-12-05 2014-10-07 The Boeing Company Cryptography using a symmetric frequency-based encryption algorithm
DE102014215898A1 (de) * 2014-08-11 2016-02-11 Siemens Aktiengesellschaft Programmierbares Logikbauelement, Schlüsselbildungsschaltung und Verfahren zur Bereitstellung einer Sicherheitsinformation

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1207426B (de) * 1963-10-18 1965-12-23 Gretag Ag Verfahren zum Ver- und Entschluesseln von impulsfoermigen Nachrichten
US5060265A (en) * 1990-07-23 1991-10-22 Motorola, Inc. Method of protecting a linear feedback shift register (LFSR) output signal
US5535277A (en) * 1994-03-10 1996-07-09 Mita Industrial Co., Ltd. Encryption communication apparatus
JPH09325881A (ja) * 1996-06-05 1997-12-16 Nec Corp 擬似乱数発生装置
JP2000242470A (ja) * 1999-02-23 2000-09-08 Matsushita Electric Ind Co Ltd 乱数生成装置および方法および記録媒体

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69326681T2 (de) * 1993-04-06 2000-02-10 Hewlett Packard Co Verfahren und Apparat zum Erzeugen von linearen Rückführungsschieberegistersequenzen
US6330333B1 (en) * 1995-07-03 2001-12-11 Lucent Technologies, Inc. Cryptographic system for wireless communications
US6560338B1 (en) * 1998-08-28 2003-05-06 Qualcomm Incorporated Limiting delays associated with the generation of encryption stream ciphers
US20040049525A1 (en) * 2002-09-06 2004-03-11 Koninklijke Philips Electronics N.V. Feedback random number generation method and system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1207426B (de) * 1963-10-18 1965-12-23 Gretag Ag Verfahren zum Ver- und Entschluesseln von impulsfoermigen Nachrichten
US5060265A (en) * 1990-07-23 1991-10-22 Motorola, Inc. Method of protecting a linear feedback shift register (LFSR) output signal
US5535277A (en) * 1994-03-10 1996-07-09 Mita Industrial Co., Ltd. Encryption communication apparatus
JPH09325881A (ja) * 1996-06-05 1997-12-16 Nec Corp 擬似乱数発生装置
JP2000242470A (ja) * 1999-02-23 2000-09-08 Matsushita Electric Ind Co Ltd 乱数生成装置および方法および記録媒体

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CHAN,C.-K. u.a.: Design of keystream generator. In: Electronics Letters, Vol.34, H.12, 1998, S.1206-1207 *
JP 09-325 881 A (mit engl. Übersetzung)
JP 09325881 A (mit engl. Übersetzung) *
ZENG,K. u.a.: Pseudorandom bit generators in Stream-cipher cryptography. In: Computer, Vol.24, H.2, 1991, S.8-17 *

Also Published As

Publication number Publication date
US20050220297A1 (en) 2005-10-06
US7764789B2 (en) 2010-07-27
DE102004010666B4 (de) 2006-02-02
FR2867636B1 (fr) 2006-12-08
FR2867636A1 (fr) 2005-09-16

Similar Documents

Publication Publication Date Title
DE102005012098B4 (de) Datenchiffrierprozessor sowie AES-Chiffriersystem und AES-Chiffrierverfahren
DE2715631C2 (de) Verschlüsselung und Absicherung von Daten
DE69931606T2 (de) Datenwandler und aufzeichnungsmedium zur aufnahme eines programms zur datenumwandlung
EP1777913B1 (de) Verfahren zur Verschlüsselung bzw. Entschlüsselung von Datenpaketen eines Datenstroms
EP0012974B1 (de) Verfahren zur Chiffrierung von Datenblöcken einer vorgegebenen Länge
AT510730B1 (de) Verfahren und vorrichtung zur durchführung einer symmetrischen stromverschlüsselung von daten
DE102013213354A1 (de) Zufallsbitstromgenerator mit garantierter mindestperiode
DE60116195T2 (de) Vorrichtung und Verfahren zur Verschleierung von Eingangsparametern
DE102004042826B4 (de) Verfahren und Vorrichtung zur Datenverschlüsselung
EP2446580B1 (de) Vorrichtung und verfahren zur bildung einer signatur
DE102004010666B4 (de) Schlüsselbitstromerzeugung
EP1668817B1 (de) Verfahren und Vorrichtung zur Ver- und Entschlüsselung
EP2590357B1 (de) Verfahren und System zur Identifizierung eines RFID-Tags durch ein Lesegerät
WO2013110103A2 (de) Verfahren zum schreiben und lesen von daten
EP1676394A1 (de) Verfahren und vorrichtung zur ver-/ entschlüsselung
DE10352680A1 (de) Verschlüsselungsvorrichtung und Verschlüsselungsverfahren
EP3174239B1 (de) Verschlüsselungsverfahren und pseudo-zufallszahlengenerator
DE69829566T2 (de) Verschlüsselungsgerät
DE60034944T2 (de) Gegenmassnahmeverfahren in einer geheimen und dynamischen Verschlüsselungsalgorithmus ausführenden elektronischen Schaltung
DE602004012096T2 (de) Verfahren und vorrichtung für eine hadwareimplementierung der schlüsselexpansionsfunktion mit wenig speicher
DE10303723B4 (de) Vorrichtung und Verfahren zum Berechnen von verschlüsselten Daten aus unverschlüsselten Daten oder von unverschlüsselten Daten aus verschlüsselten Daten
EP3734486B1 (de) Computerimplementiertes verfahren zum ersetzen eines datenstrings
DE19921633A1 (de) Verfahren zur Implementierung kryptographischer Algorithmen
WO2015176087A1 (de) Verfahren und vorrichtung zur durchführung einer symmetrischen stromverschlüsselung von daten
WO1997032417A1 (de) Verfahren zum generieren eines prüfworts für eine bitfolge zur überprüfung der integrität und authentizität der bitfolge

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee