Beschreibung description
Vorrichtung und Verfahren zum Erzeugen eines Schlüssels in einem programmierbaren Hardwaremodul Apparatus and method for generating a key in a programmable hardware module
Die vorliegende Erfindung betrifft eine Vorrichtung zum Erzeugen eines Schlüssels in einem programmierbaren Hardwaremodul. Des Weiteren betrifft die vorliegende Erfindung ein programmierbares Hardwaremodul mit einer solchen Vorrichtung. Darüber hinaus betrifft die vorliegende Erfindung ein Verfahren zum Erzeugen eines Schlüssels in einem programmierbaren Hardwaremodul . The present invention relates to a device for generating a key in a programmable hardware module. Furthermore, the present invention relates to a programmable hardware module having such a device. Moreover, the present invention relates to a method for generating a key in a programmable hardware module.
Programmierbare Hardwaremodule wie FPGAs (Field Programmable Gate Arrays) benutzen Bitströme, in denen alle Konfigurationseinstellungen des FPGAs vorhanden sind. Anwendungsschal - tungen sowie interne Geheimnisse für Sicherheitsanwendungen sind in einem solchen Bitstrom gespeichert. In SRAM-basierten FPGAs wird der Bitstrom extern gespeichert und während des Einschaltens geladen. Das bedeutet, dass ein Angreifer auf den Bitstrom zugreifen kann, diesen analysieren und manipulieren kann. Daher werden Geheimnisse oder Schlüssel nicht in einem solchen Bitstrom gespeichert. Programmable hardware modules such as Field Programmable Gate Arrays (FPGAs) use bitstreams that contain all the configuration settings of the FPGA. Application circuits as well as internal secrets for security applications are stored in such a bitstream. In SRAM-based FPGAs, the bitstream is stored externally and loaded during power-up. This means that an attacker can access, analyze and manipulate the bitstream. Therefore, secrets or keys are not stored in such a bit stream.
In FPGAs können Schlüssel beispielsweise durch Verwendung von Physical Unclonable Functions erzeugt werden. Schlüssel können aus physikalischen Eigenschaften, wie Laufzeitunterschiede von Signalpfaden, oder Hardwareschaltungen erzeugt werden. For example, in FPGAs, keys can be generated by using Physical Unclonable Functions. Keys can be generated from physical properties, such as propagation time differences of signal paths, or hardware circuits.
Vor diesem Hintergrund besteht eine Aufgabe der vorliegenden Erfindung darin, auf einfache Weise einen Schlüssel für einen FPGA bereitzustellen. Demgemäß wird eine Vorrichtung zum Erzeugen eines Schlüssels in einem programmierbaren Hardwaremodul vorgeschlagen, wobei das programmierbare Hardwaremodul einen Bitstrom aufweist, welcher Konfigurationseinstellungen des programmierbaren
Hardwaremoduls enthält. Die Vorrichtung weist eine Ausleseeinheit zum Auslesen von zumindest einem Teil des Bitstroms, eine Erzeugungseinheit zum Erzeugen eines Schlüssels basierend auf einer kryptographisehen Funktion und dem zumindest einen Teil des Bitstroms, und eine Speichereinheit zum Speichern des erzeugten Schlüssels auf. Against this background, an object of the present invention is to provide a key for a FPGA in a simple manner. Accordingly, an apparatus for generating a key in a programmable hardware module is proposed, wherein the programmable hardware module comprises a bitstream having configuration settings of the programmable hardware module Contains hardware module. The apparatus comprises a readout unit for reading out at least part of the bitstream, a generation unit for generating a key based on a cryptographic function and the at least part of the bitstream, and a memory unit for storing the generated key.
Die jeweilige Einheit, zum Beispiel Ausleseeinheit oder Erzeugungseinheit, kann hardwaretechnisch und/oder auch soft- waretechnisch implementiert sein. Bei einer hardwaretechnischen Implementierung kann die jeweilige Einheit als Vorrichtung oder als Teil einer Vorrichtung, zum Beispiel als Computer oder als Mikroprozessor oder als Steuerrechner eines Fahrzeuges ausgebildet sein. Bei einer softwaretechnischen Implementierung kann die jeweilige Einheit als Computerprogrammprodukt, als eine Funktion, als eine Routine, als Teil eines Programmcodes oder als ausführbares Objekt ausgebildet sein . Die Ausleseeinheit kann einen Teil des Bitstroms oder auch den gesamten Bitstrom auslesen. Dies kann direkt nach Laden des Bitstroms bei Einschalten des programmierbaren Hardwaremoduls erfolgen oder zu einem bestimmten Zeitpunkt, zu dem die Konfiguration des Bitstroms bekannt ist. The respective unit, for example read-out unit or generation unit, can be implemented in terms of hardware and / or software technology. In a hardware implementation, the respective unit may be designed as a device or as part of a device, for example as a computer or as a microprocessor or as a control computer of a vehicle. In a software implementation, the respective unit may be designed as a computer program product, as a function, as a routine, as part of a program code or as an executable object. The readout unit can read part of the bitstream or even the entire bitstream. This can be done directly after loading the bit stream when the programmable hardware module is turned on, or at some point in time when the configuration of the bitstream is known.
Die ausgelesenen Daten des Bitstroms können dann durch die Erzeugungseinheit unter Verwendung einer kryptographisehen Funktion in einen Schlüssel umgewandelt werden. Hierbei kann die kryptographisehe Funktion den zumindest einen Teil des Bitstroms verarbeiten, um den Schlüssel zu erzeugen. Dieser erzeugte Schlüssel kann für verschiedene kryptographisehe Funktionen eingesetzt werden. The read-out data of the bitstream may then be converted into a key by the generating unit using a cryptographic function. Here, the cryptographic function may process the at least part of the bitstream to generate the key. This generated key can be used for various cryptographic functions.
Beispielsweise kann der Schlüssel als privater Schlüssel für eine Verschlüsselung in Kombination mit einem öffentlichen Schlüssel verwendet werden. In diesem Fall muss der erzeugte Schlüssel die Vorrichtung nicht verlassen.
Der Schlüssel ist hierbei nicht an einem speziellen Speicherort oder Hardwareschaltung innerhalb des Bitstroms vorhanden, sondern stellt eine bearbeitete Version des gesamten Bitstroms dar. For example, the key may be used as a private key for encryption in combination with a public key. In this case, the generated key does not have to leave the device. The key is not present at a particular memory location or hardware circuit within the bitstream, but represents an edited version of the entire bitstream.
Durch die vorgeschlagene Vorrichtung können auf einfache Weise ohnehin vorhandene Daten, d.h. ein bereits vorhandener Bitstrom mit Konfigurationseinstellungen eines programmierbaren Hardwaremoduls, dazu verwendet werden, einen Schlüssel zu erzeugen. The proposed device makes it possible in a simple way to obtain existing data in any case, that is to say anyway. an already existing bitstream with configuration settings of a programmable hardware module, used to generate a key.
Unter einem programmierbaren Hardwaremodul kann beispielsweise ein FPGA verstanden werden. Im Folgenden werden die Begriffe programmierbares Hardwaremodul und FPGA synonym ver- wendet. A programmable hardware module can be understood as an FPGA, for example. In the following, the terms programmable hardware module and FPGA are used synonymously.
Die Vorrichtung kann als Prozessor in dem FPGA realisiert werden. Alternativ kann die Vorrichtung als Hardwareeinheit in dem FPGA realisiert werden. The device can be realized as a processor in the FPGA. Alternatively, the device can be realized as a hardware unit in the FPGA.
Gemäß einer Ausführungsform ist die Erzeugungseinheit dazu eingerichtet, kontinuierlich einen Schlüssel zu erzeugen. According to one embodiment, the generation unit is configured to continuously generate a key.
Hierbei werden die Daten des Bitstroms kontinuierlich der Er- zeugungseinheit zugeführt, die diese kontinuierlich in die kryptographische Funktion verschiebt. In this case, the data of the bit stream is continuously fed to the generating unit, which continuously shifts it into the cryptographic function.
Gemäß einer weiteren Ausführungsform ist die kryptographische Funktion eine kryptographische Komprimierungsfunktion. According to another embodiment, the cryptographic function is a cryptographic compression function.
Jede Art von kryptographischer Komprimierungsfunktion, die dazu geeignet ist, einen Schlüssel zu erzeugen, kann verwendet werden. Gemäß einer weiteren Ausführungsform ist die kryptographische Komprimierungsfunktion eine Hashfunktion .
Eine Hashfunktion liefert als Ausgangswert, d.h. als Schlüssel, einen Hashwert . Ein solcher Hashwert kann beispielsweise auch zur Überprüfung der Integrität des Bitstroms verwendet werden, wie im Folgenden näher erläutert wird. Any type of cryptographic compression function that is suitable for generating a key can be used. According to another embodiment, the cryptographic compression function is a hash function. A hash function returns a hash value as the initial value, ie as a key. Such a hash value can also be used, for example, to check the integrity of the bit stream, as will be explained in more detail below.
Gemäß einer weiteren Ausführungsform kann jede Art von According to another embodiment, any type of
Schlüsselableitungsfunktion zur Erzeugung des Schlüssels aus dem zumindest einen Teil des Bitstroms verwendet werden. Gemäß einer weiteren Ausführungsform weist die Speichereinheit einen flüchtigen Speicher auf. Key derivation function for generating the key from which at least a part of the bit stream are used. According to a further embodiment, the memory unit has a volatile memory.
Der flüchtige Speicher kann jederzeit wieder gelöscht werden, beispielsweise bei Erkennen einer Manipulation. Beispielswei - se kann der flüchtige Speicher bei jedem Abschalten des FPGAs automatisch gelöscht werden. The volatile memory can be deleted again at any time, for example when a manipulation is detected. For example, the volatile memory can be automatically cleared each time the FPGA is turned off.
Gemäß einer weiteren Ausführungsform ist die Speichereinheit dazu eingerichtet, kontinuierlich einen erzeugten Schlüssel in dem flüchtigen Speicher zu speichern. According to another embodiment, the memory unit is configured to continuously store a generated key in the volatile memory.
Hierbei kann ein bereits vorhandener Schlüssel durch einen neu erzeugten Schlüssel ersetzt werden. Gemäß einer weiteren Ausführungsform ist die Ausleseeinheit dazu eingerichtet, den zumindest einen Teil des Bitstroms über eine interne Konfigurationsschnittstelle auszulesen. In this case, an already existing key can be replaced by a newly generated key. In accordance with a further embodiment, the readout unit is set up to read out the at least one part of the bit stream via an internal configuration interface.
Das FPGA weist eine interne Konfigurationsschnittstelle auf, über die die Vorrichtung bzw. die Ausleseeinheit auf den Bitstrom zugreifen und diesen auslesen kann. The FPGA has an internal configuration interface, via which the device or the readout unit can access the bit stream and read it out.
Gemäß einer weiteren Ausführungsform weist die Vorrichtung eine Verschlüsselungseinheit zum Entschlüsseln des Bitstroms unter Verwendung eines geheimen Schlüssels auf. According to another embodiment, the device comprises an encryption unit for decrypting the bitstream using a secret key.
Auf diese Weise kann der externe Bitstrom gegen Angreifer gesichert werden. Wenn ein Angreifer auf den Bitstrom zugreifen
möchte, muss er in diesem Fall zunächst die Verschlüsselung brechen. Anschließend kann er erst die verwendete Schlüssel - erzeugungsfunktion bzw. kryptographisehe Funktion analysieren . In this way, the external bitstream can be secured against attackers. When an attacker accesses the bitstream If he wants to, he must first break the encryption in this case. Then he can first analyze the used key generation function or cryptographic function.
Gemäß einer weiteren Ausführungsform weist die Vorrichtung eine Verschlüsselungseinheit zum Verschlüsseln von Teilen des Bitstroms unter Verwendung des erzeugten Schlüssels auf. Die Verschlüsselungseinheit kann ebenfalls zum Entschlüsseln von Teilen des Bitstroms verwendet werden. According to another embodiment, the apparatus comprises an encryption unit for encrypting portions of the bitstream using the generated key. The encryption unit may also be used to decrypt portions of the bitstream.
In einer Ausführungsform kann zur Erzeugung des Schlüssels ein unbekannter Teilbereich des Bitstroms verwendet werden. In diesem Fall müsste ein Angreifer den gesamten Prozess mittels Reverse-Engineering analysieren, um die relevanten Teile des Bitstroms zu detektieren und die Verschlüsselungsfunktion zu analysieren. Gemäß einer weiteren Ausführungsform ist die Erzeugungseinheit dazu eingerichtet, den Schlüssel basierend auf einer kryptographisehen Funktion, dem zumindest einen Teil des Bitstroms und einem externen Geheimnis zu erzeugen. Gemäß dieser Ausführungsform basiert der Schlüssel zusätzlich auf einem externen Geheimnis. Alternativ oder zusätzlich können Geheimnisse verwendet werden, die in dem Bitstrom versteckt sind, was ein Reverse-Engineering weiter erschwert. Gemäß einer weiteren Ausführungsform ist die Erzeugungseinheit dazu eingerichtet, eine Mehrzahl von Schlüsseln basierend auf einer kryptographisehen Funktion und einer Mehrzahl von Teilen des Bitstroms zu erzeugen. Der Bitstrom kann beispielsweise in mehrere Teile aufgeteilt werden und basierend auf jedem Teil oder Bereich kann ein Schlüssel erzeugt werden. Dies kann auch dazu verwendet werden, verschiedene Teile des Bitstroms auf ihre Integrität hin
zu überprüfen. Die Mehrzahl von Teilen des Bitstroms können disjunkte Mengen des Bitstroms sein. Alternativ können sich die Teile des Bitstroms überschneiden. Gemäß einer weiteren Ausführungsform weist die Vorrichtung eine Überprüfungseinheit zum Überprüfen der Integrität des Bitstroms unter Verwendung des erzeugten Schlüssels auf. In one embodiment, an unknown portion of the bitstream may be used to generate the key. In this case, an attacker would have to reverse engineer the entire process to detect the relevant parts of the bitstream and analyze the encryption function. According to another embodiment, the generation unit is configured to generate the key based on a cryptographic function, the at least part of the bitstream, and an external secret. In addition, according to this embodiment, the key is based on an external secret. Alternatively or additionally, secrets hidden in the bitstream may be used, further complicating reverse engineering. According to another embodiment, the generating unit is configured to generate a plurality of keys based on a cryptographic function and a plurality of parts of the bitstream. For example, the bit stream may be divided into multiple parts, and a key may be generated based on each part or region. This can also be used to different parts of the bitstream for their integrity to check. The plurality of parts of the bitstream may be disjoint sets of the bitstream. Alternatively, the parts of the bitstream may overlap. According to a further embodiment, the device comprises a checking unit for checking the integrity of the bitstream using the generated key.
Wenn ein Angreifer den Bitstrom manipuliert, wird das Ergeb- nis der kryptographisehen Funktion unterschiedlich zu einem Ergebnis des nicht-manipulierten Bitstroms sein. Das bedeutet, dass ein anderer Schlüssel erzeugt werden würde. If an attacker manipulates the bitstream, the result of the cryptographic function will be different than a result of the un-manipulated bitstream. This means that another key would be generated.
Da der Bitstrom Konfigurationseinstellungen des FPGAs ent- hält, kann ein Angreifer keine zusätzliche Schaltung integrieren, um den Schlüssel auszulesen, ohne den Bitstrom zu verändern. Daher wird nicht mehr der ursprüngliche Schlüssel erzeugt und der Angreifer kann den ursprünglichen Schlüssel nicht mehr auslesen. Because the bitstream contains configuration settings of the FPGA, an attacker can not integrate additional circuitry to read the key without changing the bitstream. Therefore, the original key is no longer generated and the attacker can no longer read the original key.
Des Weiteren würden andere kryptographische Funktionen ebenfalls nicht mehr ordnungsgemäß funktionieren, da der Bitstrom verändert wurde . Gemäß einem weiteren Aspekt wird ein programmierbares Hardwaremodul vorgeschlagen, welches eine wie oben erläuterte Vorrichtung zum Erzeugen eines Schlüssels aufweist. Furthermore, other cryptographic functions would also not work properly because the bitstream was changed. According to a further aspect, a programmable hardware module is proposed, which has a device for generating a key as explained above.
Gemäß einer Ausführungsform ist das programmierbare Hardware- modul ein Field Programmable Gate Array (FPGA) . In one embodiment, the programmable hardware module is a Field Programmable Gate Array (FPGA).
Das FPGA kann ein SRAM (static random-access memory) -basiertes FPGA sein. Gemäß einem weiteren Aspekt wird ein Verfahren zum Erzeugen eines Schlüssels in einem programmierbaren Hardwaremodul vorgeschlagen, wobei das programmierbare Hardwaremodul einen Bitstrom aufweist, welcher Konfigurationseinstellungen des
programmierbaren Hardwaremoduls enthält. Das Verfahren weist die folgenden Schritte auf: Auslesen von zumindest einem Teil des Bitstroms, Erzeugen eines Schlüssels basierend auf einer kryptographisehen Funktion und dem zumindest einen Teil des Bitstroms, und Speichern des erzeugten Schlüssels. The FPGA may be a static random-access memory (SRAM) -based FPGA. According to a further aspect, a method for generating a key in a programmable hardware module is proposed, wherein the programmable hardware module has a bit stream, which configuration settings of the contains programmable hardware module. The method comprises the steps of: reading at least a portion of the bitstream, generating a key based on a cryptographic function and the at least a portion of the bitstream, and storing the generated key.
Weiterhin wird ein Computerprogrammprodukt vorgeschlagen, welches auf einer programmgesteuerten Einrichtung die Durchführung des wie oben erläuterten Verfahrens veranlasst. Furthermore, a computer program product is proposed, which causes the execution of the method as explained above on a program-controlled device.
Ein Computerprogrammprodukt, wie z.B. ein Computerprogramm- Mittel, kann beispielsweise als Speichermedium, wie z.B. A computer program product, such as a computer program means may, for example, be used as a storage medium, e.g.
Speicherkarte, USB-Stick, CD-ROM, DVD, oder auch in Form einer herunterladbaren Datei von einem Server in einem Netzwerk bereitgestellt oder geliefert werden. Dies kann zum Beispiel in einem drahtlosen Kommunikationsnetzwerk durch die Übertragung einer entsprechenden Datei mit dem Computerprogrammprodukt oder dem Computerprogramm-Mittel erfolgen. Die für die vorgeschlagene Vorrichtung beschriebenen Ausführungsformen und Merkmale gelten für das vorgeschlagene Verfahren entsprechend. Memory card, USB stick, CD-ROM, DVD, or even in the form of a downloadable file provided by a server in a network or delivered. This can be done, for example, in a wireless communication network by transmitting a corresponding file with the computer program product or the computer program means. The embodiments and features described for the proposed device apply accordingly to the proposed method.
Weitere mögliche Implementierungen der Erfindung umfassen auch nicht explizit genannte Kombinationen von zuvor oder im Folgenden bezüglich der Ausführungsbeispiele beschriebenen Merkmale oder Ausführungsformen . Dabei wird der Fachmann auch Einzelaspekte als Verbesserungen oder Ergänzungen zu der jeweiligen Grundform der Erfindung hinzufügen. Further possible implementations of the invention also include not explicitly mentioned combinations of features or embodiments described above or below with regard to the exemplary embodiments. The skilled person will also add individual aspects as improvements or additions to the respective basic form of the invention.
Weitere vorteilhafte Ausgestaltungen und Aspekte der Erfindung sind Gegenstand der Unteransprüche sowie der im Folgenden beschriebenen Ausführungsbeispiele der Erfindung. Im Weiteren wird die Erfindung anhand von bevorzugten Ausführungs- formen unter Bezugnahme auf die beigelegten Figuren näher erläutert .
Fig. 1 zeigt ein schematisches Blockdiagramm einer Ausführungsform einer Vorrichtung zum Erzeugen eines Schlüssels in einem programmierbaren Hardwaremodul; Fig. 2 zeigt ein schematisches Blockdiagramm einer Ausführungsform eines FPGAs mit einer Vorrichtung nach Fig. 1; und Further advantageous embodiments and aspects of the invention are the subject of the dependent claims and the embodiments of the invention described below. In the following, the invention will be explained in more detail by means of preferred embodiments with reference to the enclosed figures. Fig. 1 is a schematic block diagram of one embodiment of a device for generating a key in a programmable hardware module; Fig. 2 is a schematic block diagram of one embodiment of an FPGA with an apparatus of Fig. 1; and
Fig. 3 zeigt ein schematisches Ablaufdiagramm eines Verfahrens zum Erzeugen eines Schlüssels in einem programmierbaren Hardwaremodul. 3 shows a schematic flow diagram of a method for generating a key in a programmable hardware module.
In den Figuren sind gleiche oder funktionsgleiche Elemente mit denselben Bezugszeichen versehen worden, sofern nichts anderes angegeben ist. In the figures, the same or functionally identical elements have been given the same reference numerals, unless stated otherwise.
Fig. 1 zeigt eine Vorrichtung 10 zum Erzeugen eines Schlüssels in einem programmierbaren Hardwaremodul 1, welches in Fig. 2 gezeigt ist. Das programmierbare Hardwaremodul 1 weist einen Bitstrom auf, welcher Konfigurationseinstellungen des programmierbaren Hardwaremoduls 1 enthält 1 shows a device 10 for generating a key in a programmable hardware module 1, which is shown in FIG. The programmable hardware module 1 has a bitstream containing configuration settings of the programmable hardware module 1
Die Vorrichtung 10 weist eine Ausleseeinheit 11, eine Erzeugungseinheit 12, eine Speichereinheit 13, eine Verschlüsselungseinheit 14 und eine Überprüfungseinheit 15 auf. The device 10 has a read-out unit 11, a generation unit 12, a memory unit 13, an encryption unit 14 and a checking unit 15.
Die Ausleseeinheit 11 kann einen Teil, mehrere Teile oder auch den gesamten Bitstrom über eine Konfigurationsschnittstelle 20 auslesen. Die Erzeugungseinheit 12 kann basierend auf den ausgelesenen Daten des Bitstroms und einer kryptographisehen Funktion, beispielsweise einer Hashfunktion, einen Schlüssel erzeugen. Zusätzlich kann auch ein externes Geheimnis verwendet werden. Der erzeugte Schlüssel kann dann durch die Speichereinheit 13 beispielsweise in einem flüchtigen Speicher gespeichert werden .
Der erzeugte Schlüssel kann für verschiedene Zwecke verwendet werden . The read-out unit 11 can read out a part, several parts or also the entire bit stream via a configuration interface 20. The generating unit 12 may generate a key based on the read-out data of the bitstream and a cryptographic function, such as a hash function. In addition, an external secret can also be used. The generated key can then be stored by the memory unit 13, for example in a volatile memory. The generated key can be used for different purposes.
Unter anderem kann die Verschlüsselungseinheit 14 den erzeug- ten Schlüssel dazu verwenden, Teile des Bitstroms zu verschlüsseln oder zu entschlüsseln. Der Bitstrom kann auch durch das FPGA 1 unter Verwendung des erzeugten Schlüssels verschlüsselt werden. Ein anderer Verwendungszweck liegt in der Überprüfung der Integrität des Bitstroms. Hierzu kann die Überprüfungseinheit 15 den Bitstrom unter Verwendung des erzeugten Schlüssels überprüfen. Bei einer Manipulation des Bitstroms weicht der ursprünglich erzeugte Schlüssel von einem Hashwert des mani- pulierten Bitstroms ab, wodurch eine Integritätsüberprüfung stattfinden kann. Among other things, the encryption unit 14 may use the generated key to encrypt or decrypt portions of the bitstream. The bitstream may also be encrypted by the FPGA 1 using the generated key. Another purpose is to verify the integrity of the bitstream. For this purpose, the checking unit 15 can check the bit stream using the generated key. When the bitstream is manipulated, the originally generated key deviates from a hashed value of the manipulated bitstream, whereby an integrity check can take place.
Fig. 2 zeigt ein programmierbares Hardwaremodul 1. Das programmierbare Hardwaremodul kann beispielsweise ein FPGA sein. 2 shows a programmable hardware module 1. The programmable hardware module may be, for example, an FPGA.
Das FPGA 1 weist eine (interne) Konfigurationsschnittstelle 20 auf. In dem FPGA 1 wird ein Bitstrom geladen, der über die Konfigurationsschnittstelle 20 durch die Vorrichtung 10 ausgelesen werden kann. The FPGA 1 has an (internal) configuration interface 20. In the FPGA 1, a bitstream is loaded, which can be read out via the configuration interface 20 by the device 10.
Fig. 3 zeigt ein Verfahren zum Erzeugen eines Schlüssels in einem programmierbaren Hardwaremodul 1. Das Verfahren weist die Schritte 301 bis 303 auf. In Schritt 301 wird zumindest ein Teil des Bitstroms des Hardwaremoduls 1 ausgelesen. 3 shows a method for generating a key in a programmable hardware module 1. The method comprises the steps 301 to 303. In step 301, at least part of the bit stream of the hardware module 1 is read out.
In Schritt 302 wird ein Schlüssel basierend auf einer kryp- tographischen Funktion und dem zumindest einen Teil des Bit- Stroms erzeugt. In step 302, a key is generated based on a cryptographic function and the at least part of the bitstream.
In Schritt 303 wird der erzeugte Schlüssel gespeichert.
Obwohl die vorliegende Erfindung anhand von Ausführungsbeispielen beschrieben wurde, ist sie vielfältig modifizierbar.
In step 303, the generated key is stored. Although the present invention has been described with reference to embodiments, it is variously modifiable.