DE60129742T2 - Verfahren und vorrichtung zum datentransfer - Google Patents

Verfahren und vorrichtung zum datentransfer Download PDF

Info

Publication number
DE60129742T2
DE60129742T2 DE60129742T DE60129742T DE60129742T2 DE 60129742 T2 DE60129742 T2 DE 60129742T2 DE 60129742 T DE60129742 T DE 60129742T DE 60129742 T DE60129742 T DE 60129742T DE 60129742 T2 DE60129742 T2 DE 60129742T2
Authority
DE
Germany
Prior art keywords
timer
encoder
decoder
transmission
information
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.)
Expired - Lifetime
Application number
DE60129742T
Other languages
English (en)
Other versions
DE60129742D1 (de
Inventor
Frederick Johannes Bruwer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Azoteq Pty Ltd
Original Assignee
Azoteq Pty Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Azoteq Pty Ltd filed Critical Azoteq Pty Ltd
Application granted granted Critical
Publication of DE60129742D1 publication Critical patent/DE60129742D1/de
Publication of DE60129742T2 publication Critical patent/DE60129742T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/20Individual registration on entry or exit involving the use of a pass
    • G07C9/215Individual registration on entry or exit involving the use of a pass the system having a variable access-code, e.g. varied as a function of time
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C9/00182Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated with unidirectional data transmission between data carrier and locks
    • G07C2009/0023Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated with unidirectional data transmission between data carrier and locks with encription of the transmittted data signal
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C9/00182Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated with unidirectional data transmission between data carrier and locks
    • G07C2009/00238Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated with unidirectional data transmission between data carrier and locks the transmittted data signal containing a code which is changed
    • G07C2009/00253Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated with unidirectional data transmission between data carrier and locks the transmittted data signal containing a code which is changed dynamically, e.g. variable code - rolling code
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C9/00309Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated with bidirectional data transmission between data carrier and locks
    • G07C2009/00555Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated with bidirectional data transmission between data carrier and locks comprising means to detect or avoid relay attacks
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C2009/00753Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by active electrical keys
    • G07C2009/00761Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by active electrical keys with data transmission performed by connected means, e.g. mechanical contacts, plugs, connectors
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C2009/00753Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by active electrical keys
    • G07C2009/00769Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by active electrical keys with data transmission performed by wireless means
    • G07C2009/00785Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by active electrical keys with data transmission performed by wireless means by light
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C2009/00753Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by active electrical keys
    • G07C2009/00769Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by active electrical keys with data transmission performed by wireless means
    • G07C2009/00793Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by active electrical keys with data transmission performed by wireless means by Hertzian waves
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C9/00817Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys where the code of the lock can be programmed
    • G07C2009/00849Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys where the code of the lock can be programmed programming by learning
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C2209/00Indexing scheme relating to groups G07C9/00 - G07C9/38
    • G07C2209/08With time considerations, e.g. temporary activation, valid time window or time limitations

Description

  • Allgemeiner Stand der Technik
  • Die Erfindung betrifft allgemein das sichere Übertragen von Daten unter Verwendung eines elektronischen Codier- und Decodiersystems. Die Erfindung findet besondere Anwendung in der schlüssellosen Fernbedienung von Zugangssystemen, obwohl sie nicht auf diese Anwendung begrenzt ist, die hierin im Folgenden nur zu Beispielzwecken beschrieben wird.
  • Elektronische Codier- und Decodiersysteme werden in immer größeren Umfang in der Zugangssteuerung und anderen Sicherheitssystemen verwendet.
  • Beim Anwenden zum Öffnen eines Garagen- oder eines anderen Tors bietet eine Fernbedienung dem Benutzer die Bequemlichkeit, das Fahrzeug nicht verlassen zu müssen, um den Toröffner zu betätigen. Der schlüssellose Fernzugang, der in einem Fahrzeug verwendet wird, gestattet dem Benutzer den einfachen Zugang zu einem Fahrzeug, ohne einen Schlüssel in ein Schlüsselloch einführen zu müssen. Fernbedienungssender bieten einen praktischen Mechanismus zum Aktivieren und Deaktivieren von Sicherheitssystemen, wie beispielsweise Alarmen, und können als mobile Alarmknöpfe wirken.
  • Das Potenzial eines Angriffs auf ein Sicherheitssystem erhöht sich mit der zunehmenden Leistung und Geschwindigkeit von im Handel erhältlichen Computern und damit, dass diese Geräte billiger werden. Mit anderen Worten, Sicherheitsebenen für Zugangssteuerung sind von Natur aus dynamisch und müssen von Zeit zu Zeit angepasst werden.
  • Stand der Technik
  • Frühere Codierer und Decodierer auf digitaler Basis waren so ausgelegt, dass sie einen festen Code von angenommen 8 Bits übertrugen. Der Codierer (Sender) sendete jedes Mal den gleichen Code, wenn er aktiviert wurde.
  • Der Typ von System wurde angegriffen, indem eine Abtastvorrichtung mit einem Sender verwendet wurde, der alle Codes der Reihe nach durchging. Da die Anzahl der möglichen Codes ziemlich klein war, war es machbar, alle Codes in einer relativ kurzen Zeit durchzugehen. Dieser Typ von Abtastung konnte manuell unter Verwendung von DIP-Schaltern in einem serienmäßig produzierten Sender durchgeführt werden.
  • Um diesem Problem entgegenzutreten, wurde die Anzahl von Bits (die Code-Länge) erhöht, und es wurden Anti-Abtasttechniken implementiert. Wenn zum Beispiel eine Anzahl von ungültigen Codes innerhalb einer kurzen Zeitperiode empfangen wurde, blockierte das System immer für einige Minuten, um die Zeit, die zum Abtasten des Code-Raums erforderlich war, in inakzeptabler Weise zu verlängern.
  • Die Lösung wurde wiederum von Codefangschaltungen oder Recordern zunichte gemacht. Der gesendete Code wurde aufgezeichnet und wiedergegeben. Abgesehen von der Code-Länge war der Empfänger (Decodierer) nicht in der Lage, zwischen einer ursprünglichen Nachricht und einer Aufzeichnung davon zu unterscheiden. Ein typischer Wiedergabe-Angriff ist in einem unidirektionalen System mit festem Code unmöglich zu verhindern.
  • Um die Code-Abfangtechnik abzuwehren, wurden Systeme mit variablem Code, rollierendem Code oder Code-Sprungentwickelt. Dabei handelte es sich durchweg um unidirektionale Systeme, weil bidirektionale Systeme teuer und unhandlich waren. Obwohl eine Reihe dieser Systeme relativ sicher war, wiesen einige praktische Einschränkungen auf, und im Allgemeinen fehlte es ihnen an akzeptablen Mitteln für die Bearbeitung von verlorenen Codes, d.h. von Codes, die außerhalb der Reichweite des dazugehörigen Empfängers gesendet wurden. Diese Zwangsläufigkeit schuf eine "Hintertür", was zu einer Verletzung der Sicherheit führte.
  • Soum ( U.S.-Patent Nr. 5107258 ), Yoshizawa (europäische Veröffentlichungs-Nr. EP 0311112 A ) und Bruwer und andere ( U.S.-Patent Nr. 5517187 ) zeigen Systeme, die sich mit verschiedenen Problemen beschäftigen, die mit unidirektionalen Codierer/Decodierer-Sicherheitssystemen verbunden sind. Allerdings, wie bereits dargelegt, sind Sicherheitssysteme dynamisch, und es haben sich neue Angriffstypen entwickelt, und es sind Mängel in solchen Systemen zutage getreten.
  • Soums System weist einen inkrementierenden Zähler auf, und jede Übertragung basiert auf einem neuen Zählerwert. Der Zählerwert wird zusammen mit anderen Informationen unter Verwendung eines irreversiblen Algorithmus und geheimer Informationen verschlüsselt. Die Zählung wird im Klartext zusammen mit dem verschlüsselten Datenwort übertragen. Der Empfänger muss prüfen, ob der verschlüsselte Wert einem offenen Wert entspricht. Insofern stellt ein verlorener Code bzw. eine verlorene Synchronisation kein Problem dar.
  • In dem von Bruwer und anderen gelehrten System wird ein Zähler verwendet, der sich bei jeder Aktivierung ändert. Unter Verwendung eines geheimen Schlüssels bzw. einer Identifikationsnummer wird der Zählwert zusammen mit anderen Daten mittels eines Algorithmus verschlüsselt, der einen dazugehörigen Decodier-Algorithmus am Empfänger aufweist. Am Empfängerende wird das verschlüsselte Codewort entschlüsselt, um den Zählerwert zu ergeben. Durch Subtrahieren des vorherigen gültigen empfangenen Codewort-Zählerwerts von dem jüngsten Zählerwert kann die Anzahl verlorener Codes ermittelt werden.
  • In den vorgenannten Referenzen kann die Anzahl verlorener Codes einige weitere Maßnahmen bestimmen, aber wichtiger ist, es kann festgestellt werden, ob der empfangene Code tatsächlich ein neuer Code und nicht eine Wiedergabe eines alten Codes ist, der aufgezeichnet worden sein könnte.
  • Die vorgenannten Systeme zeigen jedoch die folgenden Schwachpunkte auf, ungeachtet der Qualität des Verschlüsselungsalgorithmus, der zum Sichern der Daten verwendet wird:
  • (a) Angriff durch externe Aufzeichnungs-Wiedergabe:
  • In diesem Szenario wird der Sender außerhalb der Reichweite des zugehörigen Empfängers aktiviert. Der Code wird dann aufgezeichnet und kann durch eine Wiedergabe dazu verwendet werden, einen Garagentor-Öffner (GDO) oder eine Fahrzeugtür usw. zu aktivieren (zu öffnen). Dies kann auch erfolgen, obwohl sich der legale Schlüssel immer noch beim Besitzer befindet und vom Empfänger entfernt ist. Nach der Aufzeichnung können Stunden vergehen. Natürlich wird die nächste Übertragung von dem authentischen Schlüssel, die von dem Decodierer empfangen wird, den aufgezeichneten Code ungültig machen.
  • Dieser Angriff kann gefährlicher sein, wenn nach der bzw. den Aufzeichnungen der legale Schlüssel (nicht sichtbar, aber funktionell) beschädigt wird und daher die aufgezeichnete Übertragung nicht ungültig machen kann, indem für den Empfänger ein neuerer Code bereitgestellt wird.
  • Sofern der Benutzer diesen speziellen Sender (oder Schlüssel) nicht löscht, kann der Angreifer den bzw. die aufgezeichneten Codes für einen längeren Zeitraum (Monate oder Jahre) verwenden, um sich unerlaubten Zugang zu schaffen. Es ist bekannt, dass der durchschnittliche Benutzer solche Aufgaben selten sorgfältig durchführen kann.
  • Der Angriff benötigt keinen physischen Zugang zu dem legalen Schlüssel, und man kann argumentieren, dass der Angriff irrelevant ist, was auf die meisten Situationen wahrscheinlich zutrifft. Allerdings ist es immer noch so einfach, oder sogar noch einfacher, wie einen mechanischen Schlüssel zu stehlen, ein Duplikat anfertigen zu lassen und das Original wieder zurückzulegen, um Verdacht zu vermeiden.
  • (b) Doppelte Aufzeichnung, Blockierung und Wiedergabe:
  • Für diesen Angriff ist etwas mehr Fachwissen erforderlich, aber für die meisten Leute mit Elektronik-Kenntnissen ist er sicherlich möglich. Dieser Angriff ist sehr relevant für GDOs mit einem Knopf. Wenn ein Benutzer einen Sender aktiviert, um ein Tor zu schließen, zeichnet der Angreifer das gesendete Codewort auf, blockiert zu gleichen Zeit aber den Empfang des speziellen Codeworts an dem GDO-Empfänger. Dies kann erfolgen, indem die Übertragungswörter selektiv blockiert werden.
  • Typischerweise versucht der Benutzer eine weitere Übertragung. Der Angreifer zeichnet wieder auf und blockiert. Wenn die Übertragung beendet ist, gibt der Angreifer das erste erfasste Codewort wieder. Das GDO empfängt dieses und schließt sich.
  • Wenn der Benutzer jetzt wegfährt, hat der Angreifer ein Codewort erfasst, dass momentan, (bis der rechtmäßige Benutzer einige Stunden oder Tage später zurückkommt), in der Lage ist, diese spezielle GDO zu aktivieren.
  • (c) Ungesicherte Befehls-Bits:
  • Das von Soum vorgeschlagene System sendete seine Befehle ungesichert. Dies würde es für einen Angreifer einfach machen, einen Befehlstyp (Alarm einschalten) in einen anderen (Deaktivieren) zu ändern. Unter Verwendung dieser Technik kann auch der Angriff mittels doppelter Aufzeichnung, Blockierung und Wiedergabe bei Mehrschalter-Sendersystemen verwendet werden; und
  • (d) Schrittweiser Schnelldurchlauf:
  • Umlauf in kurzer Zeit. Dabei handelt es sich vermutlich um das schlimmste Problem, weil für diesen Angriff nur sehr wenig Technologie erforderlich ist. Der Angreifer nimmt eine schrittweise Übertragung vor, indem der Sender einige Male, z.B. 100 mal, aktiviert wird und dann einige Aufzeichnungen von anschließenden Übertragungen vorgenommen werden. Dann aktiviert der Angreifer den Sender, bis er umläuft und stoppt ihn beim gleichen Zähler, bei dem er sich befand, bevor er ursprünglich gestartet wurde. Der Benutzer bemerkt nichts, aber der Angreifer verfügt über einige künftige Codes für die Verwendung bei einem Angriff, der jederzeit während der nächsten längeren Zeitperiode erfolgen kann.
  • Nicht sicherheitsbezogene Mängel sind:
    • (a) Wenn ein legaler Schlüssel für mehr als einen Decoder/eine Anwendung verwendet wird, kann der Zähler viele Male zwischen Aktivierung in dem am wenigsten verwendeten Decodierer erhöht werden. Dies kann zu Anforderungen eines breiteren Fensters führen, das, obwohl es das Sicherheitsniveau senkt, eher ein praktisches Betriebsproblem ist.
    • (b) Die Tatsache, dass der Zählerwert ebenfalls unverschlüsselt übertragen wird, z.B. wie bei Soums Technik, macht das Codewort länger. Dies hat Auswirkungen auf die Übertragungsenergie und Geräuschwahrnehmbarkeit.
  • Wie aus der vorhergehenden Diskussion ersichtlich ist, weisen die Systeme, die von Bruwer und anderen sowie Soum vorgestellt wurden, obwohl es sich um in hohem Maße verbesserte Systeme gegenüber den vorherigen Systemen mit festem Code handelt, immer noch einige Bereiche auf, die für Verbesserungen offen sind. Dies wird zwingend notwendig, da die den Angreifern zur Verfügung stehende Technologie immer fortschrittlicher wird. Der Anreiz für einen Angreifer wird ebenfalls attraktiver, da dieser Systemtyp verwendet wird, um immer wertvolleres Eigentum zu schützen.
  • Das von Yoshizawa vorgestellte System ist zeitbasiert, wobei ein Zeitgeber den von Soum und Bruwer und anderen verwendeten inkrementierenden Zähler ersetzt, um Codes zu sichern, die sich mit jeder Übertragung ändern. Diese Vorgehensweise bietet für die Sicherheit große Vorteile. Das System, so wie es von Yoshizawa vorgestellt wird, weist jedoch ernsthafte Mängel auf, wenn es für eine weitreichende Implementierung in Produkten wie beispielsweise schlüsselloser Fernzugang (RKE) für Fahrzeuge, Fernbedienungen für Tore und Garagentor-Öffner (GDOs) oder andere Zugangssteuerungsanwendungen mit Sicherheitsanforderungen in Betracht gezogen wird.
  • Yoshizawa schlägt ein System vor, in dem Sender- und Empfänger-Zeitgeber zum gleichen Zeitpunkt gestartet werden, um die Zeitgeber zu synchronisieren. Diese Prozedur wäre für einen großen Prozentsatz der Benutzer zu kompliziert. Wenn mehr als ein Sender einen einzelnen Empfänger steuern muss, wird die Lage noch schlimmer. Wenn nicht alle Sender zur gleichen Zeit vorhanden sind, ist diese Vorgehensweise tatsächlich unmöglich (Spalte 3, Zeile 36–41). Für die meisten Anwendungen ist dies praktisch undurchführbar.
  • Yoshizawa anerkennt die Zeitdifferenz, die aufgrund der natürlichen Drift zwischen den Zeitgebern auftritt, spricht dieses Problem aber nur an, indem das Zeitfenster zum Akzeptieren von Übertragungen vergrößert und eine Warnung ausgegeben wird, wenn der Zeitunterschied einen gewissen Grenzwert erreicht, der geringer als der Grenzwert ist, über den hinaus der Empfänger nicht gesteuert werden kann.
  • In einer weiteren Ausführungsform ist eine Code-Einstellmaßnahme erforderlich (Spalte 5, Zeile 16–21). In einem Beispiel sind eine Armbanduhr mit einer Anzeige und einer Tastatur (10 Tasten) gezeigt. In dieser Ausführungsform kann der Empfänger direkte Übertragungen akzeptieren, um eine Reihe von Zeitgebern einzustellen. In diesem Fall sind Tastaturen an dem Sender und dem Empfänger erforderlich.
  • Die Sender/Empfänger-Zeitanzeigen leiten den Benutzer auch dazu an, die Zeit zu korrigieren, wenn eine Unstimmigkeit festgestellt wird. Für ein System wie dieses sind Anzeigen, Tastaturen und Benutzereingriffe erforderlich und können für eine große Anzahl von Anwendungen aufgrund der Kosten, der Größe und Anforderungen bezüglich einer bedienungsfreundlichen Benutzertransparenz inakzeptabel sein.
  • Das Yoshizawa-System ist für Anwendungen gedacht, in denen einige wenige "illegale Eingaben", die in einer relativ kurzen Periode erreicht werden können, (Spalte 9, Zeile 45–48), nicht als ein Problem betrachtet werden. In allgemeinen Sicherheitsanwendungen wäre ein solches Ereignis jedoch inakzeptabel.
  • Yoshizawa stellt keine Lösung für das sehr reale Problem vor, bei dem der Empfänger- oder Sender-Zeitgeber Energie verliert, (leere Batterie), und daher die Zeit nicht mehr verfolgt, die sich auf andere Zeitgeber in dem System bezieht. Daraus muss gefolgert werden, dass ein vollständiges Neu-Erlernen durchgeführt werden muss. Dies wäre auf dem allgemeinen Markt sicherlich nicht akzeptabel.
  • FR-A-2678755 offenbart eine Fernsteuerung, die einen Erkennungscode verwendet, der einen festen Teil und einen zeitabhängigen Teil umfasst, der gleichzeitig durch einen Zähler in einem Sender und durch einen Zähler in einem Empfänger erzeugt wird. Diese Zähler werden zu Beginn und danach bei jedem Betrieb der Fernsteuerung synchronisiert.
  • Zusammenfassung der Erfindung
  • Die Erfindung stellt ein Verfahren zum sicheren Übertragen von Daten von einem Codierer zu einem Decodierer bereit, wobei das Verfahren die folgenden Schritte umfasst:
    • (a) am Codierer Verschlüsseln eines Datenworts, das wenigstens teilweise auf Zeitgeber-Informationen basiert, die durch den Codierer-Zeitgeber erzeugt werden, um ein Übertragungswort zu bilden;
    • (b) Übertragen des Übertragungsworts zu dem Decodierer; und
    • (c) an dem Decodierer Entschlüsseln des Übertragungsworts; wobei das Verfahren gekennzeichnet ist durch die folgenden Schritte
    • (d) an dem Decodierer Speichern eines Zeitgeber-Verhältniswerts, der während eines Lernprozesses des Codierers und des Decodierers erstellt wird und wenigstens von einer Differenz zwischen einem Wert des Codierer-Zeitgebers und einem Wert des Decodierer-Zeitgebers abhängt;
    • (e) Validieren des Übertragungsworts durch Vergleichen der Codierer-Zeitgeberinformationen, der Decodierer-Zeitgeberinformationen und ihrer Beziehung zu dem gespeicherten Zeitgeber-Verhältniswert; und
    • (f) Aktualisieren des Zeitgeber-Verhältniswerts in den Decodierer nach dem Empfang eines gültigen Übertragungsworts, um sämtliche Unstimmigkeiten in der Beziehung zwischen dem Codierer-Zeitgeber, dem Decodierer-Zeitgeber und dem Zeitgeber-Verhältniswert zu beseitigen.
  • In einigen Ausführungsformen der Erfindung wird der Zeitgeber-Verhältniswert einer Fenstergröße in dem Decodierer zugeordnet, und der Codierer-Zeitgeber wird betrieben, um sicherzustellen, dass die Codierer-Zeitgeberinformationen nicht außerhalb des Fensters für eine gültige Übertragung eines Übertragungsworts liegen.
  • Die Daten, die verschlüsselt sind, werden in ein Datenwort kompiliert, das verschlüsselt wird, um das Übertragungswort zu bilden.
  • Das Datenwort kann zusätzlich wenigstens eines von dem Folgenden enthalten: Identitätsinformationen, die zu dem Sender gehören; Befehlsinformationen; Dienstprogramm-Informationen; feste Code-Informationen und benutzerdefinierte Informationen.
  • Das Verfahren kann den Schritt umfassen, den Sender und Empfänger unter Verwendung eines Kaltstartzählers in Gleichlauf zu halten, der jedes Mal geändert wird, wenn der Sender eingeschaltet wird oder aus dem Reset zurückkehrt. Der Zählwert des Kaltstartzählers kann verwendet werden, um einen Schlüssel oder Algorithmus an dem Sender zu beeinflussen, und der Zählwert ist nicht notwendigerweise Teil des Datenworts, das verschlüsselt ist.
  • Der Zählwert des Kaltstartzählers kann unverschlüsselt zu dem Empfänger übertragen werden.
  • Wenigstens ein Teil eines Worts, in dem der Zählwert des Kaltstartzählers integriert ist, kann zum Bezeichnen eines möglichen optionalen Zustands verwendet werden.
  • Da jedes Übertragungswort, (d.h. einschließlich des codierten oder verschlüsselten Datenworts), das von dem Sender übertragen wird, auf einem neuen Wert von dem Zeitgeber an dem Sender basiert, folgt daraus, dass die Übertragungswörter sich voneinander unterscheiden können, obwohl die Übertragungswörter von einer einzigen Aktivierung des Senders herrühren. Diese Vorgehensweise kann jedoch nicht immer wünschenswert sein, und gemäß einer Variation der Erfindung wird ein neues Übertragungswort nur bei jeder neuen Aktivierung des Senders oder nach einer längeren Periode einer Übertragungsaktivierung gebildet.
  • Gemäß einem bevorzugten Gesichtspunkt der Erfindung weist der Codierer an dem Sender einen benutzerdefinierten, veränderbaren Teil seines Schlüssels auf. Dieser Teil des Schlüssels kann durch eine oder mehrere, in irgendeiner entsprechenden Weise vorgenommenen Eingaben in den Sender-Codierer verändert werden, beispielsweise mittels DIP-Schaltern, einer Knopfbetätigungsprozedur oder dergleichen. Zusätzliche Sicherheit wird erhalten, weil die benutzerdefinierten Informationen dem Hersteller unbekannt bleiben.
  • Gemäß einem bevorzugten Gesichtspunkt der Erfindung weist der Empfänger-Decodierer einen Lernmodus auf, der es dem Decodierer ermöglicht, einen neuen authorisierten Codierer zu erlernen. Nach Beendigung der Lernmaßnahme ist der Decodierer in der Lage, Übertragungen von dem jetzt erlernten Codierer zu erkennen. Da ein Schlüssel aus Daten abgeleitet werden muss, die während des Lernprozesses von dem Codierer zu dem Decodierer übertragen werden, zum Beispiel aus Seriennummer, Startparameter und benutzerdefinierten Schlüsselinformationen, sorgt das Verfahren der Erfindung dafür, dass diese Informationen gespeichert werden können, und dass der Schlüssel nur während des Prozesses des Empfangens und Interpretierens von Befehlen abgeleitet werden kann.
  • Vorzugsweise umfasst das Verfahren der Erfindung während der Phase, in der der Decodierer Informationen von einem Sender erlernt, den Schritt des Speicherns der Lerninformationen in einer FIFO-Struktur.
  • Während des Lernprozesses wird ein Verhältnis zwischen dem Zeitgeberwert des Senders und dem Zeitgeberwert des Empfängers erstellt. Die Erfindung sorgt dafür, dass die Differenz zwischen den zwei Zeitgeberwerten am Empfänger ermittelt und gespeichert und im Bedarfsfall aktualisiert werden kann, und die Differenz kann mit der Differenz, die sich mit jeder darauf folgenden Übertragung ergibt, verglichen und im Bedarfsfall aktualisiert werden.
  • Um den Zeitgeber (oder die Uhr) an dem Sender (Codierer) mit dem Zeitgeber (oder der Uhr) am Empfänger (Decodierer) in Gleichlauf zu halten, sorgt die Erfindung gemäß einem bevorzugten Gesichtspunkt dafür, dass der zweite Zeitgeber an seiner langsamsten Abweichung (aufgrund von Drift oder anderen Faktoren) schneller als der Decodierer-Zeitgeber an seiner schnellsten Abweichung (aufgrund von Drift oder anderen Faktoren) ist.
  • Die Erfindung kann dafür sorgen, dass der Decodierer bei jedem gültigen Empfang eines Übertragungsworts das Verhältnis zwischen dem Codierer- und dem Decodierer-Zeitgeber, (das als der Tr-Wert bezeichnet wird), für den spezifischen Codierer neu kalibriert. Mit anderen Worten, der vorherige Tr-Wert wird durch den jüngsten Tr-Wert ersetzt, der das exakte Verhältnis zwischen den Zeitgebern des spezifischen Codierers und des Decodierers wiedergibt.
  • Gemäß einem weiteren Gesichtspunkt der Erfindung stellt das Verfahren ein Autosynchronisationsfenster und ein minimales oder maximales Fenster bereit.
  • Das Autosynchronisationsfenster (Wa) legt eine zeitliche Begrenzung für Drift fest, was nicht als Problem betrachtet wird. Dieses Fenster kann ein fester Wert sein, steht vorzugsweise aber in Beziehung mit der Betriebszeit des Senders und Empfängers und wird infolgedessen mit fortschreitender Zeit größer. Die Größe des Fensters kann eine Funktion der vergangenen oder der Betriebszeit sein, kann aber trotzdem auf eine akzeptable Periode begrenzt sein.
  • Wenn der Codierer-Zeitgeberwert außerhalb eines Neusynchronisationsfensters (Wr) liegt, kann das Verfahren der Erfindung den Empfang von weiteren Übertragungen von dem Codierer verhindern und eine erneute Lernmaßnahme erzwingen, um die Codierer/Decodierer-Beziehung zurückzusetzen. Alternativ kann das Verfahren wenigstens einen der folgenden Schritte in dem Fall zulassen, in dem der Codierer-Zeitgeber schnell ist, oder der Wert des Codierer-Zeitgebers außerhalb des Wa- und Wr-Fensters liegt:
    • (a) Neu synchronisieren von einem "offenen/sicheren" Zustand aus. Dies ist gleichbedeutend mit dem Korrigieren der Kombination aus einem sicheren Zugangscode, wenn er offen ist; oder
    • (b) der Codierer kann in physischen Kontakt mit dem Decodierer gebracht werden mittels eines elektrischen Leiters oder Steckverbinders. Dieser Schritt kann erforderlich sein, bevor weiterer Zugang gewährt wird.
  • Durch die Verwendung eines physischen elektrischen Steckverbinders zum Übertragen von Neusynchronisationssignalen zwischen dem Codierer und dem Decodierer ist es möglich, dem Decodierer zu gestatten, Aktivierungsknöpfe oder Eingänge an dem Codierer zu steuern, um ein quasi-bidirektionales System herzustellen. Aktivierungen können so ausgeführt werden, dass die Wahrscheinlichkeit von Codes, die nicht von dem authentischen Codierer stammen und dem Decodierer vorgelegt werden, sehr niedrig ist.
  • Indem zum Beispiel der Codierer physisch mit dem Decodierer verbunden wird, ist es möglich, den Codierer an einem genauen Zeitpunkt zu aktivieren und den Zeitgeber an dem Codierer zu starten. Der Decodierer aktiviert dann andere Eingänge an dem Codierer, welche die Übertragungswörter von dem Codierer beeinflussen, indem Befehls-Bits in dem Datenwort verwendet werden. Der Decodierer stellt sicher, dass die Wörter zu dem präzisen Zeitpunkt mit den richtigen Befehlseingabeinformationen konstruiert wurden. Indem sichergestellt wird, dass die Aktivierungsfolge dergestalt ist, dass der Codierer-Zeitgeber verwendet wird, kann die Vorab-Aufzeichnung von mehreren Befehlen verhindert werden, wodurch die Wahrscheinlichkeit eines erfolgreichen Angriffs verringert wird.
  • In einer spezifischen Ausführungsform kann ein zeitbasierter Sender (oder Schlüssel) so ausgelegt werden, dass er sowohl mit nicht-zeitgeber- und zeitgeberbasierten Decodierern (Empfängern) arbeitet. Dies ist in einer Situation wichtig, in der ein duales System erforderlich sein kann für eine Verschiebung in der Technologie von zählerbasierten zu zeitgeberbasierten Techniken, in der aber die Kompatibilität mit vorhandenen Systemen auf dem Gebiet wesentlich ist.
  • Der Zeitgeber in einem Sender kann normal bei Aktivierung zählen, wenn Batterien eingesetzt sind. Wenn der Sender von einem Empfänger "erlernt" wird, akzeptiert der Decodierer jeden Wert. Das heißt, der Decodierer unterscheidet nicht zwischen einem Zähler oder einem Zeitgeber, sondern akzeptiert einfach einen Wert. Dies verringert die Anforderung an ein gemeinsames Starten der Systeme wie beim bisherigen Stand der Technik.
  • Der Sender hält dann den Zeitgeber nur für einen Zeitraum aktiv, der den Zeitgeberwert innerhalb des automatischen Neusynchronisationsfensters des alten zählbasierten Systems (bei Tastenaktivierung) halten würde.
  • Wenn der Zeitgeber den Punkt erreicht, an dem der Zeitgeberwert das Fenster verlässt, stoppt der Zeitgeber. Das bedeutet, dass bei der nächsten Senderaktivierung der verwendete Zeitgeberwert von dem "alten" Decodierer als ein Zähler betrachtet wird, der sich immer noch innerhalb der Grenzen des Auto-/Neusynchronisationsfensters befindet und ohne Problem akzeptiert wird.
  • In einer anderen Ausführungsform setzt der Sender ein Flag, wenn sein Zeitgeber sich außerhalb des Auto-/Neusynchronisationsfensters bewegt. Bei der nächsten Übertragung führt der Sender automatisch Maßnahmen durch, die für die Neusynchronisation erforderlich sind, wenn sich der Zähler außerhalb des Fensters befindet, zum Beispiel Durchführen von zwei Übertragungen mit Zeitgeberwerten, die nahe bei einander liegen.
  • Um Situationen zu bewältigen, in denen Batterie-(Energie) ausfälle auftreten, kann der Zeitgeberwert jedes Mal, wenn eine Übertragung eintritt, in einem nichtflüchtigen Speicher gespeichert werden. Nach dem Rücksetzen wird der gespeicherte Wert als Basis für den Neustart verwendet.
  • Vorzugsweise wird der Zeitgeberverhältniswert in Schritt (f) so korrigiert, dass er die Drift zwischen dem Sender-Zeitgeber und dem Empfänger-Zeitgeber oder jede andere Unstimmigkeit oder Abweichung an dem Empfänger ausgleicht.
  • Die Erfindung stellt auch eine Vorrichtung zum Übertragen von Daten bereit, die einen Codierer und einen Decodierer umfasst, und wobei der Codierer einen Zeitgeber und eine Verschlüsselungseinheit zum Verschlüsseln von Daten umfasst, die wenigstens teilweise auf Zeitgeberinformationen von dem Codierer-Zeitgeber basieren, um dadurch ein Übertragungswort zu bilden, und der Decodierer einen Decodierer-Zeitgeber, eine Empfängereinheit zum Empfangen des verschlüsselten Übertragungsworts, eine Entschlüsselungseinheit zum Entschlüsseln des empfangenen Übertragungsworts umfasst, um wenigstens die Zeitgeberinformationen aus dem Codierer zu extrahieren, dadurch gekennzeichnet, dass die Vorrichtung eine Komparatoreinheit umfasst, um die entschlüsselten Codierer-Zeitgeberinformationen, die Zeitgeberinformationen von dem Decodierer-Zeitgeber und ihre Beziehung mit einem Zeitgeber-Verhältniswert zu vergleichen, um die Gültigkeit des Übertragungsworts zu ermitteln, wobei der Zeitgeber-Verhältniswert während eines Lernprozesses des Codierers und Decodierers erstellt wird und wenigstens von einer Differenz zwischen einem Wert des Codierer-Zeitgebers und einem Wert des Decodierer-Zeitgebers abhängt, und dadurch, dass der Zeitgeber-Verhältniswert im Einsatz beim Empfangen eines gültigen Übertragungsworts aktualisiert wird, um alle Unstimmigkeiten in der Beziehung zwischen dem Codierer-Zeitgeber, dem Decodierer-Zeitgeber und dem Zeitgeber-Verhältniswert zu beseitigen.
  • Kurze Beschreibung der Zeichnungen
  • Die Erfindung wird des Weiteren mittels Beispielen unter Bezugnahme auf die folgenden begleitenden Zeichnungen beschrieben:
  • 1 ist eine Blockschaltbild-Darstellung eines Codierers, der in einem erfindungsgemäßen Datenübertragungssystem verwendet wird,
  • 2 ist eine Speicherabbildung des in 1 gezeigten Codierers,
  • 3 ist eine Blockschaltbild-Darstellung eines Decodierers für den Einsatz zusammen mit dem Codierer von 1,
  • 4 ist eine Abbildung eines nichtflüchtigen Speichers des Decodierers von 3,
  • 4a ist eine Abbildung eines flüchtigen Speichers des Decodierers von 3,
  • 5 und 6 stellen jeweils Daten- und Übertragungswörter dar, die vom Sender stammen,
  • 7 veranschaulicht Speicheradressen für einen lernenden Codierer,
  • 8 veranschaulicht eine FIFO-Technik für das Lernen eines zweiten Codierers,
  • 9 (die in zwei Teilen dargestellt ist, die jeweils mit 9a und 9b bezeichnet sind,) ist eine Ablaufdiagramm-Darstellung, die den normalen Betrieb des Codierers darstellt,
  • 10a ist ein Ablaufdiagramm eines Verschlüsselungsprozesses,
  • 10b veranschaulicht die Wirkung eines Verschlüsselungsalgorithmus,
  • 11 ist ein Ablaufdiagramm von Schritten während eines normalen Betrieb eines Decodierers,
  • 12 ist eine Ablaufdiagramm-Darstellung eines Lernvorgangs an dem Decodierer, und
  • 13 veranschaulicht die Einstellung von benutzerdefinierten Informationen an dem Codierer.
  • Beschreibung der bevorzugten Ausführungsform
  • 1 ist eine Blockschaltbild-Darstellung eines Codierers 10, der für einen erfindungsgemäßen Sender zum Übertragen von Daten in einer sicheren Form über ein Funkfrequenz-, Infrarot- oder ein anderes Medium verwendet wird.
  • Der Codierer kann als integrierte Schaltung implementiert werden, wobei seine verschiedenen Komponenten Bestandteil dieser Schaltung sind oder als diskrete Komponenten bereitgestellt werden.
  • Der Codierer 10 weist einen nichtflüchtigen Speicher 12, eine Steuereinheit bzw. einen Prozessor 14, ein Schnittstellen- oder Eingangsmodul 16, das Daten von Eingabequellen 18 empfängt, wie beispielsweise Schaltern oder Drucktasten, einen Oszillator 20, einen Zeitgeber 22 und ein Spannungsreferenzmodul 24 auf.
  • Informationen, die die Identität des Codierers betreffen, werden in dem nichtflüchtigen Speicher 12 gespeichert.
  • Der Zeitgeber 22 läuft kontinuierlich und ist mit dem Oszillator 20 oder mit einem Kristall verbunden, um einen Zeitablaufbezug anzugeben. Der Zeitgeber 22 schaltet in regelmäßigen Intervallen um, um Zeit ungeachtet dessen wiederzugeben, ob der Codierer zur Übertragung aktiviert ist. Das Zeitmaß können Minuten oder Sekunden sein, es kann aber jede regelmäßige Periode sein.
  • Der Codierer wird von einem Benutzer gesteuert, der einen oder mehrere der Eingänge 18 aktiviert, und die daraus resultierenden Signale werden über eine Schnittstelle zu dem Steuermodul 14 übertragen, das die Eingabe interpretiert und einen entsprechenden Betrieb des Codierer veranlasst.
  • 5 veranschaulicht ein Beispiel eines Datenworts 28, das in dem Codierer erzeugt wird. In diesem Beispiel umfasst das Datenwort Zeitgeberinformationen 30, die von dem Zeitgeber 22 abgeleitet werden, Befehlsinformationen 32, die von einem oder mehreren der Eingänge 18 erzeugt werden, eine Seriennummer 34 oder einen Teil davon, der sich auf die Identität des Codierers bezieht, festen Code oder benutzerdefinierte Informationen 36 und Dienstprogramminformationen 38, welche Betriebsparameter des Codierers betreffen. Die Zeitgeberinformationen sind Wesentlich, um Varianz in dem Datenwort 28 zu erzeugen, um Wiedergabe-Angriffe zu verhindern. Die Länge des Zeitgebers und seine Auflösung geben die Ausgeglichenheit zwischen Kosten, Sicherheit und praktischen Implementierungsfaktoren wieder. Zum Beispiel kann der Zeitgeber eine 24-Bit-Vorrichtung sein, die alle 10 Sekunden inkrementiert. Aufgrund der Tatsache, dass der Zeitgeber alle 10 Sekunden umschaltet, wird ein Übertragungswert, der außerhalb des Empfängers aufgezeichnet wird, bald ungültig, weil der Decodierer in der Lage ist, festzustellen, dass der Zeitgeberwert nicht mehr aktuell ist.
  • Der Oszillator 20 in 1 ist vorzugsweise vollständig chipbasiert, wobei der Schwingungsbereich in Ermangelung dessen eingeschränkt werden muss. Als solcher kann der Oszillator nicht schnell weitergeleitet werden, um die gleiche Wirkung wie bei einem "Schnellschritt"-Angriff zu erzielen oder einfach nur Zeit auszugleichen, die verwendet werden kann, um außerhalb des Empfängers aufzuzeichnen und dann die "Extra"-Zeit zu nutzen, um zum Empfänger zurückzukehren.
  • Eines der Hauptprobleme eines zeitbasierten Systems ist, dass Energie 40 (siehe 1), gleichgültig, ob von einer Batteriequelle oder Sonstigem, verloren gehen kann. Wenn dies geschieht, verliert der Codierer sofort seine relative Zeit im Vergleich zu anderen Codierern und Decodierern, die einen Bestandteil des fraglichen Sicherheitssystems bilden. Die Zeit kann in dem nichtflüchtigen Speicher in regelmäßigen Intervallen gespeichert werden, so dass nach Wiederanlegen von Energie an den Codierer der Zeitgeber an dem Punkt fortfahren kann, an dem er angehalten hat. Er befindet sich jedoch immer noch um ungefähr den Zeitraum außerhalb der Synchronisation, den er ohne Energie war.
  • Ein kontinuierliches Schreiben in den Speicher erfordert ein "Aufwecken" in regelmäßigen Intervallen, und über mehrere Jahre Einsatz kann das Geschriebene umfangreich werden. Die Aufweck- und Schreibvorgänge verbrauchen bedeutende Energiemengen, was in den meisten Anwendungsfällen unerwünscht ist. Diese Vorgänge können auch die Optionen auf nichtflüchtigem Speicher aufgrund der hohen Anzahl von Überschreibzyklen und damit die Qualität des nichtflüchtigen Speichers begrenzen, die erforderlich ist.
  • Eine weitere Option ist, die Zeit bei jeder Übertragung zu speichern. Keine dieser Möglichkeiten ist jedoch vom Standpunkt der Sicherheit her ohne Nachteile. Die Erfindung nutzt als Alternative zu den vorgenannten Ansätzen einen Kaltstartzähler (CBC) 46, wie in der Speicherabbildung 48 von 2 gezeigt. Der Kaltstart-Zählerwert wird jedes Mal inkrementiert oder geändert, wenn der Codierer eingeschaltet wird oder von einem Rücksetzvorgang zurückkehrt. Der Kaltstartzähler kann auch geändert werden, wenn der Zeitgeber nach einer längeren Betriebsperiode überläuft.
  • Der Einsatz des Kaltstartzählers weist in der Praxis mehrere Vorteile auf:
    • (a) Der Codierer ist im Allgemeinen kostengünstiger. Das Inkrementieren des Zeitgebers in einem flüchtigen Speicher (RAM) bei niedrigeren Spannungen ist billiger als einen Wert in einem nichtflüchtigen Speicher (EEPROM) bei sehr niedrigen Spannungen zu speichern;
    • (b) es sind weniger Schreibvorgänge in den nichtflüchtigen Speicher erforderlich;
    • (c) das Risiko von Schreibfehlern wird reduziert;
    • (d) da der Kaltstartzähler nur zum Zeitpunkt des Einschaltens oder Rücksetzens geändert wird, sind die zeitlichen Einschränkungen sehr gelockert. Vom Standpunkt der Sicherheit aus kann es jedoch wünschenswert sein, die Zeitvorgaben von Sekunden auf Minuten zu erhöhen; und
    • (e) der Energiebedarf ist reduziert.
  • Es wird angemerkt, dass es wichtig ist, dass der Kaltstart-Zählerwert sich in einer konstanten Richtung ändert (nach oben oder unten), um neue und alte Übertragungen (mögliche Wiedergaben) ermitteln zu können.
  • Wie in 2 gezeigt, umfasst die Speicherabbildung 48 am Codierer eine Identifikationsnummer bzw. einen Schlüssel 50, den Kaltstartzähler (CBC) 46, eine Seriennummer 52, ein Konfigurationswort 54, einen Startparameter 56 und benutzerdefinierte Schlüsselinformationen 58. Der Kaltstart-Zählerwert kann verwendet werden, um den Schlüssel oder Algorithmus an dem Codierer zu beeinflussen und bildet nicht notwendigerweise einen Bestandteil des zu verschlüsselnden Datenworts 28. Es wird jedoch vorgeschlagen, dass der Kaltstart-Zählerwert unverschlüsselt zum Empfänger/Decodierer übertragen wird. Dies kann nicht für jedes Wort erfolgen, kann aber zum Beispiel nur in einer längeren Übertragung erfolgen, für beispielsweise mindestens 15 Sekunden oder für die erste halbe Stunde nach einem Einschaltereignis. Der CBC-Wert kann ebenfalls teilweise mit aufeinander folgenden Übertragungsworten übertragen werden.
  • 6 veranschaulicht ein Übertragungswort 70, das den (unverschlüsselten) Kaltstart-Zählerwert 46, Befehlsinformationen 72, eine verschlüsselte Version 74 des Datenworts 28, die Seriennummer 34, einen Kopf 76 und einen Wert des zyklischen Redundanzzählers (CRC) 78 umfasst. Dieses Wort wird zu dem Decodierer übertragen, an dem das Wort verschlüsselt wird, und die daraus extrahierten Daten werden auf eine im Folgenden beschriebene Weise verwendet.
  • Gemäß einem Gesichtspunkt der Erfindung wird eine Anzahl von oberen Bits des Zeitgeberwerts für einen Hochgeschwindigkeitszeitgeber verwendet, um für eine kurze Zeitdauer, beispielsweise in der Größenordnung von 10 Sekunden, rückwärts zu zählen. Dies erfolgt unmittelbar nach einer ersten Übertragung in einer Abfolge von Aktivierungen. Ein Bit des Zeitgebers wird verwendet, um ein optionales Status-Bit zu bezeichnen, das angibt, was in dem Zeitgeber 22 wiedergegeben wird. Der Hochgeschwindigkeitszeitgeber gestattet einen einfachen Zugriff und eine bessere Zeitauflösung in dem Zeitraum, nachdem eine Übertragung aktiviert worden ist, und unterstützt einen Decodierer bei zeitbasierten Aktivierungsentscheidungen. Zum Beispiel kann eine zweite Übertragungsaktivierung innerhalb von drei Sekunden nach einer ersten Aktivierung ein Befehl sein, alle Türen in einem Fahrzeug und nicht nur die Tür des Fahrers zu entriegeln. Der Decodierer muss die erste Übertragung noch nicht einmal empfangen.
  • Wenn der Zeitgeber 22 läuft, kann jedes Übertragungswort aus einer einzigen Aktivierung des Codierers auf dem neuen Zeitgeberwert basieren und sich als solches von einem vorhergehenden Wort unterscheiden. Dieser Ansatz ist unter Umständen jedoch nicht immer wünschenswert, und gemäß einer Variation der Erfindung kann ein neues Übertragungswort mit jeder neuen Aktivierung des Codierers oder nach einem längeren Zeitraum einer Übertragungsaktivierung von beispielsweise mehr als 5 Sekunden gebildet werden.
  • 3 ist eine Blockschaltbild-Darstellung eines Decodierers 80. Der Decodierer umfasst eine Steuereinheit bzw. einen Prozessor 82, einen bordeigenen Oszillator 84, einen Zeitgeber 86, einen Decodier- und Schlüsselerzeugungs-Algorithmus 88, der in einem nichtflüchtigen Speicher gespeichert ist, ein Speichermodul 90, einen Rücksetz- und Spannungs-Referenzwert 92 und ein Ausgabemodul 94, das als Schnittstelle zu einer Ausgabevorrichtung 96 wirkt, z.B. LEDs oder dergleichen. Daten 98 können zu der Steuereinheit während einer normalen Übertragung übertragen werden, wogegen für eine Lerneingabe 100 die Steuereinheit angewiesen werden kann, in einen Lernmodus einzutreten. Vorzugsweise wird der Oszillator durch einen Kristall 102 gesteuert.
  • 4 ist eine Decodierer-Speicherabbildung 104 von Informationen, die in dem nichtflüchtigen Speicher 90 enthalten sind. Die Abbildung umfasst einen Erzeugungsschlüssel 106 und eine Vielzahl von Datengruppen 108(1), 108(2) ... usw., die aus aufeinander folgenden Übertragungen von jeweiligen Sendern/Codierern resultieren. Jede Übertragung umfasst den jeweiligen Kaltstart-Zählerwert, den Startparameter und die Seriennummer, die Benutzer-Identifikationsnummer und das Konfigurationswort, auf das in Verbindung mit 2 Bezug genommen wurde. Der Decodierer im flüchtigen Speicher (4(a)) kann auch Informationen über die Beziehung jedes Codierer-Zeitgebers zu dem Decodierer-Zeitgeber (Tr) umfassen.
  • LERNEN
  • Der Decodierer 80 weist einen Lernmodus auf, in dem er einen neuen autorisierten Codierer "erlernen" kann. Nach Beendigung des Lernvorgangs ist der Decodierer in der Lage, Übertragungen von dem jetzt erlernten Codierer zu erkennen. Der Lernprozess ist im Allgemeinem im Fachgebiet bekannt. Es wird jedoch vorgeschlagen, dass jeder Codierer einen benutzerdefinierten änderbaren Teil seines Schlüssels 58 (siehe 2) aufweist, der ein Teil des Schlüssels ist, der geändert oder von dem Benutzer beeinflusst werden kann und welcher dem Hersteller nicht bekannt ist. Dies weist eine Reihe von Sicherheitsvorteilen auf. Die benutzerdefinierten Schlüsselinformationen können durch Eingaben 18 in den Codierer festgelegt werden, z.B. durch DIP-Schalter oder Tastenbetätigungs-Prozeduren. Ein Beispiel ist die Zeitdauer zwischen einem ersten Einschaltvorgang und dem Augenblick, in dem eine Taste gedrückt wird. Die benutzerdefinierten Informationen 36 können auch in das Datenwort 28 eingefügt werden, und beide Verfahren bewirken eine Änderung in den Werten und der Abfolge des Übertragungsworts (70).
  • Da ein Schlüssel aus Daten abgeleitet werden muss, die von dem Codierer zu dem Decodierer während des Lernprozesses übertragen werden, (zum Beispiel die Seriennummer, der Startparameter und die benutzerdefinierten Schlüsselinformationen), fällt es in den Umfang der Erfindung, diese Informationen zu speichern und den Schlüssel nur während des Prozesses des Empfangens und Interpretierens von Befehlen abzuleiten. Dies hat den Nachteil, dass zum Zeitpunkt des Empfangens eines Befehls zusätzliche Verarbeitung benötigt wird, spart aber Kosten, da kein nichtflüchtiger Speicher zum Speichern der Schlüssel erforderlich ist. Wenn von einem Sender während des Lernmodus Informationen erlernt werden, werden diese Informationen in einer FIFO-Stapelstruktur gespeichert.
  • Wie aus 7 und 8 ersichtlich ist, wird jeder neue Codierer in die gleiche Position erlernt. Bis zu diesem Zeitpunkt sind alle anderen Positionen in die nächste Speicherstelle programmiert worden, wobei die Informationen überschrieben werden, die sich vorher dort befunden haben. Der vorherige Wert, der sich in Position "n" (8) befunden hat, geht eindeutig verloren – daher die FIFO-Bezeichnung.
  • Während des Lernprozesses wird eine Beziehung (Tr) zwischen dem Zeitgeberwert (Te) des Codierers und dem Zeitgeberwert (Td) des Decodierers erstellt.
  • Wenn zum Beispiel während der Zeit des Erlernens Te = 120 und Td = 1234 ist, kann die Differenz Tr zwischen den beiden Werten, die 1123 beträgt, gespeichert werden. Wenn angenommen wird, dass der Decodierer- und der Codierer-Zeitgeber sich in perfektem Gleichlauf befinden, muss der empfangende Te-Wert zum Zeitpunkt der nächsten Übertragung, wenn Td = 1574 ist, 1574 – 1123 = 451 entsprechen. Es ist wichtig, dass der Tr-Wert für jeden erlernten Codierer gespeichert wird.
  • SYNCHRONISATION
  • Da der Codierer- und der Decodierer-Zeitgeber (jeweils 22 und 86) in allen, außer den teuersten Systemen, unweigerlich eine Drift zwischen sich aufweisen, ist es wichtig, eine solche Drift ohne übermäßige Verluste in Bezug auf die Sicherheit und mit so geringen Anforderungen an Benutzereingriff wie möglich anzupassen. Dies gilt auch für die Bewältigung eines Energieausfalls am Codierer oder Decodierer.
  • Gemäß einem bevorzugten Gesichtspunkt der Erfindung sind die Zeitgeber 22 und 86 so ausgelegt, dass der Codierer-Zeitgeber immer schneller als der Decodierer-Zeitgeber ist. Die Auslegung ist so, dass, selbst wenn der Codierer-Zeitgeber seine langsamste Varianz aufweist und der Decodierer-Zeitgeber seine schnellste Varianz, der Codierer-Zeitgeber der schnellere der beiden ist.
  • Mit jedem gültigen Empfang kalibriert der Decodierer den TR-Wert für den spezifischen Codierer neu, und der vorherige Tr-Wert wird durch den neuen Tr-Wert ersetzt, der die genaue und jüngste Beziehung zwischen dem Codierer- und dem Decodierer-Zeitgeber (22 und 86) wiedergibt. Zum Beispiel, selbst wenn eine Drift von (angenommen) 1 Minute pro Tag vorhanden ist, und ein 5-Minuten-Fenster für eine gültige Übertragung gestattet ist, weist ein System, das regelmäßig verwendet wird, keine zu große Drift auf, weil bei jedem Einsatz die vorherige Drift herauskalibriert wird. Zum Beispiel wird sich ein System in einem Fahrzeug, das zwei Mal pro Tag (in gleichmäßigen Abständen) eingesetzt wird, auf Basis der vorhergehenden Annahmen immer innerhalb einer Genauigkeit von ungefähr 0,5 Minuten liegen.
  • Aufgrund von Sicherheitsüberlegungen ist ein Empfang unter Bedingungen, unter denen Te in Bezug auf Td weiter vorverlegt ist, ein geringeres Problem als ein langsames Te. Letzteres kann eine versuchte Wiedergabe oder eine Übertragung sein, die außerhalb der Reichweite des Decodierers aufgezeichnet wurde und dann dem Decodierer zugeführt (daher der Zeitgeberverlust) und wiedergegeben wird.
  • Erzeugungs-Versätze, (d.h. eine Drift zwischen Zeitgebern, die konstant ist und sich nicht mit der Zeit ändert), kann mit einem Koeffizienten ebenfalls herauskalibriert werden. Wenn zum Beispiel ein Alarmsystem in einer gesteuerten Umgebung installiert wird, (regulierte Temperatur und Spannung), können zwei Übertragungen mit einer sinnvollen Zeitperiode (in einer Größenordnung von einigen Minuten) dazwischen verwendet werden, um solche fertigungsbedingten Offsets auszugleichen. Wenn bekannt ist, dass unter Bedingungen von geregelter Spannung und Temperatur die normale Drift 1% beträgt, aber durch Messung der Drift zwischen zwei aufeinander folgenden Übertragungen festgestellt wird, dass die Drift tatsächlich 2% beträgt, kann die Differenz künftig immer mit einem Faktor (101/102) multipliziert werden. Wenn die Drift andererseits –1% beträgt, wird ein Faktor (101/99) zum Korrigieren der Drift verwendet.
  • Die Erfindung gestattet die Aufnahme von zwei Typen von Weiterleitungsfenstern, nämlich ein Auto-Synchronisationsfenster Wa und ein Neusynchronisationsfenster Wr.
  • Das Autosynchronisationsfenster legt eine zeitliche Begrenzung für Drift fest (Te größer Td), was nicht als Problem betrachtet wird. Sicherheitsanforderungen geben zwingend vor, dass dieser Wert so klein wie möglich sein soll, doch sollte dies von einem praktischen Standpunkt aus einem Benutzer zusätzliche Maßnahmen nicht in einem solchen Ausmaß auferlegen, dass das System schwerfällig oder für den Benutzer unannehmbar wird. Das Autosynchronisationsfenster könnte ein fester Wert sein, wird in einer bevorzugten Ausführungsform aber durch einen Faktor von angenommen 3% der Einsatzzeit dargestellt. In dem letzteren Fall wird das Fenster mit der Zeit größer, ist aber eine genauere Darstellung der Drift zwischen den Zählern. Beim Stand der Technik, der in Bruwer und andere und Soum verkörpert ist, wiesen die Zähler eine Anzahl von Aktivierungen auf, die zeitlich in keiner Beziehung stehen. In der vorliegenden Erfindung steht das Autosynchronisationsfenster jedoch nicht mit der Anzahl von Aktivierungen in Beziehung und ist eine reine Funktion der relativen Drift zwischen den Zeitgebern über die Zeit, die seit einem vorherigen gültigen Empfang verstrichen ist. Dies ist der Fall, da Tr zuletzt mit dem Minimum oder dem Zeitpunkt des vorherigen gültigen Empfangs kalibriert wurde. Es ist zu beachten, dass in Yoshizawa das Fenster verstrichene Zeit abdecken muss, da der Codierer zuerst mit dem Decodierer verbunden wurde. Dies stellt ein ziemliches Hindernis dar.
  • Das Fenster des Typs Wa, das durch das System aufgenommen werden kann, kann einen Mindest- und/oder Höchstwert aufweisen. Dieses Fenster kann spezifiziert werden, obwohl ein Faktor der verstrichenen Zeit für die Bestimmung der Fenstergröße verwendet wird. Dies hat den Vorteil, dass in einem System, das auf einer regelmäßigen Basis eingesetzt wird, das Wa-Fenster ziemlich klein ist, aber selbst, wenn das System über eine lange Zeit nicht eingesetzt wird, angenommen mehr als ein Jahr lang, wird die Größe des Fensters auf einer akzeptablen Periode von angenommen 10 Minuten gehalten.
  • Zum Beispiel tritt für einen Wa-Faktor von 0,1% und einen Minimum mit einer 5-Sekunden- und ein Maximum mit einer 10-Minuten-Obergrenze Folgendes ein:
    Zeit seit vorherigem gültigem Code Wa-Größe
    10 Minuten 5 Sekunden
    5 Stunden (600 mm) 35 Sekunden
    5 Tage 7,2 Minuten
    10 Tage 10 Minuten
    1 Jahr 10 Minuten
  • Sollte der Te-Wert schneller sein, so dass er außerhalb von Wa liegt, ist es von der Sicherheit her wünschenswert, weitere Sicherheitsprüfungen durchzuführen. Ein weiteres Fenster, das als Neusynchronisationsfenster (Wr) bezeichnet wird, kann verwendet werden, und dieses Fenster erfordert weitere Sicherheitsprüfungen, die nicht zu starr sein können.
  • Eine solche Sicherheitsprüfung erfordert eine weitere Übertragung, um zu prüfen, ob die zeitlichen Informationen mit dem erwarteten Wert, unter Bezugnahme auf denjenigen der vorherigen Übertragung, der außerhalb Wa, aber innerhalb Wr lag, korrelieren. In einigen Anwendungen würde diese Prüfung genügen, und wenn die Codierer-Zeitablaufinformationen diesen Test bestehen, akzeptiert der Decodierer den Befehl und synchronisiert auch den Tr-Wert neu, um die aufgetretene Drift zu beseitigen.
  • Wenn der Te-Wert außerhalb von Wr liegt, akzeptiert der Decodierer Übertragungen von diesem Codierer nicht und erzwingt ein Neu-Erlernen oder eine andere Maßnahme, wie hierin im Folgenden beschrieben wird, wodurch die Codierer/Decodierer-Beziehung vollkommen zurückgesetzt wird.
  • Mit einem Te-Wert, der unter Bezugnahme auf den Td-Wert langsam ist, sind die erforderlichen Sicherheitsvorgaben viel strenger. Mit einer korrekten Auslegung gibt es keinen Grund, warum der Te-Wert hinter den erwarteten Wert zurückfallen sollte. Man muss jedoch begreifen, dass jede Inkrementierung über den vorher empfangenen Wert hinaus, selbst wenn sie in Bezug auf den erwarteten Wert langsamer ist, immer noch zu einer besseren Sicherheit führt als Systeme auf Basis einer "Aktivierungszählung", wie beispielsweise diejenigen, die in Bruwer und andere und Soum beschrieben sind. Yoshizawa behandelt andererseits langsame und schnelle Fenster auf die gleiche Weise.
  • Abhängig von den Sicherheitsanforderungen können verschiedene Optionen in dem System vorgesehen werden, um die Authentizität des Codierers "doppelt zu prüfen". Wenn der Te-Wert zum Beispiel 30 Sekunden schnell ist, kann der Decodierer 30 Sekunden später prüfen, ob ein neuer Wert vorliegt. Ein gültiger neuer Code würde bedeuten, dass der Codierer vorhanden und daher authentisch ist.
  • Mit einer einwandfreien Auslegung und einer Garantie, dass Te schneller statt langsamer als Td ist, kommen beim Empfang eines langsamen Te jedoch ernsthafte Sicherheitsbedenken auf.
  • Es ist möglich, einen Codierer mit einem langsamen Te oder einem Te, das außerhalb des Wa- oder Wr-Fensters liegt, in einer von drei verschiedenen Weisen, die hierin im Folgenden beschrieben werden, neu zu synchronisieren:
  • (A) Neusynchronisation aus einem "offenen/sicheren" Zustand
  • Dies ist gleichbedeutend mit dem Korrigieren der Kombination eines sicheren Zugangscodes, wenn er offen ist. Dazu muss ein weiterer legaler oder genehmigter Mechanismus verwendet werden, um das System in einen "offenen" Zustand zu versetzen. Dies kann einer weiterer Codierer, ein mechanischer Schlüssel, eine elektronische Chipkarte oder dergleichen sein. Sobald der "offene" Modus hergestellt ist, kann der Tr-Wert automatisch korrigiert werden.
  • (B) Physischer Kontakt zwischen dem Codierer und Decodierer kann mittels eines elektrischen Steckverbinders hergestellt werden
  • Dies kann eine Anforderung sein, bevor weiterer Zugriff gewährt wird. Physischer Kontakt kann durch einen elektrischen Steckverbinder hergestellt werden, der sich an der Außenseite eines Sicherheitsperimeters befindet, der durch ein Zugangskontrollsystem geschützt wird, das mit dem Codierer/Decodierer verbunden ist.
  • Wenn zum Beispiel das System einen Garagentor-Öffner steuert, kann sich die elektrische Steckverbindung in einem Haus oder an einer Außenseite des Hauses befinden. Wenn das Sicherheitssystem andererseits in Verbindung mit einem Fahrzeug verwendet wird, kann sich der Steckverbinder an einer Außenseite des Fahrzeugs oder irgendeiner Stelle befinden, die nur mit einem mechanischen Schlüssel zugänglich ist, z.B. im Kofferraum oder Laderaum des Fahrzeugs.
  • Wenn ein physischer elektrischer Steckverbinder verwendet wird, um elektrische Signale zu übertragen, kann der Decodierer Aktivierungstasten steuern, um ein quasi-bidirektionales System zu schaffen. Elektrische Kontakte zu den Aktivierungseingängen des Codierers gestatten, dass Aktivierungen so ausgeführt werden, dass die Wahrscheinlichkeit, dass Codes, die nicht von dem authentischen Codierer stammen, dem Decodierer zugeführt werden, sehr gering ist. Die Wahrscheinlichkeit kann durch eine geeignete Auslegung statistisch kontrolliert werden. Mit anderen Worten, die Wahrscheinlichkeit eines erfolgreichen Angriffs kann verringert werden, indem die Kommunikation über die elektrischen Kontakte komplexer oder ausgedehnter gestaltet wird.
  • In einer bevorzugten Ausführungsform spielen der Hochgeschwindigkeitszeitgeber und Wiederholungs-(Aktivierungs-) Zähler eine Hauptrolle. Nach dem Einstecken in den Verbinder aktiviert der Decodierer den Codierer. Diese erste Übertragung startet den Hochgeschwindigkeitszeitgeber, und der Decodierer aktiviert dann nach dem Zufallsprinzip andere Tasten, welche die Übertragungswörter von dem Codierer über die Befehlsbits in dem Datenwort beeinflussen. Der Decodierer prüft, ob die Wörter zu dem genauen Zeitpunkt mit den korrekten Befehlstasteninformationen konstruiert worden sind. Indem sichergestellt wird, dass die Aktivierungsfolge derart ist, dass der Hochgeschwindigkeitszeitgeber verwendet wird, oder dass der normale Zeitgeber angegeben würde, kann die Vorab-Aufzeichnung von mehreren Befehlen verhindert werden, wodurch die Wahrscheinlichkeit eines erfolgreichen Angriffs verringert würde.
  • In einer anderen Ausführungsform kann die Abfolge auch über den Wiederholungs-Aktivierungszähler geprüft werden, der die Anzahl von Aktivierungen in einer definierten Periode nach einer ersten Aktivierung zählt. Wiederum kann dies die Vorab-Aufzeichnung von mehreren Aktivierungen verhindern, um eine Wiedergabereaktion auf die Decodierer-Aktivierungen zur Verfügung zu haben.
  • Der gleiche Mechanismus kann über eine Rückkopplung zu einem Benutzer verwendet werden, ist für den durchschnittlichen Benutzer aber wahrscheinlich nicht akzeptabel. Ein Beispiel ist ein Anzeigetableau, das die Abfolge von Tasten angibt, die gedrückt werden müssen.
  • (C) Bidirektionale Kommunikation
  • Volle bidirektionale Kommunikation kann verwendet werden. Wenn jedoch bidirektionale Kommunikationseinrichtungen zur Verfügung stehen, sollten diese Einrichtungen für einen umfangreicheren Einsatz in Erwägung gezogen werden, da sie bei korrekter Implementierung die Sicherheit erhöhen können. Eine Situation ist jedoch vorhersehbar, in der eine Kommunikation in einer Richtung von begrenzter Reichweite ist. Zum Beispiel kann das Medium von Codierer zu Decodierer HF sein, während der Decodierer mit dem Codierer aus Kostengründen oder aus anderen Überlegungen heraus über optische, Antwortsendegerät- oder fest verdrahtete Mittel kommuniziert.
  • In einem Beispiel für eine Anwendung unter Verwendung der Prinzipien der Erfindung kann eine IR-LED verwendet werden, um das Kommunikationsmedium von dem Decodierer zu dem Codierer bereitzustellen. Der Codierer ist Bestandteil eines HF-Schlüsselanhängers. Der Codierer überwacht einen optischen Empfänger (PIN-Diode), nachdem er aktiviert worden ist und ein Codewort übertragen hat. Wenn der Decodierer von dem Codierer einen Code mit einem nicht akzeptablen Te empfängt, nimmt er über das optische Medium eine Verbindung zurück zum Codierer auf. Wenn der Schlüsselanhänger in den optischen Pfad gehalten wird, (weil der Benutzer bemerkt, dass der Decodierer keine Abfrage vornimmt), empfängt er die Decodierer-Daten und der Codierer/Decodierer kann mit einem bidirektionalen Prüfprozess fortfahren.
  • Es ist anzumerken, dass ein physischer Steckverbinder auch das Problem einer leeren Codierer-Batterie lösen kann, indem Energie zugeführt wird, wogegen das optische System dies nicht kann.
  • Wenn die Authentizität des Codierers über irgendeines dieser Verfahren festgestellt wird, wird der Tr-Wert automatisch so korrigiert, dass Te und Td neu synchronisiert werden, indem jede Drift beseitigt wird, die das Problem möglicherweise verursacht hat.
  • CODIERER-BETRIEB
  • Ein Beispiel für einen Lebensdauerzyklus eines Codierers wird unter Bezugnahme auf 9 beschrieben.
  • Nach einer Einschaltabfolge oder wenn ein Rücksetzen eintritt (210), findet eine Reihe von Funktionen statt, um die integrierte Schaltung, die den Codierer verkörpert, zurückzusetzen. Im Wesentlichen wird die integrierte Schaltung in einen gut definierten Zustand versetzt, um sicherzustellen, dass ihre Funktion vorgegeben ist, wenn sie das Rücksetzen verlässt. Zum Beispiel werden Speicher gelöscht und Zeiger und Programmzähler auf definierte Positionen gesetzt.
  • Der Codierer inkrementiert (212) jetzt den Wert des Kaltstartzählers (CBC). Es ist wichtig, dass Redundanz- oder Fehlerkorrektur in diesem Schritt verwendet wird, um zu verhindern, dass der CBC-Wert aufgrund von Schreibfehlern oder dergleichen gelöscht oder verscrambelt wird. Solche Prüfungen sollten auch vorgenommen werden, um zu prüfen, ob die der Schaltung zugeführte Spannung ausreichend ist, um ein erfolgreiches Schreiben in den nichtflüchtigen Speicher sicherzustellen.
  • Sobald der CBC-Wert inkrementiert worden ist, bewegt sich der Codierer in den Zyklus, in dem er den größten Teil seiner Lebensdauer verbringen wird. Wenn der Zeitgeber inkrementiert werden soll (216), und dies erfolgt in regelmäßigen Intervallen von angenommen 10 Sekunden, wird die Zeitgeberzählung erhöht (218). Eine weitere Prüfung (220) erfolgt, um zu prüfen, dass der Zeitgeber seinen Grenzwert nicht erreicht hat und dabei ist, überzulaufen. Dieser Fall tritt jedoch nur selten ein.
  • Die Eingänge 18 (siehe 1) werden überwacht (222), um zu prüfen, ob der Codierer aktiviert worden ist. Wenn keine Eingänge aktiv sind, wiederholt sich der Zyklus selbst endlos.
  • Wenn aktive Eingänge erfasst werden, werden die Eingänge entprellt und gelesen (224). Wenn die Eingänge gültig sind (226), wird der Zeitgeberwert gelesen, und das Datenwort wird konstruiert (228). In Verbindung mit 5 wurde erklärt, dass das Datenwort aus mehreren Elementen besteht, die zusammengelegt werden, um das verschlüsselte Datenwort 74 zu entwickeln (siehe 6).
  • Wenn die Eingänge nicht gültig sind (229), werden die vorangegangenen Zyklusschritte wiederholt.
  • Nach dem Ablesen des Zeitgebers prüft die Steuereinrichtung, ob der Hochgeschwindigkeitszeitgeber (HST) bereits läuft, oder ob diese Übertragung tatsächlich die erste Übertragung ist, die nach einer Periode der Inaktivität stattgefunden hat (230). Wenn der HST nicht läuft, wird er gestartet, und das Flag für den HST wird gesetzt, so dass erkannt wird, dass der HST aktiv ist (232). Die anschließenden Übertragungen enthalten die Zählung des Hochgeschwindigkeitszeitgebers als Bestandteil des Datenworts.
  • Das sich daraus ergebende Datenwort wird verschlüsselt (234), und das Ergebnis wird in der Konstruktion des Übertragungsworts 70 (siehe 6) in einem Schritt 236 (siehe 9b) verwendet. Bevor das Übertragungswort über das fragliche Medium (HF, IR oder Sonstiges) übertragen wird, werden die Eingänge 18 geprüft, um zu prüfen, ob der gleiche Befehl noch immer aktiv ist (238). Falls nicht, wird die Übertragung abgebrochen, und die Steuereinrichtung 14 kehrt zu ihrem Wartezyklus zurück (216, 222).
  • Wenn der Befehl noch immer aktiv ist, beginnt der Codierer damit, die Daten des Übertragungsworts so auszugeben, dass es übertragen werden kann (240). Typischerweise ist der Codierer für die Datenübertragungsgeschwindigkeit zuständig. Obwohl dies nicht gezeigt ist, kann der Codierer kontinuierlich nach einem neuen Eingang suchen, mit dem gefordert wird, dass sofort ein neues Wort gebildet werden soll. Unter solchen Umständen kann die Übertragung sofort beendet werden, um mit der Vorbereitung und Übertragung des neuen Übertragungsworts zu beginnen.
  • Die Steuereinrichtung kann einige der CBC-Bits austauschen, die einen Bestandteil des Übertragungsworts bilden (242). Wenn der CBC beispielsweise 16 Bits beträgt und nur jeweils zwei Bits auf einmal zu einem Übertragungswort hinzugefügt werden, dann wären 8 aufeinanderfolgende Wörter erforderlich, um den CBC-Zähler am Empfänger/Decodierer zu rekonstruieren. Dies wirkt sich nicht nachteilig auf die Sicherheit der Übertragung aus, bietet aber eine bequeme Möglichkeit, die Länge des Übertragungsworts zu reduzieren.
  • Danach kann die Steuereinrichtung den Arbeitsschritt (244) an die Phase vor dem Schritt 238 zurückverweisen. Wenn das System jedoch so ausgelegt ist, dass es mit der Ausgabe des HST nach Ablauf einer bestimmten Zeit (von angenommen 5 Sekunden) beginnt, fährt es mit einem Schritt 248 fort, in dem die HST-Zählung abgelesen wird. Dann wird eine Prüfung vorgenommen, um festzustellen, ob der derzeit aktive Befehl wenigstens 5 Sekunden lang aktiv gewesen ist (248). Wenn vorher kein Übertragungswort konstruiert worden ist (250), wird eine Prüfung durchgeführt (252), um festzustellen, ob der gleiche Eingang 18 immer noch aktiv ist. Ein Rücklauf oder Schritte zum Zurückkehren einem vorangegangenen Prozess finden abhängig vom Resultat dieses Test statt.
  • Wenn vorher ein Übertragungswort konstruiert worden ist, synchronisiert der Prozess das Hinzufügen eines neuen HST-Zählers mit dem Abschluss einer früheren Übertragung, und ein neues Datenwort wird gebildet (254) und verschlüsselt (256), und ein neues Übertragungswort wird konstruiert (258). Der Sender-Zyklus fährt dann von unmittelbar vor Schritt 238 fort. Der Prozess kann jederzeit beendet werden, wenn sich die Eingänge ändern oder entfallen (238 oder 252).
  • Wenn sich die Eingänge ändern oder innerhalb einer kurzen Periode, angenommen ab dem Start des HST, wiederholt werden, nimmt der Wiederholungszähler mit jeder neuen Aktivierung eine Inkrementierung vor. Sobald der HST überläuft, wird der normale Zeitgeber inkrementiert. Wenn der HST innerhalb des gleichen Intervalls (von angenommen 10 Sekunden) läuft, sollte dies einen nahtlosen Zeitablauf verhindern.
  • CODIERUNG
  • Ein Codierungsbeispiel wird unter Bezugnahme auf 10a und 10b beschrieben. Zu Beginn eines Verschlüsselungsalgorithmus (300) wird die gesamte Installation von Hardware und Software vorgenommen. Ein spezifischer Schlüssel wird aus dem nichtflüchtigen Speicher ausgelesen, und der CBC-Zähler wird erhalten (302). Der Schlüssel ist der einem spezifischen Codierer zugeordnete Schlüssel. Wenn ein Codierer mehrere Schlüssel hat, wird einer von diesen mittels eines bestimmten Befehls bestimmt. Der Schlüssel kann mit jeweils 8 Bits gelesen werden. Die Daten, die in dem verschlüsselten Datenwort verwendet werden sollen, d.h. das Datenwort und die benutzerdefinierten Informationen, werden erhalten (304), und die verschiedenen Elemente werden in den Algorithmus eingespeist (306), um ein verscrambeltes Datenwort zu ergeben (308), das in dem Übertragungswort verwendet wird.
  • 10b veranschaulicht schematisch einen Codier-Algorithmus 310, der auf das Datenwort und die benutzerdefinierten Informationen 312 sowie den Schlüssel und die CBC-Zählung 314 angewendet wird, um das verscrambelte Datenwort 74 zu ergeben.
  • Es ist anzumerken, dass in dem Decodierprozess, der an dem Empfänger ausgeführt wird, der Decodier-Algorithmus insofern die umgekehrte Operation ausführt, dass, wenn der Decodier-Algorithmus mit dem korrekten Schlüssel und der CBC-Zählung bereitgestellt wird, der Decodier-Algorithmus das verscrambelte Datenwort 74 umwandelt, um das Datenwort und die benutzerdefinierten Informationen zu ergeben.
  • Ein Beispiel für eine Decodierer-Operation wird unter Bezugnahme auf 11 erörtert.
  • Nach dem Rücksetzen (350) des Decodierers wird in einem Schritt (352) eine Abtastung für die empfangenen Daten eingegeben (98 in 3). Wenn ein Test 354 zeigt, dass das Datenformat nicht korrekt ist, wird der vorhergehende Zyklus wiederholt. Sobald ein vollständiges Übertragungswort mit dem korrekten Format empfangen worden ist, führt der Decodierer in einem Schritt 356 eine zyklische Redundanzprüfung (CRC) durch, um zu prüfen, ob das Übertragungswort richtig empfangen wurde, und prüft die Seriennummer und den CBC-Teil des Übertragungsworts. Danach werden in Schritt 358 und 360 die Seriennummer und der CBC-Wert mit entsprechenden Werten abgeglichen, die im nichtflüchtigen Speicher 90 (siehe 3) gespeichert sind.
  • Wenn der CBC-Wert nicht mit dem gespeicherten Wert abgeglichen wird, läuft eine Zeitperiode ab, in der zusätzliche Daten empfangen werden und ein neuer CBC-Wert konstruiert wird (Schritt 362). Der Validierungsprozess wird dann wiederholt.
  • Nachdem der Validierungsprozess erfolgreich abgeschlossen worden ist, liest der Decodierer die Zeitgeberdaten Td (Schritt 364) und verwendet dann die Seriennummer und andere während eines Lernprozesses gespeicherte Informationen, um einen Entschlüsselungsschlüssel zu berechnen (366), der dem Codierer entspricht, der das bestimmte Übertragungswort erzeugt hat.
  • Der Decodierer verwendet den Entschlüsselungsschlüssel zusammen mit dem CBC-Wert, um einen Verschlüsselungsprozess (368) an dem verscrambelten Teil des Übertragungsworts durchzuführen. Es ist anzumerken, dass einige Befehle keinerlei Sicherheit erfordern können, und in diesem Fall kann der Decodierer den Befehl nach dem Schritt 360 interpretieren und aktivieren. Da der einzige Vorteil jedoch darin bestünde, dass der Befehl einige Millisekunden früher ausgegeben werden kann, ist dies nicht von besonderer Bedeutung.
  • Wenn das entschlüsselte Datenwort verfügbar ist, führt der Decodierer eine Prüfung durch, um einen Abgleich zwischen den benutzerdefinierten Codierer-Informationen und den benutzerdefinierten Decodierer-Informationen zu prüfen (370). Ein Nicht-Abgleich erzwingt eine Rückkehr zum Abtasten des Eingangs für ein gültiges Übertragungswort (Schritt 352).
  • Wenn der Abgleich positiv ist, wird die komplexere Prüfung zwischen dem Codierer- und dem Decodierer-Zeitgeber durchgeführt. In diesem Beispiel wird ein Neu-Erlernen angenommen, wenn das Neusynchronisationsfenster Wr überschritten wird oder Te hinter Td zurückfällt. Zuerst wird das automatische Synchronisationsfenster geprüft (372), und wenn die Prüfung bestanden wird, werden die Befehls-Bits interpretiert und die Ausgänge aktiviert (374). Der Tr-Wert wird aktiviert, um die jüngste Beziehung zwischen dem Codierer- und dem Decodierer-Zeitgeber (376) wiederzugeben, und danach wird der Prozess wiederholt.
  • Wenn der Schritt 372 zeigt, dass die Differenz zwischen dem Codierer- und dem Decodierer-Zeitgeber einen Tr-Wert zeigt, der außerhalb des Autosynchronisationsfensters Wa liegt, wird der Wert im Vergleich mit dem weniger starren Neusynchronisationsfenster Wr geprüft (Schritt 378). Wenn Tr auch außerhalb von Wr fällt, wird das empfangene Übertragungswort als ungültig aufgegeben, und der Decodierer kehrt zum Abtasteingang in Schritt 352 zurück.
  • Wenn die zeitliche Differenz Tr in Wr fällt, bereitet sich der Decodierer darauf vor, ein weiteres Übertragungswort innerhalb einer kurzen Zeit (von angenommen 10 oder 20 Sekunden) zu empfangen, und er kann dann die HST-Daten verwenden, um eine zweite Übertragung (380) zu bestätigen und die zeitliche Beziehung zu prüfen (382). Weil das fragliche Zeitintervall besonders kurz ist, kann keine bedeutsame Drift auftreten. Für Wa wird eine Prüfung vorgenommen, doch kann eine strengere Prüfung durchgeführt werden, falls erforderlich. Wenn der Test fehlschlägt, bricht der Decodierer den Neusynchronisations-Prozess ab (384) und kehrt zu Schritt 352 zurück.
  • Wenn der Zeitgebertest (382) erfolgreich ist, wird der Tr-Wert korrigiert (386), und die Befehle werden interpretiert und aktiviert (390), worauf der Prozess zur Stufe 352 zurückkehrt.
  • Das vorhergehende Beispiel behandelt weder die Bearbeitung des HST, Wiederholen von Daten, Batteriestandsanzeige, Umschaltepegel noch eine Situation, in der der Decodierer Energie verliert oder verloren hat und daher Zeitgeber-Informationen verloren hat.
  • Normalerweise ist der Decodierer teurer und komplexer als der Codierer. Ein einzelner Decodierer muss typischerweise auch mit mehreren Codierern zusammenarbeiten. Der Energieverbrauch ist im Vergleich mit dem Codierer normalerweise am Decodierer weniger eingeschränkt. Aufgrund dieser Faktoren ist es wünschenswert, dass der Decodierer den HST-Teil permanent enthält. Dies kann sich als praktisch erweisen für Vergleiche bei Neusynchronisations-Maßnahmen oder wenn zweite oder dritte Anweisungen innerhalb eines kurzen Zeitraums empfangen werden. Es ist auch wichtig für die Bearbeitung eines quasibidirektionalen Synchronisations- oder Authentisierungsprozesses, wie vorher erörtert.
  • Die Umschaltepegel, Batteriestandsanzeigen und Wiederholungswerte umfassen allesamt Informationen, die die Ausgaben beeinflussen könnten, die vom Decodierer erzeugt werden.
  • Wenn der Decodierer Energie verlieren sollte, würde er den Rücksetz-Zustand (350) durchlaufen, wenn die Energiezufuhr wieder hergestellt wird. An diesem Punkt wird eine Auswahl aus einer Reihe von Optionen getroffen. Zum Beispiel kann die Zeit für jeden gültigen Empfang jedes Mal in dem nichtflüchtigen Speicher gespeichert werden, wenn ein gültiges Wort empfangen und erfolgreich decodiert wird. Jetzt kann ein Flag gesetzt werden, um Wa und Wr für alle Codierer, die bereits erlernt worden sind, für eine Auto-Neusynchronisationsmaßnahme aufzuweichen. Eine Prüfung wird ausgeführt, ob der Codierer-Zeitgeber über das hinaus erhöht worden ist, was beim Empfang des vorherigen gültigen Übertragungsworts von dem entsprechenden Codierer gespeichert worden ist.
  • Eine weitere Option besteht darin, die Änderung des CBC-Werts an dem Codierer oder die Neusynchronisation der Tr-Werte des Decodierers zu erzwingen, indem der Sender betrieben wird, während er in dem offenen Zustand ist.
  • In einer anderen Variation kann der Decodierer einen Zeitgeber-Wert von dem nächsten gültigen und vorher erlernten Codierer verwenden, indem er ihn nach dem Rücksetzen aktiviert, um seinen Haupt-Zeitgeber neu anzupassen. Alle Tr-Werte (für andere erlernte Codierer) würden automatisch wieder ins Spiel kommen. Dies kann unter einiger Berücksichtigung von Fehlern erfolgen, indem der Decodierer für nur 99% der erkannten verlorenen Zeit korrigiert wird, wie von diesem einzelnen Codierer-Zeitgeber abgeleitet werden kann. Der Grund dafür ist, dass es wesentlich schwieriger ist, Codierer mit Zeitgebern zu bearbeiten, die dem Decodierer-Zeitgeber nacheilen, als Codierer mit Zeitgebern, die dem Decodierer-Zeitgeber vorauseilen.
  • DECODIERER: LERNMODUS
  • Der Decodierer-Lernvorgang wird unter Bezugnahme auf 12 erörtert. Der Decodierer muss angewiesen werden, vom normalen Betrieb in den Lernmodus umzuschalten, und typischerweise erfolgt dies, indem ein Eingangsschalter 100 (siehe 3) verwendet wird. Sobald die Aktivierung des Eingangsschalters erfasst wird (400), wird der Schalter entprellt (402), um zu bestätigen, dass der Eingang aktiviert ist. Der Eingang für den Lernmodus kann auf einer Interrupt-Basis arbeiten, oder er kann von Zeit zu Zeit in dem Programmablauf während des normalen Betriebs des Decodierers getestet werden.
  • Sobald der Lernmodus bestätigt worden ist (404), muss der Decoder ausreichende Übertragungswörter empfangen, um den CBC-Wert zu konstruieren, der nicht notwendigerweise vollständig in jedem Übertragungswort aufgenommen sein kann (406). Wenn dieser Prozess fehlschlägt aufgrund der Übertragungs-Beendigung, bevor der vollständige CBC-Wert empfangen worden ist, oder aufgrund des nicht korrekten Empfangs von Code-Wörtern, wird der Lernprozess abgebrochen (408), und der Prozess kehrt zu Schritt 402 zurück, um zu prüfen, ob der Lernmodus immer noch gewählt ist. Der Decodierer-Zeitgeber wird zu Referenzzwecken ebenfalls gelesen.
  • Wenn ausreichende Informationen empfangen werden, um den CBC-Wert zu konstruieren (410), konstruiert die Steuereinheit 82 (siehe 3) den Kaltstart-Zählerwert und liest die Zeitgeberdaten Td von dem Zeitgeber 88. Die Steuereinheit berechnet dann (Schritt 412) den Entschlüsselungsschlüssel unter Verwendung der Seriennummer, der CBC-Zählung und anderer Informationen, die über die Übertragungswerte übertragen wurden. Dieser Schlüssel wird in dem Entschlüsselungsprozess (414) verwendet, um das Datenwort zu erhalten, das die benutzerdefinierten Informationen, Befehle und Codierer-Zeitgeberinformationen enthält.
  • In einem Schritt 416 werden die Daten geprüft, um festzustellen, ob sie den Anforderungen entsprechen. Eine weitere Übertragung eine kurze Zeit später kann erforderlich sein, um die Zeitgeber-Bewegung zu prüfen. Sobald sie als gültiger Lernwert akzeptiert worden sind, werden die relevanten Informationen in dem nichtflüchtigen Speicher 90 des Decodierers gespeichert. Dies umfasst den Tr-Wert, (die Beziehung zwischen dem Codierer- und dem Decodierer-Zeitgeber), und dem Te des letzten gültigen empfangenen Datenworts.
  • Der Decoder kann den Zustand des Lernprozesses an irgendeiner Anzeige für den Benutzer anzeigen (Schritt 418), z.B. einer LED. Der Abschluss des Lernprozesses eines Codierers kann auf die gleiche Weise ebenfalls angezeigt werden.
  • Der vorgenannte Prozess kann wiederholt werden, um das Erlernen von mehreren Codierern zu ermöglichen. Die Informationen von jedem anderen Codierer können in einer FIFO-Abfolge in den Speicher geschrieben werden, wie in 7 und 8 gezeigt.
  • In der vorgenannten Abfolge ist es nicht möglich, ein selektives Löschen von Codierern vorzunehmen. Es ist jedoch möglich, den ältesten Codierer durch Hinzufügen eines neuen Codierers zu löschen, sobald der Speicher für erlernte Codierer voll ist. Ein weiterer Befehl zum Löschen aller erlernten Codierer kann implementiert werden.
  • CODIERER: EINSTELLEN VON "BENUTZERDEFINIERTEN INFORMATIONEN"
  • 13 veranschaulicht Prozessschritte beim Einstellen von benutzerdefinierten Informationen am Codierer 10.
  • Wenn der Codierer eingeschaltet wird (450), wird eine Prüfung auf dem internen nichtflüchtigen Speicher 12 (siehe 1) durchgeführt, um festzustellen, ob die benutzerdefinierten Informationen ("UDI") bereits eingestellt worden sind. Falls nicht, kann der Codierer automatisch in einen UDI-Einstellmodus gehen. In einer Variation kann der Codierer prüfen, ob eine spezielle Gruppe von Eingängen aktiviert worden ist (452), um den Codierer zu veranlassen, in den UDI-Einstellmodus zu gehen. Falls nicht, fährt der Codierer mit dem normalen Betrieb fort (454).
  • Wenn spezielle Eingänge aktiv sind (456), aktiviert der Codierer den Hochgeschwindigkeitszeitgeber (HST) in einem Schritt (458). In einem besonderen Beispiel wird die Periode, für die die Eingänge aktiv sind, verwendet, um einen Wert zu bestimmen, indem der HST gestoppt wird, sich zu dem Zeitpunkt zu ändern, zu dem sich die Eingänge ändern (460). Der im Wesentlichen zufällige Wert in dem HST kann als ein UDI-Wert gelesen und verwendet werden (462), um ein benutzerdefiniertes Informationen-Wort zu konstruieren (464), das dann in dem nichtflüchtigen Speicher des Codierers gespeichert werden kann (466), bevor mit dem normalen Betrieb fortgefahren wird (454).
  • Die vorhergehende Beschreibung betrifft eine Situation, in der der Sender einen Zeitgeber aufweist und der Empfänger einen Zeitgeber aufweist. Wenn ein bestehendes zählerbasiertes Sicherheitssystem in ein zeitgeberbasiertes Sicherheitssystem aufgerüstet werden soll, dann ist es notwendig, eine duale Leistungsfähigkeit bereitzustellen, so dass das zeitgeberbasierte System auch mit einem zählerbasierten System verwendet werden und mit diesem kompatibel sein kann.
  • Um dies zu erreichen, ist ein zeitgeberbasierter Sender so ausgelegt, dass er mit einem nicht-zeitgeberbasierten (d.h. zählerbasierten) System und mit einem zeitgeberbasierten System arbeitet.
  • Der Zeitgeber in dem Sender zählt normalerweise, wenn dieser eingeschaltet wird. Wenn der Sender von dem Empfänger "erlernt" worden ist, akzeptiert der Decodierer an dem Empfänger jeden Wert, der zu diesem Zweck zugewiesen oder dem Decodierer anderweitig vorgelegt wird. Daher unterscheidet der Decodierer nicht zwischen zählerbasierten und zeitgeberbasierten Informationen. Die Notwendigkeit, das Starten des Senders und Empfängers zu synchronisieren, wird hiermit beseitigt.
  • Der Sender-Zeitgeber wird dann für eine Periode betrieben, die begrenzt oder gesteuert ist, um sicherzustellen, dass die Zeitgeberinformationen innerhalb des automatischen Neusynchronisationsfensters des zählerbasierten Systems gehalten werden (d.h. dem früheren System, das aufgerüstet werden soll).
  • Wenn der Sender-Zeitwert einen Punkt erreicht, an dem er das Fenster verlässt, stoppt der Zeitgeber. Dementsprechend wird bei der nächsten Aktivierung des Senders der Zeitgeberwert, der verwendet wird, von einem vorherigen (zählerbasierten) System als ein Zählerwert betrachtet, der sich immer noch in den Grenzen des automatischen Neusynchronisationsfensters befindet, und daher wird er akzeptiert.
  • Diese Prozedur kann bis zu einem solchen Zeitpunkt implementiert werden, an dem ein vollständiges zeitgeberbasiertes System eingesetzt werden kann.

Claims (33)

  1. Verfahren zum sicheren Übertragen von Daten von einem Codierer zu einem Decodierer, wobei das Verfahren folgende Schritte umfasst: a) im Codierer erfolgendes Verschlüsseln eines Datenwortes, das mindestens zum Teil auf Zeitgeberinformationen basiert, die vom Codiererzeitgeber erzeugt wurden, um ein Übertragungswort zu bilden; b) Übertragen des Übertragungswortes zum Decodierer, und; c) Entschlüsseln des Übertragungswortes im Decodierer; wobei das Verfahren durch folgende Schritte gekennzeichnet ist: d) im Codierer erfolgendes Speichern eines Zeitgeber-Verhältniswertes, der während eines Lernprozesses im Codierer und Decodierer etabliert wird, und der mindestens von einer Differenz zwischen einem Wert des Codiererzeitgebers und einem Wert eines Decodiererzeitgebers abhängt; e) Bestätigen des Übertragungswortes durch Vergleichen der Codiererzeitgeberinformationen, der Decodiererzeitgeberinformationen und ihrer Beziehung zum gespeicherten Zeitgeber-Verhältniswert; und f) Aktualisieren des Zeitgeber-Verhältniswertes im Decodierer, bei Empfang eines gültigen Übertragungswortes, um etwaige Widersprüchlichkeiten in der Beziehung zwischen Codiererzeitgeber, Decodiererzeitgeber und Zeitgeber-Verhältniswert zu eliminieren.
  2. Verfahren nach Anspruch 1, wobei das Datenwort zusätzlich mindestens eine der folgenden Informationen enthält: Kaltstart-Zählerinformationen, Codiererbatteriezustandsinformationen und benutzerdefinierte Informationen.
  3. Verfahren nach Anspruch 2, wobei die benutzerdefinierten Informationen variabel über einen Eingang oder mehrere Eingänge des Codierers veränderbar und dem Hersteller des Codierers nicht bekannt sind.
  4. Verfahren nach einem der Ansprüche 1 bis 3, wobei das Übertragungswort das verschlüsselte Datenwort und mindestens einen Kaltstartzählerwert enthält.
  5. Verfahren nach Anspruch 4, wobei der Kaltstartzählerwert, wenn er im Übertragungswort enthalten ist, im Klartext übertragen wird.
  6. Verfahren nach einem der Ansprüche 1 bis 5, einschließend den Schritt der Aufrechterhaltung des Gleichlaufs zwischen Codierer und Decodierer unter Verwendung eines Kaltstartzählers, der jedes Mal verändert wird, wenn der Codierer eingeschaltet wird oder wenn er den Rücksetzzustand verlässt.
  7. Verfahren nach einem der Ansprüche 1 bis 5, einschließend die Schritte der Aufrechterhaltung des Gleichlaufs zwischen Codierer und Decodierer unter Verwendung eines Kaltstartzählers, der jedes Mal verändert wird, wenn der Codierer eingeschaltet wird oder wenn er den Rücksetzzustand verlässt, und Einschließen eines Zählwertes des Kaltstartzählers in das Übertragungswort.
  8. Verfahren nach einem der Ansprüche 1 bis 7, einschließend den Schritt der Bildung einer Vielzahl von Übertragungsworten, wobei sich jedes Übertragungswort von den anderen Übertragungsworten unterscheidet und auf entsprechenden Hochgeschwindigkeits-Codiererzeitgeberinformationen basiert, als Antwort auf eine einmalige Aktivierung des Codierers.
  9. Verfahren nach einem der Ansprüche 1 bis 7, einschließend den Schritt der Bildung nur eines einzigen Übertragungswortes, das in Antwort auf eine einmalige Aktivierung des Codierers übertragen wird.
  10. Verfahren nach einem der Ansprüche 1 bis 9, umfassend die Schritte, während eines Lernmodus, Speichern von Lerninformationen im Decodierer, die vom Codierer übertragen werden, und Herleiten eines Schlüssels aus den gespeicherten Lerninformationen.
  11. Verfahren nach Anspruch 10, wobei die Lerninformationen in einer FIFO-Struktur gespeichert werden.
  12. Verfahren nach Anspruch 1, wobei mehrere Codierer zusammen mit einem einzigen Decodierer verwendet werden, der einen einzigen Zeitgeber und eine Vielzahl von Zeitgeber-Verhältniswerten enthält, die für jeden Codierer während seines Lernprozesses bestimmt werden.
  13. Verfahren nach einem der Ansprüche 1 bis 12, einschließend den Schritt des Sicherstellens, dass der Codiererzeitgeber in seiner langsamsten Varianz schneller als der Decodiererzeitgeber in seiner schnellsten Varianz ist.
  14. Verfahren nach Anspruch 12, wobei, falls der Decodiererzeitgeber innerhalb eines vordefinierten Fensters für ein gültiges empfangenes Übertragungswort liegt, der Decodiererzeitgeber mit dem Codiererzeitgeber erneut synchronisiert wird, durch automatisches Einstellen des Zeitgeber-Verhältniswertes, um etwaige Widersprüchlichkeiten in der Beziehung zwischen den Zeitgebern und dem Zeitgeber-Verhältniswert zu eliminieren.
  15. Verfahren nach Anspruch 14, wobei die erneute Synchronisierung durch eine bidirektionale Übertragung von Daten zwischen dem Codierer und dem Decodierer beeinflusst wird.
  16. Verfahren nach einem der Ansprüche 1 bis 15, wobei der Zeitgeber-Verhältniswert oder ein Fenster in der Größe eingestellt wird, um die Drift zwischen dem Codiererzeitgeber und dem Decodiererzeitgeber zu kompensieren, wobei eine derartige Einstellung mindestens auf der Zeitdauer basiert, die seit der letzten Einstellung des Zeitgeber-Verhältniswertes vergangen ist.
  17. Verfahren nach einem der Ansprüche 1 bis 16, wobei der Zeitgeber-Verhältniswert oder ein Fenster in der Größe eingestellt wird, um die Drift zwischen dem Codiererzeitgeber und dem Decodiererzeitgeber zu kompensieren, wobei eine derartige Einstellung mindestens auf Informationen hinsichtlich der Drift zwischen dem Codiererzeitgeber und dem Decodiererzeitgeber basiert, die durch analysieren von mindestens zwei aufeinander folgenden, gültigen Übertragungen und der zwischen beiden vergangenen Zeitdauer bestimmt wird.
  18. Verfahren nach einem der Ansprüche 1 bis 17, wobei dem Zeitgeber-Verhältniswert im Decodierer eine Fenstergröße zugeordnet wird, und der Codiererzeitgeber so betrieben wird, daß sichergestellt wird, dass die Codiererzeitgeberinformation bei einer gültigen Übertragung eines Übertragungswortes nicht außerhalb des Fensters liegt.
  19. Verfahren nach einem der Ansprüche 1 bis 18, wobei dem Zeitgeber-Verhältniswert ein Fenster zugebilligt wird, wenn die Bestätigung des Übertragungswortes erfolgt und der Zeitgeber-Verhältniswert eingestellt wird, auf Basis der Kenntnis der Drift zwischen dem Codiererzeitgeber, dem Decodiererzeitgeber und der seit einer vorausgegangenen gültigen Übertragung eines Übertragungswortes vergangenen Zeitdauer.
  20. Verfahren nach Anspruch 19, wobei die Fenstergröße eingestellt wird und eine derartige Einstellung auf der seit der vorausgegangenen Einstellung des Zeitgeber-Verhältniswertes vergangenen Zeitdauer basiert.
  21. Verfahren nach Anspruch 19 oder 20, wobei die Fenstergröße einen Mindestwert aufweist.
  22. Verfahren nach Anspruch 19, 20 oder 21, wobei die Fenstergröße einen Maximalwert aufweist.
  23. Verfahren nach einem der Ansprüche 1 bis 22, wobei das Übertragungs-Datenwort weiterhin einen Zeitgeberwert enthält, der sich rasch ändert, so dass sich jedes Übertragungswort innerhalb einer Folge von Übertragungsworten, die, auf einer einmaligen, ununterbrochenen Aktivierung des Codierers basierend, übertragen werden, von den anderen Übertragungsworten unterscheidet.
  24. Verfahren nach einem der Ansprüche 1 bis 23, wobei eine erneute Synchronisierung des Codiererzeitgebers und des Decodiererzeitgebers mit verbesserter Sicherheit erreicht wird, indem mindestens der Decodierer benutzt wird, um die Eingänge des Codierers zu steuern.
  25. Verfahren nach Anspruch 1, wobei der Betrieb des Codiererzeitgebers nach jeder Aktivierung des Senders nur während einer begrenzten Zeitdauer zulässig ist.
  26. Verfahren nach Anspruch 1, wobei dann, wenn der Codiererzeitgeber über eine vorgegebene zeitliche Begrenzung hinaus in Betrieb ist, der Sender bei einer einmaligen Aktivierung mehr als einen Übertragungswert senden wird.
  27. Verfahren nach Anspruch 1, wobei der Decodierer einen Zeitgeber, einen Eingang für den Empfang des Übertragungswortes, eine Entschlüsselungseinheit für die Entschlüsselung des Übertragungswortes und die Aufnahme der gesendeten Zeitgeberinformation und eine Komparatoreinheit enthält, welche die Beziehung zwischen der gesendeten Zeitgeberinformation und der Zeitinformation, die vom Decodiererzeitgeber generiert wird, mit dem gespeicherten Zeitgeber-Verhältniswert vergleicht, und auf die Komparatoreinheit ansprechende Mittel, die einen Ausgang aktivieren.
  28. Vorrichtung zum Übertragen von Daten, die einen Codierer und einen Decodierer enthält, und wobei der Codierer einen Zeitgeber und eine Verschlüsselungseinheit zum Verschlüsseln von Daten enthält, die mindestens zum Teil auf Zeitgeberinformationen vom Codiererzeitgeber basieren, um auf diese Weise ein Übertragungswort zu bilden, wobei der Decodierer einen Decodiererzeitgeber, eine Empfangseinheit zum Empfangen des verschlüsselten Übertragungswortes, eine Entschlüsselungseinheit zum Entschlüsseln des empfangenen Übertragungswortes enthält, um mindestens die vom Codierer stammende Zeitgeberinformation zu extrahieren, dadurch gekennzeichnet, dass die Vorrichtung eine Komparatoreinheit enthält, mit der die verschlüsselte Codiererzeitgeberinformation, die Zeitgeberinformation vom Decodiererzeitgeber und deren Beziehung zu einem Zeitgeber-Verhältniswert verglichen werden, um die Gültigkeit des Übertragungswortes zu bestätigen, wobei der Zeitgeber-Verhältniswert während eines Lernprozesses des Codierers und des Decodierers etabliert wird und mindestens von einer Differenz zwischen einem Wert des Codiererzeitgebers und des Decodiererzeitgebers abhängt, und dass im Einsatzfall der Zeitgeber-Verhältniswert im Decodierer bei Empfang eines gültigen Übertragungswortes aktualisiert wird, um etwaige Widersprüchlichkeiten in der Beziehung zwischen Codiererzeitgeber, Decodiererzeitgeber und Zeitgeber-Verhältniswert zu eliminieren.
  29. Vorrichtung nach Anspruch 28, die eine Einheit für die Korrektur der zeitlichen Abfolge aufweist, ohne den Decodiererzeitgeber zu verändern, indem der Zeitgeber-Verhältniswert eingestellt wird, wenn ein gültiges Übertragungswort empfangen wird, um mindestens einen der folgenden Punkte zu eliminieren: a) etwaige aufgetretene Drift; und b) etwaige andere, sich aufsummierende Widersprüchlichkeiten in der Beziehung zwischen Codiererzeitgeber, Decodiererzeitgeber und Zeitgeber-Verhältniswert.
  30. Vorrichtung nach Anspruch 28 und 29, wobei der Zeitgeber-Verhältniswert eingestellt wird, eine derartige Einstellung mindestens auf einer bekannten Drift sowohl zwischen dem Codiererzeitgeber, dem Decodiererzeitgeber als auch der seit einer vorausgegangenen Einstellung des Zeitgeber-Verhältniswertes vergangenen Zeit beruht.
  31. Vorrichtung nach Anspruch 28, wobei dem Decodierer eine Fenstergröße zugewiesen wird, welche die für eine gültige Übertragung akzeptable Drift zwischen dem Codiererzeitgeber und dem Decodiererzeitgeber bestimmt.
  32. Vorrichtung nach Anspruch 31, wobei die Fenstergröße eingestellt wird und die Einstellung mindestens auf der seit dem Empfang eines zuvor empfangenen, gültigen Übertragungswortes vergangenen Zeit basiert.
  33. Vorrichtung nach Anspruch 28, wobei eine erneute Synchronisierung des Codierers und des Decodierers dadurch erreicht werden kann, dass der Decodierer Steuersignale für die Eingänge des Codierers bereitstellt.
DE60129742T 2000-12-19 2001-11-29 Verfahren und vorrichtung zum datentransfer Expired - Lifetime DE60129742T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
ZA200007616 2000-12-19
ZA200007616 2000-12-19
PCT/ZA2001/000186 WO2002050782A2 (en) 2000-12-19 2001-11-29 Method of and apparatus for transferring data

Publications (2)

Publication Number Publication Date
DE60129742D1 DE60129742D1 (de) 2007-09-13
DE60129742T2 true DE60129742T2 (de) 2008-04-30

Family

ID=25589024

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60129742T Expired - Lifetime DE60129742T2 (de) 2000-12-19 2001-11-29 Verfahren und vorrichtung zum datentransfer

Country Status (6)

Country Link
US (1) US7529939B2 (de)
EP (1) EP1354300B1 (de)
AT (1) ATE368913T1 (de)
AU (1) AU2002220286A1 (de)
DE (1) DE60129742T2 (de)
WO (1) WO2002050782A2 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7050947B2 (en) * 2002-01-04 2006-05-23 Siemens Vdo Automotive Corporation Remote control communication including secure synchronization
US7174017B2 (en) * 2002-03-04 2007-02-06 Lenovo Singapore Pte, Ltd Decryption system for encrypted audio
DE20309254U1 (de) * 2003-06-16 2003-11-06 Scm Microsystems Gmbh Zugangssystem
US20050127172A1 (en) * 2003-06-16 2005-06-16 Merkert Robert J.Sr. Access system
KR20050017350A (ko) * 2003-08-13 2005-02-22 삼성전자주식회사 입력 장치가 없는 시스템에서의 암호키 생성 방법 및 이에적합한 장치
WO2005038729A1 (en) * 2003-10-16 2005-04-28 Scm Microsystems, Inc. Access control system
JP4666943B2 (ja) * 2004-04-23 2011-04-06 株式会社エヌ・ティ・ティ・ドコモ Idタグ、タグリーダ、idタグセキュリティシステム及びidタグ送信復元方法
US20100195538A1 (en) * 2009-02-04 2010-08-05 Merkey Jeffrey V Method and apparatus for network packet capture distributed storage system
CA2619141C (en) * 2004-12-23 2014-10-21 Solera Networks, Inc. Method and apparatus for network packet capture distributed storage system
GB0525623D0 (en) 2005-12-16 2006-01-25 Hill Nicholas P R RFID reader
US7565261B2 (en) * 2006-09-29 2009-07-21 Hewlett-Packard Development Company, L.P. Generating an alert to indicate stale data
GB0709575D0 (en) 2007-05-18 2007-06-27 Cambridge Resonant Technologie RFIC Iterrogator
US8701210B2 (en) * 2007-10-02 2014-04-15 Computime, Ltd. Adjustable feature access for a controlled environmental system
GB0800819D0 (en) 2008-01-17 2008-02-27 Cambridge Resonant Technologie Improved rfid pet door
CN101983368A (zh) * 2008-04-01 2011-03-02 微动公司 用于防止设有红外数据关联接口的电子设备的无意配置的方法、计算机程序产品和系统
US8521732B2 (en) 2008-05-23 2013-08-27 Solera Networks, Inc. Presentation of an extracted artifact based on an indexing technique
US8625642B2 (en) 2008-05-23 2014-01-07 Solera Networks, Inc. Method and apparatus of network artifact indentification and extraction
US8849991B2 (en) 2010-12-15 2014-09-30 Blue Coat Systems, Inc. System and method for hypertext transfer protocol layered reconstruction
EP2500872A1 (de) * 2011-03-08 2012-09-19 Openways Sas Gesichertes Steuerungsverfahren zur Öffnung von Schließvorrichtungen mit Hilfe eines kommunizierenden Objekts vom Typ Handy
US8666985B2 (en) 2011-03-16 2014-03-04 Solera Networks, Inc. Hardware accelerated application-based pattern matching for real time classification and recording of network traffic
US9231926B2 (en) * 2011-09-08 2016-01-05 Lexmark International, Inc. System and method for secured host-slave communication
US20130077641A1 (en) * 2011-09-22 2013-03-28 Harley F. Burger, Jr. Systems, Circuits and Methods for Time Stamp Based One-Way Communications
US9959690B2 (en) * 2016-06-22 2018-05-01 Ford Global Technologies, Llc Expanding time window for remote commands
CA3071616A1 (en) 2017-08-01 2019-02-07 The Chamberlain Group, Inc. System for facilitating access to a secured area
US11055942B2 (en) 2017-08-01 2021-07-06 The Chamberlain Group, Inc. System and method for facilitating access to a secured area

Family Cites Families (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3906348A (en) * 1973-08-20 1975-09-16 Chamberlain Mfg Corp Digital radio control
GB2023899B (en) * 1978-06-14 1982-10-27 Hitachi Ltd Remote-controlled automatic control apparatus
US4426637A (en) * 1979-02-26 1984-01-17 Multi-Elmac Company Combination encoder-decoder integrated circuit device
US4380762A (en) * 1980-01-31 1983-04-19 Gaetano Capasso Polyfunction programmable data receiver
US4535333A (en) * 1982-09-23 1985-08-13 Chamberlain Manufacturing Corporation Transmitter and receiver for controlling remote elements
US4529980A (en) * 1982-09-23 1985-07-16 Chamberlain Manufacturing Corporation Transmitter and receiver for controlling the coding in a transmitter and receiver
DE3237622A1 (de) * 1982-10-11 1984-04-12 Bayerische Motoren Werke AG, 8000 München Sicherheitseinrichtung
DE3244049C2 (de) * 1982-11-27 1986-06-26 Kiekert GmbH & Co KG, 5628 Heiligenhaus Zentralverriegelungsanlage für ein Kraftfahrzeug
JPS59185801U (ja) * 1983-05-26 1984-12-10 アルプス電気株式会社 チツプ抵抗
US4590470A (en) * 1983-07-11 1986-05-20 At&T Bell Laboratories User authentication system employing encryption functions
US4931789A (en) * 1983-11-01 1990-06-05 Universal Photonix, Inc. Apparatus and method for a universal electronic locking system
US4686529A (en) * 1984-01-06 1987-08-11 Kiekert Gmbh & Co. Kommanditgesellschaft Remote-control lock system
US4928098A (en) * 1984-03-30 1990-05-22 Siemens Aktiengesellschaft Method for code protection using an electronic key
US4574247A (en) * 1984-05-21 1986-03-04 Multi-Elmac Company FM Signal demodulator
US4638433A (en) * 1984-05-30 1987-01-20 Chamberlain Manufacturing Corporation Microprocessor controlled garage door operator
US4750118A (en) * 1985-10-29 1988-06-07 Chamberlain Manufacturing Corporation Coding system for multiple transmitters and a single receiver for a garage door opener
EP0215291B1 (de) * 1985-09-10 1991-02-27 Hülsbeck & Fürst GmbH. & Co. KG Elektronische Schliesseinrichtung für Kraftfahrzeuge
US4737770A (en) * 1986-03-10 1988-04-12 Interactive Technologies, Inc. Security system with programmable sensor and user data input transmitters
FR2597538B1 (fr) * 1986-04-22 1995-03-31 Soum Rene Ensemble cle-serrure de securite a telecommande dans lequel la cle n'a qu'une fonction d'emission et la serrure de reception
US4835707A (en) * 1986-07-23 1989-05-30 Takeda Chemical Industries, Ltd. Automatic analysis method and apparatus for enzyme reaction
US4779090A (en) * 1986-08-06 1988-10-18 Micznik Isaiah B Electronic security system with two-way communication between lock and key
JPH0747910B2 (ja) 1986-10-24 1995-05-24 日産自動車株式会社 リモ−トコントロ−ルドアロツク装置
DE3636822C2 (de) * 1986-10-29 1993-12-23 Ruf Kg Wilhelm Elektronische Fernbetätigungseinrichtung, insbesondere für Zentralverriegelungsanlagen von Kraftfahrzeugen
ATE98034T1 (de) * 1987-03-04 1993-12-15 Siemens Nixdorf Inf Syst Datenaustauschsystem mit mehreren jeweils eine chipkarten-leseeinrichtung enthaltenden benutzerterminals.
US4881148A (en) * 1987-05-21 1989-11-14 Wickes Manufacturing Company Remote control system for door locks
JP2767816B2 (ja) 1987-10-07 1998-06-18 セイコーエプソン株式会社 リモコン送信・受信装置
DE3741324A1 (de) * 1987-12-05 1989-06-15 Alltronik Gmbh Handsender zur aussendung codierter elektromagnetischer impulse und darauf abgestimmter empfaenger
US4951029A (en) * 1988-02-16 1990-08-21 Interactive Technologies, Inc. Micro-programmable security system
US4864615A (en) * 1988-05-27 1989-09-05 General Instrument Corporation Reproduction of secure keys by using distributed key generation data
US4912463A (en) * 1988-08-09 1990-03-27 Princeton Technology Corporation Remote control apparatus
JPH0732499B2 (ja) * 1988-08-16 1995-04-10 日産自動車株式会社 施解錠制御システム
US4890108A (en) * 1988-09-09 1989-12-26 Clifford Electronics, Inc. Multi-channel remote control transmitter
US4855713A (en) * 1988-10-07 1989-08-08 Interactive Technologies, Inc. Learn mode transmitter
US5049867A (en) * 1988-11-30 1991-09-17 Code-Alarm, Inc. Vehicle security apparatus
IT1227401B (it) * 1988-12-06 1991-04-08 Delta Elettronica Spa Dispositivi per la trasmissione a distanza di comandi in sicurezza
US5148159A (en) * 1989-04-26 1992-09-15 Stanley Electronics Remote control system with teach/learn setting of identification code
AU5358190A (en) * 1989-05-18 1990-12-18 Siemens Aktiengesellschaft Transmission and receiving system
US4988992A (en) * 1989-07-27 1991-01-29 The Chamberlain Group, Inc. System for establishing a code and controlling operation of equipment
US5155729A (en) * 1990-05-02 1992-10-13 Rolm Systems Fault recovery in systems utilizing redundant processor arrangements
ZA914063B (en) 1990-05-29 1993-03-31 Nanoteq Pty Limited Microchips and remote control device comprising same
DE69118748T2 (de) 1990-05-29 1996-11-28 Microchip Tech Inc Integrierte Schaltungen, insbesondere zum Gebrauch in Fernsteuersystemen
US5224163A (en) * 1990-09-28 1993-06-29 Digital Equipment Corporation Method for delegating authorization from one entity to another through the use of session encryption keys
US5144667A (en) * 1990-12-20 1992-09-01 Delco Electronics Corporation Method of secure remote access
US5551033A (en) * 1991-05-17 1996-08-27 Zenith Data Systems Corporation Apparatus for maintaining one interrupt mask register in conformity with another in a manner invisible to an executing program
US5686904A (en) * 1991-05-29 1997-11-11 Microchip Technology Incorporated Secure self learning system
IT1249903B (it) * 1991-06-07 1995-03-30 Trw Sipea Spa Telecomando a sicurezza ottimizzata
DE4141766A1 (de) * 1991-12-18 1993-06-24 Skultety Ivan Verfahren zur sicherung einer elektronischen datenuebertragung
US5191610A (en) * 1992-02-28 1993-03-02 United Technologies Automotive, Inc. Remote operating system having secure communication of encoded messages and automatic re-synchronization
US5278902A (en) * 1992-12-30 1994-01-11 Intel Corporation Method and apparatus for transition direction coding
US5351293A (en) * 1993-02-01 1994-09-27 Wave Systems Corp. System method and apparatus for authenticating an encrypted signal
US5444780A (en) * 1993-07-22 1995-08-22 International Business Machines Corporation Client/server based secure timekeeping system
DE4428947C1 (de) * 1994-08-16 1996-04-04 Kiekert Ag Schließvorrichtung für ein Kraftfahrzeug mit einer Fernbetätigungseinrichtung sowie mit einem Transponder
US5832035A (en) * 1994-09-20 1998-11-03 Time Domain Corporation Fast locking mechanism for channelized ultrawide-band communications
US5654688A (en) * 1995-04-14 1997-08-05 Omega Research And Development, Inc. Vehicle security system having enhanced remote transmitter security
CA2193846C (en) * 1995-05-17 2004-02-17 Bradford L. Farris Rolling code security system
NO951965L (no) * 1995-05-18 1996-11-19 Defa Group As Sender-mottaker-system
AU5736996A (en) 1995-05-23 1996-12-11 Seiko Communications Systems, Inc. Record identification technique
US6191701B1 (en) * 1995-08-25 2001-02-20 Microchip Technology Incorporated Secure self learning system
JPH09170365A (ja) * 1995-09-08 1997-06-30 Kiekert Gmbh & Co Kg 遠隔操作装置並びにトランスポンダを具備した自動車用の施錠装置の操作方法
JPH09142257A (ja) * 1995-11-22 1997-06-03 Tokai Rika Co Ltd 送受信システム
US6373951B1 (en) * 1996-02-28 2002-04-16 Telex Communications, Inc. Synchronization technique and method and apparatus for transmitting and receiving coded signals
JP3442228B2 (ja) * 1996-08-29 2003-09-02 松下電器産業株式会社 同期保持装置
DE69713241T2 (de) * 1996-10-08 2003-02-20 Sony Corp Empfangsvorrichtung und -verfahren und Phasenregelkreis
US6028527A (en) * 1996-11-25 2000-02-22 Texas Instruments Incorporated Decryption and encryption transmitter/receiver with self-test, learn and rolling code
US5978483A (en) * 1997-04-07 1999-11-02 Inkel Corporation Securely encrypted remote keyless entry system
JPH11249964A (ja) * 1998-03-03 1999-09-17 Fujitsu Ltd 時計装置及びコンピュータ装置
US6484260B1 (en) * 1998-04-24 2002-11-19 Identix, Inc. Personal identification system
DE19941428B4 (de) * 1998-09-02 2015-09-10 Marquardt Gmbh Schließsystem, insbesondere für ein Kraftfahrzeug
KR100359782B1 (ko) * 2000-11-27 2002-11-04 주식회사 하이닉스반도체 엠펙 디코더의 시스템 타임 클럭 조정 장치 및 방법
JP3904432B2 (ja) * 2001-11-16 2007-04-11 株式会社ルネサステクノロジ 情報処理装置
US20050135612A1 (en) * 2003-12-19 2005-06-23 Evans Alan F. Secure digital communication
SE0400998D0 (sv) * 2004-04-16 2004-04-16 Cooding Technologies Sweden Ab Method for representing multi-channel audio signals
US7831421B2 (en) * 2005-05-31 2010-11-09 Microsoft Corporation Robust decoder
WO2007005114A1 (en) * 2005-06-30 2007-01-11 Radioshack Corporation Apparatus for synchronization of digital multimedia data communicated over wired media
US9544638B2 (en) * 2006-04-17 2017-01-10 Broadcom Corporation Method for reconstructing system time clock (STC) without carrying PCR
JP5244320B2 (ja) * 2007-01-16 2013-07-24 株式会社東芝 クロック生成装置及び方法

Also Published As

Publication number Publication date
WO2002050782A3 (en) 2003-01-30
AU2002220286A1 (en) 2002-07-01
DE60129742D1 (de) 2007-09-13
EP1354300A2 (de) 2003-10-22
US20020110242A1 (en) 2002-08-15
EP1354300B1 (de) 2007-08-01
WO2002050782A2 (en) 2002-06-27
US7529939B2 (en) 2009-05-05
ATE368913T1 (de) 2007-08-15

Similar Documents

Publication Publication Date Title
DE60129742T2 (de) Verfahren und vorrichtung zum datentransfer
DE69729064T2 (de) Resynchronisation durch variablen Tastendruck für fernbedienbare schlüssellose Eingangssystem
DE102006011685B4 (de) Sicherheitssystem mit gegenseitiger Berechtigungsüberprüfung mit Wiederherstellung aus einer teilweisen Programmierung
DE69637072T2 (de) Rollierendes code-sicherheitssystem
DE3636822C2 (de) Elektronische Fernbetätigungseinrichtung, insbesondere für Zentralverriegelungsanlagen von Kraftfahrzeugen
EP0212046B1 (de) System zum Ver- und/oder Entriegeln einer Sicherheitseinrichtung
DE69333405T2 (de) Ferngesteuertes Sicherheitssystem
DE69231813T3 (de) Verfahren und vorrichtung zur zeitprogrammierten aufzeichnung von fernsehprogrammen mit verkürzten codes
DE3244049C2 (de) Zentralverriegelungsanlage für ein Kraftfahrzeug
DE3327720A1 (de) Verfahren und vorrichtung zum betrieb einer elektronischen sicherheitseinrichtung
DE2253275A1 (de) Verfahren und vorrichtung zum betreiben einer gegen unbefugten zugang gesicherten nachrichtenuebertragungsanlage
DE102012216604A1 (de) Systeme, Schaltungen und Verfahren für einseitige Datenübertragung auf Zeitstempelbasis
DE102017113441A1 (de) Erweitern eines Zeitfensters für Fernsteuerbefehle
DE2916454A1 (de) Verfahren und schaltungsanordnung zum sichern von datenuebertragungen
DE4218500A1 (de) Fernsteuerung
DE10038923B4 (de) Verfahren zur einseitig gerichteten und störungssicheren Übertragung von digitalen Daten über Funkwellen sowie Einrichtung zur Durchführung dieses Verfahrens und Protokoll
DE2729062A1 (de) Sicherheitsschliessanlage
WO1994018036A1 (de) Fernbedienbare sicherungseinrichtung für ein kraftfahrzeug
DE102011105062A1 (de) Verfahren und vorrichtung zum ermöglichen einer drahtgebundenen übertragung eines verschlüsselten rollcodes
DE69533637T2 (de) Geschütztes Selbstlernen
DE4234822A1 (de) Fernsteuerung fuer betaetigungsmittel, insbesondere fuer ein kraftfahrzeug
DE19822989C2 (de) Schlüsselloses Fahrzeug-Einlaß-System unter Verwendung von Sprach-Signalen
WO1998034201A1 (de) Verfahren zum betrieb einer fernwirkeinrichtung und fernwirkeinrichtung
EP0596401B1 (de) Verfahren zur Individualisierung und Synchronisierung eines Steuergeräts
EP1277632A2 (de) Verfahren zum fernbedienten Ver- und/oder Entriegeln eines Fahrzeuges

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: GRAF GLUECK HABERSACK KRITZENBERGER, 93049 REGENSB

R082 Change of representative

Ref document number: 1354300

Country of ref document: EP

Representative=s name: GRAF GLUECK HABERSACK KRITZENBERGER, 93049 REGENSB

R082 Change of representative

Ref document number: 1354300

Country of ref document: EP

Representative=s name: GRAF GLUECK HABERSACK KRITZENBERGER, DE