DE3415209A1 - Speichereinheit mit einem speicher und einer schutzeinheit - Google Patents
Speichereinheit mit einem speicher und einer schutzeinheitInfo
- Publication number
- DE3415209A1 DE3415209A1 DE19843415209 DE3415209A DE3415209A1 DE 3415209 A1 DE3415209 A1 DE 3415209A1 DE 19843415209 DE19843415209 DE 19843415209 DE 3415209 A DE3415209 A DE 3415209A DE 3415209 A1 DE3415209 A1 DE 3415209A1
- Authority
- DE
- Germany
- Prior art keywords
- address
- program
- processing system
- word
- data processing
- 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.)
- Withdrawn
Links
- 238000003860 storage Methods 0.000 title claims description 11
- 230000001681 protective effect Effects 0.000 title claims description 3
- 230000004048 modification Effects 0.000 claims description 17
- 238000012986 modification Methods 0.000 claims description 17
- 239000003607 modifier Substances 0.000 claims description 7
- 239000003795 chemical substances by application Substances 0.000 claims description 3
- 230000008078 mathematical effect Effects 0.000 claims description 2
- 238000000034 method Methods 0.000 claims 1
- 210000003296 saliva Anatomy 0.000 description 2
- XUKUURHRXDUEBC-KAYWLYCHSA-N Atorvastatin Chemical compound C=1C=CC=CC=1C1=C(C=2C=CC(F)=CC=2)N(CC[C@@H](O)C[C@@H](O)CC(O)=O)C(C(C)C)=C1C(=O)NC1=CC=CC=C1 XUKUURHRXDUEBC-KAYWLYCHSA-N 0.000 description 1
- 101100457838 Caenorhabditis elegans mod-1 gene Proteins 0.000 description 1
- 101150110972 ME1 gene Proteins 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 150000002500 ions Chemical class 0.000 description 1
- 239000000314 lubricant Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/125—Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/123—Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices
Description
.. .;.:. J 4 I ü Z, U O
PHA K)Oi ^Y. 29.3.1984
SpeichereLnheit mit einem Speicher und einer Sc.hu t ζ einheit
Die Erfindung betrifft ein Datenverarbeitungssystern
mit einem Datenprozessor und einer Speich.ereinh.eit,
die aus einer Schutzeinheit und aus einem Speicher zur
Speicherung; zumindest eines Programms besteht, das eine Anzahl von Prograinniwörtern enthält, wobei der Speicher
einen Anschluss für den Austausch von Informationswörtern
enthält, wobei jedes Informationswort ein Programmwort und sein jeweiliges Adresswort enthält, wobei die Schutzeinheit
folgende Elemente enthält:
- ein Idontifizierungsmittel mit einem an den Anschluss
angeschlossenen ersten Eingang zum Identifizieren derjenigen Informationswörter aus einem Informatiunswörterfluss
an den Anschluss, die zu einer vorgegebenen Gruppe gehören, in der die Informationswörter ein Programmwort
enthalten, das einen Adx'essteil zum Adressieren eines
weiteren Programinworts enthält, wobei das Identifizierungsmittel weiter zum Erzeugen eines Befehlssignals dient,
- ein earstes Modifizierungsmittel mit einem an den Anschluss
angeschlossenen zweiten Eingang und einem an das Identifizierungsmittel angeschlossenen dritten Eingang
zum Empfangen des Befehlssignals, wobei das erste Modifizierungsmittel
zum Durchführen einei" ersten Modifizierungsoperation an einem empfangenen Programmwort unter der
Steuerung des Befehlssignals dient, wobei das erste Modifizierungsmittel an einen ersten Datenausgang der
Speichereinheit angeschlossen ist, wobei der Datenprozessor folgende Elemente enthält:
- einen Daterieingang, der an den ersten Datenausgang zum
Empfangen von Datensignalen angeschlossen ist,
- ejineri Pro;1,rammzähl ei·, der unter· Steuerung der empfangenen
Da tensigmile einstellbar ist,
- einen ei'κ ten Adressati «gang, der an einen ersten Adress—
eingang der SpeLchereinheit zur Lieferung von Adress-
ιυ(π
signal cn in einer vom Prog.raininva.il 1 <m' br.*-, t iiiiin t cn Mv i .hen—
t'oljje angeschlossen Lsi .
In ilej' am "K). M. I ('8'j üi'i'engeLegUM] deutschen PateiitanmeIdling'
TJ 13 9!Λ'- wird ein derartiges Datenverarbe1 t. mi;;ssystem
beschrieben. Die Spe lohe reinhei t en I JiUi t eine
Sehutzeinhei t. zum Schützen der im Speicher gespeicherten
Prograramwört.or gegen ungesetzliches Ko])J.eren (iiirrh unbefugte
Kopierer.
Von einer Datenverarbei tungseinliei L gesteuerte
Anordnungen enthalten einen Speichel", beispielsweise einen ROM- oder einen PROM-Speicher, in dem Programme und weitere
Informationen (unter der Bezeichnung "soi'lware") in Form von Programm«or tern durch Durchführung \on Datenverarbei-tungsoperat
ionen gespeichert sind. Der Entwurf einer der—
artigen Software ist zeitraubend und auch kostspielig.
Dciher ist es wichtig, unbefugtes Kopieren derartiger- Software
zu verhindern.
Venn ein Informationswort, das zur vorgegebenen
Gruppe gehört, im Inf ormationswör ter l'lu.ss an dem Anschluss
des Speichers erscheint, wird es vom identifizierungsmittel
identifiziert, das darauf ein Befehlssignal abgibt.
im beschriebenen System sind die zur vorgegebenen Gruppe gehörenden Informationswörter die, welche eine
Verbindung mit einem weiteren Prograinmwort haben, das vom Programmzähler im folgenden Programmschritt durch die
Ausführung des Programms adressiert werden muss. Wenn das Programm nicht normal durchgeführt wird, d.h. z.H., wenn
das Programm kopiert wird, wird dieses weitere Programmwort nicht adressiert. Anschliessend wird das Befelilssignal
bestätigt und das erste Modifizierungsmittel wird zur
Durchführung einer ersten Modifizierungsoperation akti\iert,
die darin besteht, dass das im folgenden Px'ogrammschr j 11
adressierte Prograinmwort durch ein Stürwort ersetzt wird,
das in keinem Zusammenhang zum Programmwort steht. Das Störwort wird am ersten Datenausgang der SpeLchereinheit
ausgegeben. Die Folge davon ist, dass das kopierte Progrcimm
unbrauchbar geworden ist, weil es zum Ludest ein Htörwoi't
enthält, das die Durchführung des Programms verhindert.
I1ILV K)') I Y &. 29. j. 1 9b Ί
Der Erfindung liegt die Aufgabe zugrunde, eine Speiche reinhei t zu verwirklichen, bei der unbefugtes Kopieren
der im Speicher gespeicherten Programmwörter zum Abgeben
völlig unbrauchbarer Information an den unbefugten I.t· se r rühr t .
Diose Aufgabe wird mit einem Datenverarbeitungs-
«ys tem er f üidungsgemäss dadurch gelöst, dass die erste
Mod Lfizierungsoperation am Adressteil des Programmworts,
bei dem das Be feh.1 ssignal erzeugt wurde, durchgeführt wird,
wobei die Schutzeinheit weiter ein zweites Modifizierungsmittel
enthält, von dem ein vierter Eingang mit dem ersten Adresseingang und ein zweiter Adressausgang mit dem Anschluss
verbunden ist, wobei das zweite Modifizierungsmittel
zum Durchführen einer zweiten Modifizierungsoperation
bei finoin empfangenen Adressignal zum Ausgleichen der
ersten Modifizierungsoperation vorgesehen ist.
Bei diesem Datenverarbeitungssystem gibt es also
immer einen Unterschied zwischen dem Informationswörter—
fluss am Anschluss des Speichers und dein Daten— und Adress—
signal!"luss zwischen der Speichereinheit und dem Datenprozessor',
ob nun das Programm kopiert wird oder nicht. Bei einer' normalen Durchführung des Programms, d.h. wenn
das Programm unter der Steuerung des Datenprozessors durchgeführt wird und die Befehle entsprechend dem Inhalt der
Prograinmwörter ausgeführt werden, führt das zweite Modifizierungsmittel
eine zweite Modifizierungsoperation beim Empfang eines Adressignals aus. Die zweite Modifizierungsoperation
gleicht die erste Modifizierungsoperation derart aus, dass das richtige Adresswort zum Anschluss des Speichers
geliefert wird. Die normale Durchführung· wird dadurch also nicht gestört. Jedoch wird, wenn das Programm kopiert
wird, das modifizierte Programmwort, das am ersten Datenausgang der Speichereinheit ausgegeben wird, in das kopierte
Programm aufgenommen und macht das kopierte Programm unbrauchbar.
Eine bevorzugte Ausführungsf oriu ties Da tenverarbei-(.
i.i η g.-. s y is teins nach der Erfindung ist dadurch gekennzeichnet,
dass ein jedes der Prograimnwör ter der' vorgegebenen Gruppe
PHA 1091 X''' 2[).3.
einen BeTeIiI enthält, der auf einen gleichmässigen gestuften
Fortschrit-t ties Programmzählers einwirkt. DeTeIiIe, die auf
einen gltiicJimiissigen gestuften Fortschritt des Programmzählers
einwirken, sind Befehle, die eine iiikremen Liui'img
(oder Dekremontierung) des ProgrammzäJilers um rneiir als
einen Einhei tsscliritt verursaclLeii, z.B. JUMP— oder GO—TO-Befehle.
Diese Befehle haben einen Adressteil, der Information
über die Adresse des beim normalen Durchführen des Programms zu adressierenden nachfolgenden Programmworts
enthält. Eine Modifizierung dieses Adressteils, die durch
die erste Modifizierungsoperation ausgeführt wird, kann ein kopiertes Programm wirksam stören.
Eine weitere bevorzugte Ausführungsform eines
Datenverarbeitungssystems nach der Erfindung 1st dadurch
gekennzeichnet, dass die Programmwörter der vorgegebenen Gruppe einen Opcode—Teil enthalten, dass das Identifizierungsmittel
einen Opcode-Decoder zum Decodieren des Opeode-Teils der Programmwörter enthält.
Eine weitere bevorzugte Ausführungsform eines
Datenverarbeitungssystems nach der Erfindung 1st dadurch
gekennzeichnet, dass das Identifizierungsmittel einen Adresscoder zum Decodieren der Adresswörter enthält,die
einer vorgegebenen Gruppe zugeordnet sind. Einfache Verwirklichungen
des Identifizierungsmittels werden auf diese
Weise erhalten.
Es ist vorteilhaft, dass die erste und die zweite Modifizierungsoperation die Durchführung einer mathematischen
Bewirkung umfasst. Das Adressteil eines Programmworts ist im allgemeinen aus einer Anzahl von Binärbits
zusammengesetzt. Mathematische Operationen lassen sich damit daran leicht durchführen.
Es ist vorteilhaft, dass das erste Modifizierungsmittel
einen Addierer zum Addieren eines Wertes zum Adressteil enthält und dass das zweite Modifizierungsmittel
einen Subtrahierer zum Subtrahieren dieses Werts vorn Adressignal enthält. Dies ermöglicht eine einfache und
schnelle Verwix'klichung der ersten und der zweiten Modifizierungsoperation
.
ΡΠΛ 1001
β/β- 20.3.1084
Es ist vorteilhaft, dass das erste Modifizierungsmittel
einen Zufallsgenerator zum Erzeugen dieses Verts enthält, woLeher Zufallsgenerator mit einem Ausgang an das
zweite Modifizierungsmittel zum Abgeben dieses Werts verbunden
ist. Wenn der Zufallsgenerator diesen Wert erzeugt, ist es L'ür einen unbefugten Kopierer besonders schwer festzustellen,
welcher Wert beim Adressteil addiert wurde, weil jedesmal ein anderer Wert erzeugt werden kann.
Ein Ausführungsbeispiel der Erfindung wird nachstehend anhand der Zeichnung näher erläutert, in xvelcher
Zeichnung ein vereinfachtes Blockschaltbild einer bevorzugten
Ausführungsform eines erfindungsgemässen Datenverarbeitungssystems
dargestellt ist.
J)as dargestellte Datenverarbeitungssystem enthält I*5 eine Speichereinheit 10 und einen Datenprozessor 14, beispielsweise
einen Mikroprozessor. Die Speichereinheit enthält einen Speicher 12, z.B. einen ROM oder einen PROM,
sowie eine Schu tzeinheit 24. Der Datenprozessor und die Speichereinheit sind über einen Adressbus 11 und einen
Datenbus I 3 miteinander verbunden. Der Speicher und die Schutzeinheit sind über einen inneren Bus 23 miteinander
verbunden. Die Schutzeinheit enthält Identifizierungsmittel 16, die mit einem ersten Eingang an den inneren Bus
angeschlossen sind. Die Schutzeinheit enthält weiter ein erstes Modifizierungsmittel 17>
das mit einem zweiten Eingang an den inneren Bus 23 und mit einem ersten Datenausgang
an den Datenbus 13 angeschlossen ist, und ein zweites Modifizierungsmittel 15>
das mit einem Adresseingang an den Adressbus 11 und mit einem Adressausgang an den
Liineren Bus 23 angeschlossen ist.
Der Speicher 12 wird für die Speicherung zumindest
eines Programms verwendet, das der Datenprozessor durchführen kann. Das (die) Programm(e) enthält (enthalten) eine
Anzahl Programmwörter. Jedes Programmwort besteht im allgemeinen
aus einer Anzahl von ßinärbits. Jedes Programmwori
wird an einer jeweiligen Speicherstelle mit seiner
jeweiligen Adresse gespeichert. Ein Anschluss des Speichers ist an den inneren Bus zur Lieferung von Adresswörtern zum
PlIA lnoi ^Q
Speicher' aii^esclilusseii, urn die jewel 111 1VtMi Programmwör t <_>r
aurzurufen, die diesem AdresHwort zugeordnet sind.
Wie tier Name bereits eingibt,, dient die Sc.lrutsr.einheit
2-1- zum Schützen der Programniwörter, insbesondere vor
ungesetzlichem Kopieren. Daher ist die Se hu tzeinhei t derart,
ausgelegt, dass für eine Anzahl am Anschluss des Speichers
ausgegebener Programinwör fcer eine Modi l.'izierungsoperation
durchfje J1Uh r t wird.
JJLe Schutzeinheit kann auf verschiedene ¥eison ver—
wirkliche werden. Die Wirkungsweise des Datenverarbeitungssystems wird jetzt anhand einer bevorzugten Ausführungsform
für die Schutzeinheit beschrieben. Xn dieser bevorzugten Ausführungsform der Schutzeinheit enthält· das
Xden tif izie rungsini t tel Ib einen Sprungbe f ehldecoder 1b' und
einen Zufallszahlgenerator 19· Das erste Modifizierungsmittel
17 enthält einen Addierer '.l~j und das zweite Modifizierungsmi
t tel 15 einen Subtrahier'er 20. Day Zufallsgenerator
ist mit einem Ausgang über eine Leitung 20 an einen
Eingang des Addierers und an einen Eingang des Subtrahierers
angeschlossen.
Zwischen den im Speicher gespeicherten Progranimwörtern
befinden sich die bekannten Sprungbefehle, die
auf dun gleichmässigen gestuften Fortschritt des Programmzählers einwirken. Diese Sprungbefehle sind an ihrem
charakteristischen Opcode-Teil erkennbar. Der Sprungbefehldecoder
18, der ein Opcode—Decoder 1st, decodiert die Opeode-Teile der Programmwörter, die am Anschluss des
Speichers ausgegeben und an den inneren Bus wei tergeleite t
werden. ¥enn ein Sprungbefehl decodiert wii'd, erzeugt der
Sprungbel'ehlsdecoder ein Befehlssignal, das über die
Leitung 2! an den Zufallszahlgenerator 19>
an den Addierer 25, wie auch an den Subtrahierer 2b gelangt. Anschliessend
erzeugt der Zufallsgenerator IO eine Zu f auswahl, die
über die Leitung 20 zum Addierer und zum Subtrahierer gelangt.
Der mit dem inneren Bus 23 vei-bundene Addierer
empfängt auch das Programmwort, das den Sprungbefehl enthält.
Unter d<>r Steuerung des Be IV-1IiIs signals addiert der
Addierer die Zufallszahl zum Adressteil (der die Adresse
. : .. J 4 I O Z U
PJiA ίο«) ι ^40. 29.3. I?b4
angibt, nach der gesprungen wird) dieses Sprungbefehls und
erzeugt eine Pseudo—Sprungadresse .
Das ino(l:i .l'izier te Programm wort mit der Pseudo-Sprungadresso
wird jetzt über den Datenbus 13 an den Datenprozessor
l'i wiuter^elei ( e t. Anschiiessend zeigt der Progj-animzähicr
das Programmwort an dieser Pseudo-Adresse an. Wenn der Datenprozessor \h danach über den Adressbus II
die Speirhoreinhei t zum Erhalten des Programniworts an der
Pseudo-Adro^se adressiert wird, gelangt diese Adresse an
den Sub tzrahierer 2b des zweiten Modii'izierungsmi t tels .
Nach dem Em j> Tang der Pseudo-Adresse subtrahiert der Subtrahierer
die Zufallszahl von der Pseudo—Adresse und überträgt die so gewonnene Originaladresse auf den Speicher.
Der Sprungbefehl wird also richtig durchgeführt.
Jedes nach!"olgende vom Speichel' 12 ausgegebene
Pr O1",raiimi\\ ο r t- , das kein Sprungbefehl ist, gelangt über den
AddLc'i'cM· :i~>
zum Datenbus 13 ohne Änderung. Da der Programmzähler
des Datenprozessors jedoch zur Pseudo-Adresse weiter gegangen Lsi, hält das zweite Modifizierungsmittel 15 die
Zuf al Lszah L zur Subtraktion von einer jeden der Adressen fest, die der Datenprozessor vor der Übertragung auf den
Speicher in den Adressbus 11 eingespeist hat.
Dies geht weiter, bis ein anderer Sprungbefehl an den Anschluss des Speichers 12 gelangt. Wenn dies ge—
schieht, bewirkt der Sprungbefehlsdecoder 18 wieder die
Aktivierung des Zufallszahlgenerators 19, der eine andere
Zu fallszahl in den Addierer 25 und in den Subtrahierer 20
einführt. Der Addierer 25 arbeitet wie zuvor und führt
ei.no Pseudo-Sprungadresse in den Datenbus I3 ein. Das
zwei te Modifizierungsmittel 15 bildet die neue Zufallszahl
für die alte Zufallszahl zum geeigneten Adressieren des
Speichers 12, wenn der Datenprozessor die Pseudo—Sprung—
adresse auf die Speichereinheit 10 überträgt. Auf diese ;
Weise sorgt eine vorgesehene Gruppe von Xnf oi'ma tions-Wörtern
in Form von an einigen der Speicherstelion des
Speichers 12 gespeicherten Sprungbefehlen dafür, dass das
erste Mod i !.' Lz L e.rungsmi t to L I7 diese Sprungadressen vor der
Übertragung aiii' den Datenbus I3 ändert.
PIIA 1 Ο O I X /IA. 2 ο . j . 1 <;«
Angenommen sei, dass die in den Speicher 12 eingeschriebenen
Programinwoi't er kopiert werden. Die in den
Datentms I'5 eingegebenen i'seudo-Adres.sen werden dabei in
das kopierte Programm aufgenommen und machen das kopierte
Programm unbrauchbar, weil eine falsche Steile im Programm adressiert wird, wenn das kopierte Programm dur cJ ige führ t
wird. Venn weiter noch der Kopierei' die Speichereinheit
nach der Ausgabe der Pseudo-Adresse adressiert, wird die
gelieferte Adresse vom zweiten Modi l'iz ierungsmi 11 el ge —
1^ ändert. Der Kopierer wird also nicht wissen, welche Spei —
cherstelle adressiert wurde. Das kopierte Programm ist daher völlig unbrauchbar.
In einer erfindungsgemässen Form enthält jeder aus
dem Speicher übertragene Sprungbefehl eine binäre 1 an einer Bitstelle. In allen anderen Speichers te Lien des Speichers
würde diese Bitstelle eine binäre C) enthalten. Xn dieser Ausführungsform würde der Sprungbefehisdecoder die Form
einer Schaltung annehmen, der die binäre 1 an der vorgeschriebenen
Bitstelle beantwortet und dadiireh die Krzeugun;·,
des Bef ehlssigmils nach obiger Beschreibung auslöst.
In einer anderen Form würden alle Sprungbefehle
sich in einem bestimmten Teil des Speichers befinden und das Identifizieruiigsmit tel 10 würde einen Komparator enthalten,
der auf die Adressen an den Stellen in diesem Teil anspricht und dafür sorgt, dass der Zufallszahlgenerator
arbeitet, wie oben beschrieben. Der Komparator ist daher z.B. mit einem Speicherelement verbunden, in dein die
Adressen als Identifizierungsinformation zur Ermöglichung
des Vergleichs gespeichert sind. Wenn sich alle Sprungbefehle in einem bestimmten Teil des Speichers 12 befinden,
könnte das Identifizierungsmittel z.B. einen Adressdecoder
zum Decodieren der Adressen dieses besi immten TeLIs enthalten. Andere Arten von !den ti ΓLzierungsmitteln sind dem
Fachmann bekannt und sind anstelle dur beschriebenen
Mittel einsetzbar.
Das identifizierungsmittel könnte auch auf andere
Befehle als nur auf die Sprungbefehle ansprechen, wie z.B.
auf GO-TO-Be fohle oder andere Befehle, die auf den ,",icich-
04 iü/,υα
piιλ ι ()<>
ι yAi, - ~<} ·:>) ·Ί '-'&
muss i.,'.von ,",esUil'l.iM! Fortschritt dew Programmzählers einwirke
i ι.
Verschiedene Vurw Lrklichungen sind ebenfalls möglich
f' ti j · das ci'stp uiul das zweite Mod 1 iMzierungsmi t te J., die
■' Iu- i. sjj j. e I. s we.L st; eine Umkehrs tuf e zum Umkehren einer oder
mehrerer JHtstellen im Adressteil des Sprungbefehls enthalten
könnten. Für diese Verwirklichung ist ein Zufallszahl;;cjiei'ator
se J bs r.vers ländlich redundant.
In einer alternativen Ausführungsi'orm würde das
erste Mod Li'izierungsmi ttel z.B. eine erste Adress tabelle
entJial ten, die vom Adressteil des Spi'ungbefehls adressiert
wird und Tür jeden SprungbeX'ehl eine Ersatzadresse enthält.
Das zweite Mod i.i'izierungsini ttel würde daher selbs tvers tänd-J
i.t.Ji (.1XiU- zwei. Le Adr es s tabelle enthalten, die zum Wieder—
1·Γ>
Jiers ι. el L cn i\e^ or.i. ^',inalen Adressteils vorgesehen ist.
JJs Lsi. klar, dass verschiedene Abwandlungen im
besrJirieheiien system nach der Erfindung vom Fachmann leicht
ableitbar sind, und dass die hier beschriebene Anordnung nur -Auv Ve ransoJuiu lichung dient und keine Beschränkung
bedeuten soll.
Claims (13)
- PHA IOO1 \Λ MO. 3. 1'^'PATEXTAN S1 MiT 'Cl I IiΓΐ. j Da L enverarbei tunpssys Lern mit einem Üatenprozossor und einer Speichereinheit, die aus einer Sehutzeinhei t und einem Speicher zur Speiciierung zumindest eines Programms bestellt, das eine Anzalil von Prücranimwörtern enthält, wobei der Speicher einen Anschluss für den Auätausch von Inforraationswörtern enthält, wobei jedes IniOrmationswort ein Prograramwort und sein jeweiliges Adresswort enthält, wobei die Schutzeiriheit folgende Elemente enthält:- ein Identifizierungsmittel mit einem an den Anschluss angeschlossenen ersten Eingang zum Identifizieren derjenigen Inforrnafcionswörter aus einem Infüriuationswürterfluss am Anschluss, die zu einer vorgegebenen Gruppe gehören, in der die Informationswör ter ein Prograinmwort enthalten, das einen Adressteil zum Adressieren eines weiteren Programmworts enthält, wobei das Identifizierungsmittel weiter zum anschllessenden ErzeLigen eines Befehlssignals dient,- ein erstes Modif izierungsiui t, teJ. mit einem an den Anschluss angeschlossenen zweiten Eingang und einem an das Xdentifizierungsmittel angeschlossenen dritten Eingang zum Empfangen des Befehlssignals, wobei das erste Modifizierungsmittel zur Durchführung einer ersten Modifizierungsoperation an einem empfangenen Prograramwort unter der Steuerung des Befehlssignals dient, wobei das erste Modifizierungsmittel an einen ersten Datenausgang der Spexchereinheit angeschlossen ist, wobei der Datenprozessor folgende Elemente enthält:- einen Dateneingang, der an den ersten Dateinxusgang zum Empfangen von Datensignalen angeächlossen ist, - einen Programmzähler, der unter der Steuerung der empfangenen Datensignale einstellbar 1st,- einen ersten Adressausgan,",·, der an einen ersten Adresseingang der Speicherelnheit zur Lieferung von Adress—341Ö209VUA ΙΟ«) Ιsi cn a J. oil Ln ein ei' vom Profi'rammzähler bestimmten Reihenf ο 1 go angosehIοssen ist,dadurch gekennzeichnet, dass die erste Modifizierungsopcriit Lon am Adressteil des Programmworts, bei dem das IUfTcJiLsSLiVTIaI erzeugt wurde, durchgeführt wird, wobei die Sehu t zeinhei L weiter ein zweites Modifizierungsmittel enthält, von dem ein vierter Eingang mit dem ersten Adresseingang und ein zweiter Adressausgang mit dem Anschluss verbunden ist, wobei das zweite Modifizierungsmittel zur. Durchführung einer zweiten Modifizierungsoperation bei einem empfangenen Adressignal zum Ausgleichen der ersten Modifizierungsopuration vorgesehen ist.
- 2. Datenverarbeitungssystem nach Anspruch I, dadurch gekennzeichnet, dass ein ,jedes der Programmwörter der vorgegebenen Gruppe einen Befehl enthält, der auf einen gleichiiiäss igen gestuften Fortschritt des Programmzählers einwirkt.'_] · Datenverarbeitungssystem nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Programmwörter der vorgegebenen Gruppe einen Opcode-Teil enthalten, dass das Iden t L f.i zioi'ungsmi t te i einen Opcode-Decoder zum Decodieren des Oj)cotle-Teils der Programmwürter enthält, -f. Datenverarbeitungssystem nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass das Identifizierungsmittel einen Adressdecoder zum Decodieren der Adresswörter enthält, die einer vorgegebenen Gruppe zugeordnet sind.
- 3. Datenverarbeitungssystem nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass das Identifizierungsmittel ein Speicherelement zur Speicherung einer Identifizierungsinformation i'ür ein Jedes der Informationswörter der vorgegebenen Gruppe und einen Komparator enthält, von dem ein erster Komparatoreingang mit dem Speicherelement und ein zweiter Komparatoreingang mit dem ersten Eingang zur Verwirklichung der Identifizierung durch den Vei^gleich der 3^ Iilcn l ii'ika tlonsin f ornia tion mit den gelieferten Inf ormacionswörteni verbunden ist, wobei das Befehlssignal bei Übereinstimmung zwischen der Identifikationsinformation und dem In i'orrnationswor t erzeugt wird.
- PHA I 0 91 y^2> . 20.3.1 '..·>« Λ
- υ.
- DaU-nverarbeitungssystem nach einem der Ansprüche 2, 3 j 'ι oder 3» dadurch gekennzeichnet, dass jedos Prograininwor t der vorgegebenen Gruppe einen Sprungbe t'eJiL und das Adresswort des Programmworts enthäLt, nacli. dem gesprungen wird.
- 7. Datenverarbeitungssystem nach Anspruch 5» dtidurch gekennzeichnet;, dass die Identifikationsiiiforination zumindest einen Teil des Inhalts des Programmworts enthält.
- 8. Dateiiverarbeitungssystem nach Anspruch 5, dadurch gekennzeichnet, dass die Identifikationsinformation zumindest einen Teil des Inhalts des Adressworts enthält.
- 9. Datenverarbeitungssystem nach einem der voranstehenden Ansprüche, dadurch gekennzeichnet, dass die erste und die zweite Modi t'izierungsoperation die Durchführung einer mathematischen Bewirkung umfasst.
- 10. Datenverarbeitungssystem nach Anspruch 9> dadurch gekennzeichnet, dass das erste Modifizierungsmittel einen Addierer zum Addieren eines Werts beim Adressteil, und das zweite Modifizierungsmittel einen Subtrahierer dieses Werts vom Adressignal enthält.
- 11. Datenverarbeitungssystem nach Anspruch TO, dadurchgekennzeichnet, dass das erste Modifizierungsmittel einen Zufallsgenerator zum Erzeugen dieses Werts enthält, wobei der Zufallsgenerator mit einem Ausgang an das zweite Modifizierungsmittel zur Lieferung dieses Werts angeschlossen ist,
- 12. Speichereinheit zur Verwendung in einem Datenverarbeitungssystem nach einem oder mehreren der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die Speichereinheit einen Speicher und eine Schutzeinheit enthält.
- 13. Schutzmittel zur Verwendung in einem Datenverarbeitungssystem nach einem der Ansprüche 1 bis 11. 1^1-. Speichereinheit nach Anspruch 12, dtidurch gekennzeichnet, dass die Speichereinheit unter Verwendung einer Integrationsschal.kungstechnik aufgebaut ist, und dass der Speicher und die Schutzeinheit auf der gleichen Chip-Oberfläche integriert sind.13. Videospielrnodul mit einer Speichereinheit nach einem der Ansprüche 12 oder 1'1I-.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US48741183A | 1983-04-29 | 1983-04-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE3415209A1 true DE3415209A1 (de) | 1984-10-31 |
Family
ID=23935622
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19843415209 Withdrawn DE3415209A1 (de) | 1983-04-29 | 1984-04-21 | Speichereinheit mit einem speicher und einer schutzeinheit |
Country Status (10)
Country | Link |
---|---|
JP (1) | JPS603024A (de) |
CA (1) | CA1213070A (de) |
DE (1) | DE3415209A1 (de) |
FR (1) | FR2545244B1 (de) |
GB (1) | GB2140592B (de) |
HK (1) | HK38788A (de) |
IE (1) | IE55440B1 (de) |
IT (1) | IT1209538B (de) |
SE (1) | SE462188B (de) |
SG (1) | SG10488G (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3526130A1 (de) * | 1985-07-22 | 1987-01-29 | Lang Klaus Dipl Ing | Digitaler programmschutzbaustein |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60177498A (ja) * | 1984-02-23 | 1985-09-11 | Fujitsu Ltd | 半導体記憶装置 |
GB8507427D0 (en) * | 1985-03-21 | 1985-05-01 | Robertson J A | Prevention of soft & hardware copying |
AU2001270814A1 (en) | 2000-07-18 | 2002-01-30 | Bitarts Limited | Digital data protection arrangement |
FR2823398B1 (fr) | 2001-04-04 | 2003-08-15 | St Microelectronics Sa | Extraction d'une donnee privee pour authentification d'un circuit integre |
FR2825873A1 (fr) * | 2001-06-11 | 2002-12-13 | St Microelectronics Sa | Stockage protege d'une donnee dans un circuit integre |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4120030A (en) * | 1977-03-11 | 1978-10-10 | Kearney & Trecker Corporation | Computer software security system |
US4306289A (en) * | 1980-02-04 | 1981-12-15 | Western Electric Company, Inc. | Digital computer having code conversion apparatus for an encrypted program |
US4377844A (en) * | 1980-02-20 | 1983-03-22 | Marc Kaufman | Address translator |
GB2099616A (en) * | 1981-06-03 | 1982-12-08 | Jpm Automatic Machines Ltd | Improvements relating to microprocessor units |
GB2114331B (en) * | 1982-01-06 | 1985-10-09 | Emi Ltd | Program storage hardware |
NL8201847A (nl) * | 1982-05-06 | 1983-12-01 | Philips Nv | Inrichting voor het beschermen tegen onbevoegd uitlezen van in een geheugen te memoriseren programmawoorden. |
-
1984
- 1984-04-21 DE DE19843415209 patent/DE3415209A1/de not_active Withdrawn
- 1984-04-26 CA CA000452806A patent/CA1213070A/en not_active Expired
- 1984-04-26 IT IT8420695A patent/IT1209538B/it active
- 1984-04-26 IE IE1019/84A patent/IE55440B1/en unknown
- 1984-04-26 GB GB08410712A patent/GB2140592B/en not_active Expired
- 1984-04-26 SE SE8402285A patent/SE462188B/sv not_active IP Right Cessation
- 1984-04-27 FR FR848406677A patent/FR2545244B1/fr not_active Expired - Lifetime
- 1984-04-27 JP JP59084181A patent/JPS603024A/ja active Granted
-
1988
- 1988-02-05 SG SG104/88A patent/SG10488G/en unknown
- 1988-05-26 HK HK387/88A patent/HK38788A/xx unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3526130A1 (de) * | 1985-07-22 | 1987-01-29 | Lang Klaus Dipl Ing | Digitaler programmschutzbaustein |
Also Published As
Publication number | Publication date |
---|---|
SG10488G (en) | 1988-07-01 |
GB2140592B (en) | 1987-10-21 |
CA1213070A (en) | 1986-10-21 |
FR2545244B1 (fr) | 1990-05-04 |
GB8410712D0 (en) | 1984-05-31 |
SE8402285L (sv) | 1984-10-30 |
SE462188B (sv) | 1990-05-14 |
IE55440B1 (en) | 1990-09-12 |
SE8402285D0 (sv) | 1984-04-26 |
HK38788A (en) | 1988-06-03 |
IT8420695A0 (it) | 1984-04-26 |
JPS603024A (ja) | 1985-01-09 |
IT1209538B (it) | 1989-08-30 |
GB2140592A (en) | 1984-11-28 |
FR2545244A1 (fr) | 1984-11-02 |
JPH0334103B2 (de) | 1991-05-21 |
IE841019L (en) | 1984-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2523414C3 (de) | Hierarchische Speicheranordnung mit mehr als zwei Speicherstufen | |
DE2810168A1 (de) | Verfahren zum sichern eines computerprogramms gegenueber entnahme bzw. wiedergabe durch einen benutzer sowie vorrichtung zur durchfuehrung des verfahrens | |
DE2355993B2 (de) | Programmierbare datenverarbeitungsanlage | |
DE1901228A1 (de) | Datenverarbeitungsanlage mit Einrichtungen zur Wiederholung von Operationen bei Auftreten eines Fehlers | |
DE60209631T2 (de) | Verfahren zur Programmierung einer Automatisierungsapplikation | |
DE3226033A1 (de) | Speicherkorrektursystem | |
DE2646163B2 (de) | Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers | |
DE10308545A1 (de) | Verfahren und Vorrichtung zum Aktualisieren eines verteilten Programms | |
DE1774052B1 (de) | Rechner | |
DE60319005T2 (de) | Eintrittspunkt für daten der digitalen rechteverwaltung | |
DE3710813A1 (de) | Datenverarbeitungssystem sowie verfahren dafuer | |
DE2758829A1 (de) | Multiprozessor-datenverarbeitungssystem | |
DE1801620A1 (de) | Verfahren und Anordnung zur Adressierung eines Speichers in einer Datenverarbeitungsanlage | |
DE19937423A1 (de) | Verfahren und Vorrichtung zur schnellen Datensicherung und Datenübertragung | |
DE3415209A1 (de) | Speichereinheit mit einem speicher und einer schutzeinheit | |
DE102005040916A1 (de) | Speicheranordnung und Betriebsverfahren dafür | |
DE2513262B2 (de) | Digitale codeumwandlungsanordnung | |
EP0265636A1 (de) | Multiprozessor mit mehreren mit Cache-Speichern ausgerüsteten Prozessoren und einem gemeinsamen Speicher | |
DE2519195C2 (de) | Assoziativspeicher | |
EP1647898A1 (de) | Serverlose Replikation von Datenbanken | |
EP2812788B1 (de) | Verfahren zum löschen von informationen, verwendung eines verfahrens, computerprogrammprodukt und computersystem | |
DE10322837A1 (de) | Verfahren zur Projektierung eines Automatisierungssystems | |
DE1549428A1 (de) | Vermittlungs- und Steuergeraete in einem Rechenmaschinensystem | |
DE2915113A1 (de) | Busvorrichtung fuer ein datenverarbeitendes system | |
DE60317405T2 (de) | Verfahren zur Steuerung der Ausbreitung von Metadatenelementen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8141 | Disposal/no request for examination |