DE102015220048A1 - A method of creating a secret or key in a network - Google Patents
A method of creating a secret or key in a network Download PDFInfo
- Publication number
- DE102015220048A1 DE102015220048A1 DE102015220048.5A DE102015220048A DE102015220048A1 DE 102015220048 A1 DE102015220048 A1 DE 102015220048A1 DE 102015220048 A DE102015220048 A DE 102015220048A DE 102015220048 A1 DE102015220048 A1 DE 102015220048A1
- Authority
- DE
- Germany
- Prior art keywords
- event
- network participant
- network
- value sequence
- transmission
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
Abstract
Es wird ein Verfahren zur Generierung eines Geheimnisses in einem ersten Netzwerkteilnehmer vorgestellt, wobei der erste Netzwerkteilnehmer eine Übertragung mindestens einer ersten Wertfolge auf einem Übertragungskanal zumindest teilweise synchron zu einer Übertragung mindestens einer zweiten Wertfolge auf dem Übertragungskanal durch einen zweiten Netzwerkteilnehmer veranlasst und das Geheimnis auf Basis der mindestens einen ersten Wertfolge und auf Basis einer Überlagerung der mindestens einen ersten Wertfolge und der mindestens einen zweiten Wertfolge auf dem Übertragungskanal ermittelt Dabei wird die erste Wertfolge zu einer zwischen dem ersten Netzwerkteilnehmer (21) und dem zweiten Netzwerkteilnehmer (22) abgestimmten Zeit übertragen.A method for generating a secret in a first network participant is presented, wherein the first network participant initiates transmission of at least one first value sequence on a transmission channel at least partially synchronously with transmission of at least one second value sequence on the transmission channel by a second network participant and the secret based on the at least one first value sequence and based on an overlay of the at least one first value sequence and the at least one second value sequence determined on the transmission channel. The first value sequence is transmitted to a time tuned between the first network participant (21) and the second network participant (22).
Description
Die vorliegende Erfindung betrifft ein Verfahren zur Erzeugung eines geheimen, kryptographischen Schlüssels in einem Netzwerk, insbesondere die Erzeugung eines gemeinsamen, geheimen Schlüssels in zwei Teilnehmern des Netzwerks.The present invention relates to a method for generating a secret, cryptographic key in a network, in particular the generation of a common, secret key in two participants of the network.
Auch Punkt-zu-Punkt-Verbindungen werden gewöhnlicher Weise zu den Netzwerken gezählt und sollen hier mit diesem Begriff ebenfalls adressiert sein. Dabei kommunizieren die beiden Teilnehmer über ein gemeinsam genutztes Übertragungsmedium. Hierbei werden logische Bitfolgen (bzw. allgemeiner: Wertfolgen) durch entsprechende Übertragungsverfahren als Signale bzw. Signalfolgen physikalisch übertragen. Das zugrundeliegende Kommunikationssystem kann z.B. ein CAN-Bus sein. Dieser sieht eine Übertragung dominanter und rezessiver Bits bzw. entsprechend dominanter und rezessiver Signale vor, wobei sich ein dominantes Signal bzw. Bit eines Teilnehmers des Netzwerks gegen rezessive Signale bzw. Bits durchsetzt. Ein Zustand entsprechend dem rezessiven Signal stellt sich auf dem Übertragungsmedium nur ein, wenn alle beteiligten Teilnehmer ein rezessives Signal zur Übertragung vorsehen bzw. wenn alle gleichzeitig sendenden Teilnehmer einen rezessiven Signalpegel übertragen.Also point-to-point connections are usually counted as networks and should also be addressed here with this term. The two participants communicate via a shared transmission medium. In this case, logical bit sequences (or, more generally, value sequences) are transmitted physically by means of corresponding transmission methods as signals or signal sequences. The underlying communication system may e.g. be a CAN bus. This provides for transmission of dominant and recessive bits or correspondingly dominant and recessive signals, whereby a dominant signal or bit of a participant of the network intersperses against recessive signals or bits. A state corresponding to the recessive signal adjusts itself to the transmission medium only if all participants involved provide a recessive signal for transmission or if all participants transmitting at the same time transmit a recessive signal level.
Stand der TechnikState of the art
Eine sichere Kommunikation zwischen verschiedenen Geräten wird in einer zunehmend vernetzten Welt immer wichtiger und stellt in vielen Anwendungsbereichen eine wesentliche Voraussetzung für die Akzeptanz und somit auch den wirtschaftlichen Erfolg der entsprechenden Anwendungen dar. Dies umfasst – je nach Anwendung – verschiedene Schutzziele, wie beispielsweise die Wahrung der Vertraulichkeit der zu übertragenden Daten, die gegenseitige Authentifizierung der beteiligten Knoten oder die Sicherstellung der Datenintegrität. Secure communication between different devices is becoming more and more important in an increasingly networked world and is an essential prerequisite for the acceptance and thus the economic success of the corresponding applications in many areas of application. Depending on the application, this includes various protection goals, such as safeguarding the confidentiality of the data to be transferred, the mutual authentication of the nodes involved or the assurance of data integrity.
Zur Erreichung dieser Schutzziele kommen üblicherweise geeignete kryptographische Verfahren zum Einsatz, die man generell in zwei verschiedene Kategorien unterteilen kann: Zum einen symmetrische Verfahren, bei denen Sender und Empfänger über denselben kryptographischen Schlüssel verfügen, zum anderen asymmetrische Verfahren, bei denen der Sender die zu übertragenden Daten mit dem öffentlichen (d.h. auch einem potenziellen Angreifer möglicherweise bekannten) Schlüssel des Empfängers verschlüsselt, die Entschlüsselung aber nur mit dem zugehörigen privaten Schlüssel erfolgen kann, der idealerweise nur dem Empfänger bekannt ist.In order to achieve these protection goals, suitable cryptographic methods are usually used, which can generally be subdivided into two different categories: on the one hand, symmetrical methods in which the sender and receiver have the same cryptographic key, and on the other asymmetrical methods in which the sender transfers the ones to be transmitted Encrypt data with the public key (that may also be known to a potential attacker) of the recipient, but decrypt it only with the associated private key, ideally known only to the recipient.
Asymmetrische Verfahren haben unter anderem den Nachteil, dass sie in der Regel eine sehr hohe Rechenkomplexität aufweisen. Damit sind sie nur bedingt für ressourcenbeschränkte Knoten, wie z.B. Sensoren, Aktuatoren, o.ä., geeignet, die üblicherweise nur über eine relativ geringe Rechenleistung sowie geringen Speicher verfügen und energieeffizient arbeiten sollen, beispielsweise aufgrund von Batteriebetrieb oder dem Einsatz von Energy Harvesting. Darüber hinaus steht oftmals nur eine begrenzte Bandbreite zur Datenübertragung zur Verfügung, was den Austausch von asymmetrischen Schlüsseln mit Längen von 2048 Bit oder noch mehr unattraktiv macht.One of the disadvantages of asymmetric methods is that they usually have a very high computational complexity. Thus, they are only conditionally for resource constrained nodes, such as e.g. Sensors, actuators, or similar, suitable, which usually have only a relatively low computing power and low memory and energy-efficient work, for example due to battery operation or the use of energy harvesting. In addition, there is often limited bandwidth available for data transmission, making the replacement of asymmetric keys with lengths of 2048 bits or even more unattractive.
Bei symmetrischen Verfahren hingegen muss gewährleistet sein, dass sowohl Empfänger als auch Sender über den gleichen Schlüssel verfügen. Das zugehörige Schlüsselmanagement stellt dabei generell eine sehr anspruchsvolle Aufgabe dar. Im Bereich des Mobilfunks werden Schlüssel beispielsweise mit Hilfe von SIM-Karten in ein Mobiltelefon eingebracht und das zugehörige Netz kann dann der eindeutigen Kennung einer SIM-Karte den entsprechenden Schlüssel zuordnen. Im Fall von Wireless LANs hingegen erfolgt üblicherweise eine manuelle Eingabe der zu verwendenden Schlüssel (in der Regel durch die Eingabe eines Passwortes) bei der Einrichtung eines Netzwerkes. Ein solches Schlüsselmanagement wird allerdings schnell sehr aufwändig und impraktikabel wenn man eine sehr große Anzahl von Knoten hat, beispielsweise in einem Sensornetzwerk oder anderen Maschine-zu-Maschine-Kommunikationssystemen, z.B. auch CAN-basierten Fahrzeugnetzwerken. Darüber hinaus ist eine Änderung der zu verwendenden Schlüssel oftmals überhaupt nicht bzw. nur mit sehr großem Aufwand möglich. Bei aktuellen Verfahren werden die Schlüssel zentral erzeugt. Die Zuordnung zu einzelnen Steuergeräten erfolgt in sicherer Umgebung z. B. im Werk des Fahrzeugherstellers. Dort werden die Schlüssel auch aktiv geschaltet.For symmetric methods, however, it must be ensured that both the receiver and the transmitter have the same key. The associated key management generally represents a very demanding task. In the area of mobile telephony, for example, keys are inserted into a mobile telephone with the aid of SIM cards, and the associated network can then assign the unique identifier of a SIM card to the corresponding key. In the case of wireless LANs, on the other hand, a manual entry of the keys to be used (usually by entering a password) usually takes place when setting up a network. However, such key management quickly becomes very cumbersome and impractical if one has a very large number of nodes, for example in a sensor network or other machine-to-machine communication systems, e.g. also CAN-based vehicle networks. In addition, a change in the key to be used is often not possible or only with great effort. In current procedures, the keys are generated centrally. The assignment to individual ECUs takes place in a secure environment z. B. in the factory of the vehicle manufacturer. There, the keys are also activated.
Verfahren zur Absicherung von Sensordaten gegen Manipulation und die Sicherstellung einer Transaktionsauthentifizierung, z.B. in einem Kraftfahrzeugnetzwerk, mit Hilfe gängiger Verschlüsselungsverfahren sind z.B. in der
Seit einiger Zeit werden zudem unter dem Schlagwort „Physical Layer Security“ neuartige Ansätze untersucht und entwickelt, mit Hilfe derer Schlüssel für symmetrische Verfahren automatisch auf der Grundlage physikalischer Eigenschaften der Übertragungskanäle zwischen den involvierten Knoten erzeugt werden können. Dabei nutzt man die Reziprozität und die inhärente Zufälligkeit dieser Übertragungskanäle aus. Insbesondere bei drahtgebundenen oder optischen Systemen ist dieser Ansatz oftmals allerdings nur bedingt geeignet, da entsprechende Kanäle üblicherweise nur eine sehr eingeschränkte zeitliche Variabilität aufweisen und ein Angreifer beispielsweise mit Hilfe einer Modellbildung relativ gut Rückschlüsse auf die Kanalparameter zwischen dem Sender und dem Empfänger ziehen kann. Derartige Verfahren für eine abgesicherte Kommunikation in einem verteilten System auf Basis von Kanaleigenschaften der verbundenen Einheiten sind beispielsweise in den nicht vorveröffentlichten Anmeldungen
Die nicht vorveröffentlichte
Offenbarung der ErfindungDisclosure of the invention
Die Verfahren zur Generierung eines Geheimnisses bzw. eines kryptographischen Schlüssels gemäß den unabhängigen Ansprüchen erfordern keinerlei manuellen Eingriff und ermöglichen somit den automatisierten Aufbau sicherer Kommunikationsbeziehungen bzw. -verbindungen zwischen zwei Knoten. Zudem weisen die Verfahren eine sehr geringe Komplexität auf, insbesondere hinsichtlich der erforderlichen Hardwareauslegung, wie z.B. der benötigten Speicherressourcen und Rechenleistung, und sie gehen mit einem geringen Energie- und Zeitbedarf einher. Darüber hinaus bieten die Verfahren sehr hohe Schlüsselgenerierungsraten bei gleichzeitig sehr kleiner Fehlerwahrscheinlichkeit.The methods for generating a secret or cryptographic key according to the independent claims do not require any manual intervention and thus enable the automated establishment of secure communication relationships between two nodes. In addition, the methods have a very low complexity, in particular with regard to the required hardware design, such as e.g. the required memory resources and computing power, and they are associated with a low energy and time requirements. In addition, the methods offer very high key generation rates with a very low probability of error.
Dabei gehen die Verfahren davon aus, dass Teilnehmer in einem Netzwerk über einen Kommunikationskanal miteinander kommunizieren. Sie übertragen dabei insbesondere logische Wertfolgen, (falls es sich um binäre Logik handelt, Bitfolgen) mit Hilfe von physikalischen Signalen auf dem Übertragungskanal. Auch wenn mögliche Überlagerungen auf dem Übertragungskanal durch die Signale, also auf der physikalischen Ebene, stattfinden, wird in der Beschreibung im Folgenden vorranging die logische Ebene betrachtet. Es werden somit die übertragenen, logischen Wertfolgen sowie deren logische Überlagerung betrachtet.The methods assume that participants in a network communicate with each other via a communication channel. In particular, they transfer logical sequences of values (in the case of binary logic, bit sequences) with the aid of physical signals on the transmission channel. Even if possible superimpositions take place on the transmission channel through the signals, that is to say on the physical level, in the description below the logical level is primarily considered. Thus, the transferred, logical value sequences as well as their logical overlay are considered.
Teilnehmer des Netzwerks können somit erste Signale (die beispielsweise dem logischen Bit „1“ zugeordnet sind) und zweite Signale (die beispielsweise dem logischen Bit „0“ zugeordnet sind) auf den Kommunikationskanal geben und resultierende Signale auf dem Kommunikationskanal detektieren. Übertragen nun zwei Teilnehmer (weitgehend) gleichzeitig jeweils eine Signalfolge, so können die Teilnehmer die daraus resultierende Überlagerung auf dem Kommunikationskanal detektieren. Das effektive, aus der (weitgehend) gleichzeitigen Übertragung zweier (unabhängiger) Signale resultierende Signal auf dem Kommunikationskanal lässt sich dann wiederum einem (oder mehreren) bestimmten logischen Wert (oder Werten) zuordnen.Subscribers of the network can thus give first signals (for example associated with logical bit "1") and second signals (associated, for example, with logical bit "0") to the communication channel and detect resulting signals on the communication channel. Now transmit two participants (largely) at the same time each one signal sequence, the participants can detect the resulting overlay on the communication channel. The effective signal resulting from the (largely) simultaneous transmission of two (independent) signals on the communication channel can then in turn be assigned to one (or more) specific logical values (or values).
Die Übertragung sollte dabei insofern weitgehend synchron sein, dass eine Überlagerung der einzelnen Signale einer Signalfolge auf dem Übertragungsmedium erfolgt, insbesondere, dass sich das Signal entsprechend dem n-ten logischen Wert bzw. Bit des ersten Teilnehmers mit dem Signal entsprechend dem n-ten logischen Wert bzw. Bit des zweiten Teilnehmers zumindest teilweise überlagert. Diese Überlagerung sollte jeweils dafür ausreichend lange sein, dass die Teilnehmer die Überlagerung erfassen bzw. den entsprechenden Überlagerungswert ermitteln können. The transmission should be largely synchronous in that a superimposition of the individual signals of a signal sequence on the transmission medium takes place, in particular, that the signal corresponding to the n-th logical value or bit of the first subscriber with the signal corresponding to the n-th logical Value or bit of the second participant at least partially superimposed. This overlay should be sufficiently long for the participants to be able to record the overlay or determine the corresponding overlay value.
Die Überlagerung kann dabei durch Arbitrierungsmechanismen oder durch physikalische Signalüberlagerung bestimmt sein. Mit Arbitrierungsmechanismus ist beispielsweise der Fall gemeint, dass ein Knoten einen rezessiven Pegel anlegen möchte, aber auf dem Bus einen dominanten Pegel detektiert und somit die Übertragung unterlässt. In diesem Fall kommt es zu keiner physikalischen Überlagerung zweier Signale, sondern es ist nur das dominante Signal auf dem Übertragungskanal zu sehen. The superimposition can be determined by arbitration mechanisms or by physical signal superposition. By arbitration mechanism is meant, for example, the case that a node wants to apply a recessive level, but detects a dominant level on the bus and thus omits the transmission. In this case, there is no physical interference between two signals, but only the dominant signal is seen on the transmission channel.
Aus der resultierenden Wertfolge der Überlagerung und der eigenen Wertfolge können die Teilnehmer dann einen Schlüssel generieren, der einem außenstehenden Angreifer gegenüber geheim ist. Grund dafür ist, dass der außenstehende Angreifer, der beispielsweise die auf dem gemeinsam genutzten Übertragungsmedium anliegenden effektiven Gesamtsignale abhören kann, nur die Überlagerung der Wertfolgen sieht, aber nicht die Informationen über die einzelnen Wertfolgen der Teilnehmer hat. Damit verfügen die Teilnehmer über mehr Informationen, die sie gegenüber dem Angreifer zur Generierung eines geheimen Schlüssels nutzen können.From the resulting value sequence of the overlay and its own value sequence, the participants can then generate a key that is secret to an outside attacker. The reason for this is that the outside attacker, who can listen to the effective overall signals applied to the shared transmission medium, sees only the superimposition of the value sequences, but does not have the information about the individual value sequences of the participants. Thus, the participants have more information that they can use against the attacker to generate a secret key.
Zur Durchführung der Verfahren zur Generierung eines Geheimnisses oder Schlüssels ist es erforderlich, dass die zwei Kommunikationsteilnehmer in einem gewünschten Zeitfenster weitgehend gleichzeitig den gemeinsamen Kanal zur Informationsübermittlung nutzen. Eine solche Synchronisierung der Datenübertragungen der beteiligten Netzwerkteilnehmer passiert vorzugsweise durch die Generierung und Detektion eines bestimmten Ereignisses und einer vorbestimmten oder dynamisch erzeugten Wartezeit nach dem Ereignis, bevor die Übertragung startet. Hierdurch werden die Verfahren zur Geheimnis- bzw. Schlüsselgenerierung besonders stabil, bleiben aber sehr flexibel. Für ein besonders effizientes System wird als Ereignis vorteilhafterweise der Empfang einer (bestimmten) Nachricht definiert, insbesondere über den gemeinsamen Übertragungskanal.For carrying out the method for generating a secret or key, it is necessary for the two communication users to use the common channel for information transmission largely simultaneously in a desired time window. Such synchronization of the data transmissions of the network participants involved preferably takes place by the generation and detection of a specific event and a predetermined or dynamically generated waiting time after the event before the transmission starts. As a result, the methods for secret or key generation are particularly stable, but remain very flexible. For a particularly efficient system, the reception advantageously takes place as an event defined a (specific) message, in particular via the common transmission channel.
Das Ereignis kann dabei von einem der beiden Netzwerkteilnehmer, von beiden Netzwerkteilnehmern oder von einer externen Einheit generiert werden. Durch den Einsatz einer externen Einheit kann ein besonders sicheres System ermöglicht werden, allerdings ist hiermit auch besonderer Aufwand verbunden.The event can be generated by one of the two network subscribers, by both network subscribers or by an external unit. By using an external unit, a particularly secure system can be made possible, but this is also associated with special effort.
Noch deterministischer, allerdings nicht mehr so flexibel ist eine alternative Ausgestaltung der Synchronisierung, bei welcher absolute Zeiten bestimmt werden, zu denen die Übertragungen zur Geheimnis- bzw. Schlüsselgenerierung erfolgen sollen. Even more deterministic, but not so flexible is an alternative embodiment of the synchronization, in which absolute times are determined at which the transmissions for secret or key generation should be made.
Die beschriebenen Verfahren sind besonders gut in einem CAN-, TTCAN- oder CAN FD-Bussystem umzusetzen. Hier wird ein rezessiver Buspegel durch einen dominanten Buspegel verdrängt. Die Überlagerung von Werten bzw. Signalen der Teilnehmer folgt damit festgelegten Regeln, welche die Teilnehmer zur Ableitung von Informationen aus dem überlagerten Wert bzw. Signal und dem von ihnen übertragenen Wert bzw. Signal nutzen können. Auch für weitere Kommunikationssysteme wie LIN und I2C sind die Verfahren gut geeignet.The described methods can be implemented particularly well in a CAN, TTCAN or CAN FD bus system. Here, a recessive bus level is replaced by a dominant bus level. The superimposition of values or signals of the subscribers thus follows defined rules which the subscribers can use to derive information from the superimposed value or signal and the value or signal transmitted by them. Also for other communication systems such as LIN and I 2 C, the methods are well suited.
Ein Netzwerk oder ein Teilnehmer eines Netzwerks sind zur Durchführung der beschriebenen Verfahren insbesondere dadurch eingerichtet, dass sie über die entsprechenden elektronischen Speicher- und Rechenressourcen verfügen. Auf einem Speichermedium eines solchen Teilnehmers oder auf den verteilten Speicherressourcen eines Netzwerks kann auch ein Computerprogramm abgelegt sein, dass dazu eingerichtet ist, alle Schritte eines entsprechenden Verfahrens auszuführen, wenn es in dem Teilnehmer oder in dem Netzwerk abgearbeitet wird.A network or a participant of a network are set up to carry out the described methods in particular by having the corresponding electronic memory and computing resources. Also stored on a storage medium of such a user or on the distributed storage resources of a network may be a computer program configured to perform all the steps of a corresponding method when executed in the subscriber or in the network.
Zeichnungendrawings
Nachfolgend ist die Erfindung unter Bezugnahme auf die beiliegenden Zeichnungen und anhand von Ausführungsbeispielen näher beschrieben. Dabei zeigenThe invention is described in more detail below with reference to the accompanying drawings and to exemplary embodiments. Show
Beschreibung der AusführungsbeispieleDescription of the embodiments
Die vorliegende Erfindung bezieht sich auf ein Verfahren zur Generierung eines gemeinsamen Geheimnisses bzw. (geheimer) symmetrischer kryptographischer Schlüssel zwischen zwei Knoten eines Kommunikationssystems (Teilnehmer eines Netzwerkes), die über ein gemeinsam genutztes Medium (Übertragungskanal des Netzwerks) miteinander kommunizieren. Die Generierung bzw. Aushandlung der kryptographischen Schlüssel basiert dabei auf einem öffentlichen Datenaustausch zwischen den zwei Teilnehmern, wobei es einem möglichen mithörenden Dritten als Angreifer aber dennoch nicht oder nur sehr schwer möglich ist, Rückschlüsse auf die generierten Schlüssel zu ziehen. Mit der Erfindung ist es somit möglich, zwischen zwei verschiedenen Teilnehmern eines Netzwerks vollständig automatisiert und sicher entsprechende symmetrische kryptographische Schlüssel zu etablieren, um darauf aufbauend dann bestimmte Sicherheitsfunktionen, wie z.B. eine Datenverschlüsselung oder einer Nachrichtenauthentifizierung, zu realisieren. Wie im Detail noch beschrieben wird hierzu zunächst ein gemeinsames Geheimnis etabliert, welches zur Schlüsselgenerierung herangezogen werden kann. Ein solches gemeinsames Geheimnis kann aber grundsätzlich auch zu anderen Zwecken als für kryptographische Schlüssel im engeren Sinne genutzt werden, z.B. als One-Time-Pad.The present invention relates to a method for generating a shared secret or (secret) symmetric cryptographic key between two nodes of a communication system (participants of a network) communicating with each other via a shared medium (transmission channel of the network). The generation or negotiation of the cryptographic keys is based on a public data exchange between the two participants, although a possible listening third party as an attacker is not or only very difficult to draw conclusions about the generated key. With the invention, it is thus possible to completely automatically and securely establish corresponding symmetrical cryptographic keys between two different subscribers of a network in order then to build certain security functions, such as e.g. a data encryption or a message authentication to realize. As described in detail, a common secret is first established for this, which can be used to generate the key. However, such a shared secret can in principle also be used for purposes other than cryptographic keys in the strict sense, e.g. as a one-time pad.
Die Erfindung eignet sich für eine Vielzahl drahtgebundener oder drahtloser sowie auch optischer Netzwerke bzw. Kommunikationssysteme, insbesondere auch solche, bei denen die verschiedenen Teilnehmer über einen linearen Bus miteinander kommunizieren und der Medienzugriff auf diesen Bus mithilfe einer bitweisen Bus-Arbitrierung erfolgt. Dieses Prinzip stellt beispielsweise die Grundlage des weit verbreiteten CAN-Busses dar. Mögliche Einsatzgebiete der Erfindung umfassen dementsprechend insbesondere auch CAN-basierte Fahrzeugnetzwerke sowie CAN-basierte Netzwerke in der Automatisierungstechnik. The invention is suitable for a variety of wired or wireless as well as optical networks or communication systems, especially those in which the various participants communicate with each other via a linear bus and the media access to this bus using a bitwise bus arbitration. For example, this principle forms the basis of Accordingly, possible fields of application of the invention include in particular also CAN-based vehicle networks and CAN-based networks in automation technology.
Die vorliegende Erfindung beschreibt einen Ansatz, mit dem automatisiert symmetrische kryptographische Schlüssel in einem, bzw. insbesondere zwischen zwei Knoten eines Netzwerks generiert werden können. Diese Generierung erfolgt dabei unter Ausnutzung von Eigenschaften der entsprechenden Übertragungsschicht. Anders als bei den gängigen Ansätzen der „Physical Layer Security“ werden dafür aber nicht physikalische Parameter des Übertragungskanals wie Übertragungsstärke etc. ausgewertet. Vielmehr gibt es dazu einen öffentlichen Datenaustausch zwischen den beteiligten Knoten, der dank der Eigenschaften des Kommunikationssystems und/oder des verwendeten Modulationsverfahrens einem möglichen lauschenden Angreifer keine, bzw. keine ausreichenden Rückschlüsse auf den daraus ausgehandelten Schlüssel ermöglicht. The present invention describes an approach with which automatically symmetric cryptographic keys can be generated in one, or in particular between two nodes of a network. This generation takes place by exploiting properties of the corresponding transfer layer. Unlike the usual approaches of "physical layer security" but not physical parameters of the transmission channel such as transmission strength, etc. are evaluated. Rather, there is a public data exchange between the nodes involved, thanks to the characteristics of the communication system and / or the modulation method used a possible listening attacker no, or no sufficient conclusions on the negotiated key allows.
Im Folgenden wird eine Anordnung betrachtet, wie sie abstrakt in
Im Folgenden wird für die Kommunikation zwischen den verschiedenen Knoten
Ein Beispiel für ein solches Übertragungsverfahren ist das so genannte On-Off-Keying (On-Off-Keying-Amplitudenumtastung), bei dem genau zwei Übertragungszustände unterschieden werden: Im ersten Fall (Wert ‚On‘, bzw. „0“) wird ein Signal übertragen, beispielsweise in Form eines einfachen Trägersignals, im anderen Fall (Wert ‚Off‘, bzw. „1“) wird kein Signal übertragen. Der Zustand ‚On‘ ist dabei dominant während der Zustand ‚Off‘ rezessiv ist. An example of such a transmission method is the so-called on-off-keying (amplitude-shift keying), in which exactly two transmission states are distinguished: in the first case (value 'on' or '0') becomes Signal transmitted, for example in the form of a simple carrier signal, in the other case (value, Off ', or "1") no signal is transmitted. The state 'On' is dominant while the state 'Off' is recessive.
Ein weiteres Beispiel für ein entsprechendes Kommunikationssystem, das diese Unterscheidung von dominanten und rezessiven Bits unterstützt, ist ein (drahtgebundenes oder optisches) System basierend auf einer bitweisen Bus-Arbitrierung, wie sie beispielsweise beim CAN-Bus zum Einsatz kommt. Die Grundidee dabei besteht ebenfalls darin, dass wenn beispielsweise zwei Knoten gleichzeitig ein Signal übertragen wollen und der eine Knoten eine ‚1‘ überträgt, wohingegen der zweite Knoten eine ‚0‘ sendet, die ‚0‘ „gewinnt“ (also das dominante Bit), d.h. der Signalpegel, der auf dem Bus gemessen werden kann, entspricht einer logischen ‚0‘. Bei CAN wird dieser Mechanismus insbesondere zur Auflösung von möglichen Kollisionen benutzt. Dabei werden höherpriore Nachrichten (d.h. Nachrichten mit früherem, dominantem Signalpegel) vorrangig übertragen, indem jeder Knoten bei der Übertragung seines CAN-Identifiers bitweise gleichzeitig den Signalpegel auf dem Bus überwacht. Sofern der Knoten selbst ein rezessives Bit überträgt, aber auf dem Bus ein dominantes Bit detektiert wird, bricht der entsprechende Knoten seinen Übertragungsversuch zugunsten der höherprioren Nachricht (mit dem früheren dominanten Bit) ab. Another example of a corresponding communication system that supports this distinction between dominant and recessive bits is a (wired or optical) system based on bitwise bus arbitration, such as that used in the CAN bus. The basic idea here is also that if, for example, two nodes want to transmit a signal at the same time and one node transmits a '1', whereas the second node transmits a '0' which 'gains' '0' (ie the dominant bit) ie the signal level which can be measured on the bus corresponds to a logical '0'. In CAN, this mechanism is used in particular for the resolution of possible collisions. In doing so, higher priority messages (i.e., previous dominant signal level messages) are prioritized by each node simultaneously monitoring the signal level on the bus bit by bit in the transmission of its CAN identifier. If the node itself transmits a recessive bit but a dominant bit is detected on the bus, the corresponding node aborts its transmission attempt in favor of the higher priority message (with the earlier dominant bit).
Die Unterscheidung von dominanten und rezessiven Bits erlaubt es, das geteilte Übertragungsmedium als eine Art binären Operator aufzufassen, der die verschiedenen Eingangsbits (= alle gleichzeitig übertragenen Bits) mit Hilfe einer logischen UND-Funktion miteinander verknüpft. The distinction between dominant and recessive bits makes it possible to interpret the shared transmission medium as a kind of binary operator that combines the various input bits (= all bits transmitted simultaneously) using a logical AND function.
In
Unter Ausnutzung dieser Eigenschaften des Übertragungsverfahrens des Kommunikationssystems kann eine Schlüsselgenerierung zwischen zwei Teilnehmern eines entsprechenden Netzwerks nun erfolgen, indem die Teilnehmer eine Überlagerung von Bitfolgen der beiden Teilnehmer auf dem Übertragungsmedium detektieren und aus dieser Information gemeinsam mit Informationen über die selbst gesendete Bitfolge einen gemeinsamen (symmetrischen), geheimen Schlüssel erzeugen.Taking advantage of these characteristics of the transmission method of the communication system, a key generation between two participants of a corresponding network can now be done by the participants detect a superposition of bit sequences of the two participants on the transmission medium and from this information together with information about the self-transmitted bit sequence a common (symmetric ), generate secret keys.
Eine beispielhafte, besonders bevorzugte Realisierung wird im Folgenden anhand von
Der Prozess zur Generierung eines symmetrischen Schlüsselpaars wird in Schritt
Beispiel für lokale Bitfolgen der Länge 20 Bits: Example of local bit sequences of
- – Erzeugte Bitsequenz von Teilnehmer 1: ST1 = 01001101110010110010- Generated bit sequence of subscriber 1: S T1 = 01001101110010110010
- – Erzeugte Bitsequenz von Teilnehmer 2: ST2 = 10010001101101001011- Generated bit sequence of subscriber 2: S T2 = 10010001101101001011
In einem Schritt
Auf dem geteilten Übertragungsmedium überlagern sich die beiden Bitsequenzen dann, wobei aufgrund der zuvor geforderten Eigenschaft des Systems mit der Unterscheidung von dominanten und rezessiven Bits die einzelnen Bits von Teilnehmer 1 und Teilnehmer 2 eine Überlagerung ergeben, im genannten Beispiel de facto UND-verknüpft werden. Damit ergibt sich auf dem Übertragungskanal eine entsprechende Überlagerung, die beispielsweise ein mithörender dritter Teilnehmer detektieren könnte.On the shared transmission medium, the two bit sequences then overlap, whereby due to the previously required property of the system with the distinction of dominant and recessive bits, the individual bits of subscriber 1 and
Beispiel einer Überlagerungsbitfolge für die obigen, lokalen Bitfolgen:Example of a overlay bit string for the above local bit strings:
- • Effektive Bitsequenz auf dem Übertragungskanal: Seff = ST1 AND ST2 = 00000001100000000010• Effective bit sequence on the transmission channel: S eff = S T1 AND S T2 = 00000001100000000010
Sowohl Teilnehmer 1 als auch Teilnehmer 2 detektieren während der Übertragung ihrer Bitsequenzen des Schritts
Für Systeme mit ‚On-Off-Keying‘ (drahtlos, drahtgebunden oder optisch) ist dies entsprechend ebenfalls möglich. Der praktischen Realisierbarkeit kommt hierbei insbesondere zugute, dass bei einem solchen System der Zustand ‚On‘ dominant und der Zustand ‚Off‘ rezessiv ist (wie zuvor bereits erläutert). Folglich weiß ein Knoten auch ohne Messung, dass der effektive Zustand auf dem „Shared Medium“ dominant ist sofern der Knoten selbst ein dominantes Bit gesendet hat. Hat ein Knoten hingegen ein rezessives Bit gesendet, kennt er den Zustand auf dem geteilten Übertragungsmedium zunächst nicht ohne Weiteres, allerdings kann er in diesem Fall durch eine geeignete Messung bestimmen, wie dieser aussieht. Da der Knoten selbst in diesem Fall nichts sendet, gibt es nämlich auch keine Probleme mit so genannter Selbstinterferenz, die speziell im Fall von drahtlosen Systemen ansonsten eine aufwändige Echokompensation erforderlich machen würde.This is likewise possible for systems with on-off keying (wireless, wired or optical). The practical feasibility here benefits in particular from the fact that in such a system the state 'On' is dominant and the state 'Off' is recessive (as already explained above). Thus, even without measurement, a node knows that the effective state is dominant on the shared medium if the node itself has sent a dominant bit. On the other hand, if a node has sent a recessive bit, it does not readily know the state on the shared transmission medium, but in this case it can determine how it looks by means of a suitable measurement. In fact, since the node does not transmit anything in this case, there are no problems with so-called self-interference, which would otherwise require complex echo cancellation, especially in the case of wireless systems.
In einem nächsten Schritt
Beispiel für die obigen Bitfolgen: Example of the above bit sequences:
- – Invertierte Bitsequenz von Teilnehmer 1: ST1‘ = 10110010001101001101Inverted bit sequence of subscriber 1: S T1 '= 10110010001101001101
- – Invertierte Bitsequenz von Teilnehmer 2: ST2‘ = 01101110010010110100Inverted bit sequence of subscriber 2: S T2 '= 01101110010010110100
- – Effektive, überlagerte Bitsequenz auf dem Kanal: Seff‘ = ST1‘ AND ST2‘ = 00100010000000000100- Effective, superimposed bit sequence on the channel: S eff '= S T1 ' AND S T2 '= 00100010000000000100
Sowohl Teilnehmer 1 als auch Teilnehmer 2 ermitteln während der Übertragung ihrer nun invertierten Bitsequenzen dann wieder die effektiven, überlagerten Bitsequenzen auf dem geteilten Übertragungsmedium. Zu diesem Zeitpunkt kennen somit beide Knoten (Teilnehmer 1 und Teilnehmer 2), sowie auch ein möglicher Angreifer (z.B. Teilnehmer 3), der die Kommunikation auf dem geteilten Übertragungsmedium mithört, die effektiven, überlagerten Bitsequenzen Seff und Seff‘. Im Gegensatz zum Angreifer bzw. dritten Teilnehmer kennt aber Teilnehmer 1 noch seine initial erzeugte, lokale Bitsequenz ST1 und Teilnehmer 2 seine initial erzeugte, lokale Bitsequenz ST2. Teilnehmer 1 wiederum kennt aber nicht die initial erzeugte, lokale Bitsequenz von Teilnehmer
Alternativ zu dieser beispielhaften Ausführungsvariante können Teilnehmer 1 und Teilnehmer 2 ihre invertierte, lokale Bitfolge auch direkt mit bzw. direkt nach ihrer ursprünglichen, lokalen Bitfolge versenden, d.h. Schritte
In Schritt
Beispiel für die obigen Bitfolgen:Example of the above bit sequences:
- Sges = Seff OR Seff‘ = 00100011100000000110S tot = S eff OR S eff '= 00100011100000000110
Die einzelnen Bits in der aus der ODER-Verknüpfung resultierenden Bitsequenz (Sges) geben nun an, ob die entsprechenden Bits von ST1 und ST2 identisch oder unterschiedlich sind. Ist das n-te Bit innerhalb von Sges beispielsweise eine ‚0‘, so bedeutet dies, dass das n-te Bit innerhalb von ST1 invers zu dem entsprechenden Bit innerhalb von ST2 ist. Gleichermaßen gilt, dass wenn das n-te Bit innerhalb von Sges eine ‚1‘ ist, die entsprechenden Bits innerhalb von ST1 und ST2 identisch sind. The individual bits in the bit sequence (S ges ) resulting from the OR operation now indicate whether the corresponding bits of S T1 and S T2 are identical or different. For example, if the nth bit within S tot is a '0', it means that the nth bit within S T1 is inverse to the corresponding bit within S T2 . Likewise, if the nth bit within S tot is a '1', the corresponding bits within S T1 and S T2 are identical.
Teilnehmer 1 und Teilnehmer 2 streichen daraufhin in Schritt
Beispiel für die obigen Bitfolgen:Example of the above bit sequences:
- – Verkürzte Bitsequenz von Teilnehmer 1: ST1,V = 01011100101100- Abbreviated bit sequence of user 1: S T1, V = 01011100101100
- – Verkürzte Bitsequenz von Teilnehmer 2: ST2,V = 10100011010011- Abbreviated bit sequence of subscriber 2: S T2, V = 10100011010011
Die resultierenden, verkürzten Bitsequenzen ST1,V und ST2,V sind nun gerade invers zueinander. Somit kann einer der beiden Teilnehmer durch Inversion seiner verkürzten Bitsequenz exakt diejenige verkürzte Bitsequenz ermitteln, wie sie im anderen Teilnehmer bereits vorliegt.The resulting, shortened bit sequences S T1, V and S T2, V are now just inverse to each other. Thus, by inversion of its shortened bit sequence, one of the two subscribers can determine exactly the shortened bit sequence that already exists in the other subscriber.
Die dermaßen gemeinsam vorliegende, verkürzte Bitsequenz wird nun von Teilnehmer 1 und Teilnehmer 2 in Schritt
Im Anschluss an die Schlüsselgenerierung kann ggf. noch verifiziert werden, dass die von Teilnehmer 1 und 2 generierten Schlüssel tatsächlich identisch sind. Dazu könnte beispielsweise eine Checksumme über die generierten Schlüssel berechnet und zwischen Teilnehmer 1 und 2 ausgetauscht werden. Sind beide Checksummen nicht identisch, so ist offensichtlich etwas fehlgeschlagen. In diesem Fall könnte das beschriebene Verfahren zur Schlüsselgenerierung wiederholt werden.Following the key generation, it may still be possible to verify that the keys generated by
In einer bevorzugten Variante des Verfahrens zur Schlüsselgenerierung können in verschiedenen Durchläufen zunächst auch eine ganze Reihe von resultierenden, bei Teilnehmer 1 und 2 jeweils vorliegenden, verkürzten Bitsequenzen erzeugt werden, die dann zu einer einzigen großen Sequenz kombiniert werden, bevor der eigentliche Schlüssel davon abgeleitet wird. Dies kann ggf. auch adaptiv erfolgen. Sollte nach dem einmaligen Durchlaufen der beschriebenen Prozedur z.B. die Länge der gemeinsamen, verkürzten Bitsequenz beispielsweise kleiner als die gewünschte Schlüssellänge N sein, so könnte man durch einen erneuten Durchlauf z.B. weitere Bits vor der eigentlichen Schlüsselableitung generieren.In a preferred variant of the method for generating a key, different methods can be used First of all, a whole series of resulting shortened bit sequences, which are present in the case of
Das generierte, symmetrische Schlüsselpaar kann nun schließlich von Teilnehmer 1 und Teilnehmer 2 in Verbindung mit etablierten (symmetrischen) kryptographischen Verfahren, wie z.B. Chiffren zur Datenverschlüsselung, eingesetzt werden.Finally, the generated symmetric key pair may be subsumed by Subscriber 1 and
Ein möglicher Angreifer (z.B. Teilnehmer 3) kann die öffentliche Datenübertragung zwischen Teilnehmer 1 und Teilnehmer 2 abhören und somit wie beschrieben Kenntnis der effektiven, überlagerten Bitfolgen (Seff und Seff‘) erlangen. Damit weiß der Angreifer dann allerdings nur, welche Bits in den lokal generierten Bitsequenzen von Teilnehmer 1 und 2 identisch sind und welche nicht. Bei den identischen Bits kann der Angreifer darüber hinaus sogar noch feststellen, ob es sich dabei um eine ‚1‘ oder eine ‚0‘ handelt. Für eine vollständige Kenntnis der resultierenden, verkürzten Bitfolge (und damit der Grundlage zur Schlüsselgenerierung) fehlen ihm aber die Informationen über die nicht identischen Bits. Um dem Angreifer mögliche Angriffe weiter zu erschweren, wird in einer bevorzugten Variante zusätzlich die in den ursprünglichen, lokal erzeugten Bitfolgen der Teilnehmer 1 und 2 identischen Bitwerte gelöscht. Damit verfügt Teilnehmer 3 nur über Informationen, die für die Schlüsselgenerierung gar nicht verwendet werden. Er weiß zwar, dass entsprechend verkürzte Bitfolgen aus den zwischen den lokalen Bitfolgen der Teilnehmer 1 und Teilnehmer 2 unterschiedlichen Bits hervorgehen. Er weiß aber nicht, welche Bits Teilnehmer 1 und Teilnehmer 2 jeweils gesendet haben.A potential attacker (eg subscriber 3) can listen to the public data transmission between subscriber 1 and
Teilnehmer 1 und Teilnehmer 2 haben zusätzlich zu der Information über die überlagerte Gesamt-Bitfolge noch die Information über die jeweils von ihnen gesendete, lokal generierte Bitfolge. Aus diesem Informationsvorsprung gegenüber einem lediglich der öffentlichen Datenübertragung folgenden Teilnehmer 3 rührt die Tatsache, dass die in Teilnehmer 1 und 2 generierten Schlüssel trotz der öffentlichen Datenübertragung als Grundlage geheim bleiben. In addition to the information about the superimposed overall bit sequence, subscriber 1 and
Für die beschriebenen Verfahren ist es bedeutend, dass die Übertragung der Wertfolgen durch die beteiligten Netzwerkteilnehmer (weitgehend) synchron erfolgt. Die Synchronisierung erfolgt dabei in einer bevorzugten Ausgestaltung durch ein auslösendes Ereignis, von dessen Eintritt an eine bestimmte Wartezeit läuft. Bei Ablauf der Wartezeit wird die bzw. werden die Wertfolgen durch die Netzwerkteilnehmer übertragen.It is important for the methods described that the transmission of the value sequences by the participating network participants takes place (largely) synchronously. The synchronization takes place in a preferred embodiment by a triggering event, the entry of which runs to a certain waiting time. When the waiting time expires, the value sequences are transmitted by the network participants.
Hierzu wird in den Netzwerkteilnehmern geprüft, ob ein vorgegebenes Ereignis eingetreten ist. Ist das Ereignis eingetreten, wird eine vorzugsweise konfigurierbare Zeitspanne ≥ 0 nach Eintritt des Ereignisses abgewartet und anschließend mit der Durchführung der beschrieben Verfahren zur Etablierung eines gemeinsamen kryptografischen Geheimnisses durch Sendung der Wertfolge(n) begonnen. For this purpose, it is checked in the network participants whether a given event has occurred. If the event has occurred, a preferably configurable period of time ≥ 0 is waited for after the occurrence of the event and then the execution of the described method for establishing a common cryptographic secret by sending the value sequence (s) is started.
Die Wartezeit kann dabei als relative Zeit in einer gemeinsam bekannten Zeitbasis definiert sein, z.B. als „1000 Taktperioden ab Ereignis“. The waiting time can be defined as relative time in a commonly known time base, e.g. as "1000 clock periods from event".
Alternativ kann die Wartezeit als vorgegebene Anzahl bestimmter weiterer Ereignisse definiert sein, z.B. als „warte den Empfang von fünf gültigen Botschaften auf dem gemeinsamen Übertragungskanal nach Ereignis ab“ oder „warte ab, bis eine spezielle vorgegebene Nachricht zweimal auf dem gemeinsamen Übertragungskanal empfangen wurde“. In dieser alternativen Ausgestaltung ist keine gemeinsame Zeitbasis notwendig.Alternatively, the waiting time may be defined as a predetermined number of certain further events, e.g. as "wait for event to receive five valid messages on the common transmission channel" or "wait until a special given message has been received twice on the common transmission channel". In this alternative embodiment, no common time base is necessary.
Anschließend oder wenn das Ereignis zum Prüfzeitpunkt nicht eingetreten ist, wird geprüft ob eine Abbruchbedingung vorliegt. Ist dies der Fall, wird der Prozess beendet, andernfalls wird erneut geprüft ob das Ereignis eingetreten ist. Subsequently or if the event did not occur at the time of the check, it is checked whether an abort condition exists. If this is the case, the process is terminated, otherwise it is checked again if the event has occurred.
Der prinzipielle Ablauf ist in einer beispielhaften Ausführung in
In Schritt
Im Folgenden wird von zwei Kommunikationspartnern (erster Netzwerkteilnehmer und zweiter Netzwerkteilnehmer) ausgegangen, die über einen Kommunikationskanal die oben beschriebenen Verfahren zur Generierung eines gemeinsamen Geheimnisses bzw. Schlüssels durchführen möchten und sich dafür durch die Detektion eines vorbestimmten Ereignisses synchronisieren.In the following, two communication partners (first network participant and second network participant) are assumed to be using a communication channel want to perform the above-described methods for generating a shared secret or key and synchronize thereto by the detection of a predetermined event.
In einer ersten Ausgestaltung wird das Ereignis von einer externen Einheit (also weder dem ersten Netzwerkteilnehmer noch dem zweiten Netzwerkteilnehmer) generiert und sowohl von dem ersten Netzwerkteilnehmer als auch dem zweiten Netzwerkteilnehmer detektiert. Dabei kann das Ereignis zum Beispiel die Übertragung einer Information (eines Signals oder einer Nachricht) über den gemeinsamen Übertragungskanal des ersten und des zweiten Netzwerkteilnehmers sein.In a first embodiment, the event is generated by an external unit (that is, neither the first network subscriber nor the second network subscriber) and detected by both the first network subscriber and the second network subscriber. In this case, the event may be, for example, the transmission of information (a signal or a message) over the common transmission channel of the first and the second network participant.
In einer alternativen Ausgestaltung wird das Ereignis von einem der beiden Netzwerkteilnehmer generiert, aber von beiden detektiert. Zum Beispiel kann der erste Netzwerkteilnehmer das Ereignis generieren, zum Beispiel eine entsprechende Nachricht auf dem gemeinsamen Übertragungskanal übertragen, und der erste und der zweite Netzwerkteilnehmer detektieren es. Im Beispiel wird die spezifische Nachricht auf dem Übertragungskanal von den Empfangseinheiten sowohl des ersten als auch des zweiten Netzwerkteilnehmers erkannt. Ein beispielhafter Ablauf für ein solches Verfahren ist in
Die Schritte
In einer weiteren alternativen Ausgestaltung wird das Ereignis von einem der beiden Netzwerkteilnehmer generiert und nur vom anderen Netzwerkteilnehmer detektiert. Z.B. generiert der erste Netzwerkteilnehmer ein entsprechendes Ereignis, welches nur der zweite Netzwerkteilnehmer detektiert.In a further alternative embodiment, the event is generated by one of the two network subscribers and detected only by the other network subscriber. For example, the first network participant generates a corresponding event which only the second network participant detects.
Ein beispielhafter Ablauf eines Synchronisierungsverfahrens dieser Ausgestaltung ist für den das Ereignis generierenden Netzwerkteilnehmer in
Eine weitere Alternative ist ein gemeinsames Generieren des Ereignisses durch den ersten und den zweiten Netzwerkteilnehmer. Another alternative is to jointly generate the event by the first and second network subscribers.
Um eine ausreichend synchrone Übertragung der Wertfolgen durch die Netzwerkteilnehmer und damit eine bitgenaue Überlagerung der gesendeten Signale zu erreichen, ist das System in einer bevorzugten Ausgestaltung so ausgelegt, dass ein Ereignis von den beiden Netzwerkteilnehmern möglichst gleichzeitig detektiert wird und die Vorbereitungszeit zwischen der Detektion des Events und dem Aussenden der zu überlagernden Signale bzw. Wertfolgen möglichst gleich lang sein.In order to achieve a sufficiently synchronous transmission of the value sequences by the network subscribers and thus a bit-precise superimposition of the transmitted signals, the system is designed in a preferred embodiment so that an event is detected by the two network participants as possible simultaneously and the preparation time between the detection of the event and the transmission of the signals or value sequences to be superimposed to be as long as possible.
Sollte sich die Zeitdauer, die der erste und der zweite Netzwerkteilnehmer zur Detektion des Ereignisses benötigen (bspw. durch unterschiedliche Signallaufzeiten) bzw. sollte sich die Vorbereitungszeit der beiden Netzwerkteilnehmer unterscheiden, kann dies durch Verwendung unterschiedlicher Wartezeiten derart kompensiert werden, dass sich eine ausreichend synchrone Übertragung bzw. bitgenaue Überlagerung ergibt.If the time duration required by the first and the second network participant to detect the event (for example due to different signal delays) or the preparation time of the two network participants is different, this can be compensated by using different waiting times such that a sufficiently synchronous Transmission or bit-exact overlay results.
Analoges gilt, falls die beiden Netzwerkteilnehmer unterschiedliche Verfahrensabläufe haben, weil bspw. einer der Netzwerkteilnehmer das Ereignis selbst generiert. The same applies if the two network participants have different procedures, because, for example, one of the network participants generates the event itself.
Unterschiedliche Wartezeiten für die beiden Netzwerkteilnehmer können bspw. zu einem Entwicklungszeitpunkt konfiguriert oder während des normalen Betriebs durch ein geeignetes Messverfahren (bspw. Messung eines Round-Trip-Delays) dynamisch angepasst werden.Different waiting times for the two network subscribers can, for example, be configured at a development time or dynamically adjusted during normal operation by a suitable measuring method (for example, measurement of a round-trip delay).
Bei einem Ereignis kann es sich bspw. um ein dediziertes Signal handeln, das von einem oder beiden Netzwerkteilnehmer (Interrupt-basiert oder via Polling) über bspw. einen GPIO eingelesen wird.An event may, for example, be a dedicated signal that is read in by one or both network participants (interrupt-based or via polling) via, for example, a GPIO.
Unter der Prämisse, dass im Netzwerk eine einheitliche Zeit mit entsprechender Güte (= Genauigkeit) vorhanden ist, ist es auch möglich, absolute Zeitpunkte zu planen, zu denen ein neues kryptografisches Geheimnis nach den beschriebenen Verfahren etabliert werden soll. Die Planung der entsprechenden Zeitpunkte kann bereits zur Entwicklungszeit oder erst während der Laufzeit erfolgen. Zur Festlegung des Zeitpunkts eignen sich relative Festlegungen (bspw. alle / in 30 Minuten) genauso wie absolute Festlegungen in einer gemeinsam bekannten Zeitbasis (am 01.07.2015 – 12:00 Uhr). Um die globale Zeit unter allen Kommunikationspartner synchron zu halten, wird vorzugsweise ein Zeitsynchronisierungsverfahren eingesetzt. Dazu eignen sich Standardverfahren, wie bspw.
Besonders bevorzugt ist die Nutzung des gemeinsamen Kommunikationskanals bzw. Übertragungskanals der beiden Netzwerkteilnehmer zum Senden von Signalen oder Botschaften, die als das Ereignis zum Start der Geheimnisgenerierung bzw. zur Synchronisierung interpretiert werden. Dazu wird eine Botschaft vorzugsweise durch ein zuvor festgelegtes Merkmal als Ereignis charakterisiert. Hierzu eignet sich z.B. ein vorgegebener Wert im Datenfeld (oder einem Teil davon) einer Botschaft oder ein vorgegebener Message Identifier (oder einem Teil davon) bei einer Botschaft mit entsprechender Informationen (z.B. einer CAN-Botschaft). Bei zeitgesteuerten Kommunikationssystemen eignen sich bspw. auch zyklisch widerkehrende Nachrichten, bspw. eine „Reference Message“ aus einem TTCAN Schedule. Als weitere Alternative kann auch ein Frequenz-Multiplexing zur Anwendung kommen und so für die Generierung des Ereignisses eine andere Frequenz genutzt werden, um damit die eigentliche Kommunikation nicht zu stören.Particularly preferred is the use of the common communication channel or transmission channel of the two network participants for transmitting signals or messages, which are interpreted as the event for the start of the secret generation or for synchronization. For this purpose, a message is preferably characterized by a previously defined feature as an event. For this purpose, e.g. a predetermined value in the data field (or part thereof) of a message or a given message identifier (or part thereof) at a message with corresponding information (e.g., a CAN message). In the case of time-controlled communication systems, for example, cyclically recurring messages are also suitable, for example a "reference message" from a TTCAN schedule. As a further alternative, a frequency multiplexing may be used and so be used for the generation of the event another frequency, so as not to interfere with the actual communication.
In einer alternativen Ausgestaltung weist das System, dem die beiden Netzwerkteilnehmer angehören, mehrere Kommunikationssysteme auf. Das Ereignis kann dann auf einem ersten der Kommunikationssysteme übertragen werden und das gemeinsame Geheimnis nach den beschriebenen Verfahren über ein zweites der Kommunikationssysteme etabliert werden.In an alternative embodiment, the system to which the two network subscribers belong comprises a plurality of communication systems. The event may then be transmitted on a first of the communication systems and the shared secret established according to the described methods via a second of the communication systems.
Die beschriebenen Verfahren eignen sich grundsätzlich auch dazu, mehr als nur zwei Kommunikationsknoten entsprechende zu synchronisieren.The described methods are basically also suitable for synchronizing more than just two communication nodes.
Für den Fall, dass die beiden Netzwerkteilnehmer mehrere Wertefolgen synchron übertragen müssen bzw. mehrere entsprechende synchrone Botschaften senden müssen (z.B. für die Generierung längerer Geheimnisse), können die beschriebenen Verfahren zur Synchronisierung mehrmals nacheinander ausgeführt werden, insbesondere zu neu festgelegten Zeitpunkten oder durch neu generierte und detektierte Ereignisse.In the event that the two network participants need to transmit multiple value sequences synchronously or have to send several corresponding synchronous messages (eg for the generation of longer secrets), the described method for synchronization can be performed several times in succession, especially at newly defined times or by newly generated and detected events.
ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- DE 102009002396 A1 [0007] DE 102009002396 A1 [0007]
- DE 102009045133 A1 [0007] DE 102009045133 A1 [0007]
- DE 102014208975 A1 [0008] DE 102014208975 A1 [0008]
- DE 102014209042 A1 [0008] DE 102014209042 A1 [0008]
- DE 102015207220 A1 [0009] DE 102015207220 A1 [0009]
Zitierte Nicht-PatentliteraturCited non-patent literature
- IEEE1588 [0077] IEEE1588 [0077]
- IEEE 802.1AS-Rev [0077] IEEE 802.1AS-Rev [0077]
Claims (20)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102015220048.5A DE102015220048A1 (en) | 2015-10-15 | 2015-10-15 | A method of creating a secret or key in a network |
PCT/EP2016/074271 WO2017064025A1 (en) | 2015-10-15 | 2016-10-11 | Method for generating a secret or a key in a network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102015220048.5A DE102015220048A1 (en) | 2015-10-15 | 2015-10-15 | A method of creating a secret or key in a network |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102015220048A1 true DE102015220048A1 (en) | 2017-04-20 |
Family
ID=57124022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102015220048.5A Pending DE102015220048A1 (en) | 2015-10-15 | 2015-10-15 | A method of creating a secret or key in a network |
Country Status (2)
Country | Link |
---|---|
DE (1) | DE102015220048A1 (en) |
WO (1) | WO2017064025A1 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102009002396A1 (en) | 2009-04-15 | 2010-10-21 | Robert Bosch Gmbh | Method for manipulation protection of a sensor and sensor data of the sensor and a sensor for this purpose |
DE102009045133A1 (en) | 2009-09-29 | 2011-03-31 | Robert Bosch Gmbh | Method for manipulation protection of sensor data and sensor for this purpose |
DE102015207220A1 (en) | 2014-04-28 | 2015-10-29 | Robert Bosch Gmbh | A method of creating a secret or key in a network |
DE102014208975A1 (en) | 2014-05-13 | 2015-11-19 | Robert Bosch Gmbh | A method for generating a key in a network and subscribers to a network and network |
DE102014209042A1 (en) | 2014-05-13 | 2015-11-19 | Robert Bosch Gmbh | Method and device for generating a secret key |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102012215326A1 (en) * | 2012-08-29 | 2014-03-06 | Robert Bosch Gmbh | Method for determining cryptographic key in network in area of mobile communication, involves determining channel information relative to transmission channel based on pilot signal and determining cryptographic key using channel information |
-
2015
- 2015-10-15 DE DE102015220048.5A patent/DE102015220048A1/en active Pending
-
2016
- 2016-10-11 WO PCT/EP2016/074271 patent/WO2017064025A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102009002396A1 (en) | 2009-04-15 | 2010-10-21 | Robert Bosch Gmbh | Method for manipulation protection of a sensor and sensor data of the sensor and a sensor for this purpose |
DE102009045133A1 (en) | 2009-09-29 | 2011-03-31 | Robert Bosch Gmbh | Method for manipulation protection of sensor data and sensor for this purpose |
DE102015207220A1 (en) | 2014-04-28 | 2015-10-29 | Robert Bosch Gmbh | A method of creating a secret or key in a network |
DE102014208975A1 (en) | 2014-05-13 | 2015-11-19 | Robert Bosch Gmbh | A method for generating a key in a network and subscribers to a network and network |
DE102014209042A1 (en) | 2014-05-13 | 2015-11-19 | Robert Bosch Gmbh | Method and device for generating a secret key |
Non-Patent Citations (2)
Title |
---|
IEEE 802.1AS-Rev |
IEEE1588 |
Also Published As
Publication number | Publication date |
---|---|
WO2017064025A1 (en) | 2017-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3138258B1 (en) | Method for generating a secret or a key in a network | |
DE102015220038A1 (en) | A method of creating a secret or key in a network | |
DE102016208451A1 (en) | A method of creating a secret or key in a network | |
EP3363145B1 (en) | Method and device for producing a common secret | |
EP3298721A1 (en) | Method for generating a secret or a key in a network | |
EP3363146B1 (en) | Method for generating a key in a circuit assembly | |
WO2017064027A1 (en) | Method for generating a secret or a key in a network | |
WO2017064124A1 (en) | Circuit arrangement for producing a secret or a key in a network | |
WO2017064075A1 (en) | Circuit arrangement for generating a secret or key in a network | |
DE102015220048A1 (en) | A method of creating a secret or key in a network | |
DE102016208453A1 (en) | A method of creating a secret or key in a network | |
DE102015220026A1 (en) | A method for creating a secret for a one-time encryption in a network | |
WO2017064067A1 (en) | Method for generating a key in a network and for activating the securing of communication in the network on the basis of the key | |
DE102015220045A1 (en) | A method of creating a secret or key in a network | |
DE102015220024A1 (en) | A method of creating a secret or key in a network | |
DE102015219989A1 (en) | A method and apparatus for refreshing a shared secret, in particular a symmetric cryptographic key, between a first node and a second node of a communication system | |
DE102016208452A1 (en) | A method of creating a secret or key in a network | |
DE102016208448A1 (en) | A method of creating a secret or key in a network | |
WO2017064002A1 (en) | Method and device for generating a joint secret | |
DE102015219991A1 (en) | Method and apparatus for establishing a shared secret | |
DE102016208442A1 (en) | A method of creating a secret or key in a network | |
DE102016208444A1 (en) | A method of creating a secret or key in a network | |
DE102016208449A1 (en) | A method of creating a secret or key in a network | |
DE102016208445A1 (en) | A method of creating a secret or key in a network | |
DE102015219995A1 (en) | Method and apparatus for generating a common key in a fieldbus system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed |