DE4103173C5 - Device for protection against unauthorized use of software - Google Patents
Device for protection against unauthorized use of software Download PDFInfo
- Publication number
- DE4103173C5 DE4103173C5 DE4103173.3A DE4103173A DE4103173C5 DE 4103173 C5 DE4103173 C5 DE 4103173C5 DE 4103173 A DE4103173 A DE 4103173A DE 4103173 C5 DE4103173 C5 DE 4103173C5
- Authority
- DE
- Germany
- Prior art keywords
- data
- data generator
- generator
- computing system
- software
- 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
- 230000004224 protection Effects 0.000 title claims abstract description 25
- 238000013475 authorization Methods 0.000 claims abstract description 20
- 230000006399 behavior Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 abstract description 22
- 230000001419 dependent effect Effects 0.000 abstract description 3
- 238000004458 analytical method Methods 0.000 description 19
- 238000000034 method Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 229940003372 compro Drugs 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- WIKYUJGCLQQFNW-UHFFFAOYSA-N prochlorperazine Chemical compound C1CN(C)CCN1CCCN1C2=CC(Cl)=CC=C2SC2=CC=CC=C21 WIKYUJGCLQQFNW-UHFFFAOYSA-N 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
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/123—Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/007—Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress
Abstract
Vorrichtung zum Schutz gegen unautorisierte Benutzung von Software, bei der mindestens ein mit einem Signaleingang eines Rechensystems (10) verbindbarer externer Datengenerator (11) Daten erzeugt, wobei die vom Datengenerator (11) ausgegebenen Daten von empfangenen Daten aus dem Rechensystem (10) abhängig sind und das Rechensystem in einen Fehlerzustand gebracht wird oder die Software im Rechensystem nicht zweckmäßig arbeitet, wenn das Rechensystem keine oder fehlerhafte Daten über den Signaleingang (13) empfängt, dadurch gekennzeichnet, daß der Datengenerator (11) nicht vorgesehene Daten oder Datenfolgen und/oder zeitlich nicht vorgesehene Daten oder Datenfolgen als Manipulationsversuche erkennt und bei erkanntem Manipulationsversuch den Inhalt eines Speichers im Datengenerator ändert und infolgedessen beim Empfang weiterer Daten keine oder fehlerhafte Daten ausgibt und/oder eine Benutzungsautorisierung verändert.Device for protection against unauthorized use of software, in which at least one external data generator (11) connectable to a signal input of a computing system (10) generates data, the data output by the data generator (11) being dependent on received data from the computing system (10) and the computing system is brought into an error state or the software in the computing system does not function properly when the computing system receives no or erroneous data via the signal input (13), characterized in that the data generator (11) does not provide any intended data or data sequences and / or time recognize unintentional data or sequences of data as manipulation attempts and changes the content of a memory in the data generator when a manipulation attempt is detected and consequently, when receiving further data, outputs no or erroneous data and / or modifies a user authorization.
Description
Der X. Zivilsenat des Bundesgerichtshofs hat auf die mündliche Verhandlung vom 13. September 2016 für Recht erkannt:
Auf die Berufung der Beklagten und unter Zurückweisung der weitergehenden Rechtsmittel der Parteien wird das Urteil des 2. Senats (Nichtigkeitssenats) des Bundespatentgerichts vom 23. Januar 2014 abgeändert.
Das
The judgment of the 2nd Senate (Nullity Senate) of the Federal Patent Court of 23 January 2014 is amended to appeal the defendants and refuse the further appeal of the parties.
The
Beschreibungdescription
Die Erfindung bezieht sich auf Vorrichtungen zum Schutz gegen unautorisierte Benutzung von Software nach dem Oberbegriff des Patentanspruchs 1.The invention relates to devices for protection against unauthorized use of software according to the preamble of patent claim 1.
Ein möglicher Schutz gegen die unautorisierte Benutzung von Software besteht darin, daß der Käufer eines Programmes zugleich ein Hardware-Bauteil, z. B. ein Steckerbauteil, mit erwirbt, das mit dem Rechner verbunden werden muß, damit das Programm genutzt werden kann. In einem einfachen Fall fragt der Rechner ab, ob das Hardware-Teil vorhanden ist. Falls nicht, wird der Programmablauf gestört. Als Hardware-Bauteil kann nach einer bekannten Vorrichtung ein externer Datengenerator verwendet werden.One possible protection against the unauthorized use of software is that the buyer of a program at the same time a hardware component, for. As a plug component, with acquires, which must be connected to the computer, so that the program can be used. In a simple case, the computer will ask if the hardware part is present. If not, the program flow is disturbed. As a hardware component, an external data generator can be used according to a known device.
Aus der
Das erfaßte Ein-/Ausgabeverhalten kann mit Hilfe von Logik-Minimierungsverfahren auf einfache Logikfunktionen reduziert werden. Diese Logik-Minimierungsverfahren können aufgrund ihrer ständigen Verbesserung schon relativ große Tabellen verarbeiten.The detected I / O behavior can be reduced to simple logic functions using logic minimization techniques. These logic minimization methods, because of their constant improvement, can already process relatively large tables.
Ein zweites Verfahren zur Analyse der Funktion eines Datengenerators kommt aus dem Bereich der künstlichen Intelligenz. Nach dem Modellbildungsverfahren wird eine Tabelle aus zunächst wenigen, zufälligen Eingaben und den dazugehörigen Ausgaben erstellt, mit der ein erstes Modell des Datengenerators gebildet wird. Tritt nun zwischen Datengenerator und Modell bei einer weiteren Ein- und Ausgabe ein Unterschied auf, wird diese Ein-/Ausgabe in die Tabelle aufgenommen und ein verbessertes Modell gebildet.A second method for analyzing the function of a data generator comes from the field of artificial intelligence. According to the modeling method, a table is first created from a few random inputs and the associated outputs, with which a first model of the data generator is formed. If a difference occurs between the data generator and the model for another input and output, this input / output is included in the table and an improved model is formed.
Die bekannten Schutzvorrichtungen gegen unautorisierte Benutzung von Software haben somit den Nachteil, daß die Funktion des Datengenerators analysiert werden kann. Ist dessen Funktion bekannt, kann z. B. durch entsprechende Modifikation im Programm ein ohne Steckerbauteil lauffähiges Programm erstellt werden, wobei das Abfragen des Steckerbauteils durch Aufruf einer Hilfsroutine ersetzt wird, welche das Steckerbauteil simuliert. Andererseits könnte das analysierte Steckerbauteil nachgebaut werden.The known protections against unauthorized use of software thus have the disadvantage that the function of the data generator can be analyzed. If its function is known, z. B. be created by appropriate modification in the program without plug component executable program, the queries of the connector component is replaced by calling an auxiliary routine that simulates the connector component. On the other hand, the analyzed connector component could be reconstructed.
Die
Die
Die
Bei dem Daten- und Software-Schutzsystem SAM der COM PRO TEC Hard- und Softwaresicherheitssysteme GmbH besteht das Schutzprinzip darin, Programmteile der zu schützenden Software, deren Opcodes verschlüsselt sind, auf einem zweiten Rechner abzuarbeiten. Die abzuarbeitenden Programmteile bestehen also aus Maschinenbefehlen, d. h. aus Opcodes und Adressen. Das SAM-Rechensystem kann erst durch Laden eines Programmes zu einem Datengenerator werden und kann lediglich das geladene Programm auf Fehler überprüfen. Der so hergestellte Datengenerator prüft jedoch nicht vom Rechensystem mit dem zu schützenden Programm empfangene Daten.In the case of the data and software protection system SAM of the COM PRO TEC hardware and software security systems GmbH, the protection principle consists of executing program parts of the software to be protected, whose opcodes are encrypted, on a second computer. The program parts to be processed thus consist of machine instructions, i. H. from opcodes and addresses. The SAM computing system can only become a data generator by loading a program and can only check the loaded program for errors. However, the data generator thus produced does not check data received from the computing system with the program to be protected.
Der Erfindung liegt daher die Aufgabe zugrunde, eine Vorrichtung zum Schutz gegen eine unautorisierte Benutzung von Software zu schaffen, die eine Analyse der Funktion des Datengenerators anhand seiner Ein- und Ausgaben bzw. nur seiner Ausgaben äußerst erschwert.The invention is therefore an object of the invention to provide a device for protection against unauthorized use of software, which makes an analysis of the function of the data generator on the basis of its inputs and outputs or only its expenditure extremely difficult.
Diese Aufgabe wird gelöst durch die Patentansprüche 1, 3, 4 oder 14.This object is achieved by the claims 1, 3, 4 or 14th
Unter der darin verwendeten Formulierung ”Manupulationsversuch” ist nachfolgend die Analyse der Funktion des Datengenerators zu verstehen.The term "manufaturation test" used therein is understood below to mean the analysis of the function of the data generator.
Die erfindungsgemäße Vorrichtung bezieht sich auf einen Datengenerator, der Manipulationsversuche erkennt, worauf nach einem oder mehreren solcher Versuche der Datengenerator keine oder fehlerhafte Daten ausgibt. Damit ist eine weitergehende Analyse der Funktion des Datengenerators ausgeschlossen. Eine Manipulation kann z. B. bei Empfang nicht vorgesehener Daten oder Datenfolgen oder Öffnung eines Gehäuses des Datengenerators erkannt werden. Neben der Ausgabe von fehlerhaften Daten oder der Nichtausgabe von Daten überhaupt bei erkannter Manipulation, kann ferner die Benutzungsautorisierung eingeschränkt werden, so daß z. B. keine weitere Zugriffsmöglichkeit mehr besteht. Eine weitere Erschwerung der Funktionsanalyse des Datengenerators wird dadurch erreicht, daß die Ausgabe von Daten abhängig gemacht wird von im Datengenerator gespeicherten Daten. Hierzu gibt es zahlreiche Möglichkeiten, die weiter unten erläutert werden.The device according to the invention relates to a data generator which detects manipulation attempts, whereupon after one or more such attempts the data generator outputs no or erroneous data. This precludes further analysis of the function of the data generator. A manipulation can z. B. upon receipt of unintended data or data sequences or opening of a housing of the data generator can be detected. In addition to the output of erroneous data or the non-output of data at all detected manipulation, also the user authorization can be restricted, so that z. B. no further accessibility exists. Further complication of the function analysis of the data generator is achieved by making the output of data dependent on data stored in the data generator. There are numerous possibilities for this, which are explained below.
Eine Möglichkeit zur Erfassung von Manipulationsversuchen ist gemäß der Erfindung dann gegeben, wenn nur bestimmte Daten oder Datenfolgen zugelassen sind bzw. Daten oder Datenfolgen nur in bestimmten Zeitintervallen. Die Analyseverfahren erzeugen zufällige oder iterative Folgen von Eingaben für den Datengenerator. Empfängt der Datengenerator solche zufälligen Daten, kann der Inhalt eines Speichers im Datengenerator so verändert werden, daß der Datengenerator keine oder fehlerhafte Daten erzeugt, so daß alle weiteren Ausgaben, die die Analyseverfahren verlangen, fehlerhaft sind.One possibility for detecting manipulation attempts is given according to the invention when only certain data or data sequences are permitted or data or data sequences only at certain time intervals. The analysis methods generate random or iterative sequences of inputs to the data generator. If the data generator receives such random data, the content of a memory in the data generator can be changed so that the data generator generates no or erroneous data, so that all further outputs which require the analysis methods are erroneous.
Manipulationsversuche, die ein Öffnen des Gehäuses des Datengenerators betreffen, können dadurch erkannt werden, daß z. B. die Stromversorgung durch das Öffnen des Gehäuses unterbrochen wird, so daß der Speicher des Datengenerators gelöscht wird.Manipulation attempts that affect an opening of the housing of the data generator can be detected by the fact that z. B. the power supply is interrupted by the opening of the housing, so that the memory of the data generator is deleted.
Nach einer Alternative der Erfindung, die – wie die anderen Alternativen – zugleich mit mindestens einer der weiteren Alternativen verwirklicht werden kann, weisen die vom Datengenerator erzeugten Ausgangsdaten eine nicht-deterministisch erzeugte Redundanz auf. Die z. B. mit einem Zufallszahlengenerator oder durch wahlfreien Zugriff auf einen integrierten Timer erzeugte Redundanz erhöht erheblich die Rechenzeit der Analyseverfahren. Damit bietet diese erfindungsgemäße Vorrichtung insbesondere einen Schutz gegen Analyse der durch das zu schützende Programm regulär erzeugten Eingaben und der entsprechenden Ausgaben, die sich relativ leicht an den Signaleingängen und Ausgängen des Rechensystems beobachten lassen.According to an alternative of the invention, which - like the other alternatives - can be realized simultaneously with at least one of the further alternatives, the output data generated by the data generator has a non-deterministically generated redundancy. The z. B. with a random number generator or random access to an integrated timer generated redundancy significantly increases the computational time of the analysis method. In particular, this device according to the invention thus provides protection against analysis of the inputs regularly generated by the program to be protected and the corresponding outputs, which can be observed relatively easily at the signal inputs and outputs of the computer system.
Ein guter Schutz gegen Analyseverfahren wird ferner mit einer alternativen Vorrichtung erzielt, in der der Datengenerator zwei Zustände besitzen kann. Der Datengenerator kann aus einem Zustand A in einen Zustand B übergehen durch aufeinanderfolgendes Annehmen von mindestens fünf weiteren Zuständen C. Wesentlich dabei ist, daß die vom Datengenerator ausgegebenen Daten nicht von den Zuständen C abhängen. Damit lassen sich über mehrere Eingaben hinweg keine direkten Schlüsse über die Zustände des Datengenerators ziehen, was z. B. eine Tabelle zur Verarbeitung mit einem Logik-Minimierungsprogramm sehr groß werden läßt, da viele mögliche Zustände in Betracht gezogen werden müssen. Die dafür erforderliche Speicherkapazität ist auf den meisten Personal-Computern nicht verfügbar.Good protection against analysis techniques is further achieved with an alternative device in which the data generator can have two states. The data generator may transition from a state A to a state B by successively accepting at least five other states C. The essential thing here is that the data output by the data generator does not depend on the states C. This makes it possible to draw no direct conclusions about the states of the data generator over several inputs, which is eg. For example, a table may be made very large for processing with a logic minimizer because many possible states must be considered. The required storage capacity is not available on most personal computers.
Nach einer weiteren Alternative der Erfindung ist vorgesehen, verschiedene Autorisierungsdaten zu speichern, die z. B. den Zugriff auf Programme oder Programmteile steuern, die Anwendung eines bestimmten Rechensystems vorschreiben oder andere Rechensystemtypen ausschließen. Der Zugriff auf Programme kann zeitlich begrenzt werden, so daß nach bestimmten Zeitintervallen ein Benutzer neue Codewörter zur Veränderung der Autorisierungsdaten eingeben kann, die er z. B. beim Hersteller des Programmes erfragen kann. Die Daten über die Autorisierung zur Benutzung der Software sind nach weiteren Ausgestaltungen der Erfindung veränderbar und werden ggfs. über die Signalleitung verändert.According to another alternative of the invention is provided to store various authorization data, the z. For example, controlling access to programs or program parts, requiring the use of a particular computing system, or excluding other computing system types. The access to programs can be limited in time, so that after certain time intervals a user can enter new codewords to change the authorization data that he z. B. can ask the manufacturer of the program. The data on the authorization to use the software can be changed according to further embodiments of the invention and, if necessary, be changed over the signal line.
Bei erkannten Manipulationsversuchen kann der Datengenerator auch so geschaltet werden, daß er Autorisierungen einschränkt, z. B. zeitlich, indem während einer gewissen Zeit nach Erkennen eines Manipulationsversuches keine oder fehlerhafte Daten ausgegeben werden, oder überhaupt keine Nutzung des Programms mehr möglich ist. Nach einer zeitlichen Blockierung oder nach Eingabe neuer Autorisierungsdaten ist der Datengenerator wieder funktionsfähig, so daß z. B. Datenübertragungsfehler, die als Manipulationsversuche interpretiert werden, nicht zu einer dauernden Funktionsuntüchtigkeit der erfindungsgemäßen Vorrichtung führen. When detected manipulation attempts, the data generator can also be switched so that it restricts authorizations, z. B. temporally by no or erroneous data are output during a certain time after detecting a manipulation attempt, or no use of the program is possible. After a timeout or after entering new authorization data, the data generator is functional again, so that z. As data transmission errors that are interpreted as manipulation attempts, not lead to a permanent inoperability of the device according to the invention.
Die Speicherung von unterschiedlichen Autorisierungen mit einem Datengenerator führt zu einem stark erhöhten Schutz gegen Analyseprogramme, weil es wesentlich schwieriger ist, einen Datengenerator mit mehreren Autorisierungsfunktionen zu analysieren, als mehrere physikalisch getrennte Datengeneratoren mit einfachen Autorisierungsfunktionen. Diese Ausgestaltung der Erfindung ist auch verkaufstechnisch akzeptabel, da die Autorisierungen erweitert oder eingeschränkt werden können, was z. B. bei einem Benutzerwechsel notwendig ist. So können z. B. benutzerspezifische Codewörter nach Erfragung beim Hersteller neu angegeben werden.Storing different authorizations with a data generator results in greatly increased protection against analysis programs because it is much more difficult to analyze a data generator with multiple authorization functions than several physically separate data generators with simple authorization functions. This embodiment of the invention is also technically acceptable, since the authorizations can be extended or restricted, which z. B. is necessary for a user change. So z. B. user-specific codewords can be renamed after inquiry at the manufacturer.
Eine im Datengenerator gespeicherte Benutzer-Identifikation und/oder Seriennummer gemäß einer weiteren Ausgestaltung, von der die Ausgaben des Datengenerators abhängen, dürften einen Raubkopierer abschrecken, Kopien des Datengenerators bzw. Simulationen zu erstellen bzw. zu verbreiten.A user identification and / or serial number stored in the data generator according to another embodiment on which the data generator outputs depend should discourage a pirate to make or distribute copies of the data generator or simulations.
Ein weiterer äußerst wirksamer Schutz gegen die Analyse der Funktion eines Datengenerators besteht darin, eine Vorrichtung zu schaffen, bei der die Daten von einem von-Neumann-Rechner erzeugt werden, d. h. durch einen Algorithmus. Dieser läßt sich nicht durch rein sequentielle, minimierte Logikfunktionen darstellen.Another extremely effective protection against the analysis of the function of a data generator is to provide a device in which the data is generated by a von Neumann computer, i. H. through an algorithm. This can not be represented by purely sequential, minimized logic functions.
Generell gilt, daß ein Schutz gegen Analyseprogramme mit steigender Anzahl der möglichen Zustände des Datengenerators wirksamer wird. Die Zahl solcher Zustände wird wesentlich erhöht, wenn der Inhalt eines im Datengenerator enthaltenen Speichers, z. B. eines RAM (Random Access Memory), erhalten wird. Da die äußere Stromversorgung des Datengenerators unterbrochen werden kann, ist der Inhalt des Speichers nur durch eine eigene Stromversorgung aufrecht zu erhalten. Eine solche eigene Stromversorgung ist nach einer weiteren Alternativen der Erfindung im Datengenerator angeordnet und erhöht somit den Schutz gegen Analyseverfahren.In general, protection against analysis programs becomes more effective as the number of possible states of the data generator increases. The number of such states is substantially increased if the content of a memory included in the data generator, e.g. B. a random access memory (RAM) is obtained. Since the external power supply of the data generator can be interrupted, the contents of the memory can only be maintained by its own power supply. Such a separate power supply is arranged according to a further alternative of the invention in the data generator and thus increases the protection against analysis methods.
Ferner kann bei einer anderen Lösung beim Öffnen des Gehäuses ein Signal an den Datengenerator ergehen, der dadurch in einen Zustand gebracht wird, in dem keine oder fehlerhafte Daten erzeugt werden.Further, in another solution, when opening the housing, a signal may be sent to the data generator which is thereby brought into a state in which no or erroneous data is generated.
Für die erfindungsgemäße Vorrichtung kann ferner mindestens ein zweiter Datengenerator vorgesehen sein, der über Signaleingänge und -ausgänge mit dem ersten Datengenerator verbindbar ist.Furthermore, at least one second data generator, which can be connected to the first data generator via signal inputs and outputs, can be provided for the device according to the invention.
Eine weitere Alternative sieht vor, daß die Ausgabe des Datengenerators und ggfs. die Eingabe in den Datengenerator über eine MIDI-Schnittstelle erfolgt. Eine MIDI(Musical instrumental digital interface)-Schnittstelle dient normalerweise der Übertragung von Daten an Musikgeräte und ist an vielen Computern vorhanden. Bei Datenübertragung über diese Schnittstelle können Daten an bzw. aus dem Datengenerator unter andere Daten gemischt sein, wodurch eine Analyse erschwert ist. Ein Analyseverfahren, das eine durch einen normalen Programmablauf erzeugte Datentabelle der Ein- und Ausgaben analysiert, muß auch die für die Musikinstrumente vorgesehenen Daten mit in die Analyse aufnehmen, da diese auf die Ausgaben des Datengenerators wirken könnten. Dies vergrößert den Analyseaufwand erheblich. Andererseits ist die Verwirklichung des Software-Schutzes hardwaremäßig vereinfacht. Diese Variante kommt besonders für den Schutz von Musikprogrammen in Betracht. Gemäß einer praktischen Weiterbildung kann der Datengenerator für den Anschluß eines Musikinstrumentes oder eines zusätzlichen Datengenerators eine weitere MIDI-Schnittstelle aufweisen.Another alternative provides that the output of the data generator and possibly the input to the data generator via a MIDI interface. A MIDI (musical instrumental digital interface) interface is typically used to transfer data to music devices and is present on many computers. When data is transmitted via this interface, data to or from the data generator may be mixed with other data, making analysis more difficult. An analysis method that analyzes a data table of inputs and outputs generated by a normal program flow must also include the data provided for the musical instruments in the analysis, since these could affect the outputs of the data generator. This considerably increases the analysis effort. On the other hand, the realization of the software protection is simplified in terms of hardware. This variant is particularly suitable for the protection of music programs. According to a practical development of the data generator for the connection of a musical instrument or an additional data generator having a further MIDI interface.
Ein Ausführungsbeispiel der Erfindung wird nachfolgend anhand einer Zeichnung näher erläutert.An embodiment of the invention will be explained in more detail with reference to a drawing.
Die einzige Figur zeigt ein Blockschaltbild einer Vorrichtung nach der Erfindung.The single figure shows a block diagram of a device according to the invention.
Ein Rechensystem
Damit ist ein sehr guter Schutz gegen Analyseverfahren gegeben, da viele Zustände in Betracht gezogen werden müssen, eine Tabelle zur Verarbeitung mit einem Logik-Minimierungsprogramm sehr groß werden muß, wodurch eine Speicherkapazität verlangt ist, die auf den meisten Personal-Computern nicht verfügbar ist.Thus, there is a very good protection against analysis methods, since many conditions must be considered, a table for processing with a logic minimization program must become very large, requiring a memory capacity that is not available on most personal computers.
Claims (15)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE4103173.3A DE4103173C5 (en) | 1991-02-02 | 1991-02-02 | Device for protection against unauthorized use of software |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE4103173.3A DE4103173C5 (en) | 1991-02-02 | 1991-02-02 | Device for protection against unauthorized use of software |
Publications (5)
Publication Number | Publication Date |
---|---|
DE4103173A1 DE4103173A1 (en) | 1992-08-13 |
DE4103173C2 DE4103173C2 (en) | 1993-09-30 |
DE4103173C3 DE4103173C3 (en) | 1997-03-13 |
DE4103173C4 DE4103173C4 (en) | 2017-03-16 |
DE4103173C5 true DE4103173C5 (en) | 2017-07-20 |
Family
ID=6424261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4103173.3A Expired - Lifetime DE4103173C5 (en) | 1991-02-02 | 1991-02-02 | Device for protection against unauthorized use of software |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE4103173C5 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19538124C2 (en) * | 1995-10-13 | 1998-10-08 | Uwe Dipl Ing Seidel | Method and device for protecting software against unauthorized use |
DE102004056635A1 (en) * | 2004-11-23 | 2006-05-24 | MICON Verein zur Förderung der Mobilität im Internet und in Kommunikationsnetzen e.V. | Software distribution method for e.g. communication application, involves executing code on distribution medium, where execution takes place over input/output module, if communication with host computer and user is necessary |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3149279A1 (en) * | 1981-12-12 | 1983-06-23 | Nsm-Apparatebau Gmbh & Co Kg, 6530 Bingen | Program coding |
DE3315992A1 (en) * | 1982-05-06 | 1983-11-10 | N.V. Philips' Gloeilampenfabrieken, 5621 Eindhoven | ARRANGEMENT FOR PROTECTING FROM UNAUTHORIZED READING PROGRAM WORDS TO BE WRITTEN IN A MEMORY |
US4446519A (en) * | 1981-05-26 | 1984-05-01 | Corban International, Ltd. | Method and apparatus for providing security for computer software |
DE3347483A1 (en) * | 1983-12-29 | 1985-07-11 | GAO Gesellschaft für Automation und Organisation mbH, 8000 München | DEVICE FOR SECURING SECRET INFORMATION |
DE3914233C1 (en) * | 1989-04-29 | 1990-07-26 | Wulf 2054 Geesthacht De Harder | Computer program protection device - has generator data output connected with consisting testing stage |
-
1991
- 1991-02-02 DE DE4103173.3A patent/DE4103173C5/en not_active Expired - Lifetime
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4446519A (en) * | 1981-05-26 | 1984-05-01 | Corban International, Ltd. | Method and apparatus for providing security for computer software |
DE3149279A1 (en) * | 1981-12-12 | 1983-06-23 | Nsm-Apparatebau Gmbh & Co Kg, 6530 Bingen | Program coding |
DE3315992A1 (en) * | 1982-05-06 | 1983-11-10 | N.V. Philips' Gloeilampenfabrieken, 5621 Eindhoven | ARRANGEMENT FOR PROTECTING FROM UNAUTHORIZED READING PROGRAM WORDS TO BE WRITTEN IN A MEMORY |
DE3347483A1 (en) * | 1983-12-29 | 1985-07-11 | GAO Gesellschaft für Automation und Organisation mbH, 8000 München | DEVICE FOR SECURING SECRET INFORMATION |
DE3914233C1 (en) * | 1989-04-29 | 1990-07-26 | Wulf 2054 Geesthacht De Harder | Computer program protection device - has generator data output connected with consisting testing stage |
Non-Patent Citations (2)
Title |
---|
IBM Technical Disclosure Bulletin Vol. 28, No. 6, November 1985, S. 2530 * |
Prospektblatt der ComProTec Hard- und Software Sicherheitssysteme GmbH, "Security Application Microprocessorsystem SAM", Okt. 1989 * |
Also Published As
Publication number | Publication date |
---|---|
DE4103173C2 (en) | 1993-09-30 |
DE4103173C3 (en) | 1997-03-13 |
DE4103173C4 (en) | 2017-03-16 |
DE4103173A1 (en) | 1992-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69531082T2 (en) | Method and device with an encryption header, which makes it possible to test software | |
DE3407642C2 (en) | ||
DE2615861C3 (en) | Circuit arrangement for checking programs | |
EP0155399A2 (en) | Protection circuit for the prevention of non-authorised execution of a programme | |
EP1099197A1 (en) | Device for supplying output data in reaction to input data, method for checking authenticity and method for encrypted data transmission | |
DE102006004557A1 (en) | Cryptographic logic circuit for simple power analysis (SPA) and differential power analysis (DPA) has first logic unit that executes logic operation for data, and second logic unit that executes logic operation for first logic unit results | |
EP0965076A1 (en) | Electronic data processing device and system | |
DE19963471B4 (en) | Apparatus and method for preventing piracy of computer programs | |
WO2010060985A2 (en) | Method system and simulation or analysis model for data processing | |
DE4103173C5 (en) | Device for protection against unauthorized use of software | |
DE10122505A1 (en) | Method for protecting a computer against manipulation of register contents and computer for performing the method | |
WO2001046785A2 (en) | Method and device for verifying a file | |
DE19962902A1 (en) | Device for password-protected handling of an electronic document | |
WO2001059548A2 (en) | Device for processing electronic data in an access-protected manner | |
EP2405317B1 (en) | Method for entering parameters for a security device securely | |
EP0135888B1 (en) | Process for preventing the execution of a programme in a computer which is not allowed to execute said programme | |
WO2000019386A1 (en) | Data processing device and method for operating same which prevents a differential current consumption analysis | |
EP0321728B1 (en) | Method and data carrier assembly for validating memory chips | |
WO2005064432A2 (en) | Authorization code recovering method | |
WO2003067438A2 (en) | Code management device for the encoded storage of digital data words | |
DE3518319C2 (en) | ||
DE3914233C1 (en) | Computer program protection device - has generator data output connected with consisting testing stage | |
EP1046131A1 (en) | Data processing device and operating method for preventing a differential current consumption analysis | |
DE19755182A1 (en) | Device and method for the protected output of electronically transmitted and stored documents | |
EP0560342B1 (en) | Method for debugging HDL-programs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8127 | New person/name/address of the applicant |
Owner name: HARDER, WULF, 2054 GEESTHACHT, DE PEETERS, BERND, |
|
8181 | Inventor (new situation) |
Free format text: HARDER, WULF, 2054 GEESTHACHT, DE PEETERS, BERND, 2000 HAMBURG, DE HAESE, HELMUT, 2058 LAUENBURG, DE |
|
D2 | Grant after examination | ||
8363 | Opposition against the patent | ||
8366 | Restricted maintained after opposition proceedings | ||
8305 | Restricted maintenance of patent after opposition | ||
D4 | Patent maintained restricted | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: SIA SYNCROSOFT, RIGA, LT |
|
8328 | Change in the person/name/address of the agent |
Representative=s name: PATENTANWAELTE HAUCK, GRAALFS, WEHNERT, DOERING, SIE |
|
R071 | Expiry of right | ||
R081 | Change of applicant/patentee |
Owner name: SIA SOFT ACTIVATION, LV Free format text: FORMER OWNER: SIA SYNCROSOFT, RIGA, LT Effective date: 20111117 |
|
R082 | Change of representative |
Representative=s name: HAUCK PATENTANWALTSPARTNERSCHAFT MBB, DE Effective date: 20111117 Representative=s name: HAUCK PATENT- UND RECHTSANWAELTE, DE Effective date: 20111117 |
|
R008 | Case pending at federal patent court | ||
R039 | Revocation action filed |
Effective date: 20120706 |
|
R043 | Patent's revocation in part now final | ||
R206 | Amended patent specification | ||
R206 | Amended patent specification |