-
Einleitung
-
Diese
Erfindung bezieht sich auf eine elektronische Vorrichtung zum Codieren
oder Decodieren elektrischer Signale.
-
Hintergrund
der Erfindung
-
In
gewissen Anwendungen, wie etwa Fernmeldesystemen und Zugangssteuerungssystemen, die
eine sichere Datenübertragung
erfordern, werden Daten in verschlüsselter Form durch einen Sender
zu einem Empfänger übertragen.
Die empfangenen verschlüsselten
Daten werden dann durch eine Steuereinheit entschlüsselt, auf
Gültigkeit
geprüft
und dann gemäß den Erfordernissen
der Anwendung weiter verarbeitet.
-
Im
Fachgebiet sind zahlreiche Verfahren der Datenverschlüsselung
bekannt. Bei den meisten Verfahren werden die Daten am Sender verschlüsselt, indem
sie mit einem Verschlüsselungsschlüssel gemäß einem
festen Algorithmus kombiniert werden. Die verschlüsselten
Daten werden am Empfänger durch
Anwendung eines Umkehrungsalgorithmus auf die verschlüsselten
Daten zusammen mit dem gleichen Verschlüsselungsschlüssel entschlüsselt. Die Sicherheit
eines derartigen Kommunikationssystems wird offensichtlich beeinträchtigt,
falls der Verschlüsselungsschlüssel unautorisierten
Benutzern bekannt wird.
-
Die
Sicherheit der verschlüsselten
Datenübertragung
kann auf verschiedene Arten vergrößert werden. Zum Beispiel kann
der Verschlüsselungsschlüssel so
ausgebildet werden, daß er
sich zufällig ändert und
nur einmal verwendet wird.
-
Solch
ein Verschlüsselungsschlüssel ist
als ein "Einmalschlüssel" bekannt. Alternativ
kann der Verschlüsselungsschlüssel fest
sein und die mit dem Schlüssel
zu kombinierenden Daten können
verändert
werden. Dieses Datenverschlüsselungsverfahren
ist im Fachgebiet als "Codespringen" bekannt.
-
Beide
dieser Datenverschlüsselungsverfahren
gewährleisten,
daß keine
zwei Datenübertragungen
identisch sind. Dieses Prinzip gewährleistet, daß verschlüsselte Daten,
die während
der Übertragung abgefangen
und nachfolgend durch einen unautorisierten Benutzer wieder gesendet
werden, nicht verwendet werden können,
um das Alarmsystem zu deaktivieren oder das Zugangssteuerungssystem
zu umgehen.
-
Das
japanische Patent Nr. 63-155930 offenbart ein Verfahren zum Bereitstellen
verschlüsselter Daten
zur sicheren Übertragung über ein öffentliches Datennetz.
Das Verfahren umfaßt
das Erzeugen eines Verschlüsselungsschlüssels und
die Übertragung
des Schlüssels
vom Sender zum Empfänger, oder
umgekehrt, über
das öffentliche
Datennetz. Netzprozessoren am Sender und am Empfänger verschlüsseln und
entschlüsseln
dann die über
das Netz übertragenen
Daten durch Verwendung des gemeinsamen Verschlüsselungsschlüssels. Die
Netzprozessoren formatieren ferner die verschlüsselten Daten gemäß einem
festen Protokoll, das für
die Übertragung über das
Netz geeignet ist.
-
Weitere
Verfahren und Vorrichtungen für eine
sichere Kommunikation sind in den folgenden Patentnummern offenbart:
Die W089/10666, die sich auf ein Protokoll bezieht, das für die Übertragung
der verschlüsselten
Daten verwendet wird; die
GB 2
124 856 , die sich auf ein Mehrniveau-Verschlüsselungsschema
bezieht, das auf das Senden verschlüsselter Signale anwendbar ist;
und die
EP 0 300 824 ,
die ein Verfahren zum Erzeugen einer kontinuierlichen Folge von
Einmalverschlüsselungsschlüsseln offenbart.
-
Das
japanische Patent Nr. 61-205048 bezieht sich auf eine Kommunikationsvorrichtung,
die dazu konfigurierbar ist, Daten gemäß eines aus einer Anzahl verschiedener
wählbarer
Kommunikationsprotokolle zu empfangen oder zu senden. Die Daten werden
vor dem Senden durch die Kommunikationsvorrichtung nicht verschlüsselt.
-
Die
US-A-4 281 315 lehrt ein Abfragesystem zum sequentiellen Abfragen
einer Mehrzahl verschiedener Datenterminals und zum Empfangen von Mitteilungen
von diesen, in welchem System die Kommunikation mit jedem Datenterminal
ein anderes Kommunikationsprotokoll verwenden kann, wobei die Einzelheiten
des Protokolls in einer Steuereinheit gespeichert sind. Die Datenkommunikation
zwischen den Datenterminals und der gemeinsamen Abfragestation erfolgt "klar".
-
Eine ähnliche
Anordnung ist in der W087/01484 offenbart, in der ein Hauptprozessor und
eine Mehrzahl entfernter Verarbeitungsvorrichtungen über ein
Lokalbereichsnetz kommunizieren. Zum Steuern der Datenübertragung
zwischen dem Hauptprozessor und jede der entfernten Verarbeitungsvorrichtungen
kann ein anderes Kommunikationsprotokoll verwendet werden. Der Datentransfer findet "klar" statt.
-
Eine
Darlegung der Verwendung von Chipkarten in Computersicherheitsanwendungen
wird präsentiert
in "The Smart Card:
A High Security Tool in EDP".
PTR Philips Telecommunication and Data Systems Review, Band 47,
Nr. 3, September 1989. Es wird die Anwendung von Chipkarten beim
Vorsehen eines sicheren Zugangs zu Datenverarbeitungsressourcen
und bei der Verwaltung von Verschlüsselungsschlüsseln in
großen
Computernetzen umrissen.
-
Die
EP-A2-0 209 811 offenbart eine elektronische Codiervorrichtung zum
Verschlüsseln
und Entschlüsseln
von Datensignalen. Die Vorrichtung umfasst Prozessoren zum Codieren
von Daten gemäß einem
vorbestimmten Entschlüsselungsalgorithmus
und gemäß zwei vorbestimmten
Verschlüsselungsalgorithmen.
Jeder Prozessor hat einen Eingang zum Empfang eines digitalen Eingangssignals sowie
einen Ausgang zum Erzeugen eines codierten digitalen Ausgangssignals.
Die Vorrichtung umfasst auch einen Speicher zum Speichern von Anfangsparametern
derart, dass der Ausgang der Vorrichtung mit Hardware kompatibel
ist, mit der diese verbunden ist.
-
Die
EP-A2-0 282 992 offenbart eine elektronische Codiervorrichtung.
Die Vorrichtung umfasst einen Prozessor und einen Speicher. Der
Prozessor wählt
aus dem Speicher das geeignete Kommunikationsprotokoll gemäß einem
empfangenen Klassifikationscode, und führt dann die Kommunikation
unter Verwendung des gewählten
Kommunikationsprotokolls aus.
-
Die
Effizienz der Datenverschlüsselung
unter Verwendung von Codespringtechniken wird reduziert, wenn die
Datenverschlüsselung
unter Verwendung von Standardtypen von integrierten Schaltungen
durchgeführt
wird, da die Wortlänge
dieser integrierten Schaltungen klein ist. Dies ist in Fällen problematisch,
wenn mehr Alarmsysteme oder Zugangssteuerungssysteme hergestellt
werden, als verschiedene Codes zur Verfügung stehen, da eine Verdopplung
unausweichlich und die Sicherheit dadurch reduziert ist.
-
Bei
einem bestimmten Typ eines Fernmeldesystems wird die Anzahl verschiedener
Codes vergrößert, indem
die Wortlänge
des zum Verschlüsseln und
Entschlüsseln
verwendeten Algorithmus erweitert wird. Wenn dies unter Verwendung
diskreter Standardtypen von integrierten Schaltungen bewerkstelligt
wird, sind die sich ergebenden elektronischen Schaltungen zur Verschlüsselung
und Entschlüsselung
groß,
komplex, unnötig
teuer und weisen große Energieverbräuche auf.
-
Es
ist eine Aufgabe dieser Erfindung, eine Vorrichtung bereitzustellen,
die die Verschlüsselung oder
Entschlüsselung
elektrischer Signale ermöglicht.
-
Gemäß der vorliegenden
Erfindung wird eine elektronische Codiervorrichtung zum selektiven
Verschlüsseln
oder Entschlüsseln
von Datensignalen bereitgestellt, die umfaßt:
einen Prozessor zum
Codieren digitaler Daten in Übereinstimmung
mit einem wählbaren
eines vorbestimmten Verschlüsselungs-
und eines vorbestimmten Entschlüsselungsalgorithmus,
wobei der Prozessor einen Eingang zum Empfangen eines digitalen Eingabesignals
und einen Ausgang zum Erzeugen eines codierten digitalen Ausgabesignals
aufweist; und
einen mit dem Prozessor verbundenen Konfigurationsspeicher,
dadurch gekennzeichnet, daß
der
Konfigurationsspeicher instruierbar ist, einen des vorbestimmten
Verschlüsselungsalgorithmus
und des vorbestimmten Entschlüsselungsalgorithmus
zu wählen
und das durch den Prozessor erzeugte codierte digitale Ausgabesignal
nach der Verschlüsselung
und nach der Entschlüsselung
umzuwandeln, um einem aus einer Anzahl von vorbestimmten Protokollen
zu genügen.
-
Die
Erfindung erstreckt sich auf das Bereitstellen eines Verfahrens
zum Konfigurieren einer elektrischen Codiervorrichtung zum wahlweisen
Verschlüsseln
oder Entschlüsseln
von Datensignalen, umfassend die Schritte:
Verbinden eines
Programmiermittels mit einem Konfigurationsspeicher, der mit einem
Prozessor zum Codieren digitaler Daten in Übereinstimmung mit einem gewählten eines
vorbestimmten Verschlüsselungs-
und eines vorbestimmten Entschlüsselungsalgorithmus
verbunden ist, wobei der Prozessor einen Eingang zum Empfangen eines
digitalen Eingabesignals und einen Ausgang zum Erzeugen eines codierten
digitalen Ausgabesignals aufweist; und
Instruieren des Konfigurationsspeichers,
einen aus der Anzahl vorbestimmter Algorithmen zu wählen,
dadurch
gekennzeichnet, daß
es
die weiteren Schritte umfaßt:
Instruieren des Konfigurationsspeichers, einen des vorbestimmten
Verschlüsselungs-
und des vorbestimmten Entschlüsselungsalgortihmus
zu wählen,
und Instruieren des Konfigurationsspeichers, das durch den Prozessor erzeugte
codierte digitale Ausgabesignal nach der Verschlüsselung und nach der Entschlüsselung selektiv
umzuwandeln, um einem aus einer Anzahl vorbestimmter Protokolle
zu genügen.
-
Kurze Beschreibung
der Zeichnungen
-
Es
wird eine bevorzugte Ausführungsform der
Erfindung unten nur als Beispiel und mit Bezugnahme auf die beigefügten Zeichnungen
beschrieben, in denen:
-
1 eine
perspektivische Ansicht einer mit Gehäuse ausgeführten integrierten Schaltung
ist;
-
2 eine
schematische Wiedergabe des Anschlußstift-Layouts der integrierten
Schaltung der 1 ist;
-
3 ein
schematisches Blockdiagramm der integrierten Schaltung der 1 ist;
-
4 ein
Blockdiagramm einer Codierlogik zum Verschlüsseln digitaler Signale ist;
-
5 ein
Blockdiagramm einer Codierlogik zum Entschlüsseln digitalisierter Signale
ist; und
-
6 ein
Blockdiagramm einer Programmiereinheit zum Konfigurieren der integrierten
Schaltung der 1 ist.
-
Detaillierte
Beschreibung der Zeichnungen
-
Es
wird auf 1 Bezug genommen, in der eine
elektronische Codiervorrichtung allgemein durch das Bezugszeichen
(21) repräsentiert
ist und die bei dieser Ausführungsform
eine integrierte Schaltung ist. Die integrierte Schaltung umfaßt ein kleines
Wafer aus Halbleitermaterial (nicht gezeigt), wie etwa Silizium,
auf dem eine elektrische Schaltung mittels irgendeiner aus einer
Anzahl von im Fachgebiet gut bekannten lithographischen Techniken
hergestellt ist. Das Halbleiterwafer ist in einem rechtwinkligen
Block aus isolierendem Kunststoff- oder Keramikmaterial (22)
eingekapselt, um einen Grad an strukturellem und Umweltschutz zu
liefern. Eine elektrische Verbindung zu dem Halbleiterwafter wird durch
eine Anzahl von Metallstiften 23 geliefert, wobei jeder
Stift aus dem einkapselnden Block (22) vorsteht und in
elektrischem Kontakt mit dem Halbleiterwafer steht. Die Stifte (23)
sind in zwei Reihen an entgegengesetzten Seiten des einkapselnden
Blocks (22) angeordnet. Die Konfiguration der in 1 angedeuteten
Stifte wird zur Oberflächenmontage
der integrierten Schaltung (21) auf einer gedruckten Schaltungsplatine
(nicht gezeigt) verwendet.
-
Die
Stiftkonfiguration der integrierten Schaltung ist in 2 angegeben.
Die Stifte sind in einer 20-Stift-Doppelreihen-(DIL)-Konfiguration
angeordnet und sind einzeln durch Ziffern 1 bis 20 in 2 bezeichnet.
Wie gezeigt, werden nur 12 der Stifte verwendet, wobei
die mit 2, 3, 8, 9, 10, 11, 19 und 20 numierten
Stifte ungenutzt sind.
-
Es
wird nun auf 3 Bezug genommen, in der ein
Blockdiagramm der elektrischen Schaltung auf dem Halbleiterwafer
(nicht gezeigt) der integrierten Schaltung der 1 angedeutet
ist. Der Kern der elektrischen Schaltung ist ein Mikroprozessor
(24) wie etwa der TMS370 8-BitMikroprozessor-Kern, der von
Texas Instruments aus Dallas, Texas/USA erhältlich ist. Der Mikroprozessorspeicher
umfaßt
4 Kilobyte an Nur-LeseSpeicher (ROM) (25), 256 Byte an Direktzugriffsspeicher
(RAM) (26) und 256 Byte an elektrisch löschbaren programmierbaren Nur-Lese-Speicher
(EEPROM) (27). Der ROM- und
der EEPROM-Speicher sind nicht flüchtig, so daß in diesen Speichern
gespeicherte Daten nicht verloren gehen, wenn die Energie von der
integrierten Schaltung (21) entfernt wird. Ein Kristalloszillator
und ein Teile-durch-zwei-Taktgenerator
(28) liefern die Taktfrequenz für den Mikroprozessor (24),
während
die Systemsteuerung durch Firmware (29) geliefert wird.
Ein Eingabe/Ausgabe-Anschluß (30)
liefert fünf
universelle bidirektionale Eingabe/Ausgabe-Leitungen (31). Die
Eingabe/Ausgabe-Leitungen sind unter Programmsteuerung individuell
konfigurierbar.
-
Eine
Sicherung (32) kann selektiv ausgelöst werden, um einen externen
Lesezugriff auf die ROM-, RAM- und EEPROM-Speicher zu unterbinden,
um Jegliche sensitiven Daten, die in diesen Speichern gespeichert
sein könnten,
zu schützen. Die
Sicherung (32) wird üblicherweise
nur nach dem Testen der integrierten Schaltung (21) auf
korrekte Funktionsweise nach deren Herstellung ausgelöst. Für die Verwendung
in Anwendung, bei denen der Energieverbrauch kritisch ist, weist
die integrierte Schaltung (21) einen Haltemodus auf, in
dem alle Schaltungsaktivität
angehalten ist, die Daten in dem RAM-Speicher (26) aber
gehalten werden. Die Daten im nicht flüchtigen ROM-(25) und
EEPROM-(27)-Speicher
werden keinesfalls verloren gehen. Die integrierte Schaltung (21)
kann nur durch ein extern zugeführtes
Rücksetzsignal
aus dem Haltemodus freigegeben werden.
-
In
einer bestimmten Anwendung dieser integrierten Schaltung, die mit
ihrer Verwendung in Fernmeldungssystemen in Beziehung steht, wird
Standardanwendungs-Software im ROM-Speicher (25) durch
lithographische Techniken zum Zeitpunkt der Herstellung der integrierten
Schaltung maskiert. Es wird nun auf die 4 und 5 Bezug
genommen. Die Anwendungssoftware besteht aus einem Verschlüsselungsalgorithmus
(33) und einem Entschlüsselungsalgorithmus
(40).
-
Die
integrierte Schaltung (21) kann dazu konfiguriert werden,
entweder die Verschlüsselung oder
die Entschlüsselung
durchzuführen,
indem entweder der Verschlüsselungsalgorithmus
(33) bzw. der Entschlüsselungsalgorithmus
(40) aktiviert wird.
-
In
dem EEPROM-Speicher (27) sind Konfigurationsdaten gespeichert,
die die Konfiguration der integrierten Schaltung repräsentieren.
Die Konfigurationsdaten beziehen sich auf den Betriebsmodus der integrierten
Schaltung, d.h. ob der Verschlüsselungsalgorithmus
(33) oder der Entschlüsselungsalgorithmus
(40) aktiviert worden ist. Weitere Konfigurationsdaten
umfassen einen festen 56-Bit-Schlüsselwert oder Verschlüsselungsschlüssel (34)
und einen variablen Wert oder Zählerwert
(35). Im EEPROM-Speicher (27) ist ferner ein beliebiges
festes Datenbyte (37) gespeichert.
-
Die
Funktionsweise der Anwendungssoftware in einer integrierten Schaltung
(21), die zur Verschlüsselung
konfiguriert worden ist, ist unten beschrieben. Wenn der Verschlüsselungsalgorithmus (33)
aktiviert ist, wird der Zählerwert
(35) erhöht
und das feste Byte (37) an diesem angehängt. Aus dem Zählerwert
(35) und dem festen Datenbyte (37) wird ein Prüfsummen-Byte
berechnet und zusätzlich
an den Zählerwert
angehängt.
Der Zählerwert
(35) ist 40 Bit breit, so daß, wenn dem Zählerwert
das feste Byte (37) und das Prüfsummen-Byte (38)
angehängt
werden, eine 56-Bit-Variable erhalten wird. Es kann ein beliebiger
Algorithmus verwendet werden, um die Prüfsumme zu berechnen, zum Beispiel
eine zyklische 1 6-Bit-Redundanzüberprüfung. Der
Zählerwert mit
dem angehängten
festen und dem Prüfsummen-Byte
wird zusammen mit dem Verschlüsselungsschlüssel (34)
mittels des Verschlüsselungsalgorithmus
(33) verschlüsselt,
um einen einmaligen 56-Bit-Ausgabewert an (36) zu erzeugen.
Der Ausgabewert vom Verschlüsselungsalgorithmus
(33) wird durch einen Parallel-zu-Seriell-Wandler (39)
in serielle Form umgewandelt.
-
Der
an der Ausgabe des Parallel-zu-Seriell-Wandlers (39) erzeugte
serielle Datenstrom wird mittels eines Funkfrequenz-Sender-Vorfeldmittels oder
eines Infrarot-Sender-Vorfeld-Mittels (nicht gezeigt) übertragen.
Dieser Ausgabedatenstrom ist derart konfigurierbar, daß er zeitlichen
Wellenformerfordernissen des bestimmten Sendertyps, der in einer gegebenen
Anwendung verwendet werden kann, genügt.
-
Im
Betrieb können
bis zu vier zur Verschlüsselung
konfigurierte integrierte Schaltungen (21) mit einer einzelnen
zur Entschlüsselung
konfigurierten integrierten Schaltung (21) verbunden werden,
um einen funktionsfähigen
Satz von Vorrichtungen zu bilden. Die Konfigurationsdaten für die integrierten Entschlüsselungs-Schaltungen
müssen
dafür sorgen, daß der Entschlüsselungsalgorithmus
(40) aktiviert ist. Ferner muß jede der integrierten Verschlüsselungsschaltungen
mit einem einmaligen Verschlüsselungsschlüssel (34)
und mit dem gleichen festen Datenbyte (37) konfiguriert
sein. Die integrierte Entschlüsselungsschaltung
ist mit dem Verschlüsselungsschlüssel (34)
jeder der verbundenen integrierten Verschlüsselungsschaltungen bis zu
einem Maximum von vier derartigen Schlüsseln konfiguriert sowie mit
dem gemeinsamen festen Datenbyte (37). Die integrierte
Entschlüsselungsschaltung
ist ferner mit einem Zählerwert
für jeden
der verbundenen integrierten Verschlüsselungsschaltungen bis zu
einem Maximum von vier Schaltungen konfiguriert.
-
Ein
Funkfrequenz- oder Infrarotempfänger (nicht
gezeigt) dient als ein Vorfeldmittel für die integrierte Schaltung
(21), die für
die Entschlüsselung konfiguriert
ist, um einen durch eine der integrierten Verschlüsselungsschaltungen
gesendeten Datenstrom zu empfangen. Der Empfängertyp ist derart gewählt, daß er den
mit den integrierten Verschlüsselungsschaltungen
verwendeten Sendern entspricht.
-
Die
Funktion der Anwendungssoftware in einer integrierten Schaltung,
die zur Entschlüsselung konfiguriert
worden ist, wird in der folgenden Diskussion beschrieben. Ein serieller
Datenstrom, der durch das Empfängervorteldmittel
(nicht gezeigt) empfangen wird, wird durch einen Seriell-zuParallel-Wandler (51)
in ein empfangenes 56-Bit-Datenwort umgewandelt. Das Datenwort wird
durch Anwenden des Entschlüsselungsalgorithmus
(40) und eines Entschlüsselungsschlüssels (42a)
entschlüsselt.
Es wird einem Fachmann im Fachgebiet offensichtlich sein, daß, wenn
der Entschlüsselungsalgorithmus
(40) das Inverse des Verschlüsselungsalgorithmus (33)
ist und wenn der Entschlüsselungsschlüssel (42a)
der gleiche wie der Verschlüsselungsschlüssel (34)
ist, das entschlüsselte
Datenwort dann ein 56-Bit-Datenwert sein
wird, das aus dem Zählerwert
(35) gefolgt durch das feste Byte (37) und das Überprüfungssumme-Byte
(38) besteht, welches Datenwort in verschlüsselter
Form, wie oben beschrieben, gesendet wurde.
-
Aus
dem entschlüsselten
Zählerwert
und dem entschlüsselten
festen Byte wird unter Verwendung eines identischen Algorithmus
zu dem Prüfsummen-Algorithmus, der
vor der Verschlüsselung zum
Berechnen des Prüfsummen-Byte (38)
verwendet wurde, ein zusätzliches
Prüfsummen-Byte
berechnet. Das empfangene Prüfsummen-Byte
und das berechnete Prüfsummen-Byte
werden bei (43) verglichen und, falls sie nicht gleich
sind, dann hat entweder eine Datenverfälschung während der Übertragung stattgefunden oder
es wurde ein falscher Entschlüsselungsschlüssel im
Entschlüsselungsprozeß verwendet.
Falls das empfangene und das berechnete Prüfsummen-Byte nicht übereinstimmen, dann
wird das empfangene Datenwort erneut unter Verwendung eines anderen,
im EEPROM-Speicher (27) der integrierten Entschlüsselungsschaltung
enthaltenen Entschlüsselungsschlüssel (42b)
entschlüsselt
und ein Prüfsummen-Byte
berechnet und mit dem empfangenen Prüfsummen-Byte wie oben verglichen.
Der Prozeß wird
wiederholt, bis entweder alle gespeicherten Entschlüsselungsschlüssel (42a), (42b),
(42c) und (42d) zur Entschlüsselung verwendet wurden oder
ein berechnetes Prüfsummen-Byte gefunden
wird, das mit dem empfangenen entschlüsselten Prüfsummen-Byte übereinstimmt.
Falls kein übereinstimmendes
Prüfsummen-Byte auf diese Art und
Weise gefunden wird, werden die empfangenen Daten fallen gelassen,
und der Empfänger
fährt fort, auf
andere übertragene
Datenströme
zu achten.
-
Wenn übereinstimmende
Prüfsummen-Bytes
gefunden werden, wird das empfangene entschlüsselte feste Byte bei (44)
mit dem in dem EEPROM (27) der integrierten Entschlüsselungsschaltung
gespeicherten festen Byte verglichen. Falls das empfangene und das
gespeicherte feste Byte nicht übereinstimmen,
werden die empfangenen Daten fallen gelassen.
-
Als
letztes wird der empfangene entschlüsselte Zählerwert bei (45)
auf Zulässigkeit
gegen den gespeicherten Zählerwert
getestet, der dem Verschlüsselungsschlüssel (42a),
(42b), (42c) oder (42d) entspricht, der
die übereinstimmenden
Prüfsummen-Bytes
erzeugte. Damit der empfangene entschlüsselte Zählerwert zulässig ist,
muß er
größer als der
entsprechende, in der integrierten Entschlüsselungsschaltung gespeicherte
Zählerwert
sein, da der Zählerwert
(35) in der integrierten Verschlüsselungsschaltung vor der Verschlüsselung
und dem Senden erhöht
wird. Zusätzlich
muß der
empfangene Zählerwert
kleiner als der gespeicherte Zählerwert
zuzüglich
eines Totbereichs von 2047 sein, um versehentliche oder absichtliche
Aktivierung der integrierten Verschlüsselungsschaltung im Falle,
daß diese
außerhalb
des Übertragungsbereichs
der integrierten Entschlüsselungsschaltung
ist, zu berücksichtigen. Nachdem
der empfangene Zählerwert
getestet wurde und als zulässig
gefunden wurde, wird ein Ausgabesignal durch die integrierte Schaltung
bei (46) gemäß den Erfordernissen
der Anwendung erzeugt.
-
Die
Ausgabe (46) der integrierten Entschlüsselungsschaltung (21)
kann konfiguriert sein, um zwischen zwei Zuständen äquivalent einem "AN" oder "AUS"-Zustand umzuschalten
oder ein Puls wählbarer
Dauer zwischen 0,1 und 2,5 Sekunden zu sein. Alternativ kann die
Ausgabe (46) dazu konfiguriert sein, das Protokoll eines
anderen bekannten integrierten Schaltungstyps zu emulieren. Ein
Ausgabesignal (46), das dem emulierten Protokoll genügt, wird
jedesmal erzeugt, wenn die integrierte Entschlüsselungsschaltung (21)
einen zulässigen
Datenstrom von einer integrierten Verschlüsselungsschaltung empfängt. Einige
der Protokolle, die emuliert werden können, sind das MC145026/VD5026 Datenformat
von Motorola/USA, das MM53200/MM57C200 Datenformat von National
Semiconductor/USA oder das TEA5500/1 Datenformat von Philips/Niederlande.
-
Wenden
wir uns nun der 6 zu. Der EEPROM-Speicher (27),
in dem die Konfiguration der integrierten Schaltung (21)
gespeichert ist, wird mittels einer Programmiereinheit (50)
konfiguriert, die optional mit einem Computer (51), wie
etwa einem IBM-kompatiblen persönlichen
Computer (PC) verbunden sein kann. Die Programmiereinheit (50)
umfaßt
einen Mikroprozessor (52), eine Energieversorgung (53),
eine Tastatur (54) für
die Dateneingabe, eine Flüssigkristallanzeige
(LCD) (55) und eine Programmierfassung (26) zum
Empfangen der integrierten Schaltung (21). Die Programmiereinheit
(50) kann bei (57) mit einer parallelen Erweiterungsfassung
(nicht gezeigt) verbunden sein zum externen Programmieren zusätzlicher
integrierter Schaltungen (21). Die Programmiereinheit (50)
ist mit dem Computer (51) durch einen RS232C Kommunikationsanschluß (58)
verbindbar. Die Programmiereinheit kann in einem autonomen Modus
verwendet werden, in welchem Fall die Verbindung mit dem PC (21)
nicht notwendig ist und alle Konfiguration über die Tastatur (54)
durchgeführt
wird.
-
Jede
integrierte Schaltung (21), die zur Verschlüsselung
konfiguriert ist, wird mit ihrem eigenen festen einmaligen Verschlüsselungsschlüssel (34) konfiguriert,
indem eine 56-Bit-Zufallszahl in der Programmiereinheit (50)
erzeugt wird und dieser Wert in den EEPROM-Speicher (27)
der integrierten Schaltung herabgeladen wird. Eine einzelne zur
Entschlüsselung
konfigurierte Schaltung (21) wird mit bis zu vier zur Verschlüsselung
konfigurierten integrierten Schaltungen verbunden, indem ihr EEPROM-Speicher
(27) mit den jeweiligen Verschlüsselungsschlüsseln (42a),
(42b), (42c) und (42d) der integrierten Verschlüsselungsschaltungen,
mit der sie zu verbinden ist, konfiguriert wird.
-
Die
Ausgabe einer zur Verschlüsselung
konfigurierten integrierten Schaltung (21) kann verwendet
werden, um zu bewirken, daß eine
(nicht gezeigte) lichtemittierende Diode (LED) intermittierend blinkt,
um eine Anzeige für
eine niedrige Versorgungsspannung vorzusehen. Wenn eine niedrige Versorgungsspannung
erfaßt
wird, wird ein Warncode durch die integrierte Verschlüsselungsschaltung
zu der zur Entschlüsselung
konfigurierten integrierten Schaltung (21) gesendet, mit
der sie verbunden ist, und es wird dann ein Ausgang der integrierten
Entschlüsselungsschaltung
gesetzt, und dieser Ausgang kann verwendet werden, um eine LED zu aufleuchten
oder einen Summer ertönen
zu lassen, um eine hörbare
und sichtbare Warnung der niedrigen Versorgungsspannung vorzusehen.
Ein ähnlicher
Warncode kann übertragen
werden, wenn aufgrund einer Fehlfunktion eine integrierte Verschlüsselungsschaltung
unfähig
ist, Daten in den EEPROM-Speicher (27) zu schreiben.
-
Wenn
integrierte Schaltungen (21) zum Beispiel in einem Motorfahrzeugalarmsystem
verwendet werden, müssen
eine oder mehrere integrierte Verschlüsselungsschaltungen mit einer
einzelnen, für die
Entschlüsselung
konfigurierten integrierten Schaltung in der oben umrissenen Art
und Weise verbunden werden, d.h. der Verschlüsselungsschlüssel jeder
integrierten Verschlüsselungsschaltung
wird in den Konfigurationsspeicher der integrierten Entschlüsselungsschaltung
geladen, wo er dann für
die Verwendung durch den Entschlüsselungsalgorithmus
(40) zugänglich
ist. Zum Gewährleisten
der Sicherheit kann die integrierte Verschlüsselungsschaltung derart ausgebildet
werden, daß sie
eine LED (nicht gezeigt) aufblinken läßt, um die optische Wiedergewinnung
des Verschlüsselungsschlüssels in
einer verschlüsselten
Form zu ermöglichen.
Die verschlüsselten
Lichtblitze können
durch einen Empfänger
erfaßt
werden und entschlüsselt
und in eine integrierte Entschlüsselungsschaltung
(21) herabgeladen werden. Auf diese Art und Weise kann
eine Wartungsstation schnell und leicht das Alarmsystem eines Motorfahrzeugs
neu konfigurieren. Zum Gewährleisten
der Synchronisation zwischen den integrierten Verschlüsselungs-
und Entschlüsselungsschaltungen
in einen funktionsfähigen
Satz werden alle in den jeweiligen Speichern dieser Vorrichtungen
gespeicherten Zählerwerte
derart initialisiert, daß sie Nullwerte
aufweisen.
-
Diese
Ausführungsform
der Erfindung wurde mit spezieller Bezugnahme auf ein Fernmeldesystem beschrieben,
der Bereich der Erfindung ist aber eindeutig nicht auf diese Anwendung
beschränkt.
-
Die
Erfindung stellt somit einen konfigurierbaren, anwendungsorientierten
Controller mit niedrigen Kosten bereit, der für die Verwendung in sichere Datenübertragung
erfordernden Anwendungen geeignet ist.