DE102005039207A1 - Method of using a program and associated units - Google Patents
Method of using a program and associated units Download PDFInfo
- Publication number
- DE102005039207A1 DE102005039207A1 DE102005039207A DE102005039207A DE102005039207A1 DE 102005039207 A1 DE102005039207 A1 DE 102005039207A1 DE 102005039207 A DE102005039207 A DE 102005039207A DE 102005039207 A DE102005039207 A DE 102005039207A DE 102005039207 A1 DE102005039207 A1 DE 102005039207A1
- Authority
- DE
- Germany
- Prior art keywords
- program
- unit
- value
- usage
- service
- 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.)
- Ceased
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000012545 processing Methods 0.000 claims abstract description 37
- 230000005540 biological transmission Effects 0.000 claims description 24
- 230000006870 function Effects 0.000 claims description 14
- 238000013475 authorization Methods 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 9
- 238000012360 testing method Methods 0.000 claims description 5
- 230000001419 dependent effect Effects 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 3
- 238000011161 development Methods 0.000 description 8
- 230000018109 developmental process Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- LZDYZEGISBDSDP-UHFFFAOYSA-N 2-(1-ethylaziridin-1-ium-1-yl)ethanol Chemical compound OCC[N+]1(CC)CC1 LZDYZEGISBDSDP-UHFFFAOYSA-N 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000001681 protective effect 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
-
- 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]
Abstract
Erläutert wird unter anderem ein Verfahren, bei dem ein Kennzeichenwert verwendet wird, der eine Datenverarbeitungsanlage (12) oder einen Benutzer (B) der Datenverarbeitungsanlage (12) kennzeichnet. Mit Hilfe dieses Kennzeichenwertes (KW) wird ein Programm (P1) lizenziert. Das Verfahren ist sicher gegen einen Missbrauch von Lizenzierungsdaten.Among other things, a method is explained in which an identifier value is used which identifies a data processing system (12) or a user (B) of the data processing system (12). A program (P1) is licensed with the help of this indicator value (KW). The process is secure against misuse of licensing data.
Description
Die Erfindung betrifft ein Verfahren zum Nutzen eines Programms mit bspw. den Schritten:
- – Erzeugen einer Nutzungsanforderung bzw. einer Lizenzanforderung für ein Programm durch eine Datenverarbeitungsanlage, wie z.B. durch einen Personalcomputer,
- – Übertragen der Nutzungsanforderung über ein Datenübertragungsnetz, z.B. über ein lokales Datenübertragungsnetz (LAN – Local Area Network) und/oder über das Internet,
- – Bearbeiten der Nutzungsanforderung unter Verwendung eines Nutzungsdatums, dessen Wert abhängig vom Vorliegen einer Nutzungsberechtigung für das Programm ist, beispielsweise gibt der Wert die Anzahl der noch zur Verfügung stehenden Lizenzen bzw. der bereits vergebenen Lizenzen an,
- – bei einem Wert des Nutzungsdatums, der eine Nutzungsberechtigung angibt, Erzeugen eines Referenzwertes,
- – Speichern des Referenzwertes,
- – Ausführen von Befehlen des Programms oder eines Hilfsprogramms, mit dessen Hilfe das Programm gestartet werden kann, wobei ein Vergleichswert erzeugt wird,
- – Prüfen des Vergleichswertes unter Verwendung des Kennzeichenwertes oder des Referenzwertes, insbesondere durch Vergleichen des Vergleichswertes und des Referenzwertes,
- – bei positivem Prüfergebnis, insbesondere bei Übereinstimmung von Vergleichswert und Referenzwert, Ausführen von Befehlen des Programms, die bei negativem Prüfergebnis nicht ausgeführt werden, bspw. wenn Vergleichswert und Referenzwert nicht übereinstimmen.
- Generating a usage request or a license request for a program by a data processing system, such as a personal computer,
- Transmitting the usage request via a data transmission network, eg via a local area network (LAN) and / or via the Internet,
- Processing the usage request using a usage date whose value depends on the existence of a usage authorization for the program, for example, the value indicates the number of licenses still available or the licenses already issued,
- At a value of the usage date indicating a usage authorization, generating a reference value,
- Storing the reference value,
- Executing instructions of the program or of a utility program with the aid of which the program can be started, whereby a comparison value is generated,
- Checking the comparison value using the license plate value or the reference value, in particular by comparing the comparison value and the reference value,
- - if the test result is positive, in particular if the comparison value and the reference value match, executing program instructions that are not executed if the test result is negative, for example if the comparison value and the reference value do not match.
Beispielsweise erhalten Softwarekomponenten in verteilten Umgebungen ein Lizenzdatum, das deren Betrieb ermöglicht, wobei geeignete Verfahren über lokale Netze zur Zuteilung der Lizenz verwendet werden. Diese Verfahren dienen beispielsweise zum Austausch von sogenannten Lizenzkeys bzw. Lizenzschlüsseln, die dann auf den sogenannten Clientmaschinen bzw. auf der Datenverarbeitungsanlage abgespeichert werden, ggf. auch in öffentlich bekannten Verzeichnissen. Hierbei werden sowohl standardisierte Verfahren als auch proprietäre Verfahren verwendet, die von einer einzelnen Firma verwendet werden. Kennzeichnend für all diese Verfahren sind jedoch erhebliche Sicherheitslücken, die einen Missbrauch von Lizenzdaten begünstigen, insbesondere, wenn der Referenzwert ein Lizenzschlüssel ist, der unverschlüsselt über das Datenübertragungsnetz übertragen wird, oder wenn der Referenzwert nur ein Passwort ist, das von einer beliebigen Person an beliebigen Rechnern eingegeben werden kann, sofern es dieser Person berechtigter Weise oder auch unberechtigter Weise bekannt ist.For example Software components in distributed environments receive a license date, which allows their operation, taking appropriate procedures over local networks are used to allocate the license. This procedure serve for example for the exchange of so-called license keys or License keys, then on the so-called client machines or on the data processing system be stored, possibly in publicly known directories. Here are both standardized procedures as well as proprietary procedures used by a single company. characteristic for all However, these procedures are significant security holes that promote misuse of license data, in particular if: the reference value is a license key that is unencrypted about that Transfer data transmission network or if the reference value is just a password, that of a any person can be entered on any computer, provided that person is entitled or unjustified Way is known.
Es ist Aufgabe der Erfindung, zum Nutzen eines Programms ein einfaches Verfahren anzugeben, das einen Missbrauch von Nutzungsberechtigungen erschwert. Außerdem sollen zugehörige Einheiten angegeben werden.It Object of the invention, for the benefit of a program a simple Specify a procedure that makes it difficult to abuse user rights. Furthermore should be associated Units are specified.
Die auf das Verfahren bezogene Aufgabe wird durch ein Verfahren mit den eingangs genannten Verfahrensschritten gelöst, wobei jedoch auch noch die folgenden Verfahrensschritte ausgeführt werden:
- – Festlegen mindestens eines gemäß einer Festlegungsregel zu ermittelnden Kennzeichenwertes, der eine Datenverarbeitungsanlage oder einen Benutzer der Datenverarbeitungsanlage kennzeichnet,
- – optional Übertragen des Kennzeichenwertes von der Datenverarbeitungsanlage über das Datenübertragungsnetz, bspw. verschlüsselt oder unverschlüsselt, wobei der übertragene Kennzeichenwert ggf. geprüft wird, bspw. an Hand von Referenzlisten mit bspw. Prozessorkennzeichen oder digitalen Fingerabdrücken, und
- – optional Erzeugen des Referenzwertes aus dem übertragenen Kennzeichenwert, insbesondere gemäß einer Berechnungsvorschrift, wie einem Verschlüsselungsverfahren, oder durch einfaches Übernehmen des übertragenen Kennzeichenwertes als Referenzwert.
- Determining at least one identification value to be determined according to a determination rule, which characterizes a data processing system or a user of the data processing system,
- Optionally transmitting the license plate value from the data processing system via the data transmission network, for example encrypted or unencrypted, wherein the transmitted license plate value is possibly checked, for example by reference lists with, for example, processor identifiers or digital fingerprints, and
- Optionally generating the reference value from the transmitted tag value, in particular according to a calculation rule, such as an encryption method, or by simply adopting the transmitted tag value as the reference value.
Durch diese Maßnahmen wird erreicht, dass der Kennzeichenwert stärker an eine Datenverarbeitungsanlage und/oder an einen Benutzer gebunden ist, als beispielsweise ein Passwort. Durch die Übertragung der Nutzungsanforderung von der Datenverarbeitungsanlage über das Datenübertragungsnetz wird es möglich, Merkmale der nutzungsberechtigten Datenverarbeitungsanlage bzw. des nutzungsberechtigten Benutzers stärker und auf einfachere Art in den Kennzeichenwert einzubinden als es bisher möglich war. Dies erschwert einen Missbrauch der Berechtigung auf anderen Datenverarbeitungsanlagen bzw. durch andere Benutzer. Andererseits ist das Verfahren aber auch leicht zu automatisieren.By these measures is achieved that the license plate value more to a data processing system and / or bound to a user, such as a Password. Through the transmission the usage request from the data processing system via the Data transmission network is it is possible Features of the authorized data processing system or of the authorized user more and in a simpler way into the license plate value than was previously possible. This makes it difficult to misuse the authorization on other data processing systems or by other users. On the other hand, the process is also easy to automate.
Bei einer Weiterbildung des erfindungsgemäßen Verfahrens werden die Schritte ausgeführt:
- – Erzeugen einer Antwortmeldung, die den Referenzwert enthält,
- – Übertragen der Antwortmeldung über das Datenübertragungsnetz, und
- – Speichern des in der Antwortmeldung übertragenen Referenzwertes.
- Generating a response message containing the reference value,
- - Transmission of the response message via the data transmission network, and
- - Save the reference value transmitted in the response message.
Durch die Übertragung der Antwortmeldung wird erreicht, dass der Referenzwert an einer anderen Stelle gespeichert werden kann als an der Stelle, an der er erzeugt worden ist. Damit muss dem Programm die Stelle nicht bekannt sein, an der der Referenzwert erzeugt wird, sondern nur die Stelle, an der er gespeichert wird. Auch dies erhöht die Sicherheit gegen einen Missbrauch des Verfahrens.By the transmission of the response message it is achieved that the reference value on one ande can be stored as at the point where it was generated. Thus, the program need not know the location where the reference value is generated, but only the location where it is stored. This also increases security against abuse of the procedure.
Bei einer nächsten Weiterbildung mit Übertragung des Referenzwertes über das Datenübertragungsnetz wird der Referenzwert im schwer verständlichen und damit gegen Missbrauch geschützten Maschinencode gespeichert. Der Maschinencode kann ohne weitere Umwandlung direkt von einem Prozessor der Datenverarbeitungsanlage bearbeitet werden. Der Maschinencode als auch der Bytecode unterscheidet sich von einem leichter als der Maschinencode verständlicherem Quellcode in einer höheren Programmiersprache, wie z.B. Assembler oder C. Die Weiterbildung erzeugt für dedizierte, wohldefinierte Client-Maschinen/Nutzerkombinationen ein ablauffähiges Programm, das nur auf der dedizierten Maschine bzw. für den lizenzierten Benutzer lauffähig ist. Dieses Programm wird bei einer Ausgestaltung im Betriebssystem der Datenverarbeitungsanlage verankert bzw. einbezogen, indem eine Programminstallationsfunktion des Betriebssystems der Datenverarbeitungsanlage verwendet wird. Ein Ausführen des Programms auf einer anderen Maschine ist somit nicht mehr möglich.at one next Continuing education with transfer of the reference value the data transmission network the reference value becomes difficult to understand and thus against misuse protected Machine code stored. The machine code can be converted without further conversion processed directly by a processor of the data processing system become. The machine code and the bytecode are different from a code easier to understand than the machine code in one higher Programming language, such as Assembler or C. The training generated for dedicated, well-defined client machines / user combinations an executable Program that works only on the dedicated machine or for the licensed one User executable is. This program is in one embodiment in the operating system the data processing system anchored or involved by a Program installation function of the operating system of the data processing system is used. A run the program on another machine is thus no longer possible.
Bei einer nächsten Weiterbildung kennzeichnet der Kennzeichnwert die Datenverarbeitungsanlage und den Benutzer, so dass sich die Sicherheit gegen einen Missbrauch der Nutzungsberechtigung weiter erhöht.at one next Further development, the characteristic value characterizes the data processing system and the user, so that the security against abuse the usage right further increased.
Bei einer nächsten Weiterbildung des Verfahrens wird zur Ermittlung des Kennzeichenwertes mindestens einer der folgenden Daten verwendet:
- – ein Datum, das in einem Prozessor der Datenverarbeitungsanlage nichtflüchtig gespeichert ist, beispielsweise ein Prozessorkennzeichen, das vom Hersteller des Prozessors vorgegeben wird,
- – ein Datum, das in einer Netzwerkkarte der Datenverarbeitungsanlage nichtflüchtig gespeichert ist, beispielsweise ebenfalls ein Datum, das vom Hersteller der Netzwerkkarte vorgegeben wird, insbesondere eine sogenannte MAC-ID (Media Access Control Identification),
- – ein Datum oder Daten, die von einem biometrischen Sensor erzeugt werden, insbesondere von einem Fingerabdrucksensor oder von einem Augeniris-Sensor, oder von einem Bildbearbeitungssystem zum Erfassen der Merkmale eines Gesichts,
- – ein Datum, das ein Programmkennzeichen eines anderen Programms der Datenverarbeitungsanlage ist, beispielsweise ein Lizenzschlüsseldatum.
- A date non-volatile stored in a processor of the data processing system, for example a processor code specified by the manufacturer of the processor,
- A date which is non-volatile stored in a network card of the data processing system, for example also a date that is specified by the manufacturer of the network card, in particular a so-called MAC-ID (Media Access Control Identification),
- A date or data generated by a biometric sensor, in particular a fingerprint sensor or an iris sensor, or an image processing system for detecting the features of a face,
- A date which is a program identifier of another program of the data processing system, for example a license key date.
Je mehr Kennzeichen in das Verfahren einbezogen werden, um so schwerer wird ein Missbrauch. Beispielsweise lassen sich auch Angaben über die Softwareumgebung des Programms, beispielsweise über das Betriebssystem, einbeziehen. Weiterhin lassen sich auch Angaben über die erweiterte Hardwareumgebung des Programms einbeziehen, beispielsweise Angaben zu angeschlossenen Geräten, wie Druckern und ähnliches.ever more hallmarks to be included in the procedure, the more difficult becomes an abuse. For example, information about the Software environment of the program, for example, via the operating system. Farther can also provide information about include the extended hardware environment of the program, for example Information on connected devices, like printers and the like.
Bei einer nächsten Weiterbildung wird die Nutzungsanforderung von einer Telekommunikationsanlage weitergeleitet, die teilnehmerseitig gemäß einem Teilnehmerprotokoll für durchschaltevermittelte Verbindungen und netzwerkseitig gemäß einem vom Teilnehmerprotokoll verschiedenen Protokoll für durchschaltevermittelte Verbindungen signalisiert. Das Teilnehmerprotokoll ist beispielsweise das Protokoll Cornet TS, Cornet TC oder Cornet IP der Firma Siemens oder ein vergleichbares Protokoll eines anderen Anbieters. Das Netzwerkprotokoll ist beispielsweise das Protokoll QSIG, das im ECMA-Standard (European Computer Manufacturer Association) 173/174 festgelegt ist, und zur Signalisierung zwischen Telekommunikationsanlagen dient. Alternativ kann auch ein anderes Signalisierungsprotokoll verwendet werden, z.B. ein proprietäres Protokoll, wie das Protokoll Cornet NQ der Firma Siemens AG.at one next Continuing education is the usage requirement of a telecommunications system passed on the subscriber side according to a subscriber protocol for circuit-switched Connections and network side according to one of the subscriber protocol different protocol for circuit-switched Connections signaled. The subscriber protocol is for example the protocol Cornet TS, Cornet TC or Cornet IP from Siemens or a similar protocol from another provider. The network protocol is for example the protocol QSIG, which in the ECMA standard (European Computer Manufacturer Association) 173/174 is set, and to Signaling between telecommunication systems is used. Alternatively, you can also a different signaling protocol may be used, e.g. a proprietary one Protocol, such as the protocol Cornet NQ of the company Siemens AG.
Bei einer nächsten Weiterbildung wird die Nutzungsanforderung von einem ersten Diensterbringungsrechner weitergeleitet, der über ein Datenübertragungsnetz mit der Datenverarbeitungsanlage verbunden ist, wobei der Wert eines Adressdatums eines zweiten Diensterbringungsrechners zum Bearbeiten der Nutzungsanforderung erst in dem ersten Diensterbringungsrechner und nicht in der Datenverarbeitungsanlage ermittelt wird.at one next Continuing training is the usage requirement of a first service provisioning computer forwarded, over a data transmission network connected to the data processing system, the value of a Address data of a second service-providing computer for editing the usage request only in the first service providing computer and not determined in the data processing system.
Der erste Diensterbringungsrechner ist insbesondere ein Rechner, der in zukünftigen Datenübertragungsnetzen die Funktionen einer herkömmlichen Telekommunikationsanlage übernimmt, d.h. insbesondere automatische Rückrufe und/oder Ruf- und/oder Anrufweiterleitungen, wie Rufumleitung (Call Forward), Anrufweitergabe (Call Transfer) oder Rufumlenkung (Call Deflection), siehe bspw. Oliver Hersent u.a., "IP Telephony – Deploying Voice over IP Protocols", Wiley 2005, Seiten 317 bis 366.Of the first service providing computer is in particular a computer, the in future Data transmission networks the functions of a conventional Telecommunications system takes over, i.e. in particular automatic callbacks and / or call and / or Call forwarding, such as call forwarding, call forwarding (Call Transfer) or call deflection (Call Deflection), see eg. Oliver Hersent et al., "IP Telephony - Deploying Voice over IP Protocols ", Wiley 2005, pages 317-366.
In beiden Fällen wird durch die Einbeziehung der Telekommunikationsanlage bzw. des ersten Diensterbringungsrechners erreicht, dass auf der Seite des Programms der Diensterbringungsrechner nicht bekannt sein muss, der den Referenzwert berechnet und der beispielsweise den Programmcode des Programms verändert. Damit erhöht sich die Sicherheit gegen einen Missbrauch des Verfahrens erheblich, weil zusätzliche Schranken durch beispielsweise proprietäre Protokolle und/oder durch Verschlüsselungen aufgebaut werden können.In both cases, the inclusion of the telecommunication system or of the first service provision computer ensures that the service provisioning computer does not need to be aware of the program that calculates the reference value and, for example, changes the program code of the program. This significantly increases the security against misuse of the method because additional barriers are created by, for example, proprietary protocols and / or by ver can be built.
Bei einer nächsten Weiterbildung des erfindungsgemäßen Verfahrens ist das Programm ein Programm für die Internettelefonie, die auch als VoIP-Telefonie (Voice over Internet Protocol) bezeichnet wird. Die Sicherheit ist besonders hoch, wenn dieses Programm von einem Endgerät benutzt wird, das an einer Telekommunikationsanlage bzw. an einem Diensterbringungsrechner mit den Funktionen einer Telekommunikationsanlage betrieben wird.at one next Further development of the method according to the invention the program is a program for the Internettelefonie, which also as VoIP Telefonie (Voice over Internet Protocol) is called. The security is particularly high when this program from a terminal is used on a telecommunications system or on a Service providing computer with the functions of a telecommunications system is operated.
Bei einer anderen Weiterbildung des Verfahrens wird kein Lizenzschlüssel zum Ermöglichen der Nutzungsberechtigung des Programms übertragen. Eine Verwaltung und Speicherung der Lizenzschlüssel durch einen Systemadministrator entfällt, so dass das Verfahren einfach und sicher ist.at another development of the procedure does not become a license key for Enable the right of use of the program. An administration and storing the license key by a system administrator deleted, so the procedure easy and safe.
Die Erfindung betrifft außerdem eine Diensterbringungseinheit, die sich insbesondere in dem erfindungsgemäßen Verfahren oder einer seiner Weiterbildungen als Diensterbringungsrechner oder an Stelle des Diensterbringungsrechners einsetzen lässt. Damit gelten die oben genannten technischen Wirkungen auch für die Diensterbringungseinheit.The Invention also relates a service providing unit, which is particularly in the method according to the invention or one of its further developments as a service-providing computer or in place of the service provider computer. In order to the above-mentioned technical effects also apply to the service-providing unit.
Die Erfindung betrifft weiterhin eine Dienstnutzungseinheit, die in dem erfindungsgemäßen Verfahren oder einer seiner Wei terbildungen als Datenverarbeitungsanlage oder an Stelle der Datenverarbeitungsanlage eingesetzt werden kann. Damit gelten die oben genannten technischen Wirkungen auch für die Dienstnutzungseinheit.The The invention further relates to a service usage unit, which in the method according to the invention or one of its developments as a data processing system or can be used in place of the data processing system. In order to the above-mentioned technical effects also apply to the service usage unit.
Weiterhin betrifft die Erfindung einen Einheitenverbund, der die Diensterbringungseinheit und die Dienstnutzungseinheit bzw. deren Weiterbildungen enthält. Somit gelten auch für den Einheitenverbund die oben genannten technischen Wirkungen.Farther The invention relates to a unit assembly comprising the service delivery unit and contains the service usage unit or its developments. Consequently also apply to the unit composite the above-mentioned technical effects.
Im Folgenden werden Ausführungsbeispiele der Erfindung anhand der beiliegenden Zeichnungen erläutert. Darin zeigen:in the Below are embodiments of the Invention explained with reference to the accompanying drawings. In this demonstrate:
Am
Internet
In
In
einem nachfolgenden Verfahrensschritt S72 wird beim ersten Programmstart
des Programms P1 gemäß einer
bei der Herstellung des Programms P1 vorgegebenen Vorschrift ein
Kennzeichenwert KW ermittelt, der auf gleiche Weise auch bei folgenden
Starts des Programms P1 abgefragt werden soll, beispielsweise ein
Kennzeichen eines Prozessors in dem Dienstnutzungsrechner
In
einem Verfahrensschritt S74 nimmt das Programm P1 beim ersten Programmstart
beispielsweise über
das Protokoll TCP/IP (Transmission Control Protocol/Internet Protocol)
Kontakt mit dem Diensterbringungsrechner
In
einem Verfahrensschritt S76 wird die Nutzungsanforderung bzw. die
Anforderungsmeldung
Im Einzelnen werden beispielsweise die folgenden Schritte durchgeführt:
- – Erzeugen
einer Anfrage an eine Datenbank, ob der Dienstnutzungsrechner
12 bzw. der Benutzer B das Programm P1 nutzen darf, - – Beantworten der Anfrage anhand einer geeigneten Datenbank, z.B. aus einem Workflow, d.h. aus einer Programmumgebung, die beispielsweise Programmmodule enthält, die den Verkauf und die Lieferung des Programms P1 unterstützen,
- – optionales Ermitteln der Berechtigung zur Benutzung, beispielsweise durch Abfrage eines Passwortes vom Benutzer B oder durch eine sonstige absichernde Maßnahme.
- Generating a request to a database as to whether the service usage calculator
12 or user B is allowed to use program P1, - Responding to the request by means of a suitable database, eg from a workflow, ie from a program environment containing, for example, program modules which support the sale and delivery of program P1,
- - Optional determination of the authorization to use, for example by querying a password from the user B or by any other protective measure.
Falls der Nutzer berechtigt ist:
- – Ermitteln der notwendigen zu modifizierenden Quelltextteile, beispielsweise in einer Programm-Datenbank,
- – Einarbeiten der Identifikationsinformation bzw. des Referenzwertes in die Quelltextteile bzw. in den Quelltext beispielsweise durch Kompilieren.
- Determining the necessary source code parts to be modified, for example in a program database,
- - Incorporate the identification information or the reference value in the source text parts or in the source code, for example by compiling.
Falls nicht berechtigt:
- – Zurückweisen der Anfrage.
- - reject the request.
In
einem Verfahrensschritt S78 erzeugt der Diensterbringungsrechner
In
einem Verfahrensschritt S80 wird auf dem Dienstnutzungsrechner
Anschließend oder beim nächsten Start des Programms P1 wird vom Programm P1 in einem Verfahrensschritt S82 nach der vorgegebenen Vorschrift ein Vergleichswert VW ermittelt, beispielsweise durch Lesen des Kennzeichens des Prozessors bzw. durch Lesen der Daten vom Fingerabdrucksensor.Subsequently or at the next Start of the program P1 is the program P1 in one step S82 determined according to the prescribed rule a comparison value VW, for example, by reading the tag of the processor or by Reading the data from the fingerprint sensor.
In einem folgenden Verfahrensschritt S84 wird der Vergleichswert VW mit dem Referenzwert RW verglichen. Sind beide Wert gleich, so folgt nach dem Verfahrensschritt S84 unmittelbar ein Verfahrensschritt S86, bei dem weitere Schritte des Programms P1 ausgeführt werden, die die Hauptfunktion des Programms P1 erbringen, beispielsweise die Internettelefonie und/oder den Zugriff auf eine Telekommunikationsanlage bzw. auf einen Diensterbringungsrechner mit den Funktionen einer Telekommunikationsanlage. Eine Telekommunikationsanlage ist dabei eine Einheit, die zum Vermitteln von Gesprächsverbindungen innerhalb eines privaten Netzes, insbesondere innerhalb eines Firmennetzes dient. Bekannte Telekommunikationsan lagen sind die Telekommunikationsanlagen HICOM bzw. HiPath der Firma Siemens AG.In a subsequent method step S84 becomes the comparison value VW compared with the reference value RW. If both values are equal, then follows after the method step S84 directly a method step S86 in which further steps of the program P1 are executed, which perform the main function of the program P1, for example Internet telephony and / or access to a telecommunications system or on a service-providing computer with the functions of a Telecommunications system. A telecommunications system is included a unit used to facilitate call connections within a private network, especially within a corporate network. Known Telekommunikationsan layers are the telecommunications equipment HICOM or HiPath from Siemens AG.
Dem Verfahrensschritt S86 folgt ein Verfahrensschritt S88, in dem das Programm P1 und damit auch das Verfahren beendet wird.the Step S86 is followed by a step S88 in which the Program P1 and thus the procedure is terminated.
Wird
dagegen im Verfahrensschritt S84 festgestellt, dass der Vergleichswert
nicht mit dem Referenzwert übereinstimmt,
d.h., dass das Programm P1 beispielsweise auf einem anderen Computer,
z.B. auf dem Dienstnutzungsrechner
Beim nächsten Start des Programms P1 werden bei einem Ausführungsbeispiel nur die Verfahrensschritte S82 bis S90 durchgeführt. Bei einem alternativen Ausführungsbeispiel werden alle Verfahrensschritte durchgeführt, beispielsweise wenn die Lizenzen am Ende des Verfahrens wieder zurückgegeben werden.At the next Start of the program P1 in one embodiment only the method steps S82 to S90 performed. In an alternative embodiment All process steps are performed, for example if the licenses be returned at the end of the procedure.
Damit wurde ein Verfahren angegeben, bei dem kein Lizenzschlüssel übertragen, verwaltet bzw. gespeichert wird. Es wird ein ausführbares Programm erzeugt, das nur auf einer fest vorgegebenen Maschine bzw. einem fest vorgegebenen Dienstnutzungsrechner lauffähig ist. Das Programm P1 gibt es nur einmal. Bei Verlust des Programms P1 muss ein neues Programm erzeugt und lizenziert werden.In order to a method was specified in which no license key is transmitted, is managed or stored. It will be an executable Program generated only on a fixed machine or a fixed predetermined service use computer is executable. The program P1 is only available once. If program P1 is lost a new program must be created and licensed.
Im
Gegensatz zu sogenannten Gruppenpasswörtern sind die Lizenzen individuell
vergeben, beispielsweise für
einen bestimmten Rechner bzw. für
einen bestimmten Nutzer. Ein zusätzliches
Administratorprogramm zum Vermerken von Passwörtern ist nicht erforderlich.
Außerdem
sind die Kennzeichenwerte nicht an fest vorgegebenen Stellen im Dienstnutzungsrechner
Bei
einem anderen Ausführungsbeispiel
erfolgt die Einbindung des Kennzeichenwertes KW bzw. des Referenzwertes
RW ausschließlich
im Dienstnutzungsrechner
Claims (16)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102005039207A DE102005039207A1 (en) | 2005-08-18 | 2005-08-18 | Method of using a program and associated units |
PCT/EP2006/064759 WO2007020172A1 (en) | 2005-08-18 | 2006-07-27 | Method for utilizing a program, and associated units |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102005039207A DE102005039207A1 (en) | 2005-08-18 | 2005-08-18 | Method of using a program and associated units |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102005039207A1 true DE102005039207A1 (en) | 2007-03-15 |
Family
ID=37084657
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102005039207A Ceased DE102005039207A1 (en) | 2005-08-18 | 2005-08-18 | Method of using a program and associated units |
Country Status (2)
Country | Link |
---|---|
DE (1) | DE102005039207A1 (en) |
WO (1) | WO2007020172A1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020129265A1 (en) * | 1999-12-20 | 2002-09-12 | Sonny Corporation | Method and apparatus for managing software use |
US20050021992A1 (en) * | 2002-07-15 | 2005-01-27 | Taku Aida | Client terminal, software control method and control program |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6141698A (en) * | 1997-01-29 | 2000-10-31 | Network Commerce Inc. | Method and system for injecting new code into existing application code |
EP0968585A1 (en) * | 1997-03-14 | 2000-01-05 | Cryptoworks Inc. | Digital product rights management technique |
US6108420A (en) * | 1997-04-10 | 2000-08-22 | Channelware Inc. | Method and system for networked installation of uniquely customized, authenticable, and traceable software application |
US7565531B2 (en) * | 2003-05-13 | 2009-07-21 | Chi-Chian Yu | Locking programming interface |
-
2005
- 2005-08-18 DE DE102005039207A patent/DE102005039207A1/en not_active Ceased
-
2006
- 2006-07-27 WO PCT/EP2006/064759 patent/WO2007020172A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020129265A1 (en) * | 1999-12-20 | 2002-09-12 | Sonny Corporation | Method and apparatus for managing software use |
US20050021992A1 (en) * | 2002-07-15 | 2005-01-27 | Taku Aida | Client terminal, software control method and control program |
Also Published As
Publication number | Publication date |
---|---|
WO2007020172A1 (en) | 2007-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102007033615B4 (en) | Method and apparatus for converting authentication tokens to enable interactions between applications | |
DE69934207T2 (en) | Method for access checking of a user | |
DE60102555T2 (en) | PREVENTING MAP-ENABLED MODULAR MASKER ATTACKS | |
DE112006001978B4 (en) | Verified computer environment for personal internet communication device | |
DE102004048959B4 (en) | Information processing apparatus, authentication processing program and authentication storage apparatus | |
DE112020000538T5 (en) | FINE-GRAINED TOKEN-BASED ACCESS CONTROL | |
DE60212969T3 (en) | METHOD AND DEVICE FOR FOLLOWING THE STATUS OF AN OPERATING MEANS IN A SYSTEM FOR MANAGING THE USE OF THE OPERATING MEANS | |
DE102008011191A1 (en) | Client / server system for communication according to the standard protocol OPC UA and with single sign-on mechanisms for authentication as well as methods for performing single sign-on in such a system | |
DE112013002539B4 (en) | Validation of mobile units | |
WO2010026152A1 (en) | Method for granting authorization to access a computer-based object in an automation system, computer program, and automation system | |
EP2351320B1 (en) | Server system and method providing at least a merit | |
EP0959588A2 (en) | Network element with control device and control method | |
DE10311327A1 (en) | Multiple user medical data processing electronic data system uses separate application level documentation data access and system level user authentication objects | |
DE10024347B4 (en) | Security service layer | |
EP1332438A2 (en) | Method and device for the transfer of electronic data volumes | |
WO1999012088A1 (en) | Method for controlling distribution and use of software products with network-connected computers | |
DE102005039207A1 (en) | Method of using a program and associated units | |
WO2007065719A2 (en) | Method for linking a digital content to a person | |
DE10046437A1 (en) | Identifying computer unit in computer network involves reading individual serial code of standard hardware component, using to identify computer unit, combining with user identity word | |
EP1035706A2 (en) | Method to connect at least two network segments to an access controller through a user identifier | |
DE102014223374A1 (en) | A method of automatically managing an electrical device, an electrical device, a computing device for automatically managing an electrical device, and a system | |
EP1529257B1 (en) | Accepting a set of data in a computer unit | |
WO1999063697A2 (en) | Programme-controlled device | |
DE60300964T2 (en) | Generation of user-specific settings data | |
WO2024088790A1 (en) | Method and system for environment-dependent security-related anomaly detection for a container instance |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8131 | Rejection |