DE60013424T2 - Datenverarbeitungsvorrichtung und integrierter Schaltkreis - Google Patents

Datenverarbeitungsvorrichtung und integrierter Schaltkreis Download PDF

Info

Publication number
DE60013424T2
DE60013424T2 DE2000613424 DE60013424T DE60013424T2 DE 60013424 T2 DE60013424 T2 DE 60013424T2 DE 2000613424 DE2000613424 DE 2000613424 DE 60013424 T DE60013424 T DE 60013424T DE 60013424 T2 DE60013424 T2 DE 60013424T2
Authority
DE
Germany
Prior art keywords
encryption
data
address
external
circuit
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
Application number
DE2000613424
Other languages
English (en)
Other versions
DE60013424D1 (de
Inventor
Yusuke Kawasaki-shi Kawasaki
Hiroshi Kawasaki-shi Sakurai
Shigeru Kawasaki-shi Hashimoto
Koken Kawasaki-shi Yamamoto
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of DE60013424D1 publication Critical patent/DE60013424D1/de
Application granted granted Critical
Publication of DE60013424T2 publication Critical patent/DE60013424T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/75Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography

Description

  • Die vorliegende Erfindung betrifft sowohl eine Verarbeitungsvorrichtung, welche umfasst: eine interne Schaltung, die eine CPU und interne Geräte aufweist, und eine externe Schaltung, welche externe, außerhalb der internen Schaltung befindliche Geräte enthält, als auch einen integrierten Schaltkreis, in welchen eine derartige Verarbeitungsvorrichtung eingebaut ist.
  • Mit der jüngsten Entwicklung der Hochintegration ist es möglich geworden, eine CPU, welche Programme ausführt, einen Speicher, welcher die von der CPU ausgeführten Programme speichert, und verschiedene weitere Geräte auf einem einzigen Chip zu integrieren, was stark dazu beiträgt, eine Vorrichtung in ihren Abmessungen klein zu gestalten und eine Kostenherabsetzung u. dergl. zu erzielen. Um ein derartiges hochintegriertes Bauteil (LSI-Bauteil) herzustellen, genügt es, einen Speicher, der Programme speichert, auf einem LSI-Chip unterzubringen, falls ein System ungeachtet der Nutzer dieselben Programme ausführt und es nicht erforderlich ist, die Programme nach ihrer Ausführung zu wechseln. Falls es jedoch erforderlich ist, dass entsprechend den Nutzern unterschiedliche Programme auszuführen sind oder ein Programm gewechselt werden muss, während es abläuft, dann ist es wünschenswert, die Hochintegration dergestalt vorzunehmen, dass ein externer Speicher zusätzlich außerhalb des die obige Struktur (engl.: constitution) aufweisenden LSI-Bauteils vorgesehen wird und in dem externen Speicher Programme gespeichert werden, die während ihrer Benutzung gewechselt werden können, oder Programme, die sich entsprechend den Nutzern unterscheiden.
  • Im Falle eines Systems, welches dazu imstande ist, einen derartigen externen Speicher außerhalb des LSI-Bauteils zuzufügen, besteht mittlerweile jedoch eine Wahrscheinlichkeit dafür, dass der Inhalt des externen Speichers unzulässigerweise überschrieben wird oder der externe Speicher durch einen Speicher ersetzt wird, welcher ein unzulässiges Programm speichert und dieselbe Spezifikation wie diejenige des externen Speichers aufweist, was zur Folge hat, dass auf wichtige Programme oder auf im internen Speicher gespeicherte Daten unberechtigt zugegriffen wird und der Inhalt der Programme oder die Daten unberechtigt interpretiert werden. Das Folgende stellt ein Beispiel für diesen Fall dar.
  • Zunehmend Verbreitung finden in jüngster Zeit IC-Karten und Magnetkarten, von denen jede einen Bargeldwert oder einen einem Bargeldwert entsprechenden Punktwert hat. Infolgedessen ist es von dringender Notwendigkeit, die Datensicherheit dergestalt zu gewährleisten, dass die Herstellung oder die Fälschung von Karten verhindert wird. Zu diesem Zweck wurden in der Vergangenheit Verfahren zur Verhinderung des Reverse Engineering einer Vorrichtung in Angriff genommen. Trotz dieser Versuche ist gegenwärtig die Situation so, dass unerlaubte ROMs und dergleichen hergestellt werden und dass in zunehmendem Maße Vorrichtungen gegen den Willen der Entwickler missbräuchlich benutzt werden.
  • Dementsprechend ist es wünschenswert, eine Verarbeitungsvorrichtung und einen integrierten Schaltkreis vorzusehen, die so ausgelegt sind, dass ein unerlaubter Zugriff und ein Reverse Engineering verhindert werden.
  • In dieser Hinsicht offenbaren EP-A-0720098 und US-A-5081675 eine Verarbeitungsvorrichtung, welche umfasst: eine interne Schaltung, die eine CPU, welche Programme ausführt, mindestens ein internes Gerät, welches eine vorbestimmte Funktion hat, und Bus-Leitungsmittel, welche die CPU mit dem internen Gerät verbinden, sich nach außen erstrecken und eine Adresse und Daten übertragen, enthält, und eine externe Schaltung, welche sich außerhalb eines sich nach außen erstreckenden Teils der Bus-Leitungsmittel befindet und mindestens ein externes Gerät enthält, welches eine vorbestimmte Funktion hat, wobei die interne Schaltung einen Verschlüsselungsabschnitt enthält, welcher an einem Eingang zu einer externen Seite zwischengeschaltet ist und die Adresse und die Daten auf den Bus-Leitungsmitteln durch Verschlüsselungsmuster verschlüsselt entsprechend einer Anzahl von Bereichen, die von einem Adressenraum abgeteilt sind, welcher der Gesamtheit aus mindestens einem externen Gerät zugeordnet ist.
  • US-A-5515540 und EP-A-1093056 sind für die von der vorliegenden Erfindung aufgezeigte Problematik ebenfalls relevant.
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung wird eine Verarbeitungsvorrichtung vorgesehen, welche umfasst: eine interne Schaltung, die eine CPU, welche Programme ausführt, mindestens ein internes Gerät, welches eine vorbestimmte Funktion hat, und Busleitungsmittel, welche die CPU mit dem internen Gerät verbinden, sich nach außen erstrecken und eine Adresse und Daten übertragen, enthält, und eine externe Schaltung, die außerhalb eines sich nach außen erstreckenden Teils der besagten Busleitungsmittel vorgesehen ist und mindestens ein externes Gerät enthält, welches eine vorbestimmte Funktion hat, wobei die interne Schaltung einen Verschlüsselungsabschnitt aufweist, der an einem Eingang zu einer externen Seite zwischengeschaltet ist und die Adresse und die Daten auf den Busleitungsmitteln durch Verschlüsselungsmuster verschlüsselt entsprechend einer Anzahl von Bereichen, die von einem Adressenraum abgeteilt sind, welcher der Gesamtheit aus mindestens einem externen Gerät zugeordnet ist; dadurch gekennzeichnet, dass der Verschlüsselungsabschnitt an den sich nach außen erstreckenden Teil der Busleitungsmittel eine Scheinadresse und Scheindaten ausgibt zu einer Zeit, zu der nicht auf die externe Schaltung zugegriffen wird.
  • Da der Verschlüsselungsabschnitt an den sich nach außen erstreckenden Teil der Busleitungsmittel zu einer Zeit, zu der nicht auf die externe Schaltung zugegriffen wird, eine Scheinadresse und Scheindaten ausgibt, wird eine unerlaubte Interpretation schwieriger gemacht.
  • Hier enthalten die vom Verschlüsselungsabschnitt übernommenen Verschlüsselungsmuster ein Verschlüsselungsmuster, in welchem weder die Adresse noch die Daten verschlüsselt sind.
  • Wie weiter oben festgestellt worden ist, wird die Interpretierung der Verschlüsselungen dadurch erschwert, dass der Adressenraum in eine Anzahl von Bereichen aufgeteilt wird und die Adresse und die Daten durch die Muster, welche sich entsprechend den aufgeteilten Bereichen unterscheiden, verschlüsselt werden.
  • In der weiter oben angeführten ersten Ausführungsform einer Verarbeitungsvorrichtung der vorliegenden Erfindung ist vorzuziehen, dass die externe Schaltung eine Anzahl von externen Geräten enthält und der Verschlüsselungsabschnitt die Verschlüsselung unter Benutzung von Verschlüsselungsmustern entsprechend der Anzahl der externen Geräte ausführt.
  • Indem man so verfährt, ist es möglich, die Verschlüsselung entsprechend der Eigenschaft des externes Gerätes wie folgt auszuführen. Falls beispielsweise ein Flash-ROM als eines der externen Geräte vorhanden ist, werden sowohl die Adresse als auch die Daten für den Flash-ROM verschlüsselt. Wie für einen RAM als einem der externen Geräte, welches kontinuierliche Adressen mit hoher Geschwindigkeit lesen kann, werden nur die Daten verschlüsselt oder die Adressen verschlüsselt, aber die Niedrigbitseite der kontinuierlich gelesenen Adressen werden nicht verschlüsselt. Falls ein I/O-Gerät als eines der externen Geräte vorhanden ist, werden weder die Adresse noch die Daten verschlüsselt.
  • Weiterhin ist in der weiter vorn angeführten Ausführungsform einer Verarbeitungsvorrichtung der vorliegenden Erfindung vorzuziehen, dass die CPU einen Takt zugeführt bekommt und die Programme synchron mit diesem zugeführten Takt ausführt und der Verschlüsselungsabschnitt einen Takt zugeführt bekommt und die Verschlüsselung synchron mit diesem zugeführten Takt ausführt und eine Taktgebereinheit vorhanden ist, damit dem Verschlüsselungsabschnitt ein Takt mit einer höheren Geschwindigkeit zugeführt wird als die Geschwindigkeit des Taktes, welcher der CPU zugeführt wird.
  • Dies ermöglicht eine komplizierte Verschlüsselung.
  • Darüber hinaus ist bei einer Verarbeitungsvorrichtung der vorliegenden Erfindung vorzuziehen, dass die Verarbeitungsvorrichtung Verschlüsselungsmuster-Bestimmungsmittel umfasst zum Erkennen einer Struktur der externen Schaltung und zum Bestimmen eines Verschlüsselungsmusters des Verschlüsselungsabschnittes entsprechend der Struktur der externen Schaltung.
  • Durch das Vorhandensein dieses Verschlüsselungsmuster-Bestimmungsmittels wird es unnötig, dass der Bediener solche Operationen ausführt wie beispielsweise die Bestimmung der Verschlüsselungsmuster entsprechend den unterschiedlichen Strukturen der externen Schaltung.
  • Weiterhin ist in der weiter vorn angeführten Ausführungsform einer Verarbeitungsvorrichtung der vorliegenden Erfindung vorzuziehen, dass der Verschlüsselungsabschnitt die Adresse und die Daten auf der Busleitung durch Verschlüsselungsmuster verschlüsselt sowohl entsprechend der Anzahl der Bereiche, die von dem Adressenraum abgeteilt sind, welcher der Gesamtheit aus nicht weniger als einem externen Gerät zugeordnet ist, als auch entsprechend den von der CPU ausgeführten Anwendungsprogrammen.
  • Dies macht die Verschlüsselungsmuster komplizierter und die unerlaubte Interpretation schwieriger.
  • Weiterhin ist in der weiter vorn angeführten Ausführungsform einer Verarbeitungsvorrichtung der vorliegenden Erfindung vorzuziehen, dass ein Entschlüsselungsabschnitt an den sich nach außen erstreckenden Teil der Busleitung angeschlossen ist und die verschlüsselte Adresse und die Daten auf der Busleitung in eine Adresse und Daten, die unverschlüsselt sind, rückführt.
  • Falls ein Austesten vorgenommen werden soll, ohne dass dieser Entschlüsselungsabschnitt vorhanden ist, wird dieses Austesten äußerst schwierig, da die Adresse und die Daten verschlüsselt sind. In Anbetracht dessen wird dieser Entschlüsselungsabschnitt vorgesehen, wodurch ermöglicht wird, das Austesten zum Zeitpunkt der Entwicklung der Verarbeitungsvorrichtung bequem durchzuführen.
  • Dieser Entschlüsselungsabschnitt wird nach der Ausführung des Austestens unnötig. Daher ist es vorzuziehen, dass der Entschlüsselungsabschnitt von der Verarbeitungsvorrichtung abgetrennt wird, an einen außer Betrieb gesetzten Zustand angekoppelt wird oder zerstört wird.
  • Zusätzlich ist in der weiter vorn angeführten Ausführungsform einer Verarbeitungsvorrichtung der vorliegenden Erfindung vorzuziehen, dass diese Verarbeitungsvorrichtung Verschlüsselungsmuster-Änderungsmittel umfasst zum Ändern eines Verschlüsselungsmusters immer dann, wenn eine vorbestimmte Initialisierungsoperation ausgeführt wird für einen Bereich aus der Anzahl von Bereichen, die von dem Adressenraum abgeteilt sind, welcher der Gesamtheit aus mindestens einem externen Gerät zugeordnet ist.
  • Durch Zurücksetzen des Verschlüsselungsmusters bei einer vorbestimmten Initialisierungsoperation, beispielsweise wenn die Verarbeitungsvorrichtung in Betrieb genommen wird oder ihr Rücksetzen und dergl. erfolgt, wird eine unerlaubte Interpretation schwieriger gestaltet, und die Sicherheit erhöht sich dadurch.
  • Auch ist in der weiter vorn angeführten Ausführungsform einer Verarbeitungsvorrichtung der vorliegenden Erfindung vorzuziehen, dass der Verschlüsselungsbereich ein Verschlüsselungsmuster übernimmt, in welchem verschlüsselte Daten entsprechend der Adresse geändert werden für einen Bereich aus der Anzahl von Bereichen, die von dem Adressenraum abgeteilt sind, welcher der Gesamtheit aus mindestens einem externen Gerät zugeordnet ist, um dadurch die Daten zu verschlüsseln.
  • Dadurch dass man die Funktion von Adressen als eine Verschlüsselungsfunktion zur Verschlüsselung der Daten übernimmt, wird eine komplizierte Verschlüsselung ermöglicht, eine unerlaubte Interpretation wird schwieriger gestaltet, und die Datensicherheit erhöht sich dadurch.
  • Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird ein integrierter Schaltkreis vorgestellt, welcher eine Verarbeitungsvorrichtung gemäß dem ersten Aspekt der vorliegenden Erfindung enthält.
  • Ein integrierter Schaltkreis, welcher eine Ausführungsform der vorliegenden Erfindung darstellt, hat die obige Struktur und zeigt dieselbe Funktion und Vorteile wie diejenigen der Verarbeitungsvorrichtung, welche eine Ausführungsform der vorliegenden Erfindung darstellt. Zusätzlich erschwert der integrierte Schaltkreis die Interpretation der Schaltungsanordnung und dergl. Auch in dieser Hinsicht trägt der integrierte Schaltkreis dazu bei, die Sicherheit zu erhöhen.
  • Nun soll beispielhaft Bezug auf die beigefügten Zeichnungen genommen werden, in denen:
  • 1 ein Blockschaltbild der ersten Ausführungsform einer Verarbeitungsvorrichtung gemäß der vorliegenden Erfindung ist;
  • 2 ein Speicherabbild der in 1 dargestellten Verarbeitungsvorrichtung zeigt;
  • 3 ein Flussdiagramm eines Initialisierungsprogramms ist, welches ausgeführt wird, wenn die in 1 dargestellte Verarbeitungsvorrichtung in Betrieb genommen wird.
  • Nachfolgend werden die Ausführungsformen der vorliegenden Erfindung beschrieben.
  • 1 ist ein Blockschaltbild, welches eine Ausführungsform einer Verarbeitungsvorrichtung gemäß der vorliegenden Erfindung zeigt.
  • Eine Verarbeitungsvorrichtung 1, wie sie in 1 dargestellt ist, besteht aus einer internen Schaltung 100, welche in das Innere eines LSI-Bauteils 10 eingebaut ist, einer externen Schaltung 200, die sich außerhalb des LSI-Bauteils 10 befindet, und weiteren Schaltungen, zu denen Oszillatoren 301 und 302 u. dergl. gehören. Dieses LSI-Bauteil 10 entspricht einer Ausführungsform eines integrierten Schaltkreises der vorliegenden Erfindung.
  • Die im LSI-Bauteil 10 vorhandene interne Schaltung 100 enthält eine zentrale Verarbeitungseinheit (CPU) 101 sowie einen internen Speicher 102, ein Verschlüsselungsinformationsregister 103, einen Adressendekodierer 104 und eine Peripherieschaltung 105, die interne Geräte gemäß der vorliegenden Erfindung sind. Die CPU 101. und die verschiedenen internen Geräte sind über eine Busleitung 110 untereinander verbunden. Diese Busleitung besteht aus einem Adressenbus 111 und einem Datenbus 112 und erstreckt sich aus dem LSI-Bauteil hinaus. Verschiedene externe Geräte sind an einen Teil 110a der Busleitung 110, der sich nach außen erstreckt, angeschlossen. Die externen Geräte werden später beschrieben.
  • Die innerhalb des LSI-Bauteils 10 gebildete interne Schaltung 100 weist einen Verschlüsselungsabschnitt 120 auf, welcher an einem Eingang zu einer Außenseite zwischengeschaltet ist. Dieser Verschlüsselungsabschnitt 120 besteht aus einer Verschlüsselungsschaltung 121, einer Bus-Schnittstelle 122 und einem Zufallsgenerator 123.
  • Ein Taktsignal vom Oszillator 301 wird auf die CPU 101 gegeben. Die CPU 101 führt verschiedene Programme synchron mit dem vom Oszillator 301 aufgenommenen Taktsignal aus.
  • Ein Taktsignal von einem weiteren Oszillator 302, welcher ein Taktsignal mit einer höheren Wiederholungsfrequenz als diejenige des auf die CPU 101 gegebenen Taktsignals erzeugt, wird auf die Verschlüsselungsschaltung 121 gegeben. Die Verschlüsselungsschaltung 121 führt einen Verschlüsselungsvorgang synchron mit dem Taktsignal mit einer höheren Wiederholungsfrequenz vom Oszillator 302 durch. Die Einzelheiten dieses Verschlüsselungsvorgangs werden später beschrieben.
  • Die obigen zwei Oszillatoren 301 und 302 erzeugen Taktsignale, die zueinander synchron sind. Daher können die Oszillatoren 301 und 302 Taktsignale erzeugen durch Unterteilung eines von einer gemeinsamen Schwingungsquelle erhaltenen Taktes hoher Geschwindigkeit.
  • An den sich nach außen erstreckenden Teil 110a der Busleitung 110 ist ferner eine Anzahl von externen Geräten angeschlossen, d. h im Fall von 1 eine Flüssigkristallanzeige (LCD) 201, eine Tastatur (KB) 202, ein Festwertspeicher (ROM) 203, ein Flash-ROM 211 und ein Direktzugriffsspeicher (RAM) 212. In 1 sind an den sich nach außen erstreckenden Teil 110a auch angeschlossen: ein Gerät 213 wie beispielsweise ein weiteres LSI-Bauteil, welches dieselbe Struktur wie das in 1 dargestellte LSI-Bauteil 10 aufweist und welches denselben Verschlüsselungsmechanismus hat wie dasjenige der internen Schaltung 100, und eine Entschlüsselungsschaltung 214 zum Austesten von Programmen, die von der CPU 101 ausgeführt werden. Das Gerät 213 und die Entschlüsselungsschaltung 214 sind in 1 zum Zweck der Beschreibung dargestellt. Das Gerät 213 wird mit dem LSI-Bauteil 10 verbunden, falls Verschlüsselungskommunikation zwischen dem LSI-Bauteil 10 und dem Gerät 213 hergestellt wird, welches eine Struktur aufweist, die derjenigen des LSI-Bauteils 10 ähnlich ist. Die Entschlüsselungsschaltung 214 wird für das Austesten von Programmen angeschlossen und wird nach Abschluss des Austestens abgetrennt.
  • Die LCD 201 und die KB 202 sowie im Fall der in 1 dargestellten Ausführungsform der ROM 303 gehören zu externen Geräten, welche weder Adressen noch Daten verschlüsseln. Der Flash-ROM 211 und der RAM dagegen gehören zu externen Geräten, welche Adressen oder Daten verschlüsseln und Zugriff auf diese haben. Hier verschlüsselt der Flash-ROM 211 nur Daten, und der RAM verschlüsselt sowohl Adressen als auch Daten. Ferner verschlüsselt das Gerät 213 sowohl Adressen als auch Daten und stellt die Verschlüsselungskommunikation mit dem LSI-Bauteil 10 her. Wenn die Entschlüsselungsschaltung 214 mit dem LSI-Bauteil 10 verbunden ist, gehört sie zu den Geräten, welche bei dieser Ausführungsform weder Adressen noch Daten verschlüsseln.
  • Hier wird die Busleitung 110 aufgeteilt in einen Teil, welcher mit der CPU 101 (die Adresse und die Daten von diesem Teil sind mit A1 bzw. D1 bezeichnet) verbunden ist, einen Teil, welcher sich zwischen der Verschlüsselungsschaltung 121 und der Bus-Schnittstelle 122 befindet (deren Adresse und Daten mit A2 bzw. D2 bezeichnet sind), und den sich aus dem LSI-Bauteil 10 hinaus erstreckenden Teil 110a (die Adresse und die Daten von diesem Teil sind mit A3 bzw. D3 bezeichnet).
  • 2 zeigt das Speicherabbild der in 1 dargestellten Verarbeitungsvorrichtung.
  • Eine Anzahl von Anwendungsprogrammen sind im Flash-ROM gespeichert, welcher eines der externen Geräte ist. Betriebssystemprogramme werden im internen Speicher, der eines der internen Geräte ist, gespeichert. Auch werden Gerätestrukturinformationen über diese Verarbeitungsvorrichtung wie z. B. die Typen von angeschlossenen externen Geräten und Speicherkapazitäten auf dem ROM gespeichert, der eines der externen Geräte ist.
  • 3 ist ein Flussdiagramm eines Initialisierungsprogramms, welches dann ausgeführt wird, wenn die in 1 dargestellte Verarbeitungsvorrichtung in Betrieb genommen wird. Dieses Initialisierungsprogramm wird im internen Speicher 102 als eines der Betriebssystemprogramme gespeichert und von der CPU 101 ausgeführt, sobald die Versorgungsspannung eingeschaltet wird.
  • Gemäß dem in 3 dargestellten Initialisierungsprogramm wird die Gerätestrukturinformation, die im ROM 203, einem der externen Geräte, gespeichert ist, (im Schritt a1) gelesen, ein Speicherabbild, wie dies in 2 dargestellt ist, wird auf der Grundlage der Information erzeugt, und ein Verschlüsselungsmuster wird für jeden Bereich des Speicherabbildes (im Schritt a2) bestimmt. Es soll angemerkt werden, dass die Verschlüsselungsmuster ein Muster enthalten, in welchem weder Adressen noch Daten verschlüsselt werden.
  • Bei diesem Initialisierungsprogramm folgen (im Schritt a3) verschiedene weitere Initialisierungsvorgänge.
  • Die Beschreibung soll nun fortgesetzt werden, wobei wieder auf die 1 Bezug genommen wird.
  • Die CPU 101 liest und schreibt Informationen unter Verwendung der Adresse A1 und der Daten D1. Auf die externen Geräte erfolgt Zugriff unter Verwendung der Adresse A3 und der Daten D3 ungeachtet dessen, ob es notwendig ist, die Geräte zu verschlüsseln oder nicht (oder es verboten ist, die Geräte zu verschlüsseln).
  • Die CPU 101 schreibt Bereichsinformationen in zu verschlüsselnde Bereiche (verschlüsselte Bereiche) und ein Verschlüsselungsmuster für jeden verschlüsselten Bereich auf dem in 2 dargestellten Speicherabbild in ein Verschlüsselungsinformationsregister 103.
  • Der Adressendekodierer 104 gibt die Adresse A1 ein und erhält die Bereichsinformation, welche die zu verschlüsselnden Bereiche aus dem Verschlüsselungsinformationsregister 103 angibt. Dann gibt der Adressendekodierer 104 Chip-Auswahlsignale CS0 bis CS6 an ein Zugriffszielgerät aus und gibt an die Verschlüsselungsschaltung 121 ein Verschlüsselungssteuersignal Crp aus, das angibt, welches Gerät ein Zugriffsziel ist und ob es erforderlich ist oder nicht, die Verschlüsselung auszuführen.
  • Die Verschlüsselungsschaltung 121 erhält das Verschlüsselungssteuersignal Crp vom Adressendekodierer, führt die Verschlüsselung entsprechend der verschlüsselten Bereiche aus, falls es erforderlich ist, die Adresse A1 und die Daten D1 auf der Grundlage der im Verschlüsselungsmuster-Informationsregister 103 gespeicherten Verschlusselungsmusterinformationen zu verschlüsseln, und gibt die Adresse A2 und die Daten D2 aus. Die Adresse A2 und die Daten D2 werden außerhalb des LSI-Bauteils 10 als Adresse A3 und Daten D3 über die Bus-Schnittstelle 123 ausgegeben.
  • Ein externes Bus-Zugriffssignal, welches angibt, ob auf ein externes Gerät zugegriffen werden soll oder nicht, wird von der CPU 101 an die Bus-Schnittstelle 122 übertragen. Die Bus-Schnittstelle 122 gibt die Adresse A2 und die Daten D2 aus, die außerhalb der Verschlüsselungsschaltung 121 als externe Adresse A3 und Daten D3 ausgegeben werden, wenn Zugriff auf das externe Gerät angefordert wird, erzeugt eine Scheinadresse und Scheindater auf der Grundlage der Zufallszahl vom Zufallsgenerator 123 und gibt die Scheinadresse und die Scheindaten. als externe Adresse A3 und Daten D3 aus, wenn kein Zugriff auf das externe Gerät verlangt wird. Dies gestaltet eine unerlaubte Interpretation schwieriger.
  • Die Umwandlung von Adressen und Daten von innen nach außen ist beschrieben worden. Was die Daten D3 betrifft, die vom externen -Flash-Speicher 211, RAM 212, ROM 203 und dergl. gelesen werden, so werden diese in die interne Seite als Daten D2 geholt. Wenn diese Daten verschlüsselte Daten sind, dann entziffert die Verschlüsselungsschaltung 121 die verschlüsselten Daten und überträgt diese Daten an die CPU 101 und dergl. als Daten D1, die nicht verschlüsselt sind.
  • Bei dieser Ausführungsform wird als Verschlüsselungsmuster ein solches Verschlüsselungsmuster übernommen, in welchem weder Adressen noch Daten verschlüsselt sind. Zusätzlich werden die folgenden Verschlüsselungsmuster übernommen:
    • (1) Typ 1 A3 = A1 XOR p1 D3 = D1 XOR p1
    • (2) Typ 2 A3 = A1 D3 =A1 + D1 + p1
    • (3) Typ 3
  • Der höhere Wert und der niedrigere Wert der Daten werden im Ergebnis der Operation vom Typ 2 ersetzt.
  • Bei obigen Typen bezeichnet der Bezugswert p1 eine geeignete Konstante, welche beispielsweise durch Zufallszahlen erhalten wird.
  • A XOR B bedeutet die Ausführung einer Exklusiv-OR-Operation für Bits, welche A und B entsprechen, und A + B bedeutet eine Additionsoperation, wenn A und B als numerische Werte vorausgesetzt werden.
  • Wie bereits weiter oben mit Bezug auf 3 beschrieben worden ist, liest in der Initialisierungsoperation, wenn die Versorgungsspannung zugeschaltet wird, die CPU 101 die Gerätestrukturinformationen, die im ROM 203 gespeichert sind, der eines der externen Geräte ist, erstellt ein Speicherabbild, wie es in 2 dargestellt ist, und bestimmt ein Verschlüsselungsmuster für jeden verschlüsselten Bereich. Der Flash-ROM 211 übernimmt das Verschlüsselungsmuster von beispielsweise der obigen Position (2), in welchem die Adresse nicht verschlüsselt ist und nur die Daten verschlüsselt sind, und der RAM 212 übernimmt das Verschlüsselungsmuster von beispielsweise der obigen Position (1), in welcher sowohl die Adresse als auch die Daten verschlüsselt sind.
  • Der RAM 212 übernimmt das Verschlüsselungsmuster vom Typ 1 in obiger Position (1). Falls vorausgesetzt wird, dass p1 = 0 × 5555 (0 × bedeutet, dass die folgende Ziffernangabe '5555' eine hexadezimale Angabe ist), werden daher sowohl die Adresse als auch die Daten zu Werten, die von der ursprünglichen Adresse und Daten völlig verschieden sind, wie nachfolgend dargestellt ist: A3 (0 × 5455) = A1 (0 × 0100) XOR p1 (0 × 5555) D3 (0 × 5476) = D1 (0 × 0123) XOR p1 (0 × 5555).
  • Weiterhin übernimmt der Flash-ROM 211 das Verschlüsselungsmuster vom Typ 2 in obiger Position (2). Falls vorausgesetzt wird, dass p1 = 0 × 5555, erfährt daher die Adresse keine Änderung, und die Daten werden zu einem Wert, der von den ursprünglichen Daten völlig verschieden ist, wie nachfolgend dargestellt ist: A3 (0 × 0100} = A1 (0 × 0100) D3 (0 × 5778) = A1 (0 × 0100) + D1 (0 × 0123) + p1 (0 × 5555).
  • Hier sind bei der Verschlüsselung der Daten die Daten eine Funktion der Adresse A1. Auf Grund dieser Tatsache unterscheiden sich selbst dann, wenn die Daten dieselben sind, d. h. D1, die verschlüsselten Daten D3 von den ursprünglichen Daten entsprechend der Adresse A1, wodurch ferner eine unerlaubte Interpretation schwierig gemacht wird und die Sicherheit erhöht wird.
  • Es muss angemerkt werden, dass die obige Beschreibung ein Rechenbeispiel für ein Verschlüsselungsmuster ist. Wenn eine Adresse verschlüsselt werden soll, wird ein Verschlüsselungsalgorithmus dergestalt in Betracht gezogen, dass eine verschlüsselte Adresse das Adressengebiet des Verschlüsselungszielgerätes nicht überdeckt und sich nicht zum Adressengebiet eines anderen Gerätes als dem des Verschlüsselungszielgerätes bewegt.
  • Zusätzlich ist es selbst mit demselben RAM 212 möglich, die Verschlüsselungsmuster zu ändern zum Zweck des Zugriffs auf den RAM 212 entsprechend den Anwendungsprogrammen, die von der CPU 101 ausgeführt werden. Indem man nicht nur ein Verschlüsselungsmuster entsprechend einem Speichergebiet (ein externes Gerät, auf welches zugegriffen werden soll) auswählt, sondern auch die Verschlüsselungsmuster entsprechend den Anwendungsprogrammen selbst in demselben Speichergebiet (demselben externen Gerät) ändert, werden die Adresse und die Daten, die an den sich nach außen erstreckenden Teil 110a der Busleitung 110 ausgegeben werden, auf eine kompliziertere Weise verschlüsselt, wodurch eine unerlaubte Interpretation weiter erschwert wird und die Sicherheit noch erhöht wird.
  • Falls vorausgesetzt wird, dass die CPU 101 und die Verschlüsselungsschaltung 121 mit denselben Takten arbeiten, kann die Verschlüsselungsschaltung 121 hier eine komplexe Verschlüsselungsoperation nicht ausführen. Wenn beispielsweise die CPU 101 auf ein externes Gerät in Einer-Takt-Intervallen zugreift, dann muss die Verschlüsselungsschaltung ihren Verschlüsselungsvorgang innerhalb eines Taktes abschließen. Im Fall des in obiger Position (3) angeführten Verschlüsselungsvorgangs vom Typ 3 erfordert dies zum Beispiel die Zeit eines Einertaktes, um die in Position (2) angeführte Verschlüsselung vom Typ 2 auszuführen, und verlangt ferner die Zeit eines Einer-Taktes, um die Hochpegel- und Niedrigpegelbits auszutauschen. Es wird tatsächlich insgesamt die Zeit zweier Takte benötigt, und die Verschlüsselungsschaltung 121 muss den Verschlüsselungsvorgang innerhalb eines Taktes zum Abschluss bringen, sonst kann das Verschlüsselungsmuster vom Typ 3 in Position (3) nicht übernommen werden.
  • Im Fall der in 1 dargestellten Ausführungsform ist der Oszillator 302 vorgesehen, welcher einen Takt höherer Geschwindigkeit erzeugt als derjenige des Oszillators 301, der an die CPU 101 einen Takt liefert, und die Verschlüsselungsschaltung 121 arbeitet synchron mit dem vom Oszillator 302 gelieferten Takt mit höherer Geschwindigkeit. Daher kann beispielsweise das Verschlüsselungsmuster vom Typ 3 in obiger Position (3) oder ein noch komplizierteres Verschlüsselungsmuster, welches eine Anzahl von Takten erfordert, übernommen werden.
  • Wenn beispielsweise ein Takt mit 10 MHz auf die CPU 101 gegeben wird und ein Takt mit 100 MHz auf die Verschlüsselungsschaltung 121 gegeben wird, dann kann die Verschlüsselungsschaltung einen Verschlüsselungsvorgang unter Verwendung von 10 Takten ausführen.
  • Darüber hinaus wird die interne Schaltung 100 der in 1 dargestellten Verarbeitungsvorrichtung in das LSI-Bauteil 10 integriert, und aus dem LSI-Bauteil 10 werden die verschlüsselte Adresse und verschlüsselten Daten über die Verschlüsselungsschaltung 121 und die Bus-Schnittstelle 122 ausgegeben. Mit der Adresse und den Daten, so wie sie sind, ist es recht schwierig für die CPU 101, ein Austesten des Programms durchzuführen, wenn ein Produkt entwickelt wird, welches dieses LSI-Bauteil 10 benutzt. Angesichts dieser Tatsache wird eine Entschlüsselungsschaltung 214 an die in 1 dargestellte Verarbeitungsschaltung angeschlossen.
  • Vordem Austesten werden in diese Entschlüsselungsschaltung 214 Informationen über ein Verschlüsselungsmuster und einen verschlüsselten Bereich geschrieben, welcher denselben Inhalt hat wie derjenige, der in das Register 103 der verschlüsselten Informationen aus der CPU 101 geschrieben worden ist. Beim folgenden Austesten entschlüsselt die Entschlüsselungsschaltung 214 die an den sich nach außen erstreckenden Teil 110a der Busleitung 110 ausgegebene verschlüsselte Adresse und Daten auf der Grundlage der zuvor über das Verschlüsselungsmuster und den verschlüsselten Bereich eingeschriebenen Informationen und entschlüsselt die Adresse in eine Adresse und in Daten, die beide nicht verschlüsselt sind. Indem man so verfährt, ist es möglich, sowohl die Adresse und die Daten, die durch die Entschlüsselungsschaltung 214 entziffert werden, beispielsweise durch Benutzung eines Messinstrument zu überwachen als auch leicht Programme auszutesten, die von der CPU 101 ausgeführt werden.
  • Falls diese Entschlüsselungsschaltung 214 ungetrennt belassen wird, geht die Signifikanz der Verschlüsselung der Adresse und der Daten mit Blick auf die schwierige Gestaltung einer unerlaubten Interpretation verloren. Aus diesem Grund wird die Entschlüsselungsschaltung 214 als ein Gerät ausgeführt, welches von der Verarbeitungsvorrichtung getrennt ist und daher nach Ausführung des Austestens abgetrennt wird. Alternativ kann die Entschlüsselungsschaltung 214 dergestalt angeschlossen bleiben, dass sie vollständig außer Betrieb gesetzt wird.
  • Wie in 1 dargestellt, ist ferner das Gerät 213, welches denselben Verschlüsselungsmechanismus aufweist wie dasjenige des LSI-Bauteils 10, angeschlossen. Wenn eine Anzahl von LSI-Geräten 10 kombiniert wird, wie das in 1 dargestellt ist, dann ist es möglich, eine Verschlüsselungskommunikation zwischen den LSI-Bauteilen auf dem Substrat einzurichten.
  • Bei der oben angeführten Ausführungsform wird die Schaltung, welche in ein LSI-Bauteil eingebaut ist, als eine interne Schaltung bezeichnet, und eine Gruppe von Geräten, die sich außerhalb des LSI-Bauteils befindet, wird als eine externe Schaltung bezeichnet. Die interne Schaltung muss nicht unbedingt auf ein LSI-Bauteil aufgebracht sein. Es ist auch möglich, dass, wenn beispielsweise eine Schaltung aufgeteilt und auf einer Anzahl von LSI-Bauteilen untergebracht wird und die Anzahl von LSI-Bauteilen in ein IC-Package gepackt oder gemeinsam vergossen werden, dann die gesamte, auf diese mehrere LSF-Bauteile aufgeteilte und aufgebrachte Schaltung als eine interne Schaltung bezeichnet werden kann.

Claims (10)

  1. Verarbeitungsvorrichtung, welche umfasst: eine interne Schaltung (100), welche eine CPU (101), die Programme ausführt, mindestens ein internes Gerät (102105), welches eine vorbestimmte Funktion hat, und Busleitungsmittel (110, 111, 112) enthält, welche die CPU (101) mit dem internen Gerät (102105) verbinden, sich nach außen erstrecken und eine Adresse und Daten übertragen, und eine externe Schaltung (200), welche sich außerhalb eines sich nach außen erstreckenden Teils (110a) der Busleitungsmittel (110, 111, 112) befindet und mindestens ein externes Gerät (301, 302) enthält, das eine vorbestimmte Funktion hat, wobei die interne Schaltung (100) einen Verschlüsselungsabschnitt (120) aufweist, der an einem Eingang zu einer externen Seite zwischengeschaltet ist und die Adresse und die Daten auf den Husleitungsmitteln (110, 111, 112) durch Verschlüsselungsmuster verschlüsselt entsprechend einer Anzahl von Bereichen, die abgetrennt sind von einem Adressenraum, welcher der Gesamtheit aus mindestens einem externen Gerät (200) zugeordnet ist dadurch gekennzeichnet, dass der Verschlüsselungsabschnitt (120) an den sich nach außen erstreckenden Teil (110a) der Busleitungsmittel (110, 111, 112) eine Scheinadresse und Scheindaten ausgibt zu Zeiten, zu denen auf die externe Schaltung (200) nicht zugegriffen wird.
  2. Verarbeitungsvorrichtung gemäß Anspruch 1, bei welcher die vom Verschlüsselungsabschnitt übernommenen Verschlüsselungsmuster ein Verschlüsselungsmuster enthalten, in welchem weder die Adresse noch die Daten verschlüsselt sind.
  3. Verarbeitungsvorrichtung gemäß Anspruch 1, bei welcher die externe Schaltung (200) eine Anzahl von externen Geräten (201, 202, 203, 211, 212) enthält, und der Verschlüsselungsabschnitt (120) die Verschlüsselung ausführt unter Verwendung von Verschlüsselungsmustern entsprechend der Anzahl der jeweiligen externen Geräte (201, 202, 203, 211, 212).
  4. Verarbeitungsvorrichtung gemäß Anspruch 1, bei welcher die CPU (101) einen Takt zugeführt bekommt und die Programme synchron mit diesem zugeführten Takt ausführt und der Verschlüsselungsabschnitt (120) einen Takt zugeführt bekommt und die Verschlüsselung synchron mit diesem zugeführten Takt ausführt, und welche ferner einen Taktgeberabschnitt (302) umfasst, damit dem Verschlüsselungsabschnitt ein Takt mit einer höheren Geschwindigkeit als der Geschwindigkeit des der CPU (101) zugeführten Taktes zugeführt wird.
  5. Verarbeitungsvorrichtung gemäß Anspruch 1, welche umfasst: Verschlüsselungsmuster-Änderungsmittel, um die Struktur der externen Schaltung zu erkennen und ein Verschlüsselungsmuster des Verschlüsselungsabschnitts entsprechend der Struktur der externen Schaltung zu bestimmen.
  6. Verarbeitungsvorrichtung gemäß Anspruch 1, bei welcher der Verschlüsselungsabschnitt die Adresse und die Daten auf den Busleitungsmitteln durch Verschlüsselungsmuster verschlüsselt entsprechend der Anzahl der Bereiche, die von dem Adressenraum abgetrennt sind, welcher der Gesamtheit aus nicht weniger als einem externen Gerät zugeordnet ist, und entsprechend den von der CPU ausgeführten Anwendungsprogrammen.
  7. Verarbeitungsvorrichtung gemäß Anspruch 1, welche umfasst: einen Entschlüsselungsabschnitt, welcher an den sich nach außen erstreckenden Teil der Busleitungsmittel angeschlossen ist und die verschlüsselte Adresse und die Daten auf den Busleitungsmitteln in eine Adresse und in Daten, die unverschlüsselt sind, rückführt.
  8. Verarbeitungsvorrichtung gemäß Anspruch 1, welche umfasst: Verschlüsselungsmuster-Änderungsmittel zum Ändern eines Verschlüsselungsmusters immer dann, wenn eine vorbestimmte Initialisierungsoperation für einen Bereich aus der Anzahl von Bereichen ausgeführt wird, die von dem Adressenraum abgetrennt sind, welcher der Gesamtheit aus mindestens einem externen Gerät zugeordnet ist.
  9. Verarbeitungsvorrichtung gemäß Anspruch 1, bei welcher der Verschlüsselungsabschnitt ein Verschlüsselungsmuster übernimmt, in welchem verschlüsselte Daten entsprechend der Adresse geändert werden für einen Bereich aus der Anzahl von Bereichen, die von dem Adressenraum abgetrennt sind, welcher der Gesamtheit aus mindestens einem externen Gerät zugeordnet ist, um dadurch die Daten zu verschlüsseln.
  10. Integrierter Schaltkreis, welcher eine Verarbeitungsvorrichtung enthält, wie sie in irgend einem der vorangehenden Ansprüche beansprucht ist.
DE2000613424 2000-07-13 2000-12-20 Datenverarbeitungsvorrichtung und integrierter Schaltkreis Expired - Lifetime DE60013424T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2000212815 2000-07-13
JP2000212815A JP4683442B2 (ja) 2000-07-13 2000-07-13 処理装置および集積回路

Publications (2)

Publication Number Publication Date
DE60013424D1 DE60013424D1 (de) 2004-10-07
DE60013424T2 true DE60013424T2 (de) 2005-01-13

Family

ID=18708672

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2000613424 Expired - Lifetime DE60013424T2 (de) 2000-07-13 2000-12-20 Datenverarbeitungsvorrichtung und integrierter Schaltkreis

Country Status (4)

Country Link
US (1) US7657758B2 (de)
EP (1) EP1172731B1 (de)
JP (1) JP4683442B2 (de)
DE (1) DE60013424T2 (de)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4325130B2 (ja) * 2001-06-21 2009-09-02 ヤマハ株式会社 電子機器
DE10258767A1 (de) * 2002-12-16 2004-07-15 Infineon Technologies Ag Verfahren zum Betrieb eines Cache-Speichers
FR2853098B1 (fr) * 2003-03-24 2005-07-01 Innova Card Circuit pourvu d'un acces externe securise
FR2853097B1 (fr) * 2003-03-24 2005-07-15 Innova Card Circuit programmable pourvu d'une memoire securisee
JP2004361986A (ja) * 2003-04-08 2004-12-24 Sharp Corp スクランブル回路
JP2005149262A (ja) * 2003-11-18 2005-06-09 Renesas Technology Corp 情報処理装置
EP1544704A1 (de) * 2003-12-19 2005-06-22 STMicroelectronics Limited Monolithische integrierte Halbleiterschaltung und Verfahren zur selektiven Speicherver- und entschlüsselung
JP4119881B2 (ja) * 2004-11-15 2008-07-16 株式会社メガチップス 半導体メモリ装置
US7770027B2 (en) 2004-11-15 2010-08-03 Nintendo Co., Ltd. Semiconductor memory device
JP4551802B2 (ja) 2005-03-29 2010-09-29 株式会社東芝 プロセッサ、メモリ、コンピュータシステムおよびデータ転送方法
JP4349389B2 (ja) * 2006-07-28 2009-10-21 ソニー株式会社 データ記憶装置、および、通信装置
GB0615392D0 (en) * 2006-08-03 2006-09-13 Wivenhoe Technology Ltd Pseudo random number circuitry
JP4941144B2 (ja) * 2007-07-17 2012-05-30 株式会社明電舎 通信制御装置
JP4922123B2 (ja) * 2007-10-16 2012-04-25 ルネサスエレクトロニクス株式会社 メモリシステム及びデータ保護方法
IL187046A0 (en) * 2007-10-30 2008-02-09 Sandisk Il Ltd Memory randomization for protection against side channel attacks
US9773431B2 (en) * 2009-11-10 2017-09-26 Maxim Integrated Products, Inc. Block encryption security for integrated microcontroller and external memory system
JP2012085148A (ja) * 2010-10-13 2012-04-26 Nec Corp データ保護システム、ユーザ端末、及びサーバ
RU2485710C1 (ru) * 2011-12-23 2013-06-20 Общество с ограниченной ответственностью "ЕвроКомСервис" Криптокамера
US10516665B2 (en) * 2014-03-13 2019-12-24 Nec Corporation Network management apparatus, network management method, and recording medium
DE102016119750B4 (de) * 2015-10-26 2022-01-13 Infineon Technologies Ag Vorrichtungen und Verfahren zur Mehrkanalabtastung
CN109952751B (zh) * 2016-11-15 2020-11-17 华为技术有限公司 一种安全的处理器芯片及终端设备

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4278837A (en) * 1977-10-31 1981-07-14 Best Robert M Crypto microprocessor for executing enciphered programs
US4168396A (en) * 1977-10-31 1979-09-18 Best Robert M Microprocessor for executing enciphered programs
US4525599A (en) * 1982-05-21 1985-06-25 General Computer Corporation Software protection methods and apparatus
EP0117276B1 (de) * 1982-09-20 1990-05-09 Sanyo Electric Co., Ltd. Gerät zur Geheimübertragung
US4628358A (en) * 1983-06-10 1986-12-09 General Instrument Corporation Television signal encryption system with protected audio
US4573119A (en) * 1983-07-11 1986-02-25 Westheimer Thomas O Computer software protection system
FR2570524B1 (fr) * 1984-09-19 1987-01-02 Matra Communication Terminal de tele-informatique a extensions externes
JPS63149747A (ja) * 1986-12-15 1988-06-22 Nec Corp デ−タ機密保護機構付き読出し専用メモリ
US5237699A (en) * 1988-08-31 1993-08-17 Dallas Semiconductor Corp. Nonvolatile microprocessor with predetermined state on power-down
US5081675A (en) * 1989-11-13 1992-01-14 Kitti Kittirutsunetorn System for protection of software in memory against unauthorized use
GB9000580D0 (en) * 1990-01-10 1990-03-14 Refurbished Turbine Components Apparatus for and methods of the repair of turbine blades
US5048086A (en) * 1990-07-16 1991-09-10 Hughes Aircraft Company Encryption system based on chaos theory
US5515540A (en) * 1990-08-27 1996-05-07 Dallas Semiconducter Corp. Microprocessor with single pin for memory wipe
JP2862030B2 (ja) * 1991-06-13 1999-02-24 三菱電機株式会社 暗号化方式
WO2004077300A1 (ja) * 1992-01-22 2004-09-10 Yoshimasa Kadooka Icメモリカード及びそのデータ保護方法
JPH05336104A (ja) * 1992-05-29 1993-12-17 Toshiba Corp 無線基地局
US5400331A (en) * 1993-04-28 1995-03-21 Allen-Bradley Company, Inc. Communication network interface with screeners for incoming messages
US5666516A (en) * 1993-12-16 1997-09-09 International Business Machines Corporation Protected programmable memory cartridge having selective access circuitry
US5404402A (en) * 1993-12-21 1995-04-04 Gi Corporation Clock frequency modulation for secure microprocessors
JPH07334359A (ja) * 1994-06-03 1995-12-22 Hitachi Ltd 半導体集積回路装置
FR2728980B1 (fr) * 1994-12-30 1997-01-31 Thomson Csf Dispositif de securisation de systemes d'information organises autour de microprocesseurs
US5666497A (en) * 1995-03-08 1997-09-09 Texas Instruments Incorporated Bus quieting circuits, systems and methods
US5943421A (en) * 1995-09-11 1999-08-24 Norand Corporation Processor having compression and encryption circuitry
JP3471988B2 (ja) * 1995-09-19 2003-12-02 株式会社リコー ファクシミリ装置
US5917910A (en) * 1995-10-16 1999-06-29 Sony Corporation Encrypting method and apparatus, recording method, decrypting method and apparatus, and recording medium
JP3627384B2 (ja) * 1996-01-17 2005-03-09 富士ゼロックス株式会社 ソフトウェアの保護機能付き情報処理装置及びソフトウェアの保護機能付き情報処理方法
US6175925B1 (en) 1996-06-13 2001-01-16 Intel Corporation Tamper resistant player for scrambled contents
JP3625340B2 (ja) * 1996-09-19 2005-03-02 株式会社東芝 セキュリティシステム
US6986053B1 (en) * 1996-11-07 2006-01-10 Ascom Hasler Mailing Systems, Inc. System for protecting cryptographic processing and memory resources for postal franking machines
US5848159A (en) * 1996-12-09 1998-12-08 Tandem Computers, Incorporated Public key cryptographic apparatus and method
US6272637B1 (en) * 1997-04-14 2001-08-07 Dallas Semiconductor Corporation Systems and methods for protecting access to encrypted information
US6003117A (en) * 1997-10-08 1999-12-14 Vlsi Technology, Inc. Secure memory management unit which utilizes a system processor to perform page swapping
US6345359B1 (en) * 1997-11-14 2002-02-05 Raytheon Company In-line decryption for protecting embedded software
US6226237B1 (en) * 1998-03-26 2001-05-01 O2 Micro International Ltd. Low power CD-ROM player for portable computer
WO2000019321A1 (de) 1998-09-30 2000-04-06 Koninklijke Philips Electronics N.V. Verfahren zum unbrauchbarmachen von daten und datenverarbeitungsschaltung zur durchführung des verfahrens
US7194092B1 (en) * 1998-10-26 2007-03-20 Microsoft Corporation Key-based secure storage
JP2000155525A (ja) * 1998-11-24 2000-06-06 Nippon Telegr & Teleph Corp <Ntt> 暗号強度評価装置
JP3679936B2 (ja) * 1998-11-27 2005-08-03 東芝ソリューション株式会社 暗復号装置及び記憶媒体
FR2787216B1 (fr) 1998-12-11 2001-07-27 Bull Cp8 Procede de stockage et d'exploitation d'unites d'information dans un module de securite, et module de securite associe
FR2788353B1 (fr) * 1999-01-11 2001-02-23 St Microelectronics Sa Microprocesseur avec circuits de protection pour securiser l'acces a ses registres
WO2000049510A1 (fr) * 1999-02-17 2000-08-24 Sony Corporation Dispositif et procede de traitement de l'information et support de memorisation de programme
FR2793367B1 (fr) * 1999-05-03 2004-09-10 Jean Luc Stehle Dispositif d'authentification et de securisation pour un reseau informatique
DE19922155A1 (de) 1999-05-12 2000-11-23 Giesecke & Devrient Gmbh Speicheranordnung mit Adreßverwürfelung
US6971022B1 (en) * 1999-06-15 2005-11-29 Matsushita Electric Industrial Co., Ltd. Cryptographic apparatus for performing cryptography on a specified area of content data
JP3719090B2 (ja) * 1999-09-07 2005-11-24 日本電信電話株式会社 位置情報サービスシステム、並びに、位置情報サービスシステムにおける位置情報利用方法、発信端末、鍵更新センタ、及び、着信端末
CA2384436C (en) * 1999-09-10 2010-06-29 Portogo, Inc. Systems and method for insuring correct data transmission over the internet
US7188255B1 (en) * 1999-09-23 2007-03-06 Hewlett-Packard Development Company, L.P. Software delivery system
JP2001109667A (ja) * 1999-10-13 2001-04-20 Nec Ic Microcomput Syst Ltd データ処理方法および装置
US7005733B2 (en) * 1999-12-30 2006-02-28 Koemmerling Oliver Anti tamper encapsulation for an integrated circuit
US7111176B1 (en) * 2000-03-31 2006-09-19 Intel Corporation Generating isolated bus cycles for isolated execution
US7000119B1 (en) * 2000-04-20 2006-02-14 Realnetworks, Inc. Instruction/data protection employing derived obscuring instruction/data
US6895506B1 (en) * 2000-05-16 2005-05-17 Loay Abu-Husein Secure storage and execution of processor control programs by encryption and a program loader/decryption mechanism
US6989052B1 (en) * 2004-06-30 2006-01-24 Xerox Corporation Phase change ink printing process

Also Published As

Publication number Publication date
EP1172731A3 (de) 2003-01-29
DE60013424D1 (de) 2004-10-07
JP4683442B2 (ja) 2011-05-18
US7657758B2 (en) 2010-02-02
EP1172731A2 (de) 2002-01-16
JP2002032268A (ja) 2002-01-31
US20020029345A1 (en) 2002-03-07
EP1172731B1 (de) 2004-09-01

Similar Documents

Publication Publication Date Title
DE60013424T2 (de) Datenverarbeitungsvorrichtung und integrierter Schaltkreis
EP1249010B1 (de) Mikroprozessoranordnung mit verschlüsselung
DE3700663C2 (de)
DE69833902T2 (de) Integrierte Schaltung für Einbettung in Chipkarten, und Verfahren zur Herstellung von Chipkarten
DE69824251T2 (de) Entschlüsselungsvorrichtung
DE112007003231B4 (de) Programmierbare Anzeigevorrichtung und Steuersystem
DE2837201C2 (de)
EP1246043B1 (de) Verfahren zur Übertragung von Daten über einen Datenbus
EP1234239B1 (de) Mikroprozessoranordnung mit verschlüsselung
EP0965076A1 (de) Elektronische datenverarbeitungseinrichtung und -system
WO2000017826A1 (de) Vorrichtung zum liefern von ausgangsdaten als reaktion auf eingangsdaten und verfahren zum überprüfen der authentizität und verfahren zum verschlüsselten übertragen von informationen
WO1998016883A1 (de) Elektronische datenverarbeitungsschaltung
EP1158384B1 (de) Sicherheits-Datenverarbeitungseinheit sowie dazugehöriges Verfahren
DE60020794T2 (de) Verschlüsselungsschaltungsarchitektur zur gleichzeitigen Ausführung mehrerer Verschlüsselungsalgorithmen ohne Leistungseinbusse
EP1118941A1 (de) Mikroprozessoranordnung und Verfahren zum Betreiben einer Mikroprozessoranordnung
DE60030074T2 (de) Elektronischer Sicherheitsbaustein
DE3321910A1 (de) Vorrichtung und verfahren zum schuetzen von software
EP1358571B1 (de) Datenverarbeitungsvorrichtung
EP2272025B1 (de) System und verfahren zum bereitstellen von benutzermedien
DE10232348A1 (de) Integrierte Halbleiterschaltung mit interner Busdatenübertragung und zugehöriges Datenübertragungsverfahren
EP0276450A1 (de) Datenschutzschaltung zur Sperrung der Uebertragung von Signalen über einen Bus
DE10296979B4 (de) Computersystem mit einer aktiven Speicherbusperipherieeinrichtung und Verfahren zur Steuerung einer aktiven Speicherbusperipherieeinrichtung
DE102021107211A1 (de) Speichermodul-Authentifizierungserweiterung
EP1022659B1 (de) Schaltungsanordnung zur elektonischen Datenverarbeitung
EP3819804A1 (de) Integritätsüberprüfung eines registerinhalts

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: SEEGER SEEGER LINDNER PARTNERSCHAFT PATENTANWAELTE