Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
PROCESSOR WITH ELECTRONIC SAFETY UNITS FOR STORING CONFIDENTIAL DATA
Document Type and Number:
WIPO Patent Application WO/2005/020042
Kind Code:
A2
Abstract:
The invention relates to a processing device (12) comprising a plurality of electronic safety units (16) for storing confidential data and a device (14) for reading said plurality of electronic safety units in order to determine confidential data. The storing of said data, for example a secret key for identifying the processing device, i.e. a chip card in which said processing device is placed, makes it possible to provide the electronic safety units with a sure, efficient and at the same time flexible mode and manner for inputting delicate information in an integrated circuit.

Inventors:
FISCHER WIELAND (DE)
SEIFERT JEAN-PIERRE (DE)
Application Number:
PCT/EP2004/008356
Publication Date:
March 03, 2005
Filing Date:
July 26, 2004
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
INFINEON TECHNOLOGIES AG (DE)
FISCHER WIELAND (DE)
SEIFERT JEAN-PIERRE (DE)
International Classes:
G06F21/74; G06F21/77; G06K19/07; G06K19/073; G07F7/10; (IPC1-7): G06F1/00
Foreign References:
EP0297209A21989-01-04
US20030126513A12003-07-03
US5086216A1992-02-04
Attorney, Agent or Firm:
Zimmermann, Tankred (Pullach bei München, DE)
Download PDF:
Claims:
Patentansprüche
1. Prozessoreinrichtung mit folgenden Merkmalen : einer Recheneinrichtung (12) zum Bearbeiten von Nutzdaten un ter Berücksichtigung von durch binäre Informationseinheiten darstellbaren Geheimdaten ; einer Mehrzahl von elektronischen Sicherungen (16) zum Spei chern der Geheimdaten, wobei eine Sicherung ausgebildet ist, um in einem integeren Zustand einen ersten Binärwert für eine binäre Informationseinheit zu speichern, und um in einem nichtintegeren Zustand einen zweiten Binärwert für eine bi näre Informationseinheit zu speichern, wobei sich der erste Binärwert von dem zweiten Binärwert unterscheidet ; und einer Einrichtung (14) zum Auslesen der Mehrzahl von elekt ronischen Sicherungen, um die Geheimdaten zu ermitteln.
2. Prozessoreinrichtung nach Anspruch 1, bei der die binären Informationseinheiten so ausgebildet sind, dass sie die Geheimdaten redundant darstellen, und bei der die Einrichtung (14) zum Auslesen ausgebildet ist, um auf der Basis der redundanten Darstellung eine Fehlerkor rektur durchzuführen, um eine binäre Informationseinheit aufgrund einer Sicherung, die einen fehlerhaften Zustand hat, zu korrigieren.
3. Prozessoreinrichtung nach Anspruch 1 oder 2, bei der die binären Informationseinheiten so ausgebildet sind, dass sie die Geheimdaten codiert darstellen, wobei die codierte Darstellung der Geheimdaten durch Codieren unter Verwendung eines Fehlerkorrekturcodes erzeugt ist, und bei der die Einrichtung (14) zum Auslesen, ausgebildet ist, um die codierte Darstellung der Geheimdaten aus der Mehrzahl von elektronischen Sicherungen zu ermitteln, und um dann unter Verwendung des Fehlerkorrekturcodes die codierte Darstellung zu decodieren, um die Geheimdaten zu erhalten.
4. Prozessoreinrichtung nach einem der vorhergehenden An sprüche, bei der die elektronischen Sicherungen ausgebildet sind, um, wenn sie gebrannt worden sind, irreversibel in einem nicht integeren Zustand zu sein.
5. Prozessoreinrichtung nach einem der vorhergehenden An sprüche, bei der die Mehrzahl von elektronischen Sicherungen eine Si cherung aufweist, die einen Feldeffekttransistor umfasst, der in einem integeren Zustand ein funktionierendes GateOxid hat, und der in einem nichtintegeren Zustand ein zerstörtes GateOxid hat.
6. Vorrichtung nach Anspruch 2, bei der die binären Informationseinheiten so ausgebildet sind, dass sie die Geheimdaten in uncodierter Form oder in einer einfachcodierten Form sowie in einer vergleichsweise kompliziert codierten Form umfassen, wobei den Geheimdaten in uncodierter Form oder einfachcodierter Form eine Überprü fungsinformation zugeordnet ist, und wobei die Einrichtung (14) zum Auslesen ausgebildet ist, um zunächst die Geheimdaten in uncodierter Form oder in ein fachcodierter Form auszulesen (20) und um die Überprüfungs informationen auszulesen (22), um anhand der Überprüfungsin formationen festzustellen (24), ob die Geheimdaten in der uncodierten Form oder der einfachcodierten Form fehlerfrei sind, und um dann, in dem Fall, in dem eine Fehlerhaftigkeit festgestellt worden ist, die Geheimdaten in der vergleichs weise kompliziert codierten Form auszulesen (26), und um dann ein Fehlerkorrekturverfahren (28) durchzuführen, um fehlerkorrigierte Geheimdaten zu erhalten.
7. Prozessoreinrichtung nach Anspruch 6, bei der die Überprüfungsinformationen einen MAC, eine CRC, oder einen HashWert umfassen.
8. Prozessoreinrichtung nach einem der vorhergehenden An sprüche, bei der die Mehrzahl von elektronischen Sicherungen über ei ner integrierten Schaltung, in der die Prozessoreinrichtung ausgeführt ist, verteilt sind, dahingehend, dass zumindest ein Teil der Mehrzahl von elektronischen Sicherungen unregel mäßig in der integrierten Schaltung angeordnet ist.
9. Prozessoreinrichtung nach einem der vorhergehenden An sprüche, die als Kryptoprozessoreinrichtung ausgeführt ist, wobei die Geheimdaten einen geheimen Schlüssel zur Identifi kation der Kryptoprozessoreinrichtung umfassen.
10. Verfahren zum Herstellen einer Prozessoreinrichtung, mit folgenden Merkmalen : Bereitstellen einer Recheneinrichtung (12), einer Mehrzahl von elektronischen Sicherungen (16) und einer Einrichtung (14) zum Auslesen der elektronischen Sicherungen, wobei die Mehrzahl von elektronischen Sicherungen vorgesehen ist, um Geheimdaten zu speichern, die durch binäre Informationsein heiten darstellbar sind ; Bereitstellen der binären Informationseinheiten, die die Ge heimdaten darstellen ; und Brennen von bestimmten Sicherungen der Mehrzahl von elektro nischen Sicherungen, so dass die bestimmten Sicherungen in einem nichtintegeren Zustand aufgrund von Binärdaten der binären Informationseinheiten gebracht werden, die einen be stimmten Binärwert umfassen.
11. Verfahren nach Anspruch 10, bei dem im Schritt des Bereitstellens der binären Informati onseinheiten die binären Informationseinheiten so bereitge stellt werden, dass sie die Geheimdaten redundant darstellen, und bei dem der Schritt des Brennens aufgrund der binären Infor mationseinheiten ausgeführt wird, die die Geheimdaten redun dant darstellen.
12. Verfahren nach Anspruch 11, bei dem der Schritt des Bereitstellens der binären Informationseinheiten folgenden Schritt umfasst : Codieren von UrsprungsGeheimdaten unter Verwendung eines Fehlerkorrekturcodes, um die binären Informationseinheiten zu erhalten, die die Geheimdaten redundant darstellen, wobei die binären Informationseinheiten einen ersten Bereich umfassen, der die Geheimdaten in uncodierter Form oder vergleichsweise einfachcodierter Form umfasst, und wobei die binären Infor mationseinheiten einen zweiten Bereich umfassen, in dem sich Überprüfungsinformationen für den ersten Bereich befinden, und wobei die binären Informationseinheiten einen dritten Be reich umfassen, in dem die Geheimdaten in vergleichsweise kompliziert codierter Form dargestellt sind.
Description:
Beschreibung Prozessor mit elektronischen Sicherungen zum Speichern von Geheimdaten Die vorliegende Erfindung bezieht sich auf Prozessoren und insbesondere auf Prozessoren für Chipkartenanwendungen, auf denen Geheimdaten, wie beispielsweise Schlüssel oder Identi- fikationsdaten, gespeichert sind.

Chipkarten umfassen üblicherweise einen Chip, der wiederum sowohl eine CPU als auch Peripherieelemente, wie beispiels- weise einen Krypto-Co-Prozessor, einen Arbeitsspeicher, einen Nur-Lese-Speicher etc. umfasst. Typische Chips für Chipkarten umfassen ferner einen nicht-flüchtigen Speicher als Nur-Lese- Speicher. Nicht-flüchtige Speicher (NVM ; NVM = Non Volatile Memory) werden dazu verwendet, um Geheimdaten für die Vor- richtung, der der nicht-flüchtige Speicher zugeordnet ist, zu speichern. Solche Geheimdaten sind beispielsweise geheime Schlüssel, die für den Chip und damit für die Chipkarte, auf der der Chip platziert ist, einzigartig sind. Solche Chipkar- ten identifizieren beispielsweise User für Mobiltelefone, in die sie eingebracht sind. Alternativ kann die Chipkarte selbst für eine Personenidentifikation verwendet werden, bei- spielsweise in Form einer Geldkarte, einer Gesundheitskarte, einer Bankkarte etc.

In solchen Chips werden bei der Auslieferung bzw. sogar bei der Herstellung auf dem Chip vorhandene nicht-flüchtige Spei- cher beispielsweise in Form eines ROMs programmiert. Die Pro- grammierung von ROMs geschieht üblicherweise mittels einer ROM-Maske, die eine der letzten Masken für die Chipkartenher- stellung ist. Alternativ können als nicht-flüchtige Speicher auch EPROMs oder EEPROMs verwendet werden, die nicht durch eine eigene Maske bei der Chipherstellung programmiert werden müssen, sondern die elektronisch programmiert werden können, beispielsweise durch Anlegen einer sehr hohen Spannung, um

über eine Tunnelwirkung Ladung auf ein isoliertes Gate eines Transistors zu bringen.

Solche nicht-flüchtigen Speicher zum Speichern von Geräte- eindeutigen Geheimdaten, wie beispielsweise einer PIN eines Trägers der Karte oder eines geheimen Schlüssels für eine Karte für ein asymmetrisches Verschlüsselungs-/Signatur- Verfahren sind in mehrerer Hinsicht unerwünscht. So sind sie einerseits in der Herstellung teuer. Des weiteren ist die Programmierung dieser Speicher sehr aufwendig. Bei typischen ROMs, die mittels einer ROM-Maske während der Herstellung programmiert werden, ist die Flexibilität besonders niedrig, da die Programmierungsdaten für den Nur-Lese-Speicher bereits bei der Herstellung der Karten bekannt sein muss.

Die Verwendung von EPROMs oder EEPROMs ist dagegen flexibler.

Andererseits müssen bei der Kartenprogrammierung relativ hohe Spannungen angelegt werden, um Ladungen auf isolierte Gates der Speichertransistoren zu bringen. Insbesondere bei nie- derpreisigen Anwendungen ist dabei die Gefahr besonders hoch, dass durch die hohen anzulegenden Spannungen, die um einiges höher als sämtliche Betriebsspannungen für die Chipkarte sind, benachbarte Schaltungsteile in Mitleidenschaft gezogen werden oder sogar beim Programmieren zerstört werden. Um dies zu vermeiden, müssen die Schaltungen besonders spannungsfest ausgelegt werden, obgleich typische Betriebsspannung für die Chipkarten deutlich unter dem Spannungspegel liegen, die be- nötigt werden, um den nicht-flüchtigen Speicher zu program- mieren.

Ein weiterer Nachteil besteht darin, dass nicht-flüchtige Speicher mit der Zeit ihren Speicherzustand verlieren. Um zu erkennen, wann ein solcher nicht-flüchtiger Speicher nicht mehr korrekt auslesbar ist, müssen daher wieder Überprüfungs- schaltungen auf der Karte vorgesehen werden. Diese Überprü- fungsschaltungen sind dann wirksam, um einem Träger der Karte zu signalisieren, dass die Karte bald nicht mehr vertrauens-

würdig ist und entweder ersetzt oder wenigstens aufgefrischt werden sollte.

Nicht-flüchtige Speicher sind ferner, da sie in Arrays ange- ordnet sind, und eine regelmäßige Struktur haben, für einen Angreifer, der in dem Speicher gespeicherte Daten widerrecht- lich extrahieren möchte, ein einfach zu findendes Ziel.

Daher bestehen bei zukünftigen Prozessoren zum Verarbeiten von Geheimdaten und insbesondere bei zukünftigen Chips für Chipkarten, die solche Prozessoren zum Verarbeiten von Ge- heimdaten umfassen, Bestrebungen, auf nicht-flüchtige Spei- cher zum Speichern von Geheimdaten zu verzichten.

Die Aufgabe der vorliegenden Erfindung besteht darin, eine sicherere und dennoch preisgünstige Prozessoreinrichtung mit gespeicherten Geheimdaten zu schaffen.

Diese Aufgabe wird durch eine Prozessoreinrichtung gemäß Pa- tentanspruch 1 oder ein Verfahren zum Herstellen einer Pro- zessoreinrichtung gemäß Patentanspruch 8 gelöst.

Der vorliegenden Erfindung liegt die Erkenntnis zugrunde, dass viele der eingangs beschriebenen Probleme damit gelöst werden können, dass geheime Schlüssel, also Geräte-einzigarte Geheimdaten nicht mehr in nicht-flüchtigen Speichern (NVM) gespeichert werden, sondern mittels elektronischer Sicherun- gen, die auch als E-Fuses bezeichnet werden. Eine erfindungs- gemäße Prozessoreinrichtung umfasst hierzu eine Rechenein- richtung zum Verarbeiten von Nutzdaten unter Verwendung durch binäre Informationseinheiten darstellbaren Geheimdaten, ein Array von elektronischen Sicherungen zum Speichern der Ge- heimdaten, wobei eine Sicherung ausgebildet ist, um in einem integren Zustand einen ersten Binärwert für eine binäre In- formationseinheit zu speichern, und um in einem nicht- integren Zustand einen zweiten Binärwert für eine binäre In- formationseinheit zu speichern, sowie eine Einrichtung zum

Auslesen von Arrays von elektronischen Sicherungen, um die Geheimdaten zu ermitteln.

Die vorliegende Erfindung ist dahingehend vorteilhaft, dass elektronische Sicherungen leicht hergestellt werden können, da für eine elektronische Sicherung typischerweise eine Lei- tung sowie ein Transistor ausreichend ist.

Zum Brennen der elektronischen Sicherungen, d. h. zum Verset- zen von bestimmten elektronischen Sicherungen in einen defek- ten Zustand, genügt es, z. B. an das Gate des zugeordneten Transistors eine kurze Spannungsspitze anzulegen, um den Transistor leitend zu machen, da das Gate-Oxid durchlegiert wird. Solche Spannungen sind wesentlich kleiner und müssen wesentlich kürzer angelegt werden als vergleichbare Spannun- gen zum Programmieren eines EEPROM-Transistors.

Weiterhin vorteilhaft ist, dass die elektronischen Sicherun- gen für alle Prozessoreinrichtungen identisch hergestellt werden können, und dass dann erst, nach der Herstellung, die Gerätespezifischen Geheimdaten individuell in die Chips ein- programmiert werden können, d. h. eingebrannt werden können.

Ein weiterer Vorteil der vorliegenden Erfindung besteht dar- in, dass die elektronischen Sicherungen an beliebiger Stelle in einer integrierten Schaltung verteilt werden können, so dass für einen Angreifer nicht unmittelbar ersichtlich ist, welcher Transistor zu einer elektronischen Sicherung gehört, und welcher Transistor ein normaler Logik-oder Arbeitstran- sistor der integrierten Schaltung ist. Während Speicherarrays für einen Angreifer gut auf einer integrierten Schaltung i- dentifizierbar sind, können die elektronischen Sicherungen nahezu beliebig über eine integrierte Schaltung verteilt wer- den, ohne dass sie in einem Array angeordnet sind, das für einen Angreifer leicht entdeckbar ist.

Ein weiterer Vorteil elektronischer Sicherungen besteht dar- in, dass sie nicht aufgefrischt bzw. nachprogrammiert werden müssen. Ist eine Sicherung einmal korrekt durchgebrannt wor- den, also in einen defekten Zustand versetzt worden, so wird sie dort unabhängig davon bleiben, was mit der integrierten Schaltung geschieht.

An dieser Stelle sei darauf hingewiesen, dass Chipkarten sehr robust sein müssen, da sie von Trägern der Chipkarten oftmals nicht pfleglich behandelt werden, während jedoch gleichzeitig der unbedingte Bedarf besteht, dass sie einwandfrei funktio- nieren, was insbesondere für geheime Schlüssel entscheidend ist, die, wenn sie nicht korrekt ausgelesen werden, zu einem Gesamtabsturz führen, also zu einem Totalausfall der Karte.

Dies ist insbesondere dann, wenn sich ein Benutzer auf seine Bankkarte bzw. sein Mobiltelefon verlassen möchte, für den Benutzer besonders ärgerlich.

Ein weiterer Vorteil der vorliegenden Erfindung besteht dar- in, dass elektronische Sicherungen sehr günstig hergestellt werden können, da hierzu keine besonders hochwertigen Tran- sistoren benötigt werden. Elektronische Sicherungen, die auf defekten bzw. nicht-defekten Transistoren basieren, müssen lediglich so qualitativ gute Transistoren haben, dass ein de- fekter Zustand vom nicht-defekten Zustand, also vom integren Zustand, eindeutig unterschieden werden kann. Ferner werden zum Herstellen einfacher elektronischer Sicherungen typi- scherweise wesentlich weniger Herstellungsschritte benötigt als zum Herstellen eines nicht-flüchtigen Speichers.

Ein weiterer Vorteil der vorliegenden Erfindung besteht dar- in, dass auch die Ausfallrate bei der Herstellung und damit der Preis der Chips insgesamt reduziert werden kann, da die Menge an nicht-flüchtigem Speicher im Vergleich zu Karten, bei denen auch die geheimen Informationen im nicht-flüchtigen Speicher gespeichert werden, reduziert werden kann. Damit sinkt automatisch auch die Wahrscheinlichkeit, dass die in-

tegrierte Schaltung aufgrund eines Ausfalls von Transistoren aus dem nicht-flüchtigen Speicherbereich von vorneherein aus- sortiert werden muss, also einen Ausschuß darstellt.

Bei einem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung werden die Geheimdaten auf redundante Art und Weise in den elektronischen Sicherungen abgespeichert. Dies bedeu- tet, dass ein Fehlerkorrekturcode verwendet wird, der die Wiedergewinnung der ursprünglich gespeicherten Informationen ermöglicht, obgleich z. B. eine bestimmte Anzahl von Bits der in die elektronischen Sicherungen eingebrannten Bits doch noch kippen. Ein solches Umkippen von Bits kann durch ein so- genanntes"Ausheilen"von durchgebrannten Transistoren pas- sieren. Dies bedeutet, dass Transistoren zwar beim Brennen beschädigt worden sind, jedoch nicht so stark, dass sie völ- lig defekt sind, so dass bestimmte Bits der Geheimdaten in die andere Position umschalten können. Um diesem Problem ent- gegenwirken zu können, wird bei dem bevorzugten Ausführungs- beispiel der vorliegenden Erfindung eine Speicherung der ge- heimen Schlüssel, also der Geheimdaten, in redundanter Form durchgeführt, um beim Auslesen der Geheimdaten und bei Auf- treten eines Fehlers eine Fehlerkorrektur durchführen zu kön- nen.

Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend bezugnehmend auf die beiliegenden Zeich- nungen detailliert erläutert.

Fig. 1 zeigt einen Ausschnitt einer Chipkarte gemäß der vorliegenden Erfindung ; und Fig. 2 ein Flußdiagramm zum Auslesen der Geheimdaten aus dem Array von elektronischen Sicherungen gemäß ei- nem bevorzugten Ausführungsbeispiel der vorliegen- den Erfindung mit Fehlerkorrektur.

Fig. 1 zeigt eine Chipkarte 10 mit einer Prozessoreinrich- tung, die eine Recheneinrichtung 12 zum Verarbeiten von Nutz- daten unter Berücksichtigung von durch binäre Informations- einheiten darstellbaren Geheimdaten umfasst. Die Rechenein- richtung 12 ist mit einer Einrichtung 14 zum Auslesen eines Arrays 16 von elektronischen Sicherungen gekoppelt, um die in den elektronischen Sicherungen durch binäre Informationsein- heiten dargestellten Geheimdaten zu ermitteln. Das Array 16 von elektronischen Sicherungen dient zum Speichern der durch die binären Informationseinheiten darstellbaren Geheimdaten.

Das Array von elektronischen Sicherungen umfasst einzelne Si- cherungen oder Fuses 18,20, 22,24, 26 in beliebiger Anzahl.

Eine Sicherung, wie beispielsweise die Sicherung 18, ist aus- gebildet, um in ihrem integeren Zustand einen ersten Binär- wert für eine binäre Informationseinheit darzustellen. Eine andere Sicherung, wie beispielsweise die Sicherung 20, ist ausgebildet, um in einem nicht-integeren Zustand, also einem defekten Zustand, wie es in Fig. 1 durch das"x"gekennzeich- net ist, einen zweiten Binärwert für eine binäre Informati- onseinheit darzustellen, wobei sich der zweite Binärwert von dem ersten Binärwert unterscheidet. So ist es beliebig, ob eine integere Sicherung eine binäre Null oder eine binäre Eins speichert. Ferner ist es beliebig, ob eine nicht- integere Sicherung eine binäre Null oder eine binäre Eins darstellt.

Bei einem bevorzugten Ausführungsbeispiel werden die elektro- nischen Sicherungen Transistor-basiert hergestellt. So könnte eine Sicherung beispielsweise in Form eines selbst-sperrenden Transistors implementiert sein, wobei bei einer Spannung von Null am Gate des selbst-sperrenden Transistors kein Strom ü- ber einen Transistor fließt, also eine an Source und Drain angelegte Spannung über den Transistor abfällt. Eine hierzu entsprechende defekte Sicherung könnte dadurch erzeugt wer- den, dass an das Gate des Transistors beispielsweise eine sehr hohe Spannung angelegt wird, die so hoch ist, dass das Gateoxid durchbrennt. In diesem Fall würde der selbstsperren-

de Transistor leitend werden, was dazu führt,-dass eine zwi- schen Source und Drain des Transistors angelegte Spannung nicht abfällt bzw. ein Strom fließt. Analog hierzu könnte bei einem selbstsperrenden Transistor auch eine Spannung zwischen Gate und Source angelegt werden, die unterhalb der Einschalt- spannung ist. Im Falle des intakten Transistors würde diese Spannung nicht abfallen, was einem ersten binären Wert ent- sprechen würde. Im Falle des Transistors, bei dem das Gate durchgebrannt worden ist, würde die Spannung abfallen, was einem zweiten binären Zustand entsprechen würde.

Es sei darauf hingewiesen, dass die elektronischen Sicherun- gen auf beliebige Art und Weise implementiert werden können, wie es in der Technik bekannt ist.

Es wird aus Sicherheitsgründen bevorzugt, die elektronischen Sicherungen nicht in einem regelmäßigen Array anzuordnen, sondern in einem gewissermaßen Zufallsarray, derart, dass die elektronischen Sicherungen auf beliebige Art und Weise über den Chip verteilt sind, so dass ein Angriff auf die in den elektronischen Sicherungen gespeicherten sensitiven Geheimda- ten schwerer wird im Vergleich zu dem Fall, bei dem die Ge- heimdaten in einem regelmäßigen Speicherarray angeordnet sind, beispielsweise in einem NVM, der leicht für einen An- greifer identifizierbar ist.

Erfindungsgemäß wird somit die Verwendung von in die Chipkar- te eingebetteten nicht-flüchtigen Speichern (NVM) zum Spei- chern der Geheimdaten vermieden. Während im Stand der Technik solche eingebetteten NVMs dazu verwendet wurden, geheime Schlüssel, die für die Vorrichtung eindeutig waren, zu spei- chern, werden solche Informationen über bestimmte geheime Schlüssel, also Geheimdaten, von elektronischen Sicherungen gespeichert, die nach der Herstellung des Chips individuell eingestellt, d. h."gebrannt"werden können

Solche elektronischen Sicherungen können jedoch Probleme mit sich bringen. Insbesondere problematisch ist bei bestimmten elektronischen Sicherungen die Qualität während des Brennpro- zesses. Ferner hat sich herausgestellt, dass gebrannte Tran- sistoren sich selbst ausheilen, d. h. dass bestimmte Bits der durch binäre Informationseinheiten darstellbaren Geheimdaten nach gewisser Zeit wieder in die andere Position umgekippt sind. Nachdem solche Probleme dazu führen, dass ein System, das auf den geheimen Schlüsseln basiert, vollständig ab- stürzt, da kein Zugriff mehr auf die integeren Schlüssel mög- lich ist, wird bei einem Ausführungsbeispiel der vorliegenden Erfindung eine redundante Speicherung der Geheimdaten durch- geführt. Die Geheimdaten werden redundant durch binäre Infor- mationseinheiten dargestellt, die auf redundante Art und Wei- se in den elektronischen Sicherungen abgespeichert werden.

Zum Erzeugen der binären Informationseinheiten, die die Ge- heimdaten darstellen, werden Fehlerkorrekturverfahren, wie beispielsweise FEC-Verfahren verwendet, um redundant codierte binäre Informationseinheiten zu erhalten, die die Geheimdaten darstellen. Diese redundant vorliegenden binären Informati- onseinheiten werden dann in die elektronischen Sicherungen eingespeichert.

Vorzugsweise wird eine bestimmte Art von Fehlerkorrekturcodes verwendet, nämlich von Fehlerkorrekturcodes, die bei der re- dundanten Darstellung der Geheimdaten folgende Punkte berück- sichtigen. So umfassen die binären Informationseinheiten, die die Geheimdaten auf redundante Art und Weise darstellen, zu- nächst einen Bereich, in dem die Geheimdaten im Klartext oder nur sehr einfach-codiert enthalten sind. Diesem ersten Be- reich sind Überprüfungsdaten zugeordnet, wie beispielsweise eine Überprüfungssumme (z. B. ein CRC), ein Fingerabdruck, ein einfacher Hash-Wert oder ein einfacher MAC (MAC = Message Au- thentication Code).

Der MAC oder die CAC bzw. der Fingerabdruck oder eine andere Art und Weise im Hinblick auf die Darstellung der Überprü-

fungsdaten dient dazu, dass die Einrichtung zum Auslesen 14 von Fig. 1 zunächst die einfach-codierten oder überhaupt nicht codierten Geheimdaten aus dem ersten Bereich der elekt- ronischen Sicherungen ausliest. Darüber hinaus liest die Ein- richtung zum Auslesen die Überprüfungsdaten, wie es im Hin- blick auf Fig. 2 in einem Schritt 22 dargestellt ist. Das Auslesen der uncodierten bzw. einfach-codierten Geheimdaten ist in Fig. 2 durch einen Schritt 20 dargestellt. Die Ein- richtung 14 zum Auslesen ist dann ausgebildet, um anhand der Überprüfungsdaten festzustellen, ob die ausgelesenen unco- dierten bzw. ausgelesenen einfach-codierten Geheimdaten, die am Ende des Schritts 20 vorliegen, unversehrt sind oder nicht. Wird festgestellt, dass sie unversehrt sind (die Fest- stellung findet in einem Entscheidungsblock 24 statt), wird die Frage im Entscheidungsblock 24 also mit"ja"beantwortet, so liegen die Geheimdaten bereits vor, was bedeutet, dass die elektronischen Sicherungen, die im Schritt 20 ausgelesen wor- den sind, nicht defekt waren. Wird dagegen anhand der Über- prüfungsdaten festgestellt, dass die ausgelesenen uncodierten oder ausgelesenen einfach-codierten Geheimdaten, die im Schritt 20 erhalten wurden, fehlerhaft waren, so werden ver- gleichsweise kompliziert codierte Geheimdaten, die in den re- dundanten binären Informationseinheiten enthalten sind und in einem weiteren Bereich von elektronischen Sicherungen abge- speichert sind, in einem Schritt 26 ausgelesen und einem im Hinblick auf die Effizienz und Kompliziertheit beliebig wähl- baren Fehlerkorrekturverfahren unterzogen (Schritt 28 in Fig.

2). Nach Durchführung einer im Hinblick auf die Kompliziert- heit beliebig einstellbaren Fehlerkorrektur liegen dann, am Ende des Schritts 28 in Fig. 2, fehlerkorrigierte Geheimdaten vor.

Das in Fig. 2 dargestellte Prozedere ist insbesondere dahin- gehend vorteilhaft, wenn davon ausgegangen wird, dass Fehler in den Geheimdaten relativ selten auftreten. Dann kann ein Auslesen der Geheimdaten schnell stattfinden, da nicht immer ein Fehlerkorrekturcode ausgeführt werden muss, und zwar im

Vergleich zu dem Fall, bei dem die Abspeicherung der Geheim- daten nur unter Verwendung eines komplizierten Codes stattge- funden hat. Die im Hinblick auf die Kompliziertheit des Feh- lerkorrekturcodes zweistufige Einbringung der binären Infor- mationseinheiten, die die Geheimdaten redundant darstellen, in die Mehrzahl von elektronischen Sicherungen führt daher zu einem Fehlerkorrekturaufwand nur dann, wenn tatsächlich ein Fehler aufgetreten ist.

Andererseits liefert die Kombination der uncodierten bzw. einfach-codierten Geheimdaten mit Überprüfungsdaten in Form einer CRC, eines MAC, eines Fingerabdrucks, etc. eine Sicher- heit dahingehend, dass eine Manipulation in den einfach- codierten Geheimdaten oder uncodierten Geheimdaten ohne wei- teres erkannt werden kann. Eine Manipulation der elektroni- schen Sicherungen, die möglicherweise von einem Angreifer be- werkstelligt worden ist, der eine elektronische Sicherung entdeckt hat, die nicht bereits gebrannt war, wird dann durch das erfindungsgemäße Konzept wie ein Fehler behandelt und korrigiert, dahingehend, dass eine Manipulation eines Angrei- fers ins Leere läuft.

Führt ein Angreifer zu viele Fehler ein, d. h. manipuliert er die Geheimdaten zu stark, so dass der Fehlerkorrekturcode versagt, so wird der Angreifer zwar die Geheimdaten manipu- lieren können, es wird aber nicht gelingen, mit den manipu- lierten Geheimdaten, beispielsweise einer manipulierten PIN oder eines manipulierten Geldbetrags bei einer Geldkarte, 0- perationen auszuführen, da der Schritt 28 einen Fehler ausge- ben wird, so dass die gesamte Prozessoreinrichtung unbrauch- bar werden wird. Dies ist insbesondere der Fall, da dann die Recheneinrichtung 12, da sie keinen korrekten Schlüssel vorliegen hat, keine Bearbeitung von Nutzdaten durchführen wird, da eine Bearbeitung von Nutzdaten erfindungsgemäß nur dann stattfindet, wenn Geheimdaten als fehlerfrei erkannt bzw. fehlerkorrigiert worden sind. Selbstverständlich ist die Recheneinrichtung 12 ausgebildet, um nur dann, wenn der Schritt 28 von Fig. 2 ein korrektes Ergebnis liefert,

28 von Fig. 2 ein korrektes Ergebnis liefert, überhaupt Nutz- daten zu verarbeiten. Liefert der Schritt 28 von Fig. 2 ein Fehlersignal, so wird die Recheneinrichtung 12 von Fig. 1 insgesamt blockiert. So wird der Angreifer zwar eine Manipu- lation der elektronischen Sicherungen erreicht haben. Diese Manipulation wird ihm jedoch nichts bringen, da die Chipkar- te, in der die erfindungsgemäße Prozessoreinrichtung einge- baut ist, ihren Dienst insgesamt verweigert.

Bei dem bevorzugten Ausführungsbeispiel der Erfindung werden die geheimen Schlüssel daher redundant in den elektronischen Sicherungen gespeichert. Es wird also ein Fehlerkorrekturcode verwendet, der eine Wiedergewinnung der ursprünglich gespei- cherten Informationen ermöglicht, obgleich eine bestimmte An- zahl von Bits entweder durch Angreifermanipulation oder durch Fehler beim Brennen bzw. nach dem Brennen verändert worden ist.

Erfindungsgemäß werden die Geheimdaten daher nicht aus- schließlich im Klartext abgespeichert, sondern in codierter Form, wobei die Codierung durch ein Fehlerkorrekturverfahren stattgefunden hat.

Es sei davon ausgegangen, dass man den Schlüssel K speichern möchte. Statt des ausschließlichen Brennens des Schlüssels direkt in die elektronischen Sicherungen werden die codierten Informationen c = C (K) in die Sicherungen gebrannt. Hier be- zeichnet C einen bestimmten Fehlerkorrekturcode, der eine ef- fiziente Fehlerkorrekturwiederherstellung der ursprünglichen Nachricht K erlaubt, und zwar aus einem veränderten Wert c' der ungleich c ist.

Bezugszeichenliste 10 Chipkarte 12 Recheneinrichtung 14 Einrichtung zum Auslesen 16 Array von elektronischen Sicherungen 18,21, 23, 25, 27 Elektronische Sicherungen 20 Auslesen der uncodierten Geheimdaten 22 Auslesen der Überprüfungsdaten 24 Integeriertheitsüberprüfung 26 Auslesen der kompliziert codierten Geheimdaten 28 Durchführen der Fehlerkorrektur