DE10304877A1 - Procedure for installing a plug-in program - Google Patents
Procedure for installing a plug-in program Download PDFInfo
- Publication number
- DE10304877A1 DE10304877A1 DE10304877A DE10304877A DE10304877A1 DE 10304877 A1 DE10304877 A1 DE 10304877A1 DE 10304877 A DE10304877 A DE 10304877A DE 10304877 A DE10304877 A DE 10304877A DE 10304877 A1 DE10304877 A1 DE 10304877A1
- Authority
- DE
- Germany
- Prior art keywords
- program
- plug
- key
- manufacturer
- data carrier
- 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
- 238000000034 method Methods 0.000 title claims abstract description 42
- 230000005540 biological transmission Effects 0.000 claims abstract description 11
- 238000003672 processing method Methods 0.000 claims description 18
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 230000015572 biosynthetic process Effects 0.000 claims 2
- 238000012546 transfer Methods 0.000 abstract description 3
- 238000012545 processing Methods 0.000 description 11
- 238000009434 installation Methods 0.000 description 7
- 238000011161 development Methods 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 241001136792 Alle Species 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000008054 signal transmission 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zur Installation eines Plug-in-Programms (426) in einem Gerät (400), mit folgenden Schritten: DOLLAR A - Übertragung einer Gerätekennung (422) des Geräts von dem Gerät zu einem Computer (430), DOLLAR A - Eingabe einer Herstellerkennung über eine Nutzerschnittstelle des Computers, DOLLAR A - Bildung eines ersten Schlüssels (436) aus der Gerätekennung und der Herstellerkennung, DOLLAR A - Lesen eines zweiten Schlüssels (428) von einem Datenträger (424), DOLLAR A - Vergleich der ersten und zweiten Schlüssel, DOLLAR A - falls die ersten und zweiten Schlüssel übereinstimmen: Übertragung des auf dem Datenträger gespeicherten Plug-in-Programms zu dem Gerät.The invention relates to a method for installing a plug-in program (426) in a device (400), comprising the following steps: DOLLAR A - transmission of a device identifier (422) of the device from the device to a computer (430), DOLLAR A - Entering a manufacturer ID via a user interface of the computer, DOLLAR A - forming a first key (436) from the device ID and the manufacturer ID, DOLLAR A - reading a second key (428) from a data carrier (424), DOLLAR A - comparing the first and second key, DOLLAR A - if the first and second keys match: transfer of the plug-in program stored on the data carrier to the device.
Description
Die vorliegende Erfindung betrifft ein Verfahren zur Installation eines Plug-in-Programms, einen Datenträger mit einem Plug-in-Programm sowie ein Automatisierungssystem.The present invention relates to a procedure for installing a plug-in program using a disk a plug-in program and an automation system.
Aus dem Stand der Technik sind verschiedene Software-Schutzkonzepte bekannt, die zur Vermeidung einer unautorisierten Nutzung der zu schützenden Software dienen. Dabei gibt es zum einen hardwaregestützte Lösungen.Various are from the prior art Software protection concepts known to avoid unauthorized Use of the to be protected Serve software. On the one hand, there are hardware-based solutions.
Bei hardwaregestützten Lösungen ist beispielsweise der Anschluss eines so genannten Dongles an den Computer erforderlich, um die Ausführung der geschützten Software zu ermöglichen. Solche hardwaregestützten Software-Schutzkonzepte haben den Nachteil, dass sie relativ benutzerunfreundlich sind und ferner aus Kostengründen oftmals ausscheiden.For hardware-based solutions, for example Connection of a so-called dongle to the computer required about execution the protected Enable software. Such hardware-based Software protection concepts have the disadvantage that they are relatively user-unfriendly are and also for cost reasons often drop out.
Zum anderen ist es auch bekannt, Software mit einer Lizenznummer gegen unautorisierte Nutzung zu schützen. Hierzu muss bei der Installation der Software eine dem Kunden beim Kauf der Softwarelizenz mitgeteilte Lizenznummer in ein Eingabefenster des Set-up-Programms angegeben werden. Nachteilig bei einer solchen softwarebasierten Lösung ist, dass diese keinen hinreichenden Schutz gegen unautorisierte Benutzung bietet. Beispielsweise versagt ein solches softwaregestütztes Schutzkonzept, wenn der Kunde dieselbe Lizenznummer zur mehrfachen Installation der Software auf verschiedenen Rechnern verwendet oder gar die Lizenznummer an Dritte mitteilt.On the other hand, it is also known Software with a license number against unauthorized use protect. To do this, one must be provided to the customer when installing the software Purchase of the software license communicated license number in an input window of the set-up program. A disadvantage of such software-based solution is that this does not provide adequate protection against unauthorized Offers use. For example, such a software-based protection concept fails, if the customer has the same license number for multiple installation the software on different computers or even the license number Third party notifies.
Besondere Relevanz haben Software-Schutzkonzepte für so genannte offene Systeme. Ein offenes System besteht im Allgemeinen aus zumindest einer Basissoftware, deren Schnittstellen gegenüber Drittherstellern offen gelegt sind, sodass Dritthersteller interoperable Plug-ins für die Basissoftware erstellen können. Solche offenen Systemkonzepte werden insbesondere auch auf dem Gebiet der Automatisierungstechnik zur Realisierung offener Steuerungsarchitekturen basierend auf Hardware- und Softwarekomponenten verschiedenster Hersteller eingesetzt. Ein Beispiel für eine entsprechende Basissoftware ist OpenCNC (http://www.mdsi2.com/deutsch/gerbrochure.html).Software protection concepts are particularly relevant for like this called open systems. An open system generally exists from at least one basic software, whose interfaces to third-party manufacturers are disclosed, so that third-party interoperable plug-ins for the Can create basic software. Such open system concepts are also used in the area of Automation technology for the implementation of open control architectures based on various hardware and software components Manufacturer used. An example of a corresponding basic software is OpenCNC (http://www.mdsi2.com/deutsch/gerbrochure.html).
Das Produkt SIMATIC iMap der Firma Siemens AG (http://www.ad.siemens.de/cba/products/html 00/imap.html) dient zur anlagenweiten und herstellerübergreifenden Zusammenführung verteilter Anwendungen. Zuvor erstellte Softwarekomponenten werden in SIMATIC iMap importiert und in einer Bibliothek abgelegt. Über die offen gelegte Schnittstelle von SIMATIC iMap können die Komponenten für alle PROFInet-fähigen Geräte als Bibliothekselemente eingebunden werden.The product SIMATIC iMap from the company Siemens AG (http://www.ad.siemens.de/cba/products/html 00 / imap.html) is used for plant-wide and cross-manufacturer merging of distributed Applications. Previously created software components are in SIMATIC iMap imported and stored in a library. About the disclosed interface of SIMATIC iMap, the components can be used as library elements for all PROFInet-capable devices be involved.
Zum Softwareschutz der Basissoftware offener Systeme sowie der Plug-in-Programme für die Basissoftware können die an sich bekannten Software-Schutzkonzepte eingesetzt werden. Bei Einsatz unterschiedlicher Hardware und/oder Software basierter Schutzkonzepte durch die verschiedenen Softwarehersteller kann es zu Konflikten zwischen den einzelnen Schutzkonzepten kommen.For software protection of the basic software open systems and the plug-in programs for the basic software can known software protection concepts can be used. at Use of different hardware and / or software based protection concepts The various software manufacturers can lead to conflicts come between the individual protection concepts.
In manchen Fällen sind die Software-Schutzkonzepte nicht miteinander verträglich, sodass an sich sinnvolle Kombinationen von Komponenten nur aufgrund solcher Unverträglichkeiten nicht realisiert werden können. Auch bei Verträglichkeit der einzelnen Schutzkonzepte miteinander führt die Kombination der verschiedenen herstellerindividuellen Software-Schutzkonzepte unter Umständen zu schwer hantierbaren und benutzerunfreundlichen Systemen, die auch in ihrer Flexibilität eingeschränkt sind. Eine Einigung der verschiedenen Softwarehersteller auf ein einheitliches Software-Schutzkonzept zur Vermeidung dieser Nachteile ist im Allgemeinen nicht möglich, da hierzu das Schutzsystem beispielsweise des Herstellers der Basissoftware gegenüber den Drittherstellern offen gelegt werden müsste.In some cases, the software protection concepts not compatible with each other, so that sensible combinations of components only because of such intolerance cannot be realized. Even with tolerance The combination of the various protection concepts leads to the combination of the various manufacturer-specific software protection concepts difficult to handle and user-unfriendly systems that too in their flexibility limited are. An agreement between the various software manufacturers on one Uniform software protection concept to avoid these disadvantages is generally not possible because the protection system of the manufacturer of the basic software, for example across from should be disclosed to third party manufacturers.
Der Erfindung liegt daher die Aufgabe zugrunde, ein verbessertes Verfahren zur Installation eines Plug-in-Programms zu schaffen sowie einen Datenträger mit einem solchen Plug-in-Programm und einem Automatisierungssystem mit einem Gerät, auf dem das Plug-in-Programm installiert werden kann. Insbesondere soll hierdurch ein Software-Schutzkonzept geschaffen werden, das die Nachteile des Standes der Technik vermeidet.The invention is therefore the object based, an improved method for installing a plug-in program to create as well as a disk with such a plug-in program and an automation system with a device on which the plug-in program can be installed. In particular, this is intended to be a software protection concept be created that avoids the disadvantages of the prior art.
Die der Erfindung zugrunde liegenden Aufgaben werden jeweils durch die Merkmale der unabhängigen Patentansprüche gelöst. Bevorzugte Ausführungsformen der Erfindung sind in den abhängigen Patentansprüchen angegeben.The basis of the invention Tasks are solved by the features of the independent claims. preferred embodiments of the invention are in the dependent claims specified.
Der erfindungsgemäße Softwareschutz basiert auf einer Kombination einer Gerätekennung und einer Herstellerkennung. Über die Gerätekennung wird ein bestimmtes Gerät, auf dem die Nutzung des Plug-in-Programms autorisiert ist, eindeutig identifiziert. Beispielsweise kann die so genannte Media-Access-Control (MAC)-Adresse eines Geräts als eine solche Gerätekennung verwendet werden.The software protection according to the invention is based on a combination of a device identifier and a manufacturer ID. about the device identifier is a particular device, on which the use of the plug-in program is authorized, clearly identified. For example, the so-called media access control (MAC) address of a device as such a device identifier be used.
Diese Gerätekennung wird dem Softwarehersteller des Plug-in-Programms beispielsweise von dem Anwender mitgeteilt. Der Hersteller erzeugt dann aus dieser Gerätekennung und seiner Herstellerkennung einen Schlüssel. Dieser Schlüssel wird zusammen mit dem Plug-in-Programm auf einen Datenträger, wie z. B. eine CD-ROM, gespeichert.This device identifier becomes the software manufacturer of the plug-in program communicated by the user, for example. The manufacturer then creates from this device identifier and its manufacturer ID a key. This key is put together with the plug-in program on a data medium, such as B. a CD-ROM, saved.
Zur Installation des Plug-in-Programms wird dann beispielsweise wie folgt vorgegangen: Zunächst wird die Gerätekennung des Geräts abgefragt, auf dem das Plug-in-Programm installiert werden soll. Über eine Nutzerschnittstelle wird sodann die Herstellerkennung des Herstellers des zu installierenden Plug-in-Programms abgefragt.The installation of the plug-in program is then carried out as follows, for example: First, the device identifier of the device on which the plug-in program is installed is queried that should. The manufacturer identification of the manufacturer of the plug-in program to be installed is then queried via a user interface.
Aus der Gerätekennung und der Herstellerkennung wird wiederum mit demselben Verschlüsselungsverfahren ein Schlüssel gebildet. Der zuvor herstellerseitig gebildete Schlüssel, der auf dem Datenträger gespeichert ist, wird dann mit dem nutzerseitig bei der Installation erzeugten Schlüssel verglichen. Stimmen die beiden Schlüssel überein, so wird die Übertragung des Plug-in-Programms zu dem Gerät freigegeben, sodass es dort im Zusammenhang mit einer Basissoftware benutzt werden kann.From the device identifier and the manufacturer identifier a key is again formed using the same encryption method. The key previously created by the manufacturer and stored on the data carrier is then generated by the user during installation key compared. If the two keys match, the transfer is made released the plug-in program to the device, so it can be used there in conjunction with basic software can.
Diese Vorgehensweise bietet insbesondere die Möglichkeit, ein zweistufiges Software-Schutzkonzept zu realisieren:
- – Die Basissoftware des offenen Systems kann durch ein proprietäres Schutzkonzept des Herstellers der Basissoftware geschützt werden. Eine Offenlegung dieses proprietären Schutzkonzepts der Basissoftware ist nicht erforderlich, da dieser Mechanismus ausschließlich zum Schutz der Basissoftware genutzt wird.
- – Der Hersteller der Basissoftware bietet eine Softwareunterstützung an, beispielsweise in Form eines so genannten Wizards, um Drittherstellern ein einheitliches, komfortables Software-Schutzkonzept zum Schutz von deren Plug-in-Software zu bieten. Eine solche Softwareunterstützung kann Teil eines Developmentkits sein. Damit werden Unverträglichkeiten zwischen verschiedenen Software-Schutzkonzepten unterschiedlicher Dritthersteller vermieden, da alle Softwarekomponenten mit demselben Mechanismus geschützt werden und die Basissoftware gewährleistet, dass dieses Schutzkonzept mit dem der Basissoftware verträglich ist.
- - The basic software of the open system can be protected by a proprietary protection concept from the manufacturer of the basic software. It is not necessary to disclose this proprietary protection concept of the basic software, since this mechanism is only used to protect the basic software.
- - The manufacturer of the basic software offers software support, for example in the form of a so-called wizard, in order to offer third-party manufacturers a uniform, convenient software protection concept to protect their plug-in software. Such software support can be part of a development kit. This avoids incompatibilities between different software protection concepts from different third-party manufacturers, since all software components are protected with the same mechanism and the basic software ensures that this protection concept is compatible with that of the basic software.
Nach einer bevorzugten Ausführungsform der Erfindung handelt es sich bei dem Gerät, auf dem das Plug-in-Programm instal liert werden soll, um eine so genannte intelligente Kamera. Eine intelligente Kamera hat neben der eigentlichen Kamerafunktion eine Bildverarbeitungseinheit mit verschiedenen Bildverarbeitungsverfahren zur Extraktion von Bildmerkmalen. Solche intelligenten Kameras und Bildverarbeitungsprogramme sind an sich aus dem Stand der Technik bekannt (vergleiche das Produkt Provision der Firma Siemens AG, http://www.ad.siemens.de/machinevision/html_00/produkte/produkte/provis.htm).According to a preferred embodiment of the Invention is the device on which the plug-in program to be installed around a so-called intelligent camera. In addition to the actual camera function, an intelligent camera has one Image processing unit with various image processing methods for the extraction of image features. Such intelligent cameras and Image processing programs are inherently state of the art known (compare the product commission from Siemens AG, http://www.ad.siemens.de/machinevision/html_00/produkte/produkte/provis.htm).
Insbesondere unterstützt die Programmversion Provision V2.1 eine offene Schnittstelle für die Integration von selbst erstellten Plug-in-Prüfelementen, die genau wie alle Standard-Prüfelemente verwendet werden können. Auf diese Weise kann das Prüfprogramm unabhängig vom Standard-Funktionsumfang komfortabel projektiert werden.In particular, the Program version Provision V2.1 an open interface for integration self-made plug-in test elements, which is exactly like all standard test elements can be used. In this way the test program independently can be conveniently configured from the standard range of functions.
Die individuellen Prüfelemente können leicht in der Programmiersprache C++ erstellt und in Provision genutzt werden. Dadurch kann der Anwender den Komfort der Projektierung unter ProVision mit der Flexibilität einer Hochsprachen-Programmierung kombinieren. Viele SIMATIC Machine Vision Partnerfirmen haben bereits solche Plug-in-Prüfelemente entwickelt.The individual test elements can easily created in the programming language C ++ and used in commission become. This allows the user the convenience of configuration combine with ProVision with the flexibility of high-level language programming. Many SIMATIC Machine Vision partner companies already have such Plug-in test elements developed.
Die vorliegende Erfindung ermöglicht es also auf komfortable Art und Weise, z. B. ein weiteres Bildverarbeitungsverfahren für das Bildverarbeitungsprogramm als Plug-in zur Verfügung zu stellen, wobei die autorisierte Benutzung des Plug-in-Programms durch das erfindungsgemäße Software-Schutzkonzept gewährleistet ist.The present invention makes it possible So in a comfortable way, e.g. B. another image processing method for the To provide image processing program as a plug-in, the Authorized use of the plug-in program by the software protection concept according to the invention guaranteed is.
Für die Installation des Plug-in-Programms wird das Gerät vorzugsweise mit einem externen Computer, insbesondere einem üblichen Personalcomputer verbunden. Diese Verbindung kann über eine Netzwerkverbindung oder eine Busverbindung des Automatisierungssystems hergestellt werden, z. B. über einen Feldbus oder Profibus. Alternativ kann auch über ein separa tes Kabel oder drahtlos nur für die Zwecke der Installation zwischen dem Computer und dem Gerät eine lokale Verbindung hergestellt werden. Über diese Verbindung wird die Gerätekennung, also insbesondere die MAC-Adresse des Geräts, abgefragt und/oder es wird das Plug-in-Programm über diese Verbindung übertragen.For the installation of the plug-in program is preferred by the device connected to an external computer, in particular a conventional personal computer. This connection can be made via a Network connection or a bus connection of the automation system are produced, e.g. B. about a fieldbus or Profibus. Alternatively, a separate cable or wireless only for installation purposes a local connection is established between the computer and the device. About these Connection becomes the device identifier, in particular the MAC address of the device is queried and / or it is the plug-in program transfer this connection.
Nach einer bevorzugten Ausführungsform der Erfindung wird zur Durchführung einer Schlüsseltransformation ein so genannter Hash-Schlüssel aus der Gerätekennung und der Herstellerkennung gebildet. Zur Bildung dieser Hash-Schlüsseltransformation kommt eine Hash-Funktion zum Einsatz, die z. B. durch das Developmentkit für das Plug-in-Programm vorgegeben ist.According to a preferred embodiment of the Invention becomes implementation a key transformation a so-called hash key from the device identifier and the manufacturer identification. To form this hash key transformation a hash function is used, e.g. B. through the development kit for the Plug-in program is specified.
Nach einer weiteren bevorzugten Ausführungsform der Erfindung wird aus der Gerätekennung und der Herstellerkennung mittels eines Cyclic-Redundancy-Check (CRC)-Verfahrens ein Schlüssel gebildet.According to a further preferred embodiment the invention is derived from the device identifier and the manufacturer identification by means of a cyclic redundancy check (CRC) process a key educated.
Das CRC-Verfahren ist ein geläufiges Verfahren
zur Fehlererkennung bei der digitalen Signalübertragung. Zur Durchführung eines
CRC-Verfahrens wird eine Nachrichtenkette mit Hilfe eines Schlüsselworts
dividiert. Ein solches Schlüsselwort wird
auch als Generatorpolynom bezeichnet. Das Schlüsselwort ist sowohl dem Sender
als auch dem Empfänger
bekannt. Der Divisionsrest bildet das so genannte Checkword, welches
zur Überprüfung der Fehlerfreiheit
der Nachrichtenübertragung
dient. Ein CRC-Verfahren ist beispielsweise aus
Erfindungsgemäß wird dieses an sich aus dem Stand der Technik für die Fehlererkennung bei der digitalen Nachrichtenübertragung verwendete CRC-Verfahren zur Realisierung eines Software-Schutzkonzepts eingesetzt. Hierzu wird die Gerätekennung mit der Herstellerkennung zu einem String verkettet. Diese Verkettung wird dann durch ein Schlüsselwort dividiert. Der Divisionsrest dient als Schlüssel.According to the invention, this CRC method, which is used per se from the prior art for error detection in digital message transmission, is used to implement a software protection concept. For this purpose, the device identifier is linked to the manufacturer identifier to form a string. This concatenation is then divided by a keyword. The remainder of the division serves as Key.
Dieses Verfahren wird herstellerseitig angewendet, um den Schlüssel zu erzeugen, der auf dem Datenträger abgespeichert wird. Dasselbe Verfahren wird auch anwenderseitig mit demselben Schlüsselwort durchgeführt, um ein Checkword aus der von dem Gerät abgefragten Gerätekennung und der über die Nutzerschnittstelle eingegebenen Herstellerkennung zu bilden. Stimmt das auf dem Datenträger gespeicherte Checkword mit dem anwenderseitig gebildeten Checkword überein, 'so folgt daraus die Autorisierung der Nutzung des Plug-ins auf dem betreffenden Gerät.This process is made by the manufacturer applied to the key to generate that on disk is saved. The same procedure is also used by the user with the same keyword carried out, a checkword from the device identifier requested by the device and the one about the To form the user interface entered manufacturer ID. Right that on disk stored checkword matches the checkword created by the user, 'this follows from Authorization to use the plug-in on the device in question.
Im Weiteren werden bevorzugte Ausführungsbeispiele der Erfindung mit Bezugnahme auf die Zeichnungen näher erläutert. Es zeigen:In the following, preferred exemplary embodiments the invention explained in more detail with reference to the drawings. It demonstrate:
Die
Nach der Programmierung des Plug-in-Programms in dem Schritt 100 wird das Verschlüsselungsverfahren des Plug-in-Wizards in dem Schritt 102 gestartet.After programming the plug-in program in step 100 the encryption process of the plug-in wizard started in step 102.
In dem Schritt 102 erscheint ein Eingabefenster mit der Aufforderung zur Eingabe der Drittherstellerkennung. Nach dieser Eingabe erscheint in dem Schritt 104 ein weiteres Eingabefenster mit der Eingabeaufforderung einer eindeutigen Gerätekennung des für die Benutzung des Plug-ins autorisierten Geräts. Bei dieser Gerätekennung handelt es sich vorzugsweise um die MAC-Adresse des autorisierten Geräts. Diese wird dem Dritthersteller von dem Anwender mitgeteilt. Der Dritthersteller gibt diese MAC-Adresse in das Eingabefenster ein.A appears in step 102 Entry window with the request to enter the third-party identification. After this entry, a further input window appears in step 104 with the prompt for a unique device identifier of for the use of the plug-in authorized device. With this device identifier it is preferably the MAC address of the authorized one Device. This is communicated to the third party manufacturer by the user. The Third-party manufacturers enter this MAC address in the input window.
In dem Schritt 106 erfolgt danach eine Verschlüsselung der MAC-Adresse und der Herstellerkennung mittels einer Schlüsseltransformation des Verschlüsselungsverfahrens des Plug-in-Wizards.This is followed in step 106 an encryption the MAC address and the manufacturer identification by means of a key transformation the encryption process the plug-in wizard.
In dem Schritt 108 wird das Plug-in-Programm mit dem in dem Schritt 106 erzeugten Schlüssel auf einem Datenträger gespeichert.In step 108 the plug-in program stored on a data carrier with the key generated in step 106.
Die
Der Divisionsrest der Division der Verkettung durch das Generatorpolynom in dem Schritt 202 ist das Ergebnis der Schlüsseltransformation, d. h. das so genannte Checkword. Dieses wird in dem Schritt 204 zur Abspeicherung auf dem Datenträger ausgegeben. Von besonderem Vorteil ist der Einsatz dieses CRC-Check-Verfahrens besonders bei Anwendungen mit hohen Performance-Anforderungen, wie beispielsweise in der Bildverarbeitung, da das CRC-Check-Verfahren besonders schnell arbeitet. Alternativ können auch Hash-Verfahren zum Einsatz kommen, die ebenfalls schnell sind.The remainder of the division of the This is concatenation by the generator polynomial in step 202 Result of the key transformation, d. H. the so-called checkword. This is done in step 204 issued for storage on the data carrier. Of particular The use of this CRC check procedure is particularly advantageous for Applications with high performance requirements, such as in image processing because the CRC check process is particularly fast is working. Alternatively, you can hash methods are also used, which are also fast.
Die
In dem Schritt 302 wird das Set-up-Programm zur Installation des Plug-in-Programms gestartet. Daraufhin wird in dem Schritt 304 eine Verbindung zwischen dem Personalcomputer und dem Gerät, auf dem das Plug-in installiert werden soll, hergestellt.In step 302 the set-up program started to install the plug-in program. Thereupon will in step 304 a connection between the personal computer and the device, on which the plug-in is to be installed.
In dem Schritt 306 wird die MAC-Adresse von dem Gerät abgefragt und über die Verbindung zu dem Personalcomputer übertragen. In dem Schritt 308 erscheint auf dem Bildschirm des Personalcomputers ein Eingabefenster mit der Aufforderung zur Eingabe der Drittherstellerkennung des zu installierenden Plug-ins. Diese Drittherstellerkennung wird beispielsweise über die Tastatur des Personalcomputers von dem Anwender eingegeben.In step 306, the MAC address of the device queried and about transfer the connection to the personal computer. At step 308 an input window appears on the personal computer screen with the request for the third party identification of the plug-ins to be installed. This third party identification is, for example, via the Keyboard of the personal computer entered by the user.
In dem Schritt 310 erfolgt sodann
die Verschlüsselung
der in dem Schritt 306 von dem Gerät abgefragten MAC-Adresse und
der in dem Schritt 308 eingegebenen Drittherstellerkennung. Das in dem
Schritt 310 zur Anwendung kommende Verschlüsselungsverfahren ist dasselbe
wie das Verschlüsselungsverfahren
des Schritts 106 (vergleiche
In dem Schritt 312 wird geprüft, ob der
in dem Schritt 108 (vergleiche
Wenn in dem Schritt 312 festgestellt wird, dass die Schlüssel in der Tat identisch sind, erfolgt in dem Schritt 316 eine Übertragung des Plug-in-Programms von dem Datenträger zu dem Gerät, sodass das Plug-in-Programm in dem Gerät in Verbindung mit der Basissoftware benutzt werden kann.If determined in step 312 is that the key are indeed identical, a transmission takes place in step 316 of the plug-in program from the data carrier to the device, so that the Plug-in program in the device can be used in conjunction with the basic software.
Die
Das Kameramodul
Im Umfang dieser Basissoftware sind
bereits die Bildverarbeitungsverfahren
Als Ergebnis der Bildverarbeitung
gibt die Bildverarbeitungseinheit
Wenn das Bildverarbeitungsverfahren
Die intelligente Kamera
Für
den Fall, dass die im Basisumfang des Bildverarbeitungsprogramms
Zur Installation des Bildverarbeitungsverfahrens
Zur Installation des Bildverarbeitungsverfahrens
Der
Anwender legt den Datenträger
The user places the disk
Z. B. wird von dem Datenträger
Das Set-up-Programm
Über
die Nutzerschnittstelle
Der resultierende Schlüssel wird
durch das Vergleichsmodul
Dieser Vorgang lässt sich wiederholt für verschiedene Bildverarbeitungsverfahren oder andere Plug-ins zur Realisierung von Spezialanwendungen wiederholen, wodurch ein höchstes Maß an Flexibilität zur Anpassung des Automatisierungssystems an neue Anwendungen gegeben ist.This process can be repeated for different Image processing methods or other plug-ins for implementation Repeat from special applications, providing the highest level of flexibility for customization of the automation system to new applications.
Claims (17)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10304877A DE10304877A1 (en) | 2003-02-06 | 2003-02-06 | Procedure for installing a plug-in program |
EP04708745A EP1597671A2 (en) | 2003-02-06 | 2004-02-06 | Method for installing a plug-in program |
PCT/EP2004/001120 WO2004070610A2 (en) | 2003-02-06 | 2004-02-06 | Method for installing a plug-in program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10304877A DE10304877A1 (en) | 2003-02-06 | 2003-02-06 | Procedure for installing a plug-in program |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10304877A1 true DE10304877A1 (en) | 2004-08-19 |
Family
ID=32730821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10304877A Withdrawn DE10304877A1 (en) | 2003-02-06 | 2003-02-06 | Procedure for installing a plug-in program |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP1597671A2 (en) |
DE (1) | DE10304877A1 (en) |
WO (1) | WO2004070610A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014076116A1 (en) * | 2012-11-14 | 2014-05-22 | Siemens Aktiengesellschaft | Manipulation-proof installation of building control software in authorised runtime environments |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102005043162A1 (en) * | 2005-09-12 | 2007-03-15 | Robert Bosch Gmbh | System for deploying applications |
CN116781424B (en) * | 2023-08-21 | 2023-11-24 | 广东咏声动漫股份有限公司 | Animation plug-in authorization configuration method |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4866769A (en) * | 1987-08-05 | 1989-09-12 | Ibm Corporation | Hardware assist for protecting PC software |
US5199066A (en) * | 1989-04-18 | 1993-03-30 | Special Effects Software, Inc. | Method and apparatus for protecting software |
US6108420A (en) * | 1997-04-10 | 2000-08-22 | Channelware Inc. | Method and system for networked installation of uniquely customized, authenticable, and traceable software application |
-
2003
- 2003-02-06 DE DE10304877A patent/DE10304877A1/en not_active Withdrawn
-
2004
- 2004-02-06 WO PCT/EP2004/001120 patent/WO2004070610A2/en active Search and Examination
- 2004-02-06 EP EP04708745A patent/EP1597671A2/en not_active Ceased
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014076116A1 (en) * | 2012-11-14 | 2014-05-22 | Siemens Aktiengesellschaft | Manipulation-proof installation of building control software in authorised runtime environments |
US9858061B2 (en) | 2012-11-14 | 2018-01-02 | Siemens Schweiz Ag | Tamperproof installation of building control software in approved runtime environments |
Also Published As
Publication number | Publication date |
---|---|
WO2004070610A3 (en) | 2005-11-17 |
EP1597671A2 (en) | 2005-11-23 |
WO2004070610A2 (en) | 2004-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69833022T2 (en) | LOADING APPLICATIONS INTO A DIGITAL DECODER | |
DE69531278T2 (en) | Method and device for loading a protected memory zone in a data processing device | |
EP1133849B1 (en) | Method and device for generating an encoded user data stream and method and device for decoding such a data stream | |
DE69730276T2 (en) | Apparatus and method for facilitating the avoidance of exceptional specific conditions during the course of a program | |
DE69021935T2 (en) | Procedure for verifying the integrity of a program or data and means for performing this procedure. | |
WO1997001147A2 (en) | Method of simplifying communication with chip cards | |
WO2004097734A2 (en) | Data processing method | |
DE19963471B4 (en) | Apparatus and method for preventing piracy of computer programs | |
WO1999008446A1 (en) | Transcoder for decoding encoded tv programs | |
WO2010060985A2 (en) | Method system and simulation or analysis model for data processing | |
DE102005009621A1 (en) | Circuit, apparatus and method for receiving, conditional access and copy protection of digital video transmission signals | |
EP2673731B1 (en) | Method for programming a mobile terminal chip | |
WO2003003201A2 (en) | Method for transmitting software modules | |
EP1358571B1 (en) | Data processing device | |
DE10065684A1 (en) | System and method for granting permission to run a program installed on a computer | |
DE10304877A1 (en) | Procedure for installing a plug-in program | |
EP1604505B1 (en) | Loading media data into a portable data carrier | |
WO2003083650A2 (en) | Device and method for automatically generating automation software | |
DE112006000349T5 (en) | Combined command and data code | |
EP3497606B1 (en) | Individual encryption of control commands | |
WO2007009859A1 (en) | Method for exporting rights to use to electronic data objects | |
EP2184695A1 (en) | Method of combining data with a device to be used for processing data, corresponding functionality to execute the individual steps in the procedure and computer program to implement the procedure | |
EP2486489B1 (en) | Portable data carrier having additional functionality | |
WO2007113163A1 (en) | Improved digital rights management for domains | |
EP0977160B1 (en) | Method and data processing device for the reliable execution of instructions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8141 | Disposal/no request for examination |