DE4321765A1 - Verfahren zum Freigeben einer funktionalen Option für Käufer von computerartigen Systemen - Google Patents

Verfahren zum Freigeben einer funktionalen Option für Käufer von computerartigen Systemen

Info

Publication number
DE4321765A1
DE4321765A1 DE4321765A DE4321765A DE4321765A1 DE 4321765 A1 DE4321765 A1 DE 4321765A1 DE 4321765 A DE4321765 A DE 4321765A DE 4321765 A DE4321765 A DE 4321765A DE 4321765 A1 DE4321765 A1 DE 4321765A1
Authority
DE
Germany
Prior art keywords
codes
option
options
code
password
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
Application number
DE4321765A
Other languages
English (en)
Inventor
Michael M W Wright
Henry K Ting
David James Boshard
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsemi Semiconductor ULC
Original Assignee
Mitel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitel Corp filed Critical Mitel Corp
Publication of DE4321765A1 publication Critical patent/DE4321765A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/106Enforcing content protection by specific content processing
    • G06F21/1063Personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/30Individual registration on entry or exit not involving the use of a pass
    • G07C9/32Individual registration on entry or exit not involving the use of a pass in combination with an identity check
    • G07C9/33Individual registration on entry or exit not involving the use of a pass in combination with an identity check by means of a password
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/007Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)

Description

Diese Erfindung betrifft ein Verfahren zum Schaffen funktiona­ ler Optionen für Käufer von computerartigen Systemen wie bei­ spielsweise einem Telefonschaltsystem.
Ein Käufer eines computerartigen Systems wie beispielsweise eines Telefonschaltsystems kauft oft das System mit bestimmten fakultativen Merkmalen, wünscht aber später, ihnen welche hin­ zuzufügen. Solche Merkmale sind angeboten worden durch Verkau­ fen von Hardwaremodulen oder Software-Erweiterungen. Ein sol­ ches Hinzufügen von Optionen ist jedoch mühselig, da der Anbie­ ter die mögliche Anzahl von Erweiterungen abschätzen muß, die innerhalb einer vernünftigen zukünftigen Zeit zu verkaufen sind, und welche Erweiterungen möglicherweise zu verkaufen sind, und dann hardwaremäßige Optionsmodule oder Disketten, auf denen Software-Erweiterungen für jene Optionen gespeichert sind, herstellen und lagern.
Zusätzlich ist eine Hardware- und Software-Piraterie der Module oder der Software auch ein großes Problem und schwierig zu er­ fassen und zu stoppen.
Die vorliegende Erfindung ist ein Verfahren zum Schaffen von Optionen für computerartige Systeme, ohne daß irgendein Lagern von Hardwaremodulen oder Software-Disketten notwendig wäre, und das das Problem der Piraterie fast eliminiert. Die Probleme des Vorhersagens und Vorfertigens der Menge und der Typen von Optionen werden somit völlig eliminiert, wodurch die signifi­ kanten Kosten zum Herstellen der Options-Hardwaremodule oder -Disketten, des Transports solcher Produkte von dem Zulieferer bzw. Anbieter und des zum Handeln mit der Ware erforderlichen Personals, des Lagerns und des Transports von ihr eliminiert wird. Dennoch kann eine oder mehrere Optionen schnell und si­ cher zur Verfügung gestellt werden.
Gemäß der Erfindung werden alle möglichen Optionen mit dem Ori­ ginalsystem zur Verfügung gestellt, aber die Optionen sind da­ von abgehalten, freigegeben zu sein, bis die Optionen von dem Anbieter verkauft werden. Sind die Optionen einmal verkauft worden, stellt der Anbieter einen berechneten Code zur Verfü­ gung, der den gewünschten Optionen entspricht, wobei auf den Code hierin als ein Password bzw. ein Kennwort Bezug genommen wird.
Bei einem Ausführungsbeispiel werden Codes, die den gewünschten Optionen entsprechen, miteinander kombiniert und mit der Seriennummer des Systems kombiniert. Die Kombination wird durch eine Funktionseinrichtung verarbeitet, und das Ergebnis wird mit dem Kennwort verglichen. Wenn die zwei identisch sind, werden die ausgewählten Optionen freigegeben.
Bei einem anderen Ausführungsbeispiel wird das Kennwort durch eine Funktionseinrichtung geführt und das Ergebnis mit den kom­ binierten Codes verglichen. Wenn die zwei identisch sind, wer­ den die ausgewählten Optionen freigegeben.
Somit enthält das Computersystem vorzugsweise eine Seriennum­ mer, die durch Software lesbar ist. Jede mögliche Option, die mit dem Computersystem zur Verfügung gestellt wird, muß einen einzigartigen Code enthalten. Jener einzigartige Code ist ent­ halten entweder in der Hardware oder der Firmware, die durch Software lesbar ist, oder ist in Software enthalten, in Abhän­ gigkeit davon, wie das System arbeitet. Jede der funktionalen Optionen, gleichgültig ob sie in der Hardware oder der Software enthalten ist, ist verborgen bzw. latent, bis sie freigegeben wird.
Die Funktion kann in der Hardware, der Firmware oder der Soft­ ware enthalten sein und kann irgendeine Funktion sein, sollte aber eine Funktion sein, die äußerst schwierig auszurechnen ist. Vorzugsweise wird der Knappsack-Codierungs-Algorithmus benutzt, von dem theoretisch nachgewiesen worden ist, daß er ein unnachgiebiger bzw. nicht entschlüsselbarer Algorithmus ist. Der Algorithmus benutzt einen Schlüssel bzw. eine Taste, der bzw. die nur dem Verkäufer der Optionen bekannt ist, und theoretisch kann in einer angemessenen Zeit nicht ausgerechnet werden, was durch eine polynomische Funktion beschrieben ist (die ein exponentielles Zeitmaß beschreibt). Es ist somit für einen Piraten fast unmöglich, die freigebenden Kennworte zu duplizieren, wobei jedes freigebende Kennwort für jede Gruppe gewünschter funktionaler Optionen für jedes computerartige Sy­ stem mit einer seriellen Zahl unterschiedlich ist und fast un­ möglich zu duplizieren ist.
Da der Käufer dem Anbieter nur Information mitteilt und der Anbieter postwendend nur Information mitteilt, können die ge­ wünschten Optionen sehr schnell freigegeben werden, und tat­ sächlich kann es automatisch zwischen Computersystemen bewirkt werden, wenn einmal eine Zahlungsbestätigung oder das Annehmen eines Auftrags vorliegt. Der Anbieter braucht nur ein Compu­ tersystem zu haben, das ein Kennwort erzeugt, das in das compu­ terartige System eingegeben werden kann, in dem die ausgewähl­ ten Typenoptionen freizugeben sind.
Gemäß einem Ausführungsbeispiel der Erfindung weist ein Verfah­ ren zum Freigeben einer funktionalen Option in einem Computer­ artigen System auf: Speichern einer seriellen Zahl, die spezi­ fisch bzw. bestimmt für das System ist, Speichern unterschied­ licher Codes, die jeweils einer möglichen funktionalen Option entsprechen, die in dem System freigegeben werden kann, Auswäh­ len von Codes, die den gewünschten funktionalen Optionen ent­ sprechen, Kombinieren der ausgewählten Codes und der seriellen Nummer, um einen kombinierten Optionscode zu erhalten, Empfan­ gen eines Kennworts zum Freigeben von funktionalen Optionen, die den ausgewählten Codes entsprechen, Verarbeiten des Kenn­ worts durch ein Funktionsgerät oder einen Prozeß, um ein resul­ tierendes Kennwort zu erhalten, Vergleichen des resultierenden Kennworts mit dem kombinierten Optionscode, und Freigeben der gewünschten funktionalen Optionen, die den ausgewählten Codes entsprechen, in dem Fall, daß das resultierende Kennwort und der kombinierte Optionscode gleich sind.
Gemäß einem weiteren Ausführungsbeispiel der Erfindung weist ein Verfahren zum Freigeben einer funktionalen Option in einem computerartigen System auf: Speichern einer seriellen Zahl, die spezifisch bzw. bestimmt für das System ist, Speichern un­ terschiedlicher Codes, die jeweils einer möglichen funktionalen Option entsprechen, die in dem System freigegeben werden kann, Auswählen von Codes, die den gewünschten funktionalen Optionen entsprechen, Kombinieren der ausgewählten Codes und der seriel­ len Nummer, um einen kombinierten Optionscode zu erhalten, Ver­ arbeiten der kombinierten Optionscodes durch ein Funktionsgerät oder einen Prozeß, um einen resultierenden Optionscode zu er­ halten, Empfangen eines Kennworts zum Freigeben von funktiona­ len Optionen, die den ausgewählten Codes entsprechen, Verglei­ chen des resultierenden Optionscodes mit dem Kennwort, und Freigeben der funktionalen Optionen, die den ausgewählten Codes entsprechen, in dem Fall, daß der resultierende Optionscode und das Kennwort gleich sind.
Gemäß einem weiteren Ausführungsbeispiel der Erfindung weist ein Verfahren, das eine funktionale Option in einem computer­ artigen System zur Verfügung stellt, auf: Ausstatten eines computerartigen Systems mit einer Vielzahl von Optionen, die schon vorgesehen sind, aber vom Arbeiten abgehalten werden, Auswählen bestimmter gewünschter der Optionen, Eingeben eines Codes in das System, und Freigeben der ausgewählten Optionen auf einen Empfang des Codes hin.
Ein besseres Verstehen der Erfindung wird unter Bezugnahme auf die nachfolgende detaillierte Beschreibung in Verbindung mit der folgenden Zeichnung erhalten werden, wobei
Fig. 1 ein Blockdiagramm eines Systems ist, in dem das Ver­ fahren ausgeführt werden kann, und
Fig. 2 ein Flußdiagramm ist, das Schritte bei einem bevor­ zugten Ausführungsbeispiel der Erfindung zeigt.
Ein computerartiges System 1 wird durch einen Käufer von einem Verkäufer gekauft. Das computerartige System weist alle der möglichen funktionalen Optionen 3 auf, die in dem System imple­ mentiert sein können, und die als Option 1, Option 2 . . . Option N gezeigt sind. Diese Optionen 3 können als Hardwaremodule oder als Software-Programmprozesse implementiert sein. Jedoch ist es wichtig, daß jede der funktionalen Optionen ihren eige­ nen unterschiedlichen Optionscode hat, der in Fig. 1 als Optionscode 5 gezeigt ist.
Die Optionscodes können durch einen Prozessor 7 gelesen werden, der Teil des Systems 1 ist, und zwar von jeder funktionalen Option, die z. B. als Firmware realisiert ist, die zu jedem Hardwaremodul gehört, als ein etwas anders verdrahteter Code wie beispielsweise einer, der durch Optionsschalter bestimmt ist, die zu jedem Hardwaremodul gehören, als eine gespeicherte Nummer, die zu jedem Programm gehört, das eine bestimmte funk­ tionale Option implementiert, oder sie können in einer Tabelle in einem Speicher des Systems 1 gespeichert sein.
Eine Tabelle des Beispiels, bei dem innere Codes in Verbindung mit jeder Option gespeichert sind, ist unten in Tabelle 1 ge­ zeigt.
Tabelle 1
Laßt uns annehmen, daß der Systemkäufer wünscht, die Optionen B, C, D, F, J und L zu kaufen.
Der Käufer greift auf die Tabelle zu, oder bestimmt anderer­ seits die bestimmten Optionen mittels einer Eingabe-/Ausgabe­ vorrichtung 9, die beispielsweise eine Terminalanzeige und eine Tastatur sein kann. Eine Dialog-Box bzw. ein -fenster oder eine Form ist an der Anzeige mit allen möglichen Optionen ge­ zeigt, und wenn es gewünscht wird, die zugehörigen Optionsco­ des, die das Computersystem aus der Firmware, der Hardware oder den Programmen für funktionale Optionen hervorholt.
Der Benutzer wählt dann die bestimmten gewünschten Optionen aus. Die Optionen können beispielsweise für ein Telefonsystem sein, Daten für höhere Rechnungsarten, DPNSS, eine Bedienerkon­ sole für einen sehbehinderten Bediener, usw. An einigen Syste­ men könnten beispielsweise neunzig Optionen verfügbar sein. Alle Optionen werden mit dem ursprünglichen Verkauf des Systems zur Verfügung gestellt, sind aber latent bzw. verborgen und können durch das System nicht freigegeben werden.
Mit der Auswahl bestimmter Optionen werden die entsprechenden inneren Optionscodes 5 unterschieden, wie es z. B. in der drit­ ten Spalte der Tabelle 1 bei "ausgewählte Codes" gezeigt ist. Es wird bevorzugt, obwohl es nicht obligatorisch ist, daß die inneren Codes vom binären Typ sein sollten.
Dies beendet den ersten Schritt in dem Prozeß, der in Fig. 2 gezeigt ist.
Das Computersystem 1 kombiniert dann die Optionscodes bei­ spielsweise durch Addieren. Für den in Tabelle 1 gezeigten ausgewählten Code wird der folgende kombinierte Optionscode erzeugt: 0000101000101110.
Eine softwaremäßig lesbare serielle Nummer bzw. Zahl 11 (Fig. 1) gehört zu dem Computersystem 1. Diese serielle Zahl kann in einem softwaremäßig lesbaren Hardwaremodul sein, einer Firmwa­ re, oder kann in Software enthalten sein. Die serielle Zahl sollte einzigartig für jedes einzelne verkaufte System sein. Die serielle Zahl wird dann mit dem kombinierten Optionscode kombiniert, und zwar vorzugsweise durch Verkettung. Wenn z. B. die Systemkennung 632 oder binär 0000001001111000 war, resul­ tiert 0000001001111000/0000101000101110 in 0000001001111000000010100010111011.
Der kombinierte Code wird in eine Hexadezimalzahl umgewandelt und ist dann 02780A2E.
Dieser kombinierte Code im Hexadezimalsystem wird dem Options­ verkäufer zusammen mit einer Zahlung oder Zahlungsanordnungen für die Optionen zur Verfügung gestellt, die durch den Code dargestellt werden.
Der Verkäufer stellt als Antwort ein Kennwort zur Verfügung. Dieses Kennwort wird durch den Verkäufer durch Verarbeiten des Optionscodes erzeugt, der ihm durch den Käufer durch ein Funk­ tionsgerät oder einen Prozeß zur Verfügung gestellt wird. Das Gerät kann Software oder ein Hardwarebediener bzw. ein Hardwa­ reoperator sein. Bei dem vorliegenden Beispiel f (02780A2E) = F5J790, ist die Zahl F5J790 das Kennwort, das der Verkäufer dem Käufer zur Verfügung stellt.
Die Funktion f kann irgendeine Funktion sein, aber es sollte eine Funktion sein, die sehr schwierig auszurechnen ist. Es wird bevorzugt, daß die Funktion auf dem Knappsack-Codierungs- Algorithmus basieren sollte, von dem in der Theorie erwiesen worden ist, daß er ein unnachgiebiger bzw. hartnäckiger bzw. nicht entschlüsselbarer Algorithmus ist. Der Algorithmus be­ nutzt einen Schlüssel, der nur dem Verkäufer bekannt ist.
Ein Funktionsgerät oder ein Prozeß 13 ist in dem System auch vorgesehen, das auf bzw. mit einer Zahl arbeiten kann, die ihm gegeben ist. Die Funktion, die in dem Funktionsgerät oder dem Prozeß 13 verarbeitet wird, kann in allen Systemen identisch sein, die durch den Verkäufer verkauft werden, und muß eine Zahl auf eine Weise verarbeiten, die identisch zu jener durch den Verkäufer ist.
Der Käufer, der das Kennwort von dem Verkäufer erhält, gibt es über die I/O-Vorrichtung 9 in das System ein, das einen resul­ tierenden Code durch Arbeiten auf bzw. mit dem Kennwort berech­ net, das die Funktion des Funktionsgeräts oder des Prozesses 13 benutzt. Somit ist beim Eingeben des Kennworts F5J790 gemäß der einen Funktion das Ergebnis nach der Verarbeitung durch die Funktion f (02780A2E), die der oben angegebene Hexadezimalcode ist.
Das Computersystem veranlaßt dann einen Vergleich des kombinierten Codes im Hexadezimalsystem, der aus der Addition und der Verkettung der ausgewählten Codes und der seriellen Zahl bzw. Nummer resultiert, und des Codes, der aus der Verar­ beitung des Kennworts durch die Funktion resultiert. Die re­ sultierenden Hexadezimalzahlen 02780A2E sollten gleich sein. Wenn sie gleich sind, werden die ausgewählten Optionen freige­ geben. Wenn sie nicht gleich sind, werden keine Optionen frei­ gegeben und eine Fehlermeldung kann an der I/O-Vorrichtung 9 angezeigt werden.
Da es fast unmöglich ist, zu bestimmen, welcher Schlüssel durch den Verkäufer benutzt worden ist, ist es fast unmöglich, das Freigeben oder den Betrieb der Optionen im Zusammenhang mit dem System piratenmäßig zu benutzen.
Während es bevorzugt ist, daß das Verarbeiten binär und im He­ xadezimalsystem erfolgen sollte, wird es verstanden werden, daß andere Zahlenbasen benutzt werden können.
Eine Person, die die obige Beschreibung versteht, kann nun Va­ riationen oder andere Ausführungsbeispiele erdenken. Bei­ spielsweise kann eher als das Kennwort durch eine Funktion in dem System verarbeitet wird, um einen resultierenden Code zu erhalten, der mit dem kombinierten Code verglichen wird, der kombinierte Code durch die Funktion verarbeitet werden, um ein resultierendes Kennwort zu erhalten, das mit dem von dem Ver­ käufer erhaltenen Kennwort verglichen wird.
Diese und alle weiteren Ausführungsbeispiele, die die Prinzi­ pien dieser Erfindung benutzen, werden als Teil dieser Erfin­ dung angesehen, wie sie in den hieran angefügten Ansprüchen definiert ist.
Verfahren zum Freigeben einer funktionalen Option in einem com­ puterartigen System, das aufweist: Speichern einer seriellen Zahl, die spezifisch bzw. bestimmt für das System ist, Speichern unterschiedlicher Codes, die jeweils einer möglichen funktionalen Option entsprechen, die in dem System freigegeben werden kann, Auswählen von Codes, die den gewünschten funktio­ nalen Optionen entsprechen, Kombinieren der ausgewählten Codes und der seriellen Zahl, um einen kombinierten Optionscode zu erhalten, Empfangen eines Kennworts zum Freigeben funktionaler Optionen, die den ausgewählten Codes entsprechen, Verarbeiten des Kennworts durch ein Funktionsgerät oder einen Prozeß, um ein resultierendes Kennwort zu erhalten, Vergleichen des resul­ tierenden Kennworts mit dem kombinierten Optionscode, und Frei­ geben der gewünschten funktionalen Optionen, die den ausgewähl­ ten Codes entsprechen, in dem Fall, daß das resultierende Kenn­ wort und der kombinierte Optionscode gleich sind.

Claims (18)

1. Verfahren zum Freigeben einer funktionalen Option in einem computerartigen System, das Verfahren aufweist:
  • (a) Speichern einer seriellen Zahl, die spezifisch bzw. bestimmt für das System ist,
  • (b) Speichern unterschiedlicher Codes, die jeweils einer möglichen funktionalen Option entsprechen, die in dem System freigegeben werden können,
  • (c) Auswählen von Codes, die den gewünschten funktionalen Optionen entsprechen,
  • (d) Kombinieren der ausgewählten Codes und der seriellen Zahl, um einen kombinierten Optionscode zu erhalten,
  • (e) Empfangen eines Kennworts zum Freigeben funktionaler Optionen, die den ausgewählten Codes entsprechen,
  • (f) Verarbeiten des Kennworts durch eine Funktion, um ein resultierendes Kennwort zu erhalten,
  • (g) Vergleichen des resultierenden Kennworts mit dem kom­ binierten Optionscode,
  • (h) Freigeben der gewünschten funktionalen Optionen, die den ausgewählten Codes entsprechen, in dem Fall, daß das resultierende Kennwort und der kombinierte Optionscode gleich sind.
2. Verfahren nach Anspruch 1, wobei die ausgewählten Codes durch Addition kombiniert werden.
3. Verfahren nach Anspruch 2, wobei die kombinierten ausge­ wählten Codes mit der seriellen Zahl durch Verkettung kom­ biniert werden.
4. Verfahren nach Anspruch 1, wobei die Funktion Codierungs­ mittel oder einen Prozeß aufweist.
5. Verfahren nach Anspruch 4, wobei die Codierungsmittel oder der Prozeß ein Codierungsalgorithmus ist, der durch einen Prozessor des computerartigen Systems verarbeitet wird.
6. Verfahren nach Anspruch 5, wobei jeder der Codes eine bi­ näre Zahl ist, und wobei die serielle Zahl eine binäre Zahl ist.
7. Verfahren nach Anspruch 6, das ein Umwandeln des kombinierten Optionscodes in ein Hexadezimalsystem auf­ weist, und wobei das resultierende Kennwort im Hexadezi­ malcode ist.
8. Verfahren nach Anspruch 7, wobei die ausgewählten Codes durch Addition kombiniert werden und die serielle Zahl mit den addierten ausgewählten Codes durch Verkettung kombi­ niert wird.
9. Verfahren zum Freigeben einer funktionalen Option in einem computerartigen System, wobei das Verfahren aufweist:
  • (a) Speichern einer seriellen Zahl, die spezifisch bzw. bestimmt für das System ist,
  • (b) Speichern unterschiedlicher Codes, die jeweils einer möglichen funktionalen Option entsprechen, die in dem System freigegeben werden kann,
  • (c) Auswählen von Codes, die gewünschten funktionalen Op­ tionen entsprechen,
  • (d) Kombinieren der ausgewählten Codes und der seriellen Zahl, um einen kombinierten Optionscode zu er­ halten,
  • (e) Verarbeiten der kombinierten Optionscodes durch eine Funktionseinrichtung, um einen resultierenden Optionscode zu erhalten,
  • (f) Empfangen eines Kennworts zum Freigeben funktionaler Optionen, die dem ausgewählten Code entsprechen,
  • (g) Vergleichen des resultierenden Optionscodes mit dem Kennwort, und
  • (h) Freigeben der funktionalen Optionen, die den ausge­ wählten Codes entsprechen, in dem Fall, daß der re­ sultierende Optionscode und das Kennwort gleich sind.
10. Verfahren nach Anspruch 1 oder 9, das den Schritt auf­ weist: dem Verkäufer den kombinierten Optionscode zur Verfügung stellen, Verarbeiten des kombinierten Options­ codes durch den Verkäufer durch eine Verkäuferfunktion, die dieselbe Funktion verwendet, wie das computerartige System, und dadurch Erhalten des Kennworts.
11. Verfahren nach Anspruch 10, wobei die Funktion einen Knappsack-Codierungs-Algorithmus aufweist.
12. Verfahren, das eine funktionale Option in einem computer­ artigen System zur Verfügung stellt, wobei das Verfahren aufweist:
  • (a) Versehen eines computerartigen Systems mit einer Vielzahl von Optionen, die schon vorgesehen sind, aber vom Arbeiten abgehalten werden,
  • (b) Auswählen bestimmter gewünschter der Optionen,
  • (c) Eingeben eines Codes in das System, und
  • (d) Freigeben der ausgewählten Optionen auf einen Empfang des Codes hin.
13. Verfahren nach Anspruch 12, das den Schritt des Verglei­ chens des Codes mit einer berechneten Zahl und des Freige­ bens der ausgewählten Optionen auf eine Bestimmung einer Übereinstimmung des Codes mit der berechneten Zahl hin aufweist.
14. Verfahren nach Anspruch 13, wobei die berechnete Zahl aus sowohl einer Zahl, die einzigartig für das computerartige System ist, als auch aus vorbestimmten Zahlen, die den ausgewählten Optionen entsprechen, abgeleitet wird.
15. Verfahren nach Anspruch 14, wobei die berechnete Zahl auch durch Verarbeiten einer Basiszahl abgeleitet wird, die der Kombination der einzigartigen Zahl und der vorbestimmten Zahlen entspricht, und zwar durch eine erste Funktion.
16. Verfahren nach Anspruch 14, das den Schritt zum Verarbei­ ten eines Kennworts durch eine erste Funktion und Ableiten des Codes dadurch aufweist.
17. Verfahren nach Anspruch 15 oder 16, wobei die Funktion eine Codierung der Basiszahl aufweist.
18. Verfahren nach Anspruch 17, wobei das Kennwort durch Emp­ fangen einer Zahl erhalten wird, die der Zahl entspricht, die einzigartig für das computerartige System ist, und von vorbestimmten Zahlen, die den ausgewählten Optionen ent­ sprechen, und Verarbeiten von ihnen durch eine zweite Funktion, die identisch zu der ersten Funktion ist.
DE4321765A 1992-07-08 1993-06-30 Verfahren zum Freigeben einer funktionalen Option für Käufer von computerartigen Systemen Withdrawn DE4321765A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA002073495A CA2073495C (en) 1992-07-08 1992-07-08 Option selection and control

Publications (1)

Publication Number Publication Date
DE4321765A1 true DE4321765A1 (de) 1994-01-13

Family

ID=4150127

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4321765A Withdrawn DE4321765A1 (de) 1992-07-08 1993-06-30 Verfahren zum Freigeben einer funktionalen Option für Käufer von computerartigen Systemen

Country Status (6)

Country Link
US (1) US5933087A (de)
CA (1) CA2073495C (de)
DE (1) DE4321765A1 (de)
GB (1) GB2268605B (de)
IT (1) IT1264631B1 (de)
MX (1) MX9303999A (de)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19529321A1 (de) * 1994-08-10 1996-02-15 Fujitsu Ltd Verfahren und Vorrichtung zur Schlüsselauthentisierung
DE4429368A1 (de) * 1994-08-20 1996-02-29 Winfried Mueller Verfahren für die nutzungsbezogene Aufteilung von Kosten einer elektrischen ode elektronischen Vorrichtung
DE19615003A1 (de) * 1996-04-16 1997-10-23 Heiko Dipl Ing Jansen Verfahren zur Protokollierung der Nutzung eines Anwenderprogramms auf einem ersten Rechner durch einen zweiten Rechner
DE19824814A1 (de) * 1998-06-03 1999-12-09 Siemens Ag Programmgesteuerte Vorrichtung
DE19846065A1 (de) * 1998-10-06 2000-04-13 Oce Printing Systems Gmbh Verfahren zum Betreiben einer Datenverarbeitungsanlage mit Kopierschutz für Anwenderprogramme
DE10000964A1 (de) * 2000-01-12 2001-05-10 Siemens Ag Verfahren zur Verschlüsselung von Software, Verfahren zur Übermittlung von Software, Verfahren zur Entschlüsselung von Software und softwaregesteuertes Gerät
WO2002023310A2 (de) * 2000-09-15 2002-03-21 Gavitec Ag Verfahren zum betreiben einer vorrichtung und vorrichtung mit einem individuellen code
DE10105465A1 (de) * 2001-02-07 2002-08-29 Andreas Mencher Kopierschutz für Computerprogramme zum Schutz vor Raubkopien mit Verwendung eines Zusatzgerätes
EP1435557A2 (de) * 2002-12-30 2004-07-07 International Business Machines Corporation Begrenzter Zugriff auf Hardware durch Programme
WO2004059492A1 (de) * 2002-12-23 2004-07-15 Grundig Multimedia B.V. Freigabe von funktionen eines gerätes der unterhaltungselektronik unterhaltungselektronik unter verwendung eines freischaltcodes
DE10353499A1 (de) * 2003-11-11 2005-06-16 Siemens Ag Verfahren zum Ändern der Leistungsmerkmale einer von einer Systemsoftware gesteuerten Vorrichtung
DE102005002146A1 (de) * 2005-01-12 2006-07-20 Volkswagen Ag Verfahren und Vorrichtung für eine Datenaktualisierung eines Systems
DE102005016381A1 (de) * 2005-03-01 2006-09-14 Wincor Nixdorf International Gmbh Verfahren zur gesicherten Funktionsfreischaltung von Modulen
DE10023820B4 (de) * 2000-05-15 2006-10-19 Siemens Ag Software-Schutzmechanismus
US7779239B2 (en) 2004-07-28 2010-08-17 Intel Corporation User opt-in processor feature control capability

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7188255B1 (en) * 1999-09-23 2007-03-06 Hewlett-Packard Development Company, L.P. Software delivery system
ATE364202T1 (de) * 2001-04-02 2007-06-15 Motorola Inc Aktivieren und deaktivieren von softwarefunktionen
US8909777B2 (en) 2002-06-26 2014-12-09 Intel Corporation Systems and methods for dynamic access to program features
JP2004252931A (ja) * 2002-12-26 2004-09-09 Sony Corp 電子機器、機器機能制御方法およびサーバ
EP1550931A1 (de) * 2003-12-31 2005-07-06 Neopost S.A. Freischaltung einer gesperrten Funktionalität eines rechnergesteuerten Apparates
US7091857B2 (en) * 2004-02-12 2006-08-15 Mi-Jack Products, Inc. Electronic control system used in security system for cargo trailers
US8607328B1 (en) 2005-03-04 2013-12-10 David Hodges Methods and systems for automated system support
US9652637B2 (en) 2005-05-23 2017-05-16 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system for allowing no code download in a code download scheme
JP4127276B2 (ja) * 2005-06-03 2008-07-30 ソニー株式会社 電子機器及びその管理システム
US8769295B2 (en) * 2005-08-01 2014-07-01 Intel Corporation Computing system feature activation mechanism
US7693596B2 (en) * 2005-12-14 2010-04-06 Dell Products L.P. System and method for configuring information handling system integrated circuits
US9904809B2 (en) 2006-02-27 2018-02-27 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system for multi-level security initialization and configuration
US9489318B2 (en) 2006-06-19 2016-11-08 Broadcom Corporation Method and system for accessing protected memory
US20070290715A1 (en) * 2006-06-19 2007-12-20 David Baer Method And System For Using One-Time Programmable (OTP) Read-Only Memory (ROM) To Configure Chip Usage Features
US20080004889A1 (en) * 2006-06-30 2008-01-03 Edwards William T Method of providing a customer with increased integrated circuit performance
JP2008197795A (ja) * 2007-02-09 2008-08-28 Nec Infrontia Corp 機能ライセンス認証方法及び機能ライセンス認証システム
US8880736B2 (en) 2009-07-09 2014-11-04 Simon Cooper Methods and systems for archiving and restoring securely installed applications on a computing device
US20110010759A1 (en) * 2009-07-09 2011-01-13 Apple Inc. Providing a customized interface for an application store
EP2911086A1 (de) * 2014-02-19 2015-08-26 Renesas Electronics Europe GmbH Integrierte Schaltung mit Aktivteile, bezogen auf intrinsische Eigenschaften
TWI522949B (zh) * 2014-06-17 2016-02-21 耐點科技股份有限公司 啓動應用程式其他功能的方法及應用該方法之行動通訊裝置、伺服器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4685055A (en) * 1985-07-01 1987-08-04 Thomas Richard B Method and system for controlling use of protected software
DE4103935A1 (de) * 1991-02-11 1992-08-13 Klaus Schwarz Verfahren und einrichtung zur uebertragung von auf optischen speichern

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3937925A (en) * 1974-06-25 1976-02-10 Ibm Corporation Modular transaction terminal with microprocessor control
US4218582A (en) * 1977-10-06 1980-08-19 The Board Of Trustees Of The Leland Stanford Junior University Public key cryptographic apparatus and method
US4471164A (en) * 1981-10-13 1984-09-11 At&T Bell Laboratories Stream cipher operation using public key cryptosystem
FR2523745B1 (fr) * 1982-03-18 1987-06-26 Bull Sa Procede et dispositif de protection d'un logiciel livre par un fournisseur a un utilisateur
US4677604A (en) * 1985-02-04 1987-06-30 Selsys Corporation Method for controlling access to recorded data
FR2596177B1 (fr) * 1986-03-19 1992-01-17 Infoscript Procede et dispositif de sauvegarde qualitative de donnees numerisees
US5010571A (en) * 1986-09-10 1991-04-23 Titan Linkabit Corporation Metering retrieval of encrypted data stored in customer data retrieval terminal
JPH087720B2 (ja) * 1986-09-16 1996-01-29 富士通株式会社 複数サービス用icカードの領域アクセス方法
US4866769A (en) * 1987-08-05 1989-09-12 Ibm Corporation Hardware assist for protecting PC software
GB2228807A (en) * 1989-03-03 1990-09-05 Esselte Letraset Ltd Data retrieval system
US5199066A (en) * 1989-04-18 1993-03-30 Special Effects Software, Inc. Method and apparatus for protecting software
GB9005916D0 (en) * 1990-03-16 1990-05-09 Amstrad Plc Computer system
US5058162A (en) * 1990-08-09 1991-10-15 Hewlett-Packard Company Method of distributing computer data files

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4685055A (en) * 1985-07-01 1987-08-04 Thomas Richard B Method and system for controlling use of protected software
DE4103935A1 (de) * 1991-02-11 1992-08-13 Klaus Schwarz Verfahren und einrichtung zur uebertragung von auf optischen speichern

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP 02-292634 (A). In: Patent Abstr. of Japan, Sect. P, Sect.Nr. 1168, Vol. 15, Nr. 71 (19.2.1991) S. 34 *

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19529321A1 (de) * 1994-08-10 1996-02-15 Fujitsu Ltd Verfahren und Vorrichtung zur Schlüsselauthentisierung
US5768387A (en) * 1994-08-10 1998-06-16 Fujitsu Limited Key authentication method and key authentication apparatus
DE19529321C2 (de) * 1994-08-10 1999-06-17 Fujitsu Ltd Verfahren und Vorrichtung zur Schlüsselauthentisierung
DE4429368A1 (de) * 1994-08-20 1996-02-29 Winfried Mueller Verfahren für die nutzungsbezogene Aufteilung von Kosten einer elektrischen ode elektronischen Vorrichtung
DE19615003A1 (de) * 1996-04-16 1997-10-23 Heiko Dipl Ing Jansen Verfahren zur Protokollierung der Nutzung eines Anwenderprogramms auf einem ersten Rechner durch einen zweiten Rechner
DE19615003C2 (de) * 1996-04-16 1999-09-23 Heiko Jansen Verfahren zur Protokollierung der Nutzung eines Anwenderprogramms auf einem ersten Rechner durch einen zweiten Rechner
DE19824814A1 (de) * 1998-06-03 1999-12-09 Siemens Ag Programmgesteuerte Vorrichtung
DE19824814C2 (de) * 1998-06-03 2000-06-21 Siemens Ag Einrichtung zur Ermittlung von freizugebenden Funktionen in einer Telekommunikationsanlage
DE19846065A1 (de) * 1998-10-06 2000-04-13 Oce Printing Systems Gmbh Verfahren zum Betreiben einer Datenverarbeitungsanlage mit Kopierschutz für Anwenderprogramme
DE19846065C2 (de) * 1998-10-06 2000-09-07 Oce Printing Systems Gmbh Verfahren zur kopiergeschützten Inbetriebnahme eines Anwenderprogramms
DE10000964A1 (de) * 2000-01-12 2001-05-10 Siemens Ag Verfahren zur Verschlüsselung von Software, Verfahren zur Übermittlung von Software, Verfahren zur Entschlüsselung von Software und softwaregesteuertes Gerät
DE10023820B4 (de) * 2000-05-15 2006-10-19 Siemens Ag Software-Schutzmechanismus
DE10045673A1 (de) * 2000-09-15 2002-03-28 Gavitec Gmbh Verfahren zum Betreiben einer Vorrichtung und Vorrichtung mit einem individuellen Code
WO2002023310A3 (de) * 2000-09-15 2003-08-07 Gavitec Ag Verfahren zum betreiben einer vorrichtung und vorrichtung mit einem individuellen code
WO2002023310A2 (de) * 2000-09-15 2002-03-21 Gavitec Ag Verfahren zum betreiben einer vorrichtung und vorrichtung mit einem individuellen code
DE10105465A1 (de) * 2001-02-07 2002-08-29 Andreas Mencher Kopierschutz für Computerprogramme zum Schutz vor Raubkopien mit Verwendung eines Zusatzgerätes
US7971243B2 (en) 2002-01-30 2011-06-28 International Business Machines Corporation Security module
WO2004059492A1 (de) * 2002-12-23 2004-07-15 Grundig Multimedia B.V. Freigabe von funktionen eines gerätes der unterhaltungselektronik unterhaltungselektronik unter verwendung eines freischaltcodes
EP1435557A2 (de) * 2002-12-30 2004-07-07 International Business Machines Corporation Begrenzter Zugriff auf Hardware durch Programme
EP1435557A3 (de) * 2002-12-30 2004-07-28 International Business Machines Corporation Begrenzter Zugriff auf Hardware durch Programme
US7392376B2 (en) 2002-12-30 2008-06-24 International Business Machines Corporation Security module
DE10353499A1 (de) * 2003-11-11 2005-06-16 Siemens Ag Verfahren zum Ändern der Leistungsmerkmale einer von einer Systemsoftware gesteuerten Vorrichtung
US7779239B2 (en) 2004-07-28 2010-08-17 Intel Corporation User opt-in processor feature control capability
DE102005002146A1 (de) * 2005-01-12 2006-07-20 Volkswagen Ag Verfahren und Vorrichtung für eine Datenaktualisierung eines Systems
DE102005016381A1 (de) * 2005-03-01 2006-09-14 Wincor Nixdorf International Gmbh Verfahren zur gesicherten Funktionsfreischaltung von Modulen

Also Published As

Publication number Publication date
GB2268605B (en) 1996-09-04
US5933087A (en) 1999-08-03
GB2268605A (en) 1994-01-12
ITMI931411A1 (it) 1994-12-30
GB9313094D0 (en) 1993-08-11
ITMI931411A0 (it) 1993-06-30
CA2073495C (en) 1999-01-12
CA2073495A1 (en) 1994-01-09
IT1264631B1 (it) 1996-10-04
MX9303999A (es) 1994-02-28

Similar Documents

Publication Publication Date Title
DE4321765A1 (de) Verfahren zum Freigeben einer funktionalen Option für Käufer von computerartigen Systemen
DE69433077T2 (de) Software-Verteilungsschutzverfahren
DE3704814C2 (de) Karte mit integrierter Schaltung
DE60035171T2 (de) Verfahren und Schaltungen zum schnellen Auffinden des minimalen / maximalen Wertes in einer Menge von Zahlen
DE68926176T2 (de) Verwaltungssystem für lizenzierte Programme
DE69815970T2 (de) Schlüsselbasiertes Schutzverfahren für optisch lesbare Platten
EP0155399A2 (de) Schutzanordnung zur Verhinderung der unerlaubten Ausführung eines Programms
WO1999067749A1 (de) Anwendungsübergreifendes arbeitszeitblatt
DE2934344C2 (de)
EP0531942B1 (de) Verkaufssystem mit einer vorgegebenen Anzahl von Fächern
DE202006021176U1 (de) System zur Bereitstellung von gültigen Antworten auf Aufforderungen zur Abgabe von Preisangeboten
WO2002071250A2 (de) Verfahren und vorrichtung zum bestellen von produkten, insbesondere kraftfahrzeugen
DE10239294A1 (de) Lokales Erzeugen von Preisangaben unter der Verwendung eines oder mehrerer Preisgestaltungswerkzeuge, die von einem Verkäufer empfangen wurden
EP1218858B1 (de) Verfahren zum kundenindividuellen anpassen eines autoradios
DE10042966A1 (de) Waage und Verfahren zum Betreiben einer Waage
DE102018221703A1 (de) Verifizierung und Identifizierung eines neuronalen Netzes
DE10247531A1 (de) Entscheidungsunterstützung durch Visualisierung der früheren Leistungen von Teilnehmern in einer elektronischen Handels-Umgebung
DE10239293A1 (de) Dynamische Preisgestaltung in einem unausgeglichenen Markt
DE102019205699A1 (de) Werte-managementserver, werte-managementprogramm, und programm
DE69021131T2 (de) Elektronische Registrierkasse.
DE10246000A1 (de) Bereitstellung einer Visualisierung von Marktangeboten mittels Mustern von geometrischen Anzeigeelementen
DE10103222A1 (de) Halbleiter-Speichereinrichtung und Programm-Unterscheidungssystem
DE4103173C3 (de) Vorrichtung zum Schutz gegen unautorisierte Benutzung von Software
DE60019833T2 (de) Auswahlsystem für ausführbare Programme
DE10019244A1 (de) Expertensystem für Rückwärtsauktionierungs-Austausch

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8136 Disposal/non-payment of the fee for publication/grant