WO2023274872A1 - Verfahren und steuergerät zum erzeugen eines zufallswerts unter verwendung eines microcontrollers - Google Patents

Verfahren und steuergerät zum erzeugen eines zufallswerts unter verwendung eines microcontrollers Download PDF

Info

Publication number
WO2023274872A1
WO2023274872A1 PCT/EP2022/067337 EP2022067337W WO2023274872A1 WO 2023274872 A1 WO2023274872 A1 WO 2023274872A1 EP 2022067337 W EP2022067337 W EP 2022067337W WO 2023274872 A1 WO2023274872 A1 WO 2023274872A1
Authority
WO
WIPO (PCT)
Prior art keywords
value
bits
binary
random value
temperature
Prior art date
Application number
PCT/EP2022/067337
Other languages
English (en)
French (fr)
Inventor
Martin Friedberger
Original Assignee
Lisa Dräxlmaier GmbH
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 Lisa Dräxlmaier GmbH filed Critical Lisa Dräxlmaier GmbH
Priority to CN202280045735.9A priority Critical patent/CN117581219A/zh
Priority to EP22740788.9A priority patent/EP4363990A1/de
Publication of WO2023274872A1 publication Critical patent/WO2023274872A1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7839Architectures of general purpose stored program computers comprising a single central processing unit with memory
    • G06F15/7842Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes

Definitions

  • the present invention relates to a method for generating a random value using a microcontroller and a correspondingly configured control unit for a vehicle.
  • a so-called handshake takes place.
  • the diagnostic device uses a so-called challenge and response routine, for example, to prove its authorization to read out and/or configure the control unit by sending back a correct response to a random challenge from the control unit.
  • the control unit refuses input from the diagnostic device if it receives an incorrect response.
  • microcontrollers may have specialized hardware used solely for the purpose of generating random values.
  • An improvement here can concern, for example, a reduction in costs and an increased randomness of the random value.
  • a deterministic generation of random values can only be pseudo-random, since rule-based algorithms are combined with one another in order to generate the random values by mathematically linking the results of the algorithms. To a certain extent, the results are therefore predictable.
  • an analog signal that is constantly changing to a small extent and that is continuous in time and value is digitized. Since the analog signal is constantly changing slightly, the digitized value also jumps at least every time the change in the analog signal is greater than one digitization level of digitization. The digitized value thus jumps randomly.
  • a method for generating a random value using a microcontroller is proposed, with an analog analog temperature signal of an internal temperature sensor of the microcontroller being digitized using an internal analog-to-digital converter of the microcontroller to form a binary binary temperature value, with the random value being derived from the binary temperature value.
  • a control unit for a vehicle is proposed, the control unit having a microcontroller with an internal temperature sensor and an internal analog/digital converter, the control unit being configured to carry out a method according to the approach presented here.
  • a random value can be understood to mean a digital value.
  • the random value can be represented by a sequence of bits.
  • the random value can be a discrete value with fixed increments.
  • the random value can be a binary value.
  • a microcontroller can be referred to as a chip or integrated circuit.
  • the microcontroller can have a large number of components that are encapsulated in a common housing. This protects the components from environmental influences. The components are also protected against manipulation. Among the components can be a regular temperature sensor and an analog-to-digital converter for the temperature sensor.
  • the internal temperature sensor can map a temperature of the microcontroller in an analog analog temperature signal.
  • the temperature sensor can be thermally coupled to the housing of the microcontroller.
  • the analog temperature signal can be an electrical signal.
  • an electrical voltage generated by a thermocouple of the temperature sensor can represent the temperature.
  • an electrical current flow through a thermistor or PTC thermistor of the temperature sensor can represent the temperature.
  • the temperature sensor can be a normal part of the microcontroller. The temperature sensor is protected from manipulation by the microcontroller housing.
  • the analog-to-digital converter can digitize the analog temperature signal into a binary temperature value by converting the time-continuous and value-continuous analog analog temperature signal into a sequence of time-discrete and value-discrete digital binary temperature values.
  • the analog to digital converter can be a normal part of the microcontroller.
  • the analog-to-digital converter is also protected against manipulation by the housing of the microcontroller.
  • the binary temperature value can be the random value since the binary temperature value also changes constantly and unpredictably due to the analog temperature signal constantly changing slightly around an average value.
  • the random value can be derived from a noise component of the binary temperature value.
  • the temperature sensor cannot provide a constant analog temperature signal due to the chaotic thermal motion of its molecules. So the analog temperature signal is noisy. Due to the digitization, the binary temperature value has an equally chaotic noise.
  • the noise content may be an amount of change in the binary temperature value due to the noise of the analog temperature signal. The amount of noise is purely random and unpredictable.
  • the random value can be derived from bits of the binary temperature value with a low bit significance. Bits with a low bit significance can be referred to as Least Significant Bits (LSB) and represent the smallest jumps in the possible resolution of a binary value. Since the analog temperature signal changes constantly with a small amount of change around the mean value, the bits with the lower bit significances change with a very high probability in the binary temperature value. In contrast, bits with a higher bit significance represent jumps in the resolution that are greater than the range of change in the analog temperature signal. The bits with the higher bit significance therefore change with a much lower probability.
  • LSB Least Significant Bits
  • the random value can be derived from the bits with the two lowest bit significances.
  • the jumps in resolution of the two least significant bits are within the expected range of change in the analog temperature signal.
  • the bits with the lowest bit values thus change completely randomly with a very high probability.
  • the random value can be derived from a sequence of binary temperature values.
  • the binary temperature values differ slightly from each other with a high probability. The differences are random. Using multiple binary temperature values reduces the predictability of the random value because the randomness is cumulative.
  • a predetermined number of bits can be extracted for each binary temperature value.
  • the random value can be assembled from the extracted bits.
  • the remaining bits of the binary temperature values can be discarded.
  • the bits with of the low bit significance are extracted, since these have the highest randomness.
  • the extracted bits can be concatenated and used as the bits of the random binary value.
  • An oldest binary temperature value of the sequence of binary temperature values can be discarded when a new binary temperature value is digitized.
  • the new binary temperature value can be added to the sequence.
  • the extracted bits of the oldest binary temperature value can be removed from the random binary value and replaced in their place by the extracted bits of the new binary temperature value.
  • the bits of the new binary temperature value can always be inserted at a predefined position of the binary random value, with the remaining bits of the other older binary temperature values being shifted by a corresponding number of positions.
  • the bits of the new binary temperature value can be used as the least significant bits, the most significant bits, or as the intermediate significant bits.
  • bits of the new binary temperature value are used as the middle bit significance bits
  • the bits of the other older binary temperature values can be shifted towards the higher bit significance and towards the lower bit significance, respectively. At least the bit with the highest bit significance and at least the bit with the lowest bit significance are then discarded.
  • the random value can be provided with a word length of 32 bits.
  • the random value can, for example, be composed of two bits each of 16 binary temperature values. Alternatively, four bits each of eight binary temperature values can also be used. One bit each of 32 binary temperature values can also be used.
  • the random value can be checked for plausibility using the binary temperature value. If the binary temperature value assumes unusual values, the provision of the random value can be stopped in order to make it difficult or to prevent an analysis of the method used to generate the random value.
  • the random value can be derived if the binary temperature value is within a temperature tolerance range.
  • a temperature tolerance range can exclude temperatures that are too low and temperatures that are too high. This can prevent manipulations, for example caused by icing or overheating of the microcontroller.
  • Several random values can be put together to form a key.
  • a key can be used to encrypt and decrypt communications.
  • the key can also be used for the challenge and response identification between the control unit and the diagnostic device.
  • the key may have a larger word length than the random value to make unauthorized decryption more difficult.
  • the key can be provided with a word length of 128 bits, for example. A word length of 128 bits can make unauthorized decryption very difficult.
  • An identification number of the microcontroller can be integrated into the key. By integrating the identification number, the key can be assigned to the microcontroller. For example, the diagnostic device can recognize which microcontroller generated the random values and adapt its answer to the challenge and response accordingly.
  • the key can be renewed cyclically.
  • the key can be renewed regularly. By exchanging the key, communication can be protected even if a key is compromised.
  • FIG. 1 shows a flowchart of a method for generating a random value according to an embodiment.
  • Control unit 102 has a microcontroller 104 which has an internal temperature sensor 106 and an internal analog/digital converter 108 .
  • the temperature sensor 106 maps a temperature of the microcontroller 104 in an analog electrical signal.
  • the signal is referred to herein as analog temperature signal 110 .
  • the analog temperature signal 110 can be in the form of an electrical current flow and/or an electrical voltage.
  • the analog temperature signal 110 is read in by the analog-to-digital converter 108 .
  • the analog to digital converter 108 digitizes the analog temperature signal 110 and outputs a binary binary temperature value 112 .
  • the temperature of the microcontroller 104 changes depending on its load. The temperature rises or falls. The temperature is rarely constant. Even if the temperature is constant, the analog temperature signal 110 fluctuates randomly around a mean value with a very small fluctuation range. In other words, the analog temperature signal is noisy. A slightly, randomly changing binary temperature value 112 is also continuously digitized in the analog-to-digital converter 108 as a result of the essentially constantly changing analog temperature signal 110 . The random value 100 is derived from the binary temperature value 112 in the approach presented here.
  • only a noise portion 114 of binary temperature value 112 is used to derive random value 100 .
  • the binary temperature value 112 has a predefined word length with a predefined number of bits 116 .
  • the word length determines a resolution of the digitization.
  • the two bits 116 with the lowest bit significance are used as the noise component 114 . These two bits 116 are extracted and the random value 100 is derived using the extracted bits 116.
  • a sequence 118 of multiple sequentially digitized binary temperature values 112 is used to generate the random value 100 .
  • at least one bit 116 of the Binary temperature value 112 extracted.
  • the bits 116 of all binary temperature values 112 are then assembled into the random value 100.
  • the two bits 116 with the lowest bit significance are extracted for each binary temperature value 112 and combined to form the random value 100 .
  • the majority of the bits 116 represent different bit weights than in the underlying binary temperature values 112, depending on where in the random value 100 they are used.
  • two bits 116 are extracted from 16 binary temperature values 112 and combined to form a 32-bit random value 100 .
  • the bits 116 of each binary temperature value 112 are extracted sequentially. When a number of new bits 116 are extracted from a new binary temperature value 112, a corresponding number of old bits 116 are removed from the previous random value 100 and replaced with the new bits 116. This results in a new random value 100 for each extraction of bits 116.
  • the oldest bits 116 are removed and replaced with the new bits 116.
  • the new bits 116 can be used in the same place, ie at the same place in the random value 100 at which the oldest bits 116 have been removed.
  • the bits 116 can be shifted into the random value 100 and older bits 116 can be displaced to other places in the random value 100 .
  • the oldest bits 116 are displaced to a word start and/or a word end of the random value 100 and removed there when the new bits 116 are inserted.
  • the random value 100 is checked for plausibility. For example, it is monitored whether the random value 100 changes over time. If the random value 100 does not change, the error signal 120 is output.
  • the random value is further processed into a key 122 .
  • the key is generated based on the random value 100.
  • a serial number and/or an identification number 124 of the microcontroller 104 is included in the key 122 in order to be able to assign the generated key 122 to the microcontroller 102, for example.
  • the key 122 is composed of multiple random values 100 .
  • a new key 122 can be created for each derived random value 100 by replacing the respective oldest random value 100 with the newest random value 100 .
  • the key 122 is generated with a word length of 128 bits.
  • the identification number 124 and at least one random value 100 can be compressed to the 128 bits.
  • the compression can be done using a Miyaguchi-Preneel algorithm 130, for example.
  • the key 122 can then continue to be used.
  • the key 122 can be used by an encryption algorithm 128 to generate a random output 130 .
  • the key 122 can be changed with each issue 130 .
  • the key 122 can also be changed using a deterministically generated random number 132 .
  • the random number 132 can also be used to encode the output 130. Then, when a new key 122 has been generated, the old key 122 can be discarded and the new key 122 can be substituted.
  • the thermal noise of the internal temperature sensor serves as the entropy source for the random numbers.
  • the voltage at the NTC is digitized using an AD converter, the noise is then extracted from the bits with the low bit significance (LSBs) and the entropy is increased using a compression function.
  • a Pseudo Random Number Generator (PRNG) can be connected downstream.
  • PRNG Pseudo Random Number Generator
  • the internal temperature sensors can make external manipulation difficult. Although the temperature can be influenced from the outside, this cannot be transferred one-to-one to the noise.
  • the measured temperature value is also available and can be used for plausibility checks.
  • the raw data of the microcontroller temperature measurement is read sixteen times in a row via the analog-to-digital converter (ADC) driver and the two least significant bits (LSBs) are combined to form a 32-bit value.
  • ADC analog-to-digital converter
  • LSBs least significant bits
  • Several 32-bit values are compressed together with a microcontroller (ECU) individual ID (e.g. serial number) using a Miyaguchi preneel function and thus converted into a 128-bit seed.
  • the seed is used to initialize a Pseudo Random Number Generator (PRNG) based on an AES-128 algorithm in order to obtain higher data rates.
  • PRNG Pseudo Random Number Generator
  • the Integrity Monitor monitors the entropy of the source to detect errors such as "stuck at low”.
  • PRNG Pseudo Random Number Generator
  • the feedback of the internal state of the Pseudo Random Number Generator (PRNG) enables a cyclic "Reseeding" to measure the entropy in the Pseudo Random Number Generator ( PRNG) to maintain. Since the devices and methods described in detail above are exemplary embodiments, they can be modified to a large extent in the customary manner by a person skilled in the art without departing from the scope of the invention. In particular, the mechanical arrangements and the size ratios of the individual elements to one another are merely exemplary.
  • Miyaguchi-Preneel Algorithm 128 Encryption Algorithm 130 Output 132 Random Number

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Analogue/Digital Conversion (AREA)

Abstract

Die vorliegende Erfindung bezieht sich auf ein Verfahren zum Erzeugen eines Zufallswerts (100) unter Verwendung eines Microcontrollers (104), wobei ein analoges Analogtemperatursignal (110) eines internen Temperatursensors (106) des Microcontrollers (104) unter Verwendung eines internen Analog-Digital-Wandlers (108) des Microcontrollers(104) zu einem binären Binärtemperaturwert (112) digitalisiert wird, wobei der Zufallswert (100) aus dem Binärtemperaturwert (112) abgeleitet wird.

Description

VERFAHREN UND STEUERGERAT ZUM ERZEUGEN EINES ZUFALLSWERTS UNTER VERWENDUNG EINES MICROCONTROLLERS
Technisches Gebiet
Die vorliegende Erfindung betrifft ein Verfahren zum Erzeugen eines Zufallswerts unter Verwendung eines Microcontrollers sowie ein entsprechend konfiguriertes Steuergerät für ein Fahrzeug.
Stand der Technik
Die vorliegende Erfindung wird im Folgenden hauptsächlich in Verbindung mit Steuergeräten für Fahrzeuge beschrieben. Der hier vorgestellte Ansatz kann aber auch in jedem Bereich verwendet werden, in dem echte Zufallswerte benötigt werden.
Wenn ein Steuergerät mit einem Diagnosegerät verbunden wird, findet ein sogenannter Handshake statt. Während des Handshakes weist das Diagnosegerät beispielsweise unter Verwendung einer sogenannten Challenge und Response Routine seine Berechtigung zum Auslesen und/oder Konfigurieren des Steuergeräts nach, indem es auf eine zufällig gestellte Challenge des Steuergeräts eine korrekte Response zurücksendet. Um unzulässige Manipulationen zu verhindern, verweigert das Steuergerät Eingaben des Diagnosegeräts, wenn es eine inkorrekte Response erhält.
Wenn die Challenge aber unter Verwendung eines deterministisch erzeugten Zufallswerts generiert wird, ist die Challenge nicht vollkommen zufällig, da die deterministische Erzeugung des Zufallswerts bis zu einem gewissen Grad vorhersehbar ist. Um tatsächlich zufällige Zufallswerte zu erzeugen, können Microcontroller eine spezialisierte Hardware aufweisen, die ausschließlich zum Zweck der Erzeugung von Zufallswerten verwendet wird.
Beschreibung der Erfindung
Eine Aufgabe der Erfindung ist es daher, ein verbessertes Verfahren zum Erzeugen eines Zufallswerts unter Verwendung eines Microcontrollers sowie ein verbessertes Steuergerät für ein Fahrzeug bereitzustellen. Eine Verbesserung kann hierbei beispielsweise eine Reduzierung von Kosten und eine erhöhte Zufälligkeit des Zufallswerts betreffen.
Die Aufgabe wird durch die Gegenstände der unabhängigen Ansprüche gelöst. Vorteilhafte Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen, der Beschreibung und den begleitenden Figuren angegeben.
Eine deterministische Erzeugung von Zufallswerten kann nur pseudozufällig sein, da regelbasierte Algorithmen miteinander kombiniert werden, um die Zufallswerte durch mathematische Verknüpfung von Ergebnissen der Algorithmen zu generieren. Bis zu einem gewissen Grad sind die Ergebnisse daher vorhersehbar.
Bei dem hier vorgestellten Ansatz wird ein sich in geringem Maß ständig veränderndes zeitkontinuierliches und wertkontinuierliches analoges Signal digitalisiert. Da sich das analoge Signal ständig geringfügig ändert, springt auch der digitalisierte Wert mindestens jedes Mal, wenn die Änderung des analogen Signals größer als eine Digitalisierungsstufe der Digitalisierung ist. Der digitalisierte Wert springt damit zufällig.
Es wird ein Verfahren zum Erzeugen eines Zufallswerts unter Verwendung eines Microcontrollers vorgeschlagen, wobei ein analoges Analogtemperatursignal eines internen Temperatursensors des Microcontrollers unter Verwendung eines internen Analog-Digital- Wandlers des Microcontrollers zu einem binären Binärtemperaturwert digitalisiert wird, wobei der Zufallswert aus dem Binärtemperaturwert abgeleitet wird. Weiterhin wird ein Steuergerät für ein Fahrzeug vorgeschlagen, wobei das Steuergerät einen Microcontroller mit einem internen Temperatursensor und einem internen Analog-Digital- Wandler aufweist, wobei das Steuergerät dazu konfiguriert ist, ein Verfahren gemäß dem hier vorgestellten Ansatz auszuführen.
Unter einem Zufallswert kann ein digitaler Wert verstanden werden. Der Zufallswert kann durch eine Abfolge von Bits repräsentiert sein. Der Zufallswert kann ein diskreter Wert mit festen Abstufungen sein. Der Zufallswert kann ein Binärwert sein. Ein Microcontroller kann als Chip beziehungsweise integrierte Schaltung bezeichnet werden. Der Microcontroller kann eine Vielzahl von Komponenten aufweisen, die in einem gemeinsamen Gehäuse vergossen sind. Dadurch sind die Komponenten vor Umwelteinflüssen geschützt. Ebenso sind die Komponenten vor Manipulationen geschützt. Unter den Komponenten kann ein regulärer Temperatursensor und ein Analog-Digital-Wandler für den Temperatursensor sein.
Der interne Temperatursensor kann eine Temperatur des Microcontrollers in einem analogen Analogtemperatursignal abbilden. Der Temperatursensor kann thermisch mit dem Gehäuse des Microcontrollers gekoppelt sein. Das Analogtemperatursignal kann ein elektrisches Signal sein. Beispielsweise kann eine von einem Thermoelement des Temperatursensors generierte elektrische Spannung die Temperatur repräsentieren. Ebenso kann ein elektrischer Stromfluss durch einen Heißleiter oder Kaltleiter des Temperatursensors die Temperatur repräsentieren. Der Temperatursensor kann ein normaler Bestandteil des Microcontrollers sein. Der Temperatursensor ist durch das Gehäuse des Microcontrollers vor Manipulationen geschützt.
Der Analog-Digital-Wandler kann das Analogtemperatursignal in einen Binärtemperaturwert digitalisieren, indem er das zeitkontinuierliche und wertkontinuierliche analoge Analogtemperatursignal in eine Folge von zeitdiskreten und wertdiskreten digitalen Binärtemperaturwerten umsetzt. Der Analog-Digital-Wandler kann ein normaler Bestandteil des Microcontrollers sein. Der Analog-Digital-Wandler ist durch das Gehäuse des Microcontrollers ebenfalls vor Manipulationen geschützt.
Der Binärtemperaturwert kann der Zufallswert sein, da sich der Binärtemperaturwert aufgrund des sich ständig geringfügig um einen Mittelwert ändernden Analogtemperatursignals ebenfalls ständig und nicht vorhersehbar ändert. Der Zufallswert kann aus einem Rauschanteil des Binärtemperaturwerts abgeleitet werden. Der Temperatursensor kann aufgrund der chaotischen Wärmebewegung seiner Moleküle kein konstantes Analogtemperatursignal bereitstellen. Das Analogtemperatursignal ist also verrauscht. Durch die Digitalisierung weist der Binärtemperaturwert ein ebenso chaotisches Rauschen auf. Der Rauschanteil kann ein Änderungsumfang des Binärtemperaturwerts aufgrund des Rauschens des Analogtemperatursignals sein. Der Rauschanteil ist rein zufällig und nicht vorhersehbar.
Der Zufallswert kann aus Bits des Binärtemperaturwerts mit einer niedrigen Bitwertigkeit abgeleitet werden. Bits mit einer niedrigen Bitwertigkeit können als Least Significant Bits (LSB) bezeichnet werden und repräsentieren die kleinsten Sprünge der möglichen Auflösung eines Binärwerts. Da das Analogtemperatursignal sich ständig mit einem geringen Änderungsumfang um den Mittelwert ändert, ändern sich bei dem Binärtemperaturwert mit einer sehr hohen Wahrscheinlichkeit jeweils die Bits mit den niedrigen Bitwertigkeiten. Bits mit einer demgegenüber höheren Bitwertigkeit repräsentieren Sprünge der Auflösung, die größer als der Änderungsumfang des Analogtemperatursignals sind. Die Bits mit der höheren Bitwertigkeit ändern sich daher mit einer sehr viel geringeren Wahrscheinlichkeit.
Der Zufallswert kann aus den Bits mit den zwei niedrigsten Bitwertigkeiten abgeleitet werden. Die Sprünge der Auflösung der zwei Bits mit den niedrigsten Bitwertigkeiten liegen innerhalb des erwarteten Änderungsumfangs des Analogtemperatursignals. Die Bits mit den niedrigsten Bitwertigkeiten ändern sich damit mit einer sehr hohen Wahrscheinlichkeit völlig zufällig.
Der Zufallswert kann aus einer Abfolge von Binärtemperaturwerten abgeleitet werden. Die Binärtemperaturwerte unterscheiden sich mit einer hohen Wahrscheinlichkeit geringfügig voneinander. Die Unterschiede sind zufällig. Durch die Verwendung mehrerer Binärtemperaturwerte wird eine Vorhersagbarkeit des Zufallswerts reduziert, da sich die Zufälligkeiten kumulieren.
Pro Binärtemperaturwert kann je eine vorbestimmte Anzahl an Bits extrahiert werden. Der Zufallswert kann aus den extrahierten Bits zusammengesetzt werden. Die restlichen Bits der Binärtemperaturwerte können verworfen werden. Insbesondere können jeweils die Bits mit der niedrigen Bitwertigkeit extrahiert werden, da diese die höchste Zufälligkeit aufweisen. Die extrahierten Bits können aneinandergereiht werden und als die Bits des binären Zufallswerts verwendet werden.
Ein ältester Binärtemperaturwert der Abfolge von Binärtemperaturwerten kann verworfen werden, wenn ein neuer Binärtemperaturwert digitalisiert wird. Der neue Binärtemperaturwert kann zu der Abfolge hinzugefügt werden. Die extrahierten Bits des ältesten Binärtemperaturwerts können aus dem binären Zufallswert entfernt werden und an ihrer Stelle durch die extrahierten Bits des neuen Binärtemperaturwerts ersetzt werden. Alternativ können die Bits des neuen Binärtemperaturwerts immer an einer vordefinierten Stelle des binären Zufallswerts eingesetzt werden, wobei die verbleibenden Bits der anderen älteren Binärtemperaturwerte um entsprechend viele Stellen verschoben werden. Beispielsweise können die Bits des neuen Binärtemperaturwerts als die Bits mit den niedrigsten Bitwertigkeiten, die Bits mit den höchsten Bitwertigkeiten oder als Bits mit mittleren Bitwertigkeiten eingesetzt werden. Wenn die Bits des neuen Binärtemperaturwerts als die Bits mit mittleren Bitwertigkeiten eingesetzt werden, können die Bits der anderen älteren Binärtemperaturwerte jeweils in Richtung der höheren Bitwertigkeiten und in Richtung der niedrigeren Bitwertigkeiten verschoben werden. Dann werden jeweils zumindest das Bit mit der höchsten Bitwertigkeit und zumindest das Bit mit der niedrigsten Bitwertigkeit verworfen.
Der Zufallswert kann mit einer Wortlänge von 32 Bit bereitgestellt werden. Der Zufallswert kann beispielsweise aus je zwei Bits von 16 Binärtemperaturwerten zusammengesetzt werden. Alternativ können auch je vier Bits von acht Binärtemperaturwerten verwendet werden. Ebenso kann je ein Bit von 32 Binärtemperaturwerten verwendet werden.
Der Zufallswert kann unter Verwendung des Binärtemperaturwerts plausibilisiert werden. Wenn der Binärtemperaturwert auffällige Werte einnimmt, kann die Bereitstellung des Zufallswerts eingestellt werden, um eine Analyse der verwendeten Methode zum Erzeugen des Zufallswerts zu erschweren oder zu verhindern.
Der Zufallswert kann abgeleitet werden, wenn der Binärtemperaturwert innerhalb eines Temperaturtoleranzbereichs ist. Ein Temperaturtoleranzbereich kann zu tiefe Temperaturen und zu hohe Temperaturen ausschließen. Dadurch können Manipulationen beispielsweise durch ein Vereisen oder ein Überhitzen des Microcontrollers verhindert werden. Mehrere Zufallswerte können zu einem Schlüssel zusammengesetzt werden. Ein Schlüssel kann zum Verschlüsseln und Entschlüsseln von Kommunikation verwendet werden. Ebenso kann der Schlüssel für die Challenge and Response Identifikation zwischen dem Steuergerät und dem Diagnosegerät verwendet werden. Der Schlüssel kann eine größere Wortlänge als der Zufallswert aufweisen, um eine unbefugte Entschlüsselung zu erschweren. Der Schlüssel kann beispielsweise mit einer Wortlänge von 128 Bit bereitgestellt werden. Durch 128 Bit Wortlänge kann ein unbefugtes Entschlüsseln stark erschwert werden.
Eine Identifikationsnummer des Microcontrollers kann in den Schlüssel integriert werden. Durch die Einbindung der Identifikationsnummer kann der Schlüssel dem Microcontroller zugewiesen werden. So kann beispielsweise das Diagnosegerät erkennen, welcher Microcontroller die Zufallswerte generiert hat und seine Antwort auf die Challenge and Response entsprechend anpassen.
Der Schlüssel kann zyklisch erneuert werden. Der Schlüssel kann regelmäßig erneuert werden. Durch Austauschen des Schlüssels kann die Kommunikation geschützt werden, auch wenn ein Schlüssel kompromittiert sein sollte.
Kurze Figurenbeschreibung
Nachfolgend wird ein vorteilhaftes Ausführungsbeispiel der Erfindung unter Bezugnahme auf die begleitende Figur erläutert. Es zeigt:
Fig. 1 ein Ablaufdiagramm eines Verfahrens zum Erzeugen eines Zufallswerts gemäß einem Ausführungsbeispiel.
Die Figur ist lediglich eine schematische Darstellung und dient nur der Erläuterung der Erfindung. Gleiche oder gleichwirkende Elemente sind durchgängig mit den gleichen Bezugszeichen versehen.
Detaillierte Beschreibung Fig. 1 zeigt ein Ablaufdiagramm eines Verfahrens zum Erzeugen eines Zufallswerts 100 gemäß einem Ausführungsbeispiel. Das Verfahren wird in einem Steuergerät 102 eines Fahrzeugs ausgeführt. Das Steuergerät 102 weist einen Microcontroller 104 auf, der einen internen Temperatursensor 106 und einen internen Analog-Digital-Wandler 108 aufweist.
Der Temperatursensor 106 bildet eine Temperatur des Microcontrollers 104 in einem analogen elektrischen Signal ab. Das Signal wird hier als Analogtemperatursignal 110 bezeichnet. Das Analogtemperatursignal 110 kann als elektrischer Stromfluss und/oder elektrische Spannung vorliegen. Das Analogtemperatursignal 110 wird von dem Analog- Digital-Wandler 108 eingelesen. Der Analog-Digital-Wandler 108 digitalisiert das Analogtemperatursignal 110 und gibt einen binären Binärtemperaturwert 112 aus.
Die Temperatur des Microcontrollers 104 ändert sich je nach seiner Belastung. Dabei steigt oder fällt die Temperatur. Die Temperatur ist selten konstant. Selbst bei konstanter Temperatur schwankt das Analogtemperatursignal 110 mit einer sehr geringen Schwankungsbreite zufällig um einen Mittelwert. Anders ausgedrückt ist das Analogtemperatursignal verrauscht. Durch das sich im Wesentlichen andauernd ändernde Analogtemperatursignal 110 wird im Analog-Digital-Wandler 108 auch andauernd ein sich geringfügig, zufällig ändernder Binärtempertaturwert 112 digitalisiert. Der Zufallswert 100 wird bei dem hier vorgestellten Ansatz aus dem Binärtemperaturwert 112 abgeleitet.
In einem Ausführungsbeispiel wird nur ein Rauschanteil 114 des Binärtemperaturwerts 112 verwendet, um den Zufallswert 100 abzuleiten. Der Binärtemperaturwert 112 weist eine vordefinierte Wortlänge mit einer vorgegebenen Anzahl Bits 116 auf. Die Wortlänge bestimmt dabei eine Auflösung der Digitalisierung. Als Rauschanteil 114 werden in einem Ausführungsbeispiel die zwei Bits 116 mit der niedrigsten Bitwertigkeit verwendet. Diese zwei Bits 116 werden extrahiert und der Zufallswert 100 unter Verwendung der extrahierten Bits 116 abgeleitet.
In einem Ausführungsbeispiel wird eine Abfolge 118 von mehreren nacheinander digitalisierten Binärtemperaturwerten 112 verwendet, um den Zufallswert 100 zu generieren. Dazu wird aus jedem Binärtemperaturwert 112 jeweils zumindest ein Bit 116 des Binärtemperaturwerts 112 extrahiert. Die Bits 116 aller Binärtemperaturwerte 112 werden dann zu dem Zufallswert 100 zusammengesetzt.
In einem Ausführungsbeispiel werden pro Binärtemperaturwert 112 die zwei Bits 116 mit der niedrigsten Bitwertigkeit extrahiert und zu dem Zufallswert 100 zusammengesetzt. Dabei repräsentieren die Bits 116 in Abhängigkeit davon, an welcher Stelle des Zufallswerts 100 sie eingesetzt werden, mehrheitlich andere Bitwertigkeiten als in den zugrundeliegenden Binärtemperaturwerten 112.
In einem Ausführungsbeispiel werden von 16 Binärtemperaturwerten 112 je zwei Bits 116 extrahiert und zu einem 32-Bit Zufallswert 100 zusammengesetzt.
In einem Ausführungsbeispiel werden die Bits 116 der einzelnen Binärtemperaturwerte 112 nacheinander extrahiert. Wenn eine Anzahl neue Bits 116 aus einem neuen Binärtemperaturwert 112 extrahiert werden, wird eine entsprechende Anzahl alter Bits 116 aus dem vorherigen Zufallswert 100 entfernt und durch die neuen Bits 116 ersetzt. Damit ergibt sich bei jeder Extraktion von Bits 116 ein neuer Zufallswert 100.
In einem Ausführungsbeispiel werden jeweils die ältesten Bits 116 entfernt und durch die neuen Bits 116 ersetzt. Dabei können die neuen Bits 116 stellengleich eingesetzt werden, also an die gleiche Stelle des Zufallswerts 100, an der die ältesten Bits 116 entfernt worden sind. Alternativ können die Bits 116 in den Zufallswert 100 eingeschoben werden und ältere Bits 116 auf andere Stellen des Zufallswerts 100 verdrängen. Dabei werden die ältesten Bits 116 an einen Wortanfang und/oder ein Wortende des Zufallswerts 100 verdrängt und dort entfernt, wenn die neuen Bits 116 eingeschoben werden.
In einem Ausführungsbeispiel wird überwacht, ob sich der Binärtemperaturwert 112 innerhalb eines Toleranzbereichs befindet. Wenn der Binärtemperaturwert 112 den Toleranzbereich verlässt, beispielsweise wenn der Microcontroller 104 zu stark erwärmt oder abgekühlt wird, wird ein Fehlersignal 120 ausgegeben und die Ableitung des Zufallswerts 100 gestoppt. So können Manipulationen durch eine gezielte Wärmeeinwirkung oder Kälteeinwirkung verhindert werden. In einem Ausführungsbeispiel wird der Zufallswert 100 plausibilisiert. Beispielsweise wird überwacht, ob sich der Zufallswert 100 über die Zeit ändert. Falls sich der Zufallswert 100 nicht ändert, wird das Fehlersignal 120 ausgegeben.
In einem Ausführungsbeispiel wird der Zufallswert zu einem Schlüssel 122 weiterverarbeitet. Der Schlüssel wird basierend auf dem Zufallswert 100 erzeugt. Dabei geht eine Seriennummer und/oder eine Identifikationsnummer 124 des Microcontrollers 104 in den Schlüssel 122 ein, um beispielsweise den erzeugten Schlüssel 122 zu dem Microcontroller 102 zuordnen zu können.
In einem Ausführungsbeispiel wird der Schlüssel 122 aus mehreren Zufallswerten 100 zusammengesetzt. Dabei kann beispielsweise für jeden abgeleiteten Zufallswert 100 ein neuer Schlüssel 122 erstellt werden, indem der jeweils älteste Zufallswert 100 durch den neuesten Zufallswert 100 ersetzt wird. Alternativ kann abgewartet werden, bis die erforderliche Anzahl an Zufallswerten 100 abgeleitet worden ist und dann der neue Schlüssel 122 erzeugt werden.
In einem Ausführungsbeispiel wird der Schlüssel 122 mit 128 Bit Wortlänge erzeugt. Dazu können beispielsweise die Identifikationsnummer 124 und zumindest ein Zufallswert 100 auf die 128 Bit komprimiert werden. Das Komprimieren kann beispielsweise unter Verwendung eines Miyaguchi-Preneel Algorithmus 130 erfolgen.
Der Schlüssel 122 kann dann weiterverwendet werden. Beispielsweise kann der Schlüssel 122 von einem Verschlüsselungsalgorithmus 128 verwendet werden, um eine zufällige Ausgabe 130 auszugeben. Dabei kann der Schlüssel 122 mit jeder Ausgabe 130 verändert werden. Der Schlüssel 122 kann auch unter Verwendung einer deterministisch erzeugten Zufallszahl 132 verändert werden. Die Zufallszahl 132 kann auch verwendet werden, um die Ausgabe 130 zu codieren. Wenn dann ein neuer Schlüssel 122 erzeugt worden ist, kann der alte Schlüssel 122 verworfen werden und durch den neuen Schlüssel 122 ersetzt werden.
Mit anderen Worten wird die Erzeugung von Zufallszahlen in Microcontrollern ohne dedizierter Hardware vorgestellt. Für kryptografische Funktionen werden echte Zufallszahlen benötigt, beispielsweise als Seed für Challenge Response Verfahren. Üblicherweise werden diese in einem dedizierten Hardware-Modul erzeugt. Kleine Microcontroller bieten diese Funktion aus Kostengrunden nicht an, obwohl auch für deren Zielapplikationen ein immer höheres Maß an Sicherheit gefordert wird.
Bei dem hier vorgestellten Ansatz dient das thermische Rauschen des internen Temperatursensors als Entropiequelle für die Zufallszahlen. Dazu wird die Spannung an dem NTC (Heißleiter) über einen AD- Wandler digitalisiert, anschließend das Rauschen aus den Bits mit den niedrigen Bitwertigkeiten (LSBs) extrahiert und die Entropie durch eine Kompressionsfunktion erhöht.
Um die Datenrate zu erhöhen kann ein Pseudo Random Number Generator (PRNG) nachgeschaltet werden.
Das Verwenden der internen Temperatursensoren kann eine Manipulation von außen erschweren. Zwar kann die Temperatur von außen beeinflusst werden, was aber nicht eins zu eins auf das Rauschen übertragbar ist. Außerdem ist der Temperaturmesswert vorhanden und kann zur Plausibilisierung herangezogen werden.
Durch die Verwendung der internen Quelle wird die Manipulation von außen erschwert. Über den Analog-Digital-Converter (ADC) Treiber werden die Rohdaten der Microcontroller- Temperaturmessung sechzehn Mal in Folge ausgelesen und die zwei Least Significant Bits (LSBs) zu einem 32 Bit-Wert zusammengefügt. Mehrere 32 Bit-Werte werden zusammen mit einer Microcontroller (ECU)-individuellen ID (z.B. Seriennummer) mit Hilfe einer Miyaguchi- Preneel-Funktion komprimiert und so in einen 128 Bit Seed überführt.
Der Seed dient der Initialisierung eines Pseudo Random Number Generators (PRNG) auf Basis eines AES-128 Algorithmus, um höhere Datenraten zu erhalten. Der Integrity Monitor überwacht die Entropie der Quelle, um Fehler wie beispielsweise „stuck at low" zu erkennen. Die Rückführung des internen Zustandes des Pseudo Random Number Generators (PRNG) ermöglicht ein zyklisches „Reseeden", um die Entropie im Pseudo Random Number Generator (PRNG) aufrecht zu erhalten. Da es sich bei der vorhergehend detailliert beschriebenen Vorrichtungen und Verfahren um Ausführungsbeispiele handelt, können sie in üblicher weise vom Fachmann in einem weiten Umfang modifiziert werden, ohne den Bereich der Erfindung zu verlassen. Insbesondere sind die mechanischen Anordnungen und die Größenverhältnisse der einzelnen Elemente zueinander lediglich beispielhaft.
BEZUGSZEICHENLISTE
100 Zufallswert 102 Steuergerät 104 Microcontroller
106 Temperatursensor 108 Analog-Digital-Wandler 110 Analogtemperatursignal 112 Binärtemperaturwert 114 Rauschanteil
116 Bits 118 Abfolge 120 Fehlersignal 122 Schlüssel 124 Identifikationsnummer
126 Miyaguchi-Preneel Algorithmus 128 Verschlüsselungsalgorithmus 130 Ausgabe 132 Zufallszahl

Claims

ANSPRÜCHE
1. Verfahren zum Erzeugen eines Zufallswerts (100) unter Verwendung eines Microcontrollers (104), wobei ein analoges Analogtemperatursignal (110) eines internen Temperatursensors (106) des Microcontrollers (104) unter Verwendung eines internen Analog-Digital-Wandlers (108) des Microcontrollers (104) zu einem binären Binärtemperaturwert (112) digitalisiert wird, wobei der Zufallswert (100) aus dem Binärtemperaturwert (112) abgeleitet wird.
2. Verfahren gemäß Anspruch 1, bei dem der Zufallswert (100) aus einem Rauschanteil (114) des Binärtemperaturwerts (112) abgeleitet wird.
3. Verfahren gemäß einem der vorhergehenden Ansprüche, bei dem der Zufallswert (100) aus Bits (116) des Binärtemperaturwerts (112) mit einer niedrigen Bitwertigkeit abgeleitet wird.
4. Verfahren gemäß Anspruch 3, bei dem der Zufallswert (100) aus den Bits (116) mit den zwei niedrigsten Bitwertigkeiten abgeleitet wird.
5. Verfahren gemäß einem der vorhergehenden Ansprüche, bei dem der Zufallswert (100) aus einer Abfolge (118) von Binärtemperaturwerten (112) abgeleitet wird.
6. Verfahren gemäß Anspruch 5, bei dem pro Binärtemperaturwert (112) je eine Anzahl an Bits (116) extrahiert wird und der Zufallswert (100) aus den extrahierten Bits (116) zusammengesetzt wird.
7. Verfahren gemäß einem der Ansprüche 5 bis 6, bei dem ein ältester Binärtemperaturwert (112) der Abfolge (118) von Binärtemperaturwerten (112) verworfen wird, wenn ein neuer Binärtemperaturwert (112) digitalisiert wird, wobei der neue Binärtemperaturwert (112) zu der Abfolge (118) hinzugefügt wird.
8. Verfahren gemäß einem der vorhergehenden Ansprüche, bei dem der Zufallswert (100) mit einer Wortlänge von 32 Bit bereitgestellt wird.
9. Verfahren gemäß einem der vorhergehenden Ansprüche, bei dem der Zufallswert (100) abgeleitet wird, wenn der Binärtemperaturwert (112) innerhalb eines Temperaturtoleranzbereichs ist.
10. Verfahren gemäß einem der vorhergehenden Ansprüche, bei dem mehrere Zufallswerte (100) zu einem Schlüssel (122) zusammengesetzt werden.
11. Verfahren gemäß Anspruch 10, bei dem eine Identifikationsnummer (124) des Microcontrollers (104) in den Schlüssel (122) integriert wird.
12. Verfahren gemäß einem der Ansprüche 10 bis 11, bei dem der Schlüssel (122) zyklisch erneuert wird.
13. Verfahren gemäß einem der Ansprüche 10 bis 12, bei dem der Schlüssel (122) mit einer Wortlänge von 128 Bit bereitgestellt wird.
14. Steuergerät (102) für ein Fahrzeug, wobei das Steuergerät (102) einen Microcontroller (104) mit einem internen Temperatursensor (106) und einem internen Analog-Digital-Wandler (108) aufweist, wobei das Steuergerät (102) dazu konfiguriert ist, ein Verfahren gemäß einem der Ansprüche 1 bis 13 auszuführen.
PCT/EP2022/067337 2021-07-01 2022-06-24 Verfahren und steuergerät zum erzeugen eines zufallswerts unter verwendung eines microcontrollers WO2023274872A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202280045735.9A CN117581219A (zh) 2021-07-01 2022-06-24 使用微控制器生成随机数的方法和控制装置
EP22740788.9A EP4363990A1 (de) 2021-07-01 2022-06-24 Verfahren und steuergerät zum erzeugen eines zufallswerts unter verwendung eines microcontrollers

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102021117008.7 2021-07-01
DE102021117008.7A DE102021117008A1 (de) 2021-07-01 2021-07-01 Verfahren und steuergerät zum erzeugen eines zufallswerts unter verwendung eines microcontrollers

Publications (1)

Publication Number Publication Date
WO2023274872A1 true WO2023274872A1 (de) 2023-01-05

Family

ID=82492830

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2022/067337 WO2023274872A1 (de) 2021-07-01 2022-06-24 Verfahren und steuergerät zum erzeugen eines zufallswerts unter verwendung eines microcontrollers

Country Status (4)

Country Link
EP (1) EP4363990A1 (de)
CN (1) CN117581219A (de)
DE (1) DE102021117008A1 (de)
WO (1) WO2023274872A1 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8015224B1 (en) * 2006-12-27 2011-09-06 Marvell International Ltd. Entropy source for random number generation
US20180123607A1 (en) * 2016-11-01 2018-05-03 Texas Instruments Incorporated Digital Modulator Entropy Source

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3558488B2 (ja) 1997-05-20 2004-08-25 エニー株式会社 暗号通信システム
DE102013004795A1 (de) 2012-03-21 2013-09-26 Gabriele Trinkel System und Verfahren zum erzeugen von thermische Hot Spot zur Generierung von Zufallszahlen mit thermischen Rauschquellen im Cloud Computing
US9542156B2 (en) 2013-05-15 2017-01-10 Synopsys, Inc. Automatic control system and method for a true random number generator
DE102018100357A1 (de) 2018-01-09 2019-07-11 Infineon Technologies Ag Chip und verfahren zum sicheren speichern von geheimen daten

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8015224B1 (en) * 2006-12-27 2011-09-06 Marvell International Ltd. Entropy source for random number generation
US20180123607A1 (en) * 2016-11-01 2018-05-03 Texas Instruments Incorporated Digital Modulator Entropy Source

Also Published As

Publication number Publication date
DE102021117008A1 (de) 2023-01-05
CN117581219A (zh) 2024-02-20
EP4363990A1 (de) 2024-05-08

Similar Documents

Publication Publication Date Title
DE102012110499B9 (de) Sicherheitszugangsverfahren für elektronische Automobil-Steuergeräte
DE102013203415B4 (de) Erstellen eines abgeleiteten Schlüssels aus einem kryptographischen Schlüssel mittels einer physikalisch nicht klonbaren Funktion
EP2899714B1 (de) Gesichertes Bereitstellen eines Schlüssels
DE102013206202A1 (de) Sensormodul und Verfahren zum Betreiben eines Sensorsmoduls
DE19744961A1 (de) Erzeugen eindeutiger und unvorhersagbarer Werte
EP2891266A1 (de) Verfahren und anordnung zur sicheren kommunikation zwischen netzwerkeinrichtungen in einem kommunikationsnetzwerk
DE102012209404A1 (de) Vorrichtung zur Ausführung eines kryptographischen Verfahrens und Betriebsverfahren hierfür
DE102012217716A1 (de) Selbst-Test einer Physical Unclonable Function
DE102018212833A1 (de) Vorrichtung und verfahren zur erzeugung physikalisch unklonbarer funktionen
DE202017103778U1 (de) Kommunikationssicherungseinrichtung und -system für eine OBD-II-Schnittstelle eines Elektrokraftfahrzeuges
EP3709516B1 (de) Vorrichtung und verfahren zur hardware-basierten datenverschlüsselung mit komplementären widerstandsschaltern
DE102013205542A1 (de) Vorrichtung und Verfahren zur Verarbeitung von Daten
EP4363990A1 (de) Verfahren und steuergerät zum erzeugen eines zufallswerts unter verwendung eines microcontrollers
DE102015001847A1 (de) Einmalverschlüsselung von Zählerdaten
EP4059204B1 (de) Vorrichtungen, system, verfahren und computerprogramm zur hardware-basierten datenverschlüsselung mit impedanzschalter
WO2018114119A1 (de) Verfahren, vorrichtung und computerlesbares speichermedium mit instruktionen zum signieren von messwerten eines sensors
EP3371733B1 (de) Verschlüsseln des speicherinhalts eines speichers in einem eingebetteten system
WO2012028391A1 (de) Verfahren zum bereitstellen von informationen für ein steuergerät
DE102014008654A1 (de) Temporäre Berechtigung
EP2288073A1 (de) Vorrichtung zur Verschlüsselung von Daten
EP1455312A1 (de) Verfahren und Einrichtung zur Wartung von sicherheitsrelevanten Programmcode eines Kraftfahrzeuges
DE102016219207A1 (de) Verfahren und vorrichtung zum zertifizieren einer sicherheitskritischen funktionskette
WO2023066721A1 (de) Verfahren zur gewährleistung einer it-sicherheit einer automatisierungsanlage und sicherheitssystem
EP4397004A1 (de) Verfahren zur gewährleistung einer it-sicherheit einer automatisierungsanlage und sicherheitssystem
DE102007023206B4 (de) Verfahren und Einrichtung zur sicheren Erzeugung und Verwaltung von Schlüsseln und deren Nutzung in Netzwerken zur sicheren Übertragung von Daten

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22740788

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 202280045735.9

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2022740788

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2022740788

Country of ref document: EP

Effective date: 20240201