BE1006898A3 - Werkwijze en inrichting voor het genereren en opslaan in een geheugen van een codewoord alsook voor het beschermen van de data opgeslagen in het geheugen. - Google Patents

Werkwijze en inrichting voor het genereren en opslaan in een geheugen van een codewoord alsook voor het beschermen van de data opgeslagen in het geheugen. Download PDF

Info

Publication number
BE1006898A3
BE1006898A3 BE9300192A BE9300192A BE1006898A3 BE 1006898 A3 BE1006898 A3 BE 1006898A3 BE 9300192 A BE9300192 A BE 9300192A BE 9300192 A BE9300192 A BE 9300192A BE 1006898 A3 BE1006898 A3 BE 1006898A3
Authority
BE
Belgium
Prior art keywords
codeword
memory
key
data
stored
Prior art date
Application number
BE9300192A
Other languages
English (en)
Inventor
Deun Andre Van
Michel Sanne
Original Assignee
Deun Andre Van
Michel Sanne
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 Deun Andre Van, Michel Sanne filed Critical Deun Andre Van
Priority to BE9300192A priority Critical patent/BE1006898A3/nl
Application granted granted Critical
Publication of BE1006898A3 publication Critical patent/BE1006898A3/nl

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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0092Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which are linked to media defects or read/write errors

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

Werkwijze en dataverwerkende inrichting voor het genereren en in een geheugen opslaan van een codewoord, welk codewoord een sleutelcodewoord bevat dat door een bron, extern aan de dataverwerkende inrichting, gegenereerd wordt en in het geheugen geladen wordt, en waarbij bij ten minste een eerste toegang naar data opgeslagen in het geheugen de aanwezigheid van een voorafbepaald aantal componenten van de dataverwerkende inrichting wordt onderzocht en waarbij op basis van de aanwezige componenten een basiscodewoord wordt gevormd, welk basiscodewoord vervolgens gebruikt wordt om het sleutelcodewoord te generenen en uit welk basis- en sleutelcodewoord het codewoord wordt gegenereerd en in het geheugen wordt opgeslagen ter bescherming van de data.

Description


   <Desc/Clms Page number 1> 
 



  "Werkwijze en inrichting voor het genereren en opslaan in een geheugen van een codewoord alsook voor het beschermen van de data opqeslaqen in het   qeheuqen"  
De uitvinding heeft betrekking op een werkwijze voor het genereren en in een inlaadbaar geheugen, dat samenwerkt met een dataverwerkende inrichting, opslaan van een codewoord, welk codewoord een sleutelcodewoord bevat dat door een bron, extern aan de dataverwerkende inrichting, gegenereerd wordt en middels de dataverwerkende inrichting in het geheugen geladen wordt. 



   Een dergelijke werkwijze is bekend uit de Europese octrooiaanvrage EP-A-0 464 320. 



   Bij de bekende werkwijze levert de hardware fabrikant of leverancier een sleutelcodewoord dat eigen is aan de dataverwerkende inrichting. Zodra een geheugen, bijvoorbeeld gevormd door een floppy disk, voor het eerst in de inrichting geladen wordt, wordt in dat geheugen het sleutelcodewoord ingeschreven. De data uit het geheugen kan dan alleen nog met de betreffende inrichting gelezen worden. Hierdoor wordt een zekere mate van bescherming aan de data gegeven en kan de fabrikant of leverancier het ongeoorloofd verspreiden van zijn software enigszins afremmen. 



   Een nadeel van de bekende werkwijze is dat zij voorop stelt dat de data verwerkende inrichting zodanig uitgerust is dat het sleutelcodewoord in de microprocessor zelf of in diens vast geheugen aanwezig is, wat een welbepaalde ingreep in de hardware vereist. 

 <Desc/Clms Page number 2> 

 



   De uitvinding heeft tot doel een werkwijze te realiseren waarbij een dergelijke ingreep in de hardware niet noodzakelijk is zonder daarom afbreuk te doen aan de mogelijkheid om het ongeoorloofd gebruik van de software af te remmen. 



   Een werkwijze volgens de uitvinding heeft daartoe het kenmerk dat bij ten minste een eerste toegang naar data opgeslagen in het geheugen de aanwezigheid van een voorafbepaald aantal componenten van de dataverwerkende inrichting wordt onderzocht en bij vaststelling van de aanwezigheid respectievelijk afwezigheid van elk der componenten telkens een eerste resp. tweede identificator wordt gevormd, en waarbij uit de eerste en tweede identificatoren een basiscodewoord wordt gevormd en afgegeven, welk basiscodewoord vervolgens gebruikt wordt om het sleutelcodewoord te genereren en uit welk   basis- en sleutelcodewoord   het codewoord wordt gegenereerd en in het geheugen wordt opgeslagen bij een verdere toegang naar de data.

   Doordat het basiscodewoord gevormd is uitgaande van de eerste en tweede identificatoren die de configuratie van data verwerkende inrichting identificeren, is het basiscodewoord eigen en uniek aan die configuratie. 



  Doordat verder dit basiscodewoord gegenereerd wordt bij een eerste toegang naar de data, is de data zelf de sturende factor bij het bepalen van het basiscodewoord. De data zelf zal in samenwerking met de hardware en op basis van die configuratie van de dataverwerkende inrichting dat eigen en uniek basiscodewoord genereren. Het sleutelcodewoord wordt extern de dataverwerkende inrichting gegenereerd op basis van het basiscodewoord zodat een uniek basiscodewoord op zijn beurt leidt tot een uniek sleutelcodewoord welke combinatie leidt tot een uniek codewoord dat in het geheugen wordt opgeslagen. Hierdoor wordt dus de mogelijkheid geboden om tussen de inrichting en een geheugen met de daarin opgeslagen data, 

 <Desc/Clms Page number 3> 

 op een unieke, door de fabrikant of leverancier te controleren, wijze een link te leggen.

   Wanneer deze link gelegd is kan hiervan gebruik gemaakt worden om alleen toegang te verstrekken tot de opgeslagen data indien het geheugen in die desbetreffende data verwerkende inrichting geladen is. 



   Een eerste voorkeursuitvoeringsvorm van een werkwijze volgens de uitvinding heeft het kenmerk dat na het vaststellen van de aanwezigheid van een onderzochte component deze gekarakteriseerd wordt en hiervoor een karakterisatiewoord wordt gegenereerd dat opgenomen wordt in de eerste identificator. Door het toekennen van een karakterisatiewoord aan de onderzochte component wordt de eerste identificator scherper gedefinieerd waardoor ook het basiscodewoord scherper gedefinieerd is. Het unieke karakter van het basiscodewoord en het daaruit af te leiden sleutelcodewoord wordt hierdoor onderstreept. 



   Een tweede voorkeursuitvoeringsvorm van een werkwijze volgens de uitvinding heeft het kenmerk dat indien de aanwezigheid van een component harde schijf wordt vastgesteld er nagegaan wordt of deze harde schijf defecte sectoren (bursts) bevat, en bij aanwezigheid van dergelijke defecte sectoren de localisatie van ten minste   een   defecte sector wordt vastgesteld en verwerkt wordt in de eerste identificator. Het aantal defecte sectoren van een harde schijf en hun lokatie is voor elke schijf nagenoeg uniek. 



  Door deze identificatie op te nemen in de eerste identificator wordt zijn uniek karakter op gunstige wijze benut. 



   Zoals reeds beschreven biedt het opgeslagen codewoord een mogelijkheid om de in het geheugen opgeslagen data te beschermen tegen ongeoorloofd gebruik. Een werkwijze volgens de uitvinding voor het beschermen van de in het geheugen opgeslagen data heeft 

 <Desc/Clms Page number 4> 

 daartoe het kenmerk dat bij een gebruik van het geheugen een verder basiscodewoord wordt gegenereerd en het opgeslagen sleutelcodewoord wordt opgehaald, en waarbij uit het verder basiscodewoord en het opgehaalde sleutelcodewoord een verder codewoord wordt gegenereerd, welk verder codewoord wordt vergeleken met het opgeslagen codewoord en waarbij bij niet-correspondentie de datatoegang naar het geheugen geneutraliseerd wordt. 



  Doordat   basiscode- en sleutelcodewoord   een uniek karakter hebben dat gelinkt is aan de configuratie van de inrichting die geleid heeft tot het vormen van het basiscodewoord, zal wanneer dit geheugen in een andere data verwerkende inrichting geladen wordt, het unieke basiscodewoord nooit gegenereerd wordt omdat de configuratie van de inrichting anders is. Het verder codewoord zal dan nagenoeg nooit gelijk zijn aan het opgeslagen codewoord. De toegang tot de data zal dus geneutraliseerd worden indien geen correspondentie wordt vastgesteld, en hierdoor wordt dit geheugen uiteraard onbruikbaar. 



   Het is niet uitgesloten dat door tijdsverloop sommige veranderingen optreden in de configuratie van een dataverwerkende inrichting. Zo kunnen er bijvoorbeeld nieuwe defecte sectoren optreden in de harde schijf of kunnen bepaalde componenten vervangen, toegevoegd of verwijderd worden, zoals bijvoorbeeld de muis of de monitor. Om met dergelijke kleinere modificaties van de configuratie rekening te houden is het gunstig dat bij niet-correspondentie een voorafbepaalde afwijkingsgraad bij het verder codewoord wordt gevoegd om een codewoord gebied te vormen en nagegaan wordt of het opgeslagen codewoord binnen het codewoordgebied valt, en wanneer het opgeslagen codewoord binnen genoemd gebied valt een indicator wordt geregistreerd die genoemd codewoordgebied identificeert. 

 <Desc/Clms Page number 5> 

 



  Hierdoor zal zo een kleine modificatie niet meteen tot neutralisatie leiden. 



   De uitvinding heeft eveneens betrekking op een stelsel bevattende een sleutelcodewoord generator en een dataverwerkende inrichting welke een processoreenheid verbonden met een geheugenlaadelement voorzien voor het laden van een geheugen bevat, welk geheugenlaadelement voorzien is van een lees-en schrijforgaan voor het in het geheugen lezen en schrijven van data bevattende ten minste een sleutelcodewoord gegenereerd door de sleutelcodewoord generator.

   Een dergelijk stelsel heeft het kenmerk dat de dataverwerkende inrichting met het geheugen geladen in het geheugenlaadelement een codewoord generator bevat voorzien van aanwezigheid detectiemiddelen om bij ten minste een eerste toegang naar data opgeslagen in het geheugen de aanwezigheid van een voorafbepaald aantal componenten van de dataverwerkende inrichting te onderzoeken, en om bij vaststelling van de aanwezigheid respectievelijk afwezigheid van elk der componenten telkens een eerste respectievelijk tweede identificator te genereren en om uit eerste en tweede identificator een basiscodewoord te genereren, welk sleutelcodewoord generator een ingang heeft voor het ontvangen van het basiscodewoord en voorzien is om uit het ontvangen basiscodewoord het sleutelcodewoord te genereren,

   welke codewoord generator een ingang heeft voor het ontvangen van het sleutelcodewoord en verder voorzien is om uit genoemd basiscodewoord en genoemd sleutelcodewoord genoemd codewoord te genereren en op te slaan in genoemd geheugen. 



   De uitvinding zal nu nader toegelicht worden aan de hand van de tekening waarin :
Figuur 1 een uitvoeringsvoorbeeld laat zien van een data verwerkende inrichting ; 

 <Desc/Clms Page number 6> 

 
Figuur 2 een stroomdiagram laat zien voor het vormen en in het geheugen opslaan van het basiscodewoord ; en
Figuur 3 een stroomdiagram laat zien voor het vormen van het codewoord waarbij rekening gehouden is met afwijkingen in de configuratie van de data verwerkende inrichting. 



   Het in figuur 1 weergegeven uitvoeringsvoorbeeld van een data verwerkende inrichting geeft slechts een schematische voorstelling weer van een mogelijke uitvoeringsvorm. Het zal duidelijk zijn dat de uitvinding niet beperkt is tot de toepassing bij een dergelijke data verwerkende inrichting, maar dat zij van toepassing is bij elke data verwerkende inrichting die voorzien is van een processor eenheid, zoals bijvoorbeeld een microprocessor, en een geheugenlaadelement zoals bijvoorbeeld een lader voor een floppy disk of een andere optische of magnetische datadrager. Onder dergelijke dataverwerkende inrichtingen dient eveneens een microprocessor gestuurde injectie-ontsteking van een automobiel te worden verstaan alsook autoradio's, fototoestellen, enz... 



   De in figuur 1 weergegeven data verwerkende inrichting bevat een centrale eenheid 1 voorzien van een microprocessor 3 die verbonden is met een bus 2 bestemd voor communicatie tussen de verschillende onderdelen van de centrale eenheid. Met de bus 2 is verder een vast geheugen 4, bijvoorbeeld een RAM of een ROM, en een orgaan 5 bestemd voor communicatie met een harde schijf 6 verbonden. Een interface 7 is eveneens met de bus 2 verbonden. Met dit interface zijn verder een weergave-eenheid 10, bijvoorbeeld een monitor, een toetsenbord 11 en een muis 12 verbonden, alsook een geheugenlaadelement 8 bestemd voor het ontvangen van een inlaadbaar geheugen 9 dat bijvoorbeeld gevormd is door een floppy disk, of een optische schijf of een 

 <Desc/Clms Page number 7> 

 magnetische cassette. Het geheugenlaadelement is tevens voorzien voor het lezen en schrijven van data in het geheugen 9.

   Het geheugenlaadelement 8 en het geheugen 9 kunnen ook gevormd zijn door een interface modemlijn met lokaal geheugen. De interface modemlijn is bestemd voor communicatie en opslag van data geleverd door een externe bron via bijvoorbeeld een telefoonlijn. 



   De data die in het inlaadbaar geheugen 9 is opgeslagen dient op een effici nte wijze te worden beschermd tegen onbevoegd en/of ongeoorloofd gebruik. Hiertoe wordt volgens de uitvinding een werkwijze voorgesteld waarbij gebruik gemaakt wordt van codewoorden die gegenereerd en opgeslagen worden bij het in gebruik nemen van het geheugen met de daarin opgeslagen en te beschermen data. 



   Het in figuur 2 weergegeven stroomdiagram laat een uitvoeringsvoorbeeld zien voor het genereren en in het geheugen 9 opslaan van het codewoord. Zoals verder zal worden toegelicht is het codewoord afgeleid uit een sleutelcodewoord dat door een bron, die extern is aan de dataverwerkende inrichting wordt gegenereerd, en een basiscodewoord dat door de dataverwerkende inrichting in samenwerking met de data uit het geheugen wordt gegenereerd. Onder een externe bron wordt verstaan dat de bron, die het sleutelcodewoord genereert, geen deel uitmaakt van de dataverwerkende inrichting. Zo een externe bron wordt bijvoorbeeld beheerd door de ontwerper, fabrikant of leverancier van de software welke in het geheugen 9 is opgeslagen. 



   Veronderstel nu dat een gebruiker van de in figuur 1 weergegeven dataverwerkende inrichting het geheugen 9 bij een eerste gebruik laadt in het geheugenlaadelement 8 en de inrichting opstart (20 ; STR, fig. 2). In het geheugen 9 zijn een aantal instructies opgeslagen die in samenwerking met de microprocessor 3 een basiscodewoord zullen genereren. Het laden en 

 <Desc/Clms Page number 8> 

 adresseren van het geheugen hebben tot gevolg dat onder besturing van de microprocessor 3 een subroutine (21 ; CFT) zal worden afgehandeld. Deze subroutine maakt deel uit van de in het geheugen opgeslagen instructies. Bij het behandelen van deze subroutine wordt de aanwezigheid van een voorafbepaald aantal componenten van de dataverwerkende inrichting onderzocht. Het aantal componenten wiens aanwezigheid wordt onderzocht is afhankelijk van de beschermingsgraad die gewenst is. 



  Wanneer de presentie van meerdere componenten wordt onderzocht wordt is het mogelijk om de inrichting te identificeren. Wanneer dan bovendien het te vormen basiscodewoord een meerbitswoord is, zoals bijvoorbeeld een 14 of 20 bits codewoord, dan zal per inrichting een relatief uniek basiscodewoord worden gevormd. 



   Bij het onderzoeken naar de aanwezige componenten wordt bijvoorbeeld onderzocht of de inrichting een harde schijf 6 heeft, alsook een muis 12 en of de inrichting deel uitmaakt van een netwerk. 



  Verder kan nog onderzocht worden of het geheugen een hi rarchie heeft en zo ja of een cache geheugen aanwezig is. Telkens als de presentie van een component wordt onderzocht wordt voor die component een eerste respectievelijk tweede identificator gevormd die aangeeft of de onderzochte component aanwezig respectievelijk afwezig is. De eerste resp. tweede identificator is bijvoorbeeld gevormd door een bit met waarde   logische" 1"   resp. logische "0". 



   Naast het onderzoeken naar de aanwezigheid zelf van de component is het verder mogelijk om de desbetreffende component te karakteriseren en hiervoor een karakterisatiewoord te genereren dat opgenomen wordt in de eerste identificator. In het geval van een karakterisatiewoord zal de eerste identificator meer dan een bit bevatten. Zo zal bijvoorbeeld, nadat is vastgesteld dat een harde schijf aanwezig is, onderzocht 

 <Desc/Clms Page number 9> 

 worden hoeveel de geheugencapaciteit van die schijf bedraagt. De aldus bepaalde geheugencapaciteit zal dan de basis vormen voor het genereren van een karakterisatiewoord.

   Zo zullen bijvoorbeeld de volgende karakterisatiewoorden worden toegekend :   qeheuqencapaciteit   karakterisatiewoord
2 M Byte 001
3 M Byte 010
4 M Byte 011
5 M Byte 100
Het genereren van een karakterisatiewoord biedt de mogelijkheid om een meer uniek karakter te geven aan het te vormen basiscodewoord, omdat op deze wijze de inrichting nauwkeuriger ge dentificeerd wordt. Naast het karakteriseren van de geheugencapaciteit is het verder mogelijk om de aanwezige microprocessor te karakteriseren, de besturingskaart die monitor 10 bestuurt, de muis 12, het toetsenbord, de klokfrequentie van de microprocessor klok alsook een eventueel aanwezige co-processor. Het karakteriseren geschiedt bijvoorbeeld door de mogelijkheden van de onderzochte component af te tasten.

   Zo wordt bijvoorbeeld de capaciteit van de adresgenerator onderzocht om de geheugencapaciteit te identificeren. 



   Het is bekend dat harde schijven meestal enkele defecte sectoren (bursts) bevatten. Het aantal en de lokatie van dergelijke defecte sectoren verschilt van schijf tot schijf. Dit laatste biedt de mogelijkheid om de harde schijf op een unieke wijze te karakteriseren. Door nu een karakterisatiewoord te bepalen waarin het patroon,   d. w. z.   de localisatie van   een   of meer defecte sectoren, wordt vastgelegd ontstaat een uniek karakterisatiewoord voor die schijf en dus voor de inrichting waarvan die harde schijf deel uitmaakt. 



   Nadat de aanwezigheid van het voorafbepaald aantal componenten is onderzocht en de 

 <Desc/Clms Page number 10> 

 identificatoren zijn bepaald wordt het basiscodewoord (22 ; DT BC) bepaald. Het basiscodewoord wordt gegenereerd op basis van de eerste en tweede identificatoren. Hiertoe wordt een voorafbepaald algorithme dat deel uitmaakt van de data opgeslagen in het geheugen 9 gebruikt. Dit algorithme wordt vrij door de fabrikant of leverancier bepaald en mag diverse berekeningen bevatten. Bij voorkeur zal per geleverd geheugen 9 het algorithme verschillen ten einde het unieke karakter van het basiscodewoord te onderstrepen. 



  Het algorithme kan verder voorzien dat bijvoorbeeld naast de identificatoren gebruik gemaakt wordt van het serienummer van het geheugen. Aangezien het basiscodewoord gegenereerd wordt uitgaande van de identificatoren zal het basiscodewoord de inrichting binnen dewelke het gegenereerd wordt   nduidig identificeren. 



   Eenmaal het basiscodewoord gegenereerd, wordt onderzocht onder besturing van de microprocessor of in het geheugen 9 een sleutelcodewoord is opgeslagen (23 ; KC PR ? ). Is dit niet het geval (N), zoals bijvoorbeeld bij een eerste toegang naar de data in het geheugen, dan zal een boodschap (24 ; AK KC) worden gegenereerd waarbij de gebruiker zal worden verzocht om een sleutelcodewoord te introduceren in de inrichting, bijvoorbeeld via het toetsenbord. Tevens wordt het gevormde basiscodewoord aangeboden. Vervolgens wordt onderzocht (25 ; KC INS ? ) of het sleutelcodewoord wordt ge ntroduceerd. Geschiedt dit niet binnen een voorafbepaalde tijd (N) dan wordt de toegang tot het geheugen geneutraliseerd (26 ; NE) en is de procedure afgehandeld (33 ; STP).

   Wanneer de toegang tot het geheugen geneutraliseerd is, is toegang tot de data onmogelijk, bijvoorbeeld omdat de adresgenerator geneutraliseerd wordt, dan wel alleen mogelijk tot een beperkt gedeelte van de data omdat slechts een bepaald 

 <Desc/Clms Page number 11> 

 adres gebied wordt vrijgegeven. Het geheugen kan dan bijvoorbeeld alleen in demonstratie versie werken. 



   Wanneer de gebruiker het sleutelcodewoord niet kent, omdat het de eerste maal is dat het geheugen 9 wordt gebruikt, dan is hij verplicht om het sleutelcodewoord aan de hardware fabrikant of leverancier te vragen. Het geheugen blijft dus onbruikbaar tot zolang het sleutelcodewoord niet aangeboden werd. 



   Het sleutelcodewoord wordt dan door de fabrikant of leverancier gegenereerd middels de externe bron. Het sleutelcodewoord wordt gevormd op basis van het basiscodewoord dat door de gebruiker aan de fabrikant of leverancier wordt medegedeeld. Door het sleutelcodewoord te vormen uitgaande van het basiscodewoord, dat op zichzelf al een uniek karakter heeft, zal de combinatie   sleutel- basiscodewoord   ook uniek zijn. Door verder het sleutelcodewoord door een externe bron te laten genereren, welke door de fabrikant of leverancier beheerd wordt, kan deze laatste deze unieke combinatie kennen en hiervan gebruik maken om ongeoorloofd of onbevoegd gebruik van het geheugen en de daarin opgeslagen data na te gaan of te bewijzen. 



   Het algorithme waarmede het sleutelcodewoord wordt gegenereerd is willekeurig door de fabrikant of leverancier te kiezen en kan voor elk te genereren sleutelcodewoord anders worden gekozen. Het algorithme kan complex of eenvoudig zijn afhankelijk van de gewenste beschermingsgraad. Dat algorithme wat het sleutelcodewoord genereert kan eventueel ook in het geheugen 9 zelf geladen worden, maar dan wel versleuteld. deze laatste uitvoeringsvorm biedt de mogelijkheid om een eventuele frauduleuse poging tot het vormen van het sleutelcodewoord snel op te sporen en adequaat in te grijpen. Het laden van dat algorithme geschiedt bij voorkeur bij het laden van het sleutelcodewoord zelf. 

 <Desc/Clms Page number 12> 

 



   Om het vrijgeven van de in het geheugen opgeslagen data inclusief instructies volledig afhankelijk te maken van het overhandigen van het sleutelcodewoord wordt bij voorkeur een gedeelte van die data pas geladen in het geheugen wanneer het sleutelcodewoord geladen wordt. Op deze wijze beschikt de gebruiker pas over de volledige data wanneer het sleutelcodewoord geladen wordt. Deze uitvoeringsvorm biedt bovendien ook een oplossing tegen een onbevoegde gebruiker die er in zou zijn geslaagd het genereren van het basiscodewoord te neutraliseren. 



   Het overhandigen van het basiscodewoord geschiedt bijvoorbeeld per giraal verkeer, wat naast de betalingszekerheid ook de mogelijkheid biedt om bijvoorbeeld het gironummer van de gebruiker op te nemen in het sleutelcodewoord. 



     E nmaal   de gebruiker het sleutelcodewoord ontvangen heeft, zal hij het geheugen 9 opnieuw laden en zullen de in figuur 2 weergegeven stappen 20 tot en met 25 zieh herhalen zodat opnieuw naar het sleutelcodewoord zal worden gevraagd bij stap 24. Nu zal echter de gebruiker het sleutelcodewoord aanbieden aan de inrichting. Het sleutelcodewoord tezamen met het gevormde basiscodewoord zullen nu het codewoord vormen dat in het geheugen 9 wordt opgeslagen (27 ; ST KC + BC) of op een andere geheugenplaats van de data verwerkende inrichting. Het codewoord wordt bijvoorbeeld gevormd door   basis- en sleutelcodewoord   bij elkaar op te tellen of anderzijds te versleutelen dan wel door een stelsel dat   basis- en sleutelcodewoord   als zodanig omvat. 



   Wanneer tezamen met het sleutelcodewoord ook een gedeelte van de data geladen wordt geschiedt dit door de fabrikant zelf of door de gebruiker na ontvangst van het sleutelcodewoord. 



   Wanneer nu na het laden van het codewoord de gebruiker de opgeslagen data wenst te 

 <Desc/Clms Page number 13> 

 gebruiken dan zullen bij elk opstarten van het geheugen de stappen 20 tot en met 23 herhaald worden. Nu echter zal bij stap 23 vastgesteld worden dat er een sleutelcodewoord present is. Het codewoord (KW) wordt dan opgehaald (28 ; FT KW) en opgeslagen in een buffer. 



  Daarna wordt een verder codewoord (29 ; DT KW') (KW') gegenereerd gebruik makend van de daartoe in het geheugen 9 aanwezige algorithme. Een verder basiscodewoord wordt gegenereerd op een analoge wijze als het basiscodewoord. Het opgeslagen sleutelcodewoord wordt dan gebruikt om tezamen met het verder basiscodewoord het verder codewoord te genereren. Vervolgens wordt nagegaan (30 ; KW =   KW'     ?)   of het codewoord (KW) correspondeert met het verder codewoord (KW'). Bij een eenvoudigere uitvoeringsvorm kan deze correspondentie verificatie beperkt blijven tot een eenvoudige verificatie of een codewoord opgeslagen is. 



   Deze verificatie heeft tot doel na te gaan of het codewoord wel degelijk correct is en niet een willekeurig door de gebruiker zelf opgeslagen woord is. Wanneer verder geen correspondentie is tussen het codewoord en het verder codewoord dan is het duidelijk dat het geheugen niet op de aangewezen inrichting gebruikt wordt. Indien de correspondentie test negatief is, wordt de toegang tot de data geneutraliseerd (26 ; NE). Een negatief resultaat betekent dat de unieke combinatie van basis-en sleutelcodewoord niet herkend is, en dus dat onbevoegd gebruik van de data plaatsvindt. Dit onbevoegd gebruik wordt dan ook verhinderd door de neutralisatie van de toegang tot het geheugen. 



   Is er echter wel correspondentie vastgesteld   (30 ;   Y) dan wordt de toegang tot de data volledig vrijgegeven (32 ; ENP). De gebruiker kan dan over het geheugen en de daarin opgeslagen data beschikken. 

 <Desc/Clms Page number 14> 

 



   Het basiscodewoord wordt bepaald op basis van de presentie en eventueel de karakterisatie van de componenten van de inrichting waarin het geheugen geladen wordt. Nu kan het echter gebeuren dat deze inrichting in de loop der tijd wijzigingen ondergaat, bijvoorbeeld omdat er een muis wordt vervangen of toegevoegd, of een andere monitor wordt gebruikt. Dergelijke modificaties zullen tot consequenties hebben dat het gegenereerd basiscodewoord zal afwijken van datgene wat tot het sleutelcodewoord heeft geleid. 



  Zonder verdere maatregelen zou zo een dergelijke modificatie leiden tot het neutraliseren van de toegang tot de data in het geheugen 9. Om hieraan te verhelpen wordt een aangepaste werkwijze voorgesteld waarvan het stroomdiagram weergegeven is in figuur 3. Aan de stappen die overeenkomen met diegene uit figuur 2 is eenzelfde verwijzingscijfer toegekend. Deze stappen zullen niet verder beschreven worden. 



   Het stroomdiagram weergegeven in figuur 3 wordt onder besturing van de microprocessor afgehandeld. Na het starten (40 ; STR) en het bepalen van de identificatoren (21) wordt nagegaan of eenzelfde rijtje van identificatoren werd gevonden. Zo ja, dan wordt naar stap 22 overgegaan. Indien het rijtje identificatoren verschilend is (41 ; N) dan wordt nagegaan (42 ; PRC ? ) of slechts enkele, bijvoorbeeld     n   of twee, identificatoren verschillend zijn, wat er op wijst dat slechts   n of twee componenten gewijzigd zijn. 



  Blijkt dit het geval te zijn (42 ; Y) dan wordt een voorafbepaalde afwijkingsgraad aan het codewoord toegevoegd om een codewoordgebied te vormen. Er wordt dan nagegaan (44 ; TC ? ) of binnen het codewoord gebied correspondentie met het opgeslagen codewoord bereikt wordt. Een dergelijke afwijkingsgraad kan bijvoorbeeld gevormd worden door het toekennen van foutenmarges, of door het elimineren van sommige identificatoren, of door 

 <Desc/Clms Page number 15> 

 minder significatie bits niet in beschouwing te nemen. De afwijking wordt in de vorm van een indicator die het codewoordgebied identificeert geregistreerd ten einde bij verder gebruik verdisconteerd te worden. Wordt in stap 44 geen correspondentie bereikt dan wordt de toegang tot de data geneutraliseerd (26, NE). Wordt echter wel correspondentie bereikt dan gaat het programma verder bij stap 22. 



   Om te verhinderen dat de gebruiker dan verschillende sleutelcodes ingeeft, welke niet van de fabrikant of leverancier afkomstig zijn, wordt bij voorkeur na het invoeren (25 ; KC INS) van het sleutelcodewoord nagegaan (45 ; CC ? ) of er concordantie is tussen aangeboden codewoord en verder codewoord. Is er concordantie dan wordt naar stap 27 overgegaan, zoniet dan wordt een dode tijd van bijvoorbeeld 60 seconden (46, EX) opgelegd bij een eerste vaststelling van niet concordantie. Gedurende deze dode tijd wordt de microprocessor geneutraliseerd. Bij elke verdere vaststelling van niet-concordantie zal deze dode tijd aanzienlijk toenemen, bijvoorbeeld exponentieel zodat na enkele pogingen de microprocessor nagenoeg lam gelegd wordt. 



   Door de toegang van de data opgeslagen in het geheugen te onderwerpen aan het vaststellen dat een uniek codewoord, dat configuratie afhankelijk is, aanwezig is in het geheugen wordt een hoge mate van bescherming bereikt die er bovendien voor zorgt dat een gekopieerde versie van de data nooit zal kunnen draaien op een andere data verwerkende inrichting omdat deze laatste nagenoeg nooit dezelfde configuratie zal vertonen als diegene die tot het basiscodewoord heeft geleid.

Claims (9)

  1. CONCLUSIES 1. Werkwijze voor het genereren en in een inlaadbaar geheugen, dat samenwerkt met een dataverwerkende inrichting, opslaan van een codewoord, welk codewoord een sleutelcodewoord bevat dat door een bron, extern aan de dataverwerkende inrichting, gegenereerd wordt en middels de dataverwerkende inrichting in het geheugen geladen wordt, daardoor gekenmerkt, dat bij ten minste een eerste toegang naar data opgeslagen in het geheugen de aanwezigheid van een voorafbepaald aantal componenten van de dataverwerkende inrichting wordt onderzocht en bij vaststelling van de aanwezigheid respectievelijk afwezigheid van elk der componenten telkens een eerste resp.
    tweede identificator wordt gevormd, en waarbij uit de eerste en tweede identificatoren een basiscodewoord wordt gevormd en afgegeven, welk basiscodewoord vervolgens gebruikt wordt om het sleutelcodewoord te genereren en uit welk basisen sleutelcodewoord het codewoord wordt gegenereerd en in het geheugen wordt opgeslagen bij een verdere toegang naar de data.
  2. 2. Werkwijze volgens conclusie 1, daardoor gekenmerkt, dat na het vaststellen van de aanwezigheid van een onderzochte component deze gekarakteriseerd wordt en hiervoor een karakterisatiewoord wordt gegenereerd dat opgenomen wordt in de eerste identificator.
  3. 3. Werkwij ze volgens conclusie 2, daardoor gekenmerkt dat indien de aanwezigheid van een component harde schijf wordt vastgesteld er nagegaan wordt of deze harde schijf defecte sectoren (bursts) bevat, en bij aanwezigheid van dergelijke defecte sectoren de localisatie van ten minste een defecte sector wordt vastgelegd en verwerkt wordt in de eerste identificator. <Desc/Clms Page number 17>
  4. 4. Werkwijze volgens een der conclusies 2 of 3, daardoor gekenmerkt, dat ten minste een der componenten muis, netwerk-besturingsstation (server), beeldschermkaart, co-processer, klokfrequentie van de processerklok wordt gekarakteriseerd.
  5. 5. Werkwijze voor het beschermen van de data opgeslagen in een inlaadbaar geheugen waarin een codewoord is opgeslagen door toepassing van de werkwijze volgens een der conclusies 1 tot en met 4, daardoor gekenmerkt dat bij een gebruik van het geheugen een verder basiscodewoord wordt gegenereerd en het opgeslagen sleutelcodewoord wordt opgehaald, en waarbij uit het verder basiscodewoord en het opgehaalde sleutelcodewoord een verder codewoord wordt gegenereerd, welk verder codewoord wordt vergeleken met het opgeslagen codewoord en waarbij bij niet-correspondentie de datatoegang naar het geheugen geneutraliseerd wordt.
  6. 6. Werkwijze volgens conclusie 5, daardoor gekenmerkt, dat bij niet-correspondentie een voorafbepaalde afwijkingsgraad bij het verder codewoord wordt gevoegd om een codewoordgebied te vormen en nagegaan wordt of het opgeslagen codewoord binnen het codewoordgebied valt, en wanneer het opgeslagen codewoord binnen genoemd gebied valt een indicator wordt geregistreerd die genoemd codewoordgebied identificeert.
  7. 7. Stelsel bevattende een sleutelcodewoord generator en een dataverwerkende inrichting welke een processoreenheid verbonden met een geheugenlaadelement voorzien voor het laden van een geheugen bevat, welk geheugenlaadelement voorzien is van een lees-en schrijforgaan voor het in het geheugen lezen en schrijven van data bevattende ten minste een sleutelcodewoord gegenereerd door de sleutelcodewoord generator, daardoor gekenmerkt dat de dataverwerkende inrichting met het geheugen geladen in het geheugenlaadelement een codewoord generator bevat <Desc/Clms Page number 18> voorzien van aanwezigheid detectiemiddelen om bij ten minste een eerste toegang naar data opgeslagen in het geheugen de aanwezigheid van een voorafbepaald aantal componenten van de dataverwerkende inrichting te onderzoeken,
    en om bij vaststelling van de aanwezigheid respectievelijk afwezigheid van elk der componenten telkens een eerste respectievelijk tweede identificator te genereren en om uit eerste en tweede identificator een basiscodewoord te genereren, welk sleutelcodewoord generator een ingang heeft voor het ontvangen van het basiscodewoord en voorzien is om uit het ontvangen basiscodewoord het sleutelcodewoord te genereren, welke codewoord generator een ingang heeft voor het ontvangen van het sleutelcodewoord en verder voorzien is om uit genoemd basiscodewoord en genoemd sleutelcodewoord genoemd codewoord te genereren en op te slaan in genoemd geheugen.
  8. 8. Dataverwerkende inrichting als onderdeel van het stelsel volgens conclusie 7, daardoor gekenmerkt dat genoemde codewoord generator voorzien is om bij gebruik van het geheugen een verder basiscodewoord te genereren en een verder codewoord uit genoemd basiscodewoord en sleutelcodewoord, welke inrichting verder van een verificatie-eenheid is voorzien om genoemd codewoord met genoemd verder codewoord te vergelijken en om bij niet correspondentie een signaal te genereren en af te geven aan een neutralisatie-eenheid voorzien om onder besturing van genoemd signaal de toegang naar het geheugen te neutraliseren.
  9. 9. Geheugen als onderdeel van het stelsel volgens conclusie 8, daardoor gekenmerkt dat een sleutelcodewoord in het geheugen is opgeslagen.
BE9300192A 1993-03-01 1993-03-01 Werkwijze en inrichting voor het genereren en opslaan in een geheugen van een codewoord alsook voor het beschermen van de data opgeslagen in het geheugen. BE1006898A3 (nl)

Priority Applications (1)

Application Number Priority Date Filing Date Title
BE9300192A BE1006898A3 (nl) 1993-03-01 1993-03-01 Werkwijze en inrichting voor het genereren en opslaan in een geheugen van een codewoord alsook voor het beschermen van de data opgeslagen in het geheugen.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
BE9300192A BE1006898A3 (nl) 1993-03-01 1993-03-01 Werkwijze en inrichting voor het genereren en opslaan in een geheugen van een codewoord alsook voor het beschermen van de data opgeslagen in het geheugen.

Publications (1)

Publication Number Publication Date
BE1006898A3 true BE1006898A3 (nl) 1995-01-17

Family

ID=3886875

Family Applications (1)

Application Number Title Priority Date Filing Date
BE9300192A BE1006898A3 (nl) 1993-03-01 1993-03-01 Werkwijze en inrichting voor het genereren en opslaan in een geheugen van een codewoord alsook voor het beschermen van de data opgeslagen in het geheugen.

Country Status (1)

Country Link
BE (1) BE1006898A3 (nl)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0302710A2 (en) * 1987-08-05 1989-02-08 International Business Machines Corporation A method of controlling the use of computer programs
GB2219421A (en) * 1988-06-03 1989-12-06 Pitney Bowes Inc Preventing unauthorised use of software
WO1991014980A1 (de) * 1990-03-20 1991-10-03 Siemens Nixdorf Informationssysteme Aktiengesellschaft Verfahren zur authentifizierung eines eine datenstation benutzenden anwenders

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0302710A2 (en) * 1987-08-05 1989-02-08 International Business Machines Corporation A method of controlling the use of computer programs
GB2219421A (en) * 1988-06-03 1989-12-06 Pitney Bowes Inc Preventing unauthorised use of software
WO1991014980A1 (de) * 1990-03-20 1991-10-03 Siemens Nixdorf Informationssysteme Aktiengesellschaft Verfahren zur authentifizierung eines eine datenstation benutzenden anwenders

Similar Documents

Publication Publication Date Title
JP3343130B2 (ja) マイクロ回路カードを使用するトランザクションの管理方法及び装置
JPH0844805A (ja) カード型記憶媒体用セキュリティ管理方法,カード型記憶媒体およびカード型記憶媒体用取引装置
US8250288B2 (en) Flash memory storage system and controller and data protection method thereof
JPH11505355A (ja) ポータブルデータ処理ユニットを含むデータ交換システム
JP2001500685A (ja) 無線周波数識別システムにおける暗号学的な認証を行なう方法
KR20010043746A (ko) 복제 방지된 자료를 보호하기 위한 사용법 의존 티켓
EP3623981B1 (en) Index based ransomware categorisation
JPH04263384A (ja) チップカードの保護を強化する方法及び装置
CN112486607B (zh) 一种基于软硬件结合的虚拟桌面授权许可方法
CN101751452A (zh) 信息处理装置和信息处理方法
US11270016B2 (en) Ransomware encryption algorithm determination
US11449612B2 (en) Ransomware remediation
JPH0876994A (ja) ソフトウェアライセンス管理方法および装置
KR100381621B1 (ko) 신체정보가 등록된 기록매체를 이용한 보안장치 및보안검증 방법
BE1006898A3 (nl) Werkwijze en inrichting voor het genereren en opslaan in een geheugen van een codewoord alsook voor het beschermen van de data opgeslagen in het geheugen.
EP3091468B1 (en) Integrated circuit access
CN101004775B (zh) 微控制器及其认证方法
US7562050B2 (en) Aging of electronic payment units
JP2004051056A (ja) 自動車用電子制御装置
JP2007200244A (ja) 情報管理システムおよび情報管理方法
JP2005524915A (ja) システムおよび認証方法
JPH0533419B2 (nl)
CN111262696B (zh) 片上系统的密钥管理方法、装置、设备及存储介质
TW466835B (en) Software license examining system and its examining method
JP2000200222A (ja) 模倣品防止装置

Legal Events

Date Code Title Description
RE Patent lapsed

Owner name: SANNE MICHEL

Effective date: 19950331

Owner name: VAN DEUN ANDRE

Effective date: 19950331