WO2006125431A1 - Verfahren zur erzeugung und/oder einprägung eines wiedergewinnbaren kryptographischen schlüssels bei der herstellung einer topographischen struktur - Google Patents

Verfahren zur erzeugung und/oder einprägung eines wiedergewinnbaren kryptographischen schlüssels bei der herstellung einer topographischen struktur Download PDF

Info

Publication number
WO2006125431A1
WO2006125431A1 PCT/DE2006/000909 DE2006000909W WO2006125431A1 WO 2006125431 A1 WO2006125431 A1 WO 2006125431A1 DE 2006000909 W DE2006000909 W DE 2006000909W WO 2006125431 A1 WO2006125431 A1 WO 2006125431A1
Authority
WO
WIPO (PCT)
Prior art keywords
line structures
topographical structure
measuring
random
generated
Prior art date
Application number
PCT/DE2006/000909
Other languages
English (en)
French (fr)
Inventor
Peter Fischer
Matthias Harter
Original Assignee
Universität Mannheim
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 Universität Mannheim filed Critical Universität Mannheim
Priority to EP06753200A priority Critical patent/EP1897139A1/de
Priority to US11/921,058 priority patent/US20090304181A1/en
Publication of WO2006125431A1 publication Critical patent/WO2006125431A1/de

Links

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L23/00Details of semiconductor or other solid state devices
    • H01L23/57Protection from inspection, reverse engineering or tampering
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2924/00Indexing scheme for arrangements or methods for connecting or disconnecting semiconductor or solid-state bodies as covered by H01L24/00
    • H01L2924/0001Technical content checked by a classifier
    • H01L2924/0002Not covered by any one of groups H01L24/00, H01L24/00 and H01L2224/00

Definitions

  • the present invention relates to a method for generating and / or embossing a recoverable cryptographic key in the production of a topographical structure, in particular for microelectronic or micromechanical components, as well as a chip or a chip card in which such a cryptographic key is embossed.
  • secret keys are needed, which should be bound in some applications to a physical medium, such as a chip or a smart card.
  • Such secret keys may not or only with difficulty be calculated or viewed by an attacker with methods of so-called reverse engineering.
  • the secret key is generated via a random number generator and stored in a part of the physical medium, for example on a hard disk or in an EEPROM.
  • the copies of the secret key stored in this way can be reconstructed with relatively little effort by analysis methods of reverse engineering.
  • random generators are often used in practice, which in turn require a random starting value. This seed may be generated from interaction with the user, such as by random input of the user with an input device on a computer system.
  • techniques are known in which the radioactive decay of an isotope is exploited in order to generate a starting value for the random number generator.
  • such devices are usually large and expensive.
  • EP 1 465 254 A1 discloses a technique for storing an identification number in one
  • bit-generating circuits are integrated into the topographical structure of the semiconductor chip, each of which generates a specific bit of the identification number.
  • Each of the bit generation circuits consists of an electrical line extending over several levels of the topographical structure. The bit values are determined by the presence or absence of interrupts in the electrical line. This is done by specifying a suitable
  • US 6047068 A shows a method for determining a cryptographic key associated with an integrated circuit in which randomly varying material properties are used to generate the key. For this purpose, in the method of this document on an array of electrical contacts an additional special layer must be applied, which has a random locally varying electrical resistance. From the measurement of this resistance between different combinations of electrical contacts then the cryptographic key is derived.
  • US 2002/0188857 A1 discloses a method for protecting at least one data value in an integrated circuit, in which a combination of this data value with a second data value results from a network of physical parameters of the integrated circuit. Only the result of the combination is then stored in the memory of the integrated circuit. The second data value is determined by the network of physical parameters that undergo random variations in the manufacture of the integrated circuit.
  • US 2003/0103629 A1 describes a method for generating a secret data value, for example a key, in an integrated circuit, wherein the data value is difficult to determine by third parties. Similar to the method of US 2002/0188857 A1, this method uses a network of physical parameters of the IC for storing the data value.
  • WO 01/84767 A1 describes a method for generating cryptographic keys in which the charge levels of the memory cells of an EEPROM are used to generate a key.
  • US 2004/0136529 Al deals with an electronic component that generates its own cryptographic keys. The production takes place via measuring devices which measure physical parameters of the component, which vary randomly during manufacture. Inverters for measuring these parameters are used as one of the examples.
  • US 5818738 A deals with a method for testing the authenticity of an integrated circuit using the randomly varying physical parameters by the manufacturing process.
  • Material for example, the properties of a liquid, used for the generation of the cryptographic key.
  • the object of the present invention is to specify a method for embossing a recoverable cryptographic key in a physical medium, which makes it considerably more difficult for a third party to read the secret key from the physical medium. Furthermore, a physical medium in the form of a chip or a smart card is to be provided, which contains a hard-to-read secret key. Presentation of the invention
  • the two variants of the method proposed according to the present invention differ in that, according to the method of claim 1, the secret key is generated randomly in the generation of the topographical structure, whereas in the method according to claim 4 this key is predetermined prior to the generation of the topographical structure.
  • the first method physical media can thus be provided with a topographical structure, each of which automatically carries an individual secret key.
  • the method of claim 4 is adapted to provide a plurality of physical media with the same secret key.
  • several measurement circuits are generated in the production of the topographical structure in the topographical structure for generating and impressing the recoverable cryptographic key, which generate a measured value depending on a size of at least one electrical or physical property in the topographical structure.
  • the electrical or physical property whose size for the Generation of the measured value is decisive, it is a property whose size is subject to random fluctuations in the production of the topographic structure with the measuring circuits.
  • the cryptographic key is finally formed from or derived from the measured values of the measuring circuits. These are preferably the bits of a bit sequence. However, keys can also be generated in another number system.
  • This method makes use of the fact that a physical manufacturing process for the production of a topographical structure, for example a lithography process in the semiconductor industry, represents a natural random number generator.
  • the random value results from physical properties of the manufactured product which are subject to random fluctuations from product to product and thus to chance. The random value is therefore difficult to see from outside the product, measurable or simulated.
  • due to the immutability of the physical properties it is firmly embossed in the finished product and can therefore be recovered at any time.
  • the measurement circuits are generated such that they are complex three-dimensional electrical
  • topographical structure whose parasitic properties are used in the measuring circuit for generating the measured value.
  • a separate measuring circuit in the topographical structure can be generated for each bit of the bit sequence of the cryptographic key.
  • the respective bit value can then be obtained, for example, by comparing the size of an electrical or physical property measured with the measuring circuit with a predetermined value.
  • the invariable parasitic properties of the topographical structure are converted via the measuring circuits into a bit pattern, from which the secret key arises.
  • parasitic electrical properties in this case, for example, the capacitances between interconnects, parasitic inductances or a crosstalk between conductors used. These are subject to variations from topography to topography, but are inherently constant and independent of operating parameters. From the statistical variations of these properties and the difficulty to determine these ex postiori by the use of auxiliary tools of the electronic design automation with the required accuracy, there is the desired uncertainty with respect to the bit pattern.
  • the electrical lines made of aluminum or copper are suitable line structures. While these are usually used for the exchange of signals or information between functional units such as individual transistors or logic gates, but can also be used to implement passive components such as coils or capacitors serve. For this purpose, normally well-defined rules are adhered to in the geometric design of the metal structures, so that the electrical capacity or
  • Inductance can be controlled as accurately as possible.
  • the complex three-dimensional line structure is obtained by predetermining a random three-dimensional design of the line structure which is used for generating the line structure in the topographical structure.
  • This generation of a random, complex, three-dimensional conduction structure makes it difficult for an attacker to compute an associated parasitic electrical property.
  • this property can be accurately calculated by the user of the method.
  • the designs are preferably generated using an algorithm which randomly selects the structure of the line structures, for example the width, length and direction of sections of the line structures in each level of the line structures as well as connections between different levels of the line structures.
  • two measuring structures obtained in this way are generated and the magnitude of the parasitic property of these two line structures is compared by a comparison circuit.
  • the measuring circuit then generates a bit value of 0 or 1. This bit value may depend on which of the two variables of the parasitic property of the two line structures larger or smaller, or both are the same within a predeterminable range.
  • the identical, randomly obtained design is used for the two line structures of each measuring circuit.
  • the two line structures of each measurement circuit are chosen so different that in each case results in the desired predetermined bit value for the individual measurement circuit despite the fluctuations of the manufacturing process. This different choice may be due to the possibility of precalculating the
  • the two alternative methods utilize electrical or physical properties of the topographical structure during manufacture
  • Both methods employ complex line structures of the measuring circuits, which consist of random designs of the line structures.
  • the variations of the manufacturing process are used to generate the secret key.
  • the knowledge of these fluctuations is used to set predetermined bit values for the individual measuring circuits.
  • FIG. 1 shows an example of the structure of a measuring circuit, as it can be used in the present method
  • FIG. 2 shows an exemplary schematic representation of a complex line structure according to the present method
  • Fig. 3 shows an example of the first part of a
  • FIG. 5 shows an example of a design view of a line structure according to the present invention Invention, according to which the line structure is generated in the topography;
  • FIG. 6 shows a 3D visualization of a line structure according to the design view of FIG. 5;
  • Fig. 10 shows a fourth example application for the protection of software
  • Fig. 11 shows another example of the structure of a measuring circuit, as in the present
  • FIG. 12 shows a part of the measuring circuit of FIG. 11 in FIG.
  • the method according to the invention is used in the production of the topography of a semiconductor chip.
  • the measuring circuits are called microelectronic
  • Circuits on the chip run parasitic capacitances between certain areas of the chip Convert the topography of the chip into a bit pattern from which the secret key is derived.
  • the measuring circuit 11 of FIG. 1 is designed in the present example so that this bit pattern reacts very sensitively to fluctuations in the capacitances.
  • a small difference in the capacitance of the measuring circuits between any two chips is intended to produce a different bit pattern here. This is due to the unavoidable statistical process variations in the manufacture of the chips and is harnessed in the present process.
  • the capacitances of the measuring circuit are designed such that the circuit does not react to the process fluctuations.
  • the possible repeatability or readability of the key from the individual chips at any time results from the immutability of the individual capacities over the service life and the independence of these capacities from supply voltage, temperature, age and load.
  • the transfer of the parasitic capacitances takes place in a bit pattern by a circuit principle, as shown in FIG.
  • two capacitances 5, 6 are generated in the semiconductor topography.
  • the production of these capacities will be discussed in more detail below.
  • the two capacitors 5, 6 are successively via a constant current I a Power source 1 charged for a certain duration T.
  • a comparator 7 the difference between the voltage values achieved is formed and converted into a digital 0/1 result at the output 8.
  • switch 2 to 4 is ensured via a suitable switching sequence that both capacitors are charged and then the voltage is held.
  • switch 2 can be opened and switch 3 closed for the duration of the charging process of the capacitor 5.
  • the switches 3, 4 are opened again, the voltage across the capacitances 5, 6 remains constant.
  • the result of the comparison by the comparator 7 is valid. It indicates whether the capacity 5 is larger or smaller than the capacity 6.
  • the switch 2 By closing the switch 2, the capacity can be discharged again.
  • the entire measuring circuit 11 is generated in the production of the semiconductor topography via a suitable layout in the lithographic production of this topography. For a n-bit cryptographic key, n of these measurement circuits 11 are generated in the semiconductor topography.
  • the layouts of the parasitic capacitances 5, 6 for every two arbitrary bits or measuring circuits are already chosen at design time such that their three-dimensional structure differs as much as possible.
  • FIG. 2 schematically illustrates an example of such a parasitic capacitance, which consists of a complex three-dimensional line structure.
  • the individual strip conductors 9 of the line structure often branch here, extend in different directions and via corresponding plated-through holes 10 also over different levels of the topographical structure. From the example of Figure 2 is clearly the irregularity of this line structure in terms of width, length and direction of the individual line sections recognizable, which are chosen at random in their design.
  • Layouts of the two capacitors 5, 6 depends on whether for each individual chip an individual key is to be generated, hereinafter referred to as a single-chip key, or whether all chips should have the same key, hereinafter referred to as all-chip Key designates.
  • the same layouts are selected for the capacitors 5, 6 in a measuring circuit, so that their three-dimensional structure is identical except for the fluctuations in the production process. Nevertheless, for the above reason, these structures have a random and disordered structure in which the track widths and lengths vary widely.
  • different designs or layouts are selected for the capacitances 5, 6 of a measuring circuit, so that their three-dimensional structure differs markedly within the measuring circuit.
  • the three-dimensional structure of the capacitances 5, 6 of different measuring circuits differs correspondingly strongly.
  • the interconnect structures of the capacitances 5, S are selected in this case such that their electrical capacitance values differ more than they vary from chip to chip due to process engineering variations.
  • the three-dimensional design of the line structures for the parasitic capacitances 5, 6 is generated with a random generator. Since two such structures are required for each bit, at design time it is necessary to prepare a large number of layouts whose electrical capacity is known. The capacity can be calculated from the layout.
  • Figure 3 shows an example of the generation of layouts of the line structures with a random three-dimensional design. All steps are automated and run entirely by a computer, so that after a few hours of running a large number of layouts are available that can be used to fabricate the topographical structure.
  • the algorithm shown by way of example in FIG. 3 is based on an iterative random method, hereinafter also referred to as random-walk Algorithm called. Its task is to create complex, three-dimensional connection structures within a given area. These structures should have as imprecisely known or difficult to calculate electrical capacity.
  • the design rules for capacitors are deliberately violated, so that the capacitance clusters are no longer "conventional” capacitors, but instead of using metal plates, a large number of more or less thin metal lines are used, resulting in a complex
  • the electrical capacitance is normally unwanted or even disadvantageous in terms of circuit technology, and is therefore referred to as the parasitic capacitance. It is this parasitic capacitance of metal lines within the capacitance cluster that is to be optimized according to the intended use Since a large number of capacity clusters are required, the design is to be automated by developing a random-walk algorithm and implementing it in the SKILL scripting language, which uses electronic design Automation (EDA) allows tools in the manufacture of circuits.
  • EDA electronic design Automation
  • An important criterion for the use of the parasitic capacity clusters is the complete automation of the design process.
  • the creation of the geometric structure or design (mask layout) of each individual cluster should be done without be repeated intervention or manual control possible.
  • the only form of user interaction is the setting of certain startup parameters or settings that are only made at the beginning of the automatic drafting process.
  • the reason for this requirement is the high number of clusters required for a secret key with a realistic number of bits: public key cryptographic methods typically require 1024 bits and more. Since each additional bit requires two more clusters, the number of clusters is already so high that eliminating the manual creation of the layout of each cluster for time-consuming reasons.
  • Cluster should carry a high level of unknown information in itself. In this case, this is the electrical capacity. The less known about the exact value, the more information is contained in it. It is this information that forms the basis for the generation of the secret key with the circuitry implementation described. The information contained in the clusters represents the secret key in "raw form”. would the electrical capacity of all clusters of a chip for
  • a third factor influencing the informational content of the capacity clusters is the degree of relatedness of any two clusters on a chip, i. the cross correlation.
  • a low correlation means that it can not be deduced from one cluster to the other, i. that no attacker from knowing the capacity of a cluster
  • the algorithm used in the present example is based on an iterative "trial-and-error" method in which random tracks and plated-through holes are set, which are subsequently used for violations of the design rules (DRC errors). be checked. If an error occurs, the last change is undone and another variant tried.
  • DRC errors design rules
  • the algorithm starts with the generation of the
  • the flowchart in FIG. 3 shows the functional sequence.
  • the starting point and start layer are necessary for the connection of the capacity cluster to the evaluation electronics, which generates the bits of the key from the capacity value of the clusters.
  • the next step is at the beginning of each iteration of the algorithm: the random choice of appropriate parameters for producing a piece of metal. This includes the width, length and direction of the track. Certain minimum widths and lengths, as well as the restriction to angles of 45 degrees are given for process-related condition. In the random selection of the parameters, ideally these process-technical specifications (so-called design rules) are taken into account in order to minimize the error probability during the later distance control test.
  • This Design Rule Check (DRC) check is performed after each line replacement. In the event of a rule violation, the line is removed and tested another combination of parameters, the algorithm returns to the parameter selection. If a piece of metal has been set without errors, the end of the line represents the starting point for the next one
  • One of these vias thus provides a suitable starting point for the next level of metallization, on which metal pieces are again to be produced in the same way. For this reason, the new starting position is set to the coordinates of one of the vias, eg the last generated via.
  • the metal layer, to which the via changes is set as a new start layer.
  • the number of changes in the metallization level can be controlled by specifying a maximum value. He does not equal the number of available metal layers one
  • the production of the plated-through holes is shown schematically in FIG.
  • the routine is informed at the beginning of the current layer, the maximum number of vias to be generated and passed the list with valid Viapositionen.
  • the subsequent steps are located inside a program loop, which is executed until the maximum number of generated vias has been reached.
  • the first entry in the vial list is removed from the list, it represents the position of the next vias to be created.
  • the via can then make contact with the next overlying metal layer, or the underlying level. This is only possible if it is not the lowest metallization level, in which case only a switch to the top is possible. The same applies in reverse for the topmost layer.
  • the algorithm checks the current metal layer and decides whether the via to be created should represent a top or bottom via. If both directions are possible, one of the two possibilities is randomly chosen at random. The via is then generated and subjected to the distance control check. If the change passes the test, the via was generated in accordance with the rules. If the maximum number of vias has not yet been reached, the algorithm jumps to the beginning of the loop back. The processing of the next element of the vial list begins, ie another via is generated. If the generation of the vias was not compliant, for example because the DRC check detected a violation of the minimum distance between the via and an adjacent piece of metal, the via just created is removed. The program flow now also returns to the beginning of the loop and processes the next position in the position list.
  • a cluster After creating a cluster, its geometry is in the form of a two-dimensional design view in the layout editor.
  • Fig. 5 shows such a view (here black and white, the individual levels are differentiated by the editor in color).
  • the cluster is stored as a standalone design unit (cell) in a library and subjected to capacity analysis (extraction). For this purpose and for external further processing with tools from other EDA platforms, the layout is converted to a standard format (so-called GDSII or stream format).
  • a three-dimensional oblique view was created in order to better recognize the structural design.
  • the 3D view in FIG. 6 was created using a raytracing and rendering program, with the three-dimensional Scenes can be calculated taking into account light propagation, shadows and reflection. As a result, light and shadow effects create a spatial sense of depth that conveys to the viewer the three-dimensionality of the viewed objects. In the left, rear corner of the cluster of Fig. 6, the junction for the transmitter is to see a small, rectangular area on the uppermost metal layer.
  • FIGS. 11 and 12 show a further example of a measuring circuit for carrying out the method according to the invention.
  • This measurement circuit uses a charge pump-based technique to compare the parasitic capacitances of two complex line structures. With this technique, a very high accuracy is achieved with a small footprint of the measuring circuit.
  • the measuring circuit does not require any external measuring instruments and has a special provision which minimizes the measuring errors arising from the threshold value dispersion of the transistors used in the measuring circuit.
  • Charge pump based techniques for measuring small capacitance in integrated circuits are known.
  • the capacitance is determined in the known techniques from a linear fit by a number of measurement points.
  • Each measuring point indicates the average current which is pumped at a certain frequency and voltage into the capacitor to be measured.
  • two non-overlapping clock pulses serve as switching signals for charging or discharging the capacitor.
  • the resulting average current which flows through the charging transistor into the capacitor in a predetermined time interval, is hereby measured with an external ammeter.
  • this technique is modified to integrate the entire measurement circuit into an integrated circuit without external gauges.
  • a measuring circuit is shown in FIG. 11, in which the cell with the capacitances to be compared merely by the rectangle is represented.
  • An example of such a cell is shown in detail in FIG.
  • the proposed measurement circuit does not measure the average current. Rather, a large capacitor Ci oad is integrated on the chip, which is first precharged by a load signal "load” and then by a discharge signal Qi n J by pumping electrons in the just measured capacity, for example. Cl (see Figure 12), is gradually discharged.
  • the initial voltage V Q i n decreases with each clock pulse by an amount that depends on the capacitance to be measured Cl or C2.
  • the voltage at the charging capacitor Ci oad / amplified by a PMOS source follower is sampled with a sample-and-hold element. This procedure is repeated with the second capacitance C2 to be measured.
  • the switching between the two capacitances Cl, C2 takes place here via the switching signals swCl and swC2.
  • the discharge of the respective capacitances C1, C2 is triggered by the "clear" signal, and the voltages sampled by the sample-and-hold element for the two capacitances C1, C2 are compared in a comparator which, depending on the comparison, outputs the bit value 0
  • This procedure is repeated for all pairs of clusters until the desired number of bits have been read out, for which the cell of Figure 11 may also contain more than two clusters to be measured, with two clusters resulting in a possible comparison pair (1 bit), 3 clusters 3 pairs (3 bits), 4 clusters 6 pairs (6 bits) Bit) etc.
  • a separate measuring circuit can be provided for each cluster pair.
  • Figure 12 shows an example of the cell with only a pair of capacitance clusters corresponding to the capacitances Cl, C2 to be measured.
  • the already mentioned provision for measuring error minimization is shown, which includes the capacitors C1 and C2 associated NMOS transistors, which are turned on by the signal "clear".
  • a first example application is an electronic key for cars in the form of a remote control ( Figure 7).
  • the key generator (KeyGen) using the present method generates the same secret key (PrivKey) on all chips. This is provided with a serial number, so that for each
  • This key now serves to encrypt a random bit sequence in the lock and in the remote control. This bit sequence is created anew each time it is opened and closed and exchanged between the lock and the key. By comparing (Cmp) between the results of
  • Encryption in remote control and lock is the authorization realized: Only if both, lock and remote control, have the same key (PrivKey), the encrypted bit sequence is exactly the same. Without the knowledge of the secret key, an attacker would not be able to replicate or mimic the remote to create the same encrypted bit sequence as the lock or original remote.
  • the present method or a chip obtained therewith can be used for all applications in which an authorization check or access control is to be realized (smart card applications).
  • smart card applications it is possible to proceed analogously to the abovementioned principle, i.
  • the authenticity of smart cards can be checked by using an all-chips-key.
  • Another application example relates to the transmission and distribution of multimedia content using a single-chip key.
  • This use case involves the secure transmission and distribution of multimedia content, such as music or video streams.
  • a device cell phone, Walkman, computer, DVD player, etc.
  • multimedia content Content
  • a provider MMPEG
  • on-demand Internet on demand
  • the multimedia content should be infinitely playable on the device and backup copies (eg on DVD) should be possible, but it should not be used on the device of a third party.
  • PubKeyN encrypted.
  • the encrypted keys DESKeySecl to DESKeySecN can then be decrypted by the multimedia devices of the buyer A, but not by the devices of another person B. Because of this property, it is now possible to decrypt the
  • Another example concerns the protection of software using all-chips key and single-chip keys.
  • the general term "software protection” refers to aspects that are also covered by the Trusted Computing initiative, which is primarily about executing software on a system only when authorized has been.
  • One currently used form is product activation of a known operating system.
  • the location of the secret key takes an individual number sequence, which is derived from the hardware components of a computer by using a secret procedure held. This is only a copy protection.
  • FIG. 9 shows a corresponding approach.
  • Each processor of a specific series has the same secret key PrivKey (All-Chip Key). This can be used to decrypt security-critical commands (CodeSec) in the processor. Outside the processor, the command sequences are always encrypted. Thus a software manufacturer his safety-critical
  • Encrypt program parts he activates the encryption unit (Encrypt) and gives her the routines for encryption (code).
  • the encrypted program parts are thereby protected and can be distributed or sold together with the unprotected part of the software (distribution).
  • the activation of the encryption unit can in turn be realized by encrypted software routines, so that eg an authorization check can be integrated. This would ensure that not every user can encrypt large amounts of data as often as he likes to compare the unencrypted and the encrypted data to calculate secret keys (DES is considered very secure against this attack).
  • FIG. 10 illustrates such an architecture schematically.
  • Each of the N processors of the person A has his own, individual key pair PrivKeyXA and PubKeyXA, all other functional processor units are identical.
  • the key DESKeyB represents the personal key for person B, which encrypts multimedia contents as well as safety-critical program parts for each of the M processors of B. It is generated by A for B individually (in a conventional way) and encrypted with the public keys PubKeylB ... PubKeyMB of B. To ensure the authenticity of these keys, they were encrypted by B with the all-chip key PrivKey, so that these only from the
  • Another application example is the configuration in FPGAs.
  • the programming or configuration of some FPGAs is protected from inspection, so that the circuits implemented in them are not accessible.
  • the main goal here is to protect the underlying intellectual property of the circuits from theft.
  • Encryption of the configuration based on an all-chip key and public-key cryptography, could further enhance the security of previous approaches.
  • the programming of an FPGA would always be stored encrypted in the configuration memory and would only be decrypted in the FPGA itself.
  • the RSA unit on the FPGA could consist of the FPGA's programmable gates, which are used whenever the FPGA needs to be reconfigured. They represent thereby the reset configuration and become after successful decryption and

Landscapes

  • Physics & Mathematics (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

Die vorliegenden Erfindung betrifft ein Verfahren zur Erzeugung und Einprägung eines wiedergewinnbaren kryptographischen Schlüssels bei der Herstellung einer topographischen Struktur, insbesondere für mikroelektronische oder mikromechanische Bauelemente. Bei dem Verfahren werden mehrere Messschaltungen (11) in der topographischen Struktur erzeugt, die jeweils abhängig von einer Größe zumindest einer elektrischen oder physikalischen Eigenschaft in der topographischen Struktur, die bei der Herstellung der topographischen Struktur mit den Messschaltungen (11) zufälligen Schwankungen unterworfen ist, einen Messwert erzeugen. Der kryptographische Schlüssel wird aus den Messwerten der Messschaltungen (11) gebildet oder abgeleitet. Die Messschaltungen (11) umfassen hierbei dreidimensionale elektrische Leitungsstrukturen (9, 10), die jeweils mit einem zufälligen Design vorgegeben und in der topographischen Struktur erzeugt werden, und die Messwerte abhängig von der Größe einer parasitären elektrischen Eigenschaft der Leitungsstrukturen (9, 10) erzeugen.

Description

Verfahren zur Erzeugung und/oder Einprägung eines wiedergewinnbaren kryptographischen Schlüssels bei der
Herstellung einer topographischen Struktur
Technisches Anwendungsgebiet Die vorliegende Erfindung betrifft ein Verfahren zur Erzeugung und/oder Einprägung eines wiedergewinnbaren kryptographischen Schlüssels bei der Herstellung einer topographischen Struktur, insbesondere für mikroelektronische oder mikromechanische Bauteile, sowie einen Chip oder eine Chipkarte, in die ein derartiger kryptographischer Schlüssel eingeprägt ist.
Für kryptographische Anwendungen werden geheime Schlüssel benötigt, die in einigen Anwendungsfällen an ein physikalisches Medium, beispielsweise einen Chip oder eine Chipkarte, gebunden sein sollen. Derartige geheime Schlüssel dürfen von einem Angreifer auch mit Methoden des so genannten Reverse Engineering nicht oder nur sehr schwer berechnet oder eingesehen werden können .
Stand der Technik
Bei klassischen Methoden wird der geheime Schlüssel über einen Zufallsgenerator erzeugt und in einem Teil des physikalischen Mediums, beispielsweise auf einer Festplatte oder in einem EEPROM, gespeichert. Die derart gespeicherten Kopien des geheimen Schlüssels können allerdings mit relativ geringem Aufwand durch Analyseverfahren des Reverse Engineering rekonstruiert werden. Für die Generierung des geheimen Schlüssels werden in der Praxis häufig Zufallsgeneratoren eingesetzt, die wiederum einen zufälligen Startwert benötigen. Dieser Startwert kann aus der Interaktion mit dem Benutzer erzeugt werden, beispielsweise durch eine willkürliche Eingabe des Benutzers mit einem Eingabegerät an einem Computersystem. Weiterhin sind Techniken bekannt, bei denen der radioaktive Zerfall eines Isotops ausgenutzt wird, um daraus einen Startwert für den Zufallsgenerator zu erzeugen. Derartige Vorrichtungen sind allerdings in der Regel groß und teuer.
Aus der EP 1 465 254 Al ist eine Technik zur Speicherung einer Identifikationsnummer in einem
Halbleiter-Chip bekannt, bei der in die topographische Struktur des Halbleiter-Chips Bit-Generierungs- schaltungen integriert werden, von denen jede ein bestimmtes Bit der Identifikationsnummer erzeugt. Jede der Bit-Generierungsschaltungen besteht aus einer elektrischen Leitung, die sich über mehrere Ebenen der topographischen Struktur erstreckt . Die Bitwerte werden hierbei durch das Vorhandensein oder NichtVorhandensein von Unterbrechungen in der elektrischen Leitung festgelegt. Dies erfolgt durch Vorgabe eines geeigneten
Layouts bei der Erzeugung der topographischen Struktur mit den Bit-Generierungsschaltungen. Die Nutzung dieser Technik für die Einprägung eines geheimen Schlüssels für kryptographische Anwendungen hat jedoch den Nachteil, dass die über die Bit-Generierungsschaltungen eingeprägte Information relativ leicht durch Analyseverfahren extrahiert werden kann. Die US 6047068 A zeigt ein Verfahren zur Bestimmung eines kryptographisehen Schlüssels, der einer integrierten Schaltung zugeordnet ist, bei dem zufällig schwankende Materialeigenschaften zur Erzeugung des Schlüssels genutzt werden. Hierzu muss bei dem Verfahren dieser Druckschrift auf ein Raster von elektrischen Kontakten eine zusätzliche spezielle Schicht aufgebracht werden, die einen zufällig örtlich variierenden elektrischen Widerstand aufweist. Aus der Messung dieses Widerstandes zwischen unterschiedlichen Kombinationen von elektrischen Kontakten wird dann der kryptographische Schlüssel abgeleitet .
Die US 2002/0188857 Al offenbart ein Verfahren zum Schutz zumindest eines Datenwertes in einem inte- grierten Schaltkreis, bei dem eine Kombination dieses Datenwertes mit einem zweiten Datenwert vorgenommen wird, der sich aus einem Netzwerk physikalischer Parameter des integrierten Schaltkreises ergibt. Nur das Ergebnis der Kombination wird dann im Speicher des integrierten Schaltkreises abgespeichert. Der zweite Datenwert ist durch das Netzwerk physikalischer Parameter, die bei der Fertigung des integrierten Schaltkreises zufälligen Variationen unterliegen, festgelegt . Die US 2003/0103629 Al beschreibt ein Verfahren zur Erzeugung eines geheimen Datenwertes, bspw. eines Schlüssels, in einem integrierten Schaltkreis, wobei der Datenwert nur schwer von Dritten ermittelbar sein soll. Dieses Verfahren nutzt ähnlich wie bei dem Verfahren der US 2002/0188857 Al ein Netzwerk physikalischer Parameter des IC's zur Speicherung des Datenwertes . Die WO 01/84767 Al beschreibt ein Verfahren zur Erzeugung von kryptographisehen Schlüsseln, bei dem die Ladungsniveaus der Speicherzellen eines EEPROMS zur Erzeugung eines Schlüssels genutzt werden. Die US 2004/0136529 Al befasst sich mit einem elektronischen Bauteil, das seine kryptographischen Schlüssel selbst erzeugt . Die Erzeugung erfolgt über Messeinrichtungen, die physikalische Parameter des Bauteils messen, die bei der Herstellung zufällig variieren. Als eines der Beispiele werden hierbei Inverter zur Messung dieser Parameter eingesetzt.
Die US 5818738 A befasst sich mit einem Verfahren zur Prüfung der Authentizität eines integrierten Schaltkreises unter Nutzung der durch den Herstel- lungsprozess zufällig variierenden physikalischen Parameter.
Die US 6233339 Bl befasst sich mit der Kryptographie auf Basis physikalischer Eigenschaften. Hierbei werden Materialeigenschaften eines in einem versiegelten Volumen in einem ICs enthaltenen
Materials, bspw. die Eigenschaften einer Flüssigkeit, für die Erzeugung des kryptographischen Schlüssels genutzt .
Die Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren zur Einprägung eines wiedergewinnbaren kryptographischen Schlüssels in ein physikalisches Medium anzugeben, das ein Auslesen des geheimen Schlüssels aus dem physikalischen Medium für einen Dritten erheblich erschwert. Weiterhin soll ein physikalisches Medium in Form eines Chips oder einer Chipkarte bereitgestellt werden, dass einen schwer auslesbaren geheimen Schlüssel enthält. Darstellung der Erfindung
Die Aufgabe wird mit den Verfahren gemäß den Patentansprüchen 1 und 4 sowie dem physikalischem Medium gemäß Patentanspruch 9 gelöst . Vorteilhafte Ausgestaltungen der Verfahren sind Gegenstand der Unteransprüche oder lassen sich der nachfolgenden Beschreibung sowie den Ausführungsbeispielen entnehmen.
Die beiden gemäß der vorliegenden Erfindung vorgeschlagenen Verfahrensvarianten unterscheiden sich darin, dass gemäß dem Verfahren des Patentanspruches 1 der geheime Schlüssel bei der Erzeugung der topographischen Struktur zufällig generiert wird, während dieser Schlüssel bei dem Verfahren gemäß Patentanspruch 4 vor der Erzeugung der topographischen Struktur vorgegeben ist. Mit dem ersten Verfahren lassen sich somit physikalische Medien mit einer topographischen Struktur versehen, von denen jedes automatisch einen individuellen geheimen Schlüssel trägt. Das Verfahren des Patentanspruches 4 ist hingegen dafür geeignet, eine Vielzahl von physikalischen Medien mit dem gleichen geheimen Schlüssel zu versehen.
Bei dem Verfahren gemäß Patentanspruch 1 werden zur Erzeugung und Einprägung des wiedergewinnbaren kryptographischen Schlüssels mehrere Messschaltungen bei der Herstellung der topographischen Struktur in der topographischen Struktur erzeugt, die jeweils abhängig von einer Größe zumindest einer elektrischen oder physikalischen Eigenschaft in der topographischen Struktur einen Messwert erzeugen. Bei der elektrischen oder physikalischen Eigenschaft, deren Größe für die Erzeugung des Messwertes maßgeblich ist, handelt es sich um eine Eigenschaft, deren Größe bei der Herstellung der topographischen Struktur mit den Messschaltungen zufälligen Schwankungen unterworfen ist. Der kryptographische Schlüssel wird schließlich aus den Messwerten der MessSchaltungen gebildet oder von diesen abgeleitet. Hierbei handelt es sich vorzugsweise um die Bits einer Bitfolge. Es können allerdings auch Schlüssel in einem anderen Zahlensystem generiert werden.
Bei diesem Verfahren wird ausgenutzt, dass ein physikalischer Herstellungsprozess für die Herstellung einer topographischen Struktur, beispielsweise ein Lithographie-Prozess in der Halbleiterindustrie, einen natürlichen Zufallsgenerator darstellt. Der Zufallswert ergibt sich aus physikalischen Eigenschaften des hergestellten Produkts, die von Produkt zu Produkt statistischen Schwankungen und damit dem Zufall unterworfen sind. Der Zufallswert ist daher von außerhalb des Produkts schwer einsehbar, messbar oder simulierbar. Auf der anderen Seite ist er im fertiggestellten Produkt aufgrund der Unveränderlichkeit der physikalischen Eigenschaften fest eingeprägt und kann daher jederzeit wiedergewonnen werden. Dies wird bei dem Verfahren gemäß Patentanspruch 1 ausgenutzt, in dem gezielt physikalische oder elektrische Eigenschaften in der topographischen Struktur, die bei dem gewählten Herstellungsprozess von Produkt zu Produkt Schwankungen unterworfen sind, über geeignet eingebrachte Mess- schaltungen genutzt werden, um den krytographischen Schlüssel zu erzeugen. Dieser kryptographische Schlüssel bleibt aufgrund der Unveränderlichkeit der gewählten Eigenschaften der topographischen Struktur erhalten und kann daher über die Messschaltungen jederzeit reproduziert und ausgelesen werden. Hierbei werden parasitäre elektrische Eigenschaften in der topographischen Struktur gewählt, die unabhängig von den Betriebsparametern, beispielsweise einer Verstärkungsspannung, der Temperatur usw., sind.
Die Messschaltungen werden derart erzeugt, dass sie komplexe dreidimensionale elektrische
Leitungsstrukturen in der topographischen Struktur umfassen, deren parasitäre Eigenschaften in der Messschaltung zur Erzeugung des Messwertes genutzt werden. Für die Erzeugung und Einprägung einer Bitfolge kann dabei für jedes Bit der Bitfolge des krypto- graphischen Schlüssels eine separate Messschaltung in der topographischen Struktur erzeugt werden. Dies ist jedoch nicht in jedem Falle erforderlich, wie in Zusammenhang mit der beispielhaften Messschaltung der Figur 11 erläutert. Der jeweilige Bitwert kann dann beispielsweise durch Vergleich der Größe einer mit der Messschaltung gemessenen elektrischen oder physikalischen Eigenschaft mit einem vorgegebenen Wert erhalten werden.
Auf diese Weise werden die unveränderlichen parasitären Eigenschaften der topographischen Struktur, insbesondere einer Halbleitertopographie, über die Messschaltungen in ein Bitmuster überführt, aus dem der geheime Schlüssel entsteht. Als parasitäre elektrische Eigenschaften können hierbei beispielsweise die Kapazitäten zwischen Leiterbahnen, parasitäre Induktivitäten oder auch ein Übersprechen zwischen Leiter- bahnen genutzt werden. Diese sind Schwankungen von Topographie zu Topographie unterworfen, jedoch für sich betrachtet konstant und von Betriebsparametern unabhängig. Aus den statistischen Schwankungen dieser Eigenschaften und der Schwierigkeit, diese ex posteriori auch durch Einsatz von Hilfswerkzeugen der elektronischen Design-Automation mit der erforderlichen Genauigkeit zu bestimmen, ergibt sich die gewünschte Unbestimmtheit bezüglich des Bitmusters.
Auf einem Chip stellen die elektrischen Leitungen aus Aluminium oder Kupfer geeignete Leitungsstrukturen dar. Diese werden zwar in der Regel zum Austausch von Signalen bzw. Informationen zwischen funktionellen Einheiten wie einzelnen Transistoren oder Logikgattern eingesetzt, können jedoch auch zur Realisierung von passiven Bauteilen wie Spulen oder Kondensatoren dienen. Dazu werden im Normalfall wohl definierte Regeln beim geometrischen Entwurf der Metallstrukturen eingehalten, so dass die elektrische Kapazität bzw.
Induktivität möglichst genau kontrolliert werden kann.
Einem völlig anderen Einsatzzweck dienen jedoch die komplexen Leitungsstrukturen, im Folgenden auch als Kapazitätscluster bezeichnet, für die parasitären
Kapazitäten der vorliegenden Messschaltungen. Zwar wird auch hier die elektrische Kapazität schaltungstechnisch ausgenutzt, jedoch soll ihr genauer Wert für einen Außenstehenden möglichst schwer ermittelbar sein. Dadurch soll das Verhalten der Messschaltung in starker Weise unvorhersehbar und letztlich uneinsehbar gemacht werden . - S -
Die komplexe dreidimensionale Leitungsstruktur wird hierbei, wie auch bei dem nachfolgend beschriebenen alternativen Verfahren zur Einprägung eines geheimen Schlüssels, durch Vorgabe eines zufälligen dreidimensionalen Designs der Leitungs- struktur erhalten, das für die Erzeugung der Leitungsstruktur in der topographischen Struktur genutzt wird. Diese Erzeugung einer zufällig verlaufenden, komplexen dreidimensionalen Leitungs- struktur erschwert es einem Angreifer, eine zugehörige parasitäre elektrische Eigenschaft zu berechnen. Auf der anderen Seite kann diese Eigenschaft aufgrund des vorher erzeugten zufälligen Designs, das nur dem Nutzer bekannt ist, vom Nutzer des Verfahrens genau berechnet werden.
Die Erzeugung der Designs erfolgt vorzugsweise mit einem Algorithmus, der den Aufbau der Leitungs- strukturen, bspw. Breite, Länge und Richtung von Abschnitten der Leitungsstrukturen in jeder Ebene der Leitungsstrukturen sowie Verbindungen zwischen unterschiedlichen Ebenen der Leitungsstrukturen, zufällig wählt.
In einer besonders vorteilhaften Ausgestaltung des Verfahrens werden je Messschaltung zwei derart erhaltene Leitungsstrukturen erzeugt und die Größe der parasitären Eigenschaft dieser beiden Leitungsstrukturen durch eine Vergleichsschaltung verglichen. Abhängig vom Ergebnis dieses Vergleichs erzeugt die Messschaltung dann einen Bitwert von 0 oder 1. Dieser Bitwert kann davon abhängen, welcher der beiden Größen der parasitären Eigenschaft der beiden Leitungs- strukturen größer oder kleiner oder ob beide innerhalb eines vorgebbaren Bereiches gleich sind. Bei dem Verfahren gemäß Patentanspruch 1 wird hierbei für die beiden Leitungsstrukturen jeder Messschaltung das identische, zufällig erhaltene Design verwendet.
Unterschiedliche Messschaltungen weisen hierbei jedoch unterschiedliche Designs auf. Aufgrund des Herstellungsprozesses schwanken die parasitären elektrischen Eigenschaften der beiden Leitungsstrukturen jeder Messschaltung jedoch trotz des identischen Designs, so dass sich der gewünschte zufällige Bitwert für unterschiedliche Messschaltungen ergibt.
Bei dem Verfahren gemäß Patentanspruch 4 werden hingegen die beiden Leitungsstrukturen jeder Mess- schaltung so unterschiedlich gewählt, dass sich für die einzelne Messschaltung in jedem Falle trotz der Schwankungen des Herstellungsprozesses der gewünschte vorgegebene Bitwert ergibt. Diese unterschiedliche Wahl kann aufgrund der Möglichkeit der Vorberechnung der
Größe der parasitären Eigenschaften der Leitungs- strukturen aus den vorab erzeugten zufälligen Designs erfolgen. Für einen Angreifer können hingegen aus den komplexen Leitungsstrukturen nur sehr schwer Informationen über den geheimen Schlüssel abgeleitet werden .
Die beiden alternativen Verfahren nutzen elektrische oder physikalische Eigenschaften der topographischen Struktur, die während der Herstellung
Schwankungen unterworfen sind, um den geheimen Schlüssel einzuprägen. Beide Verfahren setzen komplexe Leitungsstrukturen der Messschaltungen ein, die aus zufälligen Designs der Leitungsstrukturen resultieren. Beim ersten Verfahren werden die Schwankungen des Herstellungsprozesses genutzt, um den geheimen Schlüssel zu erzeugen. Beim zweiten Verfahren wird die Kenntnis dieser Schwankungen genutzt, um vorgegebene Bitwerte für die einzelnen Messschaltungen festzulegen.
Das vorliegende Verfahren wird nachfolgend anhand eines Ausführungsbeispiels in Verbindung mit den Zeichnungen ohne Beschränkung des durch die Patentansprüche vorgegebenen Schutzbereichs nochmals näher erläutert. Hierbei zeigen:
Fig. 1 ein Beispiel für den Aufbau einer Mess- Schaltung, wie sie beim vorliegenden Verfahren zum Einsatz kommen kann;
Fig. 2 eine beispielhafte schematische Darstellung einer komplexen Leitungsstruktur gemäß dem vorliegenden Verfahren;
Fig. 3 ein Beispiel für den ersten Teil eines
Algorithmus zur Erzeugung eines zufälligen Designs einer Leitungsstruktur gemäß dem vorliegenden Verfahren;
Fig. 4 ein Beispiel für den zweiten Teil eines
Algorithmus zur Erzeugung eines zufälligen Designs einer Leitungsstruktur gemäß dem vorliegenden Verfahren;
Fig. 5 ein Beispiel für eine Entwurfsansicht einer Leitungsstruktur gemäß der vorliegenden Erfindung, nach der die Leitungsstruktur in der Topographie erzeugt wird;
Fig. 6 eine 3D-Visualisierung einer Leitungsstruktur gemäß der Entwurfsansicht der Figur 5;
1
Fig. 7 eine erste Beispielanwendung in einem elektronischen Schlüssel für PKW;
Fig. 8 eine zweite Beispielanwendung zur Übertragung und Verteilung von MuIti-Media-Inhalten;
Fig. 9 eine dritte Beispielanwendung für den Schutz von Software ;
Fig. 10 eine vierte Beispielanwendung für den Schutz von Software;
Fig. 11 ein weiteres Beispiel für den Aufbau einer Messschaltung, wie sie beim vorliegenden
Verfahren zum Einsatz kommen kann; und
Fig. 12 einen Teil der Messschaltung der Figur 11 im
Detail.
Wege zur Ausführung der Erfindung
Im vorliegenden Ausführungsbeispiel wird das erfindungsgemäße Verfahren bei der Herstellung der Topographie eines Halbleiterchips eingesetzt. Hierbei werden die Messschaltungen als mikroelektronische
Schaltungen auf dem Chip ausgeführt, die parasitäre Kapazitäten zwischen bestimmten Bereichen der Topographie des Chips in ein Bitmuster überführen, aus dem der geheime Schlüssel abgeleitet wird.
Die Messschaltung 11 der Figur 1 ist im vor- liegenden Beispiel so ausgelegt, dass dieses Bitmuster sehr sensibel auf Schwankungen der Kapazitäten reagiert. Eine geringe Differenz in der Kapazität der Messschaltungen zwischen zwei beliebigen Chips soll hierbei ein anderes Bitmuster erzeugen. Dies ist aufgrund der unvermeidbaren statistischen Prozessschwankungen bei der Herstellung der Chips gegeben und wird beim vorliegenden Verfahren nutzbar gemacht.
Sollen hingegen, gemäß der zweiten Variante des vorliegenden Verfahrens, für alle Chips immer dieselben Schlüssel erzeugt werden, dann werden die Kapazitäten der Messschaltung so ausgelegt, dass die Schaltung nicht auf die Prozessschwankungen reagiert. Die jederzeit mögliche Wiedergewinnbarkeit bzw. Ausles- barkeit des Schlüssels aus den einzelnen Chips ergibt sich aus der Unveränderlichkeit der einzelnen Kapazitäten über die Nutzungsdauer und der Unabhängigkeit dieser Kapazitäten von VersorgungsSpannung, Temperatur, Alter und Beanspruchung.
Im vorliegenden Beispiel erfolgt die Überführung der parasitären Kapazitäten in ein Bitmuster durch ein Schaltungsprinzip, wie es in der Figur 1 dargestellt ist. Hierbei werden zwei Kapazitäten 5, 6 in der Halbleitertopographie erzeugt. Auf die Herstellung dieser Kapazitäten wird im Folgenden noch näher eingegangen. Die beiden Kapazitäten 5, 6 werden nacheinander über einen konstanten Strom I einer Stromquelle 1 für eine bestimmte Dauer T aufgeladen. Die elektrische Spannung V über den Kapazitäten 5, 6 ist dabei abhängig vom Ladestrom I, der Ladezeit T und der Kapazität C- V = I*T*l/C. Da der Strom und die Ladezeit konstant sind, ist die Spannung proportional zum Kehrwert der Kapazität: V ~ 1/C. Über einen Komparator 7 wird die Differenz zwischen den erreichten Spannungswerten gebildet und in ein digitales 0/1- Ergebnis am Ausgang 8 überführt. Mit den Schaltern 2 bis 4 wird über eine geeignete Schaltsequenz sichergestellt, dass beide Kapazitäten aufgeladen werden und dann die Spannung festgehalten wird. Hierzu können bspw. Schalter 2 geöffnet und Schalter 3 für die Dauer des Ladevorgangs der Kapazität 5 geschlossen werden. Durch Schließen des Schalters 4 der anderen Kapazität 6 wird diese ebenfalls aufgeladen. Werden die Schalter 3, 4 wieder geöffnet, bleibt die Spannung über den Kapazitäten 5, 6 konstant. Zu diesem Zeitpunkt ist das Ergebnis des Vergleichs durch den Komparator 7 gültig. Es gibt an, ob die Kapazität 5 größer oder kleiner als die Kapazität 6 ist. Durch Schließen des Schalters 2 können die Kapazitäten wieder entladen werden. Die gesamte Messschaltung 11 wird bei der Erzeugung der Halbleitertopographie über ein geeignetes Layout bei der lithographischen Herstellung dieser Topographie erzeugt. Für einen kryptographischen Schlüssel von n Bit werden hierbei n dieser Messschaltungen 11 in der Halbleitertopographie erzeugt .
Die Layouts der beiden parasitären Kapazitäten 5,
6 werden im vorliegenden Beispiel möglichst komplex gewählt, um eine Vorhersage des eingeprägten geheimen Schlüssels durch einen Angreifer zusätzlich zu er- schweren. Weiterhin werden zu diesem Zweck die Layouts der parasitären Kapazitäten 5, 6 für je zwei beliebige Bits bzw. Messschaltungen schon zur Entwurfszeit so gewählt, dass sich ihre dreidimensionale Struktur möglichst stark unterscheidet.
Figur 2 veranschaulicht schematisch an einem Beispiel eine derartige parasitäre Kapazität, die aus einer komplexen dreidimensionalen Leitungsstruktur besteht. Die einzelnen Leiterbahnen 9 der Leitungsstruktur verzweigen hierbei häufig, erstrecken sich in unterschiedliche Richtungen und über entsprechende Durchkontaktierungen 10 auch über verschiedene Ebenen der topographischen Struktur. Aus dem Beispiel der Figur 2 ist deutlich die Irregularität dieser Leitungsstruktur hinsichtlich Breite, Länge und Richtung der einzelnen Leitungsabschnitte erkennbar, die bei ihrem Entwurf zufällig gewählt werden.
Grundsätzlich hängt die Wahl des Designs bzw.
Layouts der beiden Kapazitäten 5, 6 davon ab, ob für jeden einzelnen Chip ein individueller Schlüssel erzeugt werden soll, im Folgenden als Single-Chip-Key bezeichnet, oder ob alle Chips über den selben Schlüssel verfügen sollen, im Folgenden als All-Chips- Key bezeichnet . Im ersten Fall werden für die Kapazitäten 5, 6 in einer Messschaltung die gleichen Layouts gewählt, so dass ihre dreidimensionale Struktur abgesehen von den Schwankungen beim Herstellungsprozess identisch ist. Diese Strukturen weisen dennoch aus dem obigen Grund einen zufälligen und ungeordneten Aufbau auf, bei dem die Leiterbahnbreiten und -längen stark variieren. Im zweiten Fall werden unterschiedliche Designs bzw. Layouts für die Kapazitäten 5, 6 einer Mess- schaltung gewählt, so dass sich ihr dreidimensionaler Aufbau innerhalb der MessSchaltung deutlich unterscheidet. Weiterhin ist es von Vorteil, wenn sich auch der dreidimensionale Aufbau der Kapazitäten 5, 6 unterschiedlicher Messschaltungen entsprechend stark unterscheidet . Die Leiterbahnstrukturen der Kapazitäten 5, S werden in diesem Fall so gewählt, dass sich ihre elektrischen Kapazitätswerte stärker unterscheiden als diese aufgrund prozesstechnischer Schwankungen von Chip zu Chip variieren.
In beiden Fällen wird das dreidimensionale Design der Leitungsstrukturen für die parasitären Kapazitäten 5, 6 mit einem Zufallsgenerator erzeugt. Da für jedes Bit zwei derartige Strukturen benötigt werden, ist zur Entwurfszeit die Vorbereitung einer großen Zahl an Layouts erforderlich, deren elektrische Kapazität bekannt ist. Die Kapazität kann hierbei aus dem Layout berechnet werden.
Figur 3 zeigt ein Beispiel für die Erzeugung von Layouts der LeitungsStrukturen mit einem zufälligen dreidimensionalen Design. Alle Schritte sind automatisiert und werden vollständig von einem Rechner ausgeführt, so dass nach einer Laufzeit von wenigen Stunden eine große Zahl an Layouts zur Verfügung steht, die für die Herstellung der topographischen Struktur eingesetzt werden können. Der in Figur 3 beispielhaft dargestellte Algorithmus beruht auf einem iterativen Zufallsverfahren, im Folgenden auch als Random-Walk- Algorithmus bezeichnet. Seine Aufgabe ist es, innerhalb einer vorgegebenen Fläche komplexe, dreidimensionale Verbindungsstrukturen zu erzeugen. Diese Strukturen sollen über eine möglichst ungenau bekannte oder schwer berechenbare elektrische Kapazität verfügen.
Für diesen Zweck wird absichtlich gegen die Entwurfsregeln für Kondensatoren verstoßen, so dass es sich bei den Kapazitätsclustern nicht mehr um „herkömmliche" Kondensatoren handelt. Es kommen keine Metallplatten mehr zum Einsatz, sondern eine Vielzahl mehr oder weniger dünner Metallleitungen, die zu einer komplexen, irregulären und zufälligen Struktur zusammengesetzt sind, wie bereits in Zusammenhang mit Figur 2 erläutert . Die elektrische Kapazität ist im Normalfall schaltungstechnisch ungewollt oder sogar nachteilig, man spricht daher von der parasitären Kapazität. Eben diese parasitäre Kapazität von Metallleitungen soll innerhalb der Kapazitätscluster dem Einsatzzweck entsprechend optimiert und schaltungstechnisch nutzbar gemacht werden. Da eine große Zahl an Kapazitätsclustern benötigt wird, soll der Entwurf automatisiert werden. Hierzu wurde ein Random-Walk Algorithmus entwickelt und in der Skriptsprache SKILL umgesetzt, die eine Nutzung sog. Electronic Design Automation (EDA) Werkzeuge bei der Herstellung der Schaltungen ermöglicht.
Ein wichtiges Kriterium für den Einsatz der parasitären Kapazitätscluster ist die vollständige Automatisierbarkeit des Entwurfsvorganges. Die Erstellung des geometrischen Aufbaus bzw. Designs (Maskenlayout) jedes einzelnen Clusters soll ohne wiederholten Eingriff oder manuelle Steuerung möglich sein. Die einzige Form der Benutzerinteraktion besteht in der Festlegung von gewissen Startparametern oder Einstellungen, die nur zu Beginn des automatischen EntwurfVorgangs vorgenommen werden. Der Grund für diese Anforderung liegt in der hohen Zahl an Clustern, die für einen geheimen Schlüssel mit einer realistischen Anzahl Bits erforderlich sind: Für kryptographische Verfahren mit öffentlichen Schlüsseln werden in der Regel 1024 Bit und mehr benötigt. Da für jedes zusätzliche Bit zwei weitere Cluster benötigt werden, ist die Zahl an Clustern bereits so hoch, dass die manuelle Erstellung des Layouts jedes einzelnen Clusters aus Zeitaufwandsgründen ausscheidet .
Das Erfordernis der Komplexität ergibt sich direkt aus der wichtigsten Eigenschaft der Kapazitätscluster : Der hohe Grad an Informationsgehalt jedes einzelnen Clusters. Diese informationstheoretische Aussage bedeutet, in einfache Worte übersetzt, dass jeder
Cluster ein hohes Maß an unbekannten Informationen in sich tragen soll. In diesem Fall ist dies die elektrische Kapazität. Je weniger über den genauen Wert bekannt ist, desto mehr Informationen sind in ihm enthalten. Eben diese Information stellt die Grundlage für die Erzeugung des geheimen Schlüssels mit der beschriebenen schaltungstechnischen Realisierung dar. Die in den Clustern enthaltene Information stellt den geheimen Schlüssel in „Rohform" dar. Wäre die elektrische Kapazität aller Cluster eines Chips für
Außenstehende mit hoher Genauigkeit bekannt, so könnte der geheime Schlüssel daraus abgeleitet werden. Ein möglichst zufälliger struktureller Aufbau der Kapazitätscluster ist ebenfalls aus Gründen des Informationsgehaltes nötig. Die Zufälligkeit stellt sicher, dass kein systematischer „Bias" vorhanden ist, d.h. keine Bevorzugung bestimmter Strukturen oder regelmäßiger Muster. Im Idealfall ist die Wahrscheinlichkeit für das Auftreten einer bestimmten Struktur gleich wahrscheinlich wie für das Auftreten einer völlig anderen Struktur, d.h. die Wahrscheinlichkeits- dichte ist gleichverteilt. Diese Gleichverteilung kann sich freilich nur innerhalb der Grenzen bewegen, die durch Flächenvorgabe, schaltungstechnischen Einsatz oder prozesstechnischen Einschränkungen vorgegeben sind - kurz alle Randbedingungen, die von vornherein bekannt sind. Mathematisch gesprochen verkleinern sie den Suchraum der möglichen Strukturen und damit den Informationsgehalt der Cluster.
Eine dritte Einflussgröße für den Informations- gehalt der Kapazitätscluster ist der Verwandtschaftsgrad von jeweils zwei beliebigen Clustern auf einem Chip, d.h. die Kreuzkorrelation. Eine geringe Korrelation bedeutet, dass nicht von einem Cluster auf die anderen geschlossen werden kann, d.h. dass kein Angreifer aus der Kenntnis der Kapazität eines Clusters
Informationen über die Kapazität der anderen Cluster ableiten kann.
Der im vorliegenden Beispiel eingesetzte Algorithmus basiert auf einem iterativen „trial-and- error" Verfahren, bei dem zufällig Leiterbahnen und Durchkontaktierungen gesetzt werden, die anschließend auf Verletzungen der Entwurfsregeln (DRC-Fehler) überprüft werden. Ergibt sich ein Fehler, so wird die letzte Änderung rückgängig gemacht und eine andere Variante ausprobiert .
Der Algorithmus beginnt mit der Erzeugung der
Leiterbahnen auf einer bestimmten Metallisierungsebene (metal layer) und an einem vorgegebenen Startpunkt . Das Flussdiagramm in Figur 3 zeigt den funktionellen Ablauf . Der Startpunkt und Startlayer sind für den Anschluss des Kapazitätsclusters an die Auswerteelektronik nötig, die aus dem Kapazitätswert der Cluster die Bits des Schlüssels generiert. Der nächste Schritt steht am Anfang jeder Iteration des Algorithmus: Die zufällige Wahl geeigneter Parameter für die Erzeugung eines Metallstückes. Hierunter fällt die Breite, Länge und Richtung der Leiterbahn. Gewisse Mindestbreiten und -längen, sowie die Beschränkung auf Winkel von 45 Grad sind dabei prozesstechnisch bedingt vorgegeben. Bei der zufälligen Auswahl der Parameter werden idealerweise diese prozesstechnischen Vorgaben (sog. design rules) berücksichtigt, um die Fehlerwahrscheinlichkeit bei der späteren Abstandsregel- prüfung zu minimieren. Diese Prüfung auf Abstands- regelverletzung, Design-Rule Check (DRC) genannt, wird nach jedem Neusetzen eines Leitungsstückes durchgeführt. Im Falle eines Regelverstoßes wird die Leitung entfernt und eine andere Parameterkombination getestet, der Algorithmus kehrt zurück zur Parameterwahl . Wurde ein Metallstück fehlerfrei gesetzt, so repräsentiert das Ende der Leitung den Anfangspunkt für das nächste
Metallstück. Entsprechend wird der Startpunkt für die nächste Leitung neu gesetzt. Diese Start- und Endpunkte stellen gleichzeitig ideale Positionen dar, an denen ein Wechsel der Metallisierungsebene über eine Durchkontaktierung (Via) nach oben oder unten möglich ist. Sie werden deshalb in eine spezielle Vialiste eingetragen, die bei der Erzeugung der Vias in einer Unterroutine verwendet wird. Diese Unterroutine wird immer dann aufgerufen, wenn eine Metallisierungsebene komplett - bezogen auf die Zielfläche- abgearbeitet wurde, d.h. mit Leitungsstücken zufälliger Größe und Orientierung gefüllt wurde. Die Fläche gilt dann als gefüllt, wenn die maximale Anzahl an Schritten ausgeführt wurde bzw. die maximale Anzahl Metallstücke erzeugt wurde . Nach der Erzeugung der Vias verfügt der aktuelle Layer über ein oder mehrere Durchkontak- tierungen nach oben oder unten. Eines dieser Vias stellt somit einen geeigneten Ausgangspunkt für die nächste Metallisierungsebene dar, auf der erneut Metallstücke auf dieselbe Art und Weise erzeugt werden sollen. Aus diesem Grund wird die neue Startposition auf die Koordinaten eines der Vias gesetzt, z.B. das letzte erzeugte Via. Ebenso wird die Metalllage, zur der die Durchkontaktierung wechselt, als neuer Start- layer gesetzt. Die Anzahl der Wechsel der Metallisierungsebene kann über die Angabe eines Maximalwertes gesteuert werden. Er muss nicht gleich der Anzahl der zur Verfügung stehenden Metalllagen eines
Prozesses sein, sondern sollte darüber liegen. Dadurch wird sichergestellt, dass der Algorithmus mit der Generierung von Metallstücken zu einem Layer zurückkehrt, auf dem bereits Metallstücke erzeugt wurden. Auf diese Weise wird verhindert, dass der Algorithmus nur
Strukturen erzeugt, die in der Vertikalen keine Richtungsänderung aufweisen, d.h. einem Turm oder Stapel gleich aufgebaut sind. Wurde die maximale Anzahl an Lagenwechsel also noch nicht erreicht, so kehrt der Algorithmus an den Anfang des Programmflusses zurück, um im aktuellen Layer erneut Metallstücke zu generieren. Der Algorithmus wird beendet, wenn die Maximalzahl erreicht wurde.
Die Erzeugung der Durchkontaktierungen ist in Fig. 4 schematisch dargestellt. Der Routine wird zu Beginn der aktuelle Layer mitgeteilt, die maximale Anzahl zu erzeugender Vias festgelegt und die Liste mit gültigen Viapositionen übergeben. Die darauf folgenden Schritte befinden sich im Inneren einer Programmschleife, die solange ausgeführt wird, bis die maximale Anzahl an erzeugten Durchkontaktierungen erreicht wurde. Zunächst wird der erste Eintrag in der Vialiste aus der Liste entfernt, er stellt die Position des nächsten zu erzeugenden Vias dar. Das Via kann sodann einen Kontakt zur nächsten, darüberllegenden Metalllage herstellen, oder zur darunterliegenden Ebene. Dies ist nur möglich, wenn es sich nicht um die unterste Metallisierungsebene handelt, in diesem Fall ist nur ein Wechsel nach oben möglich. Das Gleiche gilt in umgekehrter Weise für die oberste Lage. Aus diesem Grund überprüft der Algorithmus die aktuelle Metalllage und entscheidet, ob das zu erzeugende Via eine Durchkontaktierung nach oben oder nach unten darstellen soll . Sind beide Richtungen möglich, so wird mit gleicher Wahrscheinlichkeit zufällig eine der beiden Möglichkeiten gewählt. Daraufhin wird das Via erzeugt und der Abstandsregel- prüfung unterzogen. Besteht die Änderung den Test, so wurde das Via regelkonform erzeugt . Wurde die maximale Anzahl an Durchkontaktierungen noch nicht erreicht, so springt der Algorithmus an den Beginn der Schleife zurück. Die Bearbeitung des nächsten Element der Vialiste beginnt, d.h. ein weiteres Via wird erzeugt. War die Generierung des Vias nicht regelkonform, beispielsweise weil der DRC-Check eine Verletzung des Mindestabstands zwischen dem Via und einem benachbarten Metallstück festgestellt hat, so wird das soeben erzeugte Via entfernt. Der Programmfluss kehrt nun ebenfalls an den Schleifenanfang zurück und bearbeitet die nächste Position in der Positionsliste.
Nach der Erzeugung eines Clusters liegt seine Geometrie in Form einer zweidimensionalen Entwurfsansicht im Layout-Editor vor. Fig. 5 zeigt eine solche Ansicht (hier schwarz-weiß, die einzelnen Ebenen werden im Editor farblich unterschieden) . Der Cluster wird als eigenständige Entwurfseinheit (Zelle) in einer Bibliothek abgespeichert und einer Kapazitätsanalyse (Extraktion) unterzogen. Zu diesem Zweck und zur externen Weiterverarbeitung mit Werkzeugen anderer EDA- Plattformen wird das Layout in ein Standardformat konvertiert (sog. GDSII- oder Stream-Format) .
Für den mit dem Layout der Fig. 5 erzeugten Kapazitätscluster wurde eine dreidimensionale Schrägansicht erstellt, um den strukturellen Aufbau besser erkennen zu können. Die zweidimensionale Entwurfsansicht, die typisch ist für alle Layout- Editoren, bietet bei den Kapazitätsclustern dagegen wenig Anschaulichkeit, da sie für die manuelle Eingabe geometrischer Formen gedacht ist und eher bei regelmäßigen Strukturen Vorteile aufweist . Die 3D- Ansicht in Fig. 6 wurde mit einem Raytracing- und Rendering-Programm erstellt, mit dem dreidimensionale Szenen unter Berücksichtigung von Lichtausbreitung, Schattenwurf und Reflektion berechnet werden können. Dadurch erzeugen Licht- und Schatteneffekte einen räumlichen Tiefeneindruck, der dem Betrachter die Dreidimensionalität der betrachteten Objekte vermittelt. In der linken, hinteren Ecke des Clusters der Fig. 6 ist die Anschlussstelle für die Auswerteelektronik zu sehen, ein kleiner, rechteckiger Bereich auf der obersten Metalllage. Neben den typischerweise horizontal und vertikal verlaufenden Strukturen, erstrecken sich einige Leitungsstücke in schräger Richtung. Der grundsätzliche Aufbau ist völlig willkürlich und die einzelnen Metallfragmente in ihrer Größe und Lage zufällig. Als besonderes Merkmal sind schließlich noch die kleinen Ecken und Ausbuchtungen zu nennen. Es sind in erster Linie diese letzten drei Eigenschaften der Kapazitätscluster, die sie von herkömmlichen, regelmäßigen Strukturen wie sie aus der Hand eines Ingenieurs stammen oder von Verdrahtungs- Werkzeugen (Router) erzeugt werden, unterscheidet.
Bei der Nutzung des vorliegenden Verfahrens sind keinerlei lokale Kopien des geheimen Schlüssels erforderlich. Das Verfahren eröffnet ein sehr weites Einsatzfeld und stellt ein einfaches Prinzip zur Einprägung sowie gegebenenfalls Erzeugung eines geheimen Schlüssels dar, der fest mit einem physikalischen Medium verbunden ist. Der geheime Schlüssel ist auch mit vollständiger Kenntnis des Generierungsverfahrens nur mit sehr hohem Aufwand zu ermitteln. Die Figuren 11 und 12 zeigen ein weiteres Beispiel für eine Messschaltung zur Durchführung des erfindungsgemäßen Verfahrens. Diese Messschaltung nutzt eine auf Ladungspumpen basierende Technik, um die parasitären Kapazitäten von zwei komplexen Leitungsstrukturen miteinander zu vergleichen. Mit dieser Technik wird eine sehr hohe Genauigkeit bei geringem Flächenbedarf der Messschaltung erreicht. Die Messschaltung kommt ohne externe Messgeräte aus und verfügt über eine spezielle Vorkehrung, die den von der Schwellwert- dispersion der in der Messschaltung eingesetzten Transistoren herrührenden Messfehler minimiert .
Auf Ladungspumpen basierende Techniken zur Messung kleiner Kapazitäten in integrierten Schaltungen sind bekannt. Die Kapazität wird bei den bekannten Techniken aus einem linearen Fit durch eine Anzahl von Messpunkten bestimmt. Jeder Messpunkt gibt den mittleren Strom an, der bei einer bestimmten Frequenz und Spannung in den zu vermessenden Kondensator gepumpt wird. Beim Ladungspumpen dienen zwei nicht überlappende Taktpulse als Schaltsignale zum Laden bzw. Entladen des Kondensators. Der resultierende mittlere Strom, der in einem vorgegebenen Zeitintervall durch den ladenden Transistor in den Kondensator fließt, wird hierbei mit einem externen Amperemeter gemessen.
In der vorliegenden Anwendung wird diese Technik modifiziert, um die gesamte Messschaltung ohne externe Messgeräte in einen integrierten Schaltkreis zu integrieren. Eine derartige Messschaltung ist in Figur 11 dargestellt, in der die Zelle mit den zu vergleichenden Kapazitäten lediglich durch das Rechteck repräsentiert ist. Ein Beispiel für eine derartige Zelle ist in der Figur 12 im Detail dargestellt.
Bei der vorgeschlagenen Messschaltung wird nicht der mittlere Strom gemessen. Vielmehr ist ein großer Kondensator Cioad auf dem Chip integriert, der zunächst durch ein Ladesignal „ load" vorgeladen und anschließend durch ein Entladungssignal QinJ durch Pumpen von Elektronen in die gerade zu vermessende Kapazität, bspw. Cl (vgl. Figur 12), stufenweise entladen wird.
Auf diese Weise verringert sich die Anfangsspannung VQin mit jedem Taktpuls um einen Betrag, der von der zu vermessenden Kapazität Cl bzw. C2 abhängt. Nach mehreren Taktzyklen wird die Spannung am Lade- kondensator Cioad/ die durch einen PMOS Source-Folger verstärkt wird, mit einem Sample-and-Hold Element abgetastet . Diese Prozedur wird mit der zweiten zu vermessenden Kapazität C2 wiederholt. Die Umschaltung zwischen den beiden Kapazitäten Cl, C2 erfolgt hierbei über die Schaltsignale swCl und swC2. Die Entladung der jeweiligen Kapazitäten Cl, C2 wird durch das „clear"- Signal ausgelöst. Die durch das Sample-and-Hold Element für die beiden Kapazitäten Cl, C2 abgetasteten Spannungen werden in einem Komparator verglichen, der in Abhängigkeit vom Vergleich den Bitwert 0 oder 1 ausgibt. Diese Prozedur wird für alle Paare von Clustern bzw. Leitungsstrukturen wiederholt, bis die gewünschte Anzahl an Bits ausgelesen ist . Hierzu kann die Zelle der Figur 11 auch mehr als zwei zu vermessende Cluster enthalten. Bei zwei Clustern ergibt sich ein mögliches Vergleichspaar (1 Bit) , bei drei Clustern 3 Paare (3 Bit) , bei vier Clustern 6 Paare (6 Bit) usw. Alternativ kann für jedes Clusterpaar auch eine gesonderte Messschaltung vorgesehen sein.
Figur 12 zeigt ein Beispiel der Zelle mit lediglich einem Paar von Kapazitätsclustern entsprechend den zu vermessenden Kapazitäten Cl, C2. In dieser Figur ist auch die bereits angesprochene Vorkehrung zur Messfehlerminimierung dargestellt, die die den Kapazitäten Cl bzw. C2 zugeordneten NMOS- Transistoren umfasst, die durch das Signal „clear" eingeschaltet werden.
Selbstverständlich können in der Messschaltung der Figuren 11 und 12 anstelle der PMOS und NMOS Transistoren auch andere Arten von Transistoren eingesetzt werden, die die gleichen Sehaltfunktionen erfüllen.
Die folgenden Beispiele zeigen unterschiedliche Anwendungen, bei denen ein Chip oder eine Chipkarte mit einem kryptographisehen Schlüssel, der gemäß dem vorliegenden Verfahren eingeprägt wurde, einsetzbar ist.
Eine erste Beispielanwendung ist ein elektronischer Schlüssel für PKW in Form einer Fernbedienung (Figur 7) . Der Schlüsselgenerator (KeyGen) , der das vorliegende Verfahren nutzt, erzeugt auf allen Chips denselben geheimen Schlüssel (PrivKey) . Dieser wird mit einer Seriennummer versehen, so dass sich für jedes
Paar aus Schloss und Fernbedienung jeweils ein eigener geheimer Schlüssel ergibt, den Schloss und Fernbedienung jedoch gemeinsam haben. Dieser Schlüssel dient nun dazu, eine zufällige Bitfolge im Schloss und in der Fernbedienung zu verschlüsseln. Diese Bitfolge wird bei jedem Öffnen und Schließen von Neuem erzeugt und zwischen Schloss und Schlüssel ausgetauscht . Durch den Vergleich (Cmp) zwischen den Ergebnissen der
Verschlüsselung in Fernbedienung und Schloss wird die Autorisierung realisiert: Nur wenn beide, Schloss und Fernbedienung, über denselben Schlüssel (PrivKey) verfügen, ist die verschlüsselte Bitfolge exakt gleich. Ohne die Kenntnis des geheimen Schlüssels ist es einem Angreifer nicht möglich, die Fernbedienung so nachzubauen oder zu imitieren, dass sie die gleiche verschlüsselte Bitsequenz erzeugt wie das Schloss oder die Originalfernbedienung.
Grundsätzlich lässt sich das vorliegende Verfahren oder ein damit erhaltener Chip für alle Anwendungen einsetzen, in denen eine Autorisationsprüfung bzw. Zugangskontrolle realisiert werden soll (Smart-Card Anwendungen) . Auch hier kann analog zum oben genannten Prinzip verfahren werden, d.h. durch Einsatz eines All- Chips-Key die Echtheit von Smart-Cards überprüft werden.
Ein weiteres Anwendungsbeispiel betrifft die Übertragung und Verteilung von Multimedia-Inhalten unter Nutzung eines Single-Chip-Key. In diesem Anwendungsfall geht es um die sichere Übertragung und Verteilung von Multimedia-Inhalten, z.B. Musik oder Videoströmen. In einem Gerät (Handy, Walkman, Computer, DVDPlayer, etc.) soll Multimedia-Inhalt (Cont) abgespielt werden, der von einem Anbieter (MMProvider) z.B. aus dem Internet nach Bedarf (On-Demand) bezogen wird. Der Multimedia-Inhalt soll auf dem Gerät unendlich oft abspielbar sein und Sicherheitskopien (z.B. auf DVD) möglich sein, jedoch soll er nicht auf dem Gerät eines Dritten zu gebrauchen sein.
Durch die in Figur 8 dargestellte Verfahrensweise wird eine solche Anwendung möglich. Angenommen, Käufer A besitze N Multimedia-Geräte, für die er den Inhalt kaufen möchte. Jedes dieser Geräte besitzt seinen eigenen öffentlichen Schlüssel, PubKeyl bis PubKeyN. Diese werden bei einem Kauf dem Multimedia-Anbieter übermittelt. Der Anbieter erzeugt daraufhin (auf herkömmliche Weise) einen neuen geheimen Schlüssel (DESKeyA) pro Kunde, den er N-mal (d.h. für jedes MM- Gerät des Käufers) mit den Schlüsseln PubKeyl bis
PubKeyN verschlüsselt. Die verschlüsselten Schlüssel DESKeySecl bis DESKeySecN können dann von den Multimedia-Geräten des Käufers A entschlüsselt werden, nicht jedoch von den Geräten einer anderen Person B. Aufgrund dieser Eigenschaft ist es nun möglich, den
Multimedia-Inhalt über einen offen, nicht gesicherten Kanal (Internet, UMTS, etc.) zu verschicken, wenn dieser zuvor beim Anbieter mit dem geheimen Schlüssel DESKeyA des Käufers A verschlüsselt wurde. Die Geräte des Käufers A sind schließlich in der Lage, mithilfe des geheimen Schlüssels DESKeyA den Multimedia-Inhalt zu entschlüsseln. Da nur diese Geräte über ihren eigenen geheimen Schlüssel SecKeyl bis SecKeyN verfügen, kann keines der Geräte einer anderen Person an den Schlüssel DESKeyA des Käufers A gelangen um dessen Multimedia-Inhalt zu entschlüsseln. Auch in diesem Anwendungsfall ist es sinnvoll, eine Authentizitätsprüfung zu implementieren, um sicherzustellen, dass alle öffentlichen Schlüssel aus dem Multimedia-Gerät stammen und nicht vom Anwender selbst erstellt wurden. Dazu kann ein All-Chips Key
(nicht dargestellt) verwendet werden, der in jedem MM- Gerät und bei den MM-Anbietern vorhanden ist und immer gleich ist. Dieser wird nun vom MM-Gerät benutzt, um die öffentlichen Schlüssel PubKeyl bis PubKeyN zu verschlüsseln. Nur wenn MM-Gerät und MM-Anbieter über denselben Schlüssel verfügen, ist ein korrekter Austausch der Schlüssel PubKeyl bis PubKeyN möglich.
Das hier diskutierte Problem der Schlüssel- authentizität ist ein grundsätzliches Problem bei allen Public-Key Verfahren. Es wird gegenwärtig dadurch gelöst, dass ein öffentlicher Schlüssel nur dann als authentisch deklariert wird, wenn er zuvor von vertrauenswürdigen Stellen überprüft wurde. In der Regel wird der Schlüssel dann auf einen öffentlich zugänglichen Server gelegt. Analog dazu könnte in dem hier vorgestellten Anwendungsfall jeder öffentliche Schlüssel aller MM-Gerät beim Hersteller vor dem Verkauf der Geräte ausgelesen werden, veröffentlicht werden und dadurch authentifiziert werden.
Ein weiteres Beispiel betrifft den Schutz von Software unter Einsatz von All-Chips Key und Single- Chip Keys. Mit dem allgemeinen Begriff „Schutz von Software" sind Aspekte gemeint, die auch im Rahmen der Trusted-Computing-Initiative behandelt werden. Dabei geht es in erster Linie darum, Software auf einem System nur dann auszuführen, wenn dies autorisiert wurde. Eine gegenwärtig angewandte Form ist die Produktaktivierung eines bekannten Betriebssystems. Die Stelle des geheimen Schlüssels nimmt dabei eine individuelle Zahlenfolge ein, die sich aus den Hardwarekomponenten eines Rechners durch Anwendung eines geheim gehaltenen Verfahrens ableitet . Hierbei handelt es sich ausschließlich um einen Kopierschutz.
Mit dem in der vorliegenden Erfindung vorge- schlagenen Single-Chip Key kann ein solcher Kopierschutz ebenfalls realisiert werden, die folgenden Nachteile jedoch vermieden werden:
1. Eingeschränkte Reproduzierbarkeit. Die Produktaktivierung ist jedesmal von Neuem nötig, wenn sich mehr als eine bestimmte Zahl an Hardwarekomponenten eines Rechners ändern bzw. ausgetauscht werden, da die Zahlenfolge, die sich aus diesen Komponenten ergibt, eine andere ist. 2. Implementierung in schwach geschützter
Software .
Das Verfahren zur Produktaktivierung bzw. der Vergleich zwischen einem Freischaltcode und der Zahlenfolge der Hardwarekomponenten ist im Betriebssystem selbst implementiert, d.h. erfolgt in Software. Durch Reverse- Engineering (Disassemblierung bzw. Debugging) kann der verwendete Algorithmus abgeleitet werden, um für die individuelle Zahlenfolge der jeweiligen Nutzer den dazugehörigen Freischaltcode zu berechnen. Durch Kenntnis dieses Algorithmus ist es nun jeder Person möglich, für jede Hardwarezusammenstellung eigenständig einen Freischaltcode zu erzeugen und sein Betriebssystem zu aktivieren. Die Liste ähnlicher Fälle lässt sich fortsetzen. Immer dann, wenn es um die Verarbeitung von sicherheitsrelevanten Informationen geht, ist es nötig, die entsprechenden Verarbeitungsroutinen zu schützen, d.h. zu verschlüsseln. Einzig und allein im Prozessor selbst und unmittelbar vor der Ausführung der Befehle sollten die Anweisungen entschlüsselt werden. In allen anderen Teilen des Rechners, insbesondere auf externen Daten- träger, sollten die sensiblen Programmteile ausschließlich verschlüsselt vorliegen.
Das Schema in Figur 9 zeigt einen entsprechenden Lösungsansatz. Jeder Prozessor einer bestimmten Baureihe (für alle Baureihen) verfügt über denselben geheimen Schlüssel PrivKey (All-Chip Key) . Mit diesem lassen sich sicherheitskritische Befehle (CodeSec) im Prozessor entschlüsseln. Außerhalb des Prozessors sind die Befehlsfolgen immer verschlüsselt. Damit ein Softwarehersteller seine sicherheitskritischen
Programmteile verschlüsseln kann, aktiviert er die Verschlüsselungseinheit (Encrypt) und übergibt ihr die Routinen zur Verschlüsselung (Code) . Die verschlüsselten Programmteile sind dadurch geschützt und können zusammen mit dem ungeschützten Teil der Software vertrieben bzw. verkauft werden (Vertrieb) . Die Aktivierung der Verschlüsselungseinheit kann wiederum durch verschlüsselte Softwareroutinen realisiert werden, so dass z.B. eine Autorisationsprüfung eingebunden werden kann. Dies würde sicherstellen, dass nicht jeder Anwender beliebig oft große Datenmengen verschlüsseln kann, um über einen Vergleich zwischen den unverschlüsselten und den verschlüsselten Daten den geheimen Schlüssel zu errechnen (DES gilt diesem Angriff gegenüber als sehr sicher) .
Der Idealfall bezüglich Flexibilität und Sicherheit ist die Kombination aus den in Figuren 8 und 9 dargestellten Verfahren, d.h. der Einsatz eines AlI- Chips Key und von Single-Chip Keys. Letztere kennzeichnen jeden Prozessor in eindeutiger Weise, so dass Programme und insbesondere Multimedia-Inhalte nur auf den autorisierten Prozessoren lauffähig sind. Der All- Chips Key stellt dagegen die Authentizität des Prozessors (d.h. seines Single-Chip Keys) sicher und ermöglicht es, Softwareteile vor dem Anwender geheim zu halten und damit vor Reverse-Engineering und Manipulationen zu schützen.
Figur 10 stellt eine solche Architektur schematisch dar. Jeder der N Prozessoren der Person A hat sein eigenes, individuelles Schlüsselpaar PrivKeyXA und PubKeyXA, alle anderen Funktions- Prozessoreinheiten sind identisch. Der Schlüssel DESKeyB stellt den persönlichen Schlüssel für Person B dar, mit dem Multimedia-Inhalte, aber auch sicherheitskritische Programmteile für jeden der M Prozessoren von B verschlüsselt werden. Er wird von A für B individuell erzeugt (auf herkömmliche Weise) und mit den öffentlichen Schlüsseln PubKeylB ... PubKeyMB von B verschlüsselt. Um die Authentizität dieser Schlüssel sicherzustellen, wurden sie von B mit dem All-Chips Key PrivKey verschlüsselt, so dass diese nur von den
Prozessoren selbst stammen können, nicht jedoch von Person A, B oder einer anderen. Auf diese Weise können Personen sicherheitskritische Daten austauschen, ohne dass der Empfänger oder ein unberechtigter Dritter an die unverschlüsselten Daten selbst gelangen kann. Die verschlüsselten Daten sind jedoch frei verfügbar, so dass Kopien der Daten geschützt sind, seien es lokale Kopien im Arbeitsspeicher bzw. auf Festplatte oder Sicherheitskopien.
Ein weiteres Anwendungsbeispiel stellt die Konfiguration in FPGAs dar. Die Programmierung bzw. Konfiguration einiger FPGAs wird vor Einsichtnahme geschützt, so dass die in ihnen realisierten Schaltungen nicht zugänglich sind. Wichtigstes Ziel ist hierbei, das den Schaltungen zugrunde liegende geistige Eigentum vor Diebstahl zu schützen. Eine Verschlüs- seiung der Konfiguration, basierend auf einem All-Chip Key und Public-Key Kryptographie, könnte die Sicherheit bisheriger Ansätze weiter erhöhen. Die Programmierung eines FPGA wäre im Konfigurationsspeicher immer nur verschlüsselt hinterlegt und würde erst im FPGA selbst entschlüsselt werden. Als PlatzSparmaßnahme könnte die RSA-Einheit auf dem FPGA aus den ohnehin vorhandenen programmierbaren Gattern des FPGA bestehen, die immer dann eingesetzt werden, wenn der FPGA neu konfiguriert werden soll. Sie stellen damit die Reset-Konfiguration dar und werden nach erfolgreicher Entschlüsselung und
Programmierung mit den neuen Schaltungen überschrieben. Soll der FPGA erneut programmiert werden, so kehrt die Konfiguration der Gatter in den Reset-Zustand zurück, in dem die Gatter zur RSA-Einheit verschaltet sind. Bezugszeichenliste
1 Stromquelle
2-4 Schalter
5 parasitäre Kapazität
6 parasitäre Kapazität
7 Komparator
8 Ausgang der Messschaltung elektrische Leitungen
10 Durchkontaktierungen
11 MessSchaltung

Claims

Patentansprüche
1. Verfahren zur Erzeugung und Einprägung eines wiedergewinnbaren kryptographisehen Schlüssels bei der Herstellung einer topographischen Struktur, insbesondere für mikroelektronische oder mikromechanische Bauelemente, bei dem mehrere Messschaltungen (11) in der topographischen Struktur erzeugt werden, die jeweils abhängig von einer Größe zumindest einer elektrischen oder physika- lischen Eigenschaft in der topographischen Struktur, die bei der Herstellung der topographischen Struktur mit den Messschaltungen (11) zufälligen Schwankungen unterworfen ist, einen Messwert erzeugen, und der kryptographische Schlüssel aus den Messwerten der Messschaltungen (11) gebildet oder abgeleitet wird, wobei die Messschaltungen (11) dreidimensionale elektrische Leitungsstrukturen (9, 10) umfassen, die jeweils mit einem zufälligen Design vorgegeben und in der topographischen Struktur erzeugt werden, und die Messwerte abhängig von der Größe einer parasitären elektrischen Eigenschaft der Leitungsstrukturen (9, 10) erzeugen.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die MessSchaltungen (11) die Messwerte abhängig von der Größe einer parasitären Kapazität der LeitungsStrukturen (9, 10) erzeugen.
3. Verfahren nach Anspruch 1 oder 2 , dadurch gekennzeichnet, dass jede Messschaltung (11) zwei dreidimensionale elektrische Leitungsstrukturen (9, 10), die jeweils mit einem zufälligen, für die einzelne Messschaltung (11) identischen Design vorgegeben und in der topographischen Struktur erzeugt werden, und eine Vergleichseinheit (7) aufweist, die die Größe der parasitären elektrischen Eigenschaft der beiden Leitungsstrukturen (9, 10) vergleicht, wobei die Messschaltung (11) abhängig von einem Ergebnis des Vergleichs einen Bitwert von 0 oder 1 erzeugt .
4. Verfahren zur Einprägung eines wiedergewinnbaren kryptographischen Schlüssels bei der Herstellung einer topographischen Struktur, insbesondere für mikroelektronische oder mikromechanische Bauelemente, bei dem
- der kryptographische Schlüssel in Form einer Bitfolge bereitgestellt wird,
- für jedes Bit der Bitfolge eine Messschaltung (11) in der topographischen Struktur erzeugt wird, die zwei dreidimensionale elektrische Leitungsstrukturen (9, 10) und eine Vergleichseinheit (7) aufweist, die eine Größe einer parasitären elektrischen Eigenschaft der beiden Leitungsstrukturen (9, 10) vergleicht, und
- die Messschaltung (11) abhängig von einem Ergebnis des Vergleichs einen Bitwert von 0 oder 1 erzeugt,
- wobei jede der beiden Leitungsstrukturen (9, 10) mit einem zufälligen Design vorgegeben und in der topographischen Struktur erzeugt wird und das zufällige Design der beiden Leitungsstrukturen (9, 10) jeder Messschaltung (11) derart unterschiedlich oder gleichartig ausgewählt wird, dass die MessSchaltung (11) das zugeordnete Bit der Bitfolge erzeugt .
5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass zunächst eine größere Anzahl an Designs für die dreidimensionalen elektrischen Leitungsstrukturen (9, 10) rechnergestützt erzeugt und in einen Pool eingebracht wird, aus dem anschließend für die Herstellung der einzelnen Leitungsstrukturen (9, 10) der Messschaltungen (11) geeignete Designs ausgewählt werden.
6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass die Erzeugung der Designs mit einem Algorithmus erfolgt, der Breite, Länge und Richtung von Abschnitten der Leitungsstrukturen (9, 10) in jeder Ebene der Leitungsstrukturen (9, 10) sowie Verbindungen zwischen unterschiedlichen Ebenen der Leitungsstrukturen (9, 10) zufällig wählt.
7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass die Herstellung der topographischen Struktur mit den Messschaltungen (11) mit einem litho- graphischen Prozess erfolgt.
8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass die MessSchaltungen (11) zur Erzeugung der Messwerte abhängig von der Größe einer parasitären Kapazität der Leitungsstrukturen (9, 10) eine auf Ladungspumpen basierende Technik nutzen.
9. Chip oder Chipkarte mit einer topographischen
Struktur, die einen gemäß dem Verfahren nach einem der Ansprüche 1 bis 8 eingeprägten krypto- graphischen Schlüssel mit den zugehörigen Mess- Schaltungen (11) enthält.
PCT/DE2006/000909 2005-05-27 2006-05-26 Verfahren zur erzeugung und/oder einprägung eines wiedergewinnbaren kryptographischen schlüssels bei der herstellung einer topographischen struktur WO2006125431A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP06753200A EP1897139A1 (de) 2005-05-27 2006-05-26 Verfahren zur erzeugung und/oder einprägung eines wiedergewinnbaren kryptographischen schlüssels bei der herstellung einer topographischen struktur
US11/921,058 US20090304181A1 (en) 2005-05-27 2006-05-26 Method for generating and/or imprinting a retrievable cryptographic key during the production of a topographic structure

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102005024379A DE102005024379A1 (de) 2005-05-27 2005-05-27 Verfahren zur Erzeugung und/oder Einprägung eines wiedergewinnbaren kryptographischen Schlüssels bei der Herstellung einer topographischen Struktur
DE102005024379.7 2005-05-27

Publications (1)

Publication Number Publication Date
WO2006125431A1 true WO2006125431A1 (de) 2006-11-30

Family

ID=36940356

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE2006/000909 WO2006125431A1 (de) 2005-05-27 2006-05-26 Verfahren zur erzeugung und/oder einprägung eines wiedergewinnbaren kryptographischen schlüssels bei der herstellung einer topographischen struktur

Country Status (4)

Country Link
US (1) US20090304181A1 (de)
EP (1) EP1897139A1 (de)
DE (1) DE102005024379A1 (de)
WO (1) WO2006125431A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2582903C1 (ru) * 2015-02-25 2016-04-27 Федеральное государственное унитарное предприятие "Всероссийский научно-исследовательский институт автоматики им. Н.Л. Духова" (ФГУП "ВНИИА") Способ защиты углов трёхмерных микромеханических структур на кремниевой пластине при глубинном анизотропном травлении
IT201700057307A1 (it) * 2017-05-26 2018-11-26 St Microelectronics Srl Sistema ip-gpio, apparecchiatura e procedimento corrispondenti
US10429743B2 (en) 2017-11-30 2019-10-01 International Business Machines Corporation Optical mask validation
US10650111B2 (en) 2017-11-30 2020-05-12 International Business Machines Corporation Electrical mask validation

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6047068A (en) * 1995-09-19 2000-04-04 Schlumberger Industries Method for determining an encryption key associated with an integrated circuit
US6161213A (en) * 1999-02-17 2000-12-12 Icid, Llc System for providing an integrated circuit with a unique identification
US20010033012A1 (en) * 1999-12-30 2001-10-25 Koemmerling Oliver Anti tamper encapsulation for an integrated circuit
US6360191B1 (en) * 1996-02-20 2002-03-19 John R. Koza Method and apparatus for automated design of complex structures using genetic programming
US20030181025A1 (en) * 2002-03-22 2003-09-25 Luc Wuidart Chip differentiation at the level of a reticle

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3736882C2 (de) * 1987-10-30 1997-04-30 Gao Ges Automation Org Verfahren zur Echtheitsprüfung eines Datenträgers mit integriertem Schaltkreis
JP3440763B2 (ja) * 1996-10-25 2003-08-25 富士ゼロックス株式会社 暗号化装置、復号装置、機密データ処理装置、及び情報処理装置
US6901145B1 (en) * 1999-04-08 2005-05-31 Lucent Technologies Inc. Generation of repeatable cryptographic key based on varying parameters
US6993130B1 (en) * 2000-02-04 2006-01-31 Xtec, Incorporated Methods and apparatus for mediametric data cryptoprocessing
WO2001084767A1 (en) * 2000-05-01 2001-11-08 Xtec, Incorporated Methods and apparatus for mediametric data cryptoprocessing
US20020156757A1 (en) * 2000-05-12 2002-10-24 Don Brown Electronic product design system
FR2822565B1 (fr) * 2001-03-23 2004-09-10 Schlumberger Systems & Service Composant electronique securise
FR2825873A1 (fr) * 2001-06-11 2002-12-13 St Microelectronics Sa Stockage protege d'une donnee dans un circuit integre
FR2833119A1 (fr) * 2001-11-30 2003-06-06 St Microelectronics Sa Generation de quantites secretes d'identification d'un circuit integre
US7840803B2 (en) * 2002-04-16 2010-11-23 Massachusetts Institute Of Technology Authentication of integrated circuits
US7210634B2 (en) * 2004-02-12 2007-05-01 Icid, Llc Circuit for generating an identification code for an IC
EP1842203A4 (de) * 2004-11-12 2011-03-23 Verayo Inc Flüchtige schlüssel für bauelemente und deren verwendung
DE102004058183A1 (de) * 2004-12-02 2006-06-08 Robert Bosch Gmbh Messfühler mit Selbsttest
US7813507B2 (en) * 2005-04-21 2010-10-12 Intel Corporation Method and system for creating random cryptographic keys in hardware

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6047068A (en) * 1995-09-19 2000-04-04 Schlumberger Industries Method for determining an encryption key associated with an integrated circuit
US6360191B1 (en) * 1996-02-20 2002-03-19 John R. Koza Method and apparatus for automated design of complex structures using genetic programming
US6161213A (en) * 1999-02-17 2000-12-12 Icid, Llc System for providing an integrated circuit with a unique identification
US20010033012A1 (en) * 1999-12-30 2001-10-25 Koemmerling Oliver Anti tamper encapsulation for an integrated circuit
US20030181025A1 (en) * 2002-03-22 2003-09-25 Luc Wuidart Chip differentiation at the level of a reticle

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1897139A1 *

Also Published As

Publication number Publication date
DE102005024379A1 (de) 2006-11-30
US20090304181A1 (en) 2009-12-10
EP1897139A1 (de) 2008-03-12

Similar Documents

Publication Publication Date Title
DE3700663C2 (de)
DE112005001654B4 (de) Verfahren zum Übermitteln von Direct-Proof-Privatschlüsseln an Geräte mittels einer Verteilungs-CD
DE60217260T2 (de) Datenverarbeitungs- und Verschlüsselungseinheit
DE19963408A1 (de) Tragbarer Datenträger mit Zugriffsschutz durch Schlüsselteilung
DE102010034976A1 (de) Anordnung zur Berechtigungskontrolle, insbesondere für Kraftfahrzeuge
WO2000017826A1 (de) Vorrichtung zum liefern von ausgangsdaten als reaktion auf eingangsdaten und verfahren zum überprüfen der authentizität und verfahren zum verschlüsselten übertragen von informationen
DE102009025412B4 (de) Integrierte Schaltung und Verfahren zum Schützen eines Schaltungsteils einer integrierten Schaltung, der geschützt werden soll und Computerprogrammprodukt zur Ausführung des Verfahrens
DE102006030888B4 (de) Verfahren und Vorrichtung zum Erzeugen eines Startwertes für einen Pseudo-Zufallszahlengenerator
DE102014208838A1 (de) Verfahren zum Betreiben eines Steuergeräts
EP1897139A1 (de) Verfahren zur erzeugung und/oder einprägung eines wiedergewinnbaren kryptographischen schlüssels bei der herstellung einer topographischen struktur
EP2387798B1 (de) Verfahren zur verifikation einer kennzeichnungsschaltung
WO2017097909A1 (de) Chaotischer kreis mit veränderbaren dynamischen zuständen als sicherer informationsspeicher
DE112019007421T5 (de) Speichergerät mit sicherer testmoduseingabe
EP3435272B1 (de) Verfahren und vorrichtung zur identifikation eines additiv gefertigten werkstücks
DE102013014587B4 (de) Verfahren zum IT-Schutz sicherheitsrelevanter Daten und ihrer Verarbeitung
EP2350904A1 (de) Verfahren und anordnung zum konfigurieren von elektronischen geräten
EP4111399A1 (de) Verfahren, endgerät, überwachungsinstanz sowie bezahlsystem zum verwalten von elektronischen münzdatensätzen
DE102004020869A1 (de) System und Verfahren zum Bestimmen eines Signalnamens auf höchster Ebene in einem hierarchischen VLSI-Entwurf
EP0607950B1 (de) Verfahren und Datenträgeranordnung zur Echtheitserkennung von Speicherchips
DE102018001041A1 (de) Computerprogrammprodukt und Verfahren zur Auswahl eines Knotens in einem Netzwerk
DE102018100357A1 (de) Chip und verfahren zum sicheren speichern von geheimen daten
DE19923232C2 (de) Vorrichtung und Verfahren zur Sicherung von Daten auf einer Chipkarte
DE4103173C5 (de) Vorrichtung zum Schutz gegen unautorisierte Benutzung von Software
DE10130099B4 (de) Challenge-Response-Vorrichtung, Authentifikationssystem, Verfahren zum Erzeugen eines Response-Signals aus einem Challenge-Signal und Verfahren zur Authentifikation
DE102017207046B4 (de) Verfahren zum Herstellen und Auslesen einer kryptografischen Schaltung

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
REEP Request for entry into the european phase

Ref document number: 2006753200

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2006753200

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: RU

WWW Wipo information: withdrawn in national office

Ref document number: RU

WWP Wipo information: published in national office

Ref document number: 2006753200

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 11921058

Country of ref document: US