-
Querverweis zu verwandten Patentanmeldungen
-
Diese Anmeldung ist verwandt mit und beansprucht den Prioritätsnutzen der gleichzeitig anhängigen und gemeinsam eingereichten vorläufigen US-Patentanmeldung Nr. 62/362,804 mit dem Titel ”Systems and Methods for a Secure Payment Terminal without Batteries” („Systeme und Verfahren für ein sicheres Zahlungsterminal ohne Batterien”), die als Erfinder Michael Muchsel und Gregory Guez nennt und eingereicht wurde am 15. Juli 2016; diese Anmeldung ist hiermit in ihrer Gesamtheit durch Bezugnahme aufgenommen.
-
A. Technisches Gebiet
-
Die vorliegende Offenbarung betrifft sichere elektronische Systeme und genauer Systeme und Verfahren zum Schützen sensibler Daten in finanziellen Zahlungsterminals, um unerlaubten Zugriff zu verhindern.
-
B. Beschreibung des Stands der Technik
-
Finanzielle Zahlungsterminalvorrichtungen verarbeiten jeden Tag Millionen von Transaktionen. Aufgrund der mit der Offenlegung von Zahlungsinformationen (z. B. Kreditkarteninformationen) verknüpften Gefahren und Kosten müssen Zahlungsterminals rigorose Sicherheitsstandards erfüllen, die durch Banken, Ausgeber und Kreditkartenunternehmen akzeptiert werden müssen, die fordern, dass kritische Informationen jederzeit verschlüsselt sein müssen, und dass geheime Schlüssel zerstört werden, falls das Terminal durch potentielle Eindringlinge angegriffen wird.
-
Herkömmlich bedeutet dies, dass aktive Bauteile im Terminal ständig und aktiv auf Zeichen von Eindringen achten müssen, und dass geheime Schlüssel und andere sensible Informationen, die gewöhnlich in Speichervorrichtungen in einem Computersystem gespeichert sind, beim Erkennen von Zeichen eines möglichen Angriffs aus dem flüchtigen Speicher gelöscht werden. Ein Löschen des Dechiffrierungsschlüssels und/oder des Chiffrierungsspeichers macht den Angriff aussichtslos, dadurch wird es potenziellen Eindringlingen unmöglich gemacht, die verschlüsselten Informationen zu entziffern, und somit das Erbeuten geheimer Informationen durch Widersacher verhindert.
-
Da flüchtiger Speicher verwendet werden muss, ist typischerweise eine Stützbatterie notwendig, um ständige Stromversorgung vorzusehen, um den Dechiffrierungsschlüssel im Speicher zu halten, beispielsweise unter Umständen, wenn die Systemstromversorgung vorübergehend oder dauernd nicht verfügbar wird, wie etwa während des Transports oder bei tragbaren Zahlungsterminals. Außerdem sind Sicherheitsüberwachungssysteme, die elektronische Schutznetze und andere aktive Teile enthalten, elektrisch betrieben und ausgestaltet, eine physische Manipulation in Situationen zu erkennen, wenn das finanzielle Terminal ausgeschaltet ist oder einen unerwarteten Stromversorgungsausfall erleidet. Mit anderen Worten, ein ständig aktives Überwachungssystem behält die Kontrolle über die physische Integrität der Vorrichtung.
-
Außerdem weisen Zahlungsterminals und andere Vorrichtungen, die sichere Mikrocontroller enthalten, die batteriegestützte Sicherheitsüberwachungssysteme verwenden, eine durchschnittliche Batterielebensdauer von ungefähr sieben Jahren auf. Dies ist in den meisten Fällen angemessen, da Hardware-Sicherheitsmodule im Allgemeinen innerhalb dieses Zeitraums veraltet sind und ersetzt werden, sodass die Batterielebensdauer die tatsächliche Betriebszeit der Vorrichtung im Einsatz übersteigt.
-
Jedoch wird von Vorrichtungen mit ziemlich langen Lebensdauern, wie etwa intelligenten Stromzählern, erwartet, dass sie im Einsatz 30 Jahre lang oder länger arbeiten, und das praktisch mit geringer oder gar keiner Wartung. Da sogar die fortschrittlichsten Batterien eine Lebensdauer von weniger als 10 Jahren aufweisen, macht dieser Mangel einen Schutz dieser Vorrichtungen unwirksam, sobald ihre Batterien einen Austausch erfordern und die Stromversorgung für eine gewisse Zeit unterbrochen werden muss, um die Wartungsarbeit vorzunehmen. Ähnlich ist für industrielle Vorrichtungen, die sich an fernen Stellen befinden, wie etwa Öl- oder Gaspipelines, die ausgestaltet sind, als wartungsfreie Vorrichtungen zu arbeiten, ein Ersetzen von Batterien im Feld keine gangbare Lösung aufgrund der hohen Wartungs- und Supportkosten, und noch wichtiger, aufgrund der mit dem Ausschalten und Öffnen einer sicheren Vorrichtung, die ungeöffnet bleiben sollte, verknüpften Sicherheitsprobleme.
-
Aktuell existieren keine praktischen Lösungen, um einen Schutz rund um die Uhr für hochsichere und langlebige Vorrichtungen sicherzustellen. Sobald die Vorrichtung ausgeschaltet ist, ist sie ungeschützt, und es gibt überhaupt keine Sicherheit. Weiter können Energiequellen, wie etwa Stützbatterien, bedeutende Kosten zum System beitragen, aus verschiedenen Gründen, einschließlich Bauteilkosten, Wartungskosten aufgrund begrenzter Batterielebensdauer, Empfindlichkeit gegen Umweltfaktoren und die Kosten zum Erlangen geeigneter Zertifizierung, (z. B. zur Verwendung in Flugzeugen).
-
Einige bestehende Ansätze verringern die Leistungsaufnahme um eine Größenordnung oder mehr, z. B. durch ein Umgestalten von Eindringungssensoren und Speicherbauteilen. Fortschrittlichere Ansätze verwenden aktive Energie-Harvesting-Verfahren, die die Eindringungssensoren und den Schlüsselspeicher versorgen. Jedoch sind sogar die höchst ausgeklügelten nicht immer praktisch, da sie sich auf das Vorhandensein von Energiequellen stützen, wie etwa Temperaturgradienten, um eine ununterbrochene und ständige Versorgung sicherzustellen, was möglicherweise nicht immer gegeben ist.
-
Was benötigt wird, sind Systeme und Verfahren, die ein hohes Niveau an ununterbrochener Sicherheit schaffen, das einen unerlaubten Zugriff auf sensible Daten verhindert, ohne die mit üblichen batteriegestützten Sicherheitssystemen verknüpften Kosten.
-
Kurze Beschreibung der Zeichnungen
-
Es ist auf Ausführungsformen der Erfindung Bezug genommen, von denen Beispiele in den beigefügten Figuren dargestellt sein können. Es ist beabsichtigt, dass diese Figuren nur veranschaulichend, nicht einschränkend sind. Obwohl die Erfindung allgemein im Kontext dieser Ausführungsformen beschrieben ist, versteht sich, dass nicht beabsichtigt ist, den Schutzbereich der Erfindung auf diese speziellen Ausführungsformen zu beschränken.
-
1 ist eine allgemeine Darstellung eines herkömmlichen Ablaufs zum Erzeugen und Verwenden eines geheimen Schlüssels in einem batteriegestützten finanziellen Zahlungsterminal.
-
2 ist ein Flussdiagramm eines erläuternden Ablaufs zum Erzeugen und Verwenden eines geheimen Schlüssels in einem sicheren System, das keine Batteriestützung erfordert, gemäß verschiedenen Ausführungsformen der vorliegenden Offenbarung.
-
3 stellt ein Blockschaltbild eines PUF-basierten Sicherheitssystems dar, das keine Batteriestützung erfordert, gemäß Ausführungsformen der vorliegenden Offenbarung.
-
Genaue Beschreibung der bevorzugten Ausführungsformen
-
In der folgenden Beschreibung sind zu Zwecken der Erläuterung besondere Einzelheiten dargelegt, um für ein Verständnis der Erfindung zu sorgen. Es wird jedoch einem Fachmann offensichtlich sein, dass die Erfindung ohne diese Einzelheiten ausgeführt sein kann. Weiter wird ein Fachmann erkennen, dass unten beschriebene Ausführungsformen der vorliegenden Erfindung in einer Vielfalt von Weisen durchgeführt werden können, wie etwa als ein Prozess, eine Einrichtung, ein System, eine Vorrichtung oder ein Verfahren auf einem materiellen computerlesbaren Medium.
-
In Schaltbildern gezeigte Bauteile oder Module sind erläuternd für beispielhafte Ausführungsformen der Erfindung und dazu gedacht, Unklarheiten der Erfindung zu vermeiden. Es versteht sich auch, dass durchgehend in dieser Beschreibung Bestandteile als getrennte Funktionseinheiten beschreiben sein können, die Untereinheiten umfassen können, aber Fachleute werden erkennen, dass verschiedene Bestandteile oder Teile davon in getrennte Bestandteile aufgeteilt werden können oder miteinander integriert werden können, einschließlich einer Integration in einem einzigen System oder Bauteil. Es ist anzumerken, dass hier beschriebene Funktionen oder Arbeitsgänge als Bauteile ausgeführt sein können. Bestandteile können in Software, Hardware oder einer Kombination davon ausgeführt sein.
-
Weiter sollen Verbindungen zwischen Bestandteilen oder Systemen in den Figuren nicht auf direkte Verbindungen beschränkt sein. Vielmehr können Daten zwischen diesen Bestandteilen durch Zwischen-Bestandteile verändert, umformatiert oder anderweitig geändert werden. Auch können zusätzliche oder weniger Verbindungen verwendet werden. Es ist auch anzumerken, dass die Begriffe „gekoppelt”, „verbunden” oder „kommunikativ gekoppelt” so zu verstehen sind, dass sie direkte Verbindungen, indirekte Verbindungen durch eine oder mehrere Zwischenvorrichtungen und drahtlose Verbindungen einschließen.
-
Bezugnahme in der Beschreibung auf „eine Ausführungsform”, „bevorzugte Ausführungsform” oder „Ausführungsformen” bedeutet, dass ein in Verbindung mit der Ausführungsform beschriebenes bestimmtes Merkmal, ein Aufbau, eine Eigenschaft oder Funktion in mindestens einer Ausführungsform der Erfindung enthalten ist und in mehr als einer Ausführungsform enthalten sein kann. Auch muss das Erscheinen der oben genannten Ausdrücke an verschiedenen Stellen in der Beschreibung sich nicht unbedingt immer auf dieselbe Ausführungsform oder dieselben Ausführungsformen beziehen.
-
Die Verwendung bestimmter Begriffe an verschiedenen Stellen in der Beschreibung dient der Darstellung und sollte nicht als einschränkend ausgelegt werden. Eine Dienstleistung, Funktion oder Ressource ist nicht auf eine einzige Dienstleistung, Funktion oder Ressource beschränkt; die Verwendung dieser Begriffe kann sich auf eine Gruppierung verwandter Dienstleistungen, Funktionen oder Ressourcen beziehen, die verteilt oder vereinigt sein können. Weiter kann die Verwendung von Speicher, Datenbank, Informationsbank, Datenspeicher, Tabellen, Hardware und dergleichen hier erfolgt sein, um sich auf einen Systembestandteil oder -bestandteile zu beziehen, in die Informationen eingegeben oder anderweitig darin aufgezeichnet werden können.
-
In diesem Dokument sind die Begriffe „Schlüssel”, „geheimer Schlüssel” und „Geheimnis” untereinander austauschbar verwendet, wie auch die Begriffe „Netz”, „Netzhülle” und „Netzschaltkreis”. Der Begriff „sichere Vorrichtung” schließt ein: sichere Mikrocontroller, sichere Speichervorrichtungen und andere sichere Elemente, die von einem Fachmann anerkannt sind.
-
Es ist anzumerken, dass: (1) bestimmte Schritte wahlweise durchgeführt werden können; (2) Schritte nicht auf die hier dargelegte bestimmte Reihenfolge beschränkt sein müssen; (3) bestimmte Schritte in anderen Reihenfolgen durchgeführt werden können; und (4) bestimmte Schritte gleichzeitig erfolgen können.
-
Weiter sollte, während hier beschriebene Ausführungsformen im Kontext finanzieller Zahlungsterminals beschrieben sind, ein Fachmann erkennen, dass die Lehren der vorliegenden Offenbarung nicht auf Zahlungsterminals beschränkt sind und gleichermaßen angewendet werden können, um andere Formen sicherer Informationen zu schützen, z. B. auf den Gebieten des Militärs, der Zugangskontrolle, des IP-Schutzes, des Gesundheitswesens und der Medizin, die die Prinzipien des Vorliegenden nutzen können und sicher ausgeführt werden können, ohne auf Stützbatterien zurückzugreifen.
-
1 ist eine allgemeine Darstellung eines herkömmlichen Ablaufs zum Erzeugen und Verwenden eines geheimen Schlüssels in einem batteriegestützten finanziellen Zahlungsterminal. Der Ablauf 100 zum Erzeugen und Verwenden eines geheimen Schlüssels in einem batteriegestützten Zahlungsterminal beginnt im allgemein in Schritt 102, sobald eine Batterie am Zahlungsterminal angebracht wird, um den Lebenszyklus zu beginnen. Das Ereignis des erstmaligen Unter-Spannung-Setzens des Zahlungsterminals ist als sein „erster Geburtstag” bekannt.
-
In Schritt 104 werden Sensoren, wie etwa Bewegungssensoren, die in das Zahlungsterminal eingebaut sind, aktiviert.
-
In Schritt 106 wird ein geheimer Schlüssel erzeugt, und das System tritt in den Hintergrundmodus 108 ein, in dem eine Stützbatterie die Sensoren des Systems 100 aktiviert, ohne gleichzeitig Systemkomponenten zu aktivieren, die zum Verarbeiten von Finanztransaktionen vorgesehen sind.
-
Im Hintergrundmodus 108 werden die Sensoren typischerweise mit einer relativ reduzierten Frequenz abgefragt, hauptsächlich, um Batterieleistung zu sparen.
-
Sobald in Schritt 110 die Hauptstromversorgung an das Zahlungsterminal angelegt wird, tritt das System in den aktiven Modus 112 ein, und sowohl Sensoren als auch Systemkomponenten werden voll funktionsfähig.
-
In Ausführungsformen kehrt das System als Reaktion auf einen Verlust der Hauptstromversorgung in den Hintergrundmodus 108 zurück, aber führt keine leistungshungrigen Vorgänge durch, bis in Schritt 110 die Hauptstromversorgung wiederhergestellt wird.
-
Wenn, während sich das System im aktiven Modus 112 befindet, eine Sicherheitsverletzung erkannt wird, dann werden in Schritt 114 der Chiffrierschlüssel und/oder andere Geheimnisse dauerhaft aus der Speichervorrichtung im Terminal gelöscht, oder die Speichervorrichtung wird irreversibel zerstört, und das System wird in Schritt 120 ausgeschaltet. Ähnlich zerstört der Ablauf, falls, während sich das System im Hintergrundmodus 108 befindet, entweder eine Sicherheitsverletzung oder ein Verlust der Batterieleistung erkannt wird, in Schritt 114 den Schlüssel und/oder die anderen Geheimnisse und schaltet in Schritt 120 das Terminal aus.
-
Kurz, das System 100 läuft zwischen Hintergrundmodus 108 und aktivem Modus 112 um, in dem das Terminal aktiv Aufgaben durchführt, wenn nicht eine Sicherheitsverletzung oder ein Verlust der Batterieleistung erkannt wird und sich das Terminal ausschaltet.
-
In der Praxis ist dieser Ablauf in einem Finanzterminal umgesetzt, das beispielsweise drei Stromversorgungsquellen benutzt: 1) eine USB-Stromquelle, 2) eine relativ große Lithiumbatterie und 3) eine Knopfzelle. Das Terminal arbeitet im Allgemeinen mit USB-Versorgung als Hauptstromquelle. Sobald die USB-Versorgung vorübergehend oder dauerhaft nicht verfügbar wird, schaltet das Terminal zur Lithiumbatterie, oder, als letzter Ausweg, zur Knopfzelle, um die Schutzsensoren weiter zu versorgen, um die Geheimnisse im flüchtigen Speicher am Leben zu erhalten, bis die Spannung in der Knopfzelle auf einen Pegel fällt, der die Schutzsensoren nicht mehr versorgen kann, oder bis das System von Hand wieder hergestellt wird.
-
Das System 100 hängt von der Stützbatterie ab, um die aktiven Überwachungs- und Schutzschaltungen zu versorgen. Weiter hängt das System 100 von der Verwendung eines flüchtigen Speichers ab, sodass Geheimnisse im Falle eines Eindringversuchs schnell gelöscht werden können. Ohne die Stützbatterie wären die Geheimnisse dem raffinierten Angreifer ausgesetzt, der auf das System 100 zugreifen und Schaltungsänderungen durchführen kann, ohne entdeckt zu werden, sodass nach dem Wiedereinschalten der Vorrichtung keine Spur vorhanden ist, die darauf hinweist, dass in die Vorrichtung eingebrochen wurde und diese manipuliert wurde.
-
Daher wäre es wünschenswert, Systeme und Verfahren zu haben, die ein hohes Sicherheitsniveau sogar in Szenarien eines Stromversorgungsausfalls vorsehen, ohne dass man sich auf ein übliches batteriegestütztes Sicherheitssystem verlassen muss.
-
2 ist ein Flussdiagramm eines erläuternden Ablaufs zum Erzeugen und Verwenden eines geheimen Schlüssels in einem sicheren System, das keine Batteriestützung erfordert, gemäß verschiedenen Ausführungsformen der vorliegenden Offenbarung. Der Ablauf 200 zum Erzeugen und Verwenden eines geheimen Schlüssels beginnt in Schritt 202, wenn die Hauptstromversorgung an ein System angelegt wird, wie etwa ein finanzielles Zahlungsterminal.
-
In Schritt 204 werden Schutzsensoren, die das System im Normalbetrieb ständig überwachen, mit Spannung versorgt, um einen physischen Zugriff auf einen geheimen Schlüssel, z. B. einen Chiffrierschlüssel, zu verhindern, der in Schritt 206 z. B. unter Verwendung einer PUF-Schaltung oder einer beliebigen anderen Schaltung erzeugt wird, die gemäß ihrer Auslegung nicht entdeckbare, einzigartige und zufällige Werte vorsieht, die als eine Verschlüsselungsquelle verwendet werden können.
-
Beispiele von Systemen und Verfahren für geeignete PUF-Schaltungen sind zu finden in der gleichzeitig anhängigen und gemeinsam gehaltenen US-Patentanmeldung Nr. 62/240,991, eingereicht am 13. Oktober 2015, mit dem Titel „Systems and methods for stable physically unclonable functions” (Systeme und Verfahren für stabile, physisch unklonierbare Funktionen), bei der Sung Ung Kwak als Erfinder angeführt ist (Anwalts-Az. Nr. 20057-1981P) und Patentanmeldung Nr. 14/480,129, eingereicht am 8 September 2014, mit dem Titel „Systems and methods for stable physically unclonable functions”, bei der Pirooz Parvarandeh und Sung Ung Kwak als Erfinder angeführt sind (Anwalts-Az. Nr. 20057-1842); diese Patentschriften sind hier in ihrer Gesamtheit und für alle Zwecke durch Bezugnahme einbezogen.
-
In Schritt 208 tritt das System in einen Zustand ein, in dem sowohl Sensoren als auch Systembestandteile aktiviert sind. Das System führt normale Aufgaben der Verschlüsselung, Authentifizierung und dergleichen aus. In Ausführungsformen wird ein PUF-generierter geheimer Schlüssel oder eine Ableitung davon beispielsweise verwendet, um Informationen für einen Einrichtungsvorgang zu erlangen oder verschlüsselte Informationen zu entschlüsseln, die in einem nichtflüchtigen Speicher (z. B. einem Flash-Speicher) gespeichert sind. In diesem aktiven Modus 208 kann ein Schirm (z. B. ein aktives Netz) verwendet werden, um Daten zu schützen, die im unverschlüsselten Format übertragen werden oder zur Verarbeitung verfügbar sind.
-
In Ausführungsformen wird ein zweiter Schlüssel von einem PUF-generierten Schlüssel abgeleitet, der als Master-Schlüssel dient, der verwendet werden kann, um den zweiten Schlüssel zu verschlüsseln, der dann in einem nichtflüchtigen Speicher gespeichert wird und dadurch hilft, die Verwendung und Gefährdung des Master-Schlüssels selbst zu minimieren.
-
Sobald eine Sicherheitsverletzung, ein Verlust der Stromversorgung oder das Eintreten eines vorgegebenen Ereignisses erkannt wird, kann das System den Schlüssel und/oder die Geheimnisse löschen, oder das gesamte System kann ausgeschaltet werden. In Ausführungsformen wird die PUF-Schaltung physisch zerstört (z. B. durch Anwendung von Wärme), beispielsweise, nachdem eine Anzahl von Versuchen erkannt wurde, die Systemsicherheit zu gefährden.
-
In Ausführungsformen ist, sobald das System in Schritt 212 heruntergefahren wurde, die PUF-generierte Zahl nicht mehr verfügbar, und als Ergebnis ist kein Schlüssel vorhanden, der entdeckt, gestohlen und verwendet werden könnte, um auf geschützte Informationen zuzugreifen.
-
Beim Wiederherstellen der Hauptstromversorgung in Schritt 202 kann der Ablauf 200 in Schritt 204 wieder aufgenommen werden, mit einem Versorgen der Sensoren und einem Verwenden der PUF-Schaltung zum erneuten Generieren des geheimen Schlüssels in Schritt 206 zu seinem ursprünglichen Wert.
-
Aspekte der vorliegenden Patenschrift sind auf Informationshandhabungssysteme gerichtet. Zu Zwecken dieser Offenbarung kann ein Informationshandhabungssystem jedes Mittel oder jede Kombination von Mitteln enthalten, die betreibbar sind, jede Form von Information, Erkenntnis oder Daten für geschäftliche, wissenschaftliche, Steuerungs- oder andere Zwecke zu berechnen, bestimmen, klassifizieren, verarbeiten, senden, empfangen, erlangen, hervorzubringen, zu leiten, schalten, speichern, darzustellen, zu kommunizieren, offenbaren, erkennen, aufzuzeichnen, zu reproduzieren, handzuhaben oder zu nutzen. Zum Beispiel kann ein Informationshandhabungssystem ein Personal Computer (z. B. Desktop oder Laptop), Tablet-Computer, mobiles Gerät (z. B. Personal Digital Assistant [PDA] oder Smartphone), Server (z. B. Blade Server oder Rack-Server), eine Netzwerk-Speichervorrichtung oder eine beliebige andere geeignete Vorrichtung sein und kann sich in Größe, Form, Leistungsfähigkeit, Funktionalität und Preis unterscheiden. Das Informationshandhabungssystem kann einen Speicher mit wahlfreiem Zugriff (RAM), eine oder mehrere Verarbeitungsressourcen, wie etwa eine Zentraleinheit (CPU) oder Hardware- oder Software-Steuerlogik, ROM und/oder andere Arten nichtflüchtiger Speicher enthalten. Zusätzliche Bestandteile des Informationshandhabungssystems können umfassen: ein oder mehrere Laufwerke, einen oder mehrere Netzwerkanschlüsse zum Kommunizieren mit externen Vorrichtungen, sowie verschiedene Ein- und Ausgabevorrichtungen (E/A-Vorrichtungen), wie etwa eine Tastatur, eine Maus, einen Berührungsbildschirm und/oder einen Video-Anzeigebildschirm. Das Informationshandhabungssystem kann auch einen oder mehrere Busse enthalten, betreibbar zum Übertragen von Kommunikationen zwischen den verschiedenen Hardwarebestandteilen.
-
3 stellt ein Blockschaltbild eines PUF-basierten Sicherheitssystems 300 dar, das keine Batteriestützung erfordert, gemäß Ausführungsformen der vorliegenden Offenbarung. Das System 300 umfasst ein Verarbeitungsmodul 302, ein Kryptografiemodul 312, einen Systemspeicher 304, Peripherieschnittstellen 308, eine physisch unklonierbare Funktion (PUF) 310 und einen Schirm 320, der ein aktives Netz sein kann, ausgestaltet zum Erkennen von Eindringversuchen in beliebige der Vorrichtungen im System 300, die sensible Daten gefährden können.
-
Es versteht sich, dass die für das System 300 gezeigten Funktionalitäten arbeiten können, verschiedene Ausführungsform beliebiger Informationshandhabungssysteme zu unterstützen, die anders ausgestaltet sein und andere Bestandteile enthalten können als die in 3 gezeigten. In Ausführungsformen ist das System 300 in ein Verkaufsstellenterminal eingebaut, das sensible Daten, wie etwa vertrauliche zahlungsbezogene Bankinformationen und Chiffrierschlüssel erzeugen, speichern, verschlüsseln, authentifizieren und senden kann. Wie in 3 dargestellt, sieht das Verarbeitungsmodul 302 Rechenressourcen vor und kann mit einem beliebigen, aus dem Stand der Technik bekannten sicheren Mikrocontroller ausgeführt sein. Es kann einen Grafikprozessor und/oder und einen Gleitkomma-Coprozessor für mathematische Berechnungen umfassen.
-
Das System 300 enthält eine Schaltung mit physisch unklonierbarer Funktion (PUF) 310, die in das System 300 integriert ist. Im Allgemeinen nutzt eine PUF winzige, aber messbare Fertigungsschwankungen in physischen Halbleiterbauelementen. Diese charakteristischen Schwankungen enthalten Schwankungen der Gateoxid-Dicke, Konzentrationen der Dotierungsmaterialien und Toleranzen der geometrischen Maße, die sich aus weniger als perfekten Halbleiterfertigungsprozessen ergeben, die das Halbleiterbauelement (z. B. ein MOSFET) durchläuft. In verschiedenen Anwendungen werden die Schwankungen verwendet, um Folgen von zufälligen, aber relativ wiederholbaren Daten zu erzeugen, die dann verwendet werden können, um ein Bauelement zu kennzeichnen, oder um andere Authentifizierungsfunktionen durchzuführen. Die Wiederholbarkeit einer zufälligen, Bauelement-eindeutigen Zahl, erzeugt durch bestehende PUFs, beträgt ungefähr 80%, was ausreichend hoch ist für Authentifizierungsanwendungen, da ein solches Genauigkeitsniveau ausreicht, um eine relativ eindeutige Antwort von der PUF-Schaltung zu erzeugen, da es sehr unwahrscheinlich wird, dass eine weitere PUF-Schaltung in der Lage ist, korrekt dieselbe Menge an Bits zu erzeugen, aufgrund der Tatsache, dass eine sehr kleine Änderung am Eingang einer PUF-Schaltung eine sehr große Änderung am Ausgang erzeugt. Zum Beispiel ergibt ein Ändern des einzigen Bits der Schaltung eine Schwankung um ca. 50% im Ausgangssignal, d. h. die PUF wird unzuverlässig.
-
Weiter ändert sich die Antwort der Schaltung bedeutend und unvorhersagbar, wenn sich physikalische Bedingungen (z. B. elektrische Leitungseigenschaften) der PUF-Schaltung auch nur leicht ändern, z. B. nach einem physischen Stoß, oder wenn das System, das die PUF-Schaltung enthält, sondiert oder verändert wird, was typischerweise irreversible Schäden am physischen Aufbau verursacht.
-
Ausführungsformen der vorliegenden Offenbarung verwenden eine PUF-Schaltung 310, die einen zufälligen, Bauelement-eindeutigen, aber hoch wiederholbaren Wert (z. B. mit 1 ppb Fehlerrate) erzeugt, wie beispielsweise unter Verwendung wiederholbarer eng gekoppelter eindeutiger Identifikationselemente, wie sie in der oben genannten US-Patentanmeldung Nr. 62/240,991 offenbart. Anders als bei bestehenden Gestaltungen kann dieser hoch wiederholbare Wert eine Zahl sein, die verwendet werden kann, um zuverlässig und wiederholbar einen kryptografischen Schlüssel zu erzeugen.
-
In Ausführungsformen ist der Schlüssel oder das Geheimnis in einer flüchtigen Speichervorrichtung (in 3 nicht gezeigt) gespeichert, die sich innerhalb oder außerhalb oder außerhalb aller in 3 gezeigter Bestandteile befinden kann. Der flüchtige Speicher hält den Schlüssel, der beim Erkennen eines Stromversorgungsausfalls durch das System 300 automatisch gelöscht wird, da der flüchtige Speicher nicht durch ein Batterie-Stützsystem oder eine andere Quelle alternativer Energie unterstützt werden muss für den Fall, dass die Hauptstromversorgung unterbrochen wird. Als Ergebnis sind, da kein Schlüssel vorhanden ist, anders als bei Gestaltungen nach dem Stand der Technik, kein Schutz und keine Batterie nötig.
-
In Ausführungsformen kann das Kryptografiemodul 312 einen beliebigen starken Kryptografiealgorithmus anwenden, der durch einen Fachmann anerkannt ist, z. B. symmetrische Algorithmen, wie etwa der Advanced Encryption Standard, oder Kryptografie mit öffentlichem Schlüssel, wie etwa RSA oder Elliptische-Kurven-Kryptografie. Es versteht sich, dass das Kryptografiemodul 312 ein Geheimnis zusammen mit anderen Daten oder Software verarbeiten kann, um einen funktionellen Schutz vorzusehen.
-
In Ausführungsformen ist das Kryptografiemodul 312, statt sich auf Software zu verlassen, als ein Hardwaremodul ausgeführt, das kryptografische Operationen ausführt, wie etwa Datenverschlüsselung, Datenentschlüsselung und Integritätsprüfungen. Das Hardwaremodul kann eine erhöhte Reaktion auf Fehlerangriffe und eine verbesserte Leistungsfähigkeit für Datenverschlüsselung oder -entschlüsselung ermöglichen.
-
In Ausführungsformen wird ein PUF-generierter Schlüssel in das Kryptografiemodul 312 geladen und darin gespeichert. Bei einem Erkennen einer Sicherheitsverletzung, z. B. eines Manipulationsversuchs, wird der Schlüssel sofort aus dem flüchtigen Speicher gelöscht. Die vorliegenden Ausführungsformen beseitigen auch vorteilhaft die Notwendigkeit, Schlüssel im nichtflüchtigen Speicher zu speichern, und machen somit das System 300 immun gegen ein Reverse Engineering und andere fortschrittliche Verfahren durch raffinierte Angreifer, die hier nicht weiter beschrieben sind.
-
Das System 300 kann einen Systemspeicher 304 enthalten, der ein Speicher mit wahlfreiem Zugriff (RAM) und ein Nur-Lese-Speicher (ROM) sein kann. Es ist anzumerken, dass ein beliebiger Teil des Systems 300 als eine integrierte Schaltung ausgeführt sein kann. Eine beliebige Anzahl von Steuervorrichtungen und peripheren Vorrichtungen 306 kann vorgesehen sein, wie in 3 gezeigt.
-
Peripherieschnittstellen 308 stellen Schnittstellen zu verschiedenen Eingabevorrichtungen dar, wie etwa eine Tastatur, eine Maus oder einen Stift. Das System 300 kann auch eine Speichersteuerung als Schnittstelle zu einer oder mehreren Speichervorrichtungen enthalten, von denen jede ein Speichermedium enthält, wie etwa ein Magnetband oder eine Magnetplatte, oder ein optisches Medium, das verwendet werden könnte, um Programme mit Anweisungen für Betriebssysteme, Hilfsprogramme und Anwendungen aufzuzeichnen, was Ausführungsformen von Programmen einschließen kann, die verschiedene Aspekte der vorliegenden Erfindung umsetzen. Eine oder mehrere Speichervorrichtung(en) können auch verwendet werden, um verarbeitete Daten oder zu verarbeitende Daten gemäß der Erfindung zu speichern. Das System 300 kann auch eine Anzeigesteuerung enthalten, um eine Schnittstelle zu einer Anzeigevorrichtung vorzusehen, die eine Kathodenstrahlröhre, ein Dünnfilmtransistorbildschirm (TFT-Bildschirm) oder eine andere Art von Anzeige sein kann. Das Rechnersystem 300 kann auch eine Druckersteuerung zur Kommunikation mit einem Drucker enthalten. Eine Kommunikationsteuerung kann die Schnittstelle zu einer oder mehreren Kommunikationsvorrichtungen bilden, was das System 300 befähigt, sich mit entfernten Vorrichtungen über beliebige aus einer Vielfalt von Netzwerken zu verbinden, darunter das Internet, eine Ethernet-Cloud, eine FCoE/DCB-Cloud, ein Local Area Network (LAN), ein Wide Area Network (WAN), ein Storage Area Network (SAN), oder über beliebige geeignete elektromagnetische Trägersignale einschließlich infraroter Signale.
-
In dem dargestellten System können alle Hauptsystembestandteile mit einem Bus 360 verbunden sein, der mehr als einen einzigen physischen Bus darstellen kann. Jedoch können verschiedene Systembestandteile in physischer Nähe zueinander liegen oder nicht. Zum Beispiel können Eingabedaten und/oder Ausgabedaten von einem physischen Ort zu einem anderen fernübertragen werden. Außerdem kann auf Programme, die verschiedene Aspekte dieser Erfindung umsetzen, von einem fernen Ort (z. B. einem Server) über ein Netzwerk zugegriffen werden. Solche Daten oder Programme können durch einen beliebigen aus einer Vielfalt maschinenlesbarer Datenträger vermittelt werden, einschließlich, aber nicht beschränkt auf: magnetische Datenträger, wie etwa Festplatten, Floppy Disks und Magnetband; optische Datenträger, wie etwa CD-ROMs und holografische Vorrichtungen; magnetooptische Datenträger; und Hardwarevorrichtungen, die speziell ausgestaltet sind, Programmcode zu speichern oder zu speichern und auszuführen, wie etwa anwendungsspezifische integrierte Schaltungen (ASICs), programmierbare Logikbauelemente (PLDs), Flash-Speicherbauelemente und ROM- und RAM-Bauelemente.
-
Ausführungsformen der vorliegenden Erfindung können auf einem oder mehreren nichtflüchtigen computerlesbaren Datenträgern mit Anweisungen für einen oder mehrere Prozessoren oder Verarbeitungsmodule codiert sein, um das Ausführen von Schritten zu veranlassen. Es ist anzumerken, dass der eine oder die vielfachen nichtflüchtigen computerlesbaren Datenträger flüchtigen und nichtflüchtigen Speicher enthalten soll. Es ist anzumerken, dass alternative Umsetzungen möglich sind, darunter eine Hardwareumsetzung oder eine Software-/Hardwareumsetzung. Hardwareumgesetzte Funktionen können ausgeführt sein unter Verwendung eines oder mehreren ASICs, von programmierbaren Arrays, digitalen Signalverarbeitungsschaltkreisen oder dergleichen. Demgemäß sollen die Begriffe „Einrichtungen” in beliebigen Ansprüchen sowohl Software- als auch Hardwareumsetzungen abdecken. Ähnlich enthält der Begriff „computerlesbare(r) Datenträger”, wie er hier benutzt ist, Software und/oder Hardware mit einem darauf enthaltenen Programm aus Anweisungen oder eine Kombination davon. Angesichts dieser Umsetzungsalternativen versteht es sich, dass die Figuren und die begleitende Beschreibung die funktionellen Informationen vorsehen, die ein Fachmann benötigen würde, um Programmcode (d. h. Software) zu schreiben und/oder Schaltkreise (d. h. Hardware) herzustellen, um die erforderliche Verarbeitung durchzuführen.
-
Es ist anzumerken, dass sich Ausführungsformen der vorliegenden Erfindung weiter auf Computerprodukte mit einem nichtflüchtigen, materiellen, computerlesbaren Datenträger beziehen können, der Computercode darauf aufweisen kann, um verschiedene computerimplementierte Operationen auszuführen. Die Datenträger und der Computercode können solche sein, die speziell für die Zwecke der vorliegenden Erfindung ausgestaltet sind, oder sie können von der Art sein, wie sie Fachleuten bekannt und verfügbar ist. Beispiele materieller computerlesbarer Datenträger umfassen, sind aber nicht beschränkt auf: magnetische Datenträger, wie etwa Festplatten, Floppy Disks und Magnetband; optische Datenträger, wie etwa CD-ROMs und holografische Vorrichtungen; magnetooptische Datenträger; und Hardwarevorrichtungen, die speziell ausgestaltet sind, Programmcode zu speichern oder zu speichern und auszuführen, wie etwa anwendungsspezifische integrierte Schaltungen (ASICs), programmierbare Logikbauelemente (PLDs), Flash-Speicherbauelemente und ROM- und RAM-Bauelemente. Beispiele von Computercode umfassen Maschinencode, wie er durch einen Compiler erzeugt ist, und Dateien, die Code höheren Niveaus enthalten, der durch einen Computer unter Verwendung eines Interpreters ausgeführt wird. Ausführungsformen der vorliegenden Erfindung können im Ganzen oder teilweise als maschinenausführbare Anweisungen ausgeführt sein, die in Programmmodulen enthalten sind, die durch eine Verarbeitungsvorrichtung ausgeführt werden. Beispiele von Programmmodulen umfassen Bibliotheken, Programme, Routinen, Objekte, Komponenten und Datenstrukturen. In verteilten Computerumgebungen können sich Programmmodule physisch in Aufbauten befinden, die örtlich, fern oder beides sind.
-
Ein Fachmann wird erkennen, dass kein Computersystem und keine Programmiersprache für die Anwendung der vorliegenden Erfindung kritisch sind. Ein Fachmann wird auch erkennen, dass eine Anzahl der oben beschriebenen Elemente physisch und/oder funktionell in Submodule getrennt oder miteinander kombiniert sein können.
-
Es ist anzumerken, dass Elemente der nachstehenden Ansprüche anders angeordnet werden können, einschließlich mit mehreren Abhängigkeiten, Gestaltungen und Kombinationen. Zum Beispiel kann in Ausführungsformen der Gegenstand verschiedener Ansprüche mit anderen Ansprüchen kombiniert werden.
-
Fachleute werden einsehen, dass die vorstehenden Beispiele und die Ausführungsform beispielhaft sind und nicht einschränkend für den Geltungsbereich der vorliegenden Erfindung. Es ist beabsichtigt, dass alle Permutationen, Ausweitungen, Äquivalente, Kombinationen und Verbesserungen daran, die Fachleuten beim Lesen der Beschreibung und beim Studium der Zeichnung offensichtlich sind, im wahren Geist und Umfang der vorliegenden Erfindung eingeschlossen sind.