DE2658065A1 - Maschinelles chiffrieren und dechiffrieren - Google Patents

Maschinelles chiffrieren und dechiffrieren

Info

Publication number
DE2658065A1
DE2658065A1 DE19762658065 DE2658065A DE2658065A1 DE 2658065 A1 DE2658065 A1 DE 2658065A1 DE 19762658065 DE19762658065 DE 19762658065 DE 2658065 A DE2658065 A DE 2658065A DE 2658065 A1 DE2658065 A1 DE 2658065A1
Authority
DE
Germany
Prior art keywords
data
register
circuit
key
substitution
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
DE19762658065
Other languages
English (en)
Inventor
Wolfram Becker
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.)
IBM Deutschland GmbH
Original Assignee
IBM Deutschland GmbH
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 IBM Deutschland GmbH filed Critical IBM Deutschland GmbH
Priority to DE19762658065 priority Critical patent/DE2658065A1/de
Priority to GB44411/77A priority patent/GB1577539A/en
Priority to CA290,123A priority patent/CA1101509A/en
Priority to FR7735133A priority patent/FR2375679A1/fr
Priority to JP52147314A priority patent/JPS5832380B2/ja
Priority to US05/862,251 priority patent/US4157454A/en
Publication of DE2658065A1 publication Critical patent/DE2658065A1/de
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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations

Description

Die Erfindung betrifft ein Verfahren zum maschinellen Chiffrieren . und autorisierten Dechiffrieren mehrstelliger Daten sowie eine : Einrichtung zur Ausführung des Verfahrens. ι
Elektronische Datenverarbeitungsanlagen werden in erheblichem t Maße als zentrale Dienstleistungssysteme eingesetzt, zu denen ;
eine Vielzahl von Benutzern über an entfernten Orten aufgestellte Ein/Ausgabeterminals Zugriff haben. Insbesondere bei solchen
Systemen gewinnt das Problem, die Diskretion der Daten zu wahren ; und diese gegen einen unbefugten Zugriff zu sichern, eine erheb- j liehe Bedeutung. Es ist bekannt, zum Zwecke der Datensicherung
.Chiffriereinrichtungen an solchen Stellen des Systems vorzusehen,
die gegen unbefugten Zugriff besonders exponiert sind. Dies trifft,
z.B. zu für die Sendeeinrichtungen von Datenfernverarbeitungsverbindungen oder für Datenbankspeicher, in die sich mehrere Be- ' nutzer teilen. [
Es lassen sich als grundsätzliche Chiffrierarten das sequentielle Verfahren und das Blockchiffreverfahren unterscheiden. Beim sequentiellen Verfahren wird aus einem Anfangsschlüssel eine Schlüsselfolge erzeugt und mit deren Hilfe die zu verschlüsselnde Folge von Datenelementen durch Substitution (Ersetzung eines Datenele-
809827/0037
mentes durch ein anderes) verschlüsselt, vgl. H. Feistel: "Cryptography and Computer Privacy", Scientific American, Mai 1973, Vol. 228, Nr. 5, Seiten 15 bis 23. Das n-te Datenelement wird hierbei mit den η-ten Schlüsselelement in geeigneter Wiese, beispielsweise durch Modulo-2-Addition verknüpft. Für dieses Verfahren ist die Zahl der Datenelemente ohne Bedeutung, da die Verschlüsselung in einem kontinuierlichen Durchlauf erfolgt. Zur Dechiffrierung wird das gleiche Verfahren unter Benutzung der gleichen Schlüsselfolge angewandt. Dieses Verfahren gewährt jedoch nur dann eine hohe Sicherheit, wenn eine bestimmte Schlüsselfolge nur für eine oder wenige Verschlüsselungen benutzt wird, da von einer entschlüsselten Information auf die Schlüsselfolge geschlossen werden kann und damit der Schutz für alle weiteren mit dieser Schlüsselfolge bearbeiteten Informationen aufgehoben ist.
Beim Blockchlffreverfahren wird ein Datenblock vorgegebener Länge durch mehrmalige und untereinander abwechselnde Permutation und Substitution chiffriert. Die Permutation erfolgt durch gegenseitiges Vertauschen der Elemente des Datenblockee nach einem vorgegebenen Schema, während die Substitution in der oben angegebenen Weise unter Steuerung eines Chiffrierschlüssels für die Elemente des Datenblockes parallel ausgeführt wird (vgl. Feistel a,a,o,).
Bei Einrichtungen der letzt genannten Art ist es ferner bekannt, die Chiffrierung bzw. Dechiffrierung in aufeinanderfolgenden Iterationen durchzuführen und nach jeder Iteration den Chiffrierschlüssel entsprechend einem vorgegebenen Schema in sich zu verändern (DT-OS 22 31 849), Zu diesem Zweck werden die Bits eine« zu verschlüsselnden Datenblocks zunächst für sich einer Substitutionsstufe zugeführt, deren Ergebnis permutiert wird. Das eich hieraus ergebende Resultat und das Schlüsselwort sind Gegenstand einer Modulo-2-Addition, mit deren Ergebnis anschließend eine
GE 976 018
809827/0037
weitere Modulo-2-Addition mit dem ursprünglichen Datenblock vorgenommen wird» Nach einer Veränderung des Chiffrierschlüssels durch Vornahme einer vorgegebenen Stellenverschiebung werden diese Operationsschritte mit dem bis dahin gebildeten Resultat |wiederholt. Der Vorgang wird fortgesetzt, bis ein vollständiger jVerschiebsyklus des Chiffriersohlüssels ausgeführt worden ist. Das zu diesem Seitpunkt vorliegende Resultat stellt die chiffrier«; te Version des larsprünglichea DatenbXocks dar«,
j Ss sind auoh Chiffrier/Dechiffrieroiaeishtungen bekannt, bei de- ; nen, ein su verschlüsselnder Datesablock in Segment® unterteilt ; wird ρ di© nacheiaasiäer verarbeitet t-yeröea (DT-OS 22 52 670). ' Es werden m*j©i ia Sesl© gesshaltste Sät^a won Schieberegistern i bemafestff öle ein© Auggaags^/Eiagaags^aückkopglwag aufweisen uad j ■ ν©» den©» ä®s ©Este al® Eiagaagsreglstes-satn für den %n chiffri©- j r©nä®a Dateabloek unö ddS1 andere als Misehregistessats dient« Die j Zahl <䮣 SehiebesafisteE isa j©fl©sa Sats ©atspgicht der Bitzahl nss So^aeatSo Di© B©cpeffite d©s im
i tea Datoabloeks siad siassüsmea mit aösgeuIliltsB B©pa©at©sa öes | j Ch±tfs±®sBdhlüBm®lm aseheiaands!" Gsgeastaaö ©ines ©dar ia-ihEs«° I ; res SÄstittttioasoporafeioaeno SI© E©aisltatbiti3 αΐ®!!]©^ ©peratio« | j neu w®sä®m Mt daa öE'sps'öagliefeda Oatessbits <S®s la b@fiadlieh@a Sepasate ia ä®a Msisteegistesa logisch verknüpft einer es'aoutaa Siabstituti©as©p@safei©a augefMiEfeo Obwohl b@i
iaag bswo Safesehlüssesi® ώοοϊι ©ines& erheb™
tiauptslehlish sum Schut
von 9at@alib©stragtaag©ffi aagewandto Is ist iadesseia ©rwüascht,
vsesehlöss©!^ beispielsweise um ia ©ia@r s©afe^al©a Dateabeja!-s v©^ «nbe-
fugfe@sa isugeifif so sehötg©ao Für äi©s© Jtoyes&öung sind die oben
¥erf ahsara sk s©hwaeh, <äa hier ein
GB "976 018 "'
ständiger Schlüsselwechsel nicht möglich ist. Die Blockchiffrierverfahren haben hingegen den Nachteil, nur Datenfelder fester Länge verarbeiten zu können, wobei aus Sicherheitsgründen die Blocklänge relativ groß zu wählen ist. Werden jedoch die verschlüsselt zu speichernden Datenfelder unterschiedlicher Länge jeweils auf eine Blocklänge oder auf ein Vielfaches einer Blocklänge durch Hinzufügen von Fülldatenelementen verlängert, so ergibt sich ein erhöhter Bedarf an Speicherplatz und Übertragungszeit, Bei Umstellung eines Datenfeldes auf Chiffrierschutz bedingt eine Längenanpassung an die Blocklänge eine Reorganisation der Datenbank,
jAufgabe der Erfindung ist es, ein Chiffrier/Dechiffrier-Verfahiren anzugeben, äas unter Vermeidung der genannten Nachteile eine jhohe. Sicherheit bei der V^rsohlüaselung von Datenfeldern varift** Ibier Länge vorsieht t aueh. wenn diesig relativ kurz ist, und das !nur einen verhältnisn&eig geringen Schaltungsaufwend erfordert, j Ea ist ferner Aufgabe der Erfindungr eine vorteilhafte Einrichtung zur Äugführung dieses Verfahrens anzugeben, i
j Die Merkmale dea erfindungsgemäßen V@rfahrens sind aus Anspruch 1 I ersichtlich^ die der erfindsmgagem&fien Einrichtung aus Anspruch 9, j Verschieden« vorteilhafte Ausgestaltungen und Weiterbildungen der !Erfindung zeigen die Unteranspifiiclie,
Nachfolgend ist ein AusftShrungsbeispiel der Erfindung anhand von Zeichnungen dargestellt. Es zeigenι
Fig. 1 ein schematisches Fiußdiagr«nm eines Ausführungs-j
beispiels <S«s erfindungsgemäßen Verfahrens, |
Fig, 2 ein Blockdiagramm eines Ausführungsbeispiels :
einer Einrichtung zur Ausführung des Verfahrens, | gemäß Fig. 1,
GE 976 018
809827/0037
FIg. 3 eine arithmetische Chiffrierschlüssel-Substitutionsschaltung, die sich zur Verwendung in der Einrichtung von Fig. 2 eignet,
Fig. 4 einen Teil einer Modifikationsart-Steuerschaltung zur Verwendung in der Einrichtung von Fig.2,
Fig. 5 ein Blockdiagramm einer Steuerschaltung, die
sich zur Verwendung in der Einrichtung von Fig. 2 eignet, sowie einen weiteren Teil der Modifikationsart-Steuerschaltung von Fig. 2 und 4, und
Fig. 6 ein Impulsdiagramm zur Erläuterung der Arbeitsweise der Einrichtung von Fig. 2.
Die Hauptschritte des erfindungsgemäßen Verfahrens werden anhand des Ausführungsbeispiels von Fig» 1 erläutert. Der Eingangsdaten-Block 10 ist eine symbolische Darstellung einer Datenquelle, die beispielsweise ein Register oder ein Datenfeld im Arbeitsspeicher ©laer Datenverarbeitunganlage sein kanne Desgleichen sind die Biöske 12, 14 und 15 als sysfcolisciie Darstellung für die Quelle <fi@s Chiffrierschlüssels au verstehen; auch sie können durch je ' ©iss Register oder ein Datenfeld im Arbeitsspeicher dsr Verarbeitungseinheit eines Computers verkörpert sein. Der Block 12 ent- : spricht am Anfang äer Chiffrieroperation dem Schlüssel A, der eine Hälfte des Chiffrlerschlüssels darstellt, und der Block 14 entspricht- am Anfang der Chiffrieroperation dem Schlüssel B, der die aaciere Hälfte des Chiffrierschlüssels darstellt. Der Block 15 entspricht ebenso wie der Block 12 dem Schlüssel A, d.h. der ©ssten Hälfte des Chiffrierschlüssels. Die Eingangsdaten variabler Länge und der Schlüssel A bzw. B werden segmentweise ;
GE 976 018
809827/0037
verarbeitet. Im nachfolgend beschriebenen Ausführungsbeispiel besteht jedes Segment aus einem binärem Bit. Das erfindungsgemäße Verfahren ist hieran jedoch nicht gebunden, beispielsweise kann ein Segment auch aus einem Byte oder einer beliebigen Gruppe von Bits bestehen.
Eine Verschlüsselungsoperation beginnt damit, daß ein Segment der Eingangsdaten unter Steuerung eines entsprechenden Schlüsselsegmentes einer Substitutionsoperation zugeführt wird, die in Fig.1 durch den Block 16 dargestellt ist. Bei dieser Substitutionsoperation kann es sich um eine arithmetische oder logische Verknüpfung, beispielsweise um eine Exclusive-ODER-Verknüpfung handeln, deren Resultat gemäß Block 17 zunächst zwischengespeichert wird. Gleichzeitig wird das der Substitutionsoperation zugeführte Datensegment und das die Substitution steuernde Segment des Schlüssels A gemeinsam zur Steuerung einer Modifikation des Schlüssels A benutzt. Dieser Schritt ist in Fig. 1 durch den Block 18 dargestellt. Es sind unterschiedliche Modiflkationsarten vorgesehen, die eine Substitution der Elemente des Schlüssels A oder einer Permutation dieser Elemente oder eine Kombination beider Operationen umfassen. Das Datensegment und das entsprechende Schlüsselsegment dienen zur Auswahl einer von mehreren vorgegebenen Modifikationsarten. Im dargestellten Ausführungsbeispiel erstreckt sich die ausgewählte Modifikationsart jeweils auf alle Bits des Schlüssels A.
Nachdem die Modifikation des Schlüssels A beendet ist, werden die vorausgehend erläuterten Teilschritte mit dem nächsten Segment des Eingangsdatenfeldes wiederholt. Dieses Segment wird wiederum unter Steuerung eines entsprechenden Segments des modifizierten Schlüssels A der Substitutionsoperation des Blockes 16 zugeführt, und
GE 976 018
809827/0037
das Resultat wird zunächst zwischengespeichert. Gleichzeitig wird die nächste Modifikation des Schlüssels A im Block 18 eingeleitet Nach der Beendigung dieser Modifikation erfolgt die Verarbeitung des nächsten Segments des Eingangsdatenfeldes, usw., bis das gesamte Eingangsdatenfeld Gegenstand der seriellen Substitutionsoperation gemäß Block 16 war. Zu diesem Zeitpunkt ist das Ergebnis der Substxtutionsoperation im Block 17 zwischengespeichert. Es schließt sich eine symmetrische Permutation des zwischengespeicher-r ten Datenfeldes an. Die Permutation kann aus einer symmetrischen Bitversetzung bestehen (Drehung) f wobei der Inhalt der ersten Bitstelle des Datenfeldes der letzten Bitstelle des Datenfeldes, der Inhalt der zweiten Bitstelle der vorletzten Bitstelle, der Inhalt der dritten Bitstelle dar drittletzten Bitstelle, usw. zugeführt . wird. Nach der Permutation von Schritt 17 folgt eine erneute sequentielle Substitution^ die durch den Block 19 angegeben wird \
ι und die der Substitution ψοη Block 16 entspricht mit der Ausnahme,■ daß die einzelnen Substitutionsschritte nicht vom Schlüssel Ä, ' sondern vom Schlüssel B gesteuert werdeno Das Resultat einer jeden: Substitution der -worn Pesmutatioassehritt 17 gelieferten Daten wird gemäß Schritt 21 wiederum swischengespelcheirfeo Nach jeder ; Sübstitution ©ines Segments erfolgt eine selektive Modifikation des Schlüssels B durch ä®n Sehritt 22 in der'Qbaa für dea Schlüssel}. A beschriebenen Weise« Dies© Teilschritt© werden wiederholt, bis : alle Secpoate de® s^is©hengesp©ich©st@a Resultats aus dem Permu- j tatioassehritt 17 unter Steuerung des nash jedem Teilschritt xßoälfisiertesi Sehlüssal® B wsEasbeitat worden sind. Danach führt i der Sehritt 21 ®ia© esaeate Pesmutatiosi d@s obigen Art mit dem Ergebnis d@s Schrittes 19 auso Die CMffrieroperation wird abgeschlossen dusch eiae erneut© Folge von Substitutionsoperations» geiaäB Sehsltt 23 mit dem Resultat des Schrittes 21 unter Steöeruag des Sshlüsseis &o Siaeh jeder Substitution eines der im tosehl^iß &n al© Pesautatios des Sehrittes 21 awischenge~
speicherten Daten erfolgt gemäß Block 24 eine selektive Modifikation des Schlüssels A in der beschriebenen Weise. Die Resultatdaten des Schrittes 23 werden einem Ausgangsdatenfeld 25 zugeführt, das sich beispielsweise in einem Register oder Datenfeld eines Arbeitsspeichers befinden kann, der Teil der Verarbeitungseinheit eines Computers ist.
Aus der obigen Erläuterung wird deutlich, daß die Verschlüsselung des Eingangsdatenfeldes unter Steuerung eines Chiffrierschlüssels erfolgt, der dauernd in Abhängigkeit von den zu verschlüsselnden Daten abgeändert wird. Hierdurch wird eine starke Abhängigkeit der verschlüsselten Daten sowohl von allen Bits des Eingangsdatenfeldes als auch von allen Bits der beiden Schlüsselworthälften erreicht. Es stellt sich somit der bei einer wirksamen Verschlüsselung erwünschte Lawineneffekt bei der Unkenntlichmachung des Bitmusters im Eingangsdatenfeld ein.
Die Dechiffrierung erfolgt nach dem gleichen, aus Fig. 1 ersichtlichen Schema. Wird als Substitutionsoperation der Schritte 16, und 23 eine symmetrische Verknüpfung gewählt, wie dies für die Exclusive-ODER-Verknüpfung C=Modulo-2-Addition) zutrifft, so wird bei einer Wiederholung der gleichen Substitution der Ausgangswert wiederhergestellt und deshalb der Chiffriereffekt wieder rückgängig gemacht. Die Auswahl der Modifikationsart der Schlüssel* halfte A in den Schritten 18 und 24 und der Schlüsselhälfte B im Schritt 22 werden so angepaßt, daß sich auch hier ein symmetrischer Verlauf ergibt, d.h., daß auch bei der Dechiffrierung die gleichen Modifikationen angewendet werden wie bei der Chiffrierung.
GE 976 018
803827/0037
Die sequentielle Modifikation der Chiffrierschlüssel-Teilfelder A xind B
Wie oben bereits erläutert wurde, bestehen die nacheinander den Substitutionsoperationen 16, 19 und 23 zuzuführenden Datensegmente jeweils aus einem Bit. Zur Durchführung der Substitution eines jeden Segments ist demgemäß ein Schlüsselbit notwendig. Es stehen somit zwei Bits zur Verfügung, um eine bestimmte Modifikationsart für die Chiffrierschlüssel-Teilfelder A und B auszuwählen. Daraus ergeben sich vier unterschiedliche Modifikationsfälle, die nachfolgend mit Ct, C2, C3 und C4 bezeichnet sind. Diesen Modifikationsfällen können unterschiedliche Modifikationsarten zugeordnet werden. Jede dieser Modifikationsarten kann aus einem oder mehreren Modifikationsschritten bestehen, beispielsweise eine oder mehrere Permutationen und eine oder mehrere Substitutionen. Die Modifikationsschritte werden zweckmäßigerweise so gewählt, daß für das Chiffrieren und Dechiffrieren die gleichen Modifikationsschritte anwendbar sind und lediglich gegebenenfalls die Zuordnung der Modifikationsschritte zu den Modifikationsfällen zu ändern ist. Letzteres kann paarweise durch einen bistabilen Schalter geschehen, der im Chiffrierbetrieb eine erste Zuordnung der Modifikationsschritte zu den Modifikationsfällen und im Dechiffrierbetrieb eine abgeänderte Zuordnung der Modifikationsschritte zu den Modifikationsfällen vornimmt. Die nachfolgende Tabelle I zeigt hierfür ein Beispiel.
GE 976 018
$09827/0037
- 10 -
TABELLE I
Modifikations
fall
Datenbit Schlüsselbit Modifikation des Schlüssels Dechiffrieren
C1 0 O Chiffrieren Permutation Typ 1
Substitution Typ 1
C2 1 O Permutation Typ 1
Substitution Typ 1
Permutation Typ 2
Substitution Typ 1
C3 0 1 Permutation Typ 2
Substitution Typ 1
Permutation Typ 1
C4 1 1 Permutation Typ 3
Substitution Typ 1
Permutation Typ 3
Substitution Typ 1
Permutation Typ 1
OQ O CD
GE 976 018
Die Tabelle I zeigtff daß zur Modifikation des Schlüssels im vorliegenden Beispiel vier verschiedene Modifikationsschritte zur Verr fügung stehen, die einzeln oder in Kombination den Modifikations- | 1 fällen C1 bis C4 zugeordnet sind. Es handelt sich um die Permuta- | jtionstypen 1 bis 3 und um einen Substitutionstyp. Die Permutationsf i typen werden durch Stellenversetzungen bzw» Stellenverschiebungen ; |im Feld der Sehlüsselbits ausgeführte Der Substitutionstyp besteht! I aus einer arithmetischen Operation^ beispielsweise einer Addition, von zwei Teilfeldern des Schlüsselsβ Der Modifikationsfall C1
i '
• wird ausgewählt, wenn sowohl das Datenbit als auch das Schlüssel- | 'bit O ist* In diesem Fall wird im Chiffrierbetrieb mit einem Feld . ι ι
j der Schlüsselbits ©ine Permutation vom Typ 1 ausgeführt und danach j ;mit zwei Teilfeldern des Schlüssels eine Substitution vom Typ 1.
j Diese Modifikationsschritte bleiben im Dechiffrierbetrieb «wer- , ändert. Der Modifikationsfall C2 wird ausgewählt, wenn das Daten- j ,bit den Wert 1 und das Schlüsselbit den Wert O hat. In diesem Falls?
i " r
!erfolgt einheitlieh im Chiffrierbetrieb und auch im Dechiffrierbetrieb zunächst eine Permutation vom Typ 2 und danach eia® Sub-[stitution des Typs 1„ Der Modifikationsfall C3 wird ausgewählt?
!wenn das Datenbit O und das Sehlüsseibit 1 ist. In diesem Falle
jwird beim Chiffrierbetrieb zunächst eine Permutation vom Typ 3 und !danach eine Substitution vom Typ 1 ausgeführte Im Dechiffrierbei trieb erfolgt hingegen lediglich eine Permutation vom Typ 1o Der
Modifikationsfall 4 wird ausgewählt^ wenn sowohl das Dateablt als
auch das Sehlüsselbit 1 isto In diesem Falle beschränkt sich j j die Modifikation im Falle einer Chiffrierung des Schlüssels auf | :eine Permutation vom Typ D0 Bei einer Dechiffrierung wiEd sfeatt=· : ;dessen eine Permutation vom Typ 3 und eine Substitution von Typ 1 ! ausgeführt,, Dadurch entspricht die Modifikation des Typs 3 bei der, ■Chiffrierung öer Modifikation des Typs 4 fo©i der Dechiffrierung ; 'und umgekehrtο !
Di® Tabelle I besieht sich auf das hierin beschriebene Schaltungsbeispielff bei dem die sequentiell zu verarbeitenden Datensegmente jeweils aus einem Bit bestehen und die Verarbeitung
lunter Steuerung jeweils eines Schlüsselbits erfolgt. Die Er-
GE 976 018
809827/0037
j findung ist jedoch auf diesen Sonderfall nicht beschränkt. Wenn die sequentiell zu verarbeitenden Datensegmente beispielsweise aus zwei Bits bestehen, die unter Steuerung von 2-Bit-Segmenten des Schlüssels verarbeitet werden, ergeben sich 16 Auswahlmöglichjkeiten für unterschiedliche Modifikationsarten. Hierdurch kann die Anzahl der verschiedenen Modifikationsschritte und die Zahl ihrer jKombinationen erhöht werden. Es ist auf diese Weise möglich, den
1verschiedenen Modifikatioasfallen solche Modifikationsarten zuzu-
[ordnen, die den gewünschten Fersehiüeseiungsbedingungen entsprechen. JEs ist ferner möglich, die Zuordnung der Modifikationsschritte zu jden Modifikationsfällen von Zeit zu Zeit abzuändern^ um dadurch (die Sicherheit der Verschlüsselung zu erhöhsna
Ausschlaggebend für die Wirksamkeit der Modifikationen des Chiffrierschlüssels ist es, daß jade Modifikation eine völlig veränder-'te Folge von Schlüsselbits erzeugt» Da die Modifikationen in Abhängigkeit von den Bits der au verschlüsselnden Daten erfolgen, wird sichergestellt; daß jedes Bit eines verschlüsselten Datenfeldes eine Funktion eines joden Bits des ursprünglichen, unverschlüsselten Datenfeldes wad eines jeden Bits des Gfaiffriersehlüssals ist»
Die Einrichtung von Fig» 2 bis 5
'Die in Fig„ 2 dargestellte Chiffrier/Dschiffriereiarichtung weist 'ein Datenregister 30 a»f B das zur Aufnahme eines su ^erschlüssela=* 'den Dateafeldes dient«, Das Dstearegiater 30 besitzt 128 Bitstellea«, :Es eignet sieb, damit aur Speicherung ©ines Datenfeldes von maxiiaal 16 Bytes Längeo Die Eingangsdaten werden über eine Sammelleitung !byteweise zugeführt» Die aeht Adern dar Sammelleitung 31 sind jmit den Eingängen von acht benachbarten Bitstellen am rechten 'Rand des Datenregistsrs 30 verbundene Das Datenregister 30 ist :als Schieberegister ausgeführt,? dem Schiebetaktisnpulse über ei- |ne Leitung 33 zugeführt werden, von denen jedss ©ine Stellenver- !Schiebung um eine Stelle nach links bewirkte Mach jeder Ein-'speicheriang eines Eingangsdatenbytes im Register 30 wird diesem
GE 976 018
009827/0037
- as -
von einer Steuerschaltung 34 in noch zu beschreibender Weise über eine Leitung TEf eine ODER-Schaltung 35 und die Leitung 33 eine Serie von acht Taktimpulsen zugeführt, die eine Verschiebung des !gespeicherten Bytes um ein Bytefeld nach links bewirkt. Daraufjhiη wird das nächste Byte zugeführt, usw., bis das gesamte Datenj feld linksbündig im Datenregister 30 gespeichert ist«, Die Herkunft (der Eingangsdatenbytes hängt von der jeweiligen Anwendung der •Chiffrier/Dechiffriereinrichtung von Fig. 2 ab. Die Bytes können "beispielsweise von der Eingabeeinrichtung eines tastengesteuerten !Terminals stammen oder vom Ausgang des Rechenwerks einer Verarbeiitungseinheit, das Resultatdaten erzeugt, die dem Inhalt einer in !verschlüsselter Form gespeicherten Datenbank hinzugefügt werden
I "■,,"-" !sollen,
r ■ -
Die Einrichtung von Fig. 2 weist ferner zwei Register 37, 38 auf, jdie nachfolgend auch als Register Ά und Register B bezeichnet werden und die zur Aufnahme des Chiffrierschlüssels dienen. Der Chiffrierschlüssel umfaßt 16 Bytes f von denen in jedem der Register 37, 38 eine Hälfte gespeichert wird. Die Register 37, 38 besitzen somit je 64 Bitstellen, Die Bytes des Chiffrierschlüssels !werden den Registern 37 und 38 über eine Sammelleitung 39 und UND-Schaltungen 40, 41 zugeführt. Jede der UND-Schaltungen 40, 41 ist einem Schlüsselbyte zugeordnet und besteht demgemäß aus acht UND-Gliedern, deren Ausgangsleitungen mit den Eingangsleitungen von acht Bitstellen in den Registern 37 und 38 verbunden sind. Die Eingangssammelleitung 38 besitzt acht Adern, die paralle] mit den Eingängen der acht UND-Glieder einer jeden UND-Schaltung 40, 42 verbunden sind. Jede der UND-Schaltungen 40, 41 weist einen Steuereingang ES1 bis ES16 auf, über den die UND-Glieder der betreffenden UND-Schaltung parallel geöffnet werden. Die Schlüsselbytes werden über die Sammelleitung 39 sequentiell den Registern 37, 38 zugeführt, wozu die UND-Schaltungen, 40, 41 nacheinander durch Anlegen je eines Steuersignals an die Leijtungen ES1 bis ES16 geöffnet werden.
GE 976 018 '
809827/0037
Eine Ausgangssammelleitung 43 des Registers 37 ist über eine UND-Schaltung 44 und eine ODER-Schaltung 45 sowie eine Sammelleitung 46 mit einem Schlüsselregister 48 verbunden; desgleichen weist das Register 38 eine Äusgangssammelleitung 49 auf, die über eine UND-Schaltung 50, die ODER-Schaltung 45 und die Sammelleitung 46 mit dem Schlüsselregister 48 verbunden ist. Die UND-Schaltung 44 wird durch Taktsignale T1y T5 geöffnet, die in noch zu beschreibender Weise erzeugt und über eine ODER-Schaltung , 51 zugeführt werden» Die UND-Schaltung 50 wird durch Taktsignale : auf einer Leitung T3 geöffnet.
Die Register 37 und 38 haben die Funktion von Pufferregistern, welche die beiden Hälften des Chiffrierschiüssels für die Verarbeitung verfügbar halten. Zmn Zwecke der Verarbeitung wird jeweils der Inhalt eines der Register 37 und 38 in das Schlüsselregister 48 überführt, das die gleiche Stellenzahl aufweist, wie eines der Register 37^ 38. Das Schlüsselregister 48 besteht aus swei einzelnen Registern KR1 und KR2, von denen jedes (32) Bitstellen aufweist und damit sur Aufnahme von vier Bytes dient. Das Register KR1 ist als Schieberegister ausgebildet, das eine ι Ausgangs/Eingangs-Rückkopplung 54 aufweist, und damit Ringverschiebungen bzw« Rotationsverscliiebungen über den gesamten Bitstelienbersich erlaubt. Der Serienausgang des Schieberegisters ! KR1 ist an den Elagar&g sisier UND-Schaltung 55 angeschlossen. Eine Exclusive-ODER-Schaltung 56 ist mit einem Eingang an den Ausgang der UND-Schaltung 55 und mit ihrem zweiten Eingang an einen Serienausgang 57 des Datenregisters 30 angeschlossen.
Die Exclusive-ODER-Schaltung 56 führt die sequentiellen Substitutionen der Schritte 16, 19 und 23 von Fig. 1 aus. Ihr Ausgang ist über eine UND-Schaltung 58 mit dem Serieneingang eines Pufferregisters 60 verbunden, das als Schieberegister ausgebildet ist. Die UND-Schaltungen 55 und 58 erhalten jeweils über einen zweiten Eingang Taktsignale ti von der Steuerschaltung 34 zugeführt. Demgemäß erfolgt zur Taktzeit ti eine Exclusive-ODER-Verknüpfung des am Ausgang 57 erscheinenden Datenbits mit dem am
6E 976 018
809827/0037
!Ausgang der UND-Schaltung 55 erscheinenden Schlüsselbit. Das Erjgebnis dieser logischen Verknüpfung wird in die äußerste linke .Bitstelle des Pufferregisters 60 eingespeichert» Dieses Register empfängt Schiebetaktimpulse t3 auf einer Leitung 61. Unter der Wirkung dieser Impulse werden die Datenbits jeweils um eine Stelle ■nach rechts verschobene Da die Verschieberichtung im Register 60 entgegengesetzt der Verschieberichtung im Register 30 ist^ er- ;gibt sich aus der Operation beider Register eine symmetrische Bitetellenversetsung im Sinne einer Drehungff wie oben erläutert wurde0 Diese Bitstellenversetsung entspricht den Schritten 17 und .21 von Fig. 1. Das Pufferregister 60 igelst einen Parallelausgang in Form einer Sammelleitung 62 auf? die über eine UND-Schaltung 64 mit dem Paralleleingang des Datenregisters 30 verbunden isto
Dem Schlüsselregister 48 ist ©ine Modi f ikations schaltung 74 zu-= ' geordnet^ welche die Oparation der Schritte 18, 22 und 24 von : |Figo 1 ausführtο Die Modifikationsschaltung 74 umfaßt eine arith= ' jmetisehe Substitutions ehaltung 75^ die mit den Registers KR1 und ', JKR2 verbunden ist,? sowie eine Moäifikationsart^Steuersohaltung TS0 ; 'die Eingangssignal über eine Leitung 77 vom Serienausgang des , .Sehiebaregisters KR1 und über eine Leitung 78 vom Serienausgang j j57 des Schieberegisters 30 (Datenregister) augeführt @rhälto Die i -fik®tionsart=Steuers0haltung ©rseugt in Abhängigkeit von den \
die Leitungen 77 B 78 sugeführtea Eingangssignalen Staues= !signale auf Leitungen ÄSTSHP und ¥ST1O Die Leitung &ST disat als St©uorleitung für die arithmstisehe Substitutionssehalt«ng 75 p während auf den Leitungen SHP and VST1 über eine ODSR=Sahal töag 79 unterschiedliche Folgen von Stellenversohiebeirapulsea an das Register KR1 geliefert werde»0
Im dargestellten Jtasführungsbeispiel besteht die arithaiefeisshe ^Si&stitufeioauschalfcmsg aus ©inem herkömmlichen Rdäi®si-msli 84 "guE 3]> ο im dessoa Eiagaagsleitungen sich je eine üEJB=Sehalteag 'ßS bsfiaiäeto Die Stellansahl des Äddie^weskes 84 entspricht der :<ä®o Rogist@Si3 KR1 qü®% 1%R2O Domgemäß weist jede der UNB^SehaitU :gea 85 «ad 86 eine ä®z Stellensahl je eines dieser Register ent
GE S>76 018
809827/003?
sprechende Anzahl UND-Glieder auf, die parallel durch Steuersignale auf der Leitung AST geöffnet werden. Die UND-Glieder der UND-Schaltung 85 sind über eine Sammelleitung 87 an die Ausgangsleitungen der Bitstellen im Register KR1 angeschlossen, und die UND-Glieder in der UND-Schaltung 86 sind über eine Sammelleitung 88 an die Ausgangsleitungen der Bitstellen im Register KR2 angeschlossen. Die Ausgänge des Addierwerks sind über eine Sammelleitung 89 mit den Eingängen der Bitstellen im Register KR1 verbunden» Am Ausgang des Addierwerks 84 sind nicht dargestellte Puffer- oder Verzögerungsschaltungen angeordnet, die einen stabilen Schaltzustand zwischen dem Eingang 87 und dem Ausgang 89 des Addierwerkes gewährleisten. Da im Register KR1 jeweils die eine Hälfte (4 Bytes) und dem Register KR2 die andere Hälfte (4 Bytes) des im Schlüsselregister 48 gespeicherten Schlüsselfeldes enthalten ist, wird das Addierwerk 84 nach Empfang eines Steuersignals auf der Leitung AST eine Addition dieser beiden Schlüsselwort-Felder durch, wobei das Ergebnis über die Sammelleitung 89 im Register KR1 gespeichert wird. Der ursprüngliche Inhalt des Registers KR1 ist somit Gegenstand einer Substitutionsoperation, indem der Inhalt des Registers KR1 durch die vom Addierwerk 84 gebildete Summe ersetzt wird.
Die Fig. 4 zeigt einen Teil der I-loäifikatioasart-Steuerschaltung 76. Diese Schaltung weist ©inen Decodierer 92 &nf, mit dessen Eingang die beiden Leituagsa 77* IQ von FIg. 1 verbanden sind« In Abhängigkeit von der Kombination öer auf diesen Leitungen <srscheinendsn Eingangssignal© liefert der Decodierer §2 Ausgangssignale Ct s Q2e C2e Q& &nS Lsltm^on 93 bis 3S o Di© Modifikationsart-Steuerseiialfcung 7β bssifest fsrnsr ein© bistabile !',ippschal= tung BBβ die als Betriebsart-Steuerschalt'aag diente Wenn eine Chiffrieroperation auszuführen ist* bleibt die bistabile Kippschaltung 98 ist Ruhezustand (O-Zustaad). Wenn dagegen eine Bechiffrieroperation auszuführen ist, wird sie Beginn dieser Operation an eine Leitung 99 ein Dechiffrier-Steuersignal V/E angelegt, das die Kippschaltung 98 in den Elns-Zustand stellt. Die
GE 976 018
809827/0037
komplementären Ausgangsleitungen 100 und 101 der Kippschaltung 98 sind zusammen mit den Leitungen 93 bis 96 an UND-Schaltungen 102 und 103 angeschlossen. Die UND-Schaltung 102 enthält vier UND-Glieder 105 bis 108, von denen jedes über einen Eingang Taktsignale t3 zugeführt erhält. Jedes der UND-Glieder 105 bis 108 ist über einen zweiten Eingang mit einer der Leitungen 93 bis 96 verbunden. Außerdem ist das UND-Glied 107 mit einem weiteren Eingang an die Ausgangsleitung 100 der Kippschaltung 98 und das UND-Glied 108 mit einem weiteren Eingang an die Ausgangsleitung 101 dieser Kippschaltung angeschlossen« Die Ausgänge der UND-Glieder 105 bis 108 sind über ein ODER-Glied 109 mit der Leitung AST verbunden. Die UND-Schaltung 102 liefert somit zur Taktzeit t3 ein Ausgangssignal auf der Leitung AST, wenn der Decodierer Auswahlsignale C1 und C2 auf den Leitungen 93 und 94 erzeugt. Sie liefert weiterhin ein Ausgangesignal auf der Leitung AST bei Vorliegen eines Auswah!signals CS^ wenn die bistabile Kippschaltung 98 im O-Zustand steht und damit eine Chiffrieroperation anzeigt, sowie bei Vorliegen eines Auswahlsignals C4, wenn sich die Kippschaltung 98 im 1-Zustand befindet und damit eine Dechiffrieroperation anzeigt.
Die UND-Schaltung 103 besteht aus sechs UND-Gliedern 112 bis 118, von denen jedes über einen ersten Eingang Taktsignale t2 zuge führt erhält. Das UND-Glied 112 ist mit einem zweiten Eingang an die Ausgangsleitung 93 des Decodierers 92 angeschlossen, und das UND-Glied 117 ist über einen zweiten Eingang an die Leitung 94 angeschlossen. In der gleichen Weise sind die UND-Glieder 114 und 115 mit je einem zweiten Eingang an die Leitung 95 und die UND-Glieder 113 und 116 mit je einem zweiten Eingang an die Leitung 96 angeschlossen. Die UND-Glieder 113 und 115 erhalten desweiteren jeweils über einen dritten Eingang ein Signal von der Ausgangsleitung 100 der bistabilen Kippschaltung 98 zugeführt, und ebenso erhalten die UND-Glieder 114 und 116 jeweils über einen dritten Eingang ein Signal von der Ausgangsleitung 101 der Kippschaltung 98 zugeführt. Die Ausgänge der UND-Glieder 112 bis
GE 976 018
809827/0037
114 sind über ein ODER-Glied 118 mit einer Leitung VST1 verbunden, die Ausgänge der UND-Glieder 115 und 116 sind über ein ODER-Glied mit einer Leitung VST5 verbunden und der Ausgang des UND-Gliedes 117 ist mit einer Leitung VST17 verbunden. Die UND-Schaltung 103 liefert somit jeweils zur Taktzeit t2 ein Ausgangssignal auf der Leitung VST1, wenn der Decodierer 92 ein Auswahlsignal C1 erzeugt, wenn der Decodierer ein Auswahlsignal C4 erzeugt und die Kippschaltung 98 zu diesem Zeitpunkt durch ein Signal auf ihrem Ausgang 100 eine Chiffrieroperation anzeigt und schließlich auch dann, wenn der Decodierer ein Auswahlsignal C3 auf der Leitung 95 erzeugt und zu diesem Zeitpunkt die Kippschaltung 98 über ihre Ausgangsleitung 101 eine Dechiffrieroperation anzeigt. Die UND-Schaltung 103 liefert zur Zeit t2 ein Signal auf der Leitung VST5, wenn der Decodierer ein Auswahlsignal C3 erzeugt und die Kippschaltung 98 eine Chiffrieroperation anzeigt, und wenn der Decodierer ein Auswahlsignal C4 erzeugt und die Kippschaltung 98 eine Dechiffrieroperation anzeigt. Schließlich wird zur Taktzeit t2 ein Signal auf der Leitung VST17 unabhängig vom Zustand der Kippschaltung 98 erzeugt, wenn der Decodierer 92 ein Auswahlsignal C2 liefert.
Die Leitung AST führt, wie bereits erwähnt, zu den UND-Schaltungen 85 und 86 am Eingang des Addierwerkes 84. Das von der ODER-Schaltung 109 gelieferte Signal öffnet diese UND-Schaltungen und bewirkt damit, daß das Addierwerk 94 eine Additionsoperation ausführen kann. Die Leitung VST ist über die ODER-Schaltung 79 mit dem Schiebetakt-Eingang des Registers KR1 verbunden und bewirkt in diesem eine Stellenverschiebung um eine Position nach links. Die Leitungen VST5 und VST17 führen zu einem weiteren Teil 120 (Fig. 5) der Modifikationsart-Steuerschaltung 76. Die Leitung VST5 ist mit dem Eingang einer bistabilen Kippschaltung 122 verbunden, deren Ausgang an eine UND-Schaltung 123 angeschlossen ist. Ein zweiter Eingang der UND-Schaltung 123 empfängt Impulse von einem Taktsignalgenerator 124. Wenn ein Signal auf der Leitung VST5 die Kippschaltung 122 in den 1-Zustand gestellt
GE 976 018
809827/0037
!hat, öffnet diese über ihren Ausgang die UND-Schaltung 123, die ι daraufhin Taktsignale vom Taktgenerator 124 zum Zähler 125 hln-1 durchläßt. Diese Impulse werden außerdem über eine ODER-Schaltung 126 der Leitung SHP zugeführt, über die sie zur ODER-Schaltung 79 (Fig. 2) und von dort zum Schiebetakteingang des Registers KR1 gelangen. Der Zähler 125 besitzt eine Zählkapazität •von wenigstens fünf; beispielsweise kann es sich um einen dreistelligen Binärzähler handeln. Er liefert über einen Ausgang 128 ein Signal, wenn er die Zählposition 5 erreicht hat. Dieses !Signal wird über eine Leitung 129 dem Rückstelleingang der Kippschaltung 122 zugeleitet und bringt diese in den Nuil-Zustand, in der sie die UND-Schaltung 123 sperrt, so daß keine weiteren ^Impulse vom Generator 124 zur Leitung SHP gelangen können. Die Schaltung 122 bis 129 liefert somit Serien von jeweils fünf Schiebetaktimpulsen zum Register KR1.
Die Signale auf der Leitung VST17 steuern eine gleichartige !Schaltung, die eine bistabile Kippschaltung 132, eine UND-Schaljtung 133 und einen Zähler 135 umfaßt und die ebenfalls vom Taktgenerator 124 gespeist wird. Die Kippschaltung 132 öffnet die UND-Schaltung 133# die Taktimpulse sowohl an dem Zähler 135 als !auch über die ODER-Schaltung 126 an die Leitung SHP abgibt. Der (Zähler 135 besitzt mindestens die Zählkapazität 17? er kann beispielsweise als fünfstufiger Binärzähler ausgebildet seine Wenn !der Zähler 135 die ^ählstellung 17 erreicht hat, erzeugt er auf einer Ausgangsleitung 138 ein Signal; das über eine Leitung 139 izurn Rückstelleingang der Kippschaltung 132 zurückgeführt wird !und diese in den NuI!-»dastand stellt? so daß die UND-Schaltung j 133 geschlossen wird sand keine weiteren Taktimpulse zur Leitung SHF geliefert werden könaen«, Die Schaltung 132, 133, 13S47 138 und 139 erzeugt somit nach Auftreten eines Signales auf ä©r Leitung VST17 eine §θ屩 von 17 Schiebetaktimpulsen auf der Leitung SHP; die über die ODER-Schaltung 79 dem Schiebetakteingang des Registers KR1 zugeführt werden und dessen Inhalt um 17 Positionen nach links verschieben, wobei di@ am linken Ende des Regi-
GE 976 018
809827/0037
U
"*" 2658055
sters KR1 austretenden Schlüsselbits über die Rückführleitung
54 an den Serieneingang des Registers KR1 zurückgeleitet werden (Rotationsverschiebung).
Zur zusammenfassenden Erläuterung der Funktion der Schaltungsteile 48 und 74 von Fig. 2 wird auf die folgende Tabelle II Bezug genommen. Diese Tabelle ist ähnlich aufgebaut wie die Tabelle I und zeigt für das Schaltungsbeispiel der Fign. 2, 3 und 4 die einzelnen Modifikationsoperationen in Zuordnung zu den vier möglichen Modifikationsfällen:
GE 976 018
809827/0037
- 21 -
TABELLE II
Auswahl-
Steuersignal
Datenbit von
Leitung 78
Schlüsselbit von
Leitung 77
Modifikationsart Chiffrieren Dechiffrieren
C1 0 0 RotationsVerschiebung in
KR1 um 1 Position?
(KR1) = (KR1) + (KR2)
Rotationsverschiebung in
KR1 um 1 Position;
(KR1) = (KR1) + (KR2)
C2 1 0 Rotationsverschiebung in
KR1 um 17 Positionen;
(KR1) = (KR1) + (KR2)
RotationsVerschiebung in
KR1 um 17 Positionen;
(KR1) = (KR1) + (KR2)
C3 0 1 Rotationsverschiebung in
KR1 um 5 Positionen;
(KR1) = (KR1) + (KR2)
Rotationsverschiebung in
KR1 um 1 Position
C4 1 1 Rotationsverschiebung in
KR1 um 1 Position
RotationsVerschiebung in
KR1 um 5 Positionen;
(KR1) = (KR1) + (KR2) <J>
cn
OO O CB
GE y/6
-22-
Aus der Tabelle II ist ersichtlich, daß zur wiederholten Modifikation der Schlüsselbits gemäß den Schritten 18, 22 und 24 von Fig. 1 bei der dargestellten Einrichtung drei verschiedene Rota- ; tionsverschiebungen und eine Bitfeldaddition dienen. Die Rotations-jverschiebungen werden durch einmalige oder wiederholte Stellenverschiebungen des im Register KR1 gespeicherten Bitfeldes des Chiffrierschlüssels ausgeführt. Die Teilfeldaddition wird dadurch realisiert, daß das Schlüsselbitfeld im Register KR2 zum Schlüsselbitfeld im Register KR1 addiert und das Ergebnis im Register KR1 gespeichert wird. Im ersten Falle handelt es sich um Permutationsoperationen, im letzteren Falle um eine Substitution. Beide Modifikationsschritte werden nacheinander ausgeführt; die Stellenverschiebungen zur Taktzeit t2 und die Teilfeldaddition zur Taktzeit t3. Dies geschieht jeweils zwischen zwei Substitutionsoperationen der Datenfeldbits, die jeweils zur Taktzeit ti statt- | finden.
Die Fig. 5 zeigt ein Blockschaltbild der Steuerschaltung 34, anhand dessen die Erzeugung der Taktsignale ti, t2, t3 sowie verschiedener anderer Taktsignale deutlich wird. Ein Startsignal auf einer Leitung 143 betätigt eine monostabile Kippschaltung 144, die bei ihrer Rückkehr in den Ruhezustand ein Ausgangssignal erzeugt, das als Steuersignal auf einer Leitung T1 erscheint und zugleich eine weitere monostabile Kippschaltung 145 betätigt, die bei ihrer Rückkehr in den Ruhezustand durch ein Ausgangssignal eine bistabile Kippschaltung 146 in den Eins-Zustand setzt und über eine ODER-Schaltung 148 eine weitere monostabile Kippschaltung 149 betätigt. Das am Ausgang der monostabilen Kippschaltung 149 erscheinende Signal wird als Taktsignal ti der ;gleichnamigen Steuerleitung zugeführt und betätigt außerdem eine .monostabile Kippschaltung 150, deren Ausgang das Taktsignal t2 liefert.
Wie anhand der Fig. 4 erläutert wurde, wird das Taktsignal t2 zur Erzeugung der Steuersignale VST1, VST5 und VST17 benutzt. Die Steuersignale VST5 und VST17 bewirken im Schaltungsteil 120 der
GE 976 018
809827/0037
Modifikationsart-Steuerschaltung 76 die Erzeugung von Schiebeimpuls-Sequenzen unter Steuerung der Zähler 125 und 135. Die Ausgangsleitungen 128 und 138 dieser Zähler führen unter anderem zu zwei Eingängen einer ODER-Schaltung 152, die über einen weiteren Eingang auch das Steuersignal VST1 von Fig. 4 zugeführt erhält. Die ODER-Schaltung 152 liefert ein Betätigungssignal an eine monostabile Kippschaltung 154, deren Ausgang einerseits mit der Steuersignalleitung t3 und andererseits mit dem Eingang eines voreinstell Bitzählers 156 verbunden ist. Die maximale Zählkapazität des Bitzählers 156 entspricht der Bitstellenzahl des Registers 30. Wenn dieses Register, wie oben angenommen, 128 Bitstellen aufweist, muß der Bitzähler 156 eine maximale Zählkapazität von 128 besitzen, so daß er als siebenstufiger Binärzähler ausgebildet sein kann. Die Aufgabe des Bitzählers 156 besteht darin anzuzeigen, wann das letzte Bit aus dem Datenregister 30 durch die Substitutionsschaltung 56 verarbeitet worden ist.
Die Einrichtung von Fig. 2 ist in der Lage, Datenfelder variabler Länge zu verarbeiten. Die Länge dieser Datenfelder wird in für sie bekannter Weise durch einen Längencode zum Ausdruck gebracht, der beispielsweise die Bytezahl ausdrückt, die ein Datenfeld aufweist, ίDie Operation des Bitzählers 156 muß diesem Umstand Rechnung tra- !gen. Zu diesem Zweck ist der Bitzähler 156 als voreinstellbarer Zähler ausgebildet, der vom jeweiligen Voreinstellwert gegen Null 'zählt und bei Erreichen der Zählstellung Null ein Signal auf einer| ι Ausgangs leitung 155 abgibt. Der Zähler 156 weist einen Voreinstellj· !eingang 151 auf, der mit dem Ausgang eines Decodierers 153 ver-
ibunden ist. Dem Decodierer 153 wird aus einem Längencode-Register ;140 über eine UND-Schaltung 141 der zum jeweils zu verarbeitenden !Datenfeld gehörende Längencode zugeführt. Hierbei handelt es sich |um einen binären Wert, welcher die Zahl der Bytes angibt, aus der \das betreffende Datenfeld besteht« Dieser Längencode wird im De-
codierer 153 umgesetzt in einen Binärwert, der die Zahl der Bits j angibt, die das gleiche Datenfeld aufweist. Der Decodierer 153 führt somit eine Umsetzung einer Bvtezahl in eine entsprechende
GE 976 018
SQ9827/0037
Bitzahl aus. Der binäre Ausgangswert des Decodierers 153 wird über die Leitung 151 in den Bitzähler 156 übertragen, indem dieser Zähler auf den Binärwert voreingestellt wird, der am Ausgang des Decodierers 153 erscheint. Ausgehend von diesem voreingestellten Wert wird der Zähler 156 in der Folge durch die ihm von der monostabilen Kippschaltung 154 zugeführten Zählimpulse schrittweise dekrementiert, bis der Wert Null erreicht ist.
Die oben erwähnte monostabile Kippschaltung 145 liefert unter anderem über eine ODER-Schaltung 157 ein Signal an eine bistabile Kippschaltung 158, die dadurch in den Eins-Zustand gesetzt wird. Da der Rückstell-Eingang der bistabilen Kippschaltung 158 mit dem Ausgang 155 des Bitzählers 158 verbunden ist, auf dem dieser nach Erreichen der Zählstellung Null ein Signal abgibt, bleibt die bistabile Kippschaltung 158 jeweils solange im Eins-Zustand, solange noch zu verarbeitende Datenbits im Datenregister 30 enthalten sind. Die bistabile Kippschaltung 158 liefert in diesem Zustand ein Ausgangssignal an eine UND-Schaltung 159 und öffnet diese für den Durchlaß von Ausgangssignalen von der monostabilen Kippschaltung 154, die einem zweiten Eingang der UND-Schaltung zugeführt werden. Der Ausgang der UND-Schaltung 159 ist über eine Rückführleitung 160 an einen Eingang der ODER-Schaltung 148 angeschlossen, deren Ausgangssignale die monostabile Kippschaltung 149 betätigen. Solange daher die UND-Schaltung 159 ge- \ öffnet ist, wird die Erzeugung von Taktsignalen ti, t2 und t3 zyklisch wiederholt. Die Anzahl der Wiederholungszyklen entspricht der Stellenzahl des zu verarbeitenden Datenfeldes im Register 30.
Die Ausgangssignale des Bitzählers 156 werden unter anderem einem ersten Eingang einer UND-Schaltung 162 zugeleitet, die mit einem < zweiten Eingang an den Eins-Ausgang der bistabilen Kippschaltung 146 angeschlossen ist. Das Ausgangssignal der UND-Schaltung 162 betätigt eine monostabile Kippschaltung 163, deren Ausgang mit der Steuerleitung T3 und mit einer weiteren monostabilen Kipp-
GE 976 018
009827/0037
schaltung 164 verbunden ist. Die letztere Kippschaltung erzeugt nach ihrer Betätigung bei der Rückkehr in ihren Ruhezustand ein Signal, das unter anderem zur Rückstellung der bistabilen Kippschaltung 146 in den Ruhezustand dient, wodurch die UND-Schaltung 162 für das weitere Passieren von Ausgangsimpulsen des Zählers 156 zur monostabilen Kippschaltung 163 gesperrt wird. Das Ausgangssignal der monostabilen Kippschaltung 164 dient ferner dazu, eine weitere bistabile Kippschaltung 166 in den Eins-Zustand zu setzen, in welchem diese eine UND-Schaltung 168 für den Durchgang eines Ausgangsimpulses des Bitzählers 156 vorbereitet. Eine weitere Funktion des Ausgangssignales der monostabilen Kippschaltung 164 besteht darin, über die ODER-Schaltung 148 die monostabile Kippschaltung 149 zu betätigen und damit die zyklische Erzeugung von Taktsignalen ti, t2, t3 wieder zu starten. Die zyklische Wiederholung dieser Taktsignalsequenz wird dadurch gewährleistet, daß das Ausgangssignal der monostabilen Kippschaltung 164 auch der ODER-Schaltung 157 zugeführt wird, deren Ausgangssignal die bistabile Kippschaltung 158 in den Eins-Zustand bringt, in welchem diese die UND-Schaltung 159 geöffnet hält für die Rückführung der Ausgangssignale der monostabilen Kippschaltung 154 über die Leitung 160 und die ODER-Schaltung 148 zur monostabilen Kippschaltung 149. Zuvor wurde durch das Ausgangssignal des Bitzählers 156 über eine ODER-Schaltung 147 die UND-Schaltung 141 geöffnet, um den Bitzähler 156 erneut mit dem Bitäquivalent des Längencodes zu laden.
:Wenn der Bitzähler 156 zum nächsten Mal seine Zählstellung Null !erreicht, liefert er wiederum ein Ausgangssignal auf der Leitung =155, das in diesem Fall an der UND-Schaltung 162 unwirksam bleibt, da diese durch das fehlende Ausgangssignal des Flip-Flops 146 geschlossen ist. Das Ausgangssignal des Zählers 156 passiert jedoch die durch die bistabile Kippschaltung 166 geöffnete UND-Schaltung 168 und betätigt damit eine monostabile Kippschaltung 170, die ein Taktsignal T5 auf der gleichnamigen Steuerleitung erzeugt und außerdem eine weitere monostabile Kippschaltung 172
GE 976 018
809827/0037
betätigt. Das Ausgangssignal der monostabilen Kippschaltung 172 stellt die bistabile Kippschaltung 166 in den Null-Zustand zurück, startet über die ODER-Schaltung 148 einen neuen Durchlauf der monostabilen Kippschaltungen 149, 150, 154 und setzt außerdem über die ODER-Schaltung 157 die bistabile Kippschaltung 158 wieder in den Eins-Zustand, die zuvor durch das letzte Ausgangssignal des Bitzählers 156 rückgestellt worden war. Des weiteren dient das Ausgangssignal der monostabilen Kippschaltung 172 dazu, eine bistabile Kippschaltung 174 in den Eins-Zustand zu setzen. Die bistabile Kippschaltung 174 liefert in diesem Zustand ein Vorbereitungssignal an eine UND-Schaltung 176, deren zweiter Eingang mit der Ausgangsleitung 155 des Bitzählers 156 verbunden ist. Die Ausgangsleitung der bistabilen Kippschaltung 174 ist außerdem mit einer Steuerleitung T6 verbunden. Der Ausgang der UND-Schaltung 176 liefert ein Signal, daß das Ende einer Chiffrier/Dechiffrieroperation anzeigt und dient auch zur Rückstellung der bistabilen Kippschaltung 174.
Die Taktsteuerschaltung 34 von Fig. 5 enthält des weiteren eine ί Schaltung zur Erzeugung von Taktsignalen TE zur Eingabe der Eingangsdatenbytes in das Datenregister 30. Diese Schaltung besteht aus einer bistabilen Kippschaltung 178, einer UND-Schaltung 179 und einem Zähler 180, der eine Zählkapazität von 8 aufweist. Die bistabile Kippschaltung 178 empfängt ein Datenbyte-Eingabe- j steuersignal DBE, das von der die Datenverschlüsselung oder Ent- j ιschlüsselung anfordernden Einheit einer Datenverarbeitungsanlage j !geliefert wird zur Anzeige dafür, daß dem Datenregister 30 zu verschlüsselnde oder zu entschlüsselnde Daten zugeführt werden I sollen. Das Signal DBE setzt die bistabile Kippschaltung 178 in | den Eins-Zustand, in welchem sie die UND-Schaltung 179 für den I !Durchlaß von Taktimpulsen vom Ausgang des Taktgebers 124 vorbereitet. Die am Ausgang der UND-Schaltung 179 erscheinenden Takt- ' .impulse TE werden über die gleichnamige Leitung, die ODER-Schal- ι tung 35 und die Leitung 33 (Fig. 2) dem Schiebetakteingang des Datenregisters 30 zugeführt. Gleichzeitig gelangen die Taktsi-
GE 976 018
809827/0037
gnale vom Ausgang der UND-Schaltung 179 zum Zähler 180 und schalten diesen weiter, bis er seine achte Zählstellung erreicht und ein Ausgangssignal auf der Leitung 181 erzeugt. Dieses Signal stellt die bistabile Kippschaltung 178 in den Null-Zustand zurück, wodurch die UND-Schaltung 179 geschlossen wird. Auf der Leitung TE treten somit jeweils Serien von acht Impulsen auf, die zur Verschiebung des Inhalts des Registers 30 um acht Stellen nach links dienen.
!Für die Eingabe der Schlüsselbytes über die Sammelleitung 39 in die Register 37 und 38 übt ein Steuerzähler 184 eine ähnliche Steuerfunktion aus wie die Schaltung 178 bis 181 für die Daten-]eingangsbytes. Der Steuerzähler 184, der durch Schlüsselbyte-Eingabesteuersignale KBE von der Datenverarbeitungsanlage betätigt wird, weist sechzehn Zählpositionen auf, von denen jede eine der Leitungen ES1 bis ES16 mit Steuersignalen speist. Jede der Leitungen ES1 bis ES16 ist mit einer der UND-Schaltungen 40 bzw.
41 in der aus Fig. 2 ersichtlichen Weise verbunden. Ein auf die- j ser Leitung auftretendes Signal öffnet die betreffende UND-Schaltung und gestattet damit die Übertragung des zu diesem Zeitpunkt auf ■ der Sammelleitung 39 erscheinenden Schlüsselbytes in das Register 37 oder 38.
ι Die Arbeitsweise der Chiffrier/Dechiffriereinrichtung von Fig. 2
'Nachfolgend wird anhand des Impuls-Zeitdiagramms von Fig. 6 und mit Bezugnahme auf Fig. 1 die Arbeitsweise der Einrichtung von Fig. 2 zusammenfassend beschrieben.
iAm Beginn einer Chiffrier/Dechiffrieroperation wird aus dem zu chiffrierenden oder dechiffrierenden Datenstrom ein bis zu sechzeh
'Byteiumfassendes Datenfeld dem Datenregister 30 zugeführt. Dies j geschieht, indem die Eingangsdatenbytes nacheinander an die Sammelleitung 31 angelegt werden und gleichzeitig ein Datenbyte-Eingangssteuersignal DBE erzeugt wird, das die Einspeicherung
GE 976 018
809827/0037
eines Datenbytes über die UND-Schaltung 32 in die acht benachbarten Bitstellen am rechten Rand des Datenregisters 30 bewirkt. Das Signal DBE löst außerdem in der in Verbindung mit Fig. 5 beschriebenen Weise die Erzeugung eines Zyklus von acht Taktsignalen TE aus, die eine Verschiebung des Inhalts des Registers 30 um acht Stellen nach links bewirken. Hierdurch werden die acht Bitstellen am rechten Rand des Registers 30 freigemacht zum Empfang des nächsten Bytes. Dieser Vorgang wiederholt sich sechzehn mal, so daß die Eingangsdaten linksbündig im Register 30 stehen. Vor dem Beginn der Eingabe des Datenfeldes in das Registers 30 wurde der Datenfeld-Längencode in das Register 140 eingegeben. Das Eingangssteuersignal DBE gelangt über die ODER-Schaltung zur UND-Schaltung 142 und öffnet diese zur Voreinstellung des Bitzählers 156 entsprechend dem Bitäquivalent des Längencodes,
Gleichzeitig oder zeitlich überlappt mit der Eingabe der Datenbytes werden über die Sammelleitung 39 die Schlüsselbytes den Registern 37 und 38 zugeführt. Dies geschieht in der beschriebenen Weise unter Steuerung des Zählers 184 über die UND-Schaltung und 41, Zwischen je zwei Schlüsselbytes erzeugt die die Chiffrierung/Dechiffrierung anfordernde Einheit der Datenverarbeitungsanlage ein Schlüsselbyte-Eingabesteuersignal KBE, das den Steuerzähler 184 weiterschaltet. Dieser Vorgang wiederholt sich, bis alle sechszehn Bytes des Chiffrierschlüssels in die beiden Register 37 und 38 eingegeben worden sind, über eine Leitung 99 (Fig, 4) wird ein Betriebsart-Steuersignal V/E der bistabilen Kippschaltung 98 zugeführt. Das Signal V/E ist im Falle einer angeforderten Chiffrieroperation eine binäre Null, so daß die Kippschaltung 98 im Ruhezustand bleibt, und im Falle einer angeforderten Dechiffrieroperation eine binäre Eins, so daß die Kippschaltung 98 in den Eins-Zustand gesetzt wird. Für die nachfolgende Beschreibung wird angenommen, daß eine Chiffrieroperation angefordert ist und das Signal V/E die Kippschaltung 98 in ihrem Ruhezustand beläßt.
GE 976 018
909827/0037
Ein Startsignal auf der Leitung 143 leitet die Chiffrieroperation ein, indem es über die monostabile Kippschaltung 144 ein Taktsignal auf der Leitung T1 auslöst. Dieses Taktsignal gelangt über die ODER-Schaltung 51 zur UND-Schaltung 44, die dadurch geöffnet wird, um den Inhalt des Registers A in das Schlüsselregister 48 zu übertragen. Hierbei wird der Inhalt des Registers A zu gleichen Teilen in die Register KR1 und KR2 eingespeichert. Im weiteren Verlaufe der Operation der Steuerschaltung 34 wird die Folgesteuerschaltung 149, 150, 154 in Tätigkeit gesetzt, die zunächst ein Taktsignal ti erzeugt. Dieses Taktsignal bewirkt durch Öffnen der UND-Schaltungen 55 und 58, daß das Datenbit in der äußersten linken Bitstelle des Registers 30 mit dem Schlüsselbit in der äußersten linken Bitstelle des Registers KR1 in der Exclusive-ODER-Schaltung 56 verknüpft wird und daß das Resultat dieser Verknüpfung in die äußerste linke Bitstelle des Pufferregisters 60 eingespeichert wird.
Das daraufhin von der Steuerschaltung 34 erzeugte Taktsignal t2 wird den UND-Schaltungen 103 zugeführt, um in Abhängigkeit von dem Datenbit auf der Leitung 78 und dem Schlüsselbit auf der Leitung 77 ein Steuersignal VST1, VST5 oder VST17 zu erzeugen. ' Zur Erläuterung sei angenommen, daß das Datenbit den Wert 1 und > das Schlüsselbit den Wert 0 hat. In diesem Falle liefert der · Decodierer gemäß Tabelle II ein Auswahlsteuersignal T2 auf der ' Iieitung 94, das über die UND-Schaltung 117 zur Bildung eines Steuersignals VST17 führt. Dieses Signal betätigt die Schaltung 132, 133, 135 zur Erzeugung einer Serie von 17 Schiebeimpulsen ' SHP in der oben beschriebenen Weise. Die Impulse SHP gelangen j
über die ODER-Schaltung 179 zum Schiebetakteingang des Registers KR1 und führen dort eine Rotationsverschiebung nach links um 17 ' Bitstellen aus. Danach wird über die ODER-Schaltung 152 die monostabile Kippschaltung 154 betätigt zur Erzeugung eines Taktsignals t3. Das Taktsignal t3 erzeugt zunächst über die durch das Signal auf der Leitung 94 vorbereitete UND-Schaltung 106 ein Steuersi-
GE 976 018
809827/0037
gnal AST, das einen AdditionsZyklus des Addierwerks 84 (Fig. 3) auslöst, der den Inhalt des Registers KR2 zum Inhalt des Registers KR1 addiert.
Außerdem wird das Taktsignal t3 über die ODER-Schaltung 35 und die Leitung 33 dem Register 30 zugeführt. Das Taktsignal t3 bewirkt über die ODER-Schaltung 35 und die Leitung 33 eine Linksverschiebung des Inhalts des Datenregisters 30 um eine Bitposition, wobei das soeben verarbeitete Bit im Register 30 verlorengeht und das zuvor an zweiter Stelle von links stehende Bit in die äußerste linke Bitstelle gelangt. Das Taktsignal t3 bewirkt ferner über die Leitung 61 eine Rechtsverschiebung des Inhalts des Pufferregisters 60 um eine Stelle, wodurch die äußerste linke Bitposition dieses Registers zur Aufnahme des Resultats der nächsten Substitutionsoperation freigemacht wird.
Damit ist die Verarbeitung des ersten Datenbits abgeschlossen. Dementsprechend wurde der Bitzähler 156 zur Taktzeit t3 um eine Zählposition zurückgeschaltet. Die vorausgehend erläuterte Position der Taktsignale ti bis t3 wiederholt nun für jedes im Daten- |register 30 enthaltene Bit. Der Zeitraum von der Verarbeitung des ersten Bits bis zur Verarbeitung des letzten Bits wird in Fig. 6 mit T2 bezeichnet. Dieser Zeitraum ist unterschiedlich lang, da er von der Länge des Datenfeldes im Register 30 und von den im Register KR1 auszuführenden Rotationsverschiebungen abhängt, idie ihrerseits von dem Null-Wert oder dem Eins-Wert der auf der !Leitung 78 erscheinenden Datenbits und den entsprechenden Werten !der auf der Leitung 77 erscheinenden Schlüsselbits bestimmt ,werden. In Fig. 6 wird lediglich für den zweiten Bitzyklus der {Phase T2 als Beispiel eine Rotationsverschiebung von 5 Stellen !dargestellt, die dem Modifikationsfall C3 entspricht.
Nachdem der Bitzähler 156 seine Zählstellung Null erreicht hat, liefert er auf der Leitung 155 ein Ausgangssignal, das über die UND-Schaltung 162 und die monostabile Kippschaltung 163 zur Erzeugung eines Taktsignals T3 führt. Das Taktsignal T3 wird
GE 976 018
809827/0037
!über eine ODER-Schaltung 81 (Fig. 2) dem Steuereingang der UND-iSchaltung 64 zugeführt, die den Inhalt des Pufferregisters 60 in das Datenregister 30 überträgt.
'Der Inhalt des Registers 30 stellt nun den Zustand dar, den das zu verschlüsselnde Datenfeld nach Ausführung des Schrittes 17 von Fig 1 einnimmt. Die Permutation des Schrittes 17 wurde durch die Bitstellenversetzung bei der gegenläufigen Verschiebung in den Registern 30 und 60 erreicht.
JDer neue Inhalt des Datenregisters 1 ist somit eine modifizierte Version der Eingangsdaten, die in der Folge einer erneuten Substitutionsoperation unterzogen wird gemäß Schritt 19 von Fig. 1. Diese Substitutionsoperation wird durch die im Register 38 gespei-Jcherte Hälfte des Chiffrierschlüssels gesteuert. Zu diesem Zweck wird unter der Wirkung des Taktsignals T3 der Inhalt des Registers 38 in der beschriebenen Weise in das Schlüsselregister 48
übertragen. Er ersetzt damit die zu diesem Zeitpunkt in den Registern KR1 und KR2 enthaltenen Schlüsselbits.
Die erneute sequentielle Exclusive-ODER-Verknüpfung des. Inhalts des Datenregisters 30 mit dem Inhalt des Schlüsselregisters erfolgt wiederum unter Steuerung der Taktimpulse ti bis t3 in der oben beschriebenen Weise, wozu die vom Taktsignal T3 betätigte monostabile Kippschaltung 164 die Schaltung 149, 150 und 154 für wiederholte Durchläufe in Tätigkeit setzt. Diese Durchläufe werden wiederum von dem über die UND-Schaltung 141 erneut voreingestellten Bitzähler 156 gezählt, der damit den Zeitraum T4 von Fig. 6 erfaßt. Der Bitzähler 156 liefert wiederum eine Anzeige auf der Leitung 155, wenn das letzte Bit des Datenregisters 30 verarbeitet worden ist. Zu diesem Zeitpunkt ist der Substitutionsschritt 19 von Fig. 1 beendet. Zur Vorbereitung des nächsten Substitutionsschrittes 23 wird wiederum eine Rückübertragung des Inhalts des Pufferregisters 60 in das Datenregister 30 vorgenommen. Die geschieht unter der Wirkung des Taktsignals T5, das vom letzten Ausgangssignal des Zählers 156 über die UND-
GE 976 018
809827/0037
Schaltung 168 und die monostabile Kippschaltung 170 ausgelöst worden ist. Das Taktsignal T5 gelangt über die ODER-Schaltung zur UND-Schaltung 64 und öffnet diese erneut für die übertragung vom Register 60 zum Register 30. Das Taktsignal T5 gelangt ferner über die ODER-Schaltung 51 zum Steuersignaleingang der UND-Schaltung 44 und bewirkt damit eine erneute übertragung des Inhalts des Registers 37 in das Schlüsselregister 48. Das letzte Ausgangssignal des Bitzählers 156 veranlaßt außerdem über die ODER-Schaltung 147 und die UND-Schaltung 141, daß der Bitzähler 156 erneut mit dem Bitlängenwert geladen wird, den der Decodierer 153 an seinen Ausgang liefert. Damit ist die Vorbereitung des Substitutionsschrittes 23 abgeschlossen.
Der Substitutionsschritt 23 wird im Impulszeitdiagramm von Fig.6 während der Periode T6 ausgeführt. Die während dieser Phase von der Exclusive-ODER-Schaltung 56 vorzunehmenden Bitsubstitutionen 'erfolgen in der gleichen Weise, wie es vorausgehend für die Zeitiabschnitte T2 und T4 erläatert wurde mit folgender Ausnahme: Die :am Ausgang der Exclusive-ODER-Schaltung 56 erscheinenden Resul-,tatsignale werden über eine UND-Schaltung 82 und die Leitung direkt dem Datenregister 30 zugeführt. Die Leitung 70 ist mit idem Eingang der äußersten rechten Bitstelle des Registers 30 !verbunden, so daß jedes Resultatbit der Exclusive-ODER-Schaltung j zunächst in diese Bitstelle eingespeichert wird, tilt dem auf die iBildung des betreffenden Resultatbits folgenden Taktsignal t3 erfolgt eine Verschiebung des Inhalts des Datenregisters 30 um eine Stelle nach links, so daß die äußerste rechte Bitstelle zur Aufnahme des nächsten Resultatbits der Schaltung 56 frei ist. Die UND-Schaltung 82 wird während der Periode T6 durch ein Taktsignal auf einer gleichnamigen Steuerleitung geöffnet, die an den Ausgang der bistabilen Kippschaltung 174 angeschlossen ist. Diese Kippschaltung wird durch ein Ausgangssignal der vom Taktsignal T5 betätigten monostabilen Kippschaltung 172 in jden Eins-Zustand gebracht und durch das folgende Ausgangssignal ;des Bitzählers 156 am Ende der Periode T6 über die UND-Schaltung 176 in den Null-Zustand zurückgestellt. Das Ausgangssignal der
GE 976 018
809827/0037
1%
UND-Schaltung 176 zeigt zugleich das Ende der Chiffrieroperation an. Das Register 30 enthält zu diesem Zeitpunkt rechtsbündig die chiffrierte Version der ursprünglich zugeführten Eingangsdatenbytes .
Die verschlüsselten Daten werden in der Folge byteweise über eine AusgangsSammelleitung 83 dem Datenregister 30 entnommen. Dies !geschieht in ähnlicher Weise wie die Zuführung der Eingangsdaitenbytes zum Register 30. Die acht Adern der Sammelleitung 83 ■sind mit den Ausgängen der acht benachbarten Bitstellen am linken •Ende des Datenregisters 30 verbunden und nach jeder Entnahme eines patenbytes erfolgt eine Verschiebung des restlichen Inhalts des [Registers 30 um acht Bitstellen nach links in der oben in Verbinjdung mit der Eingabe beschriebenen Weise.
Eine Dechiffrieroperation verläuft ebenso wie eine Chiffrieroperation mit Ausnahme der Schlüsselmodifikationen gemäß Schritt 18, 22 und 24 von Fig. 1, Am Beginn einer Dechiffrieroperation wird der Flip-Flop 98 (Fig. 4) über ein Eins-Eingangssignal V/E in den Eins-Zustand gesetzt, in welchem seine Ausgangsleitung 101 signalführend ist. Hierdurch wird eine Umschaltung in Bezug auf die vom Decodierer 92 erzeugten Auswahlsteuersignale C3 und C4 vorgenommen, während die Wirkung der Auswahlsteuersignale C1 und C2 unverändert bleibt. Die Umschaltung hat zur Folge, daß das Auswähleteuersignal C3 nicht die UND-Schaltung 115, sondern die UND-Schaltung 114 für einen Durchlaß der Taktsignale t2 vorbereitet, so daß anstelle eines Steuersignals VST5 ein Steuersignal VST1 erzeugt wird. Während das Taktsignal VST5 über die Schaltung 122, 123, 125 jeweils eine Serie von fünf Schiebeimpulsen SHP erzeugt, bewirkt das Steuersignal VST1 lediglich eine Stellenverschiebung im Register KR1 um eine einzige Bitstelle. Im übrigen ist die Wirkung des Steuersignals VST1 auf die Operation der Taktgeberschaltung 149, 150, 154 die gleiche wie die des
Ausgangssignals vom Zähler 125 auf der Leitung 128.
!Das Äuswahlsteuersignal C3 bleibt im Falle einer Dechiffrierung für die UND-Schaltung 102 unwirksam, d.h. es wird kein Auswahl-'steuersignal AST erzeugt und demgemäß auch keine Addition im Addierwerk S4 ausgeführt,
GE 976 018
809827/0037
UO
Wenn der Decodierer 92 während einer Dechiffrieroperation ein Auswahlsteuersignal C4 erzeugt, so wird, anstelle der UND-Schaltung 113 die UND-Schaltung 116 zum Durchlaß von Taktsignalen t2 vorbereitet. Es wird somit anstelle eines Steuersignals VST1 ein Steuersignal VST5 erzeugt, das eine Rotationsverschiebung im Register KR1 um fünf Stellen nach links bewirkt, anstatt eine Verschiebung um eine Stelle, wie sie das Steuersignal VST1 zur Folge haben würde. Das AuswahIsteuersignal C4 bereitet ferner bei einer Dechiffrieroperation die UND-Schaltung 108 vor für einen Durchlaß von Taktsignalen t3 zur Erzeugung eines Additionssteuersignals AST. Im Gegensatz hierzu bleibt die UND-Schaltung 108 während einer Chiffrieroperation geschlossen, womit in diesem Falle eine Additionsoperation in Übereinstimmung mit der Tabelle II unterbunden wird.
Die übrigen Operationen der Einrichtung von Fig. 2 verlaufen während der Dechiffrierung in der gleichen Weise wie bei einer Chiffrierung.
Abweichend von der dargestellten Einrichtung kann sowohl die Substitution durch die Schaltung 56 als auch die Substitution durch die Schaltung 75 durch andere für sich bekannte Substitutionsarten ersetzt werden. Beispielsweise kann anstelle einer Substitution durch logische oder arithmetische Verknüpfung eine Substitution durch Aufruf gespeicherter Werte treten. In einem solchen {Falle können beispielsweise die Eingangswerte der Schaltung 56 als Adreßwerte eines Speichers dienen, der an den adressierten Stellen vorgegebene Substitutionsbits enthält. Diese Betriebsweise ist besonders dann vorteilhaft anwendbar, wenn die sequentiell zu verarbeitenden Datensegmente und Schlüsselsegmente mehr als ein i Bit umfassen. In der gleichen Weise kann die arithmetische Substitutionsschaltung durch einen Speicher ersetzt werden, dem der !inhalt der Register KR1 und KR2 oder jeweils ein Teil dieses In- !halts als Adreßwerte zugeführt werden, um vorgegebene Substitutionswerte aufzusuchen und in das Register KR2 und/oder KR2 zu I
GE 976 018
803827/0037
-3s-
übertragen. Die Verwendung von Speichern zur Ausführung der Substitutionsoperationen hat den Vorteil, daß die Substitutionsart leicht abgeändert werden kann durch einfaches Austauschen der gespeicherten Substitutionswerte.
In weiterer Abänderung der beschriebenen Einrichtung kann die Permutation der Schlüsselbits anstatt durch Stellenverschiebung auch durch gesonderte Schaltungen erfolgen, die parallel oder in Serie zur Substitutionsschaltung 75 angeordnet sind und in für sich bekannter Weise Stellenversetzungen durch fest oder variabel schaltbare Leitungsversetzungen erzeugen.
Bei der dargestellten Chiffrier/Dechiffriereinrichtung werden die Modifikationsart-Auswahlsignale C1 bis C4 nach einem festen Schema erzeugt. Dies ist nicht zwingend notwendig. Es liegt im Rahmen der hierin beschriebenen Erfindung, die Zuordnung zwischen den Auwahlsteuersignalen C1 bis C4 und den Eingangssignalen auf den Leitungen 77 und 78 variabel zu gestalten, um dadurch beispielsweise nach einer bestimmten Anzahl von Verschlüsselungsoperationen das Chiffrierschema zur Erhöhung der Sicherheit abzuändern. Hierzu kann der Decodierer 92 durch eine für sich bekannte variabel programmierbare logische Matrix (PLA) ersetzt werden. Dies führt insbesondere dann zu einer sehr variablen und leistungsfähigen Betriebsweise, wenn die sequentiell zu verarbeitenden Datensegmente und Schlüsselsegmente mehr als ein Bit umfassen, da in diesem Falle die Zahl der möglichen Auswahlsteuersignale erheblich größer als 4 sein kann.
In weiterer Abänderung der dargestellten Einrichtung können die Steuerschaltung 34, die Modifikationsartsteuerschaltung 76 und 'auch andere Elemente der Einrichtung von Fig. 2 vollständig oder :teilweise durch entsprechend programmierte Funktionen eines Mikroprozessors ersetzt werden, ohne daß damit der Rahmen der Erfindung verlassen wird. Die Anwendung eines Mikroprozessors eignet sich insbesondere zur Erzeugung der Taktsignale ti bis t3
GE 976 018
809827/0037
und T1 bis Τ3, Τ5 und Τ6. Desgleichen kann beispielsweise die Operation des Addierwerkes 84 mit Hilfe des Rechenwerks eines Mikroprozessors ausgeführt werden. Das gleiche gilt für die Rotationsverschiebungen mit dem Inhalt des Registers KR1.
Wenn es bei der Anwendung des beschriebenen Chiffrier/Dechiffrierverfahrens auf eine sehr hohe Arbeitsgeschwindigkeit ankommt, können mehrere Einrichtungen der oben dargestellten Art parallel zum Einsatz kommen. Dies ist möglich/ da die Chiffrierung einzelner Datenfelder eines umfangreichen Datenstromes voneinander unabhängig vorgenommen werden kann. Die Leistungsfähigkeit der dargestellen Chiffriereinrichtung läßt sich auch durch Anwendung des Pipeline-Konzepts steigern. In diesem Falle werden für jeden der drei Substitutionsdurchläufe gemäß den Schritten 16, 19 und 23 von Fig. 1 eine Einrichtung der in Fig. 2 angegebenen Art, jedoch ohne das Pufferregister 60 vorgesehen. Stattdessen werden die von der Exclusive-ODER-Schaltung 56 erzeugten Resultatsignale in der für das Register 60 beschriebenen Weise dem Datenregister 30 der nächsten Schaltung zugeführt, das zu diesem Zweck für Stellenverschiebungen in beiden Richtungen ausgebildet ist. Es werden somit drei Chiffriereinrichtungen der in Fig. 2 dargestell- ;ten Art in Serie geschaltet, wobei die erste mit der zweiten und die zweite mit der dritten jeweils durch ein gemeinsames Datenregister 30 gekoppelt sind. Bei einer derartigen Anordnung kann mit der Chiffrierung eines Datenfeldes begonnen werden, sobald das vorhergehende Datenfeld den ersten Durchlauf (Substitutionsschritt) beendet hat und in das Datenregister 30 der nächsten Einrichtung übertragen worden ist. Auf diese Weise lassen sich drei aufeinanderfolgende Datenfelder jeweils zeitlich überlappt chiffrieren oder dechiffrieren.
GE 976 018
809827/0037

Claims (1)

  1. PATENTANSPRÜCHE
    Verfahren zum Chiffrieren und autorisierten Dechiffrieren mehrstelliger Daten, dadurch gekennzeichnet, daß aufeinanderfolgende Datensegmente unter Steuerung entsprechender Segmente eines Chiffrierschlüssels Gegenstand einer Substitutionsoperation sindi, die eine modifizierte Version des Datensegments erzeugt,? und daß die Datensegmente und die entsprechenden Schlüsselsegmente jeweils eine von mehreren vorgegebenen Modifikationsarten, auswählen, durch die der Chiffrierschlüssel jeweils vor der nächsten Substitutionsoperation abgeändert wirdo
    Verfahren zum Chiffrieren und autorisierten Dechiffrieren mehrstelliger Daten nach Anspruch 1 e dadurch gekennzeieh= netff daß ein Datensegment und ein Schlüsselsegment eines ersten Schlüsselwortes (erste Chiffriersohlüsselhälfte) einerseits einer Substitutionsoperation zugeführt werden? die eine modifizierte Version des DatensegmentsSerseugt, und andererseits eine von mehreren unterschiedliehen Modifikationsoperationeja auswählenff durch die das erste Schlüsselwort jeweils vor der nächsten Substitutionsoperaticn modifiziert wird? daß diese Schritte mit den rest- : liafoen Datensegmenten des Datenregisters und entsprechenden Segmenten des jeweils srneut modifizierten ersten Schlüsselwortes wiederholt x^erdenj, daß mit der modifizierten Version der Daten ein© Permutationsoperation ausgeführt; wird, von deren Resultat erneut ein Datensegment und ein Schlüsselsegment eines aweiten Schlüsselwortes (zweite Chiffrierschlüsselhälft©) einerseits einer Substitutionsoperation zugeführt x-ierden^ die eine erneut modifizierte Version des Datensegmesites erzeugt, und andererseits eine von mehreren unterschiedlichen Modifikationsoperationen Ϊ
    GE 976 018
    809827/003?
    auswählen, durch die das zweite Schlüsselwort vor der nächsten Substitutionsoperation modifiziert wird, und daß die letzteren Schritte mit den restlichen Segmenten der modifizierten Daten und entsprechenden Segmenten des jeweils erneut modifizierten zweiten Schlüsselwortes wiederholt werden.
    3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß sich eine weitere Permutation der erneut modifizierten Daten anschließt, deren Resultat segmentweise zusammen mit entsprechenden Segmenten des wiederholt modifizierten ersten Schlüsselwortes einer weiteren Substitutionsoperation zugeführt wird, welche die chiffrierte Version der Datensegmente liefern, und daß zwischen je zwei dieser Substitutionen eine vom betreffenden Datensegment und dem entsprechenden Schlüsselsegment, gemeinsam ausgewählte Modifikationsoperation des ersten Schlüsselwortes erfolgt.
    4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß das Datensegment und das Schlüsselsegment aus je einem binären Bit besteht und daß beide Bits als Modifikationsoperation jeweils eine von vier vorgegebenen Modifikationsarten auswählen.
    5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die Permutationsoperation eine symmetrische Vertauschung der Bitstellen (Drehung) beinhaltet.
    6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß sich die Dechiffrieroperation von der Chiffrieroperation durch eine Vertauschung in der Auswahl der Modifikationsoperationen unterscheidet.
    GE 976 018
    SG9827/0037
    7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß die vorgegebenen Schlüsselmodifikationen Substitutionsoperationen und/oder Permutationsoperationen der Bits des Chiffrierschlüssels sind und daß mehrere unterschiedliche Arten derartiger Operationen zur Auswahl durch die Datensegmente und die Schlüsselsegmente vorgesehen werdenβ
    8ο Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß sich die Substitutionsoperationen und/ oder Permutationsoperationen auf alle Bits des jeweils wirksamen Teils des Chiffrierschlüssels erstrecken.
    ο Einrichtung zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 8, mit einem Datenregister zur Aufnahme der zu chiffrierenden/dechiffrierenden Daten, mit einem Schlüsselregister und mit Substitutionsstufen, dadurch gekennzeichnet, daß an je einem Segmentausgang (57, 77) des Datenregisters (30) und des Schlüsselregisters (48) eine Substitutionsstufe (56) angeschlossen ist, deren Ausgang mit einem weiteren Register (60) verbunden ist, daß eine Modifikationsschaltung (74), die auf unterschiedliche Betriebsarten einstellbar ist, mit einem Ausgang und einem Eingang des Schlüsselregisters (48) verbunden ist, und daß die Modifikationsschaltung eine Modifikationsart-Steuerschaltung (76) enthält, die Auwahlsteuersignale von den Segmentausgängen des Datenregisters und des Schlüsselregisters zugeführt erhält und in Abhängigkeit von diesen jeweils zwischen zwei Operationszyklen der Substitutionsstufe (56) den Inhalt des Schlüsselregisters datenabhängig modifiziert.
    GE 9 76 018
    809827/0037
    - JkG -
    10. Einrichtung nach Anspruch 9, dadurch gekennzeichnet, daß die Substitutionsstufe (56) als Exclusiv-ODER-Schaltung ausgebildet ist, der die Bits des Datenregisters (30) und des Schlüsselregisters (48) seriell zugeführt werden.
    11. Einrichtung nach Anspruch 9 oder 10, dadurch gekennzeichnet, daß das Datenregister (30) sowie ein an den Ausgang der Substitutionsstufe (56) angeschlossenes Pufferregister (60) als Schieberegister ausgebildet sind, daß das Pufferregister eine umgekehrte Schieberichtung wie das Datenregister aufweist und daß von einem Parallelausgang des Pufferregisters zu einem Paralleleingang des Datenregisters eine Rückführleitung (62) vorgesehen ist.
    12. Einrichtung nach einein der Ansprüche 9 bis 11, dadurch gekennzeichnet, daß die Modifikationsart-Steuerschaltung (76) der Modifikationsschaltung (74) einen Decodierer (92) enthält, der die Eingangsbits der Substitutionsstufe (56) zugeführt erhält und aus diesem mehrere Modifikationsart-Steuersignale (C1 bis C4) erzeugt, welche die Modifizierschaltung selektiv zur Ausführung von jeweils wenigstens einem von mehreren unterschiedlichen Modifikationsschritten einstellt.
    13. Einrichtung nach einem der Ansprüche 9 bis 12, dadurch gekennzeichnet, daß die Modifikationsschaltung (74) eine Permutationsschaltung (103, 120, 79, 54) und eine Substitutionsschaltung (75) umfaßt, die beide durch die Segmentausgänge (57 und 77) des Datenregisters (30) und des Schlüsselregisters (48) einzeln oder gemeinsam zur unterschiedlichen Modifikation des Chiffrierschlüssels ausgewählt und betätigt werden.
    GE 976 018
    809827/0037
    :14. Einrichtung nach einem der Ansprüche 9 bis 13, dadurch gekennzeichnet, daß die Modifikationsschaltung (74) ein ein Rechenwerk (84) zur arithmetischen Verknüpfung von Schlüsselfeldern sowie eine Schaltung (103, 120, 79, 54) zur Ausführung logischer Operationen enthält, die jeweils beide durch von der Modifikationsart-Steuerschaltung (76) erzeugte Steuersignale (AST, VST1, VST5, VST17) zwischen zwei Operationszyklen der Substitutionsstufe (56) wirksam sind.
    15. Einrichtung nach Anspruch 14, dadurch gekennzeichnet, daß die Modifikationsschaltung (74) ein Addierwerk (84) enthält, das mit einem Eingang an den Ausgang eines ersten Teilregisters (KR1) und mit dem anderen Eingang an ein zweites Teilregister (KR2) des Schlüsse!registers (48) angeschlossen ist und dessen Resultatsignale zum ersten Teilregister (KR1) zurückgeführt werden, daß die Modifikationsschaltung (74) eine Schaltung (103, 120, 79, 54)
    ; zur Ausführung unterschiedlicher Rotationsstellenverschiebungen mit wenigstens einem Teil vom Inhalt des Schlüsselregisters aufweist und daß eine Modifikationsoperation wahlweise eine Addition und/oder eine von meh-
    S reren unterschiedlicheil Rotationsstellenverschiebungen
    ; umfaßt. I
    ii6. Einrichtung nach einem der Ansprüche 9 bis 15? dadurch gekennseieh.netj, daß das Sehlüsselregister wenigstens zum Teil (KR1) als rückgekoppeltes Schieberegister ausgebil- ! ' det ist und da® der Serienausgang (77) dieses Registers j
    ι ι
    sowohl mit der Subetitutionsstufe (56) als auch mit der ModifikatiOBSart-Steuerschaltung (76) verbunden ist.
    GE 976
    17. Einrichtung nach einem der Ansprüche 9 bis 16, gekennzeichnet durch eine Taktsteuerschaltung (34), die Taktsignale zur Ausführung von drei Daten-Substitutionsdurchläufen (T2, T4, T6) über die Bitstelien eines zu verarbeitenden Datenfeldes variabler Länge bereitstellt, die ferner zwischen je zwei Substitutionszyklen jeweils mindestens zwei Taktsignal-Phasen (t2, t3) zur Betätigung der Chiffrierschlüssel-Modifikationsschaltung (74) bereitstellt und die jeweils nach jedem der ersten beiden Daten-Substitutionsdurchläufe eine Torschaltung (64) betätigt zur Rückübertragung der modifizierten Daten aus einem Pufferregister (60) in das Datenregister.
    18. Einrichtung nach einem der Ansprüche 9 bis 17, gekennzeichnet durch eine Datenfeldlängen-Steuerschaltung (140, 153, 156, 158), welche die Zahl der Segmentverarbeitungszyklen auf die Stellenzahl des im Datenregister
    (30) gespeicherten Datenfeldes begrenzt.
    19. Einrichtung nach Anspruch 17, dadurch gekennzeichnet, daß : eine auf die Stellenzahl des zu verarbeitenden Datenfeldes j variabler Länge voreinstellbaren Zählereinrichtung (156) ! vorgesehen ist, die innerhalb der Daten-Substitutionsdurchläufe (T2, T4, T6) die Zahl der Substitutionszyklen , (ti), die Zahl der Verschiebezyklen in den Registern ι (30, 60) und Chiffrierschlüssel-Modifikationszyklen (t2, : t3) entsprechend der Stellenzahl des zu verarbeitenden !
    Datenfeldes festlegt. '
    GE 976 018
    809827/0037
DE19762658065 1976-12-22 1976-12-22 Maschinelles chiffrieren und dechiffrieren Withdrawn DE2658065A1 (de)

Priority Applications (6)

Application Number Priority Date Filing Date Title
DE19762658065 DE2658065A1 (de) 1976-12-22 1976-12-22 Maschinelles chiffrieren und dechiffrieren
GB44411/77A GB1577539A (en) 1976-12-22 1977-10-25 Cyphering
CA290,123A CA1101509A (en) 1976-12-22 1977-11-03 Machine enciphering and deciphering
FR7735133A FR2375679A1 (fr) 1976-12-22 1977-11-18 Procede et dispositif de chiffrage et de dechiffrage
JP52147314A JPS5832380B2 (ja) 1976-12-22 1977-12-09 暗号処理装置
US05/862,251 US4157454A (en) 1976-12-22 1977-12-19 Method and system for machine enciphering and deciphering

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19762658065 DE2658065A1 (de) 1976-12-22 1976-12-22 Maschinelles chiffrieren und dechiffrieren

Publications (1)

Publication Number Publication Date
DE2658065A1 true DE2658065A1 (de) 1978-07-06

Family

ID=5996199

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19762658065 Withdrawn DE2658065A1 (de) 1976-12-22 1976-12-22 Maschinelles chiffrieren und dechiffrieren

Country Status (6)

Country Link
US (1) US4157454A (de)
JP (1) JPS5832380B2 (de)
CA (1) CA1101509A (de)
DE (1) DE2658065A1 (de)
FR (1) FR2375679A1 (de)
GB (1) GB1577539A (de)

Families Citing this family (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4249180A (en) * 1978-09-20 1981-02-03 Northern Telecom Limited Past dependent microcomputer cipher apparatus
US4301327A (en) * 1979-06-05 1981-11-17 Lee Lin Nan Reduction of message redundancy by multiple substitution: a message preprocessing scheme for secure communications
US4319079A (en) * 1979-09-13 1982-03-09 Best Robert M Crypto microprocessor using block cipher
DE2943726C2 (de) * 1979-10-30 1984-06-07 ANT Nachrichtentechnik GmbH, 7150 Backnang Verfahren und Einrichtung zur Ver- und Entschlüsselung von Daten
US4418275A (en) * 1979-12-07 1983-11-29 Ncr Corporation Data hashing method and apparatus
EP0035048B1 (de) * 1980-03-04 1985-03-06 International Business Machines Corporation Verschlüsselungssystem, das eine veränderliche Schlüsselmatrix verwendet
US4506325A (en) * 1980-03-24 1985-03-19 Sperry Corporation Reflexive utilization of descriptors to reconstitute computer instructions which are Huffman-like encoded
US4447672A (en) * 1980-10-06 1984-05-08 Nippon Electric Co., Ltd. Device for encrypting each input data bit by at least one keying bit decided by a code pattern and a bit pattern of a predetermined number of preceding encrypted bits
US4503287A (en) * 1981-11-23 1985-03-05 Analytics, Inc. Two-tiered communication security employing asymmetric session keys
US4649510A (en) * 1982-04-30 1987-03-10 Schmidt Walter E Methods and apparatus for the protection and control of computer programs
JPS5960464A (ja) * 1982-09-30 1984-04-06 株式会社東芝 プログラムの暗号化方式
US5007018A (en) * 1983-11-10 1991-04-09 General Signal Corp. Vital processor implemented with non-vital hardware
US4803725A (en) * 1985-03-11 1989-02-07 General Instrument Corp. Cryptographic system using interchangeable key blocks and selectable key fragments
FR2582174B1 (fr) * 1985-05-15 1990-03-09 Thomson Csf Dispositif de chiffrement par substitutions-permutations
US4802217A (en) * 1985-06-07 1989-01-31 Siemens Corporate Research & Support, Inc. Method and apparatus for securing access to a computer facility
US4815130A (en) * 1986-10-03 1989-03-21 Communications Satellite Corporation Stream cipher system with feedback
NL8602847A (nl) * 1986-11-11 1988-06-01 Philips Nv Werkwijze voor het vercijferen/ontcijferen en inrichting voor het uitvoeren van de werkwijze.
US5003596A (en) * 1989-08-17 1991-03-26 Cryptech, Inc. Method of cryptographically transforming electronic digital data from one form to another
US5267241A (en) * 1990-04-04 1993-11-30 Avasem Corporation Error correction code dynamic range control system
US5058164A (en) * 1990-05-03 1991-10-15 National Semiconductor Corp. Encryption of streams of addressed information to be used for program code protection
DE4016203A1 (de) * 1990-05-19 1991-11-21 Rolf Prof Dr Trautner Verfahren zur blockweisen chiffrierung von digitalen daten
US5241597A (en) * 1991-02-01 1993-08-31 Motorola, Inc. Method for recovering from encryption key variable loss
US5172414A (en) * 1991-09-13 1992-12-15 At&T Bell Laboratories Speech and control message encrypton in cellular radio
US5204902A (en) * 1991-09-13 1993-04-20 At&T Bell Laboratories Cellular telephony authentication arrangement
US5159634A (en) * 1991-09-13 1992-10-27 At&T Bell Laboratories Cryptosystem for cellular telephony
EP0778705B1 (de) * 1992-07-21 2000-01-19 Matsushita Electric Industrial Co., Ltd. Ver- und Entschlüsselungsvorrichtung
US5473693A (en) * 1993-12-21 1995-12-05 Gi Corporation Apparatus for avoiding complementarity in an encryption algorithm
US5619575A (en) * 1994-08-22 1997-04-08 United Technologies Automotive, Inc. Pseudorandom composition-based cryptographic authentication process
US5550984A (en) * 1994-12-07 1996-08-27 Matsushita Electric Corporation Of America Security system for preventing unauthorized communications between networks by translating communications received in ip protocol to non-ip protocol to remove address and routing services information
JPH08179690A (ja) * 1994-12-22 1996-07-12 Nec Corp プロダクト暗号装置
US5623549A (en) * 1995-01-30 1997-04-22 Ritter; Terry F. Cipher mechanisms with fencing and balanced block mixing
US5727062A (en) * 1995-07-06 1998-03-10 Ritter; Terry F. Variable size block ciphers
US5724427A (en) * 1995-08-17 1998-03-03 Lucent Technologies Inc. Method and apparatus for autokey rotor encryption
US5724428A (en) * 1995-11-01 1998-03-03 Rsa Data Security, Inc. Block encryption algorithm with data-dependent rotations
US5740249A (en) * 1996-04-09 1998-04-14 Kabushiki Kaisha Toshiba Encryption apparatus and method capable of controlling encryption process in accordance with an internal state
US6028939A (en) * 1997-01-03 2000-02-22 Redcreek Communications, Inc. Data security system and method
US5909494A (en) * 1997-02-14 1999-06-01 At&T Corp. System and method for constructing a cryptographic pseudo random bit generator
RU2103829C1 (ru) * 1997-04-02 1998-01-27 Государственное унитарное предприятие "Специализированный центр программных систем "Спектр" Способ шифрования информации, представленной двоичным кодом
CA2258750A1 (en) * 1997-04-14 1999-01-21 Semyon B. Mizikovsky Methods and apparatus for enhanced security expansion of a secret key into a lookup table for improved security for wireless telephone messages
CN1157020C (zh) * 1997-04-23 2004-07-07 松下电器产业株式会社 提高了安全性的密码处理装置
CA2302784A1 (en) 1997-09-17 1999-03-25 Frank C. Luyster Improved block cipher method
US6219421B1 (en) 1997-10-24 2001-04-17 Shaul O. Backal Virtual matrix encryption (VME) and virtual key cryptographic method and apparatus
US6185679B1 (en) * 1998-02-23 2001-02-06 International Business Machines Corporation Method and apparatus for a symmetric block cipher using multiple stages with type-1 and type-3 feistel networks
US6185304B1 (en) * 1998-02-23 2001-02-06 International Business Machines Corporation Method and apparatus for a symmetric block cipher using multiple stages
US6570989B1 (en) 1998-04-27 2003-05-27 Matsushita Electric Industrial Co., Ltd. Cryptographic processing apparatus, cryptographic processing method, and storage medium storing cryptographic processing program for realizing high-speed cryptographic processing without impairing security
JP3097655B2 (ja) * 1998-05-11 2000-10-10 日本電気株式会社 データ伝送方式
US6189095B1 (en) * 1998-06-05 2001-02-13 International Business Machines Corporation Symmetric block cipher using multiple stages with modified type-1 and type-3 feistel networks
US6269163B1 (en) 1998-06-15 2001-07-31 Rsa Security Inc. Enhanced block ciphers with data-dependent rotations
DE69935913T2 (de) * 1998-07-02 2008-01-10 Cryptography Research Inc., San Francisco Leckresistente aktualisierung eines indexierten kryptographischen schlüssels
EP0993143A1 (de) * 1998-10-07 2000-04-12 Lateca Computer Inc. N.V. Verarbeitungsverfahren und Vorrichtung zur Informationsumwandlung von einem ersten Format in ein zweites Format
US6845159B1 (en) 1998-10-07 2005-01-18 Protego Information Ab Processing method and apparatus for converting information from a first format into a second format
JP3679936B2 (ja) * 1998-11-27 2005-08-03 東芝ソリューション株式会社 暗復号装置及び記憶媒体
NL1011719C2 (nl) * 1999-04-01 2000-10-03 Koninkl Kpn Nv Werkwijze voor het met toepassing van een functie en een sleutel vercijferen van een reeks symbolen.
AU1046800A (en) 1999-05-18 2000-03-06 Angel Jose Ferre Herrero Self-corrector randomizer-encryptor system and method
US6304657B1 (en) * 1999-05-26 2001-10-16 Matsushita Electric Industrial Co., Ltd. Data encryption apparatus using odd number of shift-rotations and method
US20020099746A1 (en) * 1999-07-26 2002-07-25 Tie Teck Sing T-sequence apparatus and method for general deterministic polynomial-time primality testing and composite factoring
DE69929251T2 (de) * 1999-10-20 2006-07-13 Fujitsu Ltd., Kawasaki Verschlüsselungssystem mit einem schlüssel veränderlicher länge
EP1107504B1 (de) * 1999-12-02 2007-03-21 International Business Machines Corporation Verfahren zur Aktualisierung von Geheimschlüsseln in einem Datenkommunikationssystem
DE10062924A1 (de) * 2000-12-16 2002-09-12 Atmel Germany Gmbh Kontaktloses Datenübertragungssystem
DE10106736B4 (de) 2001-02-14 2006-11-09 Atmel Germany Gmbh Verfahren zur Erkennung einer Weiterleitung bei einer bidirektionalen, kontaktlosen Datenübertragung
JP2003023421A (ja) * 2001-07-09 2003-01-24 C4 Technology Inc 暗号方法、そのプログラム、そのプログラムを記録した記録媒体および暗号装置並びに復号方法および復号装置
JP3730926B2 (ja) * 2002-03-14 2006-01-05 京セラ株式会社 ヘリカル型アンテナの設計方法
US7376235B2 (en) * 2002-04-30 2008-05-20 Microsoft Corporation Methods and systems for frustrating statistical attacks by injecting pseudo data into a data system
US8005212B2 (en) * 2002-07-10 2011-08-23 Infineon Technologies Ag Device and method for performing a cryptoalgorithm
US20040208231A1 (en) * 2003-04-17 2004-10-21 G-Mix Co., Ltd. Concealing process of digital information
EP1469632A1 (de) * 2003-04-17 2004-10-20 G-Mix Co., Ltd Verschleierung einer digitalen Information
US20070028088A1 (en) * 2005-08-01 2007-02-01 Coskun Bayrak Polymorphic encryption method and system
IL174784A0 (en) * 2006-04-04 2006-12-31 Nds Ltd Robust cipher design
US8781117B2 (en) * 2007-08-29 2014-07-15 Red Hat, Inc. Generating pseudo random bits from polynomials
US8265272B2 (en) * 2007-08-29 2012-09-11 Red Hat, Inc. Method and an apparatus to generate pseudo random bits for a cryptographic key
US8416947B2 (en) 2008-02-21 2013-04-09 Red Hat, Inc. Block cipher using multiplication over a finite field of even characteristic
US7945049B2 (en) * 2008-02-28 2011-05-17 Red Hat, Inc. Stream cipher using multiplication over a finite field of even characteristic
US8560587B2 (en) * 2008-05-22 2013-10-15 Red Hat, Inc. Non-linear mixing of pseudo-random number generator output
US8588412B2 (en) 2008-05-23 2013-11-19 Red Hat, Inc. Mechanism for generating pseudorandom number sequences
US8358781B2 (en) * 2008-11-30 2013-01-22 Red Hat, Inc. Nonlinear feedback mode for block ciphers
WO2012141189A1 (ja) * 2011-04-11 2012-10-18 日本電気株式会社 暗号化方法、暗号化装置および暗号化プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CH464287A (de) * 1967-08-02 1968-10-31 Europ Handelsges Anst Verfahren zur Verschlüsselung in einen und/oder Entschlüsselung aus einem Geheimtext.
US3962539A (en) * 1975-02-24 1976-06-08 International Business Machines Corporation Product block cipher system for data security
US3958081A (en) * 1975-02-24 1976-05-18 International Business Machines Corporation Block cipher system for data security
US4074066A (en) * 1976-04-26 1978-02-14 International Business Machines Corporation Message verification and transmission error detection by block chaining
US4078152A (en) * 1976-04-26 1978-03-07 International Business Machines Corporation Block-cipher cryptographic system with chaining

Also Published As

Publication number Publication date
FR2375679A1 (fr) 1978-07-21
JPS5394844A (en) 1978-08-19
CA1101509A (en) 1981-05-19
GB1577539A (en) 1980-10-22
JPS5832380B2 (ja) 1983-07-12
FR2375679B1 (de) 1982-06-04
US4157454A (en) 1979-06-05

Similar Documents

Publication Publication Date Title
DE2658065A1 (de) Maschinelles chiffrieren und dechiffrieren
DE19827904C2 (de) Blockchiffrier- oder -dechiffrierverfahren und Blockchiffrier- oder -dechiffriervorrichtung
DE2715631C2 (de) Verschlüsselung und Absicherung von Daten
EP1777913B1 (de) Verfahren zur Verschlüsselung bzw. Entschlüsselung von Datenpaketen eines Datenstroms
DE69736148T2 (de) Verfahren und Einrichtung zur Datenverschlüsselung
EP0986872B1 (de) Vorrichtung zur durchführung eines blockchiffrierverfahrens
EP0012974B1 (de) Verfahren zur Chiffrierung von Datenblöcken einer vorgegebenen Länge
DE102007052656B4 (de) Digital-Verschlüsselungs-Hardware-Beschleuniger
DE2231849A1 (de) Einrichtung zum chiffrieren oder dechiffrieren eines blocks binaerer daten
DE69937007T2 (de) Verfahren und vorrichtung zur verschlüsselung und entschlüsselung von daten
DE102013213316A1 (de) Zufallsbitstromgenerator mit verbesserter rückwärts gerichteter Gemeinhaltung
EP2647157A1 (de) Verfahren und vorrichtung zur durchführung einer symmetrischen stromverschlüsselung von daten
DE2840552C2 (de) Digitales Übertragungssystem
DE10324422B4 (de) Verfahren und Vorrichtung zur Abbildung eines abzubildenden Eingangswertes auf einen verschlüsselten abgebildeten Ausgangswert
DE10345378B4 (de) Verfahren und Vorrichtung zur Ver-/Entschlüsselung
DE3905667C2 (de)
AT515097B1 (de) Verschlüsselungsverfahren und Pseudo-Zufallszahlengenerator
DE102004010666B4 (de) Schlüsselbitstromerzeugung
DE102018113772B4 (de) Verschlüsselungsverfahren
DE2639806C2 (de) Verfahren und Einrichtung zum Verschlüsseln oder Entschlüsseln von Datenblöcken in binärer Darstellung
DE2558206C3 (de) Verfahren und Einrichtung zum Chiffrieren und autorisierten Dechiffrieren von Informationsblöcken
WO1997032417A1 (de) Verfahren zum generieren eines prüfworts für eine bitfolge zur überprüfung der integrität und authentizität der bitfolge
EP2288073A1 (de) Vorrichtung zur Verschlüsselung von Daten
DE2558206A1 (de) Verfahren und einrichtung zum chiffrieren und autorisierten dechiffrieren von informationsbloecken
DE69629356T2 (de) Verfahren und Anordnung zur blockweisen Verschlüsselung mit jeder Verschlüsselungsrunde abhängig von einen internen Zustand

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee