[go: up one dir, main page]

DE102023124254B4 - Method for pairing a first device with a second device - Google Patents

Method for pairing a first device with a second device Download PDF

Info

Publication number
DE102023124254B4
DE102023124254B4 DE102023124254.7A DE102023124254A DE102023124254B4 DE 102023124254 B4 DE102023124254 B4 DE 102023124254B4 DE 102023124254 A DE102023124254 A DE 102023124254A DE 102023124254 B4 DE102023124254 B4 DE 102023124254B4
Authority
DE
Germany
Prior art keywords
kixt
key
information
adv
pairing
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.)
Active
Application number
DE102023124254.7A
Other languages
German (de)
Other versions
DE102023124254A1 (en
Inventor
gleich Patentinhaber Erfinder
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE102023124254.7A priority Critical patent/DE102023124254B4/en
Priority to PCT/EP2024/074862 priority patent/WO2025051877A1/en
Publication of DE102023124254A1 publication Critical patent/DE102023124254A1/en
Application granted granted Critical
Publication of DE102023124254B4 publication Critical patent/DE102023124254B4/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/50Secure pairing of devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Verfahren zum Paaren eines ersten Geräts mit einem zweiten Gerät über einen drahtlosen Kanal, wobei das erste Gerät von dem zweiten Gerät über den Kanal Information empfängt, die für das zweite Gerät kennzeichnend ist, wobei das erste Gerät mittels eines vorbestimmten Algorithmus auf der Basis der empfangenen Information einen ersten Schlüssel des ersten Geräts erzeugt, wobei die Information sowie der vorbestimmte Algorithmus dieselben sind, die dem zweiten Gerät zur Erzeugung eines ersten Schlüssels des zweiten Geräts dienen, derart, dass beide erste Schlüssel beider Geräte genau gleich sind. A method for pairing a first device with a second device via a wireless channel, wherein the first device receives information characteristic of the second device from the second device via the channel, wherein the first device generates a first key of the first device by means of a predetermined algorithm on the basis of the received information, wherein the information and the predetermined algorithm are the same as those used by the second device to generate a first key of the second device, such that both first keys of both devices are exactly the same.

Description

Technisches GebietTechnical field

Die vorliegende Erfindung betrifft Verfahren zum Paaren eines ersten Geräts mit einem zweiten Gerät. Hierbei befasst sich die Erfindung mit der sicheren Kopplung von Bluetooth-Low-Energy-Geräten. Bluetooth Low Energy (BLE) ist eine Funk-Übertragungstechnik für zwei direkt gekoppelte Geräte, die ein Frequenzband zwischen 2,404 GHz und 2,480 GHz nutzt und auf minimalen Energiebedarf optimiert ist.The present invention relates to methods for pairing a first device with a second device. The invention focuses on the secure coupling of Bluetooth Low Energy devices. Bluetooth Low Energy (BLE) is a wireless transmission technology for two directly coupled devices that uses a frequency band between 2.404 GHz and 2.480 GHz and is optimized for minimal energy consumption.

Stand der TechnikState of the art

Zum Koppeln der Geräte miteinander muss zunächst eine Initialisierung der Bluetooth-Verbindung (BT-Verbindung) mittels eines Initialisierungsschlüssels durchgeführt werden. Hierzu muss ein und derselbe Initialisierungsschlüssel auf beide Geräte gelangen. Der Prozess des Erzeugens eines oder mehrerer gemeinsamer Schlüssel wird als Paaren oder Pairing bezeichnet; der Prozess des Speicherns der beim Paaren erzeugten gemeinsamen Schlüssel zur Verwendung bei späteren Verbindungen, um ein vertrauenswürdiges Gerätepaar zu bilden, wird als Bonding bezeichnet.To pair the devices, the Bluetooth (BT) connection must first be initialized using an initialization key. This requires the same initialization key to be sent to both devices. The process of generating one or more shared keys is called pairing; the process of storing the shared keys generated during pairing for use in subsequent connections to form a trusted pair of devices is called bonding.

Zum Paaren zweier Geräte wird gemäß dem Stand der Technik entweder der Initialisierungsschlüssel von einem Gerät erzeugt und dann auf das andere Gerät übertragen, oder der Initialisierungsschlüssel auf einem Gerät angezeigt und auf dem zweiten eingegeben, oder aber er wird jeweils in beide Geräte eingegeben. Hierfür gibt es mehrere sogenannte Assoziations-Modelle, und zwar „Just Works“, „Numeric Comparison“, „Out of Band“ und „Passkey Entry“, die jeweils in Kombination mit einem Authentifizierungsverfahren - Legacy-Authentifizierung oder sichere Authentifizierung - angewendet werden.To pair two devices, the current state of the art involves either generating the initialization key from one device and then transferring it to the other, displaying the initialization key on one device and entering it on the second, or entering it on both devices. Several association models exist for this purpose: "Just Works," "Numeric Comparison," "Out of Band," and "Passkey Entry," each of which is used in combination with an authentication method—legacy authentication or secure authentication.

Just WorksJust Works

Just Works ist in erster Linie für Szenarien gedacht, in denen mindestens eines der Geräte weder über ein Display, das eine sechsstellige Zahl anzeigen kann, noch über eine Tastatur verfügt. Bei Just Works muss der Initialisierungsschlüssel über BLE übertragen werden. Dies bietet Gefahr zum Abhören.Just Works is primarily intended for scenarios where at least one of the devices has neither a display capable of displaying a six-digit number nor a keypad. With Just Works, the initialization key must be transmitted via BLE, which poses a risk of eavesdropping.

Numeric ComparisonNumerical Comparison

Numeric-Comparison ist für Szenarien gedacht, in denen beide Geräte eine sechsstellige Zahl anzeigen können und in beiden Fällen Benutzer „Ja“ oder „Nein“ in sein Gerät eingeben können. Den Benutzern wird auf beiden Displays eine sechsstellige Zahl (von „000000“ bis „999999“) angezeigt, und sie werden dann gefragt, ob die Zahlen auf beiden Geräten übereinstimmen. Wenn auf beiden Geräten „ja“ eingegeben wird, ist die Kopplung erfolgreich. Bei Numeric Comparison muss ebenfalls der Initialisierungsschlüssel über BLE übertragen werden. Dies bietet wiederum Gefahr zum Abhören.Numeric Comparison is intended for scenarios where both devices can display a six-digit number, and in both cases, users can enter "yes" or "no" into their device. Users are shown a six-digit number (from "000000" to "999999") on both displays and are then asked if the numbers match on both devices. If "yes" is entered on both devices, pairing is successful. Numeric Comparison also requires the initialization key to be transmitted over BLE. This, in turn, poses a risk of eavesdropping.

Out-of-BandOut-of-band

Out-of-Band ist für Szenarien konzipiert, in denen ein Kanal verwendet wird, der kein BT-Kanal ist, um sowohl die Geräte zu erkennen als auch kryptografische Informationen auszutauschen oder zu übertragen, die im Kopplungsprozess verwendet werden. Out-of-Band ist eine flexible Option für Entwickler, mit der sie einige ihrer eigenen Kopplungsmechanismen definieren können, sodass die Sicherheitsstufe von der Out-of-Band-Schutzfunktion abhängt. Bei Out-of-Band wird demnach ein zusätzlicher Kommunikations-Kanal zur Übertragung des Initialisierungs-Schlüssels benötigt.Out-of-band is designed for scenarios where a non-BT channel is used to both discover the devices and exchange or transmit cryptographic information used in the pairing process. Out-of-band provides a flexible option for developers, allowing them to define some of their own pairing mechanisms, so the level of security depends on the out-of-band protection feature. Out-of-band therefore requires an additional communication channel to transmit the initialization key.

Passkey EntryPasskey Entry

Passkey Entry ist in erster Linie für das Szenario konzipiert, in dem ein Gerät Eingabefähigkeiten hat, aber nicht die Fähigkeit hat, sechs Ziffern anzuzeigen, und das andere Gerät Ausgabe-Fähigkeiten hat. Beim Passkey Entry braucht die eine Seite demnach ein Display und die andere Seite eine Eingabemöglichkeit. Dem Benutzer wird eine sechsstellige Zahl (von „000000“ bis „999999“) auf dem Gerät mit Display angezeigt, und er wird dann aufgefordert, die Zahl auf dem anderen Gerät einzugeben. Wenn die auf dem zweiten Gerät eingegebene Zahl korrekt ist, ist die Kopplung erfolgreich.Passkey Entry is primarily designed for the scenario where one device has input capabilities but lacks the ability to display six digits, and the other device has output capabilities. With Passkey Entry, one side needs a display, and the other side needs an input capability. The user is presented with a six-digit number (from "000000" to "999999") on the device with the display and is then prompted to enter the number on the other device. If the number entered on the second device is correct, pairing is successful.

Technisches ProblemTechnical problem

Bei drahtlosem Verbindungsaufbau zwischen zwei Geräten sind insbesondere BLE-Verbindungen anfällig für „Man-in-the-Middle" (MITM)-Angriffe. Ein MITM-Angriff liegt vor, wenn der Benutzer des einen Geräts eine Verbindung mit dem anderen Gerät herstellen möchte, aber anstatt eine direkte Verbindung mit dem anderen Gerät herzustellen, sich unwissentlich mit einem dritten (angreifenden) Gerät verbindet, das die Rolle des Geräts spielt, mit dem er die Verbindung eigentlich herstellen möchte. Das dritte Gerät leitet dann Informationen zwischen den beiden Geräten weiter und erweckt den Eindruck, dass sie direkt miteinander verbunden sind.When establishing a wireless connection between two devices, BLE connections are particularly vulnerable to "man-in-the-middle" (MITM) attacks. A MITM attack occurs when the user of one device wants to establish a connection with the other device, but instead of establishing a direct connection with the other device, unknowingly connects to a third (attacking) device that plays the role of the device with which the connection is actually intended. The third device then relays information between the two devices, creating the impression that they are directly connected.

Das angreifende dritte Gerät kann sogar die Kommunikation zwischen den beiden Geräten belauschen (aktives Abhören) und ist in der Lage, Informationen in die Verbindung einzufügen und zu verändern. Bei dieser Art von Angriff werden alle zwischen den beiden Geräten ausgetauschten Informationen kompromittiert, und der Angreifer kann Befehle und Informationen in jedes der Geräte einspeisen und so möglicherweise die Funktion der Geräte beeinträchtigen. Geräte, die dem Angriff zum Opfer fallen, können nur dann kommunizieren, wenn der Angreifer anwesend ist. Wenn der Angreifer nicht aktiv ist oder sich außerhalb der Reichweite befindet, können die beiden Opfergeräte nicht direkt miteinander kommunizieren, und der Benutzer wird dies bemerken.The attacking third device can even eavesdrop on the communication between the two devices (active eavesdropping) and is able to insert and modify information in the connection. In this type of attack, all The information exchanged between the two devices is compromised, and the attacker can inject commands and information into each device, potentially compromising their functionality. Devices that fall victim to the attack can only communicate when the attacker is present. If the attacker is inactive or out of range, the two victim devices cannot communicate directly with each other, and the user will notice.

Passives Abhören ist der Prozess, bei dem ein drittes Gerät die Daten abhört, die zwischen den beiden gekoppelten Geräten ausgetauscht werden. Hier ergibt sich ein Problem, wenn beim Schlüsselaustausch der Initialisierungsschlüssel mitgelesen wird.Passive eavesdropping is the process by which a third device listens to the data exchanged between two paired devices. This poses a problem if the initialization key is intercepted during the key exchange.

Die oben beschriebenen Kopplungsverfahren (Assoziationsmodelle) sind anfällig gegen MITM-Angriffe, weil der gemeinsame Initialisierungsschlüssel vom einen auf das andere Gerät übertragen werden muss oder - im Fall des „Passkey Entry“-Verfahrens - auf dem einen Gerät offen angezeigt werden muss.The coupling methods (association models) described above are vulnerable to MITM attacks because the shared initialization key must be transferred from one device to the other or - in the case of the "passkey entry" method - must be openly displayed on one device.

Beim „Passkey-Entry“-Verfahren braucht die eine Seite ein Display und die andere Seite eine Eingabemöglichkeit.With the passkey entry method, one side needs a display and the other side needs an input option.

Beim „Out-Of-Band“-Verfahren wird ein zusätzlicher Kommunikations-Kanal zur Übertragung des Initialisierungs-Schlüssels benötigt.The “out-of-band” method requires an additional communication channel to transmit the initialization key.

US2023052917A1 betrifft eine Paarungsmethode, die auf ein Nahbereichskommunikationssystem angewendet wird. Die Methode umfasst: Ein erstes drahtloses Gerät erhält ein erstes Passwort, wobei das erste Passwort von dem ersten drahtlosen Gerät und einem zweiten drahtlosen Gerät gemeinsam genutzt wird; und das erste drahtlose Gerät paart sich mit dem zweiten drahtlosen Gerät auf der Grundlage eines passwortbasierten authentifizierten Schlüsselaustauschprotokolls (PAKE) und indem das erste Passwort als Verschlüsselungspasswort in einem Schlüsselaustauschprozess verwendet wird. Dass der Algorithmus zur Erzeugung der Initialisierungsschlüssel in beiden Geräten derselbe ist, ist nicht offenbart. US2023052917A1 relates to a pairing method applied to a short-range communication system. The method comprises: a first wireless device obtaining a first password, the first password being shared between the first wireless device and a second wireless device; and the first wireless device pairing with the second wireless device based on a password-based authenticated key exchange (PAKE) protocol and using the first password as an encryption password in a key exchange process. It is not disclosed that the algorithm for generating the initialization keys is the same in both devices.

US2015222517A1 betrifft ein Kommunikationsprotokoll, bei dem beim Paaren zweier Partner ein shared secret unter Verwendung von Information, die out-of-band zwischen den beiden Partnern ausgetauscht wird, erzeugt wird. Dass der Algorithmus zur Erzeugung der Initialisierungsschlüssel in beiden Geräten derselbe ist, ist nicht offenbart. US2015222517A1 relates to a communication protocol in which, when two partners pair, a shared secret is generated using information exchanged out-of-band between the two partners. It is not disclosed that the algorithm for generating the initialization keys is the same in both devices.

US 2022/0322101 A1 betrifft das Teilen von Ressourcen zwischen drahtlosen Netzwerken. Das Paaren zweier Geräte ist nicht beschrieben. US 2022/0322101 A1 concerns the sharing of resources between wireless networks. Pairing two devices is not described.

US10299300B1 betrifft ein Verfahren zum Anbinden drahtloser Audiogeräte. Nicht beschrieben ist, wie etwaige Initialisierungsschlüssel erzeugt und/oder verteilt werden. US10299300B1 relates to a method for connecting wireless audio devices. It does not describe how any initialization keys are generated and/or distributed.

US 2023/0041669 A1 betrifft ein Bluetooth-Verbindungsverfahren, bei dem beim Paaren geheim zu haltende Informationen ausgetauscht werden. US 2023/0041669 A1 refers to a Bluetooth connection method in which confidential information is exchanged during pairing.

Kurzbeschreibung der ErfindungBrief description of the invention

Aufgabe ist es daher, Verfahren zum Paaren, also zur erstmaligen Kopplung zweier Geräte bereitzustellen, welche die Anfälligkeit gegenüber MITM-Angriffen und passivem Abhören beseitigen. Ferner ist es Aufgabe, entsprechend ausgestaltete Geräte bereitzustellen.The task is therefore to provide methods for pairing, i.e., for the initial connection of two devices, that eliminate vulnerability to MITM attacks and passive eavesdropping. Furthermore, it is necessary to provide appropriately designed devices.

Diese Aufgabe wird durch Verfahren bzw. durch Geräte gemäß den Ansprüchen gelöst.This object is achieved by methods or devices according to the claims.

Bereitgestellt wird demnach ein Verfahren zum Paaren eines ersten Geräts mit einem zweiten Gerät über einen drahtlosen Kanal, wobei

  • das erste Gerät von dem zweiten Gerät über den Kanal Information empfängt, die für das zweite Gerät kennzeichnend ist, wobei das erste Gerät mittels eines vorbestimmten Algorithmus auf der Basis der empfangenen Information einen ersten Schlüssel erzeugt, wobei
  • die Information sowie der vorbestimmte Algorithmus dieselben sind, die dem zweiten Gerät zur Erzeugung eines ersten Schlüssels dienen, derart, dass beide erste Schlüssel genau gleich sind,
  • wobei kein erster Schlüssel ausgetauscht wird.
Accordingly, a method is provided for pairing a first device with a second device via a wireless channel, wherein
  • the first device receives information characteristic of the second device from the second device via the channel, the first device generating a first key by means of a predetermined algorithm on the basis of the received information,
  • the information and the predetermined algorithm are the same as those used by the second device to generate a first key, such that both first keys are exactly the same,
  • where no first key is exchanged.

Hierbei kann das erste Gerät nach Empfang der Information an das zweite Gerät eine Anforderung zum Aufbau einer Verbindung senden, wobei die Anforderung eine Information enthält, welche kennzeichnend für das erste Gerät ist, sowie die Information, die kennzeichnend für das zweite Gerät ist.In this case, after receiving the information, the first device can send a request to the second device to establish a connection, wherein the request contains information which is characteristic of the first device and the information which is characteristic of the second device.

Ferner kann das erste Gerät nach Senden der Anforderung in einen Verbindungsaufbauzustand überwechseln und das erste Gerät in dem Verbindungsaufbauzustand mit dem zweiten Gerät Informationen zur Paarung austauschen, bevor es den ersten Schlüssel generiert.Furthermore, after sending the request, the first device may enter a connection establishment state, and in the connection establishment state, the first device may exchange pairing information with the second device before generating the first key.

Die Erfindung umfasst auch ein Verfahren zum Paaren eines ersten Geräts mit einem zweiten Gerät über einen drahtlosen Kanal, wobei das zweite Gerät dem ersten Gerät über den Kanal Information sendet, die für das zweite Gerät kennzeichnend ist, wobei
das zweite Gerät mittels eines vorbestimmten Algorithmus auf der Basis der Information einen ersten Schlüssel erzeugt, wobei
die Information sowie der vorbestimmte Algorithmus dieselben sind, die dem ersten Gerät zur Erzeugung eines ersten Schlüssels dienen, derart, dass beide erste Schlüssel genau gleich sind,
wobei kein erster Schlüssel ausgetauscht wird.
The invention also includes a method for pairing a first device with a second device via a wireless channel, wherein the second device sends information to the first device over the channel that is characteristic of the second device, where
the second device generates a first key based on the information by means of a predetermined algorithm, wherein
the information and the predetermined algorithm are the same as those used by the first device to generate a first key, such that both first keys are exactly the same,
where no first key is exchanged.

Hierbei kann das zweite Gerät nach Senden der Information von dem ersten Gerät eine Anforderung zum Aufbau einer Verbindung empfangen, wobei die Anforderung eine Information enthält, welche kennzeichnend für das erste Gerät ist, sowie die Information, die kennzeichnend für das zweite Gerät ist.Here, after sending the information from the first device, the second device can receive a request to establish a connection, wherein the request contains information which is characteristic of the first device and the information which is characteristic of the second device.

Ferner kann hierbei das zweite Gerät nach Empfangen der Anforderung in einen Verbindungsaufbauzustand (Connection Established) überwechseln, wobei das zweite Gerät in dem Verbindungsaufbauzustand mit dem ersten Gerät Informationen zur Paarung austauschen, vorzugsweise bevor es den ersten Schlüssel generiert.Furthermore, after receiving the request, the second device can switch to a connection establishment state (Connection Established), wherein the second device exchanges pairing information with the first device in the connection establishment state, preferably before it generates the first key.

Der vorbestimmte Algorithmus muss für dritte Geräte - und auch für jede dritte Person - geheim sein.The predetermined algorithm must be secret for third-party devices - and also for any third person.

Die beiden ersten Schlüssel müssen identisch sein.The first two keys must be identical.

Das Paaren kann beim Aufbau einer peer-to-peer-Verbindung, insbesondere einer Bluetooth-Verbindung oder Bluetooth-Low-Energy-Verbindung, stattfinden. Dann ist die Information, die für das zweite Gerät kennzeichnend ist, Teil der Advertise-Daten, die das zweite Gerät beim Advertising aussendet und das erste Gerät empfängt.Pairing can occur when establishing a peer-to-peer connection, particularly a Bluetooth or Bluetooth Low Energy connection. In this case, the information specific to the second device is part of the advertising data that the second device sends during advertising and the first device receives.

Der Algorithmus muss im ersten Gerät und im zweiten Gerät implementiert sein.The algorithm must be implemented in the first device and the second device.

Die Information kann zumindest einen Teil einer Geräteadresse des ersten Geräts enthalten, insbesondere den Random Part der statischen Adresse, und/oder den Company Assigned Public MAC-Address Part.The information may contain at least part of a device address of the first device, in particular the random part of the static address, and/or the company assigned public MAC address part.

Der erste Schlüssel des ersten Geräts und/oder der erste Schlüssel des zweiten Geräts kann in seiner Länge abhängig durch Verlängern eines Address Part verlängert werden.The first key of the first device and/or the first key of the second device can be extended in length by extending an address part.

Zur Erzeugung des ersten Schlüssels auf dem ersten Gerät und dem zweiten Gerät kann zusätzlich oder alternativ zum Hash-Wert ein Hash-Algorithmus, ein Verschleierungs-Algorithmus, ein symmetrischer Verschlüsselungs-Algorithmus oder ein anderer Algorithmus oder eine Kombination der Algorithmen verwendet werden.To generate the first key on the first device and the second device, a hash algorithm, an obfuscation algorithm, a symmetric encryption algorithm or another algorithm or a combination of the algorithms may be used in addition to or alternatively to the hash value.

Der erste Schlüssel beider Geräte ist ein temporärer Schlüssel.The first key of both devices is a temporary key.

Basierend auf dem erzeugten ersten Schlüssel wird auf dem ersten Gerät und dem zweiten Gerät zumindest ein weiterer Schlüssel generiert und zum verschlüsselten Verteilen von transportspezifischen Schlüsseln zwischen dem ersten Gerät und dem zweiten Gerät verwendet.Based on the generated first key, at least one further key is generated on the first device and the second device and used for the encrypted distribution of transport-specific keys between the first device and the second device.

Das erste Gerät kann ein Peripheriegerät oder ein Telekommunikationsgerät, insbesondere ein tragbares Telekommunikationsendgerät, sein und auch das zweite Gerät kann ein Peripheriegerät oder ein Telekommunikationsgerät, insbesondere ein tragbares Telekommunikationsendgerät, sein.The first device may be a peripheral device or a telecommunications device, in particular a portable telecommunications terminal, and the second device may also be a peripheral device or a telecommunications device, in particular a portable telecommunications terminal.

Das erste Gerät kann speziell ein Peripheriegerät und das zweite Gerät ein TK-Gerät sein.The first device can specifically be a peripheral device and the second device a telecommunications device.

Das erste Gerät kann ein TK-Gerät und das zweite Gerät ein Peripheriegerät sein.The first device can be a telecommunications device and the second device a peripheral device.

Das erste Gerät und das zweite Gerät können jeweils ein Peripheriegerät sein.The first device and the second device can each be a peripheral device.

Des Weiteren umfasst die Erfindung ein erstes Gerät, ausgestaltet, sich mit einem zweiten Gerät über einen drahtlosen Kanal zu paaren, wobei

  • das erste Gerät ausgestaltet ist, von dem zweiten Gerät über den Kanal eine Information zu empfangen, die für das zweite Gerät kennzeichnend ist, wobei
  • das erste Gerät einen vorbestimmten Algorithmus enthält, der ihm erlaubt auf der Basis der empfangenen Information, einen ersten Schlüssel zu erzeugen, wobei
  • die Information sowie der vorbestimmte Algorithmus dieselben sind, die dem zweiten Gerät zur Erzeugung eines ersten Schlüssels dienlich sind, derart, dass beide erste Schlüssel genau gleich sind, und
  • wobei kein erster Schlüssel ausgetauscht ist.
Furthermore, the invention comprises a first device configured to pair with a second device via a wireless channel, wherein
  • the first device is designed to receive from the second device via the channel information which is characteristic of the second device, wherein
  • the first device contains a predetermined algorithm that allows it to generate a first key based on the received information, wherein
  • the information and the predetermined algorithm are the same as those used by the second device to generate a first key, such that both first keys are exactly the same, and
  • where no first key is exchanged.

Auch umfasst die Erfindung ein zweites Gerät, ausgestaltet, sich mit einem ersten Gerät über einen drahtlosen Kanal zu paaren, wobei

  • das zweite Gerät ausgestaltet ist, dem ersten Gerät über den Kanal Information zu senden, die für das zweite Gerät kennzeichnend ist, wobei
  • das zweite Gerät einen vorbestimmten Algorithmus enthält, der ihm erlaubt, auf Basis der Information einen ersten Schlüssel zu erzeugen, wobei die Advertising-Information sowie der vorbestimmte Algorithmus dieselben sind, die dem ersten Gerät zur Erzeugung eines ersten Schlüssels dienlich sind, derart, dass beide erste Schlüssel genau gleich sind, und
  • wobei kein erster Schlüssel ausgetauscht ist.
The invention also includes a second device configured to pair with a first device via a wireless channel, wherein
  • the second device is configured to send information characteristic of the second device to the first device via the channel, wherein
  • the second device contains a predetermined algorithm that allows it to generate a first key on the basis of the information, wherein the advertising information and the predetermined algorithm are the same as those used by the first device to generate a first key, such that both first keys are exactly the same, and
  • where no first key is exchanged.

Bei den Geräten muss der vorbestimmte Algorithmus für dritte Geräte geheim sein.For the devices, the predetermined algorithm must be secret from third-party devices.

Die Geräte können in Weiterbildung der Erfindung sinngemäß in derselben Weise weiter ausgestaltet sein, dass sie die Verfahren gemäß den oben ausgeführten speziellen Ausgestaltungen ausführen können bzw. die oben genannten Eigenschaften besitzen.In a further development of the invention, the devices can be further designed in the same way so that they can carry out the methods according to the special embodiments described above or have the properties mentioned above.

Erfindungsgemäß wird also kein Initialisierungsschlüssel ausgetauscht. Es kann demnach kein Initialisierungsschlüssel durch einen „man-in-the-middle“-Angriff abgegriffen werden.According to the invention, no initialization key is exchanged. Therefore, no initialization key can be intercepted through a "man-in-the-middle" attack.

Kurzbeschreibung der FigurenShort description of the characters

Die Erfindung wird in Verbindung mit den Figuren näher beschrieben.

  • 1 zeigt den Ablauf der Kopplung zweier Bluetooth Low Energy Geräte gemäß einem Ausführungsbeispiel der Erfindung;
  • 2 zeigt ein Sequenzdiagramm, das den asynchronen Ablauf der Bluetooth-Low Energy Kommunikation beschreibt;
  • 3 illustriert die zugrunde liegenden Bluetooth-Address-Typen;
  • 4 illustriert Datenformate der Advertising-Daten verschiedener Schritte.
The invention is described in more detail in conjunction with the figures.
  • 1 shows the sequence of coupling two Bluetooth Low Energy devices according to an embodiment of the invention;
  • 2 shows a sequence diagram describing the asynchronous flow of Bluetooth Low Energy communication;
  • 3 illustrates the underlying Bluetooth address types;
  • 4 illustrates data formats of advertising data from different steps.

Detaillierte BeschreibungDetailed description

1 und 2 zeigen den Ablauf des Paarens (Pairing), also der erstmaligen Kopplung zweier BT-Geräte für eine Bluetooth-Low-Energy-Verbindung gemäß einem Ausführungsbeispiel der Erfindung. Die Schritte bzw. die Zustände, in welchen die Schritte durch die BT-Geräte ausgeführt werden, werden nachfolgend im Einzelnen erklärt. 1 zeigt die zeitliche Abfolge der Schritte beider Geräte, 2 zeigt den Ablauf der Schritte getrennt für die beiden BT-Geräte. 1 and 2 show the pairing process, i.e., the initial connection of two BT devices for a Bluetooth Low Energy connection according to an embodiment of the invention. The steps or the states in which the steps are executed by the BT devices are explained in detail below. 1 shows the chronological sequence of the steps of both devices, 2 shows the sequence of steps separately for the two BT devices.

Folgend der Terminologie des BT-Standards ist hierbei das Central Device CD dasjenige BT-Gerät, welches Peripheral Devices PD entdecken kann und die Fähigkeit hat, BLE-Verbindungen mit einem Peripheral Device aufzubauen. Das Peripheral Device PD kann mittels Aussenden von Advertise-Daten seine Bereitschaft kundtun, sich mit einem Central Device CD über eine BLE-Verbindung zu koppeln. Für den Aufbau von BT-Verbindungen gibt es prinzipiell mehrere Möglichkeiten, abhängig von der „Vorgeschichte“ der Geräte bzw. dem Zustand der Geräte, z.B. wenn die Geräte bereits gebonded sind oder eine Kopplung bisher einander nicht bekannter Geräte durchgeführt werden soll. Bei der vorliegenden Erfindung ist das Kopplungsverfahren über das Scanning (Central Scanner) relevant.Following the terminology of the BT standard, the Central Device CD is the BT device that can discover Peripheral Devices PD and has the ability to establish BLE connections with a Peripheral Device. The Peripheral Device PD can announce its willingness to pair with a Central Device CD via a BLE connection by sending advertise data. In principle, there are several options for establishing BT connections, depending on the "previous history" of the devices or their state, e.g., if the devices are already bonded or if previously unknown devices are to be paired. In the present invention, the pairing method via scanning (Central Scanner) is relevant.

Nachfolgend werden Gerätezustände und die zugehörigen Prozessschritte beschrieben, die beim Pairing eine Rolle spielen.The following describes device states and the associated process steps that play a role in pairing.

Peripheral Advertiser Adv_Norm 1Peripheral Advertiser Adv_Norm 1

Der Zustand „Peripheral Advertiser Adv_Norm“ 1 des PD ist ein Beispiel dafür, wie der Pairing-Prozess initiiert werden kann, ist jedoch nicht zwingend notwendig. Nach dem Start des Peripheral-Device wird im Normalfall vom Standby-Zustand des PD in den Advertiser-Zustand Adv_Norm 1 gewechselt. In diesem Zustand sendet das Peripheral Device etwa alle 1,5 - 2 Sekunden in einem Datenpaket (Protocol Data Unit - PDU) nur die Advertise-Daten gemäß 4a aus. In diesem Zustand wartet das Peripheral-Gerät 1 auf eine externe Benutzereingabe (User Event 2) zur Kopplung (Pairing) mit einem anderen Gerät CD oder auf den Verbindungsaufbau durch ein bereits gekoppeltes Gerät CD.The PD's "Peripheral Advertiser Adv_Norm" 1 state is an example of how the pairing process can be initiated, but is not mandatory. After the peripheral device is started, the PD normally switches from the standby state to the advertiser state Adv_Norm 1. In this state, the peripheral device sends only the advertise data according to the protocol data unit (PDU) in a data packet approximately every 1.5 - 2 seconds. 4a In this state, peripheral device 1 waits for an external user input (User Event 2) to pair with another device CD or for a connection to be established by an already paired device CD.

Wenn bereits eine Kopplung mit einem Central Device CD vorhanden ist, kann eine Verbindung zwischen CD und PD aufgebaut werden.If a connection with a Central Device CD already exists, a connection can be established between CD and PD.

Peripheral Advertiser Adv_Pair 4Peripheral Advertiser Adv_Pair 4

Alternativ wird das Peripheral-Device gleich im Advertise-Pair-Mode 4 gestartet, dann wird auch keine Benutzereingabe (User-Event 2) benötigt.Alternatively, the peripheral device is started in Advertise Pair Mode 4, in which case no user input (User Event 2) is required.

Im „Advertise-Pair“-Mode 4 wird das Peripheral-Device in kurzen Intervallen nach außen sichtbar gemacht.In “Advertise Pair” mode 4, the peripheral device is made visible to the outside world at short intervals.

Das PD sollte jedoch nur kurz in den Advertise-Pair-Mode 4 umgeschaltet werden. Das hat mehrere Gründe:

  • • Während dieser Phase ist es für alle Bluetooth-Geräte sichtbar.
  • • Damit kein fremdes Central-Device, dem derselbe Algorithmus zur „Sicheren Generierung des Initialisierungs-Keys (Kixt)“ bekannt ist, unerlaubt koppelt.
However, the PD should only be switched to Advertise Pair Mode 4 briefly. There are several reasons for this:
  • • During this phase it is visible to all Bluetooth devices.
  • • To prevent unauthorized coupling of a foreign central device that knows the same algorithm for “Secure generation of the initialization key (Kixt)”.

Damit sichergestellt ist, dass kein fremdes Central-Device eine Verbindung zum Peripheral-Device herstellen kann, wird das Peripheral-Device nur zu dem Zeitpunkt, an dem bewusst ein Pairing/Bonding ausgeführt werden soll, in den Advertise-Pair-Mode (Adv_Pair 4) umgeschaltet. Beim Bonding wird ein Advertising-Signal ADV_xxx für einen sehr begrenzten Zeitraum in kurzen Intervallen (beispielsweise ca. 25ms) ausgesendet. Innerhalb dieses Zeitraums wird auf den drei Advertise-Kanälen ein Advertise-Signal mit erweiterten Advertise-Daten gesendet (vgl. 4b oder 4c).To ensure that no external central device can establish a connection to the peripheral device, the peripheral device is switched to advertise pair mode (Adv_Pair 4) only at the time when pairing/bonding is to be performed. During bonding, an advertising signal ADV_xxx is transmitted for a very limited period of time at short intervals (for example, approximately 25 ms). Within this period, an advertise signal with extended advertise data is sent on the three advertise channels (see 4b or 4c ).

Diese erweiterten Advertise-Daten umfassen dann neben der MAC-Adresse und dem Header auch den Device-Namen (vgl. 4b). Mit diesem Device-Namen kann das Central-Device erkennen, ob ihm das Peripheral-Device bekannt ist und ob dieses denselben Algorithmus zur „Sicheren Generierung des Initialisierungs-Key (Kixt)“ verwendet. Zusätzlich zum Device-Namen kann in den Advertise-Daten auch ein Random-Start-Hash-Wert RSHW gesendet werden (vgl. 4c).This extended advertising data then includes the MAC address and the header as well as the device name (see 4b) . Using this device name, the central device can determine whether it recognizes the peripheral device and whether it uses the same algorithm for "Secure Generation of the Initialization Key (Kixt)." In addition to the device name, a random start hash value (RSHW) can also be sent in the advertise data (see 4c ).

Central Scan 5Central Scan 5

In diesem Zustand sucht das Central Device CD durch einen Scanner nach dem Peripheral Device PD, welches gekoppelt werden soll.In this state, the Central Device CD uses a scanner to search for the Peripheral Device PD that is to be paired.

Wenn das Central Device eine Kopplung durchführen soll, wird das Scannen der aktuellen Bluetooth-MAC-Adressen gestartet. Hierbei verwendet das CD einen Filter für den gesuchten Device-Namen (DevName; siehe weiter oben), mit dem es gekoppelt werden soll. Mithilfe des Device-Namens (DevName) kann das Central-Device erkennen, ob ihm das Peripheral-Device bekannt ist und ob das Peripheral-Device denselben Algorithmus zur „Sicheren Generierung des Initialisierungs-Keys (Kixt)“ verwendet.When the central device is to perform a pairing, it starts scanning the current Bluetooth MAC addresses. The CD uses a filter for the device name (DevName; see above) with which it is to be paired. Using the device name (DevName), the central device can determine whether it recognizes the peripheral device and whether the peripheral device uses the same algorithm for "Secure Initialization Key Generation (Kixt)."

Wird beim Scannen 5 dann ein bekanntes Peripheral-Device gefunden 6 bzw. ein Advertise-Paket mit den erwarteten Advertise-Daten empfangen (vgl. 4b oder 4c), wechselt das CD in den Initiating-Zustand. In diesem Zustand startet das CD einen Verbindungsaufbau 7. Hierzu sendet das CD einen Connection Request mit dem Datenpaket CONNECT_IND an das PD.If a known peripheral device is found during scanning 5 6 or an advertise packet with the expected advertise data is received (cf. 4b or 4c ), the CD switches to the initiating state. In this state, the CD initiates a connection setup. 7. To do so, the CD sends a connection request with the CONNECT_IND data packet to the PD.

Connection Established 7Connection Established 7

Nach Empfang des CONNECT_IND-Datenpakets durch das PD gilt die Verbindung zwischen den beiden Geräten CD und PD als aufgebaut (Zustand „Connection Established 7“).After the PD receives the CONNECT_IND data packet, the connection between the two devices CD and PD is considered established (state “Connection Established 7”).

Ab diesem Zeitpunkt kann der Temporary Key (Kixt) auf dem Central-Device generiert werden, da diesem nun die MAC-Adresse des Peripheral-Device bekannt ist. Zum besseren Verständnis wird dies in der Phase 2 Step 1 weiter unten beschrieben, da diese Phasenabfolge dem Standard entspricht.From this point on, the temporary key (Kixt) can be generated on the central device, as it now knows the MAC address of the peripheral device. For better understanding, this is described in Phase 2, Step 1 below, as this phase sequence corresponds to the standard.

Auf dem Peripheral-Device kann der Temporary Key (Kixt) hingegen zu jedem Zeitpunkt im Prozess generiert werden, also z.B. bereits unmittelbar nach dem Hochfahren, da dem PD seine eigene MAC-Adresse selbstverständlich bekannt ist und das PD hierzu keine Informationen vom dem CD benötigt.On the peripheral device, however, the temporary key (Kixt) can be generated at any time during the process, e.g. immediately after booting, since the PD naturally knows its own MAC address and does not require any information from the CD for this purpose.

Phase 1: Pairing Feature Exchange 8Phase 1: Pairing Feature Exchange 8

In Phase 1 erfolgt ein Pairing-Feature-Exchange 8. Dieser Schritt dient dem Austausch folgender Informationen:

  • • IO-Fähigkeiten: Fähigkeiten, die aussagen, auf welcher Seite eine Eingabe- und/oder Ausgabemöglichkeit vorhanden ist (vgl. BT-Standard);
  • • Verfügbarkeit von Out-of-Band-Authentifizierungsdaten;
  • • Authentifizierungsanforderungen - Sicherheitsanforderungen des GAP an den Kommunikations-Kanal;
  • • Schlüsselgrößenanforderungen - unterstützte Schlüssellängen (zwischen 56 und 128 Bit);
  • • die zu verteilenden transportspezifischen Schlüssel, also welche Schlüssel in Phase 2/3 ausgetauscht werden müssen.
In phase 1, a pairing feature exchange 8 takes place. This step serves to exchange the following information:
  • • IO capabilities: Capabilities that indicate on which side an input and/or output option is available (cf. BT standard);
  • • Availability of out-of-band authentication data;
  • • Authentication requirements - GAP security requirements for the communication channel;
  • • Key size requirements - supported key lengths (between 56 and 128 bits);
  • • the transport-specific keys to be distributed, i.e. which keys must be exchanged in phase 2/3.

Die ausgetauschten Informationen, wie die IO-Fähigkeiten, die Verfügbarkeit von OOB-Authentifizierungsdaten und die Authentifizierungsanforderungen, werden zur Bestimmung der in Phase 2 verwendeten Schlüsselgenerierungsmethode verwendet.The exchanged information, such as IO capabilities, availability of OOB authentication data, and authentication requirements, is used to determine the key generation method used in Phase 2.

Phase 2: Key Generation 9Phase 2: Key Generation 9

Beide Geräte leiten aus den in Phase 1 ausgetauschten „Pairing Feature Exchange Informationen“ ab, welches Authentifizierungsverfahren und welches Assoziations-Modell verwendet wird (siehe oben).Both devices derive from the “Pairing Feature Exchange Information” exchanged in Phase 1 which authentication method and association model is used (see above).

Phase 2 Step 1Phase 2 Step 1

Nach dem Stand der Technik (BLE-Standard) wird in Phase 2 Step 1 zunächst ein gemeinsamer Temporary Key (Kixt) ausgetauscht. Der Austausch des Temporary Key (Kixt) entfällt aber mit der Erfindung, die diesen Verfahrensschritt ersetzt. Erfindungsgemäß erfolgt demnach die sichere Generierung des Initialisierungs-Keys (Kixt) in Phase 2 Step 1 in folgender Weise:

  • • Die Generierung des Kixt erfolgt auf beiden Seiten (also auf dem Peripheral-Device und auf dem Central-Device) mit dem gleichen Generierungs-Algorithmus (siehe unten). Der Generierungs-Algorithmus muss dabei beiden Geräten bekannt sein.
  • • Der Algorithmus zur Generierung des Kixt wird dabei nicht offengelegt.
  • • Ist der Generierungs-Algorithmus nur einer Partei (meist der Partei, die das PD herstellt oder den Code erstellt und einprogrammiert, sehr selten des CD) bekannt, so kann diese Partei der anderen Partei zur Kixt-Generierung eine Library zur Verfügung stellen, damit der Generierungs-Algorithmus nicht allgemein und für dritte Geräte oder Personen offengelegt werden muss. Die Library wird dann im Rahmen der Programmierung der Geräte fest (meist statisch, seltener dynamisch) mit in den Code eingebunden. Eine Library sollte aber die Ausnahme sein, da der Generierungs-Algorithmus einfacher reproduziert werden kann und deshalb unsicherer ist. Dies liegt in der Verantwortung des Entwicklers. Die Library darf Dritten nicht zugänglich sein.
  • • Aufgrund der automatischen Generierung des Kixt auf beiden Geräten muss der Kixt nicht vom einen Gerät auf das andere übertragen werden. Daher besteht ein Schutz gegen passives Abhören sowie aktives Abhören (MITM).
  • • Der Kixt leitet sich von der MAC-Adresse des Peripheral-Device ab.
  • • Abhängig von der benötigten Kixt-Länge wird die MAC-Adresse verlängert.
  • • Abhängig vom Sicherheits-Level kann zur Generierung zusätzlich oder alternativ zum Hash-Wert ein Hash-, ein Verschleierungs-, ein symmetrischer Verschlüsselungs- oder ein anderer Algorithmus oder eine Kombination der Algorithmen verwendet werden. Meist ist ein einfacher Verschleierungs-Algorithmus ausreichend, da es sich beim Kixt nur um den Initialisierungs-Schlüssel handelt, der in diesem Verfahren gar nicht übertragen werden muss.
  • • Die Stärke des Kixt-Schlüssels ist so stark wie der Generierungs-Algorithmus, der in den verwendeten Geräten implementiert ist.
According to the state of the art (BLE standard), a common temporary key (Kixt) is first exchanged in Phase 2 Step 1. However, the exchange of the temporary key (Kixt) is no longer necessary with the invention, which replaces this method step. According to the invention, the secure generation The initialization key (Kixt) is generated in Phase 2 Step 1 as follows:
  • • The Kixt is generated on both sides (i.e., on the peripheral device and on the central device) using the same generation algorithm (see below). The generation algorithm must be known to both devices.
  • • The algorithm for generating the Kixt is not disclosed.
  • • If the generation algorithm is known to only one party (usually the party that manufactures the PD or creates and programs the code, very rarely the CD), this party can provide the other party with a library for Kixt generation so that the generation algorithm does not have to be disclosed generally to third parties or devices. The library is then permanently integrated into the code as part of the device programming (usually statically, rarely dynamically). However, a library should be the exception, as the generation algorithm can be reproduced more easily and is therefore less secure. This is the responsibility of the developer. The library must not be accessible to third parties.
  • • Because the Kixt is automatically generated on both devices, it doesn't need to be transferred from one device to the other. This provides protection against both passive eavesdropping and active eavesdropping (MITM).
  • • The Kixt is derived from the MAC address of the peripheral device.
  • • Depending on the required Kixt length, the MAC address is extended.
  • • Depending on the security level, a hash, obfuscation, symmetric encryption, or other algorithm, or a combination of algorithms, can be used in addition to or as an alternative to the hash value. A simple obfuscation algorithm is usually sufficient, since the Kixt is only the initialization key, which does not need to be transmitted in this process.
  • • The strength of the Kixt key is as strong as the generation algorithm implemented in the devices used.

Phase 2 Step 2Phase 2 Step 2

In diesem Verfahrensschritt 10 werden die weiteren Schlüssel generiert, die für den Pairing-Prozess erforderlich sind. Die Generierung der weiteren Schlüssel ist hierbei abhängig vom verwendeten Authentifizierungsverfahren.In this process step 10, the additional keys required for the pairing process are generated. The generation of the additional keys depends on the authentication method used.

Abhängig vom verwendeten Authentifizierungsverfahren LE Legacy Pairing oder LE Secure Connections Pairing unterscheidet sich die weitere Schlüsselgenerierung in Phase 2 und Phase 3. Dies ist dem Fachmann bekannt (vgl. BT-Standard):

  • • Der STK, der in Phase 2 bei Verwendung von LE Legacy Pairing erzeugt wird, oder
  • • der in Phase 2 und 3 erzeugte LTK bei Verwendung von LE Secure Connections oder
  • • der gemeinsame Verbindungsschlüssel, der mit Hilfe der BR/EDR-Kopplung erzeugt wurde (vgl. BT-Standard).
Depending on the authentication method used, LE Legacy Pairing or LE Secure Connections Pairing, the further key generation in Phase 2 and Phase 3 differs. This is known to the expert (see BT standard):
  • • The STK generated in Phase 2 when using LE Legacy Pairing, or
  • • the LTK generated in phases 2 and 3 when using LE Secure Connections or
  • • the common connection key generated using the BR/EDR coupling (see BT standard).

Am Ende der Phase 2 oder 3 werden die generierten Schlüssel jeweils auf beiden Seiten durch Übertragung von Confirm-Key-Daten auf Übereinstimmung miteinander verglichen.At the end of phase 2 or 3, the generated keys are compared on both sides for consistency by transmitting confirm key data.

Wenn die Confirm-Key-Daten nicht auf beiden Seiten übereinstimmen, wird der Kopplungsvorgang abgebrochen und das entsprechende Gerät sendet den Befehl „Pairing Failed“ (Kopplung fehlgeschlagen) mit dem Fehlercode (reason code) „Confirm Value Failed“ (Wert nicht bestätigt).If the Confirm Key data does not match on both sides, the pairing process is aborted and the corresponding device sends the command “Pairing Failed” with the error code “Confirm Value Failed”.

Phase 3Phase 3

Phase 3 Key Distribution 11 kann dann optional durchgeführt werden, um transportspezifische Schlüssel zu verteilen, z. B. den Wert des Identity Resolving Key (IRK) und die Identitäts-Adress-Informationen. Phase 1 und Phase 3 sind identisch, unabhängig von der Methode, die in Phase 2 angewandt wird.Phase 3 Key Distribution 11 can then optionally be performed to distribute transport-specific keys, such as the Identity Resolving Key (IRK) value and the identity address information. Phase 1 and Phase 3 are identical, regardless of the method used in Phase 2.

Generierung des Initialisierungs-Schlüssels KixtGeneration of the initialization key Kixt

Im Folgenden wird die erfindungsgemäße Generierung des Kixt näher erläutert. Wie oben beschrieben, wird der Kixt für beide Devices von der MAC-Adresse des Peripheral Device abgeleitet. Meist wird die Random-Static-MAC-Adresse oder von die Public-MAC-Adresse, in selten Fällen wird auch eine andere Geräteadresse, des Peripheral Device verwendet. Eine Übersicht der von BLE verwendeten Geräteadresse zeigt 3. Die Erläuterung der einzelnen Teile der Adresse erfolgt weiter unten.The inventive generation of the Kixt is explained in more detail below. As described above, the Kixt for both devices is derived from the MAC address of the peripheral device. Usually, the random-static MAC address or the public MAC address of the peripheral device is used, although in rare cases, another device address is used. An overview of the device addresses used by BLE is shown below. 3 . The individual parts of the address are explained below.

Zusätzlich zum Device_Name des PD kann der optional in den Advertise-Daten (Schritt 1) enthaltene 1 bis n Bytes lange Random-Start-Hash-Wert in die Generierung des Kixt eingehen.In addition to the Device_Name of the PD, the 1 to n byte long random start hash value optionally contained in the advertise data (step 1) can be included in the generation of the Kixt.

Abhängig vom Sicherheits-Level kann zur Generierung des Kixt zusätzlich oder alternativ zum Hash-Wert ein Verschleierungs-Algorithmus, ein symmetrischer Verschlüsselungs-Algorithmus oder ein anderer Algorithmus oder eine Kombination der Algorithmen verwendet werden. In diesem Fall sollte zur Generierung des Kixt zuerst ein Verschleierungs- und dann ein symmetrischer Verschlüsselungs-Algorithmus verwendet werden. In Ausnahmefällen, bei denen keine entsprechende Sicherheit benötigt wird, kann aber auch nur einer der beiden Algorithmen verwendet werden.Depending on the security level, the Kixt can be generated in addition to or alternatively to An obfuscation algorithm, a symmetric encryption algorithm, or another algorithm, or a combination of algorithms, can be used to generate the hash value. In this case, an obfuscation algorithm should be used first to generate the Kixt, followed by a symmetric encryption algorithm. However, in exceptional cases where appropriate security is not required, only one of the two algorithms can be used.

Wichtig ist, dass die App des Telekommunikationsgeräts CD und/oder PD vor dem Auslesen gesichert ist. Für die Mikrocontroller (MCU) des CD und/oder PD gilt dies auch, es muss also ein MCU-Flash-Schutz vorliegen.It is important that the app on the CD and/or PD telecommunications device is protected from being read. This also applies to the CD and/or PD microcontrollers (MCUs); therefore, MCU flash protection is required.

Derartige Algorithmen sind dem Fachmann bekannt und müssen hier nicht näher beschrieben werden.Such algorithms are known to those skilled in the art and need not be described in detail here.

Bei der Generierung des Kixt gilt es darauf zu achten, dass bei der Übertragung der Confirm-Key-Daten zum Abgleich der Schlüssel von der jeweils anderen Partei kein Rückschluss auf die verwendeten Generierungs-Algorithmen des Kixt gezogen werden kann.When generating the Kixt, it is important to ensure that when transmitting the confirm key data for key comparison, the other party cannot draw any conclusions about the Kixt generation algorithms used.

Im nächsten Schritt wird der Kixt als Initialisierungs-Schlüssel für die Berechnung des Short-/Long-Term-Key verwendet.In the next step, the Kixt is used as an initialization key for calculating the short/long-term key.

Genauere Beschreibung der Berechnung des Short-/Long-Term-Key siehe Bluetooth Core Specification „LE legacy pairing phase 2“ und „LE Secure Connections pairing phase 2“.For a more detailed description of the calculation of the short/long-term key, see Bluetooth Core Specification “LE legacy pairing phase 2” and “LE Secure Connections pairing phase 2”.

Bei der Generierung des Kixt muss nur eine Richtung - nämlich die Kodierung - implementiert werden. Die Dekodierung kann entfallen, da auf beiden Seiten der derselbe Kixt weiterverwendet wird, also symmetrisch verschlüsselt wird.When generating the Kixt, only one direction—encoding—needs to be implemented. Decoding is unnecessary because the same Kixt is reused on both sides, i.e., it is encrypted symmetrically.

Geeignete Verschlüsselungs-Algorithmen sind in der Bluetooth Core Specification an einigen Stellen beschrieben (vgl z.B. BT-Standard CRYPTOGRAPHIC TOOLBOX).Suitable encryption algorithms are described in some places in the Bluetooth Core Specification (see, for example, BT Standard CRYPTOGRAPHIC TOOLBOX).

Hash-Wert und SonderfälleHash value and special cases

Es gibt zwei Sonderfälle, nämlich 0x00 und 0xFF, bei denen die nachfolgenden Operationen so keine Wirkung haben und die deshalb durch spezielle Hash-Werte extra initialisiert werden müssen. Der Hash-Wert für jedes Byte der Sonderfälle muss abhängig von der Byte-Position und dem Start-Wert unterschiedlich sein. Hiermit soll verhindert werden, dass durch Iteration der MAC-Adresse der Algorithmus nicht reproduziert werden kann.There are two special cases, namely 0x00 and 0xFF, where the subsequent operations have no effect and therefore must be initialized with special hash values. The hash value for each byte in the special cases must be different depending on the byte position and the starting value. This is intended to prevent the algorithm from being reproduced by iterating the MAC address.

Dies kann durch Übertragung eines meist ein oder zwei (bzw. in Ausnahmefällen n) Bytes langen Random-Start-Hash-Werts vom Peripheral-Device 4 zum Central-Device im Advertise-Pair-Mode 5 erreicht werden. Der Random-Start-Hash-Wert auf dem Peripheral-Device muss persistent gespeichert werden. Bei jeder neuen Kopplung muss ein neuer Random-Wert generiert werden. Dieser Wert muss sich von den vorherigen Werten unterscheiden.This can be achieved by transmitting a random start hash value, usually one or two bytes (or, in exceptional cases, n bytes), from the peripheral device 4 to the central device in advertise pair mode 5. The random start hash value must be stored persistently on the peripheral device. A new random value must be generated for each new pairing. This value must be different from the previous values.

Der Random-Start-Hash-Wert dient als Startwert zur Berechnung der Sonderfälle. Jeder Sonderfall wird mit dem entsprechend berechneten Wert ersetzt. Für alle Bytes der Sonderfälle muss dann die folgende Berechnung und Ersetzung durchgeführt werden.The random start hash value serves as the starting value for calculating the special cases. Each special case is replaced with the corresponding calculated value. The following calculation and replacement must then be performed for all bytes of the special cases.

Der Random-Start-Hash-Wert kann auch mit der Quersumme der MAC-Addresse durch Modulo-Schlüsselgröße berechnet werden. Dies ist aber nicht so sicher wie der übertragene Wert.The random start hash value can also be calculated using the checksum of the MAC address modulo the key size. However, this is not as secure as the transmitted value.

Der Hash-Wert kann entweder in einer Tabelle gespeichert sein oder wird durch ein entsprechendes Polynom berechnet. Neuer Hash = RSHW + Byte Offset ( Sonderfall ) .

Figure DE102023124254B4_0001
.The hash value can either be stored in a table or calculated using an appropriate polynomial. Neuer Hash = RSHW + Byte Offset ( Sonderfall ) .
Figure DE102023124254B4_0001
.

VerschleierungConcealment

Bei der Verschleierung ist wichtig, dass nach der Verschleierung kein Rückschluss auf die anfängliche MAC-Adresse des Peripheral-Devices gezogen werden kann.When obfuscating, it is important that after obfuscation, no conclusions can be drawn about the initial MAC address of the peripheral device.

Die MAC-Adresse sollte bei der Generierung von Kixt auf die unterstützte Schlüssellängen erweitert werden.The MAC address should be extended to the supported key lengths when generating Kixt.

Es gibt 2 Sonderfälle, nämlich 0x00 und 0xFF, bei denen die nachfolgenden Operationen so keine Wirkung haben und die diese deshalb durch spezielle Hash-Werte extra initialisiert werden müssen. Der Hash-Wert für jedes Byte der Sonderfälle muss abhängig von der Byte-Position und dem Start-Wert unterschiedlich sein. Hiermit soll verhindert werden, dass durch Iteration der MAC-Adresse der Algorithmus nicht reproduziert werden kann.There are two special cases, namely 0x00 and 0xFF, where the subsequent operations have no effect and therefore must be initialized with special hash values. The hash value for each byte in the special cases must be different depending on the byte position and the starting value. This is intended to prevent the algorithm from being reproduced by iterating the MAC address.

Folgende Möglichkeiten stehen zur Verschleierung zur Verfügung (dies ist nur ein kleiner Ausschnitt):

  • • 1. Exchange (x): Vertauschung der ursprünglichen Byte-Reihenfolge
  • • 2. Exchange Nibble (n): Vertauschung Low- und High-Nibble (Halbbyte vertauschen)
  • • 3. Rotate (rx/lx): Bit-Rotationen durch Shift-Operation um n-Stellen in einem Byte entweder nach links oder rechts
  • • 4. Hash-Wert (h): Verwendung einer Hash-Wert-Berechnung
  • • 5. Algorithmus (a): Verwendung von unterschiedlichen Verschleierungs-Algorithmen abhängig
  • • 6. Andere Bit-Operationen sowie Kombination(en) der zuvor genannten Möglichkeiten
The following options are available for concealment (this is only a small selection):
  • • 1. Exchange (x): Exchange of the original byte order
  • • 2. Exchange Nibble (n): Swap low and high nibble (swap halfbytes)
  • • 3. Rotate (rx/lx): Bit rotations by shift operation by n positions in a byte either to the left or right
  • • 4. Hash value (h): Using a hash value calculation
  • • 5. Algorithm (a): Use of different obfuscation algorithms depending
  • • 6. Other bit operations and combination(s) of the previously mentioned possibilities

Einfaches Übersichts-Beispiel zu Punkt 6 für eine Schlüssellängen von 128 Bit (16 Byte) für Kixt.Simple overview example for point 6 for a key length of 128 bits (16 bytes) for Kixt.

Die ersten 6 Bytes werden durch Vertauschung der Byte-Reihenfolge und Vertauschung des Low- und High-Nibbles von jedem Byte erstellt. Die nächsten 6 Bytes werden durch Bit-Rotieren der einzelnen Bytes generiert und die restlichen 4 Bytes durch Vertauschung des Low- und High-Nibbles ab dem Byte-Offset 2.The first 6 bytes are created by swapping the byte order and swapping the low and high nibbles of each byte. The next 6 bytes are generated by bit rotating the individual bytes, and the remaining 4 bytes are generated by swapping the low and high nibbles starting at byte offset 2.

Komplexeres Übersichts-Beispiel zu Punkt 6 für eine Schlüssellänge von 128 Bit (16 Byte) für Kixt.More complex overview example for point 6 for a key length of 128 bits (16 bytes) for Kixt.

Gemischte Anwendung der Schritte 1-4, d. h. Vertauschen der Byte-Reihenfolge (Operation (Op.) 1), Vertauschen des Low- und High-Nibbles sowie Bit-Rotation durch Shift-Operation um n-Stellen in unterschiedliche Richtung in einem Byte (Op. 2+3) und Verwendung von 2 Bytes Hash-Wert.Mixed application of steps 1-4, i.e. swapping the byte order (Operation (Op.) 1), swapping the low and high nibbles and bit rotation by shift operation by n places in different directions in a byte (Op. 2+3) and use of 2 bytes hash value.

Derartige Verschleierung-Algorithmen sind dem Fachmann bekannt und müssen hier nicht näher beschrieben werden.Such obfuscation algorithms are known to those skilled in the art and need not be described in detail here.

Symmetrische VerschlüsselungSymmetric encryption

Quelle: https://www.elektronik-kompendium.de/sites/net/1907041.htm (zuletzt aufgerufen am 16.08.2023 )Source: https://www.elektronik-kompendium.de/sites/net/1907041.htm (last accessed on 16.08.2023 )

Quelle: http://ddi.cs.uni-potsdam.de/Lehre/e-commerce/elBez2-5/page05.html (zuletzt aufgerufen am 16.08.2023 )Source: http://ddi.cs.uni-potsdam.de/Lehre/e-commerce/elBez2-5/page05.html (last accessed on 16.08.2023 )

Die symmetrische Verschlüsselung wird auch als Secret-Key-Verfahren bezeichnet. Es basiert auf einer mathematischen Funktion, die einen Klartext in Abhängigkeit eines Schlüssels (digitaler Code) in einen Geheimtext umwandelt.Symmetric encryption is also known as secret-key encryption. It is based on a mathematical function that converts plaintext into ciphertext based on a key (digital code).

Symmetrische Verschlüsselung - hier sind bereits einige Verfahren genormt.Symmetric encryption – some methods have already been standardized.

Beispiel: DES (Data Encryption Standard), Triple-DES (auch als TDES, 3DES oder DESede bezeichnet), AES (Advanced Encryption Standard), IDEA (International Data Encryption Algorithm), Blowfish, Twofish, CAST-128, CAST-256, Fox und so weiter.Example: DES (Data Encryption Standard), Triple-DES (also known as TDES, 3DES or DESede), AES (Advanced Encryption Standard), IDEA (International Data Encryption Algorithm), Blowfish, Twofish, CAST-128, CAST-256, Fox and so on.

Arten von Bluetooth-MAC-AdressenTypes of Bluetooth MAC addresses

3 zeigt die Arten von MAC-Adressen, die bei Bluetooth-Verbindungen verwendet werden. Die Media Access Control (MAC)-Adresse ist die Bluetooth-Geräteadresse. Diese 48-Bit (6-Byte)-Nummer identifiziert ein Gerät unter Peers eindeutig. Es gibt mehrere Arten von Geräteadressen, von denen meist nur die Static Random Address und die Public Address, in selten Fällen auch eine andere, für diese Erfindung relevant sind:

  • • Public MAC Address (PMA) / öffentliche MAC-Adresse:
    • Dies ist eine globale, feste Adresse. Sie muss bei der IEEE Registration Authority registriert werden und ändert sich während der Lebensdauer des Geräts nicht. Die PMA ist in zwei Teile aufgeteilt:
      • Ein fester Teil (24 Bit), der öffentlich ist und von IEEE Standards
      • Association fest vergeben wird. Dieser Teil sollte nicht zur Polynom-Generierung verwendet werden.
      • Der „Company Assigned“ Teil (PMA-CA - 24 Bit) ist dynamisch und kann zur Berechnung des Kixt verwendet werden. Zur Generierung des Ziel-Polynoms stehen hier 24 Bits, das entspricht 3 Bytes, zur Verfügung; das sind 224 Möglichkeiten und entspricht 16.777.216 unterschiedlichen Adressen.
      • Die Bit-Reihenfolge ist im Little-Endian-Format - siehe BT Core Specification. Das Verfahren kann für die folgenden Fälle angewendet werden:
        • • Es kann für beide Authentifizierungsverfahren (Legacy-Authentifizierung und sichere Authentifizierung) angewendet werden.
        • • Es kann außerdem für alle vier oben genannten Assoziations-Modelle (Just Works, Numeric Comparison, Out of Band und Passkey Entry) angewendet werden. (Vol. 1, Part A 5.2.4 Association models, S. 270).
  • • Random Static MAC Address (RSMA) / zufällige statische MAC-Adresse:
    • Eine zufällige statische Adresse ist einfach eine Zufallszahl, die entweder bei jedem Hochfahren des Geräts generiert werden kann oder während der gesamten Lebensdauer des Geräts gleich bleibt Sie kann jedoch nicht innerhalb eines einzigen Einschaltzyklus des Geräts geändert werden.
    • Diese Adresse ist die Default-MAC-Adresse beim Pairing. Zur Generierung eines Ziel-Polynoms stehen hier 48 Bits, das entspricht 6 Bytes, zur Verfügung. Das sind 248 Möglichkeiten und entspricht 281.474.976.710.656 unterschiedlichen Adressen.
  • • Private Resolvable MAC Address / Private auflösbare MAC-Adresse:
    • Diese werden aus einem Identity Resolving Key (IRK) und einer Zufallszahl generiert und können oft geändert werden (sogar während der Lebensdauer einer Verbindung), um zu vermeiden, dass das Gerät von einem unbekannten Scangerät identifiziert und verfolgt wird. Nur Geräte, die über den vom Gerät verteilten IRK verfügen, der eine private, auflösbare Adresse verwendet, können diese Adresse tatsächlich auflösen, wodurch sie das Gerät identifizieren können.
  • • Private Non-Resolvable MAC Address / Private, nicht auflösbare MAC-Adresse:
    • Solche MAC-Adressen werden nicht sehr häufig verwendet. Es handelt sich dabei um eine Zufallszahl, die jederzeit geändert werden kann.
3 shows the types of MAC addresses used in Bluetooth connections. The Media Access Control (MAC) address is the Bluetooth device address. This 48-bit (6-byte) number uniquely identifies a device among peers. There are several types of device addresses, of which usually only the Static Random Address and the Public Address, and in rare cases another one, are relevant for this invention:
  • • Public MAC Address (PMA):
    • This is a global, fixed address. It must be registered with the IEEE Registration Authority and does not change during the lifetime of the device. The PMA is divided into two parts:
      • A fixed part (24 bits) that is public and defined by IEEE Standards
      • Association is assigned a fixed value. This part should not be used for polynomial generation.
      • The "Company Assigned" part (PMA-CA - 24 bits) is dynamic and can be used to calculate the Kixt. 24 bits, corresponding to 3 bytes, are available to generate the target polynomial; this is 224 possibilities and corresponds to 16,777,216 different addresses.
      • The bit order is in little-endian format - see BT Core Specification. This method can be used for the following cases:
        • • It can be applied to both authentication methods (legacy authentication and secure authentication).
        • • It can also be applied to all four association models mentioned above (Just Works, Numeric Comparison, Out of Band, and Passkey Entry). (Vol. 1, Part A 5.2.4 Association models, p. 270).
  • • Random Static MAC Address (RSMA) / random static MAC address:
    • A random static address is simply a random number that can either be generated every time the device boots up or remain the same throughout the device's lifetime. However, it cannot be changed within a single power-on cycle of the device.
    • This address is the default MAC address during pairing. 48 bits, or 6 bytes, are available to generate a target polynomial. This is 248 possible addresses and corresponds to 281,474,976,710,656 different addresses.
  • • Private Resolvable MAC Address:
    • These are generated from an Identity Resolving Key (IRK) and a random number and can be changed frequently (even during the lifetime of a connection) to prevent the device from being identified and tracked by an unknown scanning device. Only devices that have the IRK distributed by the device, which uses a private, resolvable address, can actually resolve this address, allowing them to identify the device.
  • • Private Non-Resolvable MAC Address:
    • Such MAC addresses are not used very frequently. They are a random number that can be changed at any time.

4 illustriert die Advertising-Daten verschiedener Schritte. 4a beim Aufbau einer BT-Verbindung. 4a zeigt die Advertising-Daten, die im Zustand Adv-Norm 1 vom PD gesendet werden. Hier werden nur die MAC-Adresse und der Header gesendet. Diese Daten sind Teil des Signals „ADV_xxx“. Das AdvA-Feld im physischen-Advertise-Kanal enthält entweder eine öffentliche Adresse (MAC-Adresse) oder eine zufällige Adresse. Ist das Flag TxAdd = 0, dann ist die Adresse öffentlich; ist das Flag TxAdd = 1, dann ist die Adresse zufällig. 4 illustrates the advertising data of different steps. 4a when establishing a BT connection. 4a Shows the advertising data sent by the PD in the Adv-Norm 1 state. Only the MAC address and header are sent here. This data is part of the "ADV_xxx" signal. The AdvA field in the physical advertising channel contains either a public address (MAC address) or a random address. If the TxAdd flag = 0, then the address is public; if the TxAdd flag = 1, then the address is random.

4b zeigt die Advertising-Daten, die im Zustand Adv_Pair 4 gesendet werden. hier wird die MAC-Adresse, der Header und der Device-Name des sendenden Geräts gesendet. Diese Daten können ebenfalls Teil des Signals ADV_xxx ein. 4b Shows the advertising data sent in state Adv_Pair 4. The MAC address, header, and device name of the sending device are sent here. This data can also be part of the ADV_xxx signal.

In einer Variante, die in 4c illustriert ist, umfassen die Advertising-Daten des ADV_xxx-Signals zusätzlich zu den in 4b illustrierten Daten noch einen Random-Start-Hash-Wert RSHW.In a variant that 4c As illustrated, the advertising data of the ADV_xxx signal includes, in addition to the 4b The data illustrated also includes a random start hash value RSHW.

Das in dem Initiating-Zustand 7 vom CD gesendete Signal CONNECT_IND umfasst neben der MAC-Adresse des CD die MAC-Adresse des PD, die das CD z.B. über das ADV_xxx-Signal empfangen hat.The CONNECT_IND signal sent by the CD in initiating state 7 includes, in addition to the MAC address of the CD, the MAC address of the PD, which the CD has received, e.g., via the ADV_xxx signal.

Anwendungsbeispiel GaragentorsteuerungApplication example: garage door control

Ein Anwendungsbeispiel der Erfindung ist die Steuerung der Öffnung und Schließung eines Garagentors (DoorCtrl) durch ein portables Endgerät (z.B. Handy) via BLE-Verbindung. Meist werden mehrere Handys (Central-Devices) mit einem DoorCtrl-Device (Peripheral-Device) gekoppelt, sodass mehrere Personen dasselbe Garagentor öffnen oder schließen können. Der folgende Abschnitt soll den obigen Ablauf an einem realen Beispiel beschreiben.One application example of the invention is controlling the opening and closing of a garage door (DoorCtrl) using a portable device (e.g., a mobile phone) via a BLE connection. Typically, several mobile phones (central devices) are paired with a DoorCtrl device (peripheral device), allowing multiple people to open or close the same garage door. The following section describes the above process using a real-life example.

Peripheral Advertiser Adv_Norm 1Peripheral Advertiser Adv_Norm 1

Dieser Verfahrensschritt ist der normale Zustand eines Peripheral Device, das nicht mit einem Central Device verbunden ist. Nach dem Start des Peripheral-Device wechselt das Peripheral Device vom Standby-Zustand in den Advertising-Zustand 1 (Adv_Norm). In diesem Zustand wird in jedem Intervall von ca. 2000ms auf den 3 Advertise-Kanälen kurz ein Advertise-Signal (ADV_IND) ohne zusätzliche Advertise-Daten gesendet. In diesem Zustand wird darauf geachtet, dass das DoorCtrl-Device nicht mehr von außen sichtbar ist und somit auch keine ungewollten Kopplungsversuche gestartet werden können. Dieser Zustand wird so lange ausgeführt, bis eines der folgenden externen Benutzer-Events auftritt:

  • Fall 1: Ein bereits zuvor mit dem DoorCtrl-Device gekoppeltes Handy baut eine Verbindung zum DoorCtrl-Device auf, um dieses zu steuern (Öffnen/Schließen). Dieser Fall wird fast immer ausgeführt, eben dann, wenn das Handy und das DoorCtrl-Device bereits miteinander gepaart wurden und gebonded sind. Die folgenden Schritte werden dann nicht durchgeführt. Die Steuerung (Öffnen/Schließen des Garagentors) kann unmittelbar erfolgen.
  • Fall 2: Nicht gekoppeltes Handy (Central Device) führt eine Kopplung/Paarung mit dem DoorCtrl-Device des Garagentors durch. Das erfindungsgemäße Verfahren wird im Folgenden angewandt.
This process step represents the normal state of a peripheral device that is not connected to a central device. After the peripheral device is started, it switches from the standby state to the advertising state 1 (Adv_Norm). In this state, an advertise signal (ADV_IND) without additional advertise data is briefly sent on the three advertise channels at intervals of approximately 2000 ms. In this state, care is taken to ensure that the DoorCtrl device is no longer visible from the outside, thus preventing unwanted pairing attempts. This state is maintained until one of the following external user events occurs:
  • Case 1: A mobile phone that has already been paired with the DoorCtrl device establishes a connection to the DoorCtrl device to control it (opening/closing). This case almost always occurs, especially if the mobile phone and the DoorCtrl device have already been paired and bonded. The following steps are then not performed. Control (opening/closing the garage door) can take place immediately.
  • Case 2: An unpaired mobile phone (central device) performs a pairing with the garage door's DoorCtrl device. The method according to the invention is applied below.

Nach Empfang des Advertise-Signals ADV_IND (Adv_Pair 4) kann das Handy (Central Device) in den Scan-Zustand-Modus versetzt werden. Nachdem beim Handy die Kopplung gestartet wird, wechselt dieses in den Scan-Zustand 5.After receiving the advertise signal ADV_IND (Adv_Pair 4), the mobile phone (central device) can be put into scan mode. After pairing is initiated, the mobile phone switches to scan state 5.

Damit sichergestellt ist, dass kein fremdes Handy eine Verbindung zum DoorCtrl-Device (PD) herstellen kann, wird das DoorCtrl-Device seinerseits nur zu dem Zeitpunkt, an dem gezielt durch einen Benutzer ein Pairing/Bonding ausgeführt werden soll, in den Advertise-Pair-Mode (Adv_Pair 4) umgeschaltet.To ensure that no other mobile phone can establish a connection to the DoorCtrl device (PD), the DoorCtrl device is only switched to Advertise Pair Mode (Adv_Pair 4) at the time when a user specifically wants to perform pairing/bonding.

Dies erfolgt nach Betätigung des Kopplungs-Tasters (User Event 2) durch den Benutzer. Der Kopplungstaster befindet sich am DoorCtrl-Device (PD). Nach diesem externen Benutzer-Event wechselt das DoorCtrl-Device also in den Advertiser Adv_Pair 4 Zustand. This occurs after the user presses the pairing button (User Event 2). The pairing button is located on the DoorCtrl device (PD). Following this external user event, the DoorCtrl device switches to the Advertiser Adv_Pair 4 state.

Peripheral Advertiser Adv_Pair 4Peripheral Advertiser Adv_Pair 4

Im Advertise-Pair-Mode wird das DoorCtrl-Device in kurzen Intervallen nach außen sichtbar gemacht. Ab diesem Zeitpunkt wird in den Advertise-Daten (ADV_IND) auch der Device-Name (DevName, z.B. DoorCtrl) gesendet. Mit diesem Device-Namen kann das Handy erkennen, ob ihm der Algorithmus zur „Sicheren Generierung des Initialisierungs-Keys (Kixt)“ bekannt ist.In Advertise Pair mode, the DoorCtrl device is made visible to the outside world at short intervals. From this point on, the device name (DevName, e.g., DoorCtrl) is also sent in the advertise data (ADV_IND). Using this device name, the mobile phone can determine whether it knows the algorithm for "Secure Initialization Key Generation (Kixt)."

Für das Bonding wird innerhalb eines begrenzten Zeitraums von ca. 5 Sekunden in kurzen Advertise-Intervallen (beispielsweise ca. 25ms) auf den drei Advertise-Kanälen ein Advertise-Signal mit zusätzlichen Advertise-Daten, wie etwa dem DevName, gesendet.For bonding, an advertise signal with additional advertise data, such as the DevName, is sent on the three advertise channels within a limited period of approximately 5 seconds at short advertise intervals (e.g., approximately 25ms).

Central Scanner 5Central Scanner 5

In diesem Verfahrensschritt sucht das Handy durch einen Scanner nach dem DoorCtrl-Device, welches gekoppelt werden soll.In this step, the mobile phone uses a scanner to search for the DoorCtrl device that is to be paired.

Es startet das Scannen der aktuellen Bluetooth MAC-Adressen. Hierbei verwendet es einen Filter für den gesuchten Device-Namen (DevName) DoorCtrl, mit dem es sich koppeln möchte.It starts scanning the current Bluetooth MAC addresses. It uses a filter for the device name (DevName) DoorCtrl with which it wants to pair.

Mithilfe des Device-Namens DoorCtrl kann das Handy erkennen, ob ihm das DoorCtrl-Device bekannt ist und ob dieses denselben Algorithmus zur „Sicheren Generierung des Initialisierungs-Keys (Kixt)“ verwendet.Using the device name DoorCtrl, the mobile phone can detect whether it knows the DoorCtrl device and whether it uses the same algorithm for “Secure Generation of the Initialization Key (Kixt)”.

Wurde das DoorCtrl-Device gefunden, wird der Initialisierungs-Keys (Kixt) generiert. Danach wird ein Verbindungsaufbau 6 gestartet.Once the DoorCtrl device is found, the initialization key (Kixt) is generated. Afterward, a connection setup 6 is initiated.

Connection Established 7Connection Established 7

Sobald das DoorCtrl-Device ein gültiges Connection-Request-Paket (Connect_Ind; CONNECT_REQ) vom scannenden Handy erhält, wechseln beide Devices in den Zustand „Connection Established 7“. In diesem Zustand baut das Handy (Central-Device) eine Verbindung zum DoorCtrl-Device auf. Nachdem ein Connection-Request-Paket (CONNECT_REQ) vom Handy gesendet und vom DoorCtrl-Device empfangen wurde, gelten die beiden BLE-Geräte als verbunden.As soon as the DoorCtrl device receives a valid connection request packet (Connect_Ind; CONNECT_REQ) from the scanning mobile phone, both devices enter the "Connection Established 7" state. In this state, the mobile phone (central device) establishes a connection to the DoorCtrl device. After a connection request packet (CONNECT_REQ) has been sent from the mobile phone and received by the DoorCtrl device, the two BLE devices are considered connected.

Ab diesem Punkt entspricht der Ablauf dem BLE-Standard.From this point on, the process complies with the BLE standard.

Glossar/AbkürzungenGlossary/Abbreviations

  • • Advertising: Aussenden von Informationen über die Bereitschaft zur Verbindung oder Kopplung mit einem anderen Gerät. Aussenden von Advertising-Botschaften, bei denen es sich um einfache periodische Ankündigungen / Anwesenheitsmitteilungen an andere Geräte handelt.• Advertising: Sending information about the readiness to connect or pair with another device. Sending advertising messages, which are simple periodic announcements/presence notifications to other devices.
  • • ADV_xxx: Steht stellvertretend für folgende Advertise-PDU-Typen: ADV_IND, ADV_SCAN_IND, ADV_EXT_IND und weitere Advertise-PDU-Typen. In den meisten Fällen wird der Advertise-PDU-Typ ADV_IND verwendet.• ADV_xxx: Represents the following advertise PDU types: ADV_IND, ADV_SCAN_IND, ADV_EXT_IND, and other advertise PDU types. In most cases, the advertise PDU type ADV_IND is used.
  • • Adv_Norm: Zustand des Peripheral Device, das nicht verbunden ist. Bei Adv_Norm werden nur die MAC-Adresse und der Header gesendet.• Adv_Norm: State of the peripheral device that is not connected. With Adv_Norm, only the MAC address and header are sent.
  • • Adv_Pair: Advertise-Pair-Mode. Bei Adv_Pair werden die MAC-Adresse, der Header und der Device-Name gesendet und optional (Variante 2) zusätzlich ein Random-Start-Hash-Wert (RSHW) gesendet• Adv_Pair: Advertise-Pair mode. With Adv_Pair, the MAC address, the header, and the device name are sent, and optionally (variant 2) a random start hash value (RSHW) is also sent.
  • • Bonding: Die Speicherung der beim Pairing erstellten Schlüssel zur Verwendung bei nachfolgenden Verbindungen, um ein vertrauenswürdiges Gerätepaar zu bilden.• Bonding: Storing the keys created during pairing for use in subsequent connections to form a trusted pair of devices.
  • • BT: Bluetooth• BT: Bluetooth
  • • BLE: Bluetooth Low Energy• BLE: Bluetooth Low Energy
  • • B_KEY: Basis-Key• B_KEY: Base key
  • • CD: Central Device, Zentralgerät• CD: Central Device
  • • Device-Name: Der Device-Name oder eine eindeutige Device-ID (im Folgenden nur als Device-Name bezeichnet) identifiziert die Funktionalität des Peripheral-Device. Dieser wird von dem Entwickler des entsprechenden Peripheral-Device festgelegt.• Device name: The device name or a unique device ID (hereinafter referred to as the device name) identifies the functionality of the peripheral device. This is defined by the developer of the corresponding peripheral device.
  • • FIPS: Federal Information Processing Standard• FIPS: Federal Information Processing Standard
  • • Hash-Funktion: Eine Hash-Funktion ist eine Abbildung, die eine Eingabemenge, die Schlüssel, auf eine Zielmenge, die Hashwerte, abbildet. Die Zielmenge (z.B. 2 Bytes) kann größer als die Eingangs-Menge (z.B. 1 Byte) sein• Hash function: A hash function is a mapping that maps an input set, the keys, to a target set, the hash values. The target set (e.g., 2 bytes) can be larger than the input set (e.g., 1 byte).
  • • IEEE: Institute of Electrical and Electronics Engineers• IEEE: Institute of Electrical and Electronics Engineers
  • • IRK: Identity Resolving Key• IRK: Identity Resolving Key
  • • Kixt: Key Init X (Short/Long) Term. Initialisierungsschlüssel für STK/LTK. Dieser ist gleichzusetzen mit dem übertragenen oder eingegebenen Schlüssel (siehe Assoziations-Modelle)• Kixt: Key Init X (Short/Long) Term. Initialization key for STK/LTK. This is equivalent to the transmitted or entered key (see association models).
  • • LTK: Long Term Key• LTK: Long-Term Key
  • • MAC: Kurz für Media Access Control(-Adresse)• MAC: Short for Media Access Control (address)
  • • MCU: Microcontroller-Unit• MCU: Microcontroller Unit
  • • MITM: Man-in-the-Middle-Angriffe• MITM: Man-in-the-Middle attacks
  • • Nibble (Nippel): Vier Bits oder ein Halbbyte werden als Nibble bezeichnet• Nibble: Four bits or a half-byte are called a nibble
  • • Octet: Ein Oktett besteht immer aus genau 8 Bit. 8 Bit „b“=1 Byte „B“=1 Oktett „O• Octet: An octet always consists of exactly 8 bits. 8 bits “b” = 1 byte “B” = 1 octet “O
  • • Pairing: Der Prozess zur Erstellung eines oder mehrerer gemeinsamer geheimer Schlüssel.• Pairing: The process of creating one or more shared secret keys.
  • • PD: Peripheral Device, Peripheriegerät• PD: Peripheral Device
  • • PDU: Protocol data unit• PDU: Protocol data unit
  • • Peer to peer: Das bedeutet, dass die Kommunikation direkt von einem Gerät zu einem anderen Gerät erfolgt, ohne den Umweg über einen dazwischengeschalteten Server• Peer to peer: This means that communication takes place directly from one device to another device, without going through an intermediate server
  • • PMA: Public-MAC-Address• PMA: Public MAC Address
  • • Random-Start-Hash-Wert (RSHW): Dieser kann die Sicherheit der Generierung des Kixt nochmals erhöhen.• Random start hash value (RSHW): This can further increase the security of the Kixt generation.
  • • RSMA: Random-Static-MAC-Address (default MAC-Adresse beim Paring). Beim RSMA wird der „Random Part of Static Address“ zur Berechnung verwendet. Jeder Chip hat eine eigene MAC-Adresse. Zur Generierung eines Ziel-Polynoms stehen hier 48 Bits, das entspricht 6 Bytes, zur Verfügung. Das sind 248 Möglichkeiten und entspricht 281.474.976.710.656 unterschiedlichen Adressen.• RSMA: Random Static MAC Address (default MAC address during pairing). With RSMA, the "Random Part of Static Address" is used for calculations. Each chip has its own MAC address. 48 bits, or 6 bytes, are available to generate a target polynomial. This is 248 possibilities and corresponds to 281,474,976,710,656 different addresses.
  • • Scanning: Empfangen von während des Advertising gesendeter Information.• Scanning: Receiving information sent during advertising.
  • • STK: Short Term Key• STK: Short Term Key
  • • TK: Temporary Key• TK: Temporary Key

Claims (22)

Verfahren zum Paaren eines ersten Geräts (CD) mit einem zweiten Gerät (PD) über einen drahtlosen Kanal, wobei das erste Gerät (CD) von dem zweiten Gerät (PD) über den Kanal Information (ADV_xxx) empfängt, die für das zweite Gerät (PD) kennzeichnend ist, wobei das erste Gerät (CD) mittels eines vorbestimmten Algorithmus auf der Basis der empfangenen Information (ADV_xxx) einen ersten Schlüssel (Kixt-1) des ersten Geräts (CD) erzeugt, wobei die Information (ADV_xxx) sowie der vorbestimmte Algorithmus dieselben sind, die dem zweiten Gerät (PD) zur Erzeugung eines ersten Schlüssels (Kixt-2) des zweiten Geräts (PD) dienen, derart, dass beide erste Schlüssel (Kixt-1, Kixt-2) genau gleich sind, wobei kein erster Schlüssel (Kixt-1, Kixt-2) ausgetauscht wird.A method for pairing a first device (CD) with a second device (PD) via a wireless channel, wherein the first device (CD) receives information (ADV_xxx) from the second device (PD) via the channel that is characteristic of the second device (PD), wherein the first device (CD) generates a first key (Kixt-1) of the first device (CD) using a predetermined algorithm based on the received information (ADV_xxx), wherein the information (ADV_xxx) and the predetermined algorithm are the same as those used by the second device (PD) to generate a first key (Kixt-2) of the second device (PD), such that both first keys (Kixt-1, Kixt-2) are exactly the same, wherein no first key (Kixt-1, Kixt-2) is exchanged. Verfahren nach Anspruch 1, wobei das erste Gerät (CD) nach Empfang der Information (ADV_xxx) an das zweite Gerät (PD) eine Anforderung zum Aufbau einer Verbindung (CONNECT_IND) sendet, wobei die Anforderung (CONNECT_IND) eine Information enthält, welche kennzeichnend für das erste Gerät (CD) ist, sowie die Information, die kennzeichnend für das zweite Gerät (RSMA, PMA-CA) ist.Procedure according to Claim 1 , wherein the first device (CD) sends a request to establish a connection (CONNECT_IND) to the second device (PD) after receiving the information (ADV_xxx), wherein the request (CONNECT_IND) contains information which is characteristic of the first device (CD) and the information which is characteristic of the second device (RSMA, PMA-CA). Verfahren nach dem vorhergehenden Anspruch, wobei das erste Gerät (CD) nach Senden der Anforderung (CONNECT_IND) in einen Verbindungsaufbauzustand (Connection Established) überwechselt und wobei das erste Gerät in dem Verbindungsaufbauzustand mit dem zweiten Gerät (CD) Informationen zur Paarung austauscht, bevor es den ersten Schlüssel (Kixt-1) generiert.Method according to the preceding claim, wherein the first device (CD) changes to a connection establishment state (Connection Established) after sending the request (CONNECT_IND), and wherein the first device exchanges pairing information with the second device (CD) in the connection establishment state before generating the first key (Kixt-1). Verfahren zum Paaren eines ersten Geräts (CD) mit einem zweiten Gerät (PD) über einen drahtlosen Kanal, wobei das zweite Gerät (PD) dem ersten Gerät (CD) über den Kanal Information (ADV_xxx) sendet, die für das zweite Gerät (PD) kennzeichnend ist, wobei das zweite Gerät (PD) mittels eines vorbestimmten Algorithmus auf der Basis der Information einen ersten Schlüssel (Kixt-2) des zweiten Geräts (PD) erzeugt, wobei die Information sowie der vorbestimmte Algorithmus dieselben sind, die dem ersten Gerät (CD) zur Erzeugung eines ersten Schlüssels (Kixt-1) des ersten Geräts (CD) dienen, derart, dass beide erste Schlüssel (Kixt-1, Kixt-2) genau gleich sind, wobei kein erster Schlüssel (Kixt-1, Kixt-2) ausgetauscht wird.A method for pairing a first device (CD) with a second device (PD) via a wireless channel, wherein the second device (PD) sends information (ADV_xxx) identifying the second device (PD) to the first device (CD) via the channel, wherein the second device (PD) generates a first key (Kixt-2) of the second device (PD) using a predetermined algorithm based on the information, wherein the information and the predetermined algorithm are the same as those used by the first device (CD) to generate a first key (Kixt-1) of the first device (CD), such that both first keys (Kixt-1, Kixt-2) are exactly the same, wherein no first key (Kixt-1, Kixt-2) is exchanged. Verfahren nach dem vorhergehenden Anspruch, wobei das zweite Gerät (PD) nach Senden der Information von dem ersten Gerät (CD) eine Anforderung zum Aufbau einer Verbindung (CONNECT_IND) empfängt, wobei die Anforderung (CONNECT_IND) eine Information enthält, welche kennzeichnend für das erste Gerät (CD) ist, sowie die Information, die kennzeichnend für das zweite Gerät (RSMA, PMA-CA) ist.Method according to the preceding claim, wherein the second device (PD) receives a request to establish a connection (CONNECT_IND) after sending the information from the first device (CD), the request (CONNECT_IND) containing information which is characteristic of the first device (CD) and the information which is characteristic of the second device (RSMA, PMA-CA). Verfahren nach dem vorhergehenden Anspruch, wobei das zweite Gerät (PD) nach Empfangen der Anforderung (CONNECT_IND) in einen Verbindungsaufbauzustand (Connection Established) überwechselt und wobei das zweite Gerät (PD) in dem Verbindungsaufbauzustand mit dem ersten Gerät (CD) Informationen zur Paarung austauscht, vorzugsweise bevor es den ersten Schlüssel (Kixt-2) generiert.Method according to the preceding claim, wherein the second device (PD) changes to a connection establishment state (Connection Established) after receiving the request (CONNECT_IND) and wherein the second device (PD) in the connection establishment state with the first device (CD) receives information for pairing from exchanges, preferably before it generates the first key (Kixt-2). Verfahren nach einem der vorhergehenden Ansprüche, wobei der vorbestimmte Algorithmus für dritte Geräte geheim ist.Method according to one of the preceding claims, wherein the predetermined algorithm is secret for third devices. Verfahren nach einem der vorhergehenden Ansprüche, wobei der erste Schlüssel (Kixt-1) des ersten Geräts (CD) und der erste Schlüssel (Kixt-2) des zweiten Geräts (PD) identisch sind.Method according to one of the preceding claims, wherein the first key (Kixt-1) of the first device (CD) and the first key (Kixt-2) of the second device (PD) are identical. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Paaren beim Aufbau einer peer-to-peer-Verbindung, insbesondere eine Bluetooth-Verbindung oder Bluetooth-Low-Energy-Verbindung, stattfindet.Method according to one of the preceding claims, wherein the pairing takes place when establishing a peer-to-peer connection, in particular a Bluetooth connection or Bluetooth Low Energy connection. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Algorithmus im ersten Gerät (PD) und/oder im zweiten Gerät (CD) implementiert ist.Method according to one of the preceding claims, wherein the algorithm is implemented in the first device (PD) and/or in the second device (CD). Verfahren nach einem der vorhergehenden Ansprüche, wobei die Information (ADV_xxx) zumindest einen Teil (RSMA, PMA-CA) einer Geräteadresse des ersten Geräts (PD) enthält, insbesondere den Random Part der statischen Adresse (RSMA), und/oder den Company Assigned Public MAC-Address Part (PMA-CA).Method according to one of the preceding claims, wherein the information (ADV_xxx) contains at least a part (RSMA, PMA-CA) of a device address of the first device (PD), in particular the random part of the static address (RSMA), and/or the company assigned public MAC address part (PMA-CA). Verfahren nach einem der vorhergehenden Ansprüche, wobei beide erste Schlüssel (Kixt-1, Kixt-2) in ihrer Länge abhängig durch Verlängern eines Address Part (RSMA, PMA-CA) verlängert werden.Method according to one of the preceding claims, wherein both first keys (Kixt-1, Kixt-2) are extended in their length dependently by extending an address part (RSMA, PMA-CA). Verfahren nach einem der vorhergehenden Ansprüche, wobei zur Erzeugung des ersten Schlüssels (Kixt-1) des ersten Geräts und des ersten Schlüssels (Kixt-2) des zweiten Geräts zusätzlich ein Hash-Wert, Hash-Algorithmus, Verschleierungs-Algorithmus, ein symmetrischer Verschlüsselungs-Algorithmus oder ein anderer Algorithmus oder eine Kombination der Algorithmen angewandt wird.Method according to one of the preceding claims, wherein a hash value, hash algorithm, obfuscation algorithm, a symmetric encryption algorithm or another algorithm or a combination of the algorithms is additionally used to generate the first key (Kixt-1) of the first device and the first key (Kixt-2) of the second device. Verfahren nach einem der vorhergehenden Ansprüche, wobei beide erste Schlüssel (Kixt-1, Kixt-2) temporäre Schlüssel sind.Method according to one of the preceding claims, wherein both first keys (Kixt-1, Kixt-2) are temporary keys. Verfahren nach einem der vorhergehenden Ansprüche, wobei basierend auf dem erzeugten ersten Schlüssel (Kixt-1) des ersten Geräts (CD) und dem ersten Schlüssel (Kixt-2) des zweiten Geräts (PD) zumindest ein weiterer Schlüssel (STK, LTK) generiert wird und zum verschlüsselten Verteilen von transportspezifischen Schlüsseln (IRK; LTK) zwischen dem ersten Gerät (CD) und dem zweiten Gerät (PD) verwendet wird.Method according to one of the preceding claims, wherein based on the generated first key (Kixt-1) of the first device (CD) and the first key (Kixt-2) of the second device (PD), at least one further key (STK, LTK) is generated and is used for the encrypted distribution of transport-specific keys (IRK; LTK) between the first device (CD) and the second device (PD). Verfahren nach einem der vorhergehenden Ansprüche, wobei das erste Gerät (PD) ein Peripheriegerät oder ein Telekommunikationsgerät, insbesondere ein tragbares Telekommunikationsendgerät, ist und auch das zweite Gerät (CD) ein Peripheriegerät oder ein Telekommunikationsgerät, insbesondere ein tragbares Telekommunikationsendgerät, ist.Method according to one of the preceding claims, wherein the first device (PD) is a peripheral device or a telecommunications device, in particular a portable telecommunications terminal, and the second device (CD) is also a peripheral device or a telecommunications device, in particular a portable telecommunications terminal. Verfahren nach einem der vorhergehenden Ansprüche, wobei das erste Gerät (PD) ein Peripheriegerät und das zweite Gerät (CD) ein TK-Gerät ist.Method according to one of the preceding claims, wherein the first device (PD) is a peripheral device and the second device (CD) is a telecommunications device. Verfahren nach einem der vorhergehenden Ansprüche, wobei das erste Gerät (PD) ein TK-Gerät und das zweite Gerät (CD) ein Peripheriegerät ist.Method according to one of the preceding claims, wherein the first device (PD) is a telecommunications device and the second device (CD) is a peripheral device. Verfahren nach einem der vorhergehenden Ansprüche, wobei das erste Gerät (PD) und das zweite Gerät (CD) jeweils ein TK-Gerät ist.Method according to one of the preceding claims, wherein the first device (PD) and the second device (CD) are each a telecommunications device. Erstes Gerät (CD) ausgestaltet, sich mit einem zweiten Gerät (PD) über einen drahtlosen Kanal zu paaren, wobei das erste Gerät (CD) ausgestaltet ist, von dem zweiten Gerät (PD) über den Kanal eine Information (ADV_xxx) zu empfangen, die für das zweite Gerät (PD) kennzeichnend ist, wobei das erste Gerät (CD) einen vorbestimmten Algorithmus zur Erzeugung, auf der Basis der empfangenen Information (RSMA; PMA-CA), eines ersten Schlüssels (Kixt-1) aufweist, wobei die Information (ADV_xxx) sowie der vorbestimmte Algorithmus dieselben sind, die dem zweiten Gerät (PD) zur Erzeugung eines ersten Schlüssels (Kixt-2) dienlich sind, derart, dass beide erste Schlüssel (Kixt-1 und Kixt-2) genau gleich sind, und wobei kein erster Schlüssel (Kixt-1, Kixt-2) ausgetauscht ist.A first device (CD) configured to pair with a second device (PD) via a wireless channel, wherein the first device (CD) is configured to receive information (ADV_xxx) from the second device (PD) via the channel that is characteristic of the second device (PD), wherein the first device (CD) has a predetermined algorithm for generating, based on the received information (RSMA; PMA-CA), a first key (Kixt-1), wherein the information (ADV_xxx) and the predetermined algorithm are the same as those used by the second device (PD) to generate a first key (Kixt-2), such that both first keys (Kixt-1 and Kixt-2) are exactly the same, and wherein no first key (Kixt-1, Kixt-2) is exchanged. Zweites Gerät (PD) ausgestaltet, sich mit einem ersten Gerät (CD) über einen drahtlosen Kanal zu paaren, wobei das zweite Gerät (PD) ausgestaltet ist, dem ersten Gerät (CD) über den Kanal Information (ADV_xxx) zu senden, die für das zweite Gerät (PD) kennzeichnend ist, wobei das zweite Gerät (PD) einen vorbestimmten Algorithmus zur Erzeugung, auf der Basis der Information, eines ersten Schlüssels (Kixt-2) aufweist, wobei die Advertising-Information sowie der vorbestimmte Algorithmus dieselben sind, die dem ersten Gerät (CD) zur Erzeugung eines ersten Schlüssels (Kixt-1) dienlich sind, derart, dass derart, dass beide erste Schlüssel (Kixt-1 und Kixt-2) genau gleich sind, und wobei kein erster Schlüssel (Kixt-1, Kixt-2) ausgetauscht ist.A second device (PD) configured to pair with a first device (CD) via a wireless channel, wherein the second device (PD) is configured to send information (ADV_xxx) identifying the second device (PD) to the first device (CD) via the channel, wherein the second device (PD) has a predetermined algorithm for generating, based on the information, a first key (Kixt-2), wherein the advertising information and the predetermined algorithm are the same as those used by the first device (CD) to generate a first key (Kixt-1), such that both first keys (Kixt-1 and Kixt-2) are exactly the same, and wherein no first key (Kixt-1, Kixt-2) is exchanged. Gerät (CD, PD) nach Anspruch 20 oder 21, wobei der vorbestimmte Algorithmus für dritte Geräte geheim ist.Device (CD, PD) to Claim 20 or 21 , where the predetermined algorithm is secret for third devices.
DE102023124254.7A 2023-09-08 2023-09-08 Method for pairing a first device with a second device Active DE102023124254B4 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102023124254.7A DE102023124254B4 (en) 2023-09-08 2023-09-08 Method for pairing a first device with a second device
PCT/EP2024/074862 WO2025051877A1 (en) 2023-09-08 2024-09-05 Method for pairing a first device with a second device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102023124254.7A DE102023124254B4 (en) 2023-09-08 2023-09-08 Method for pairing a first device with a second device

Publications (2)

Publication Number Publication Date
DE102023124254A1 DE102023124254A1 (en) 2025-03-13
DE102023124254B4 true DE102023124254B4 (en) 2025-03-27

Family

ID=92708602

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102023124254.7A Active DE102023124254B4 (en) 2023-09-08 2023-09-08 Method for pairing a first device with a second device

Country Status (2)

Country Link
DE (1) DE102023124254B4 (en)
WO (1) WO2025051877A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150222517A1 (en) 2014-02-05 2015-08-06 Apple Inc. Uniform communication protocols for communication between controllers and accessories
US10299300B1 (en) 2018-05-16 2019-05-21 Bose Corporation Secure systems and methods for establishing wireless audio sharing connection
US20220322101A1 (en) 2012-02-02 2022-10-06 Tybalt, Llc Sharing Resources Between Wireless Networks
US20230041669A1 (en) 2020-01-21 2023-02-09 Huawei Technologies Co., Ltd. Bluetooth connection method, system, and electronic device
US20230052917A1 (en) 2020-04-24 2023-02-16 Huawei Technologies Co., Ltd. Pairing method applied to short-range communication system and wireless device

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107079273B (en) * 2014-09-11 2020-05-29 诺基亚技术有限公司 Communication between devices without establishing a persistent connection
CN112469011A (en) * 2019-09-06 2021-03-09 华为技术有限公司 Bluetooth pairing method and related device
KR102814766B1 (en) * 2019-09-11 2025-05-29 삼성전자주식회사 Electronic device for receiving data packet in bluetooth network environment and method thereof
US20210345105A1 (en) * 2021-06-25 2021-11-04 Intel Corporation 4-way handshake optimization

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220322101A1 (en) 2012-02-02 2022-10-06 Tybalt, Llc Sharing Resources Between Wireless Networks
US20150222517A1 (en) 2014-02-05 2015-08-06 Apple Inc. Uniform communication protocols for communication between controllers and accessories
US10299300B1 (en) 2018-05-16 2019-05-21 Bose Corporation Secure systems and methods for establishing wireless audio sharing connection
US20230041669A1 (en) 2020-01-21 2023-02-09 Huawei Technologies Co., Ltd. Bluetooth connection method, system, and electronic device
US20230052917A1 (en) 2020-04-24 2023-02-16 Huawei Technologies Co., Ltd. Pairing method applied to short-range communication system and wireless device

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
http://ddi.cs.uni-potsdam.de/Lehre/e-commerce/elBez2-5/page05.html (zuletzt aufgerufen am 16.08.2023
https://www.elektronik-kompendium.de/sites/net/1907041.htm (zuletzt aufgerufen am 16.08.2023

Also Published As

Publication number Publication date
DE102023124254A1 (en) 2025-03-13
WO2025051877A1 (en) 2025-03-13

Similar Documents

Publication Publication Date Title
DE69935590T2 (en) AUTHENTICATION PROCESS AND CORRESPONDING SYSTEM TO A TELECOMMUNICATIONS NETWORK
DE60035953T2 (en) RE-USE OF SAFETY RELATIONS TO IMPROVE THE IMPLEMENTATION OF A HANDOVER
DE60201522T2 (en) ENABLE LEGAL CAPTURE OF IP CONNECTIONS
DE60029217T2 (en) METHOD AND DEVICE FOR INITIALIZING SAFE CONNECTIONS BETWEEN AND BETWEEN ONLY CUSTOMIZED CORDLESS EQUIPMENT
DE60017292T2 (en) Authentication method between a subscriber and a service provider that can be reached by a network operator by providing a secure channel
DE60121393T2 (en) Key management method for wireless local area networks
DE69433509T2 (en) METHOD AND DEVICE FOR SAFE IDENTIFICATION OF A MOBILE PARTICIPANT IN A COMMUNICATION NETWORK
DE60209858T2 (en) Method and device for access control of a mobile terminal in a communication network
DE602004004844T2 (en) Authenticating access to a wireless local area network based on security values associated with a cellular mobile radio system
DE60302882T2 (en) SECURITY TRANSFER PROTOCOL FOR A MOBILITY IP NETWORK
EP1308017B1 (en) Method of key exchange for a cryptographic secure point to multipoint connection
DE102006031870B4 (en) Method and system for providing a Mobile IP key
DE102006038591A1 (en) Method and device for providing a wireless mesh network
DE102009051383A1 (en) Method and device for the secure transmission of data
DE60203277T2 (en) METHOD AND SYSTEM FOR AUTHENTICATING A PERSONAL SECURITY DEVICE COMPRISING AT LEAST ONE REMOTE COMPUTER SYSTEM
DE102023124254B4 (en) Method for pairing a first device with a second device
DE60224391T2 (en) Secure access to a subscriber module
WO2022233806A1 (en) Communication method for iot nodes or iot devices in a local network
EP1683324B1 (en) Method for safeguarding data transmission between a first terminal and a first network and between a second terminal and a second network
DE102006036165B3 (en) Method for establishing a secret key between two nodes in a communication network
DE102006040313B3 (en) Local radio network i.e. wireless local area network, configuring method, involves transmitting parameter to install operating channel if terminal supports encoding, and closing transmission channel if terminal does not support encoding
DE102015106440A1 (en) Method for addressing, key exchange and secure data transmission in communication systems
WO2007113073A1 (en) Method for restoring an ipsec cryptographically secured connection between a p-cscf and a user unit
DE102021125836A1 (en) COMPUTER NETWORK FOR SECURE IP-TO-NON-IP COMMUNICATIONS AND BACKEND DEVICE, GATEWAY, FRONTEND DEVICE THEREOF AND METHODS OF OPERATION THEREOF
WO2008058841A2 (en) Bootstrapping method

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division