DE10036372A1 - Sender, Empfänger sowie Sender- und Empfängeranordnung - Google Patents
Sender, Empfänger sowie Sender- und EmpfängeranordnungInfo
- Publication number
- DE10036372A1 DE10036372A1 DE10036372A DE10036372A DE10036372A1 DE 10036372 A1 DE10036372 A1 DE 10036372A1 DE 10036372 A DE10036372 A DE 10036372A DE 10036372 A DE10036372 A DE 10036372A DE 10036372 A1 DE10036372 A1 DE 10036372A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- transmitter
- receiver
- register
- output
- 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.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
- H04L9/0662—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
- H04L2209/125—Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/34—Encoding or coding, e.g. Huffman coding or error correction
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Communication Control (AREA)
Abstract
Die Erfindung betrifft einen Sender, einen Empfänger sowie kombinierte Sender- und Empfängeranordnungen (50), die mit externen Geräten Daten über einen seriellen Übertragungskanal austauschen. Erfindungsgemäß sind im Sender (52) Verschlüsselungsmittel (60, 64, 68, 70) und im Empfänger (54) Entschlüsselungsmittel (60, 74, 76, 80) vorgesehen. Die Erfindung wird im Detail anhand eines als Krypto-UART-Baustein (50) ausgebildeten Ausführungsbeispiels erläutert.
Description
Die Erfindung betrifft einen Sender gemäß dem Oberbegriff des Anspruchs 1.
Weiterhin betrifft die Erfindung einen Empfänger gemäß dem Oberbegriff des
Anspruchs 10. Schließlich betrifft die Erfindung eine Sender- und Empfängeranord
nung mit einer Sendereinheit und einer Empfängereinheit.
Für den Datenaustausch zwischen Geräten werden unidirektionale Sender oder
Empfänger oder integrierte, bidirektionale Sender- und Empfängeranordnungen
verwendet. Die Datenübertragung erfolgt in der Regel auf Übertragungskanälen
unter Verwendung vorgegebener Datentypen. Die vorliegende Erfindung befasst
sich mit Sendern, Empfängern oder Sender- und Empfängeranordnungen für einen
Datentyp, der aus binär kodierten, zeitlich aufeinanderfolgenden Daten besteht.
Derartige Daten werden im Folgenden auch als serielle Daten bezeichnet. Der
Übertragungskanal kann unterschiedlicher physikalischer Natur sein. Die Daten
können beispielsweise in Form elektrischer Signale übertragen werden, aber auch
als elektromagnetische Signale, etwa im Bereich von Licht- oder gängigen Funk
frequenzen, oder auch beispielsweise in Form akustischer Signale.
Auf dem Gebiet der Elektronik sind integrierte Sender- und Empfängerbauelemente
bekannt, die eine Schnittstelle zwischen einem Datenbus eines Prozessors, bei
spielsweise der CPU (Central processing unit) eines Computers, und einem ange
schlossenen Peripheriegerät bilden, das serielle Daten empfängt und sendet. Bei
dem Peripheriegerät handelt es sich beispielsweise um ein an den Computer ange
schlossenes Modem.
Ein Beispiel eines solchen Bauelements ist der UART-Baustein (UART = Universal
asychronous receiver/transmitter) vom Typ PC16550D (National Semiconductor:
Datenblatt-PC16550D Universal asychronous receiver/transmitter with FIFOs,
National Semiconductor Corp., Santa Clara, Juni 1995; http: / / www.national.com
/ds/PC/PC16550D.pdf). Bei diesem UART-Baustein handelt es sich um ein
elektronisches Schaltwerk, welches vom Datenbus zeitgleich empfangene (par
allele), binär kodierte Daten in serielle Daten umsetzt und welches umgekehrt auch
zur Umsetzung serieller Daten in parallele Daten ausgebildet ist. Hierfür weist der
bekannte UART-Baustein eine Sendereinheit auf, die einen Dateneingang für
parallele Daten hat. Ein als Parallelseriellumsetzer ausgebildeter Datenumsetzer ist
mit dem Dateneingang verbunden und wandelt die eingehenden parallelen Daten in
serielle Daten um, die einem nachgeschalteten seriellen Datenausgang zugeleitet
werden. Zugleich ist ein zweiter Dateneingang für vom Peripheriegerät her ein
treffende serielle Daten vorgesehen, der mit einem Seriellparallelumsetzer ver
bunden ist. Dieser wandelt die am zweiten Dateneingang empfangenen seriellen
Daten in parallele Daten um, die über einen parallelen Datenausgang dem ange
schlossenen Datenbus zugeleitet werden. Bei dem bekannten UART-Baustein sind
der parallele Datenein- und -ausgang physikalisch identisch.
Der bekannte UART-Baustein übernimmt auch die Datensicherung, die Datenüber
prüfung, die Takt- und Zeichensynchronisation sowie die Steuerung der Über
tragung mit verschiedenen Übertragungsparametern. Der bekannte UART-Baustein
ist mit einer 8-Bit-Systemschnittstelle für den Anschluss an ein Mikroprozessorsys
tem und mit zwei 1-Bit-Schnittstellen inklusive Handshake-Signale für den An
schluss an eine Peripherieeinheit ausgestattet. Die 8-Bit-Systemschnittstelle sieht
drei Adressleitungen, acht Datenleitungen und mehrere Steuersignale vor. Die
beiden 1-Bit-Schnittstellen umfassen eine Sendeleitung, eine Empfangsleitung
sowie mehrere Handshake-Signale.
Die zunehmende Übertragung vertraulicher Daten erhöht die Bedeutung von Ver
schlüsselungstechniken. Die derzeit verwendeten Verschlüsselungstechniken
jedoch haben den Nachteil, dass sie softwaregestützt arbeiten und dadurch die
Belastung des zentralen Prozessorsystems erhöhen. Diese Lösungen für die Daten
verschlüsselung sind zum einen aufwendig und können daher zum anderen zu einer
Verzögerung der verschlüsselten Datenübertragung führen.
Das der Erfindung zugrundeliegende technische Problem ist daher, einen Sender,
einen Empfänger und eine Sender- und Empfängeranordnung der eingangs genann
ten Art so weiterzubilden, dass eine verschlüsselte Datenübertragung mit geringem
Aufwand ermöglicht wird.
Für einen Sender wird dieses Problem durch einen Gegenstand mit den Merkmalen
des Anspruchs 1 gelöst. Für einen Empfänger wird dieses Problem durch den
Gegenstand des Anspruchs 10 gelöst. Für eine Sender- und Empfängeranordnung
wird dieses Problem durch den Gegenstand des Anspruchs 38 gelöst. Die erfin
dungsgemäße Sender- und Empfängeranordnung weist eine Sendereinheit mit den
Merkmalen des Anspruchs 1 und eine Empfängereinheit mit den Merkmalen des
Anspruchs 10 auf. Soweit im folgenden auf den erfindungsgemäßen Sender Bezug
genommen wird, wird darunter zugleich auch die Sendereinheit der Sender- und
Empfängeranordnung verstanden. Ebenso beziehen sich Angaben zum erfindungs
gemäßen Empfänger zugleich auch auf die Empfängereinheit der Sender- und
Empfängeranordnung. Angaben zur Sendereinheit bzw. Empfängereinheit der
erfindungsgemäßen Sender- und Empfängeranordnung sind auch auf den Sender
bzw. Empfänger übertragbar.
Die Erfindung fußt auf dem Gedanken, Verschlüsselungsmittel oder Entschlüssel
ungsmittel in den Sender bzw. Empfänger oder sowohl Verschlüsselungsmittel als
auch Entschlüsselungsmittel in eine Sender- und Empfängeranordnung zu integrie
ren.
Die bei der erfindungsgemäßen Lösung zum Einsatz kommenden Verschlüssel
ungsmittel sind zwischen dem Datenumsetzer und dem Datenausgang des Senders
angeordnet. Das schließt jedoch nicht aus, dass bestimmte, den Verschlüsselungs
mitteln zuzuordnende Einheiten, die Aufgaben im Umfeld der Datenverschlüsselung
wahrnehmen, an anderer Stelle im Sender vorgesehen sein können, beispielsweise
parallel zum Datenumsetzer geschaltet sind. Die Verschlüsselungsmittel sind
jedenfalls so angeordnet, dass die Datenverschlüsselung selbst zwischen dem
Ausgang des Datenumsetzers und dem Datenausgang stattfindet. Hinter dieser
Maßnahme steht die Erkenntnis, dass eine Verschlüsselung der Daten Bit für Bit im
Hinblick auf die Anzahl der für die Verschlüsselung erforderlichen Taktzyklen dort
am günstigsten ist, wo die Daten ohnehin in serieller Form vorliegen. Es sind bei
dieser Anordnung der Verschlüsselungsmittel also grundsätzlich keine zusätzlichen
Taktzyklen für ein zusätzliches Umsetzen der Daten vor der Datenverschlüsselung
erforderlich. Die Verschlüsselung kann Bit für Bit, Taktzyklus für Taktzyklus ohne
zeitliche Verzögerung der Datenabgabe am Datenausgang des Senders erfolgen.
Die Verschlüsselungsmittel sind dem entsprechend zum Umsetzen serieller Daten
ausgebildet. Die unverschlüsselten Daten am Eingang der Verschlüsselungsmittel
sind seriell und die verschlüsselten Daten am Ausgang der Verschlüsselungsmittel
ebenso. Der Verschlüsselungsalgorithmus ist jedoch darüber hinaus durch die
Erfindung nicht festgelegt. Es können alle bekannten Verschlüsselungsalgorithmen
eingesetzt werden.
Entsprechendes gilt für die Entschlüsselungsmittel des erfindungsgemäßen Empfän
gers. Sie sind zwischen dem Dateneingang des Empfängers und dem Datenumset
zer des Empfängers vorgesehen. Das schließt jedoch nicht aus, dass bestimmte,
den Entschlüsselungsmitteln zuzuordnende Einheiten, die Aufgaben im Umfeld der
Datenentschlüsselung wahrnehmen, an anderer Stelle im Empfänger vorgesehen
sein können, beispielsweise parallel zum Datenumsetzer geschaltet sind. Die
Entschlüsselungsmittel sind jedenfalls so angeordnet, dass die Entschlüsselung
zwischen dem seriellen Dateneingang des Empfängers und dem Eingang des
Datenumsetzers stattfindet. Am Dateneingang empfangene, verschlüsselte serielle
Daten können aufgrund der Anordnung der Entschlüsselungsmittel unmittelbar bei
der Weiterleitung an den Datenumsetzer entschlüsselt werden. Die Entschlüssel
ungseinheit ist hierfür zum Umsetzen von verschlüsselten seriellen Daten in ent
schlüsselte serielle Daten ausgebildet.
Es wird deutlich, dass es für die erfindungsgemäße Lösung keine Rolle spielt,
welchen speziellen (zweiten) Datentyp der Dateneingang des Senders bzw. der
Datenausgang des Empfängers unterstützt. Wesentlich für die Erfindung ist die
serielle Datenabgabe durch den Sender und der serielle Datenempfang durch den
Empfänger. Daher erstreckt sich der Anwendungsbereich der Erfindung auf die
unterschiedlichsten Sender oder Empfänger. Es können beispielsweise am Daten
eingang des Senders bzw. am Datenausgang des Empfängers analoge Daten, etwa
in Form einer (oder mehrerer) zeitabhängiger nicht digitalisierter elektrischer Span
nungen oder Lichtintensitäten anliegen. Diese Daten können in zeitlicher Hinsicht
seriell oder parallel am Dateneingang des Senders bzw. am Datenausgang des
Empfängers anliegen.
Im folgenden werden bevorzugte Weiterbildungen des erfindungsgemäßen Senders
und des erfindungsgemäßen Empfängers zunächst getrennt beschrieben.
Der Sender weist in einer bevorzugten Ausführungsform ein Sendeschieberegister
auf, das mit den Verschlüsselungsmitteln verbunden ist. Das Sendeschieberegister
ist zur Aufnahme binär kodierter Daten und seriellen Abgabe binär kodierter Daten
ausgebildet. Die vom Sendeschieberegister aufgenommenen Daten werden ihm
vom Dateneingang her zugeleitet. In einem speziellen Ausführungsbeispiel handelt
es sich bei den vom Sendeschieberegister aufgenommenen um 8 parallele
Datenbits, die von einem internen 8-Bit-Datenbus des Senders her eingehen.
Die Verschlüsselungsmittel weisen vorzugsweise ein Schlüsselregister auf, das zur
Aufnahme und Abgabe eines vorgebbaren Binärschlüssels mit einer vorbestimmten
Anzahl an Bitstellen ausgebildet ist. Vor Beginn eines Kommunikationsvorganges
kann bei dieser Ausführungsform ein Binärschlüssel in das Schlüsselregister ge
laden werden. Dadurch kann bei Bedarf für jeden Kommunikationsvorgang ein
anderer Binärschlüssel verwendet werden, was die Entschlüsselung ausgehender
Daten für nicht legitimierte Dritte zusätzliche erschwert.
Das Schlüsselregister des Senders ist bei einer Weiterbildung dieses Ausführungs
beispiels mit dem Dateneingang verbunden. Auf diese Weise ist es möglich, von
dem mit dem Dateneingang verbundenen Gerät, beispielsweise von einer zentralen
Prozessoreinheit (CPU) eines Computers, einen für die Verschlüsselung zu ver
wendenden Binärschlüssel entgegen zu nehmen. Der Sender benötigt bei dieser
Ausführungsform keine eigenen Speicher- und Steuermittel für die Verwaltung
unterschiedlicher Binärschlüssel.
In einer weiteren bevorzugten Ausführungsform der Erfindung weisen die Ver
schlüsselungsmittel ein Verschlüsselungselement auf, das eingangsseitig mit dem
Datenumsetzer verbunden ist und das zur Verschlüsselung der vom Datenumsetzer
her empfangenen Daten ausgebildet ist. Das Verschlüsselungselement ist unabhän
gig von Ressourcen, die ein mit dem Dateneingang des Senders verbundenes Gerät
verwaltet. So werden beispielsweise für die Verschlüsselung keine externen
Rechenmittel, etwa eine CPU, in Anspruch genommen. Dadurch erzielt der erfin
dungsgemäße Sender eine Entlastung des oder der am Eingang angeschlossenen
Geräte. Das Verschlüsselungselement kann in einem speziellen Ausführungsbeispiel
in einfacher Form als fest verdrahtete Schaltung ausgebildet werden.
Eine Weiterbildung des erfindungsgemäßen Senders sieht vor, dass das Verschlüs
selungselement eingangsseitig mit dem Schlüsselregister verbunden ist. Dadurch
werden die vorteilhaften Wirkungen des Schlüsselregisters und des Verschlüssel
ungselementes kombiniert. Das externe Gerät kann bei Bedarf zur Erzeugung
und/oder Übergabe eines Binärschlüssels an den Sender herangezogen werden, ist
aber ansonsten an der Datenverschlüsselung unbeteiligt.
Die Verschlüsselungsmittel weisen vorzugsweise einen Pseudozufallsfolgengenera
tor auf, der zur Erzeugung und Abgabe einer binär kodierten Pseudozufallszahlenfol
ge ausgebildet ist. Der Pseudozufallsfolgengenerator ist ausgangsseitig mit dem
Verschlüsselungselement verbunden. Die erzeugte Pseudozufallszahlenfolge wird
dem Verschlüsselungselement zugeleitet und von diesem zur Verschlüsselung der
vom Datenumsetzer her eingehenden Bitströme genutzt. Besonders vorteilhaft ist
eine eingangsseitige Verbindung des Pseudozufallsfolgengenerators mit dem
Schlüsselregister. Der Erzeugung der Pseudozufallszahlenfolge kann ein jeweils
individueller Binärschlüssel zugrundegelegt werden. Die Anzahl der möglichen
Pseudozufallszahlenfolgen kann dadurch praktisch unendlich groß gemacht werden.
Im folgenden werden vorteilhafte Weiterbildungen des erfindungsgemäßen Empfän
gers beschrieben. Diese sind zumeist mit einem oben beschriebenen Sender
kompatibel ausgebildet. Die Vorteile dieser Ausführungsformen eines unten be
schriebenen Empfängers ergeben sich somit aus den oben genannten Vorteilen der
entsprechenden Ausführungsformen des oben beschriebenen Senders. Vorteile
liegen weiterhin schon in der Kompatibilität zwischen Sender und Empfänger
selbst, da hierdurch bei Verwendung des erfindungsgemäßen Senders und Empfän
gers in unterschiedlichen Geräten eine reibungslose Kommunikation zwischen den
Geräten gewährleistet ist.
Der Datenumsetzer des Empfängers weist vorteilhafterweise ein Empfangsschiebe
register auf, das zur seriellen Aufnahme binär kodierter Daten sowie zur Abgabe
dieser Daten ausgebildet ist. In einer weiteren Ausführungsform des Empfängers ist
bei den Entschlüsselungsmitteln ein Schlüsselregister vorgesehen, das zur Auf
nahme eines vorgebbaren Binärschlüssels mit einer vorbestimmten Anzahl an
Bitstellen ausgebildet ist.
Grundsätzlich kann mit einem festen Binärschlüssel gearbeitet werden. Das Schlüs
selregister ist jedoch vorzugsweise mit dem Dateneingang verbunden. Dadurch
können von extern Schlüssel übergeben und im Schlüsselregister abgelegt werden,
die zur Entschlüsselung eingehender Daten verwendet werden. Bei einer zusätzli
chen Verbindung des Schlüsselregisters mit dem Datenausgang kann auch die
Speicherung von extern eingegangener Schlüssel in einem extern angeschlossenen
Speichermedium, beispielsweise auf einer Festplatte eines Computers vorgenom
men werden. Dies ist beispielsweise dann sinnvoll, wenn individualisierte Schlüssel
verwendet werden, anhand derer jederzeit die Identität eines Senders von Daten
überprüft werden soll.
Die Entschlüsselungsmittel weisen in einer bevorzugten Ausführungsform ein
Entschlüsselungselement auf, das ausgangsseitig mit dem Datenumsetzer ver
bunden ist und das zur Entschlüsselung der vom Dateneingang her empfangenen
Daten ausgebildet ist. Die Vorteile dieser Ausführungsform ergeben sich durch
Analogieschluss aus den Vorteilen der oben beschriebenen Ausführungsform eines
erfindungsgemäßen Senders mit einem Verschlüsselungselement. Das Entschlüssel
ungselement ist demzufolge in einer anderen Ausführungsform ebenfalls mit
Schlüsselregister des Empfängers verbunden.
Die Entschlüsselungsmittel weisen in einer bevorzugten Ausführungsform einen
Pseudozufallsfolgengenerator auf, der zur Erzeugung und Abgabe einer binär
kodierten Pseudozufallszahlenfolge ausgebildet ist. Der Pseudozufallsfolgengenera
tor ist ausgangsseitig mit dem Entschlüsselungselement verbunden und in einer
weiteren Ausführungsform vorzugsweise eingangsseitig mit dem Schlüsselregister
verbunden.
Die strukturelle Gleichheit von Sender und Empfänger im Hinblick auf den Verschlüs
selungs- und Entschlüsselungsalgorithmus erlaubt eine einfache, standardisierte
Datenver- und -entschlüsselung, bei der allein die verwendeten Binärschlüssel
zwischen Sender und Empfänger ausgetauscht werden müssen.
Im folgenden werden weitere Weiterbildungen von Sender und Empfänger gemein
sam beschrieben. Es versteht sich, dass hierbei jeweils zugleich auch auf die Sen
dereinheit oder die Empfängereinheit einer erfindungsgemäßen Sender- und Emp
fängeranordnung Bezug genommen wird, soweit explizit nichts anderes gesagt ist.
Sender oder Empfänger weisen in bevorzugten Ausführungsformen ein Krypto
steuerregister auf, das ausgangsseitig mit dem Verschlüsselungselement bzw. mit
dem Entschlüsselungselement verbunden ist und das zur Aufnahme und Abgabe
binär kodierter Steuerdaten ausgebildet ist. In einer bevorzugten Sender- und
Empfängeranordnung ist ein gemeinsames derartiges Kryptosteuerregister für die
Sender- und die Empfängereinheit vorgesehen. Mit Hilfe im Kryptosteuerregister
enthaltener Steuerdaten kann beispielsweise die Aktivierung oder Deaktivierung
einzelner Einheiten der Verschlüsselungs- oder Entschlüsselungsmittel kontrolliert
werden.
Das Kryptosteuerregister ist in einer weiteren Ausführungsform mit dem Schlüssel
register verbunden. Hierdurch kann die Schreibberechtigung für das Überschreiben
des Schlüsselregisters mit einem neuen Binärschlüssel gesteuert werden.
Der Pseudozufallsfolgengenerator des Senders oder Empfängers weist in einer
anderen bevorzugten Ausführungsform eine Folgengeneratorschaltung auf, die ein
mit einer Rückkopplungsschaltung rückgekoppeltes Schieberegister enthält. Die
Verwendung derartiger Folgengeneratorschaltungen ist an sich bekannt. Sie bieten
sich für den Einsatz im erfindungsgemäßen Sender oder Empfänger besonders an,
weil sie eine besonders einfache Realisierung einer fest verdrahteten, effizienten
Ver- bzw. Entschlüsselungsschaltung erlauben.
Die Rückkopplungsschaltung ist vorzugsweise derart ausgebildet, dass sie eine
lineare Rückkopplungsfunktion bildet. Solche linearen Rückkopplungsschaltungen
(linear feedback shift register) werden durch eine Modulo-2-Addition, d. h. eine
bitweise XOR-Verknüpfung bestimmter Bits des Schieberegisters realisiert. Ein n-Bit
-Schieberegister mit einer linearen Rückkopplung nimmt bei einer geeigneten Wahl
der Rückkopplungsfunktion 2n unterschiedliche interne Zustände an.
Diese Eigenschaft wird in einer Weiterbildung dieser Ausführungsform genutzt, bei
der die Rückkopplungsschaltung derart ausgebildet ist, dass die Rückkopplungs
funktion ein primitives Polynom modulo zwei ist. Mit einem solchen, auch als
irreduziblem Polynom des Grades n (n ist die Anzahl der Bitstellen des Schieberegi
sters) erreicht eine Folge von Ausgabebits des Schieberegisters die maximal
erreichbare Periode von 2n-1. Das bedeutet, dass die erste Wiederholung der vom
Pseudozufallsfolgengenerator ausgegebenen Zahlenfolge erst nach 2n-1 durch
geführten Schiebeoperationen auftritt. Aufgrund dieser Eigenschaft lassen sich
durch die Wahl eines ausreichend großen Wertes von n praktisch unendlich lange,
also nahe zu ideale Zufallszahlenfolgen erzeugen, die im erfindungsgemäßen Sender
oder Empfänger zur Ver- und Entschlüsselung verwendet werden.
Bei einer weiteren Ausführungsform des erfindungsgemäßen Senders oder Empfän
gers ist das Schieberegister der Folgengeneratorschaltung so ausgebildet, dass ein
Teil des Schieberegisters zugleich die Funktion des Schlüsselregisters übernimmt.
Dadurch entfällt die Notwendigkeit, ein separates Schlüsselregister vorsehen zu
müssen.
Diese Ausführungsform kann beispielsweise so realisiert werden, dass das Schiebe
register der Folgengeneratorschaltung von mehreren in Reihe geschalteten Teilregi
stern gebildet wird, die zur zeitlich parallelen Aufnahme eines aus einer vorbe
stimmten Anzahl von Bitstellen bestehenden Teils des Binärschlüssels ausgebildet
sind, wobei das in der Reihe letzte Teilregister zur seriellen Abgabe des in ihm
enthaltenen Teils des Binärschlüssels ausgebildet ist und die restlichen Teilregister
zur zeitlich parallelen Abgabe des jeweils in ihnen enthaltenden Teils des Binär
schlüssels an das in der Reihe nachfolgende Teilregister. Bei dieser Ausführungs
form genügen wenige Taktzyklen zur Übergabe eines Binärschlüssels, da stets
mehrere, beispielsweise 8 Bitstellen des Binärschlüssels gleichzeitig übergeben
werden.
Das Schieberegister der Folgengeneratorschaltung weist bevorzugt eine Anzahl in
Reihe geschalteter Flipflops auf, wobei einem in der Reihe ersten Flipflop eine
höchstwertige Bitstelle zugeordnet ist, einem eingangsseitig mit dem Ausgang des
ersten Flipflops verbundenen zweiten Flipflop eine nächst niederwertige Bitstelle
zugeordnet ist, und so fort bis hin zu einem letzten Flipflop, dem eine niedrigst
wertige Bitstelle zugeordnet ist. Die Folgengeneratorschaltung kann zusätzlich ein
dem letzten Flipflop des Schieberegisters nachgeschaltetes erstes XOR-Gatter
aufweisen, mit dessen Eingängen die Ausgänge vorbestimmter Flipflops verbunden
sind und dessen Ausgang mit dem Eingang des ersten Flipflops und mit dem
Datenausgang des Senders bzw. mit dem Empfangsschieberegister des Empfängers
verbunden ist.
Das Verschlüsselungselement des Senders bzw. das Entschlüsselungselement des
Empfängers kann in einer einfachen Ausbildung ein XOR-Gatter aufweisen, mit
dessen Eingängen der Ausgang des Pseudofolgengenerators und der Datenumset
zer des Senders bzw. der Dateneingang des Empfängers verbunden sind. Der
Ausgang des XOR-Gatters ist mit dem Datenausgang des Senders bzw. mit dem
Datenumsetzer des Empfängers verbunden. Aufgrund der Wertetabelle eines XOR-
Gatters ist die Entschlüsselung mit einem solchen Verschlüsselungselement krypto
grafisch kodierter Dateien nur dann möglich, wenn der Empfänger über eine Ent
schlüsselungseinheit derselben Struktur verfügt wie die Verschlüsselungseinheit.
Zusätzlich müssen die verwendeten Binärschlüssel und das aktuell vom Pseudo
zufallsfolgengenerator ausgegebene Bit Taktzyklus für Taktzyklus übereinstimmen.
Das Schlüsselregisters ist bei einer weiteren Ausführungsform derart beschaltet,
dass der Schreibzugriff auf das Schlüsselregister mit einem im Kryptosteuerregister
enthaltenen Steuerbit aktivierbar oder deaktivierbar ist. Auch die Ver- und Ent
schlüsselung können durch eine entsprechende Beschaltung mit Hilfe eines jeweils
anderen Steuerbits aktivierbar oder deaktivierbar sein.
Sender oder Empfänger sind vorzugsweise als integrierte Schaltungen in einem
Senderbauelement bzw. einem Empfängerbauelement realisiert. Eine Ausbildung als
ASIC (Application Specific Integrated Circuit) ermöglicht die Anpassung an speziel
le Anwendererfordernisse. Hierzu sei erneut auf die oben erwähnte Breite der
Anwendungsmöglichkeiten der vorliegenden Erfindung hingewiesen.
Auch die Sender- und Empfängeranordnung wird vorzugsweise als integrierte
Schaltung in einem Sender/Empfängerbaustein realisiert.
Eine derzeit besonders bevorzugte Ausführungsform der erfindungsgemäßen
Sender- und Empfängeranordnung zeichnet sich dadurch aus, dass der Datenein
gang der Sendereinheit ausgebildet ist zum Empfang binär kodierter, mehrere
zeitlich parallel vorliegende Bitstellen enthaltender (paralleler) Datenstrukturen, dass
der Datenumsetzer der Sendereinheit ein Parallelseriellumsetzer ist, der zum Umset
zen einer parallelen Datenstruktur in serielle Daten ausgebildet ist und dass der
Datenumsetzer der Empfängereinheit ein Seriellparallelumsetzer ist, der zum Umset
zen serieller Daten in eine parallele Datenstruktur ausgebildet ist.
Eine solche Sender- und Empfängeranordnung kann als UART (Universal Asyn
chronous Receiver Transmitter)-Bauelement ausgebildet werden. Bei einem solchen
Krypto-UART-Baustein können die Vorteile weit verbreiteter Standards dieses
Bauelementtyps genutzt werden, so dass eine Kompatibilität mit bekannten der
artigen Bauelementen ohne Verschlüsselungs- und Entschlüsselungsfunktionalität
erreicht wird.
Insbesondere kann bei dem erfindungsgemäßen UART ein Registersatz und ein
Steuerdatensatz vorgesehen werden, der alle Register und Steuerdaten eines
UART-Bausteins vom eingangs erwähnten, bekannten Typ PC16550D enthält.
Durch eine zu einem UART-Baustein vom Typ PC16550 kompatible Adressierung
des Schlüsselregisters und des Kryptosteuerregisters in einem Lesemodus und
einem Schreibmodus wird die Softwarekompatibilität garantiert.
Weitere Merkmale und Vorteile der Erfindung werden durch die folgende Beschrei
bung einiger Ausführungsbeispiele an Hand der Zeichnung verdeutlicht. Darin zeigt:
Fig. 1 ein vereinfachtes Blockschaltbild eines erfindungsgemäßen Sender
bauelementes,
Fig. 2 ein vereinfachtes Blockschaltbild eines erfindungsgemäßen Empfän
gerbauelementes,
Fig. 3 ein vereinfachtes Blockschaltbild eines Ausführungsbeispiels eines
erfindungsgemäßen Sender- und Empfängerbauelementes,
Fig. 4 ein etwas detaillierteres Blockschaltbild der Sendereinheit des Sen
der- und Empfängerbauelements der Fig. 3,
Fig. 5 eine etwas detaillierteres Blockschaltbild der Empfängereinheit des
Sender- und Empfängerbauelements der Fig. 3,
Fig. 6 ein Ausführungsbeispiel einer Schaltung für einen Pseudozufalls
folgengenerator und
Fig. 7 eine weitere Darstellung des Pseudozufallsfolgengenerators aus Fig.
6.
Fig. 1 zeigt ein stark vereinfachtes Blockschaltbild eines Senderbauelementes 10.
Dieses Senderbauelement ist zur Abgabe binär kodierter, serieller Daten an einem
Ausgang 12 - hier ein elektrisch leitfähiger Kontaktstift - ausgebildet. Über einen
parallelen Dateneingang 14 werden dem Bauelement 10 die zu sendenden Daten
von extern übermittelt. Der parallele Eingang 14 wird von einer Anzahl elektrisch
leitfähiger Kontaktstifte gebildet, von denen der Einfachheit halber hier nur drei
Kontaktstifte 16, 18 und 20 dargestellt sind. Typischerweise sind acht Kontakt
stifte am parallelen Eingang 14 vorgesehen. Es versteht sich, dass jedoch auch
Auführungsformen mit weniger oder mehr Kontaktstiften gebildet werden können.
Der parallele Eingang 14 kann beispielsweise mit dem Datenbus einer CPU eines
Computers verbunden sein.
Der parallele Eingang 14 ist über hier nicht näher dargestellte, dem Fachmann
geläufige Einheiten wie beispielsweise einem Pufferspeicher mit einem internen
Datenbus 22 des Senderbauelementes 10 verbunden. Ebenfalls mit dem Datenbus
verbunden ist eine Wandler- und Verschlüsselungseinheit 24 sowie ein Kryptosteu
erregister 26. Die Wandler- und Verschlüsselungseinheit 24 umfasst einen Par
allelseriellwandler 28, eine mit dem Ausgang des Parallelseriellwandlers 28 ver
bundene Kryptoeinheit 30 sowie ein Verschlüsselungselement 32. Das Verschlüs
selungselement 32 ist eingangsseitig sowohl mit einem Ausgang des Parallelseriell
wandlers 28 als auch mit dem Ausgang der Kryptoeinheit 30 verbunden. Weiterhin
ist das Verschlüsselungselement 32 zum Empfang von Steuerdaten aus dem
Kryptosteuerregister 26 ausgebildet.
Im Folgenden wird die Funktionsweise des integrierten Senderbauelements 10
näher erläutert. Am parallelen Eingang 14 empfangene Daten werden über den
internen Datenbus 22 weitergeleitet. Die Zieladresse der eingehenden Daten wird
dem Bauelement 10 über hier nicht dargestellte, separate Steuereingänge über
mittelt. Die Adressierung innerhalb des Bauelements 10 wird von einer hier eben
falls nicht näher dargestellten, dem Fachmann geläufigen Auswahl- und Steuerlogik
vorgenommen. Zu näheren Einzelheiten sei auf die Beschreibung des Ausführungs
beispiels der Fig. 3 verwiesen.
Bei den am parallelen Eingang 14 eingehenden Daten kann es sich unter anderem
um binäre Klartextdaten, einen Binärschlüssel oder an das Kryptosteuerregister 26
zu übermittelnde Kryptosteuerdaten handeln. Mit Hilfe der im Kryptosteuerregister
26 enthaltenen Kryptosteuerdaten wird beispielsweise der Betrieb des Verschlüs
selungselementes 32 gesteuert. Das Verschlüsselungselement 32 arbeitet in Ab
hängigkeit von übermittelten Kryptosteuerdaten. Es werden entweder vom Par
allelseriellwandler 28 her empfangene, unverschlüsselte Klartextdaten an den
Ausgang 12 weitergeleitet. Oder es werden mit Hilfe einer von der Kryptoeinheit
30 her empfangenen Pseudozufallszahlenfolge die vom Parallelseriellwandler 28
empfangenen Daten verschlüsselt und dem Ausgang 12 zuführt.
Weitere im Kryptosteuerregister 26 enthaltene Kryptosteuerdaten steuern die
Schreibberechtigung während der Übergabe eines Binärschlüssels an die Kryptoein
heit 30. Ist die Schreibberechtigung aktiviert, so werden die am parallelen Eingang
14 empfangenen Daten in einem Schlüsselregister der Kryptoeinheit 30 abgelegt.
Der Aufbau eines solchen Schlüsselregisters wird weiter unten an Hand der Fig.
6 und 7 näher erläutert. Mit Hilfe des Binärschlüssels werden die am Eingang der
Kryptoeinheit anliegenden seriellen Daten nach einem Verschlüsselungsalgorithmus
verschlüsselt und dem Verschlüsselungselement 32 zugeleitet. Auf Einzelheiten des
Verschlüsselungsalgorithmus wird ebenfalls unten an Hand der Fig. 6 eingegan
gen.
Das hier nur in seinen wesentlichen Grundzügen dargestellte integrierte Senderbau
element 10 erfüllt eine Schnittstellenfunktion zwischen einer CPU und beispiels
weise einem angeschlossenen Modem. Es können anstelle eines Modems jedoch
auch andere Wandler, beispielsweise ein Lichtwandler oder ein Digital-Analog-
Wandler angeschlossen sein. Das Senderbauelement 10 entlastet die CPU von dem
mit der Datenverschlüsselung verbundenen Rechenschritten, indem die Verschlüs
selung mit Hilfe eines hardwaremäßig realisierten Verschlüsselungsalgorithmus
unmittelbar nach der Umsetzung der von der CPU eingegangenen parallelen Daten
in serielle Daten am Parallelseriellumsetzer erfolgt ist. Während der Verschlüssel
ungsalgorithmus in der Kryptoeinheit 30 fest verdrahtet umgesetzt ist, wird durch
einen individuell vorgebbaren Binärschlüssel ein wirksamer Schutz vor einem
Einblick in zu übermittelnde Daten bewirkt. Ein Beispiel für einen fest verdrahteten
Verschlüsselungsalogrithmus wird weiter unten an Hand von Fig. 6 beschrieben.
In einer Abwandlung des vorliegenden Ausführungsbeispiels erfolgt die Verschlüs
selung in der Kryptoeinheit 30 softwaregestützt. Die Kryptoeinheit weist bei dieser
Ausführungsform die hierfür erforderlichen Rechenmittel auf, insbesondere einen
Programmspeicher und einen Prozessor zur Durchführung der durch ein im Pro
grammspeicher enthaltenes Verschlüsselungsprogramm vorgesehenen Rechnungen.
Fig. 2 zeigt in einem stark vereinfachten Blockschaltbild ein Ausführungsbeispiel
des erfindungsgemäßen Empfängerbauelements 34. Es handelt sich hierbei um ein
integriertes Empfänger- und Entschlüsselungsbauelement. Ähnlich wie das inte
grierte Sender- und Verschlüsselungsbauelement nach Fig. 1 erfüllt auch das
Bauelement 34 der Fig. 2 eine Schnittstellenfunktion. Jedoch ist das Bauelement
34 zum Empfang serieller Daten, beispielsweise von einem Modem her an einem
seriellen Eingang 36 und zur parallelen Abgabe von Daten an einen parallelen
Ausgang, beispielsweise an einen Datenbus einer CPU, ausgebildet.
Am seriellen Eingang 36 eingegangene Daten werden, gesteuert von einem Krypto
steuerregister 40 mittels eines Entschlüsselungselementes 42 entweder unmittelbar
einem Seriellparallelwandler 44 zugeleitet oder mit Hilfe einer von einer Kryptoein
heit 46 erzeugten Pseudozufallszahlenfolge entschlüsselt und dem Seriellparallel
wandler zugeleitet. Unverschlüsselte, binäre Klartextdaten oder mit Hilfe der
Kryptoeinheit 46 entschlüsselte Daten werden über den Seriellparallelwandler 44
und den internen Datenbus 48 dem parallelen Ausgang 38 zugeleitet.
Für die Entschlüsselung wird im Vergleich zur unmittelbaren Weiterleitung kein
zusätzlicher Taktzyklus benötigt. Entschlüsselte, serielle Daten werden von der
Kryptoeinheit an den Seriellparallelwandler 44 abgegeben. Ein interner Datenbus 48
verbindet den Seriellparallelwandler 44 mit dem parallelen Ausgang 38 sowie mit
dem Kryptosteuerregister 40 und der Kryptoeinheit 46. Der serielle Eingang 36 und
der parallele Ausgang 38 sind bei dem Empfängerbauelement 34 wie bei dem
Senderelement 10 der Fig. 1 als Kontaktstifte ausgebildet. Auf die nähere Dar
stellung weiterer, dem Fachmann bei einem derartigen Bauelement geläufiger
Funktionseinheiten wie beispielsweise einer Auswahl- und Steuerlogik oder einer
für die Steuerung der Kommunikation mit einem angeschlossenen Modem vor
gesehene Modemsteuereinheit wird hier der Einfachheit der Darstellung halber
verzichtet.
Fig. 3 zeigt in einer vereinfachten Blockdarstellung die Struktur eines Ausfüh
rungsbeispiels des erfindungsgemäßen Sender- und Empfängerbauelements. Hierbei
handelt es sich UART (Universal asychronous receiver transmitter) Baustein, der
zusätzlich zur Verschlüsselung und Entschlüsselung ausgehender bzw. eingehender
Daten ausgebildet ist und im Folgenden als Krypto-UART-Baustein 50 bezeichnet
wird.
Der Krypto-UART-Baustein 50 enthält eine Sendereinheit 52 und eine Empfänger
einheit 54. Ein interner Datenbus 56 verbindet die Sender- und die Empfänger
einheit 52 und 54 mit einem parallelen Datenein- und -ausgang 58. Der parallele
Datenein- und -ausgang wird von acht Kontaktstiften D0 bis D7 gebildet. Der
Krypto-UART-Baustein 50 ist mit bekannten UART-Bausteinen, beispielsweise vom
Typ PC16550D pinkompatibel (vgl. National Semiconductor: Datenblatt-PC16550D
Universal asychronous receiver/transmitter with FIFOs, National Semiconductor
Corp., Santa Clara, Juni 1995).
Mit dem internen Datenbus 56 ist zusätzlich ein Kryptosteuerregister 60 verbun
den. Mit den im Kryptosteuerregister 60 enthaltenen Steuerdaten wird der Betrieb
der Sendereinheit 52 und der Empfängereinheit 54 gesteuert, wie weiter unten
näher erläutert wird.
Die Sendereinheit 52 gibt über einen TxD-Pin 62 serielle Daten an ein angeschlos
senes Gerät, beispielsweise ein Modem, ab. Dem TxD-Pin 62 vorgeschaltet ist ein
Verschlüsselungselement 64 mit zwei Dateneingängen und einem Steuereingang.
Ein Dateneingang ist mit einem Senderschieberegister 66 verbunden, während der
andere Dateneingang mit einer Kryptoeinheit 68 verbunden ist. Der Steuereingang
des Verschlüsselungselements 64 ist mit dem Kryptosteuerregister 60 verbunden.
Ein vom Kryptosteuerregister 60 her empfangenes Steuerbit EE (Encryption Enable)
steuert die Funktionsweise des Verschlüsselungselements 64. Ist das Steuerbit EE
gesetzt ("1"), so werden vom Senderschieberegister 66 her empfangenen Daten
mit Hilfe der Kryptoeinheit 68 verschlüsselt und dem TxD-Pin 62 zugeleitet. Ist das
Steuerbit EE dagegen nicht gesetzt, so werden die vom Senderschieberegister 66
her empfangenen Daten unverschlüsselt an den TxD-Pin 62 weitergeleitet.
Die Kryptoeinheit ist eingangsseitig mit einem Schlüsselregister 70 verbunden. Das
Schlüsselregister weist 8 Bitstellen auf und stellt eine Übergabeschnittstelle vom
internen Datenbus 56 zur Kryptoeinheit 68 dar. Die Schlüsselübergabe ist nur
möglich, wenn ein Schreibberechtigungsbit TWE im Kryptosteuerregister 60
gesetzt ist. Auf die Einzelheiten der Übertragung eines Binärschlüssels an die
Kryptoeinheit 68 wird weiter unten unter Bezug auf Fig. 7 eingegangen.
Die Empfängereinheit 54 übernimmt über einen RxD-Pin 72 serielle Daten von
extern. Die empfangenen Daten werden an ein Entschlüsselungselement 74 gelei
tet. Das Entschlüsselungselement 74 ist eingangsseitig zusätzlich mit dem Aus
gang einer Kryptoeinheit 76 verbunden. Die Kryptoeinheit 76 der Empfängereinheit
54 weist dieselbe Struktur auf wie die Kryptoeinheit 68 der Sendereinheit 52.
Die Funktionsweise des Entschlüsselungselements 74 wird mit Hilfe eines im
Kryptosteuerregister 60 enthaltenen Steuerbits DE (Decryption Enable) gesteuert.
Ist das Steuerbit DE gesetzt, so werden die am Eingang des Entschlüsselungs
elements 74 anliegenden Daten entschlüsselt und vom Entschlüsselungselement 74
an ein Empfängerschieberegister 78 weitergeleitet. Ist das Steuerbit DE nicht
gesetzt, werden die vom RxD-Pin 72 empfangenen Daten vom Entschlüsselungs
element 74 direkt an das Empfängerschieberegister 78 weitergeleitet. Die Ent
schlüsselung und Weiterleitung erfolgt in einem einzigen Taktzyklus.
Die Kryptoeinheit 76 ist eingangsseitig mit einem Schlüsselregister 80 verbunden.
Das Schlüsselregister 80 der Empfängereinheit 54 ist in seinem Aufbau identisch
mit dem Schlüsselregister 70 der Sendereinheit. Seine Funktionsweise wird vom
Kryptosteuerregister 60 mit Hilfe eines Steuerbits RWE gesteuert. Ist dieses
Steuerbit gesetzt, ist das Schlüsselregister 80 der Empfängereinheit 54 sowie ein
in der Kryptoeinheit 76 enthaltenes Register zur Aufnahme eines Binärschlüssels
für das Überschreiben freigegeben.
Sind beide Steuerbits TWE und RWE gesetzt, so wird ein über den internen Daten
bus 56 übermittelter Binärschlüssel sowohl dem Schlüsselregister 70 der Sender
einheit 52 als auch dem Schlüsselregister 80 der Empfängereinheit 54 zugeleitet.
Zu Einzelheiten hierzu wird wiederum auf die Beschreibung zur Fig. 7 verwiesen.
Zur näheren Erläuterung der Struktur des Krypto-UART-Bausteins 50 werden im
folgenden zusätzlich die anhängenden Tabellen 1 und 2 herangezogen.
In der Tabelle 1 sind die im Krypto-UART-Baustein nach Fig. 3 vorgesehenen
Register vollständig aufgeführt. Die Benennung der Register folgt der vom UART-
Baustein vom Typ PC16550D her bekannten Bezeichnung und ist daher auf Eng
lisch angegeben. In den von links gesehen ersten drei Spalten der Tabelle 1 sind
die drei Bitstellen A2, A1 und A0 der in der jeweiligen Tabellenzeile aufgeführten
Register angegeben. Dabei kennzeichnet A0 die niedrigstwertige Bitstelle der
Binäradresse, A1 die nächst höherwertige und A2 die höchstwertige Bitstelle. Die
Registeradressierung ist abhängig vom Zugriffsmodus. Je nachdem, ob aus einem
Register gelesen oder in ein Register geschrieben werden soll, können unter einer
Binäradresse unterschiedliche Register angesteuert werden. So wird beispielsweise
mit der Binäradresse "000" im Lesemodus ein Empfängerhalteregister (Receive
holding register, RHR) und im Schreibmodus ein Senderhalteregister (Transmit
holding register, THR) angesteuert. Auf ein Scratchpadregister kann sowohl im
Lese- als auch im Schreibmodus zugegriffen werden. Die Adressierung "111" für
dieses Register gilt daher sowohl im Lesemodus als auch im Schreibmodus.
Der Registersatz des Krypto-UART-Bausteins 50 der Fig. 3 enthält alle Register
eines konventionellen UART-Bausteins. Diese Register stehen im Krypto-UART-
Baustein 50 unter den gleichen Adressen, wie sie in einem konventionellen UART-
Baustein zu finden sind.
Der Registersatz des Krypto-UART-Bausteins 50 ist gegenüber dem Registersatz
eines konventionellen UART-Bausteins jedoch um zwei Register erweitert. Neu ist
das Kryptosteuerregister, das in Tabelle 1 mit CryptControl Register CCR bezeich
net wird (Bezugszeichen 60 in Fig. 3) und das Schlüsselregister, das in Tabelle 1
als Key Register KR aufgeführt ist (Bezugszeichen 70 und 80 in Fig. 3). Da im
Registersatz eines konventionellen UART-Bausteins die Binäradressen "101" und
"110" im Schreibmodus keinem Register zugeordnet sind, sind diese dem Krypto
steuerregister CCR bzw. dem Schlüsselregister KR zugeordnet. Auf beide Register
kann nur schreibend zugegriffen werden.
Die Tabelle 2 gibt die Bedeutung der jeweils 8 Bitstellen der in Tabelle 1 aufgeführ
ten Register an. In der linken Spalte der Tabelle 2 ist wiederum die Binäradresse
des jeweiligen Registers angegeben. In der nach rechts folgenden Spalte ist die aus
Tabelle 1 bekannte Abkürzung des jeweiligen Registers genannt. Die nachfolgenden
acht Spalten geben die Bedeutung der Bitstellen des jeweiligen Registers an. Dabei
kennzeichnet Bit < 7 < die höchstwertige Bitstelle (Most significant Bit, MSB) und
Bit < 0 < die niedrigstwertige Bitstelle (Least significant Bit, LSB).
Die in Tabelle 2 wiedergegebene Struktur der Register des Krypto-UART-Bausteins
50 entspricht weitestgehend der eines UART-Bausteins vom Typ PC16550D.
Abweichend hiervon sind jedoch die schon in Tabelle 1 aufgeführten Register CCR
und KR in ihrer Struktur dargestellt. Im Kryptosteuerregister CCR sind die niedrig
sten vier Bitstellen zur Steuerung der Verschlüsselung und Entschlüsselung mit
Hilfe des Schlüsselregisters KR (Bezugszeichen 70 und 80 in Fig. 3) und der
Verschlüsselungs- bzw. Kryptoeinheit 68 bzw. 76 enthalten. Die niedrigstwertige
Bitstelle des Kryptosteuerregisters enthält das oben erwähnte Steuerbit "TWE". Ist
dieses Steuerbit gesetzt ("1"), so ist das Schlüsselregister 70 der Sendereinheit 52
zum Überschreiben freigegeben. Ist dieses Steuerbit nicht gesetzt, so ist das
Schlüsselregister 70 für Schreibvorgänge gesperrt.
Die nächst höherwertige Bitstelle des Kryptosteuerregisters CCR enthält das
Steuerbit "RWE". Mit diesem Steuerbit wird in gleicher Weise der Schreibzugriff auf
das Schlüsselregister 80 der Empfängereinheit 54 gesteuert. Mit Hilfe der beiden
Steuerbits "TWE" und "RWE" ist es möglich, das Schlüsselregister 70 der Sender
einheit 52 und das Schlüsselregister 80 der Empfängereinheit unter derselben
Binäradresse "101" anzusprechen. Sind beide Bitstellen gesetzt, können beide
Schlüsselregister 70 und 80 überschrieben werden.
Die dritte Bitstelle Bit < 2 < des Kryptosteuerregisters CCR enthält das schon oben
erwähnte Steuerbit "EE". Ist das Steuerbit "EE" (Encryption Enable) gesetzt, wird
die Kryptoeinheit 68 aktiviert und das Verschlüsselungselement 64 verschlüsselt
die vom Senderschieberegister 66 empfangenen Daten und leitet diese an den TxD-
Pin 62 weiter. Ist das Steuerbit EE nicht gesetzt, ist die Kryptoeinheit 68 deakti
viert und das Verschlüsselungselement 64 leitet die vom Senderschieberegister
66 her empfangenen Daten unverschlüsselt an den TxD-Pin 62 weiter.
Das vierte Steuerbit DE des Kryptosteuerregisters CCR steuert die Kryptoeinheit 76
und das Entschlüsselungselement 74 der Empfängereinheit. Ist das Steuerbit DE
gesetzt, so werden die vom RxD-Pin 72 empfangenen Daten vom Entschlüssel
ungselement 74 mit Hilfe der von der Kryptoeinheit 76 erzeugten Pseudozufalls
zahlenfolge entschlüsselt und dem Empfängerschieberegister 78 zugeleitet. Ist das
Steuerbit DE nicht gesetzt, so werden die vom RxD-Pin empfangenen Daten über
das Entschlüsselungselement 74 direkt zum Empfängerschieberegister 78 geleitet.
Das in Tabelle 2 unter der Binäradresse "110" aufgeführte Schlüsselregister KR
gibt die Struktur sowohl des Schlüsselregisters 70 der Sendereinheit 52 als auch
des Schlüsselregisters 80 der Empfängereinheit 54 wieder. Das Schlüsselregister
KR enthält 8 Bitstellen, in denen die Bits "0" bis "7" eines Binärschlüssels enthal
ten sind. Es können mit Hilfe des Schlüsselregisters KR Schlüssel beliebiger Größe
an die Kryptoeinheit 68 bzw. die Kryptoeinheit 76 weitergeleitet werden. Die Bit
stellenzahl des Binärschlüssels ist durch die Struktur der Kryptoeinheiten 68 bzw.
76 vorgegeben.
Fig. 4 stellt in einem Blockschaltbild nähere Einzelheiten der Sendereinheit 52 des
Krypto-UART-Bausteins 50 aus Fig. 3 dar. Die hierzu im folgenden beschriebenen
Sachverhalte sind ohne weiteres ebenso auf das Senderbauelement der Fig. 1
übertragbar.
Im Vergleich mit Fig. 3 sind in Fig. 4 zusätzlich dargestellt unter anderem ein
zwischen den internen Datenbus 56 und das Senderschieberegister geschaltetes
Senderhalteregister (Transmit Hold Register, THR) 81 und ein Baudratengenerator
82. Beide Elemente sind von einem konventionellen UART-Baustein vom Typ
PC16550 her bekannt. Der Baudratengenerator erzeugt ein Taktsignal mit einer von
den Übertragungsparametern eines jeweiligen Kommunikationsvorganges abhängi
gen Taktfrequenz. Der Baudratengenerator 82 triggert sowohl das Senderschiebere
gister 66 (TSR) als auch einen in der Kryptoeinheit 68 enthaltenen Pseudozufalls
folgengenerator 84. Dieser wird im Folgenden kurz als Folgengenerator 84 bezeich
net.
Zwischen den Baudratengenerator 82 und dem Folgengenerator 84 ist ein erstes
UND-Gatter geschaltet, an dessen beiden Eingängen das Taktsignal des Baudraten
generators und das Steuerbit EE des Kryptosteuerregisters 60 (CCR) anliegt, vgl.
Tabelle 2 und Fig. 3. Das erste UND-Gatter 86 bewirkt, dass der Folgengenerator
84 nur dann aktiviert wird, wenn das Steuerbit EE gesetzt ist.
Der Folgengenerator 84 ist zum Erzeugen und Abgeben einer binären Pseudo
zufallsfolge ausgebildet. Einzelheiten seines Aufbaus werden unten an Hand von
Fig. 6 und 7 erläutert. Mit jedem Taktsignal des Baudratengenerators 82 wird bei
gesetztem Steuerbit EE am Ausgang des Folgengenerators 84 ein Datenbit "0"
oder "1", ausgegeben. Dieses "verschlüsselte" Datenbit wird an einen Eingang
eines zweiten UND-Gatters 88 geleitet, an dessen zweitem Eingang das Steuerbit
EE anliegt. Der Ausgang des zweiten UND-Gatters 88 ist mit einem Eingang eines
XOR-Gatters 90 verbunden (XOR = exclusiv ODER). Am zweiten Eingang des XOR-
Gatters 90 liegt der Ausgang des Senderschieberegisters 66 an. Das zweite UND-
Gatter 88 und das XOR-Gatter 90 bilden gemeinsam das Verschlüsselungselement
64 aus Fig. 3. Das zweite UND-Gatter 88 übernimmt dabei die Funktion, die
Datenverschlüsselung an- oder abzuschalten. Ist nämlich das Steuerbit EE nicht ge
setzt, so liegt am Ausgang des zweiten UND-Gatters 88 unabhängig vom Aus
gangszustand des Folgengenerators 84 eine "0" an. Mit diesem Wert an dem einen
Eingang des XOR-Gatters 90 erzeugt dieses an seinem Ausgang stets den am
anderen Eingang anliegenden Wert, gibt also das vom Senderschieberegister 66
abgegebene Bit unverschlüsselt weiter. Ist dagegen das Steuerbit EE gesetzt, so
liegt an dem einen Eingang des XOR-Gatters 90 der vom Folgengenerator 84 im
jeweiligen Takt erzeugte Wert an. Der Ausgangswert des XOR-Gatters 90 ist in
diesem Fall demzufolge von dem jeweils erzeugten Wert der Pseudozufallsdaten
folge abhängig.
Dem Ausgangswert des XOR-Gatters 90, der über den TxD-Pin 62 nach extern
abgegeben wird, ist aufgrund der Schaltlogik des XOR-Gatters nicht zu entnehmen,
welchen Wert das Senderschieberegister 66 im jeweiligen Taktzyklus abgegeben
hat. Zur Entschlüsselung ist vielmehr eine Kryptoeinheit erforderlich, die über einen
identischen Binärschlüssel und einen identischen Entschlüsselungsmechanismus
verfügt, wie ihn die Kryptoeinheit 84 verwendet. Dies wird bei der Beschreibung
der nachfolgenden Figuren weiter verdeutlicht.
Dem XOR-Gatter 90 nachgeschaltet ist ein Start-, Stop- und Paritygenerator 92,
der den verschlüsselten Daten ein Startbit, ein oder 2 Stopbits und optional ein
Paritybit unverschlüsselt hinzufügt. Der Generator 92 greift hierzu auf vorgebbare
Übertragungsparameter zurück.
Fig. 5 zeigt in gleicher Darstellungsweise wie Fig. 4 nähere Einzelheiten der
Empfängereinheit 54. Auch hier ist dem Fachmann klar, dass eine Übertragung der
im folgenden dargestellten technischen Sachverhalte auf das Empfängerbauelement
der Fig. 2 ohne weiteres möglich ist.
Zusätzlich zu den aus Fig. 3 bekannten Elementen dargestellt ist unter anderem
ein vom Baustein PC16550D bekanntes Empfängerhalteregister 95 (Receive Hold
Register, RHR) zwischen dem internen Datenbus 56 und dem Empfängerschiebere
gister 80.
Die Kryptoeinheit 76 weist dieselbe Struktur auf wie die Kryptoeinheit 68. Sie
besteht aus einem ersten UND-Gatter 94 und einem nachgeschalteten Pseudo
zufallsfolgengenerator 96. Der Betrieb der Kryptoeinheit wird von dem im Krypto
steuerregister 60 enthaltenen Steuerbit DE in gleicher Weise gesteuert, wie die der
Betrieb der Kryptoeinheit 68 vom Steuerbit EE. Auch ist die Kryptoeinheit in
gleicher Weise mit einem Baudratengenerator 98 verbunden wie die Kryptoeinheit
68 mit dem Baudratengenerator 82. Aufgrund der asynchronen Datenübertragung
zwischen dem Krypto-UART-Baustein 50 und externen Empfängern oder Sendern
können die von dem Baudratengenerator der Sendereinheit 52 und dem Baudraten
generator 98 der Empfängereinheit 54 voneinander abweichen.
Das Entschlüsselungselement 74 der Empfängereinheit 54 weist wie das Ver
schlüsselungselement 64 der Sendereinheit 52 ein dem Folgengenerator 96 nach
geschaltetes zweites UND-Gatter 100 auf. Der Ausgang des zweiten UND-Gatters
100 ist mit einem ersten Eingang eines XOR-Gatters 102 verbunden. Ein zweiter
Eingang des XOR-Gatters 102 ist über einen Start-, Stop- und Parity-Detektor 104
mit dem RxD-Pin 72 verbunden. Der Start-, Stop- und Parity-Detektor 104 ist zur
Detektion der am RxD-Pin 72 empfangenen Startbits, Stopbits und Paritybits
ausgebildet. Diese werden zur Steuerung zum Timing des Kommunikationsvor
gangs mit dem externen Sender verwendet und nicht an das Entschlüsselungs
element 74 weitergeleitet. Dem Entschlüsselungselement 74 werden demzufolge
ausschließlich die von den genannten Steuerbit gereinigten Daten zugeführt. Der
Ausgang des XOR-Gatters 102 ist mit dem Dateneingang des Empfängerschiebe
registers 80 verbunden, das wie die Kryptoeinheit 76 vom Baudratengenerator 98
getaktet wird. Der Inhalt des Empfängerschieberegisters 80 wird über seinen
parallelen Datenausgang und ein Receive-hold-Register 106 (RHR, vgl. Tabellen 1
und 2) an den internen Datenbus 56 weitergeleitet.
Wie der beschriebenen Struktur der Empfängereinheit zu entnehmen ist, erfolgt die
Entschlüsselung empfangener, verschlüsselter Daten in ganz ähnlicher Weise wie
die Verschlüsselung zu sendender Daten in der Sendereinheit. Nach erfolgter
Schlüsselübergabe an die Kryptoeinheit 76 und bei gesetztem Steuerbit DE erzeugt
der Folgengenerator 96 dieselbe binäre Pseudozufallsfolge wie der externe Sender.
Für die Entschlüsselung ist eine Synchronisation zwischen der Kryptoeinheit des
externen Senders und der Kryptoeinheit 76 wichtig. Ein extern nach dem an Hand
von Fig. 4 beschriebenen Mechanismus verschlüsseltes Datenbit kann von der
Empfängereinheit 54 nur entschlüsselt werden, wenn die Folgengeneratoren der
kommunizierenden Einheiten in jedem Taktzyklus jeweils identische Bits erzeugen.
Aufgrund der Synchronisation zwischen den Folgengeneratoren der externen
Sendereinheit und der Empfängereinheit 54 werden am XOR-Gatter 102 die von
der externen Sendereinheit verschlüsselten Daten entschlüsselt und Bit für Bit an
das Empfängerschieberegister 80 weitergeleitet.
Ist das Steuerbit DE nicht gesetzt, so liegt am ersten Eingang des XOR-Gatters 102
stets eine "0" an. Demzufolge werden die vom RxD-Pin 72 hier eingehenden Daten
unverändert an das Empfängerschieberegister 80 weitergeleitet.
Fig. 6 zeigt in einem Blockschaltbild ein Ausführungsbeispiel eines Folgengenera
tors. Dieser wird sowohl als Folgengenerator 84 der Sendereinheit 52 als auch als
Folgengenerator 96 der Empfängereinheit 54 verwendet. Die verschlüsselte Kom
munikation zwischen dem Krypto-UART-Baustein 50 und externen Sendern oder
Empfängern ist nur möglich, wenn diese einen völlig gleichartig ausgebildeten oder
zumindest softwaremäßig gleichartig nachgebildeten Folgengenerator aufweisen.
Der in Fig. 6 dargestellte Folgengenerator ist mit dem Bezugszeichen 96 des
Folgengenerators der Empfängereinheit 54 gekennzeichnet. Er weist zwei Schiebe
register mit linearen Rückkopplungsfunktionen auf. Ein erstes Schieberegister R64
ist ein aus 64 in Reihe geschalteten Flip-Flops zusammengesetztes 64-Bit-Schiebe
register. Diese sind in Fig. 6 mit den Bezugszeichen F0 bis F63 gekennzeichnet.
Der Eingang des Flip-Flops F63 ist mit dem Ausgang eines XOR-Gatters 106
verbunden. Am Eingang des XOR-Gatters 106 liegen die Ausgänge der Flip-Flops
F0, F1 und F63 an. Durch diese Schaltung wird das ireduzieble Polynom
P(x) = x63⊕x⊕1 als Rückkopplungsfunktion realisiert. Der Pseudozufallsfolgenge
nerator 96 weist ein zweites, mit dem Schieberegister R64 parallelgeschaltetes 63-
Bit-Schieberegister R63 auf. Dessen Flip-Flops sind mit den Bezugszeichen G0 bis
G62 gekennzeichnet. In gleicher Weise wie bei dem 64-Bit-Schieberegister R64 ist
der Flip-Flop G62 an seinem Eingang mit dem Ausgang eines zweiten XOR-Gatters
108 verbunden. An dessen fünf Eingängen liegen die Ausgänge der Flip-Flops G0,
G3, G5, G6 und G62 an. Durch diese Schaltung wird als Rückkopplungsfunktion
das irreduzible Polynom Q(x) = ⊕x62x6⊕x5⊕x3⊕1 realisiert.
Die Ausgänge der XOR-Gatter 108 und 106 sind parallel zur jeweiligen Rückkopp
lungsschaltung mit den zwei Eingängen eins dritten XOR-Gatters 110 verbunden.
Dessen Ausgang wird dem UND-Gatter 100 des nachfolgenden Entschlüsse
lungselements 74 zugeleitet.
Sämtliche Flip-Flops der Schieberegister R64 und R63 werden mit einem gemein
samen Taktsignal aus dem Baudratengenerator 98 synchronisiert.
Die von dem Folgengenerator 96 erzeugte Folge von Ausgabebits weist eine
Periode von 2127-3.263 + 1 auf. Das bedeutet, dass erst nach etwa 1,7.1038
Taktzyklen die ausgegebene Folge binärer Daten von vorne beginnen wird. Auf
diese Weise wird eine Identifizierung des Binärschlüssels auch bei bekannter
Rückkopplungsfunktion praktisch unmöglich gemacht.
Fig. 7 veranschaulicht in einer Blockdarstellung die Ansteuerung der Schieberegi
ster R64 und R63 bei einer Schlüsselübergabe. Die Schieberegister R64 und R63
werden jeweils in eine Anzahl in Reihe geschalteter Teilregister aufgeteilt, die in
Fig. 7 mit dem Bezugszeichen R0 bis R7 und R8 bis R15 gekennzeichnet sind.
Jedes der Teilregister R0 bis R14 enthält acht Flip-Flops F0 bis F7 usw. Das
Register R0 mit den Flip-Flops F0 bis F7 ist physikalisch identisch mit dem Schlüs
selregister 80. Im Falle des Folgengenerators 84 der Kryptoeinheit 68 ist das
dortige Register R0 mit dem Schlüsselregister 70 physikalisch identisch. Während
der Schlüsselübergabe wird mit jedem Schreibzyklus auf das Schlüsselregister, also
das Register R0 bei gleichzeitig aktivierter Schreibberechtigung (RWE = 1 und/oder
TWE = 1) ein Byte aus dem E-ten Register zum E + 1-ten Register transportiert,
wobei das Register R0 immer ein Byte vom internen Datenbus 56 übernimmt. Um
einen 127-Bit-Binärschlüssel zu übertragen, sind demzufolge 16 Schreibzyklen
erforderlich.
Nach einem Reset-Vorgang enthalten die Schieberegister R64 und R63 in den
Folgengeneratoren 84 und 96 des Krypto-UART-Bausteins 50 zufällige Werte. Die
Steuerbits des Kryptosteuerregisters 60 sind nach einem Reset-Vorgang auf Null
gesetzt. Alle anderen Register des Krypto-UART-Bausteins weisen nach einem
Reset-Vorgang genau diejenigen Werte auf, die ein konventioneller UART-Baustein
vom Typ PC16550D aufweist.
Der Krypto-UART-Baustein 50 bietet die vollständige Funktionalität eines herkömm
lichen UART-Bausteins vom Typ PC16550D. Zusätzlich verfügt er jedoch über
Verschlüsselungs- und Entschlüsselungsmittel. Dadurch kann bei einer Kommunika
tion mit Sendern oder Empfängern die diese Verschlüsselung ebenfalls unterstützen
eine verschlüsselte Datenübertragung realisiert werden. Unterstützen externe
Sender oder Empfänger die Verschlüsselung nicht, so findet eine unverschlüsselte
Datenübertragung nach herkömmlichem Muster statt.
Claims (42)
1. Sender (10; 52) zum Senden von Daten eines ersten Datentyps, der aus
binär kodierten, zeitlich aufeinander folgenden (seriellen) Daten besteht, um
fassend
- - einen Dateneingang (14, 16, 18, 20; 58), der ausgebildet ist zum Empfang von Daten eines vorgegebenen zweiten Datentyps,
- - einen Datenumsetzer (28; 66), der mit dem Dateneingang (14, 16, 18, 20; 58) verbunden und zum Umsetzen von Daten des zweiten Datentyps in Daten des ersten Datentyps ausgebildet ist,
- - einen Datenausgang (12; 62), der mit dem Datenumsetzer (28; 66) ver bunden und zur Abgabe von Daten des ersten Datentyps ausgebildet ist, gekennzeichnet durch Verschlüsselungsmittel (26, 30, 32; 60, 64, 68, 70) zwischen dem Datenumsetzer (28) und dem Datenausgang (12), die ausge bildet sind zum Umsetzen der Daten des ersten Datentyps in verschlüsselte Daten desselben Datentyps.
2. Sender nach Anspruch 1, dadurch gekennzeichnet, dass der Datenumsetzer
ein Sendeschieberegister (28; 66) aufweist, das mit den Verschlüsselungs
mitteln (32; 64) verbunden ist und das zur Aufnahme binär kodierter Daten
und seriellen Abgabe binär kodierter Daten ausgebildet ist.
3. Sender nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Ver
schlüsselungsmittel (26, 30, 32; 60, 64, 68, 70) ein Schlüsselregister (70)
aufweisen, das zur Aufnahme und Abgabe eines vorgebbaren Binärschlüs
sels mit einer vorbestimmten Anzahl an Bitstellen ausgebildet ist.
4. Sender nach Anspuch 3, dadurch gekennzeichnet, dass das Schlüssel
register (70) mit dem Dateneingang (58) verbunden ist.
5. Sender nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass
die Verschlüsselungsmittel (26, 30, 32; 60, 64, 68, 70) ein Verschlüssel
ungselement (32; 64) aufweisen, das eingangsseitig mit dem Datenumset
zer (28; 66) verbunden ist und das zur Verschlüsselung der vom Daten
umsetzer (28; 66) her empfangenen Daten ausgebildet ist.
6. Sender nach Anspruch 5, dadurch gekennzeichnet, dass das Verschlüssel
ungselement (32; 64) eingangsseitig mit dem Schlüsselregister (70) ver
bunden ist.
7. Sender nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet,
dass die Verschlüsselungsmittel (26, 30, 32; 60, 64, 68, 70) einen Pseudo
zufallsfolgengenerator (30; 68) aufweisen, der zur Erzeugung und Abgabe
einer binär kodierten Pseudozufallszahlenfolge ausgebildet ist.
8. Sender nach Anspruch 7, dadurch gekennzeichnet, dass der Pseudozufalls
folgengenerator (30; 68) ausgangsseitig mit dem Verschlüsselungselement
(32; 64) verbunden ist.
9. Sender nach Anspruch 7, dadurch gekennzeichnet, dass der Pseudozufalls
folgengenerator (30; 68) eingangsseitig mit dem Schlüsselregister (70)
verbunden ist.
10. Empfänger (34; 54) für den Empfang von Daten eines ersten Datentyps, der
binär kodierte, zeitlich aufeinander folgende (serielle) Daten enthält, um
fassend
einen Dateneingang (36; 72), der ausgebildet ist zum Empfang von Daten des ersten Datentyps,
einen Datenumsetzer (44; 78), der mit dem Dateneingang (36; 72) ver bunden und zum Umsetzen von Daten des ersten Datentyps in Daten eines zweiten Datentyps ausgebildet ist,
einen Datenausgang (38; 58), der mit Datenumsetzer (44; 78) verbunden und zur Abgabe von Daten des zweiten Datentyps ausgebildet ist,
gekennzeichnet durch Entschlüsselungsmittel (40, 42, 46; 60; 74, 76, 80) zwischen dem Dateneingang (36; 72) und dem Datenumsetzer (44; 78), die ausgebildet sind zum Umsetzen von verschlüsselten Daten des ersten Datentyps in unverschlüsselte Daten des ersten Datentyps.
einen Dateneingang (36; 72), der ausgebildet ist zum Empfang von Daten des ersten Datentyps,
einen Datenumsetzer (44; 78), der mit dem Dateneingang (36; 72) ver bunden und zum Umsetzen von Daten des ersten Datentyps in Daten eines zweiten Datentyps ausgebildet ist,
einen Datenausgang (38; 58), der mit Datenumsetzer (44; 78) verbunden und zur Abgabe von Daten des zweiten Datentyps ausgebildet ist,
gekennzeichnet durch Entschlüsselungsmittel (40, 42, 46; 60; 74, 76, 80) zwischen dem Dateneingang (36; 72) und dem Datenumsetzer (44; 78), die ausgebildet sind zum Umsetzen von verschlüsselten Daten des ersten Datentyps in unverschlüsselte Daten des ersten Datentyps.
11. Empfänger nach Anspruch 10, dadurch gekennzeichnet, dass der Daten
umsetzer ein Empfangsschieberegister (44; 78) aufweist, das zur seriellen
Aufnahme binär kodierter Daten sowie zur Abgabe dieser Daten ausgebildet
ist.
12. Empfänger nach Anspruch 10 oder 11, dadurch gekennzeichnet, dass die
Entschlüsselungsmittel (40, 42, 46; 60, 74, 76, 80) ein Schlüsselregister
(80) aufweisen, das zur Aufnahme eines vorgebbaren Binärschlüssels mit
einer vorbestimmten Anzahl an Bitstellen ausgebildet ist.
13. Empfänger nach Anspruch 12, dadurch gekennzeichnet, dass das Schlüs
selregister (80) mit dem Dateneingang (72) verbunden ist.
14. Empfänger nach Anspruch 12 oder 13, dadurch gekennzeichnet, dass das
Schlüsselregister (80) mit dem Datenausgang (38, 58) verbunden ist.
15. Empfänger nach einem der Ansprüche 10 bis 14, dadurch gekennzeichnet,
dass die Entschlüsselungsmittel (40, 42, 46; 60, 74, 76, 80) ein Entschlüs
selungselement (42; 74) aufweisen, das ausgangsseitig mit dem Daten
umsetzer (44; 78) verbunden ist und das zur Entschlüsselung der vom
Dateneingang (36; 72) her empfangenen Daten ausgebildet ist.
16. Empfänger nach Anspruch 15, dadurch gekennzeichnet, dass das Ent
schlüsselungselement (42; 74) eingangsseitig mit dem Schlüsselregister
(80) verbunden ist,
17. Empfänger nach einem der Ansprüche 10 bis 16, dadurch gekennzeichnet,
dass die Entschlüsselungsmittel (40, 42, 46; 60, 74, 76, 80) einen Pseudo
zufallsfolgengenerator (46; 76) aufweisen, der zur Erzeugung und Abgabe
einer binär kodierten Pseudozufallszahlenfolge ausgebildet ist.
18. Empfänger nach Anspruch 17, dadurch gekennzeichnet, dass der Pseudo
zufallsfolgengenerator (46; 76) ausgangsseitig mit dem Entschlüsselungs
element (42; 76) verbunden ist.
19. Empfänger nach Anspruch 17 oder 18, dadurch gekennzeichnet, dass der
Pseudozufallsfolgengenerator (46; 76) eingangsseitig mit dem Schlüssel
register (80) verbunden ist.
20. Sender oder Empfänger nach einem der Ansprüche 1 bis 9 oder 10 bis 19,
gekennzeichnet durch ein Kryptosteuerregister (26; 40; 60), das ausgangs
seitig mit dem Verschlüsselungselement (32; 64) bzw. mit dem Entschlüs
selungselement (42; 74) verbunden ist und das zur Aufnahme und Abgabe
binär kodierter Steuerdaten ausgebildet ist.
21. Sender oder Empfänger nach Anspruch 20, dadurch gekennzeichnet, dass
das Kryptosteuerregister (26; 40; 60) mit dem Schlüsselregister (80) ver
bunden ist.
22. Sender oder Empfänger nach Anspruch 20 oder 21, dadurch gekennzeich
net, dass das Kryptosteuerregister (26; 40; 60) mit dem Pseudozufalls
folgengenerator (30; 46; 68, 76) des Senders (10; 52) bzw. des Empfän
gers (34; 54) verbunden ist.
23. Sender oder Empfänger nach einem der vorstehenden Ansprüche, dadurch
gekennzeichnet, dass der Pseudozufallsfolgengenerator (30; 46; 68, 76)
eine Folgengeneratorschaltung (96) aufweist, die ein mit einer Rückkopp
lungsschaltung (106, 108) rückgekoppeltes Schieberegister (R64, R63)
enthält.
24. Sender oder Empfänger nach Anspruch 23, dadurch gekennzeichnet, dass
die Rückkopplungsschaltung (106, 108) derart ausgebildet ist, dass sie eine
lineare Rückkopplungsfunktion bildet.
25. Sender oder Empfänger nach Anspruch 23 oder 24, gekennzeichnet durch
eine Rückkopplungsschaltung derart, dass die Rückkopplungsfunktion ein
primitives Polynom modulo zwei ist.
26. Sender oder Empfänger nach einem der Ansprüche 23 bis 25, dadurch
gekennzeichnet, dass das Schieberegister (R64, R63) der Folgengenerator
schaltung (96) so ausgebildet ist, dass ein Teil (R0) des Schieberegisters
(R64, R63) zugleich die Funktion des Schlüsselregisters (70; 80) über
nimmt.
27. Sender oder Empfänger nach Anspruch 26, dadurch gekennzeichnet, dass
das Schieberegister (R64, R63) der Folgengeneratorschaltung von mehreren
in Reihe geschalteten Teilregistern (R0 bis R15) gebildet wird, die zur
zeitlich parallelen Aufnahme eines aus einer vorbestimmten Anzahl von
Bitstellen bestehenden Teils des Binärschlüssels ausgebildet sind, wobei das
in der Reihe letzte Teilregister (R15) zur seriellen Abgabe des in ihm enthal
tenen Teils des Binärschlüssels ausgebildet ist und die restlichen Teilregister
(R1 bis R14) zur zeitlich parallelen Abgabe des jeweils in ihnen enthaltenden
Teils des Binärschlüssels an das in der Reihe nachfolgende Teilregister.
28. Sender oder Empfänger nach einem der Ansprüche 23 bis 17, dadurch
gekennzeichnet, dass das Schieberegister (R64, R63) der Folgengenerator
schaltung (96) eine Anzahl in Reihe geschalteter Flipflops (F0 bis F63, G0
bis G62) enthält, wobei einem in der Reihe ersten Flipflop eine höchstwerti
ge Bitstelle zugeordnet ist, einem eingangsseitig mit dem Ausgang des
ersten Flipflops verbundenen zweiten Flipflop eine nächst niederwertige
Bitstelle zugeordnet ist, und so fort bis hin zu einem letzten Flipflop, dem
eine niedrigstwertige Bitstelle zugeordnet ist.
29. Sender oder Empfänger nach Anspruch 28, dadurch gekennzeichnet, dass
die Folgengeneratorschaltung (96) ein dem letzten Flipflop (F0, G0) des
Schieberegisters (R64, R63) nachgeschaltetes erstes XOR-Gatter (106,
108) aufweist, mit dessen Eingängen die Ausgänge vorbestimmter Flipflops
(F63, F1, F0) verbunden sind und dessen Ausgang mit dem Eingang des
ersten Flipflops (F63) und mit dem Datenausgang (12; 50) des Senders
bzw. mit dem Empfangsschieberegister (44; 80) des Empfängers verbunden
ist.
30. Sender oder Empfänger nach Anspruch 29, dadurch gekennzeichnet, dass
die Folgengeneratorschaltung (96) ein 64-Bit-Schieberegister (R64) auf
weist, wobei der Ausgang des ersten (F63), des vorletzten (F1) und des
letzten (F0) Flipflops mit dem ersten XOR-Gatter (106) verbunden sind.
31. Sender oder Empfänger nach Anspruch 29 oder 30, dadurch gekennzeich
net, dass die Folgengeneratorschaltung (96) ein 63-Bit-Schieberegister
(R63) aufweist, wobei die Ausgänge des ersten (G62), des siebenundfünf
zigsten (G6), des achtundfünfzigsten (G5), des sechzigsten (G3) und des
dreiundsechzigsten (letzten) Flipflops (G0) des 63-Bit-Schieberegisters mit
jeweils einem Eingang eines zweiten XOR-Gatters (108) verbunden sind und
der Ausgang des zweiten XOR-Gatters (108) mit dem Datenausgang (12;
62) des Senders bzw. dem Empfangsschieberegister (44; 78) des Empfän
gers verbunden ist.
32. Sender oder Empfänger nach den Ansprüchen 28 bis 31, dadurch gekenn
zeichnet, dass die Folgengeneratorschaltung (96) ein drittes XOR-Gatter
(110) aufweist, an dessen Eingängen der Ausgang des ersten XOR-Gatters
(106) und der Ausgang des zweiten XOR-Gatters (108) anliegt, wobei der
Ausgang des dritten XOR-Gatters (110) mit dem Datenausgang (12; 62)
des Senders bzw. mit dem Empfangsschieberegister (44; 78) des Empfän
gers verbunden ist.
33. Sender oder Empfänger nach einem der vorstehenden Ansprüche, dadurch
gekennzeichnet, dass das Verschlüsselungselement (64) des Senders bzw.
das Entschlüsselungselement (74) des Empfängers ein viertes XOR-Gatter
(90; 102) aufweist, mit dessen Eingängen der Ausgang des dritten XOR-
Gatters (110) und der Datenumsetzer (28; 66) des Senders bzw. der Daten
eingang (36; 72) des Empfängers verbunden sind und dessen Ausgang mit
dem Datenausgang (12; 62) des Senders bzw. mit dem Datenumsetzer (44;
80) des Empfängers verbunden ist.
34. Sender oder Empfänger nach einem der vorstehenden Ansprüche, gekenn
zeichnet durch einen Baudratengenerator (82; 98), der ausgangsseitig par
allel mit dem Datenumsetzer (66; 80) und den Verschlüsselungsmitteln (68)
des Senders bzw. den Entschlüsselungsmitteln (76) des Empfängers ver
bunden ist und der zum Erzeugen und Abgeben eines Taktsignals mit einer
vorbestimmbaren Taktfrequenz ausgebildet ist.
35. Sender oder Empfänger nach einem der vorstehenden Ansprüche, gekenn
zeichnet durch eine Ausbildung der Folgengeneratorschaltung (96) derart,
dass ihr Betrieb mit einem im Kryptosteuerregister (26; 40; 60) enthaltene
nen Steuerbit (EE; DE) aktivierbar oder deaktivierbar ist.
36. Sender oder Empfänger nach einem der vorstehenden Ansprüche, gekenn
zeichnet durch eine Beschaltung des Schlüsselregisters (70; 80) derart,
dass der Schreibzugriff auf das Schlüsselregister (70; 80) mit einem im
Kryptosteuerregister (26; 40; 60) enthaltenen Steuerbit (TWE; RWE) akti
vierbar oder deaktivierbar ist.
37. Sender oder Empfänger nach einem der Ansprüche 13 bis 25, gekennzeich
net durch die Integration seiner Bestandteile in einem Senderbauelement
(10) bzw. Empfängerbauelement (34).
38. Sender- und Empfängeranordnung (50), umfassend eine Sendereinheit (52)
mit den Merkmalen eines oder mehrerer der Ansprüche 1 bis 9 und 20 bis
37 und eine Empfängereinheit (54) mit den Merkmalen eines oder mehrerer
der Ansprüche 10 bis 19 und 20 bis 37.
39. Sender- und Empfängeranordnung nach Anspruch 38, dadurch gekenn
zeichnet, dass der Dateneingang (58) der Sendereinheit ausgebildet ist zum
Empfang binär kodierter, mehrere zeitlich parallel vorliegende Bitstellen
enthaltender (paralleler) Datenstrukturen, dass der Datenumsetzer (66) der
Sendereinheit ein Parallelseriellumsetzer ist, der zum Umsetzen einer par
allelen Datenstruktur in serielle Daten ausgebildet ist und dass der Daten
umsetzer (78) der Empfängereinheit ein Seriellparallelumsetzer ist, der zum
Umsetzen serieller Daten in eine parallele Datenstruktur ausgebildet ist.
40. Sender- und Empfängeranordnung nach Anspruch 39, gekennzeichnet durch
seine Ausbildung als UART (Universal Asynchronous Receiver Transmitter)-
Bauelement (50).
41. Sender- und Empfängerbauelement nach einem der Ansprüche 38 bis 40,
gekennzeichnet durch einen Registersatz und einen Steuerdatensatz, der alle
Register und Steuerdaten eines UART-Bausteins vom Typ PC16550D
enthält.
42. Sender- und Empfängerbauelement nach einem der Ansprüche 40 und 41,
gekennzeichnet durch eine zu einem UART-Baustein vom Typ PC16550D
kompatible Adressierung des Schlüsselregisters und des Kryptosteuerregi
sters in einem Lesemodus und einem Schreibmodus.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10036372A DE10036372A1 (de) | 2000-07-18 | 2000-07-18 | Sender, Empfänger sowie Sender- und Empfängeranordnung |
US09/907,115 US20020031219A1 (en) | 2000-07-18 | 2001-07-17 | Transmitter, receiver and transceiver arrangement |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10036372A DE10036372A1 (de) | 2000-07-18 | 2000-07-18 | Sender, Empfänger sowie Sender- und Empfängeranordnung |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10036372A1 true DE10036372A1 (de) | 2002-01-31 |
Family
ID=7650268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10036372A Ceased DE10036372A1 (de) | 2000-07-18 | 2000-07-18 | Sender, Empfänger sowie Sender- und Empfängeranordnung |
Country Status (2)
Country | Link |
---|---|
US (1) | US20020031219A1 (de) |
DE (1) | DE10036372A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11838402B2 (en) | 2019-03-13 | 2023-12-05 | The Research Foundation For The State University Of New York | Ultra low power core for lightweight encryption |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004088505A (ja) * | 2002-08-27 | 2004-03-18 | Matsushita Electric Ind Co Ltd | 並列ストリーム暗復号装置及びその方法並びに並列ストリーム暗復号プログラム |
US7526643B2 (en) * | 2004-01-08 | 2009-04-28 | Encryption Solutions, Inc. | System for transmitting encrypted data |
US8031865B2 (en) * | 2004-01-08 | 2011-10-04 | Encryption Solutions, Inc. | Multiple level security system and method for encrypting data within documents |
US7752453B2 (en) * | 2004-01-08 | 2010-07-06 | Encryption Solutions, Inc. | Method of encrypting and transmitting data and system for transmitting encrypted data |
US20120057704A1 (en) * | 2010-09-07 | 2012-03-08 | Futurewei Technologies, Inc. | System and Method for Providing Security in a Wireless Communications System |
KR101910972B1 (ko) * | 2012-10-24 | 2018-10-23 | 삼성전자주식회사 | 연료 전지 시스템 및 그것을 제어하는 전자 기기 |
JP6417937B2 (ja) * | 2014-12-26 | 2018-11-07 | 富士ゼロックス株式会社 | 復号化装置、プログラム及び情報伝送システム |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3743686A1 (de) * | 1987-12-23 | 1989-07-06 | Philips Patentverwaltung | Schaltungsanordnung zum umordnen von zeichen, insbesondere binaerzeichen, eines blocks |
DE19642560A1 (de) * | 1996-10-15 | 1998-04-16 | Siemens Ag | Elektronische Datenverarbeitungsschaltung |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5500899A (en) * | 1982-05-20 | 1996-03-19 | The United States Of America As Represented By The Director, Nsa | Secure voice conferencing apparatus |
US4802217A (en) * | 1985-06-07 | 1989-01-31 | Siemens Corporate Research & Support, Inc. | Method and apparatus for securing access to a computer facility |
US5412730A (en) * | 1989-10-06 | 1995-05-02 | Telequip Corporation | Encrypted data transmission system employing means for randomly altering the encryption keys |
US5784462A (en) * | 1995-08-28 | 1998-07-21 | Sanyo Electric Co., Ltd. | Digital signal receiver capable of receiving data encrypted and transmitted in online processing |
JP3625540B2 (ja) * | 1995-09-11 | 2005-03-02 | 三洋電機株式会社 | スクランブル解除装置 |
US6028887A (en) * | 1996-07-12 | 2000-02-22 | General Electric Company | Power efficient receiver |
US6526144B2 (en) * | 1997-06-02 | 2003-02-25 | Texas Instruments Incorporated | Data protection system |
US6243469B1 (en) * | 1997-09-18 | 2001-06-05 | Matsushita Electric Industrial Co., Ltd. | Information transmission method and apparatus |
US6351536B1 (en) * | 1997-10-01 | 2002-02-26 | Minoru Sasaki | Encryption network system and method |
US6026117A (en) * | 1997-10-23 | 2000-02-15 | Interdigital Technology Corporation | Method and apparatus for generating complex four-phase sequences for a CDMA communication system |
DE19924986B4 (de) * | 1998-05-29 | 2006-03-23 | Hitachi, Ltd. | Verschlüsselungs-Konversionsvorrichtung, Entschlüsselungs-Konversionsvorrichtung, kryptografisches Kommunikationssystem und elektronische Gebühren-Sammelvorrichtung |
-
2000
- 2000-07-18 DE DE10036372A patent/DE10036372A1/de not_active Ceased
-
2001
- 2001-07-17 US US09/907,115 patent/US20020031219A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3743686A1 (de) * | 1987-12-23 | 1989-07-06 | Philips Patentverwaltung | Schaltungsanordnung zum umordnen von zeichen, insbesondere binaerzeichen, eines blocks |
DE19642560A1 (de) * | 1996-10-15 | 1998-04-16 | Siemens Ag | Elektronische Datenverarbeitungsschaltung |
Non-Patent Citations (1)
Title |
---|
CHRISTOFFERSSON,P., u.a.: Sead Muftic, Sicherheitsmechanismen für Rechnernetze, Verlage Carl Hanser und Prentice-Hall International * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11838402B2 (en) | 2019-03-13 | 2023-12-05 | The Research Foundation For The State University Of New York | Ultra low power core for lightweight encryption |
Also Published As
Publication number | Publication date |
---|---|
US20020031219A1 (en) | 2002-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2715631C2 (de) | Verschlüsselung und Absicherung von Daten | |
DE69722367T2 (de) | Pseudozufallsgenerator mit Taktauswahl | |
EP1234239B1 (de) | Mikroprozessoranordnung mit verschlüsselung | |
DE69938539T2 (de) | Kryptographische Einrichtung mit parallel geschalteten Verschlüsselungsblöcken | |
DE69916160T2 (de) | Vorrichtung und Verfahren zur kryptographischen Verarbeitung sowie Aufzeichnungsmedium zum Aufzeichnen eines kryptographischen Verarbeitungsprogramms zur Ausführung einer schnellen kryptographischen Verarbeitung ohne Preisgabe der Sicherheit | |
DE69721439T2 (de) | Kryptographisches verfahren und einrichtung zum nichtlinearen zusammenfugen eines datenblocks und eines schlussels | |
DE69634318T2 (de) | Verfahren und Vorrichtung zur Gebührenerfassung von Benutzern in einem Geheimübertragungssystem | |
DE69728465T2 (de) | Nichtparalleler Mehrzyklus-Verschlüsselungsapparat | |
DE69933108T2 (de) | Synchrone bitstromverschlüsselung | |
DE60221850T2 (de) | Verfahren und vorrichtung zur datenverschlüsselung | |
DE60315700T2 (de) | Verfahren zum erzeugen einer stromverschlüsselung mit mehreren schlüsseln | |
DE102014213539A1 (de) | Einrichtung und Verfahren zur Speicheradressenverschlüsselung | |
DE19924986A1 (de) | Verschlüsselungs-Konversionsvorrichtung, Entschlüsselungs-Konversionsvorrichtung, kryptografisches Kommunikationssystem und elektronische Gebühren-Sammelvorrichtung | |
DE19744961A1 (de) | Erzeugen eindeutiger und unvorhersagbarer Werte | |
DE112019001021T5 (de) | Verschlüsseln von nutzlast und präambel in 10spe mit synchroner und selbst-synchroner verschlüsselung | |
EP0809905A1 (de) | Verschlüsselungsvorrichtung | |
DE19856237A1 (de) | Dynamische Schlüsselgenerierung und vertrauliche Synchronisation von Verschlüsselungskomponenten | |
EP1298834A1 (de) | Verfahren und Vorrichtung zum Verschlüsseln und Entschlüsseln von Daten | |
DE2840552C2 (de) | Digitales Übertragungssystem | |
DE60125673T2 (de) | Verfahren und Vorrichtung zur Ausführung einer kryptographischen Funktion | |
DE10036372A1 (de) | Sender, Empfänger sowie Sender- und Empfängeranordnung | |
EP0616429B1 (de) | Verfahren und Schaltungsanordnung zum Erzeugen einer Pseudozufallsfolge sowie deren Verwendung | |
EP3059895A1 (de) | Einmalverschlüsselung von zählerdaten | |
WO2005043803A1 (de) | Verfahren und vorrichtung zur ver-/ entschlüsselung | |
WO2005043804A1 (de) | Verfahren und vorrichtung zur ver- und entschlüsselung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OM8 | Search report available as to paragraph 43 lit. 1 sentence 1 patent law | ||
8127 | New person/name/address of the applicant |
Owner name: SCHOPPA, IRENäUS, DR.-ING., 12207 BERLIN, DE Owner name: GUTSCHE, JAN, DIPL.-ING., 10587 BERLIN, DE |
|
8110 | Request for examination paragraph 44 | ||
8131 | Rejection |