DE69522998T2 - Gesicherte anwendungskarte zur aufteilung von anwendungsdaten und prozeduren zwischen mehreren mikroprozessoren - Google Patents
Gesicherte anwendungskarte zur aufteilung von anwendungsdaten und prozeduren zwischen mehreren mikroprozessorenInfo
- Publication number
- DE69522998T2 DE69522998T2 DE69522998T DE69522998T DE69522998T2 DE 69522998 T2 DE69522998 T2 DE 69522998T2 DE 69522998 T DE69522998 T DE 69522998T DE 69522998 T DE69522998 T DE 69522998T DE 69522998 T2 DE69522998 T2 DE 69522998T2
- Authority
- DE
- Germany
- Prior art keywords
- access
- memory
- microprocessor
- control
- application
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title description 8
- 230000015654 memory Effects 0.000 abstract description 118
- 230000006870 function Effects 0.000 abstract description 5
- 101000761183 Candida albicans (strain SC5314 / ATCC MYA-2876) Candidapepsin-10 Proteins 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 230000004888 barrier function Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013474 audit trail Methods 0.000 description 1
- 229910052799 carbon Inorganic materials 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/067—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
- G06K19/07—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
- G06K19/073—Special arrangements for circuits, e.g. for protecting identification code in memory
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/357—Cards having a plurality of specified features
- G06Q20/3576—Multiple memory zones on card
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
- Credit Cards Or The Like (AREA)
- Microcomputers (AREA)
- Circuits Of Receivers In General (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Description
- Diese Erfindung bezieht sich auf das Gebiet tragbarer Personal Computer und insbesondere auf Systeme zur Erhaltung der Datensicherheit in einer tragbaren digitalen Informationsumgebung.
- Die Sicherheit persönlicher Informationen ist immer von Bedeutung. In der Vergangenheit wurde sie mit Unterschriften, Zeugnissen und Photographien sichergestellt. Elektronische Vorrichtungen wie etwa automatische Bankmaschinen haben zu dem Repertoire der Sicherheits-Hilfsmittel codierte Karten und persönliche Identifizierungsnummern (PINs) hinzugefügt. Computer verwenden weiterhin Kennwörter.
- Neuerdings wird die "Chipkarte" als Sicherheitshilfsmittel verwendet. Die "Chipkarte" ist ein kleiner Mikrocomputer mit einem beschreibbaren nichtflüchtigen Speicher und einer einfachen Eingabe/Ausgabe-Schnittstelle, der als einzelner Chip hergestellt und in eine Kunststoff-"Kreditkarte" eingebettet ist. Er besitzt äußere Pins, die ermöglichen, daß er an ein besonders beschaffenes Gerät angeschlossen wird. Das im Mikrocomputer der Karte enthaltene Programm wechselwirkt mit diesem Gerät und ermöglicht das Lesen oder Modifizieren seiner nichtflüchtigen Speicherdaten gemäß einem gewünschten Algorithmus, der optional einen Kennwortaustausch einschließen kann. Es wurden spezielle Techniken realisiert, um die Speicherdaten zu schützen und Genehmigungsänderungen entsprechend der Situation zu ermöglichen. Beispielsweise offenbart das US-Patent Nr. 4.382.279 mit dem Titel "Single Chip Microprocessor with On-Chip Modifiable Memory" eine Architektur, die die automatische Programmierung eines auf dem gleichen Chip als Verarbeitungs- und Steuereinheit enthaltenen nichtflüchtigen Speichers ermöglicht. Wie in anderen Systemen schützt der Mikroprozessor nur den Speicher auf dem gleichen Chip.
- Die "Chipkarte" wird sowohl zum Erleichtern des Prozesses der Identifizierung als auch als tatsächlicher Ort der wertvollen Informationen verwendet. Wie in den meisten herkömmlichen Situationen wird in dieser Situation die physikalische Anwesenheit eines "Schlüssels" sowie eine gewisse Spezialkenntnis als Teil des Verifizierungs- oder Authentifizierungsprozesses verwendet. In diesen Fällen umfaßt die Identifizierung einen Dialog zwischen der Person, die den Zugriff wünscht, und einem festen Agenten wie etwa einem Sicherheitswächter und einem Geldautomaten.
- Der momentane Zustand der Tragbarkeit von Einzelcomputervorrichtungen ermöglicht, daß sowohl der physikalische Schlüssel als auch der Authentifizierungsagent klein, tragbar und somit anfälliger gegenüber Verlust oder Diebstahl sind. Außerdem ermöglichen Computervorrichtungen die Ausführung wiederholter Schritte zur Vermutung oder Ableitung des mit dem Identifiziemngsprozeß verknüpften Spezialwissens oder der mit ihm verknüpften Kennwörter. Dies trifft insbesondere dann zu, wenn der Authentifizierungsagent oder die Authentifizierungsvorrichtung ebenfalls unter Kontrolle des Diebs ist. Was die Situation noch schlimmer macht, ist, daß die Technologie jetzt ermöglicht und dazu ermutigt, gewaltige Mengen sensitiver Informationen über eine Person dort umherzutragen, wo sie einem Unglück unterliegen können.
- Außerdem schaffen die heutigen Notebook- und Sub-Notebook-Computer eine Einzelumgebung mit einer signifikanten Rechenleistung, die Bedarf an einer zusätzlichen Datenspeicherfähigkeit erzeugt hat. Diesem Bedarf wurde anfangs mit Kleinfestplattenvorrichtungen entsprochen, die sowohl Programme als auch Daten halten können. Obgleich in diesen Systemen häufig ein Kennwortschutz verwendet wird, schützt er die sensitiven Daten nicht vollständig, da zunächst der Authentifizierungsagent verletzbar ist. Bedeutender ist aber, daß die Plattenvorrichtung, die die Daten enthält, physikalisch entfernt werden kann, so daß in einer Umgebung, die einer Analyse förderlicher ist, auf sie zugegriffen werden kann. In diesem Fall werden die Daten mit einer gewissen Form der Verschlüsselung geschützt. Das Wesen des Plattenzugriffs ermöglicht dies, ohne daß übermäßige Kosten- oder Leistungsbarrieren feststellbar sind. Ein Beispiel eines derartigen Systems ist im US-Patent Nr. 4.985.920 mit dem Titel "Integrated Circuit Card" beschrieben.
- Das kürzliche Aufkommen des Flash-Speichers und entnehmbarer "Speicherkarten" ermöglicht bedeutende Verringerungen in bezug auf die Größen- und Leistungsanforderungen der tragbaren Computer. Der Flash-Speicher verbindet die Flexibilität von Speichern mit wahlfreiem Zugriff (RAMs) mit der Permanenz von Platten. Heute ermöglicht die Kombination dieser Technologien das Speichern von bis zu 20 Millionen Datenbytes ohne Strom in einer entnehmbaren Packung von der Größe einer Kreditkarte. Diese Daten können auf einem Host-System entweder so, als ob sie auf einer herkömmlichen Plattenvorrichtung gespeichert wären, oder so, als ob sie in einer Erweiterung des Host-Systemspeichers gespeichert wären, zum Erscheinen gebracht werden.
- Diese technologischen Entwicklungen haben weitere Verringerungen in bezug auf die Systemgröße bis zu dem Umfang ermöglicht, daß das System und die Datenbehandlungsprogramme von einer Person getragen werden können. Dies hat die Daten, die Programme und ihr Host-System anfälliger gegenüber Verlust oder Diebstahl gemacht, während gleichzeitig der Schutz der Speicherdaten durch Verschlüsselung erschwert wird, da dies große Kosten- und Leistungsbarrieren darstellt.
- Das Dokument EP-A-0 479 655 lehrt sowohl die Speicherung von Code als auch von Daten in einem Mikroprozessor, der zur Verwendung in einer "Anwendungskarte" oder Chipkarte bestimmt ist. Das Dokument FR-A-2 645 303 betrifft das allgemeine Problem der Sicherheit in tragbaren Speicherkarten und offenbart eine Speichereinheit, die verschiedene Blöcke von nichtflüchtigem Speicher sowie Zugriffsunterscheidungsmittel umfaßt. Die europäische Patentanmeldung EP-A-689701 betrifft das gleiche technische Gebiet wie die vorliegende Erfindung.
- Das Dokument EP-A-0 596 276, das unter den Artikel 54(3) EPC fällt, offenbart eine Anwendungskarte zur Verwendung mit einem über eine Busschnittstelle angeschlossenen Host-Mikroprozessor, wobei die Anwendungskarte umfaßt:
- Schnittstellen-Logikschaltungsmittel, die mit der Busschnittstelle funktional gekoppelt sind, wobei die Schnittstellen-Logikschaltungsmittel so angeschlossen sind, daß sie Anforderungen einschließlich Adressen-, Daten- und Steuerinformationen zum Host-Mikroprozessor senden und von diesem empfangen;
- einen internen Bus, der an die Schnittstellen-Logikschaltungsmittel angeschlossen ist, wobei der interne Bus Adressen-, Daten- und Steuerabschnitte besitzt, um die Anforderungen, die Signale von den Schnittstellen-Logikschaltungsmitteln für jede Speicheranforderung enthalten, zu übertragen;
- einen Zugriffssteuerungs-Mikroprozessor, der an den internen Bus angeschlossen ist und einen adressierbaren nichtflüchtigen ersten Speicher zum Speichern von Konfigurationsinformationen enthält;
- wenigstens einen nichtflüchtigen adressierbaren zweiten Speicher enthält, der an den internen Bus zum Empfangen der Adressen-, Daten- und Steuerinformationen angeschlossen ist, wobei der zweite Speicher in einer Anzahl von Blöcken organisiert ist, um verschiedene Informationen zu speichern, wobei der erste Speicher Konfigurationsinformationen speichert.
- Dementsprechend besteht eine Hauptaufgabe der vorliegenden Erfindung in der Schaffung eines tragbaren digitalen Systems mit einem Sicherheitsspeicher-Teilsystem.
- Eine weitere Aufgabe der vorliegenden Erfindung besteht in der Schaffung einer Speicherkarte, deren Inhalt geschützt werden kann, wenn sie aus einem tragbaren digitalen System entnommen wird.
- Eine besondere Aufgabe der vorliegenden Erfindung besteht in der Schaffung eines Sicherheitsspeicher-Teilsystems, das zum Schutz der vollständigen für den Lauf einer Anwendung benötigten Betriebsumgebung verwendet werden kann.
- Die obenstehenden und weitere Aufgaben der vorliegenden Erfindung werden gelöst durch den Inhalt des Anspruchs 1, der gegenüber dem Dokument EP-A-0 479 655 abgegrenzt ist. Besondere Ausführungsformen sind in den abhängigen Ansprüchen dargelegt.
- In der bevorzugten Ausführungsform besitzt der Anwendungsprozessor sowie jeder der anderen funktional mit der Karte verbundenen Mikroprozessoren eine zusätzliche, in dem Steuerabschnitt ihrer Busschnittstelle enthaltene Signalleitung, die bis zu dem Steuerabschnitt des internen Busses durchgeführt ist und zur Angabe eines "Execute"- Zugriffs auf den Speicher im Gegensatz zu einem einfachen Lesezugriff verwendet wird.
- Das Auswahlmittel in dem Zugriff-nach-Typ-Speicher wird als Antwort an die Signale, die an die "Execute"-Signalleitung und an eine "Off-Board"-Signalleitung, die angibt, ob sich die Mikroprozessorquelle außerhalb der Anwendungskarte (z. B. Host- Mikroprozessor) oder in der Karte befindet, an den Steuerabschnitt des internen Busses angelegt. Das Auswahlmittel wählt den dem angeforderten Zugriffstyp entsprechenden Bitplatz aus und verwendet den Bitinhalt des angegebenen Zugriffsbitplatzes, um die Übertragung eines Freigabe-Steuersignals an die nichtflüchtigen Speicherchips zu ermöglichen oder zu sperren. In der vorliegenden Ausführungsform definieren die Zustände der "Execute"- und der "Off-Board"-Signalleitung mehrere verschiedene Speicherzugriffstypen. Diese sind: Datenlesezugriff von dem Host-Mikroprozessor, Datenlesezugriff von dem Anwendungskarten-Mikroprozessor, Ausführungszugriff von dem Host-Mikroprozessor und Ausführungszugriff von dem Anwendungskarten- Mikroprozessor.
- Der Zugriffssteuerungs-Mikroprozessor schreibt den Inhalt des Zugriffstyp-RAMs in herkömmlicher Weise während des Einschaltens. Wie angegeben wurde, darf der Host- oder Anwendungsprozessor den Inhalt dieses RAMs nur unter der Steuerung des ACPs modifizieren, wodurch die Sicherheit erhalten wird.
- In der bevorzugten Ausführungsform ist jeder Host-Mikroprozessor über eine Standardschnittstelle wie etwa eine der Schnittstellen, die den Normen der Personal Computer Memory Card International Association (PCMCIA-Normen) entsprechen, an die Anwendungskarte angeschlossen. Genauer ist die ausgewählte besondere PCMCIA- Schnittstelle eine Schnittstelle mit einer sogenannten "Execute-in-Place"-Funktionalität (XIP-Funktionalität), die mit Kartenprozessoren verwendet werden kann, die Bus- Mastering und Schnittstellen-Kommunikationsfähigkeiten bieten.
- Die vorliegende Erfindung erweitert durch die Schaffung der Sicherheit für Programme die Fähigkeiten der sicheren Speicherkarte der verwandten Patentanmeldungen, wodurch es möglich wird, Anwendungs-Software zusammen mit ihrem benötigten Mikroprozessor in einer in sich abgeschlossenen Karte zu verpacken, die mit wohldefinierten Nachrichten oder Protokollen dem/den zusammenarbeitenden Mikroprozessor(en) bzw. Host-Mikroprozessor(en) über den gemeinsam genutzten Standardbus antwortet, während sie ihren internen Betrieb gegenüber diesem/diesen Mikroprozessor(en) abschirmt. Diese Betriebsart entspricht dem Grundprinzip des objektorientierten Software-Entwurfs, dessen Aufgaben darin bestehen, durch eine solche Segmentierung der Funktionen eine überlegene Entwicklungsumgebung zu schaffen.
- Somit löst die vorliegende Erfindung die gleichen Aufgaben in bezug auf die Schaffung einer sicheren Betriebsumgebung für Anwendungen.
- Wie im Fall der verwandten Patentanmeldung erklärt die vorliegende Erfindung die "Chipkarten"- und "Speicherkarten"-Technologien als Schlüssel, um den Schutz großer Mengen von Daten zu ermöglichen, die durch die Flash-Speicher-Technolgie in den durch die elektronische Miniaturisierung erzeugten "sicherheitsrauhen" Umgebungen möglicht gemacht werden. Außerdem erhält die vorliegende Erfindung die Merkmale der sicheren Karte der relevanten Patentanmeldung in bezug auf die Fähigkeit zum Betrieb in sicheren und unsicheren Betriebsarten, auf die Beseitigung der Notwendigkeit zum Verschlüsseln und Entschlüsseln der Daten und auf den Schutz des Speicherinhalts, wenn die Karte oder ihr Host-Prozessor verloren, gestohlen, ausgeschaltet oder unbeaufsichtigt gelassen werden. Im Fall des Diebstahls ist der Speicherinhalt gegenüber einem Zugriff selbst dann geschützt, wenn die Speicherkarte geöffnet und elektronisch untersucht wird oder wenn die Speicherchips entfernt und in einer anderen Vorrichtung angeordnet werden.
- Die obenstehenden Aufgaben und Vorteile der vorliegenden Erfindung werden besser verständlich anhand der folgenden Beschreibung in Verbindung mit der beigefügten Zeichnung.
- Fig. 1 ist ein Blockschaltplan eines Systems, das eine gemäß der vorliegenden Erfindung konstruierte Anwendungskarte enthält.
- Fig. 2 zeigt den Flash-Speicher aus Fig. 1 ausführlicher.
- Fig. 3 zeigt den gemäß der Lehre der vorliegenden Erfindung konstruierten Zugriffnach-Typ-Speicher aus Fig. 1 ausführlicher.
- Fig. 4 ist eine zur Erläuterung des Betriebs der Anwendungskarte der vorliegenden Erfindung verwendete Systemanordnung.
- Fig. 1 ist ein Blockschaltplan eines sicheren tragbaren Handcomputersystems, das als Personal Computer oder als Transaktionsprozessor verwendbar ist. Das System enthält eine gemäß der vorliegenden Erfindung konstruierte Anwendungskarte 3, die über einen externen Bus 102 an einen Host-Prozessor 5 angeschlossen ist. Der Host-Prozessor 5 kann die Form eines Palm Top-Personal Computers wie etwa des von der Hewlett- Packard Company hergestellten HP 95LX annehmen. Der Host-Prozessor 5 enthält einen Mikroprozessor 5-6, der über einen internen Bus 106 an den Bus 102 angeschlossen ist (siehe Fig. 4), und die Schnittstellen-Logikschaltungen aus Block 5-10. Der Host- Prozessor 5 kann außerdem weitere an den internen Bus 106 angeschlossene Einheiten wie etwa eine Flüssigkristallanzeige (LCD) 5-2, eine Tastatur 5-4 und einen Speicher enthalten. Der Speicher umfaßt einen Ein-Megabyte-Nur-Lese-Speicher (ROM) und einen 512 Kilobytes-Speicher mit wahlfreiem Zugriff (RAM).
- Die Verbindung zwischen der Anwendungskarte 3 und dem Host-Mikroprozessor 5 wird über eine Standard-Busschnittstelle hergestellt. In der bevorzugten Ausführungsform entspricht der Bus 102 der Norm der Personal Computer Memory Card International Association (PCMCIA-Norm), die eine "Execute-in-Place-Fähigkeit" (XIP- Fähigkeit) umfaßt. Die Schnittstelle 102 schafft einen Pfad zum Übertragen von Adressen-, Steuer- und Dateninformationen zwischen dem Host-Prozessor 5 und dem Anwendungskartensystem 3 über einen Standard-Schnittstellen-Chip 104 und einen internen Bus 105. Jeder der Busse 102, 105 und 106 enthält einen Datenbus, einen Steuerbus und einen Adressenbus und schafft über sämtliche gleiche Busse zusammenhängende Signalpfade. Beispielsweise umfaßt der Bus 105 den Adressenbus 105a, den Datenbus 105b und den Steuerbus 105c.
- Wie in Fig. 1 gezeigt ist, enthält die Anwendungskarte 3 der vorliegenden Erfindung einen Zugriffssteuerungs-Mikroprozessor (ACP) 10, der an den Bus 105 angeschlossen ist, mehrere mit 103a bis 103n bezeichnete CMOS-Flash-Speicherchips, die an den internen Bus 105 angeschlossen sind, einen Anwendungsmikroprozessor A1, der an den Bus 105 angeschlossen ist, und die Zugriffsunterscheidungs-Logikeinheit A3, die wie gezeigt an den Bus 105 und an die Flash-Speicher 103a bis 103n angeschlossen ist. Der ACP 10 ist typischerweise der gleiche Typ eines Verarbeitungselements, wie es in der "Chipkarte" verwendet wird. Die CMOS-Flash-Speicher 103a bis 103n können die Form von durch die Intel Corporation hergestellten Flash-Speicher-Chips annehmen. Beispielsweise können sie die Form der als Intel 28F001BX 1M bezeichneten Intel- Flash-Speicher-Chips annehmen, die acht 128 Kilobyte · 8 Bits-CMOS-Flash-Speicher enthalten. Somit kann eine 4 Megabytes-Flash-Speicherkarte 32 dieser Flash-Speicher enthalten (d. h. n = 32).
- Der Zugriffssteuerungs-Mikroprozessor 10 und die Flash-Speicher 103a bis 103n können wie in den obengenannten verwandten Patentanmeldungen offenbart konstruiert sein. Der Vollständigkeit halber werden hier sowohl der ACP 10 als auch der nichtflüchtige Speicher 103i kurz beschrieben.
- Wie aus Fig. 1 zu sehen ist, enthält der Steuerabschnitt des internern Busses 105 sowie des externen Busses 102 gemäß der vorliegenden Erfindung mehrere Steuersignalleitungen, die die durch einen der Mikroprozessoren 5-6, 10 oder A1 erzeugten Steuersignale Ausführen, Lesen und Schreiben anlegen. Genauer enthält jeder der Mikroprozessoren Mittel, die über die unterschiedlichen Zustände der verschiedenen Steuerleitungen Ausführungs-, Lese- und Schreib-Operationszyklen auslösen. Beispielsweise können die Mikroprozessoren bezüglich der in ihnen enthaltenen Fähigkeit, durch Ändern der Zustände spezifischer Steuerleitungen Code-Lese-, Speicher-Lese- und Speicher-Schreib-Busoperationszyklen auszulösen, in ähnlicher Weise wie die Mikroprozessoren Intel 486 DX konstruiert sein. Wegen weiterer Informationen in bezug auf diese Buszyklen kann auf die Veröffentlichung mit dem Titel "Microprocessors Vol. I", Bezugszeichen CG 110392, von der Intel Corporation Bezug genommen werden.
- Die ausführlicher in Verbindung mit Fig. 3 diskutierte Zugriffsunterscheidungs- Logikeinheit A3 enthält eine Zugriff-nach-Typ-Speichermatrix mit wahlfreiem Zugriff (Zugriff-nach-Typ-RAM-Matrix), mit mehreren Wortplätzen, einem Platz für jeden Block der Speicher-Chips 103a bis 103n, sowie Eingangsauswahlschaltungen, die an die "Execute"- und "Off-Board"-Steuersignalleitungen angeschlossen sind, welche das Wesen und die Quelle des Speicherzugriffs angeben. Gemäß der vorliegenden Erfindung definieren diese Signale vier verschiedene Typen von Speicherzugriffen. Diese sind: Datenlesezugriff vom Host-Mikroprozessor 5-6, Datenlesezugriff vom Anwendungsmikroprozessor A1, Ausführungszugriff vom Host-Mikroprozessor 5-6 und Ausführungszugriff von Anwendungsmikroprozessor A1. Die Zugriffsunterscheidungs- Logikeinheit A3 führt die Aufgabe des Anlegens der Ausgabefreigabesteuerung an die Speicherchips 103a bis 103n aus. Das heißt, sie bestimmt je nach Zustand der ausgewählten vorgespeicherten Zugriffssteuerbits des dem adressierten Block zugeordneten Platzes, welcher Typ des Freigabesteuersignals an die Speicherchips 103a bis 103n angelegt werden soll.
- Der Zugriffssteuerungs-Mikroprozessor (ACP) 10 der vorliegenden Ausführungsform enthält einen geschützten nichtflüchtigen Speicher 10-2, einen Speicher mit wahlfreiem Zugriff (RAM) 10-4 und einen Intervallzähler 10-6, die sämtlich in Fig. 1 graphisch dargestellt sind. Der nichtflüchtige Speicher 10&supmin;² ist für eine Anzahl adressierter Plätze vorgesehen, in denen die Authentifizierungsinformationen und -programme gespeichert werden sollen. Genauer werden in einer Gruppe von Speicherplätzen zusätzlich zu einem für die erneute Authentifizierung verwendeten Zeitintervallwert eine oder mehrere persönliche Identifizierungsnummern (PINs), Protolcollsequenzen oder andere Identifizierungsinformationen zum Überprüfen, daß der Anwender Zugriff auf das System hat, sowie Konfigurationsinformationen zum Identifizieren der Blöcke in den Flash-Speichern 103a bis 103n, auf die der Anwender zugreifen kann, gespeichert.
- Außerdem werden in einer weiteren Gruppe von Speicherplätzen Informationen für eine gegebene Anwendung gespeichert, die zur Angabe der Art des Zugriffs (d. h. es ist eine Karte oder ein Bild des Inhalts des Zugriffs-RAMs) in den Zugriffsunterscheidungslogik- RAM geladen werden können.
- Eine weitere Gruppe von Speicherplätzen speichert die zum Schutz jedes der Flash- Speicher 103a bis 103n verwendeten Schlüsselwerte oder die zum Schutz der einzelnen Blöcke jedes der Flash-Speicher 103a bis 103n verwendeten Codes. Eine weitere Gruppe von Speicherplätzen speichert die Programmbefehlsfolgen zum Ausführen der erforderlichen Authentifizierungsoperationen und zum Löschen des Systems, falls die voreingestellten Bedingungen für einen Fehler erfüllt sind. Für bestimmte Anwendungen können Programmbefehle enthalten sein, die ermöglichen, daß der Anwender das Setzen des Intervallzählers 10-6 steuert, der festsetzt, wann die erneute Authentifizierung des · Anwenders stattfindet.
- Fig. 3 zeigt in Form eines Blockschaltplans den Flash-Speicher 103a, der völlig gleich wie die verbleibenden Flash-Speicher 103b bis 103n konstruiert ist. Wie gezeigt ist, enthält der Speicher 103a zwei Abschnitte, einen gemäß der vorliegenden Erfindung organisierten Speicherabschnitt 103M und einen Sicherheitslogikabschnitt 103S, der die Sicherheitszugriffs-Steuerschaltungen der vorliegenden Erfindung enthält.
- Wie aus Fig. 3 ersichtlich ist, enthält der Abschnitt 103M eine wie in Fig. 4 gezeigt in sechzehn Blöcken organisierte Speichermatrix 54, ein Befehlsregister 50, die Eingabe/Ausgabe-Logikschaltungen 60, einen Adressenzähler 56, eine Schreibzustandsmaschine 61, ein Löschspannungssystem 62, einen Ausgangsmultiplexer 53, ein Datenregister 55, einen Eingangspuffer 51, einen Ausgangspuffer 52 und ein Statusregister 58, die wie gezeigt angeordnet sind. Die wie oben diskutierten Grundlogikschaltungen des Flash-Speichers 103a nehmen die Form von Schaltungen an, wie sie in Flash-Speichern enthalten sind, die von der Intel Corporation hergestellt werden. Da diese Schaltungen als herkömmlich konstruiert angesehen werden können, werden sie nur in dem erforderlichen Umfang beschrieben. Wegen weiterer Informationen in bezug auf diese Schaltungen kann auf die Veröffentlichung mit dem Titel "Memory Products", Bestellnummer 210830, veröffentlicht von der Intel Corporation, 1992, Bezug genommen werden.
- Wie in Fig. 3 gezeigt ist, empfangen die Flash-Speicherschaltungen mehrere Eingangsadressenbitsignale A0-A16, mehrere Datensignale D00-D07 und mehrere Steuersignale, die das Chipfreigabesignal, das Schreibfreigabesignal, das Ausgabefreigabesignal, das Abschaltsignal und das Lösch/Programm-Stromversorgungssignal CE, WE, OE, PWD bzw. VPP umfassen.
- Die Signale CE, WE und OE werden von dem Host-Prozessor 5 über den Bus 102 und über den Steuerbus 105b an das Befehlsregister 50 und an den E/A-Logikblock 60 angelegt und zur Steuerung der angegebenen Logikblöcke verteilt. Genauer wird das Ausgabefreigabesignal (OE-Signal) als ein Eingangssignal an den Ausgangspuffer 52 angelegt und gemäß der vorliegenden Erfindung von der Zugriffsunterscheidungslogik A3 aus Fig. 1 geliefert. Das PWD-Signal wird außerdem an das Befehlsregister 50 angelegt, um zu ermöglichen, daß der Flash-Speicher andere Operation wie etwa das Löschen der flüchtigen Speicherelemente des Abschnitts 103S wie gewünscht durchführt, um dadurch eine erneute Authentifizierung des Anwenders zu erzwingen, wenn der normale Betrieb wieder fortgesetzt wird.
- Allgemein arbeiten die Grundlogikelemente des Abschnitts 103M in der folgenden Weise. Die Informationen werden über den Datenbus 105a, den Eingangspuffer 51 und das Datenregister 55 an einem adressierten Platz eines der Speicherblöcke in der Speichermatrix 54 gespeichert, der durch die durch den Adressenzähler 56 von dem Adressenbus 105c empfangene Adresse spezifiziert wird. Die Informationen werden von einem spezifizierten adressierten Platz eines Blocks der Speichermatrix 54 gelesen und über den Ausgangsmultiplexer 53, den Ausgangspuffer 52, den Datenbus 105a und den Bus 102 an den Host-Prozessor 5 gesendet. Zum Speichern des Status der Schreibzustandsmaschine, des Fehlerwartestatus, des Löschstatus, des Programmstatus und des VPP-Status wird ein Statusregister 58 verwendet.
- Die Schreibzustandsmaschine 61 steuert die Blocklösch- und Programmalgorithmen. Das Programm/Lösch-Spannungssystem 62 wird zum Löschen von Blöcken der Speichermatrix 54 oder zum Programmieren von Bytes jedes Blocks als Funktion des Spannungspegels von VPP verwendet.
- Wie aus Fig. 3 zu sehen ist, enthält der Abschnitt 1035 eine Sicherheitszugriffs- Steuereinheit 30 und einen nichtflüchtigen Zugriffssteuerungsspeicher 43, die wie gezeigt angeschlossen sind. Der Ausgang des Zugriffssteuerungsspeichers 43 wird während jedes Speicherlesezyklus, wenn der Inhalt eines Byte-Platzes irgendeines Blocks der Speichermatrix 54 ausgelesen wird, an einen Freigabeeingang in den Ausgangspuffer 52 angelegt. Das heißt, es kann ein Lesezyklus stattfinden, wobei aber verhindert wird, daß die ausgelesenen Daten in Abwesenheit des richtigen Block- Zugriffssteuerungs-Speichertorsignals über den Ausgangspuffer 52 geleitet werden.
- Genauer enthält der Zugriffssteuerungsspeicher 43 sechzehn einzeln adressierbare Bitspeicherelemente, einen an den Eingang jedes Speicherelements angeschlossenen 4- zu-16 Bits-Eingangsadressendecodierer und eine an den Ausgang jedes Speicherelements angeschlossene 1-zu-16-Ausgangsmultiplexerschaltung. Wie gezeigt ist, werden vier Bits desjenigen Adressenzwischenspeicherzählers 56, der der an den Steuerspeicher 43 angelegten Blockadresse entspricht, decodiert und zur Auswahl des richtigen Speicherelement-Ausgangssignals, das als Freigabeeingangssignal an den Ausgangspuffer 52 angelegt wird, verwendet.
- Dieser Abschnitt empfängt Befehlssteuersignale von dem Befehlsregister 50 des Abschnitts 103M. Zur Realisierung der Datensicherheit werden zu den von dem Flash- Speicher verwendeten Befehlssätzen Spezialbefehle hinzugefügt, wie sie etwa in den verwandten Patentanmeldungen beschrieben sind. Die Standard-Flash-Speicher-Befehle nehmen die Form der von den Flash-Speichern der Intel Corporation verwendeten Befehle an.
- Der Anwendungsmikroprozessor A1 ist in der Anwendungskarte enthalten und zum Ausführen sämtlicher für den Lauf einer gegebenen Anwendung erforderlichen Operationsfunktionen programmiert. In der bevorzugten Ausführungsform kann der Mikroprozessor mit einem Mikroprozessorchip Intel 80286 konstruiert sein. Außerdem enthält der Anwendungsmikroprozessor A1 einen Speicher mit wahlfreiem Zugriff, der zum Ausführen bestimmter Zwischenrechnungen beim Lauf spezifischer Anwendungen verwendet wird.
- Außer der Verwendung mit dem Host-Prozessor 5 aus Fig. 1 arbeitet die Anwendungskarte 3 auch in Verbindung mit dem Hand-Verkaufsstellen-Host-Prozessor aus Fig. 4. Dieser Host-Prozessor enthält eine Anzahl von Peripherievorrichtungen wie etwa eine Anzeige, einen Tastenblock, einen Kartendrucker, einen Kreditkartenleser und eine Kommunikationsverbindung, die gemeinsam an einen internen Bus angeschlossen sind. Der Host-Mikroprozessor ist eine einfache Vorrichtung, die die Peripherievorrichtungen betätigt, selbst aber eine minimale Funktionalität besitzt. Der Mikroprozessor kann beispielsweise mit einem Chip Intel 8051 konstruiert sein. Er besitzt seinen eigenen Nur-Lese-Speicher (ROM), der nur den Start- und den Selbsttest- Code enthält. Somit kann die Host-Vorrichtung als eine "Shell" mit der gesamten in der Anwendungskarte 3 enthaltenen signifikanten Funktionalität betrachtet werden.
- Die wie in Fig. 3 gezeigte Zugriffsunterscheidungs-Logikeinheit A3 enthält einen Speicher mit wahlfreiem Zugriff B1 mit n Gruppen von Plätzen, die der Anzahl der Flash-Speicher entsprechen. Jede Gruppe enthält 16 Mehrbit- oder Wortplätze, einen für jeden in dem Flash-Speicher 103a enthaltenen Block. Die Anzahl der Bitstellen für jedes Wort entspricht der Anzahl der für die laufende Anwendung benötigten verschiedenen Zugriffstypen. Beispielsweise gibt es in der oben diskutierten Anwendungskarte der bevorzugten Ausführungsform vier verschiedene Zugriffstypen. Diese Zugriffe sind mit den Bitstellen 0 bis 3 jedes Worts bezeichnet. Wie angegeben ist, werden die Bitstellen 0 und 1 zum Steuern des Zugriffs des Anwendungsmikroprozessors auf Daten bzw. Programme verwendet. Die Bitstellen 2 und 3 jedes Worts werden zum Steuern des Zugriffs des Host-Mikroprozessors auf Daten bzw. Programme verwendet. Wenn irgendeine Bitstelle auf einen Binärzustand EINS voreingestellt ist, gibt dies an, daß der Zugriff zulässig ist. Wenn eine Bitstelle auf einen Binärzustand NULL voreingestellt ist, gibt dies an, daß der Zugriff unzulässig ist.
- Wie gezeigt ist, ist die RAM-Matrix B1 zum Laden durch einen autorisierten Mikroprozessor an den Datenbusabschnitt 105b des internen Busses 105 angeschlossen. Außerdem ist sie an den Adressenabschnitt 105a des internen Busses 105 angeschlossen, der die höchstwertigen Bits der Speicheradresse liefert, die als Adresse für diese Matrix wirken. Die Ausgangssignale eines adressierten Platzes werden an den Dateneingang eines Multiplexers B2 angelegt. Die Auswahleingänge des Multiplexers B2 sind wie gezeigt an die Steuerleitungen "Execute" und "Off Board" des Steuerabschnitts 105c des internen Busses 105 angeschlossen. Das Ausgangssignal des Multiplexers B2 ist als Eingangssignal an das UND-Gatter B3 angelegt, dessen anderer Eingang an die Ausgabefreigabe-Steuerleitung des Steuerabschnitts 105c des internen Busses 105 angeschlossen ist. Der Ausgang des UND-Gatters B3 ist an die Ausgabefreigabe-Steuerleitung angeschlossen, die als Eingang an jeden der Speicherchips 103a bis 103n angelegt ist.
- In bezug auf eine besondere in der Systemkonfiguration von Fig. 4 gezeigte Anwendung wird nun der Betrieb der Anwendungskarte der vorliegenden Erfindung beschrieben. Es gibt eine Anzahl von Anwendungskarten, die jeweils zur Verwendung in einer Restaurantumgebung programmiert sind. In dem Restaurant wird der Mainframe- Personal Computer für die gesamte Restaurantverarbeitung verwendet, wobei dieser als der Host-Personal Computer 5 aus Fig. 1 konstruiert sein kann. Außer den sämtlichen normalen Einrichtungen enthält der Host-Personal Computer 5 eine Vorrichtung zur Aufnahme von PCMCIA-Karten, die einen Disketten-Steckplatz belegt.
- Jede Anwendungskarte kann in diese Schnittstelle sowie in irgendeine der Anzahl der Hand-Vorrichtungen wie etwa in die Vorrichtung aus Fig. 4 gesteckt werden. Wie gezeigt ist, enthält jede Handvorrichtung außer dem anderen benötigten Zubehör ein Tastenfeld, eine kleine Anzeige und einen Kreditkartenleser. In dem Restaurant kann es je nach Anzahl des Bedienungspersonals (z. B. Kellner, Barmixer usw.) bis zu 50 solche Vorrichtungen geben.
- Jeden Morgen, bevor das Restaurant für das Geschäft öffnet, prüft der Datenverarbeitungsmanager für das Restaurant die Gruppe der Handvorrichtungen, eine für jeden Kellner, die in einem Regal aufbewahrt werden, wobei ihre Batterien aufgeladen werden und wobei diese ohne Karten sind. An einem anderen Platz bewahrt der Manager einen Stapel Anwendungskarten auf, die in der vergangenen Nacht verwendet wurden. Das heißt, die normale Prozedur besteht darin, daß ein Kellner, wenn er sich abmeldet, die Karte aus der Handvorrichtung entnimmt, die Vorrichtung in dem Aufladeregal anordnet und die Karte in einen Steckplatz an einer sicheren Stelle in einer Tür anordnet, auf die nur der Manager zugreifen kann.
- Jede Anwendungskarte hat die Fähigkeit zum Erkennen zweier Hosts, d. h., der Zugriffssteuerungs-Mikroprozessor 10 jeder Karte wurde zum Erkennen zweier PINs programmiert. Eine ist die PIN des Computersystems, die nur der Manager und der Mainframe-Personal Computer 5 kennt. Die andere ist die durch jeden Kellner zu Beginn jeder Schicht zugewiesene PIN, die aus einer von dem Manager gelieferten Liste generischer PINs ausgewählt wird.
- Der Manager nimmt jede Anwendungskarte und setzt sie in den PCMCIA-Steckplatz des Mainframe-Personal Computers 5 ein, der die PIN der höheren Ebene übergibt. Die wichtigsten in jeder Anwendungskarte gespeicherten Informationen sind ein Datensatz der Transaktionen des Vortags für einen bestimmten Kellner für eine gegebene Schicht. Dies schafft einen Revisionsweg, der die Notwendigkeit zur Verarbeitung großer Mengen von Papierquittungen beseitigt.
- Wie in Fig. 4 und in der folgenden Tabelle angegeben ist, wird in der Zugriffsunterscheidungslogik A3 eine Unterscheidung in bezug auf die Zugriffstypen und die Datentypen getroffen. RAM-CODIERUNGSTABELLE
- Dabei ist AD = Anwendungsdaten, AP = Anwendungsprogramm, HD = Host-Daten und HP = Host-Programm.
- Aus den oben diskutierten Gründen sind die täglichen Transaktionsgeschichtsdaten wie oben angegeben als Daten gezeigt, auf die nur der Anwendungsmikroprozessor A1 in der Handvorrichtung, nicht aber die Handvorrichtung selbst, zugreifen kann. Zum Speichern dieser Informationen wurde ein zwei Blöcken entsprechender Speicherbereich 103a zugeordnet. Die ersten Bits jedes der mit den zugeordneten Blöcken verknüpften Wörter W14 und W15 werden zur Angabe des Lesezugriff nur durch den Anwendungsmikroprozessor A1 auf binäre EINSEN gesetzt.
- In dieser Situation werden die Transaktionsgeschichtsdaten später unter der Steuerung des ACP10 für den Mainframe-Personal Computer 5 zugreifbar gemacht. Während die Handvorrichtung in den Händen des Kellners ist, wird eine abgeschlossene Transaktion in der Anwendungskarte gespeichert, wobei auf sie nur der Anwendungsmikroprozessor A1 auf der Karte zugreifen kann. Dies verhindert, daß irgend jemand diese Daten manipuliert.
- Wenn eine Anwendungskarte in dem Mainframe-Personal Computer 5 angeordnet wird, übergibt sie jetzt eine PIN oder ein Kennwort, das von dem ACP 10 verwendet wird, um zu prüfen, daß der Host-Computer 5 die richtigen Berechtigungen besitzt. Nur wenn die richtigen Berechtigungen übergeben wurden, modifiziert der ACP 10 den Inhalt der RAM-Matrix, um den richtigen Zugriff zu gewähren (d. h. setzt die dritten Bits jedes der Wörter W14 und W15 auf binäre EINSEN). Wenn die flüchtige RAM-Matrix der Zugriffsunterscheidungslogik aufgeladen wird, darf der Mainframe-Computer 5 nun diese Daten lesen, die in der Handvorrichtung für ihn nicht verfügbar waren. Der flüchtige RAM-Speicher der Zugriffsunterscheidungslogik A3 wird durch den ACP 10 in der Weise eingestellt, daß der Mainframe-Computer 5 freien Zugriff auf sämtliche Informationen der Anwendungskarte hat. Um die Sicherheit zu aufrechtzuerhalten, erfolgt diese Einstellung unter der Steuerung des ACPs.
- Das erste, was der Manager tut, ist das Erfassen sämtlicher Transaktionen der vorausgegangenen Nacht und das Speichern dieser Transaktionen in dem Mainframe- Computer 5 zur späteren geeigneten Verarbeitung (z. B. Zahlungsberechnungen usw). Wie zuvor angegeben wurde, kann der Mainframe-Computer 5, wenn er die richtige PIN liefert, bewirken, daß der ACP 10 den RAM B3 der Zugriffsunterscheidungslogik A3 und die Verriegelungen in den Flash-Speichern 103a bis 103n einstellt, um zu ermöglichen, daß der Mainframe-Computer 5 sämtliche in diesen Speichern gespeicherten Daten liest. Nachdem die Daten gespeichert wurden, werden diese Speicherblöcke geleert/gelöscht und zum späteren Gebrauch neu beschrieben.
- Wie in Fig. 4 und in der Tabelle angegeben ist, wurde ein weiterer Speicherbereich 103a zum Halten der richtigen Menüs und Preise/Sonderangebote zugeordnet, der jeden Morgen durch den Manager neu beschrieben wird. Dieser Bereich entspricht einem einzelnen Block, dem das Wort W5 zugeordnet ist. Wie in der Tabelle angegeben ist, können auf diese Informationen sowohl der Anwendungsmikroprozessor A1 als auch der Hand-Host-Mikroprozessor aus Fig. 4 zugreifen. Somit werden sowohl das erste Bit als auch das dritte Bit auf binäre EINSEN gesetzt, um diesen Zugriff zu ermöglichen.
- Das Datenstück, das nicht geändert wird, ist der Programmcode für den Anwendungsmikroprozessor selbst. Ein wichtiger Teil dieses Codes sind die Algorithmen und Verschlüsselungen, die ermöglichen, Nachrichten über die Kommunikationsverbindung aus Fig. 4 über das Kreditnetz zu senden, wobei diese die Informationen enthalten, die beschreiben, wie die Handvorrichtung auf das Netz zugreifen soll. Das heißt, er enthält die Informationen, die den Anforderer richtig identifizieren, und die verwendet werden, um festzustellen, daß die Transaktion eine berechtigte Transaktion ist, um eine Zählung zu Lasten eines gegebenen Kontos vorzunehmen. Dies sind hochsichere Informationen, die in der Anwendungskarte gehalten werden. Falls es irgendeine Änderung an diesen Informationen wie etwa eine Kennwortänderung oder eine Aktualisierung in bezug auf die Identifizierung des Restaurants als Quelle im Netz gibt, werden diese Informationen ebenfalls durch den Manager in die Karte geschrieben und daraufhin geschützt, so daß die Angestellten des Restaurants nicht auf sie zugreifen können. Wie in der Tabelle gezeigt ist, wurde ein 8 Blöcken entsprechender Speicherbereich 103a zum Speichern des Programmcodes für den Anwendungsmikroprozessor A1 zugeordnet. Den Blöcken sind die Wörter W6 bis W13 zugeordnet, deren Bitstelle 2 zur Angabe eines "Execute"-Zugriff durch den Anwendungsmikroprozessor A1 jeweils auf einen binären Zustand EINS gesetzt wird.
- Eine weiterer Typ von im Speicher 103a der Anwendungskarte gespeicherten Informationen sind die Treiber für die Vorrichtungen in der Handvorrichtung. Der 5 Blöcken entsprechende Speicherbereich wurde zur Speicherung dieser Informationen zugeordnet. Den Blöcken sind die Wörter WO bis W4 zugeordnet, deren Bitstelle 4 zur Angabe lediglich des Zugriffs durch den Hand-Host aus Fig. 4 jeweils auf einen Binärzustand EINS gesetzt wird.
- Falls das Kreditkarten-Leserprogramm einen Programmfehler enthält, wird die Aktualisierung zu diesem Zeitpunkt durch den Manager in den Flash-Speicher geschrieben. Dadurch, daß sich der Mainframe-Host-Prozessor 5 selbst identifizieren muß, wobei verschiedene Hosts verschiedene Berechtigungsebenen haben können, kann die gesamte Anwendungskarte, deren Speicher gelöscht wurde, aktualisiert werden, so daß sie für den nächsten Tag gebrauchsfertig ist, wobei sie für bestimmte Leute in dem Bedienungspersonal personalisiert werden kann oder in sämtliche Karten die gleichen Informationen geschrieben werden können.
- Die programmierten Anwendungskarten werden in einem Stapel angeordnet, wobei eine Einzelperson, die hereinkommt, um mit der Arbeit zu beginnen, eine Handvorrichtung aus dem Aufladeregal entnimmt und, falls sie in dieser Weise (z. B. Barmixer - eine Art, Kellner eine andere Art) spezifiziert wurden, eine personalisierte Karte auswählt, die in die Handvorrichtung eingeführt wird. Während des ersten Anmeldens setzt die Einzelperson eine generische PIN ein, die fordert, daß sich die Einzelperson selbst als der Anwender identifiziert, was ermöglicht, daß die Person für eine zusätzliche Sicherheit eine PIN zur Verwendung für die Schicht dieser Person auswählt.
- Falls die Karte oder Vorrichtung verworfen und später wiedergewonnen wurde, kann der Mainframe-Computer 5 die Daten durch die Verwendung seiner Überschreibe-PIN erhalten. Natürlich sind sämtliche Anwendungskartendaten, wie in den angeführten verwandten Patentanmeldungen beschrieben wurde, durch die Sicherheitseinheit der Anwendungskarte gegenüber einem mißbräuchlichen Zugriff geschützt. Das heißt, ein Zugriff kann nur durch die Verwendung einer Master-PIN erhalten werden, die nur dem Mainframe-Computer 5 bekannt ist.
- Ein Aspekt dieser Sicherheit besteht darin, daß sie ermöglicht, daß das Restaurant ohne Papierquittungen arbeitet. Somit besteht keine Notwendigkeit, Durchschläge aufzubewahren, wodurch der Schutz der Kreditkartendaten des Verbrauchers sichergestellt ist. Der Drucker in der Handvorrichtung wird verwendet, um für jeden Verbraucher, der eine solche Quittung anfordert, eine einzelne Kopie einer Quittung zu drucken. Wenn es auf der Handvorrichtung eine Stiftfläche gibt, kann diese auch die Unterschrift des Verbrauchers erfassen.
- Nach dem Ausführen der obengenannten Operationen sind die vier Speicherbereiche gemäß der Tabelle richtig eingestellt, wobei die Handvorrichtung nun in den Händen des Bedienungspersonals ist. Wie erwähnt wurde, ist der Datenbereich für den Anwendungsmikroprozessor A1 zum Speichern abgeschlossener Transaktionen für den Tag reserviert, die sich sowohl aus Sicherheitsgründen als auch, damit sie richtig aufbewahrt (z. B. nicht zufällig überschrieben werden) werden, in einem geschützten Bereich befinden (d. h. durch die Codierung der Wörter W14 und W15 gesteuert werden). Dies ist ein Vorteil des Flash-Speichers, daß er die Notwendigkeit für Spezial-Batteriesicherungsschaltungen zur Aufbewahrung dieser Informationen beseitigt.
- Während des Betriebs des Restaurants gibt das Dienstpersonal abgeschlossene Transaktionen in den geeigneten Speicherbereich 103a ein. Das Schreiben findet in herkömmlicher Weise gemäß der Steuerung geeigneter Schreibschutzalgorithmen statt. Das heißt, der Anwendungsprogrammcode bewirkt, daß der Anwendungsprozessor A1 in die richtigen Speicherbereiche schreibt. Der Hand-Host-Prozessor aus Fig. 4 enthält keine Software, die die Fähigkeit zum Schreiben in den Speicher 103a besitzt. Da das Verfahren zum Schreiben keinen Bestandteil der vorliegenden Erfindung bildet, wird es hier nicht ausführlich beschrieben.
- Wie angegeben wurde, gibt es für den Hand-Host-Prozessor einen weiteren als der Datenbereich angegebenen Bereich, der frei verfügbar gemacht wird, da er Menüinformationen sowie Bestellungen, die "im Gange sind", liefert. In Fig. 4 ist ein RAM als Teil der Anwendungskarte gezeigt. Dort gibt es eine normale Abwägung, bei der zur Erleichterung der Realisierung Zwischen- oder Notizberechnungen in dem RAM erfolgen, da das Neuschreiben von Bereichen des Flash-Speichers 103a schwieriger ist. Andererseits kann des wünschenswerter sein, Bestellungen in den Speicher 103a zu schreiben, um sie gegen einen Stromausfall zu schützen. In dieser Situation kann der Anwendungsprozessor A1 einen Datensatz zur Angabe, wenn eine Bestellung geändert wurde, kennzeichnen. Dies ist eine Frage der Entwurfswahl.
- Unabhängig von dem Obenstehenden gibt es eine Art von Informationsbereichen in dem RAM, die sowohl für den Anwendungsmikroprozessor A1 als auch für den Hand- Host-Prozessor zugreifbar gemacht werden müssen. Die Pufferbereiche, die zum Auffrischen des Bildschirms in dem Hand-Host-Prozessor verwendet werden, müssen für beide Vorrichtungen zugreifbar gemacht werden. Hier werden dabei keine wirklich sicheren Informationen darin gespeichert. Jede Transaktion fließt über den RAM, wobei es aber keinen Grund gibt, dort Informationen wie Kreditkartennummern zu speichern. Sie werden nur in den sicheren Bereich des RAMs geschrieben.
- Wie oben diskutiert wurde, gibt es zwei Abschnitte der Programme im Speicher 103a. Ein Abschnitt ist der Programmbereich, der gegenüber dem Anwendungsprozessor A1 privat ist. Dies ist im Grunde das gesamte Anwendungsprogramm, das teilweise geschützt ist, da es die Verschlüsselungsalgorithmen enthält, und teilweise schützt ist, da es ein proprietäres Produkt des Vorrichtungsherstellers (d. h. BIOS) wie etwa einzigartige Programme, mit denen die Vorrichtung läuft, darstellt. Falls die Anwendungskarte gestohlen wird und jemand das Programm für Rückentwicklungszwecke oder zum Brechen einiger seiner Sicherheitsmerkmale zu kopieren versucht, kann er diese Daten, selbst wenn er die Anwendungskarte in die richtige Host-Vorrichtung steckt, immer noch nicht lesen, da er immer noch die richtigen PINs einschließlich der sehr grundlegenden, die zuerst eingegeben werden muß, wissen muß. Diese Sicherheit wird durch die Sicherheitseinheit geschaffen, die Gegenstand der verwandten Patentanmeldungen ist.
- Wie angegeben wurde, hat der Hand-Host-Prozessor aus Robustheitsgründen keinen Zugriff auf derartige Informationen. Falls der Code Programmfehler oder Fehler enthält, die in den falschen Bereich verzweigen, werden sie abgefangen und erhalten keinen Zugriff auf diesen Code.
- Der Programmcode des Hand-Host-Prozessors ist aus Robustheitsgründen ähnlich gegenüber dem Zugriff durch den Anwendungsmikroprozessor A1 geschützt. Außerdem ermöglicht er, daß die Handvorrichtung einfacher programmiert wird, und verringert die Menge des benötigten Speichers. Somit führt die vorliegende Erfindung zu einer wirtschaftlicheren Systemrealisierung, da sie ermöglicht, daß zwei Mikroprozessoren den Speicher gemeinsam nutzen.
- Während normaler Operationen erzeugen der Hand-Host-Prozessor und der Anwendungsprozessor A1 aus Fig. 4 Speicheradressen, die für den Zugriff auf den Flash- Speicher 103a benötigt werden. Im Fall jedes Zugriffs werden die höchstwertigen Bits der Speicheradresse über den Adressenbus 105a an die Adresseneingänge des RAMs B1 aus Fig. 3 angelegt. Dies bewirkt das Auslesen des Mehrbitinhalts des bezeichneten Wortplatzes. Die Zustände der "Execute"- und der "Off-Board"-Leitung, die als Eingangsleitungen an den Multiplexer B2 angelegt sind, wählen den richtigen Bitplatz aus. Der Zustand dieses Bits steuert seinerseits das Ausgangs-UND-Gatter B3, um die Übertragung des an die Ausgabefreigabe-Steuerleitung angelegten Signals an den Speicherabschnitt 103m aus Fig. 2 zu ermöglichen oder nicht zuzulassen. Das heißt, dadurch, daß verhindert wird, daß der Ausgangspuffer 52 die aus dem Speicher 54 gelesenen Informationen an den Datenabschnitt 105b des internen Busses 105 anlegt, wird der Lesezugriff zugelassen oder nicht zugelassen.
- Es ist klar, daß die Leistungsanforderungen des Systems und die Zugriffszeiten der Zugriff-nach-Typ-RAM-Matrix bei der Auswahl der besonderen zu verwendenden Speichersteuerbits wichtig sein können. Ferner kann, falls entweder die verwendeten Host-Mikroprozessoren oder der verwendete externe Bus die "Execute Access"- Steuerfunktion nicht unterstützen, diese Zugriffe bei einem gewissen Verlust an Sicherheit als Lesezugriffe behandelt werden.
- Aus dem Obenstehenden ist zu sehen, wie die gemäß den Prinzipien der vorliegenden Erfindung konstruierte Anwendungskarte eine sichere Umgebung sowohl für Daten als auch für Programme schafft. Sie ermöglicht die gemeinsame Nutzung dieser in einem nichtflüchtigen Speicher gespeicherten Informationen unter mehreren Microprozessoren. Außerdem ermöglicht sie, daß die Anwendungssoftware bei ihrem eigenen Anwendungsprozessor untergebracht wird, was die Herstellung und den Gebrauch dieser Systeme wirtschaftlicher macht.
- Es ist klar, daß an der bevorzugten Ausführungsform der vorliegenden Erfindung viele Änderungen vorgenommen werden können, ohne von ihrer Lehre abzuweichen. Beispielsweise kann die vorliegende Erfindung mit einer Vielzahl von Anwendungen verwendet werden. Beispielsweise zeigt die untengegebene Tabelle weitere Beispiele des Speichers 103 für Beispielanwendungen.
Claims (9)
1. Anwendungskarte (3) zur
Verwendung zusammen mit einem Host-
Mikroprozessor (5), wobei die Anwendungskarte mit dem Host über eine
Busschnittstelle (102) gekoppelt ist, wobei die Anwendungskarte umfaßt:
Schnittstellen-Logikschaltungsmittel (104), die mit der Busschnittstelle
funktional gekoppelt sind, wobei die Schnittstellen-Logikschaltungsmittel so
angeschlossen sind, daß sie Anforderungen einschließlich Adressen-, Daten- und
Steuerinformationen zum Host-Mikroprozessor (5) senden und von diesem empfangen;
einen internen Bus (105), der an die Schnittstellen-Logikschaltungsmittel (104)
angeschlossen ist, wobei der interne Bus Adressen-, Daten- und Steuerabschnitte besitzt,
um die Anforderungen, die Signale von den Schnittstellen-Logikschaltungsmitteln (104)
für jede Speicheranforderung enthalten, zu übertragen;
einen Zugriffssteuerungs-Mikroprozessor (10), der an den internen Bus
angeschlossen ist;
wenigstens einen nichtflüchtigen, adressierbaren ersten Speicher (103a-n), der an
den internen Bus angeschlossen ist, um die Adressen-, Daten- und Steuerinformationen
zu empfangen und Daten- oder Programminformationen zu speichern,
dadurch gekennzeichnet, daß:
der Zugriffssteuerungs-Mikroprozessor (10) einen adressierbaren, nichtflüchtigen
zweiten Speicher (10-2) enthält, um Konfigurationsinformationen einschließlich der
nichtflüchtigen Zugriffsinformationen, die für die Ausführung einer spezifischen
Anwendung codiert sind, zu speichern;
die Karte einen Anwendungsmikroprozessor (A1) enthält, der so programmiert
ist, daß er Operationen zum Abarbeiten der spezifischen Anwendung ausführt, an die
Adressen-, Daten- und Steuerabschnitte des internen Busses (105) angeschlossen ist und
Signale erzeugt, die den Typ des ausgeführten Speicherzugriffs spezifizieren;
wobei die Signale der Anforderung von den Schnittstellen-
Logikschaltungsmitteln spezifizieren, ob der Host-Mikroprozessor (SA) oder der
Anwendungsmikroprozessor (A1) die Speicheranforderung erzeugt, und welcher Typ
von Speicherzugriff erfolgt;
der erste Speicher (103a-n) in einer Anzahl von Blöcken organisiert ist, um
verschiedene Informationen zu speichern, die zum Ausführen der Anwendung
erforderlich sind, wobei der zweite Speicher (10-2) Konfigurationsinformationen zum
Identifizieren der Blöcke speichert;
die Karte eine Zugriffsunterscheidungs-Logikeinheit (A3) umfaßt, die mit den
Adressen-, Daten- und Steuerabschnitten des internen Busses sowie mit dem wenigstens
einen ersten Speicher (103a-n) gekoppelt ist und einen dritten Speicher mit mehreren
Speicherplätzen enthält, deren Anzahl der Anzahl der Blöcke entspricht, um die
nichtflüchtigen Zugriffsinformationen vom zweiten Speicher (10-2) zu empfangen,
wobei jeder Speicherplatz eine Anzahl von Zugriffssteuerungs-Bitplätzen für die Angabe
der Typen von durch den Host- oder den Anwendungsmikroprozessor (A1, 5) bei der
Ausführung der Anwendung auszuführenden Speicherzugriffen entweder auf die in
jedem Block gespeicherten Daten- oder Programminformationen besitzt;
die Zugriffsunterscheidungs-Logikeinheit (A3) Mittel besitzt, die als Antwort auf
eine Speicheranforderung die Zugriffsinformationen eines der durch die
Adresseninformationen der Speicheranforderung bezeichneten Blöcke auslesen, um den
Zugriff auf in dem Block gespeicherte Informationen durch den die Speicheranforderung
erzeugenden Mikroprozessor nur wie durch die Zugriffsinformationen spezifiziert
freizugeben.
2. Anwendungskarte nach Anspruch 1, wobei die Zugriffsunterscheidungs-
Logikeinheit umfaßt:
eine Speichermatrix (RAM-Matrix) (B1) mit wahlfreiem Zugriff, die Adressen-,
Daten- und Steuereingänge, die mit den Adressen-, Daten- bzw. Steuerabschnitten des
internen Busses (105) verbunden sind, sowie einen Ausgang besitzt, der mit dem
wenigstens einen ersten Speicher (103a-n) verbunden ist, wobei die RAM-Matrix
mehrere Speicherplätze besitzt, deren Anzahl der Anzahl der Blöcke zum Speichern der
nichtflüchtigen Zugriffsinformationen entspricht, wobei jeder Speicherplatz eine Anzahl
Zugriffssteuerungs-Bitplätze (ACB&sub0;, ACB&sub1;, ACB&sub2;, ACB&sub3;) besitzt, die auf vorgegebene
Zustände gesetzt sind, die durch die Zugriffsinformationen für die Typen von
Speicherzugriffen durch den Anwendungs- und den Host-Mikroprozessoren (A1, 5) zum
Ausführen der spezifischen Anwendung bezeichnet werden, wobei die RAM-Matrix als
Antwort auf jede Speicheranforderung Zugriffsinformationen aus einem der mehreren
Speicherplätze, die durch die Adresseninformationen bezeichnet sind, ausliest und an den
Ausgang anlegt, wobei ein Steuersignal, das einen der vorgegebenen Zustände von einem
der Zugriffssteuerungs-Bitplätze repräsentiert, die durch die Signale von der
Schnittstellen-Logikschaltungseinrichtung (104) spezifiziert werden, entweder den
Anwendungs- oder den Host-Mikroprozessor als denjenigen bezeichnet, der den
Speicherzugriff anfordert, und den Typ des Speicherzugriffs angibt, um den Zugriff nur
wie durch den einen der vorgegebenen Zustände spezifiziert freizugeben.
3. Anwendungskarte nach Anspruch 1, bei der der Zugriffssteuerungs-
Mikroprozessor (10) und die Zugriffsunterscheidungs-Logikeinheit (A3) auf einem
einzigen Chip enthalten sind.
4. Anwendungskarte nach Anspruch 2, bei der die Zugriffsunterscheidungs-
Logikeinheit ferner umfaßt:
Multiplexer-Wählschaltungsmittel (B2), die Daten- und Steuereingänge sowie
Ausgangsschaltungsmittel besitzen, wobei die Dateneingänge mit der RAM-Matrix (B1)
verbunden sind, um die Zugriffsinformationen zu empfangen, die Steuereingänge mit
dem Steuerabschnitt verbunden sind, um die Signale von den Schnittstellen-
Logikschaltungsmitteln (104) zu empfangen, und die Ausgangsschaltungsmittel mit dem
wenigstens einen ersten Speicher (103a-n) verbunden sind, wobei die Multiplexer-
Wählschaltungsmittel als Antwort auf die an die Steuereingänge angelegten Signale
einen der Zugriffssteuerungs-Bitplätze wählen, um das Steuersignal an die
Ausgangsschaltungsmittel anzulegen, um den Zugriff freizugeben.
5. Anwendungskarte nach Anspruch 4, bei der die Ausgangsschaltungsmittel eine
Logikschaltung (B3) mit wenigstens einem ersten Eingang und einem zweiten Eingang
sowie einem Ausgang umfassen, wobei der erste Eingang so angeschlossen ist, daß er
das Steuersignal empfängt, der zweite Eingang an eine vorgegebene Busleitung des
Steuerabschnitts angeschlossen ist und der Ausgang an den wenigstens einen ersten
Speicher (103a-n) angeschlossen ist und wobei die Signale ein Off-Board-Signal für die
Angabe, welcher Mikroprozessor die Speicheranforderung erzeugt hat, sowie ein
Buszugriff-Steuersignal für die Spezifizierung des Typs des Speicherzugriffs enthalten.
6. Anwendungskarte nach Anspruch 5, bei der das Buszugriffs-Steuersignal ein
Ausführungssteuersignal ist, das codiert ist, um zu spezifizieren, daß der den Zugriff
anfordernde Mikroprozessor nur Informationen in dem Block, auf den zugegriffen wird,
ausführen darf.
7. Anwendungskarte nach Anspruch 5, bei der das Buszugriffs-Steuersignal ein
Lesesteuersignal ist, das so codiert ist, daß spezifziert wird, daß der den Zugriff
anfordernde Mikroprozessor Informationen in dem Block, auf den zugegriffen wird,
lesen und ausführen darf.
8. Anwendungskarte nach Anspruch 1, wobei der Zugriffssteuerungs-
Mikroprozessor (10) Mittel enthält, die als Antwort auf ein Stromversorgungs-
Einschaltsignal in die Zugriffsunterscheidungs-Logikeinheit (A3) die nichtflüchtigen
Zugriffsinformationen laden, die bei der Ausführung der spezifischen Anwendung
verwendet werden sollen.
9. Anwendungskarte nach Anspruch 1, wobei der Zugriffssteuerungs-
Mikroprozessor Mittel besitzt, die die nichtflüchtigen Zugriffsinformationen als Antwort
auf jegliche vom Host-Mikroprozessor (5) kommende Anforderung zum Ändern der
nichtflüchtigen Zugriffsinformationen, die in der Zugriffsunterscheidungs-Logikeinheit
(A3) gespeichert sind, erst nur nach erfolgreicher Ausführung einer
Authentifizierungsoperation durch den Host-Mikroprozessor während der Ausführung
der spezifischen Anwendung modifizieren.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/181,684 US5491827A (en) | 1994-01-14 | 1994-01-14 | Secure application card for sharing application data and procedures among a plurality of microprocessors |
PCT/IB1995/000032 WO1995019608A1 (en) | 1994-01-14 | 1995-01-13 | A secure application card for sharing application data and procedures among a plurality of microprocessors |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69522998D1 DE69522998D1 (de) | 2001-11-08 |
DE69522998T2 true DE69522998T2 (de) | 2002-06-13 |
Family
ID=22665328
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69522998T Expired - Lifetime DE69522998T2 (de) | 1994-01-14 | 1995-01-13 | Gesicherte anwendungskarte zur aufteilung von anwendungsdaten und prozeduren zwischen mehreren mikroprozessoren |
Country Status (16)
Country | Link |
---|---|
US (1) | US5491827A (de) |
EP (1) | EP0689702B1 (de) |
JP (1) | JP2755828B2 (de) |
KR (1) | KR100205740B1 (de) |
CN (1) | CN1053509C (de) |
AT (1) | ATE206543T1 (de) |
CA (1) | CA2158265C (de) |
DE (1) | DE69522998T2 (de) |
DK (1) | DK0689702T3 (de) |
ES (1) | ES2164144T3 (de) |
FI (1) | FI112714B (de) |
NO (1) | NO311545B1 (de) |
PT (1) | PT689702E (de) |
SG (1) | SG49773A1 (de) |
TW (1) | TW432283B (de) |
WO (1) | WO1995019608A1 (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102006054835A1 (de) * | 2006-11-21 | 2008-05-29 | Giesecke & Devrient Gmbh | Tragbarer Datenträger |
US8950006B2 (en) | 2006-11-16 | 2015-02-03 | Giesecke & Devrient Gmbh | Method for access to a portable memory data support with auxiliary module and portable memory data support |
Families Citing this family (96)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5696917A (en) | 1994-06-03 | 1997-12-09 | Intel Corporation | Method and apparatus for performing burst read operations in an asynchronous nonvolatile memory |
DK0765501T3 (da) * | 1994-06-15 | 1999-09-27 | Thomson Consumer Electronics | Chipkort meddelelsesoverførsel uden indgreb af en mikroprocessor |
US5613092A (en) * | 1994-09-01 | 1997-03-18 | Motorola Inc. | Peripheral card having an adaptive PCMCIA compliant interface |
US5802558A (en) * | 1994-09-30 | 1998-09-01 | Intel Corporation | Method and apparatus for upgrading reprogrammable memory contents in a PCMCIA card |
US6408333B1 (en) * | 1994-11-23 | 2002-06-18 | Horizon Technologies Inc. | System for portable establishing network server |
US5596562A (en) * | 1995-01-19 | 1997-01-21 | United Microelectronics Corp. | Controlling method and apparatus for supporting hard disk and/or CD-ROM drives through the PCMCIA interface |
US5737524A (en) * | 1995-05-22 | 1998-04-07 | International Business Machines Corporation | Add-in board with programmable configuration registers for use in PCI bus computers |
JPH0962583A (ja) * | 1995-08-24 | 1997-03-07 | Mitsubishi Electric Corp | データ処理装置 |
WO1997015027A1 (en) * | 1995-10-19 | 1997-04-24 | Philips Electronics N.V. | An identifier token with electronic circuitry and conductor means in the token external to the circuitry for realizing an identifier code |
US6075858A (en) * | 1995-10-27 | 2000-06-13 | Scm Microsystems (U.S.) Inc. | Encryption key system and method |
FR2748135B1 (fr) * | 1996-04-25 | 1998-06-19 | Aerospatiale | Equipement de calcul a memoire amovible pour aeronef |
FR2752071B1 (fr) * | 1996-07-30 | 1998-12-18 | Thomson Csf | Lecteur pour cartes a puce a interface homme-machine amelioree |
JP2982702B2 (ja) * | 1996-08-30 | 1999-11-29 | 日本電気株式会社 | ディスク装置 |
JPH1079000A (ja) * | 1996-09-03 | 1998-03-24 | Hitachi Ltd | プログラム書き込み可能なicカード |
AU770198B2 (en) * | 1997-03-21 | 2004-02-19 | Nagra France Sas | Broadcast and reception system, and receiver/decoder and remote controller therefor |
CN1254472A (zh) * | 1997-03-21 | 2000-05-24 | 卡纳尔股份有限公司 | 广播和接收系统及其接收机/译码器和遥控器 |
US6088802A (en) * | 1997-06-04 | 2000-07-11 | Spyrus, Inc. | Peripheral device with integrated security functionality |
US6003135A (en) * | 1997-06-04 | 1999-12-14 | Spyrus, Inc. | Modular security device |
JPH11120300A (ja) * | 1997-10-09 | 1999-04-30 | Fujitsu Ltd | 可搬型カード媒体,可搬型カード媒体のメモリ空間管理方法,可搬型カード媒体の発行方法および可搬型カード媒体のプログラムデータ書込方法並びにメモリ空間管理プログラムが記録されたコンピュータ読取可能な記録媒体 |
US5974500A (en) * | 1997-11-14 | 1999-10-26 | Atmel Corporation | Memory device having programmable access protection and method of operating the same |
GB2332530B (en) * | 1997-12-16 | 2002-01-16 | 3Com Technologies Ltd | Signalling between independently powered electrical circuit cards |
DE19804784A1 (de) * | 1998-02-06 | 1999-08-12 | Philips Patentverwaltung | Chipkarte mit integrierter Schaltung |
US6535917B1 (en) * | 1998-02-09 | 2003-03-18 | Reuters, Ltd. | Market data domain and enterprise system implemented by a master entitlement processor |
JP3743173B2 (ja) * | 1998-09-08 | 2006-02-08 | 富士通株式会社 | 半導体集積回路 |
US6609199B1 (en) * | 1998-10-26 | 2003-08-19 | Microsoft Corporation | Method and apparatus for authenticating an open system application to a portable IC device |
US7174457B1 (en) | 1999-03-10 | 2007-02-06 | Microsoft Corporation | System and method for authenticating an operating system to a central processing unit, providing the CPU/OS with secure storage, and authenticating the CPU/OS to a third party |
US7194092B1 (en) * | 1998-10-26 | 2007-03-20 | Microsoft Corporation | Key-based secure storage |
US7139915B2 (en) * | 1998-10-26 | 2006-11-21 | Microsoft Corporation | Method and apparatus for authenticating an open system application to a portable IC device |
US7290284B1 (en) * | 1999-01-11 | 2007-10-30 | Myspace Ab | System for data processing a security critical activity |
US7013456B1 (en) | 1999-01-28 | 2006-03-14 | Ati International Srl | Profiling execution of computer programs |
US8074055B1 (en) | 1999-01-28 | 2011-12-06 | Ati Technologies Ulc | Altering data storage conventions of a processor when execution flows from first architecture code to second architecture code |
US7065633B1 (en) | 1999-01-28 | 2006-06-20 | Ati International Srl | System for delivering exception raised in first architecture to operating system coded in second architecture in dual architecture CPU |
US8065504B2 (en) * | 1999-01-28 | 2011-11-22 | Ati International Srl | Using on-chip and off-chip look-up tables indexed by instruction address to control instruction execution in a processor |
US7111290B1 (en) | 1999-01-28 | 2006-09-19 | Ati International Srl | Profiling program execution to identify frequently-executed portions and to assist binary translation |
US7275246B1 (en) | 1999-01-28 | 2007-09-25 | Ati International Srl | Executing programs for a first computer architecture on a computer of a second architecture |
US8127121B2 (en) | 1999-01-28 | 2012-02-28 | Ati Technologies Ulc | Apparatus for executing programs for a first computer architechture on a computer of a second architechture |
US6826748B1 (en) | 1999-01-28 | 2004-11-30 | Ati International Srl | Profiling program execution into registers of a computer |
US7941647B2 (en) | 1999-01-28 | 2011-05-10 | Ati Technologies Ulc | Computer for executing two instruction sets and adds a macroinstruction end marker for performing iterations after loop termination |
US6148354A (en) | 1999-04-05 | 2000-11-14 | M-Systems Flash Disk Pioneers Ltd. | Architecture for a universal serial bus-based PC flash disk |
US6775779B1 (en) * | 1999-04-06 | 2004-08-10 | Microsoft Corporation | Hierarchical trusted code for content protection in computers |
US6651171B1 (en) * | 1999-04-06 | 2003-11-18 | Microsoft Corporation | Secure execution of program code |
US6618789B1 (en) * | 1999-04-07 | 2003-09-09 | Sony Corporation | Security memory card compatible with secure and non-secure data processing systems |
US6601140B1 (en) * | 1999-04-07 | 2003-07-29 | Sony Corporation | Memory unit, data processing unit, and data processing method using memory unit type |
US6510501B1 (en) | 1999-05-11 | 2003-01-21 | National Semiconductor Corporation | Non-volatile memory read/write security protection feature selection through non-volatile memory bits |
US6779107B1 (en) | 1999-05-28 | 2004-08-17 | Ati International Srl | Computer execution by opportunistic adaptation |
EP1058216B1 (de) | 1999-06-04 | 2002-12-11 | D'Udekem D'Acoz, Xavier Guy Bernard | Speicherkarte |
JP2001051904A (ja) * | 1999-08-11 | 2001-02-23 | Hitachi Ltd | 不揮発性半導体メモリを用いた外部記憶装置 |
US6549959B1 (en) | 1999-08-30 | 2003-04-15 | Ati International Srl | Detecting modification to computer memory by a DMA device |
JP2001188686A (ja) * | 1999-10-22 | 2001-07-10 | Sony Corp | データ書換装置、制御方法および記録媒体 |
US6757824B1 (en) * | 1999-12-10 | 2004-06-29 | Microsoft Corporation | Client-side boot domains and boot rules |
US6775757B1 (en) * | 1999-12-14 | 2004-08-10 | Genesis Microchip Inc. | Multi-component processor |
US6920543B1 (en) * | 1999-12-14 | 2005-07-19 | Genesis Microchip, Inc. | Method and apparatus for performing distributed processing of program code |
US6738884B1 (en) | 1999-12-14 | 2004-05-18 | Genesis Microchip Inc. | Method and apparatus for processing data with semaphores |
US6424975B1 (en) | 2000-01-07 | 2002-07-23 | Trg Products, Inc. | FAT file system in palm OS computer |
US6934832B1 (en) | 2000-01-18 | 2005-08-23 | Ati International Srl | Exception mechanism for a computer |
WO2001095115A1 (fr) * | 2000-06-02 | 2001-12-13 | Hitachi, Ltd. | Memoire permanente a semi-conducteur et procede de gestion de l'information dans un systeme de distribution de l'information |
US6681304B1 (en) * | 2000-06-30 | 2004-01-20 | Intel Corporation | Method and device for providing hidden storage in non-volatile memory |
JP4489915B2 (ja) * | 2000-07-31 | 2010-06-23 | 大日本印刷株式会社 | 暗証コード照合機能をもった携帯型情報処理装置 |
KR20020016430A (ko) † | 2000-08-25 | 2002-03-04 | 윤종용 | 멀티미디어 모듈러 카드와 모듈러 카드 운영장치 및통합형 멀티미디어 시스템 |
US6938164B1 (en) | 2000-11-22 | 2005-08-30 | Microsoft Corporation | Method and system for allowing code to be securely initialized in a computer |
US7283975B2 (en) * | 2001-02-05 | 2007-10-16 | Broughton W Curtis | System and method for tracking and managing construction projects |
JP2002245023A (ja) * | 2001-02-16 | 2002-08-30 | Mitsubishi Electric Corp | マイクロコンピュータ |
US7024532B2 (en) * | 2001-08-09 | 2006-04-04 | Matsushita Electric Industrial Co., Ltd. | File management method, and memory card and terminal apparatus that make use of the method |
US7237126B2 (en) * | 2001-09-28 | 2007-06-26 | Hewlett-Packard Development Company, L.P. | Method and apparatus for preserving the integrity of a management subsystem environment |
US7159240B2 (en) * | 2001-11-16 | 2007-01-02 | Microsoft Corporation | Operating system upgrades in a trusted operating system environment |
US7137004B2 (en) * | 2001-11-16 | 2006-11-14 | Microsoft Corporation | Manifest-based trusted agent management in a trusted operating system environment |
US7243230B2 (en) * | 2001-11-16 | 2007-07-10 | Microsoft Corporation | Transferring application secrets in a trusted operating system environment |
US7783901B2 (en) * | 2001-12-05 | 2010-08-24 | At&T Intellectual Property Ii, L.P. | Network security device and method |
EP1355268B1 (de) * | 2002-02-28 | 2006-04-05 | Matsushita Electric Industrial Co., Ltd. | Speicherkarte |
US7487365B2 (en) * | 2002-04-17 | 2009-02-03 | Microsoft Corporation | Saving and retrieving data based on symmetric key encryption |
US7890771B2 (en) | 2002-04-17 | 2011-02-15 | Microsoft Corporation | Saving and retrieving data based on public key encryption |
US6715085B2 (en) * | 2002-04-18 | 2004-03-30 | International Business Machines Corporation | Initializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function |
US7266842B2 (en) * | 2002-04-18 | 2007-09-04 | International Business Machines Corporation | Control function implementing selective transparent data authentication within an integrated system |
US6851056B2 (en) | 2002-04-18 | 2005-02-01 | International Business Machines Corporation | Control function employing a requesting master id and a data address to qualify data access within an integrated system |
US7089419B2 (en) | 2002-04-18 | 2006-08-08 | International Business Machines Corporation | Control function with multiple security states for facilitating secure operation of an integrated system |
US7149862B2 (en) | 2002-11-18 | 2006-12-12 | Arm Limited | Access control in a data processing apparatus |
GB2396034B (en) * | 2002-11-18 | 2006-03-08 | Advanced Risc Mach Ltd | Technique for accessing memory in a data processing apparatus |
KR101065904B1 (ko) | 2003-09-02 | 2011-09-19 | 소니 에릭슨 모빌 커뮤니케이션즈 에이비 | 두 메모리 사이의 보안성 데이터 전송 |
ATE355565T1 (de) * | 2003-09-02 | 2006-03-15 | Sony Ericsson Mobile Comm Ab | Übertragung von sicherheitsrelevanten daten zwischen zwei speichern |
US7530108B1 (en) | 2003-09-15 | 2009-05-05 | The Directv Group, Inc. | Multiprocessor conditional access module and method for using the same |
US7461268B2 (en) * | 2004-07-15 | 2008-12-02 | International Business Machines Corporation | E-fuses for storing security version data |
US20060236026A1 (en) * | 2005-04-15 | 2006-10-19 | Jens Hempel | Method and system for allocating, accessing and de-allocating storage space of a memory card |
US9497022B2 (en) * | 2005-05-24 | 2016-11-15 | Broadcom Corporation | Method and system for improved fault tolerance in distributed customization controls using non-volatile memory |
WO2007048287A1 (fr) * | 2005-10-28 | 2007-05-03 | Chipsbank Technologies (Shenzhen) Co., Limited | Dispositif mémoire avec puce de commande à fonction de configuration compatible, et sa méthode de fabrication |
WO2007082900A1 (fr) * | 2006-01-19 | 2007-07-26 | Gemplus | Dispositif electronique portable apte a fournir un contenu dynamique |
US20080127162A1 (en) * | 2006-11-29 | 2008-05-29 | Sap Ag | Method and apparatus for configuring application software |
JP4457241B2 (ja) * | 2007-06-28 | 2010-04-28 | フェリカネットワークス株式会社 | 情報処理システム、リーダ/ライタ、情報処理装置、アクセス制限管理方法、およびプログラム |
CN101354754B (zh) * | 2007-07-26 | 2011-03-16 | 上海瀚银信息技术有限公司 | 一种内嵌cpu ic的智能存储卡及其应用 |
US20100274948A1 (en) * | 2007-12-13 | 2010-10-28 | Thomson Licensing | Copy-protected software cartridge |
EP2083355A1 (de) * | 2008-01-25 | 2009-07-29 | THOMSON Licensing | Softwarekassette mit Kopierschutz |
DE102009006487A1 (de) | 2009-01-28 | 2010-07-29 | Vodafone Holding Gmbh | Chipkarte mit Speicher |
JP2012027929A (ja) * | 2011-08-31 | 2012-02-09 | Sandisk Il Ltd | スマートカード上の内部アプリケーションのローディング |
EP3070607B1 (de) * | 2015-03-20 | 2020-12-09 | Virtual Open Systems | Rechnerknoten zur unterstützung virtueller maschinen und dienste |
US10649915B1 (en) * | 2018-10-28 | 2020-05-12 | Virtual Open Systems | Disaggregated computing architecture using device pass-through wherein independent physical address spaces between systems nodes are implemented in a single execution environment |
AU2019445436A1 (en) | 2019-05-10 | 2022-01-20 | Qrc Aaa Sarl | Quantum-resistant sim card |
WO2022159107A1 (en) * | 2021-01-22 | 2022-07-28 | Hewlett-Packard Development Company, L.P. | Application security and mobility |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4829169A (en) * | 1985-07-01 | 1989-05-09 | Toppan Moore Company, Inc. | IC card having state marker for record access |
JP2664137B2 (ja) * | 1985-10-29 | 1997-10-15 | 凸版印刷株式会社 | Icカード |
JP2695855B2 (ja) * | 1988-08-26 | 1998-01-14 | 株式会社東芝 | 携帯可能電子装置 |
JPH0812646B2 (ja) * | 1989-03-03 | 1996-02-07 | 三菱電機株式会社 | 半導体集積回路 |
JPH02297235A (ja) * | 1989-03-22 | 1990-12-07 | Nec Corp | メモリデータ保護回路 |
US5237609A (en) * | 1989-03-31 | 1993-08-17 | Mitsubishi Denki Kabushiki Kaisha | Portable secure semiconductor memory device |
JPH02278446A (ja) * | 1989-04-20 | 1990-11-14 | Nec Ibaraki Ltd | メモリアクセス制御回路 |
JP2682700B2 (ja) * | 1989-05-09 | 1997-11-26 | 三菱電機株式会社 | Icカード |
FR2667417B1 (fr) * | 1990-10-02 | 1992-11-27 | Gemplus Card Int | Carte a microprocesseur concue pour recevoir des programmes multiples en memoire programmable. |
FR2667714A1 (fr) * | 1990-10-09 | 1992-04-10 | Gemplus Card Int | Procede pour repartir la memoire d'un circuit integre entre plusieurs applications. |
US5263147A (en) * | 1991-03-01 | 1993-11-16 | Hughes Training, Inc. | System for providing high security for personal computers and workstations |
FR2686171B1 (fr) * | 1992-01-14 | 1996-09-06 | Gemplus Card Int | Carte a memoire de masse pour microordinateur avec facilites d'execution de programmes internes. |
US5293424A (en) * | 1992-10-14 | 1994-03-08 | Bull Hn Information Systems Inc. | Secure memory card |
-
1994
- 1994-01-14 US US08/181,684 patent/US5491827A/en not_active Expired - Lifetime
-
1995
- 1995-01-13 DE DE69522998T patent/DE69522998T2/de not_active Expired - Lifetime
- 1995-01-13 CN CN95190029A patent/CN1053509C/zh not_active Expired - Fee Related
- 1995-01-13 WO PCT/IB1995/000032 patent/WO1995019608A1/en active IP Right Grant
- 1995-01-13 PT PT95904678T patent/PT689702E/pt unknown
- 1995-01-13 ES ES95904678T patent/ES2164144T3/es not_active Expired - Lifetime
- 1995-01-13 JP JP7518939A patent/JP2755828B2/ja not_active Expired - Lifetime
- 1995-01-13 EP EP95904678A patent/EP0689702B1/de not_active Expired - Lifetime
- 1995-01-13 SG SG1996005417A patent/SG49773A1/en unknown
- 1995-01-13 CA CA002158265A patent/CA2158265C/en not_active Expired - Fee Related
- 1995-01-13 AT AT95904678T patent/ATE206543T1/de not_active IP Right Cessation
- 1995-01-13 KR KR1019950703947A patent/KR100205740B1/ko not_active IP Right Cessation
- 1995-01-13 DK DK95904678T patent/DK0689702T3/da active
- 1995-04-29 TW TW084104272A patent/TW432283B/zh not_active IP Right Cessation
- 1995-09-13 FI FI954299A patent/FI112714B/fi not_active IP Right Cessation
- 1995-09-13 NO NO19953614A patent/NO311545B1/no not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8950006B2 (en) | 2006-11-16 | 2015-02-03 | Giesecke & Devrient Gmbh | Method for access to a portable memory data support with auxiliary module and portable memory data support |
DE102006054835A1 (de) * | 2006-11-21 | 2008-05-29 | Giesecke & Devrient Gmbh | Tragbarer Datenträger |
Also Published As
Publication number | Publication date |
---|---|
KR960701414A (ko) | 1996-02-24 |
JPH08506915A (ja) | 1996-07-23 |
NO953614D0 (no) | 1995-09-13 |
NO311545B1 (no) | 2001-12-03 |
FI954299A0 (fi) | 1995-09-13 |
ATE206543T1 (de) | 2001-10-15 |
JP2755828B2 (ja) | 1998-05-25 |
DK0689702T3 (da) | 2001-12-03 |
CA2158265C (en) | 1997-01-14 |
KR100205740B1 (ko) | 1999-07-01 |
CN1053509C (zh) | 2000-06-14 |
TW432283B (en) | 2001-05-01 |
ES2164144T3 (es) | 2002-02-16 |
CN1122164A (zh) | 1996-05-08 |
EP0689702B1 (de) | 2001-10-04 |
SG49773A1 (en) | 1998-06-15 |
FI954299A (fi) | 1995-09-13 |
CA2158265A1 (en) | 1995-07-20 |
PT689702E (pt) | 2002-03-28 |
DE69522998D1 (de) | 2001-11-08 |
NO953614L (no) | 1995-11-13 |
WO1995019608A1 (en) | 1995-07-20 |
EP0689702A1 (de) | 1996-01-03 |
FI112714B (fi) | 2003-12-31 |
US5491827A (en) | 1996-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69522998T2 (de) | Gesicherte anwendungskarte zur aufteilung von anwendungsdaten und prozeduren zwischen mehreren mikroprozessoren | |
DE69325072T2 (de) | Gesicherte Speicherkarte | |
DE69823649T2 (de) | Multi-anwendungs ic-kartensystem | |
DE69807210T2 (de) | Gesichertes mehrzweckkartensystem und -verfahren | |
DE69332621T2 (de) | Verfahren zum Erfassen von Software und Informationssystem zur Anwendung dieses Verfahrens | |
DE69529103T2 (de) | Verfahren zum Handhaben der Sicherheit einer Speicherkarte, und Speicherkarte und geeignete Transaktionsvorrichtung | |
DE69531082T2 (de) | Verfahren und Vorrichtung mit einem Verschlüsselungskopfteil, die es ermöglicht, Software zu erproben | |
EP0355372B1 (de) | Datenträger-gesteuertes Endgerät in einem Datenaustauschsystem | |
DE69531077T2 (de) | Verfahren und Vorrichtung mit Benutzereinwirkung der Art Erproben-und-Kaufen, die es ermöglicht, Software zu erproben | |
DE69524482T2 (de) | Gesicherte speicherkarte mit programmierter gesteuerter sicherheits-zugriffs-kontrolle | |
DE19803218A1 (de) | Informationsspeichermedium und zugehöriges Schutzverfahren | |
DE69012692T2 (de) | Karte mit festverdrahteter Mikroschaltung und Verfahren zur Durchführung einer Transaktion zwischen einer solchen Karte und einem Endgerät. | |
DE68919483T2 (de) | Chipkarten. | |
DE3700663C2 (de) | ||
DE69021935T2 (de) | Verfahren zum Überprüfen der Integrität eines Programms oder von Daten und Einrichtung zur Durchführung dieses Verfahrens. | |
JPH0855175A (ja) | スマートカードと端末装置とを結合した処理システムおよび当該システムに対応するスマートカード | |
DE69821545T2 (de) | Elektronische Geldkarte, Empfangs-/Auszahlungsmaschine für elektronisches Geld und Editiervorrichtung für eine elektronische Geldkarte | |
EP1326256A2 (de) | Verfahren und Anordnung zur Programmierung und Verifizierung von EEPROM-Pages sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium | |
EP0766211A2 (de) | Multifunktionale Chipkarte | |
DE20314722U1 (de) | Vorrichtung für sicheren Zugriff auf Digitalmedien-Inhalte, virtueller Multischnittstellen-Treiber und System für sicheren Zugriff auf Digitalmedien-Inhalte | |
JPS63503335A (ja) | ポータブル データ キャリヤのための保安ファイル システム | |
DE102004057805A1 (de) | Speichervorrichtung mit einem Fingerabdrucksensor sowie Verfahren zum Schützen von Daten in einer solchen Speichervorrichtung | |
DE69904446T2 (de) | Speicherkarte | |
JPS6210745A (ja) | メモリへのアクセスのコントロ−ル方法および装置 | |
DE602004010458T2 (de) | Halbleiterspeicherkarte und rechnerlesbares programm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: CP8 TECHNOLOGIES, LOUVECIENNES, FR |