DK169883B1 - Method for securing secret code data stored in a data store and circuit arrangement for carrying out the method - Google Patents

Method for securing secret code data stored in a data store and circuit arrangement for carrying out the method Download PDF

Info

Publication number
DK169883B1
DK169883B1 DK728088A DK728088A DK169883B1 DK 169883 B1 DK169883 B1 DK 169883B1 DK 728088 A DK728088 A DK 728088A DK 728088 A DK728088 A DK 728088A DK 169883 B1 DK169883 B1 DK 169883B1
Authority
DK
Denmark
Prior art keywords
data
code
code data
circuit
comparator
Prior art date
Application number
DK728088A
Other languages
Danish (da)
Other versions
DK728088A (en
DK728088D0 (en
Inventor
Hartmut Schrenk
Original Assignee
Siemens Ag
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 Siemens Ag filed Critical Siemens Ag
Publication of DK728088D0 publication Critical patent/DK728088D0/en
Publication of DK728088A publication Critical patent/DK728088A/en
Application granted granted Critical
Publication of DK169883B1 publication Critical patent/DK169883B1/en

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1025Identification of user by a PIN code

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Electric Clocks (AREA)
  • Circuits Of Receivers In General (AREA)
  • Control Of El Displays (AREA)

Abstract

The invention relates to a method and circuitry for securing code data stored in a code data memory (1a) prior to analysis, in which the signals at the code data memory outputs provide an indication of the contents of the code data memory. According to the invention, a blocking circuit (4), controlled by a blocking logic circuit (9), is provided at the code data memory outputs, which it blocks as soon as entered control data fails to match the code data. <IMAGE>

Description

i DK 169883 B1in DK 169883 B1

Opfindelsen angår en fremgangsmåde til sikring af hemmelige kodedata lagret i et datalager mod en analyse, ved hvilken analyse man udfra signalerne på lagerudgangene kan slutte sig til lagerindholdet, ifølge 5 indledningsafsnittet til patentkrav i, samt et integreret kredsløb med et datalager til udøvelse af fremgangsmåden .The invention relates to a method for securing secret code data stored in a data store against an analysis in which analysis from the signals on the storage outputs can be joined to the storage content, according to the preamble of claim 1, and an integrated circuit with a data storage for carrying out the method.

En tilsvarende fremgangsmåde såvel som et tilsvarende integreret kredsløb til udøvelse af frem-10 gangsmåden, er principielt kendt fra EP-OS 0 207 320.A similar method as well as a corresponding integrated circuit for practicing the method is known in principle from EP-OS 0 207 320.

Et sådant integreret kredsløb udgør eksempelvis et væsentligt element i et såkaldt chip-kort, som kan anvendes i sikkerheds- og adgangssystemer, i afregnings- eller registreringssystemer og i debet- og 15 kreditsystemer. Forbindelse med det integrerede kredsløb og datalageret sker via udvendige kontakter på kortoverfladen i et kortlæseapparat.Such an integrated circuit, for example, constitutes an essential element of a so-called chip card which can be used in security and access systems, in billing or registration systems and in debit and credit systems. Connection to the integrated circuit and data storage takes place via external contacts on the card surface in a card reader.

I mange anvendelsestilfælde er der i et lagerområde, der betegnes kodedatalager,på de enkelte kort lag-20 ret lagerdata, som anvendes som hemmelige kodedata, til identifikation eller autorisation af kortbenytteren eller kortet. Systemsikkerheden afhænger af, hvor godt disse kodedata er beskyttet mod en misbrugsmæssig analyse. Derfor stilles meget store krav til bedrageri-25 sikkerheden for kortene og læseapparaterne. På grund af sikkerhedsforanstaltninger svarende til den nuværende erfaringstilstand, har et direkte forsøg på at analysere indholdet i kodedatalageret, der som regel består af et EE-PROM-lager og specielt udgør et delområde af 30 det nævnte datalager i kortet, næppe udsigt til succes.In many use cases, in a storage area referred to as code data storage, the storage card data stored as secret code data is stored on the individual cards for identification or authorization of the card user or card. System security depends on how well this code data is protected against an abusive analysis. Therefore, very high demands are placed on the security of fraud for the cards and reading devices. Due to security measures similar to the current state of experience, a direct attempt to analyze the contents of the code repository, which usually consists of an EE-PROM repository and, in particular, a subarea of 30 said repository in the card, is unlikely to succeed.

Der er dog mulighed for at drage slutninger tilbage til disse lagerdata ud fra den indirekte indflydelse, som kodedataene har på kodedatalagerudgangene, dvs. på den tilsluttede periferilogik.However, it is possible to retract to these storage data based on the indirect influence of the code data on the code data outputs, ie. on the connected peripheral logic.

35 Fra FR-PS 23 11 360 er det bekendt, i forbindelse med formidling af en adgangsberigtigelse, at tillade 2 DK 169883 B1 betjeningspersonen et bestemt antal kodeindtastninger, og at lagre alle utilladelige forsøg i et dertil indrettet lager,indtil hele lagerområdet er fyldt op. Derefter bliver den enhed der skal beskyttes, sat ud af 5 drift.35 From FR-PS 23 11 360 it is known, in connection with the provision of an access right, to allow the operator 2 a certain number of code entries, and to store all unauthorized attempts in a stored storage until the entire storage area is filled up . Then the unit to be protected is put out of operation.

Fra EP-OS 0 127 809 kendes et kredsløbsarrangement, hvor i der udføres datasammenligninger mellem lagrede kodedata og udefra indtastede kontroldata, og hvor adresseområdet for det kodedataoptagende lagerområde er 10 underopdelt i flere, af en udvalgslogik fastlagte, delmængder med hver flere adresser, og hvor adresseledningerne, der fastlægger delmængderne, er forbundet med en adressekontrolenhed, fra hvilken et frigivelsessignal kan udtages, når der i løbet af sammenligningsprocessen 15 er blevet udvalgt mindst én adresse fra hver delmængde.EP-OS 0 127 809 discloses a circuit arrangement in which data comparisons are performed between stored code data and externally entered control data, and in which the address area of the code data recording storage area is subdivided into a plurality of sub-sets of sample logic with each several addresses and where the address lines determining the subsets are associated with an address control unit from which a release signal can be extracted when at least one address has been selected from each subset during the comparison process 15.

Fra EP-OS 0 128 362 kendes et kredsløbsarrangement med lager- og sikkerhedslogik, hvor der efter sammenligning af et indtastet kontrolord med et lagret kodeord, bliver skrevet i mindst én lagercelle i et ope-20 rationsdataområde, hvis adresse afhænger af sammenligningsresultatet. Herved bliver adgangsforsøg med fejlagtige kontroldataindtastninger registreret, medens der kun sker en sletning af operationsdatalageret efter adgangsfrigivelsen efter en vellykket afslutning af fri-25 givelsesproceduren. Ved den begrænsede størrelse af operationsdatalageret er antallet af tilladelige forkerte indtastninger således begrænset.EP-OS 0 128 362 discloses a storage arrangement with storage and security logic, where after comparing an entered control word with a stored password, at least one storage cell is written in an operational data area whose address depends on the comparison result. Hereby, access attempts with erroneous control data entries are recorded, while only deleting the operation data after the access release after successful completion of the release procedure. Thus, with the limited size of the operational data store, the number of permissible incorrect entries is limited.

I de i det foregående beskrevne kredsløbsarrangementer bliver i de datalageret lagrede kodedata dog i 30 høj grad overført udbeskyttet til sammenligningsorganet hvori de bliver sammenlignet med indtastede kontroldata.However, in the circuit arrangements described above, the code data stored in the data storage is to a great extent transferred protected to the comparator in which they are compared with the entered control data.

Specielt når der findes et sammenligningsorgan til sammenligning af kodedata med brugerindtastede kon-35 troldata, og disse kodedata overføres via et dataoverføringsorgan, som f.eks. en dataledning, dvs.Especially when there is a comparison means for comparing code data with user-entered control data, and this code data is transmitted via a data transfer means such as e.g. a data line, i.e.

3 DK 169883 B1 en databus til dette sammenligningsorgan, f.eks. en komparator, kan kodedata på dette dataoverføringsorgan læses. Et ovenfor anvendt dataoverføringsorgan kan specielt indeholde søjleledningerne "for datalageret, såvel 5 som søjledekoderen og databussen.3 DK 169883 B1 a data bus for this comparator, e.g. a comparator, code data on this data transfer means can be read. In particular, a data transfer means used may contain the column lines "of the data store, as well as the column decoder and the data bus.

Et i EP-OS 0 207 320 beskrevet integreret kredsløb indeholder et ikke flygtigt kodedatalager, der fortrinsvis er af EE-PROM-type, og som lagrer den hemmelige kode. Dette kodedatalager er via en databus forbun-10 det med en indgang til et sammenligningskredsløb, hvis anden indgang er beregnet til at blive påvirket af indtastede kontroldata. Udgangen fra kodelageret, dvs. databussen, er herved således udstyret med et, via et logikkredsløb, styrbart lagerkredsløb, således at ud-15 gangene fra lagercellerne, som regel søjleledningerne fra lagerfeltet, i normaltilstanden er spærret af fra periferilogikken. Spærringen ophæves kun i et kort tidsrum, i hilket de hemmelige data faktisk er nødvendige for datasammenligningen i periferilogikken. Mulig-20 heden for at gennemføre en analyse af kodedata, er derved begrænset til et kort tidsrum, men ikke absolut udelukket. Specielt er kodedatalagerets udgangsledninger, som skal beskyttes,ved aktiveret spærring, uafhængigt af de lagrede informationer, koblet til et fast 25 potentiale.An integrated circuit described in EP-OS 0 207 320 contains a non-volatile code data store, preferably of the EE-PROM type, which stores the secret code. This code data store is connected via a data bus to an input to a comparison circuit whose second input is intended to be affected by the entered control data. The output from the code store, ie. The data bus is thus equipped with a controllable storage circuit, via a logic circuit, so that the outputs of the storage cells, usually the column lines from the storage field, are normally blocked from the peripheral logic. The lockout is only lifted for a short period of time, as the secret data is actually needed for the data comparison in the peripheral logic. The possibility of conducting an analysis of code data is thereby limited to a short period of time, but not absolutely excluded. Specifically, the output data of the code data store to be protected by activated blocking, independent of the stored information, is coupled to a fixed potential.

For yderligere at begrænse antallet af mulige analyseforsøg, indledes begyndelsen af en kodedatalage-radgang med en skriveproces i et tællelager, der bliver adresseret sammen med det vedkommende kodeord. Dette 30 tællelager bliver først 0-stillet, når kodedata svarende til kontroldata fejlfrit er indlæst og en kontrolproces er afsluttet. Derved fastlægger størrelsen af tællelageret, antallet af de fejlagtige adgangsforsøg.To further limit the number of possible assay attempts, the beginning of a code data entry process with a write process is initiated in a count store which is addressed along with the corresponding password. This 30 count store only becomes 0 when code data corresponding to control data is entered incorrectly and a control process is completed. In doing so, the size of the counter store determines the number of failed access attempts.

Et yderligere identifikationslager kendetegner de cel-35 ler i datalageret, som udgør kodedatalageret, således at adgangsspærringen er begrænset til dette område.A further identification layer characterizes the cells in the data store that make up the code data store, so that the access bar is limited to this area.

4 DK 169883 B14 DK 169883 B1

Et i dette offentliggørelsesskrift beskrevet kredsløb begrænser også udlæsningen af kodedata fra ko-dedatalageret til databussen tidsmæssigt. En analyse af alle kodedata bliver derved kun besværliggjort, ikke 5 forhindret.A circuit described in this publication also restricts the readout of code data from the code store to the data bus in time. An analysis of all code data is thereby only complicated, not 5 prevented.

Formålet med opfindelsen er at tilvejebringe en fremgangsmåde til absolut sikring af hemmelige kodedata, lagret i et datalager, mod en analyse.The object of the invention is to provide a method of absolutely securing secret code data stored in a data store against an analysis.

Dette formål løses ved en fremgangsmåde ifølge 10 den kendetegnende del af patentkrav 1, såvel som ved hjælp af et integreret kredsløb ifølge den kendetegnende del af patentkrav 6.This object is solved by a method according to the characterizing part of claim 1, as well as by an integrated circuit according to the characterizing part of claim 6.

Hemmelige kodedata lagret i et datalager, som ved hjælp af et sammenligningsorgan bliver sammenlignet 15 med indkodede kontroldata, og som derfor må overføres fra datalagerudgangen til sammenligningsorganet via et dataoverføringsorgan, kan blive analyseret medens de befinder sig på dataoverføringsorganet. En sådan analyse kan forhindres ved at ikke alle hemmelige kodedata, 20 efter indledningen af en datasammenligning, gives til dataoverføringsorganet, men at der ifølge opfindelsen aktiveres et spærrekredsløb ved en første indkodning af kontroldata, som ikke stemmer overens med kodedataene, hvilket forhindrer en yderligere udlæsning af kodedata 25 til dataoverføringsorganet.Secret code data stored in a data store which is compared with encoded control data by means of a comparator and which must therefore be transmitted from the data storage output to the comparator via a data transfer means can be analyzed while on the data transfer means. Such an analysis can be prevented by not providing all secret code data, 20 after the initiation of a data comparison, to the data transferring means, but in accordance with the invention, a blocking circuit is activated at a first encoding of control data which does not match the code data, preventing a further readout of code data 25 to the data transfer means.

Det viser sig specielt gunstigt, hvis en videre udlæsning af kodedata fra lageret til dataoverføringsorganet også forhindres efter afslutningen af en korrekt datasammenligning af alle de kodedata, som udgør 30 en komplet kode.It turns out to be particularly advantageous if a further readout of code data from the repository to the data transfer means is also prevented after completing a correct data comparison of all the code data which constitutes a complete code.

Fortrinsvis skal udlæsningen af kodedata fra lageret til dataoverføringsorganet først være mulig efter registrering af et sammenligningsforløb, eksempelvis ved skrivning af en tællerbit. Hvis registreringen sker 35 ved skrivning af en tællerbit, kan det yderligere, ved hjælp af et foran koblet logikkredsløb, sikres, at den ♦ 5 DK 169883 B1 beskrevne tællerbit før var ubeskrevet. Den omtalte registrering, specielt ved hjælp af skrivning af en tællerbit, kan såvel være beregnet til varig registrering af alle foretagne adgangsforsøg, som også til registre-5 ring af fejlagtige adgangsforsøg. Skal registreringen foretages ved brug af en fejltæller, skal det specielt, ved hjælp af et logikkredsløb, sikres at fejltælleren kun kan O-stilles efter en gennemført korrekt datasammenligning .Preferably, the readout of code data from the memory to the data transfer means should be possible only after recording a comparison process, for example by writing a counter bit. If the recording is done by writing a counter bit, it can further be ensured, by means of a logic circuit preceded, that the counter bit described previously was previously undescribed. The said record, in particular by means of writing a counter bit, may be intended both for permanent registration of all access attempts made as well as for registering erroneous access attempts. If the registration is to be done using an error counter, it must especially be ensured, by means of a logic circuit, that the error counter can only be O-positioned after a correct data comparison.

10 Sikkerheden ved fremgangsmåden kan yderligere forhøjes ved, at selv ved bytevis lagrede kodedata overføres disse serielt til databussen, og sammenlignes bitvis med kontroldata. Så snart den første kontrolbit ikke stemmer overens med den tilsvarende kodebit, bli-15 ver udlæsningen af den næste kodebit til dataoverføringsorganet forhindret.10 The security of the method can be further enhanced by the fact that even with byte-stored code data these are transmitted serially to the data bus and compared bit by bit with control data. As soon as the first control bit does not match the corresponding code bit, the readout of the next code bit to the data transfer means is prevented.

Pindes der er fejltæller til tælling af de fejlagtige kontroldata, hvor hver fejlagtig kontrolda-taindlæsning ifølge opfindelsen kræver en fornyet op-20 start af datasammenligningen, er det af sikkerhedsmæssige grunde en fordel, hvis antallet af, de for en sammenligningscyklus nødvendige, sammenligningsoperationer er så stort som muligt i forhold til det maksimalt tilladelige antal fejlagtige kontroldataindlæsninger. I 25 det mindste skal antallet af de, for en sammenligningscyklus nødvendige,sammenligningsoperationer være større end det maksimalt tilladelige antal fejlagtige kontroldataindlæsninger .If there is an error counter for counting the erroneous control data, where each erroneous control data entry according to the invention requires a fresh start of the data comparison, it is advantageous for security reasons if the number of comparison operations required for a comparison cycle is so as large as possible in relation to the maximum permissible number of erroneous control data inputs. At least 25, the number of comparison operations required for a comparison cycle must be greater than the maximum permissible number of erroneous control data inputs.

Figuren viser i form af et blokdiagram en fore-30 trukken udførelsesform for et integreret kredsløb til i overensstemmelse med opfindelsen at udøve en sikkerhedsfremgangsmåde ifølge opfindelsen.The figure shows in the form of a block diagram a preferred embodiment of an integrated circuit for practicing a safety method according to the invention in accordance with the invention.

Her forestiller blok 1 en datalagerenhed, som i det mindste omfatter et kodedatalager la og specielt 35 kan omfatte et identifikationslager. Blok 2 omfatter en frigivelsestæller, som specielt kan benyttes som 6 DK 169883 B1 fejltæller, og som ved starten på en sammenligningscyklus bliver aktiveret fortrinsvis ved, at en fri tællerbit bliver skrevet. Blok 3 omfatter et kontrollo- » gikkredsløb, som kontrollerer om en tællerbit i frigi-5 velsestælleren 2 tidligere var ubeskrevet og så bliver skrevet, og i dette tilfælde videregiver et tilsvarende frigivelsessignal til et spærrelogikkredsløb 9 ifølge opfindelsen. Blok 4 omfatter er spærrekredsløb, der skal forhindre udlæsningen af kodedata fra ko-10 dedatalageret til et dataoverføringsorgan 6, og fortrinsvis i aktiv tilstand lægger dataudgangene fra ko-dedatalageret eller de dertil sluttede dataledninger til et fast potentiale. Blok 5 omfatter et sammenlig-ningsorgan, som sammenligner de til indgangen 7 ind-15 læste kontroldata med de kodedata, der befinder sig på dataoverføringsorganet 6, og som afgiver de til sammenligningsresultatet svarende data på en udgang 8. Udførelsesformer for de i blokkene 1, la, 2, 3, 4 og 5 indeholdte kredsløb og dataoverføringsorganet 6, 20 såvel som deres funktionsmåder er beskrevet i EP-OS 0 207 320.Here, block 1 represents a data storage unit which at least comprises a code data store 1a and in particular may comprise an identification storage. Block 2 comprises a release counter which can be used especially as a 6 counter 169883 B1 error counter, which is activated at the start of a comparison cycle, preferably by writing a free counter bit. Block 3 comprises a control loop circuit which checks whether a counter bit in the release counter 2 was previously unwritten and then written, and in this case transmits a corresponding release signal to a lock logic circuit 9 of the invention. Block 4 comprises are blocking circuits intended to prevent the readout of code data from the code data store to a data transfer means 6, and preferably in active mode, the data outputs of the code data store or the associated data lines attach to a fixed potential. Block 5 comprises a comparison means that compares the control data loaded to the input 7 with the code data located on the data transfer means 6 and which outputs the data corresponding to the comparison result to an output 8. Embodiments of the blocks 1, 1a, 2, 3, 4 and 5 and the data transfer means 6, 20 as well as their modes of operation are described in EP-OS 0 207 320.

I et monolitisk integrerbart elektronisk kredsløb, i hvilket et kodedatalager la, via et spærrekredsløb 4 og et dataoverføringsorgan 6, er forbun-25 det med en indgang til et sammenligningsorgan 5, og hvor dette sammenligningsorgan 5 har en yderligere indgang 7, såvel som en udgang 8 til at stille sammenligningsresultatet til rådighed, bliver udlæsningen af yderligere kodedata til dataoverføringsorganet 6 30 forhindret derved, at et spærrelogikkredlsøb 9 ifølge opfindelsen som følge af det første negative sammenligningsresultat på udgangen 8 aktiverer spærrekredsløbet 4.In a monolithic integrable electronic circuit, in which a code data store 1a, via a blocking circuit 4 and a data transfer means 6, is connected to an input to a comparator 5, and wherein this comparator 5 has an additional input 7, as well as an output. 8 to provide the comparison result, the readout of additional code data to the data transfer means 630 is prevented by a blocking logic circuit 9 of the invention, as a result of the first negative comparison result on the output 8, activating the blocking circuit 4.

Fortrinsvis bliver udlæsningen af kodedata fra 35 kodedatalageret la til dataoverføringsorganet 6 ved et sådant kredsløb specielt via spærrelogikkredsløbet * 7 DK 169883 B1 9 muliggjort ved udkobling af spærrekredsløbet 4 efter skrivningen af en allerede fri frigivelsestællerbit.Preferably, the readout of code data from the code data store 1a to the data transferring means 6 by such a circuit, in particular via the interlock logic circuit * 7, is enabled by switching off the interlock circuit 4 after the writing of an already free release counter bit.

Det viser sig specielt gunstigt, hvis spærrelo-5 gikkredsløbet 9 omfatter et udkoblingslogikkredsløb 10, som efter sammenligning af korrekte kontroldata med kodedata i en fuldstændig kode, foranlediger aktivering af spærrekredsløbet 4. Da signalet på udgangen 8a af dette udkoblingslogikkredsløb 10 er afhængigt 10 af en fuldstændig korrekt kontroldataindlæsning, kan det også benyttes til O-stilling af en fejltæller, og kan sammen med signalet på udgangen 8 fra sammenligningsorganet 5 benyttes som frigivelsessignal for hele sikkerhedskredsløbet. Udkoblingslogikkredsløbet 10 15 omfatter fortrinsvis en tæller, som ved aktivering af spærrekredsløbet 4 eller frigivelsestælleren 2 O-stilles, og som ved hver korrekt datasammenligning i sammenligningsorganet 5, tæller én videre, og som efter sammenligning af den sidste kodebit aktiverer 20 spærrekredsløbet.It turns out to be particularly advantageous if the blocking 5 circuit 9 comprises a switch-off logic circuit 10 which, when comparing correct control data with code data in a complete code, causes the activation of the lock circuit 4. Since the signal at the output 8a of this switch-off logic circuit 10 is dependent on a fully correct control data input, it can also be used for the 0 position of an error counter, and can be used together with the signal at the output 8 of the comparator 5 as a release signal for the entire security circuit. The switch-off logic circuit 10 15 preferably comprises a counter which, upon activation of the blocking circuit 4 or the release counter 20, is set and which, with each correct data comparison in the comparator 5, counts one further and which, after comparing the last code bit, activates the blocking circuit.

I det følgende beskrives funktionen af et kredsløb ifølge opfindelsen under henvisning til den i figuren viste foretrukne udførelsesform.In the following, the operation of a circuit according to the invention is described with reference to the preferred embodiment shown in the figure.

Kontrollogikkredsløbet 3 overvåger, om en tid-25 ligere ubeskrevet tællerbit i frigivelsestælleren 2 bliver beskrevet. En udgang af dette kontrollogikkreds-løb 3 er forbundet med set-indgangen på en RS-flip-flop 12, som er indeholdt i spærrelogikkredsløbet 9.The control logic circuit 3 monitors whether a previously undescribed counter bit in the release counter 2 is described. An output of this control logic circuit 3 is connected to the set input of an RS flip-flop 12 contained in the interlock logic circuit 9.

Efter den korrekte indskrivning af en tællerbit i fri-30 givelsestælleren 2, bliver denne flip-flop 12 sat.After correctly inscribing a counter bit into the release counter 2, this flip-flop 12 is set.

Flip-flop 12's inverterende udgang QN er forbundet med styreindgangen til spærrekredsløbet 4, og deak-tiverer spærrekredsløbet, når flip-floppen sættes. Spærrekedsløbet 4 omfatter specielt for hver dataled-35 ning en kontakt T, som lægger denne dataledning til et fast potentiale ved aktiveret spærrekredsløb 4. En DK 169883 Bl 8 anden udførelsesform ifølge opfindelsen af spærrekreds- - løbet 4, realiseres ved, at søjledekoderen for kode-datalageret la i aktiveret tilstand for spærrekreds- v løbet 4 gøres ledende for alle søjler. Derved ligger 5 alle udgange af kodedatalageret la parallelt, og en sammenhæng mellem de informationer i kodedata, som skal beskyttes, og informationen på dataoverføringsorganet 6 er ikke mulig. Er spærrekredsløbet 4 deaktiveret, kan kodedata fra kodedatalageret la bit eller byte-10 vis overføres via dataoverføringsorganet 6 til en første indgang på sammenligningsorganet 5. Sammenligningsorganet 5, som specielt kan bestå af en kompara-tor af kendt art, sammenligner de på dens første indgang stående kodedata med de tilsvarende på dens anden 15 indgang 7 indlæste kontroldata, og afgiver, fortrinsvis på seriel form, sammenligningsresultatet på udgangen 8.Flip-flop 12's inverting output QN is connected to the control input of the latch 4, and deactivates the latch when the flip-flop is set. Specifically, for each data line, the lock circuit 4 includes a contact T, which adds this data line to a fixed potential by activated lock circuit 4. A second embodiment according to the invention of the lock circuit 4 is realized by the column decoder for code. The data store 1a in the activated state for the blocking circuit 4 is made conductive for all columns. Thereby, all the outputs of the code data storage 1a are parallel, and a connection between the information in the code data to be protected and the information on the data transfer means 6 is not possible. If the blocking circuit 4 is deactivated, the code data from the code data 1a bit or byte 10 can be transmitted via the data transfer means 6 to a first input of the comparator 5. The comparator 5, which may in particular consist of a comparator of a known kind, compares it at its first input. standing code data with the corresponding control data entered on its second input 7, and, preferably in serial form, gives the comparison result on output 8.

Er kodedata og kontroldata identiske, hvor der fortrinsvis bliver sammenlignet bitvis,foranlediger det 20 af udgangen 8 fra sammenligningsorganet 5 styrede spærrelogikkredsløb 9 kun en spærring af spærrekredsløbet 4, når den tilsvarende datasammenligning er den sidste datasammenligning i en sammenligningscyklus, dvs. når den samlede kode i en sidste korrekt datasam-25 menligning er blevet sammenlignet med korrekte kontroldata. Det opnås eksempelvis ved, at et tæller-kedsløb 10 for hvert sammenligningsresultat i en korrekt datasammenligning tælles én enhed videre, at dette tællerkredsløb 10 fra starten af en sammenligningscy-30 klus 0-stilles, hvilket bl.a. kan opnås ved en 0-stilling af tællerkredsløbet 10 med det aktiverende styresignal for spærrekredsløbet 4, og at tællerkredsløbet 10 ved opnåelse af den tællerstand, der svarer til totalantallet af sammenligningsoperationer 5 35 for koden, giver et signal på sin udgang 8a, som foranlediger aktivering af spærrekredsløbet 4. Som tæl- 9 DK 169883 B1 lerkredsløb 10 kan ifølge opfindelsen også benyttes en f.eks. i det integrerede kredsløb anbragt adressetæller. Flerfunktionsbenyttelsen af en sådan tæller fører til en chipfladebesparelse.If code data and control data are preferably where bit comparisons are preferred, then the 20 of the output 8 controlled by the comparator 5 controlled interlock logic 9 will only cause a block of the blocking circuit 4 when the corresponding data comparison is the last data comparison in a comparison cycle, ie. when the overall code in a last correct data comparison has been compared with correct control data. It is achieved, for example, that for each comparison result in a correct data comparison one counter circuit 10 is counted one unit further, that this counter circuit 10 is set from the start of a comparison cycle 0, can be obtained at a 0 position of the counter circuit 10 with the activating control signal of the blocking circuit 4, and the counter circuit 10, upon obtaining the counter state corresponding to the total number of comparison operations 5 of the code, gives a signal at its output 8a which causes activation of the blocking circuit 4. According to the invention, for example, counting circuit 10 may also be used, e.g. located in the integrated circuit address counter. The multifunction use of such a counter leads to a chip area saving.

5 Dette signal på udgang 8a af tællerkredsløbet 10, kan også være beregnet som O-stillingssignal for en som fejltæller drevet frigivelsestæller 2, såvel som frigivelsessignal for kodesikringskredsløbet. Dette frigivelsessignal kan yderligere frigive en beskyttet 10 funktion og kan også eksempelvis muliggøre frigivelsen af en i mikroprocessoren indeholdt CPU, specielt en frigivelse af programdekoderen eller datadekoderen.This signal at output 8a of the counter circuit 10 may also be calculated as an O-position signal for a failure counter driven release counter 2, as well as a release signal for the code securing circuit. This release signal may further release a protected function and may also, for example, enable the release of a CPU contained in the microprocessor, in particular a release of the program decoder or data decoder.

Adskiller kodedata sig fra de tilsvarende kontroldata, foranlediger allerede den første sammenlig-15 ningsoperation i sammenligningsorganet 5 med forskellige data en aktivering af spærrekredsløbet 4.If the code data differs from the corresponding control data, the first comparison operation in the comparator 5 with different data already causes an activation of the blocking circuit 4.

Aktiveringen af spærrekredsløbet 4 via udgangssignalet fra udkoblingslogikkredsløbet 10, såvel som via udgangssignalet fra sammenligningsorganet 5 20 ved forekomsten af en negativ datasammenligning, kan ifølge opfindelsen specielt realiseres derved, at udgangen 8 fra sammenligningsorganet 5 er forbundet til indgangen på et logikkredsløb 11, og at udgangen 8a fra udkoblingslogikkredsløbet 10 er forbundet til 25 den anden indgang af dette logikkredsløb 11, og at udgangssignalet fra dette logikkredsløb 11 er beregnet til påvirkning af reset-indgangen af den i spærrekredsløbet 9 indeholdte flip-flop 12.The activation of the blocking circuit 4 via the output signal of the switching logic circuit 10, as well as via the output signal of the comparator 5 20 in the presence of a negative data comparison, can be realized in particular by the output 8 of the comparator 5 being connected to the input of a logic circuit 11 8a from the disable logic circuit 10 is connected to the second input of this logic circuit 11 and that the output of this logic circuit 11 is intended to affect the reset input of the flip-flop 12 contained in the latch circuit 9.

Hvis spærrekredsløbet 4 skal aktiveres, når 30 der foreligger et højt signal på udgangen 8 fra sammenligningsorganet 5, såvel som på udgangen 8a fra udkoblingslogikkredsløbet 10, opfylder f.eks. en OR-gate funktionen for logikkredsløbet li.If the blocking circuit 4 is to be activated when there is a high signal at the output 8 of the comparator 5, as well as at the output 8a of the disabling logic circuit 10, e.g. an OR gate function for the logic circuit li.

Claims (10)

1. Fremgangsmåde til forhindring af uberettiget aflæsning af en hemmelig kode, der består af et antal kodedata og er oplagret i et kodedatalager (la), og hvor kodedatalageret (la) udelukkende over et spærre- 5 kredsløb (4) ved hjælp af et dataoverføringsorgan (6) står i forbindelse med en første indgang til et sammenligningsorgan (5), hvis anden indgang får tilført kontroldata, og hvor sammenligningsorganets (5) udgang over et spærrelogikkredsløb (9) styrer spærrekredsløbet 10 (4), kendetegnet ved følgende trin: a) aflæsning af et første kodedatum fra antallet af kodedata hos den hemmelige kode fra kodedatalageret (la) og påtrykning af et første kontroldatum på den anden indgang til sammenligningsorganet, 15 b) sammenligning mellem kodedatumet og kontroldatumet i sammenligningsorganet (5), c) når det fra kodedatalageret aflæste kodedatum stemmer overnes med kontroldatumet, aflæses et yderligere kodedatum fra kodedatalageret (la) og et yderligere 20 kontroldatum påtrykkes sammenligningsorganet (5), hvorpå trin b) gentages, d) når det fra kodedatalageret (la) aflæste kodedatum ikke stemmer overens med kontroldatumet, forhindres yderligere aflæsning af kodedata ved hjælp af et signal 25 fra sammenligningsorganet (5) til spærreorganet (4) via spærrelogikkredsløbet (9).A method for preventing the unreadable reading of a secret code consisting of a plurality of code data and stored in a code data store (1a), wherein said code data store (1a) is exclusively via a blocking circuit (4) by means of a data transfer means (6) communicates with a first input to a comparator (5), the second input of which receives control data, and the output of the comparator (5) over a latch logic circuit (9) controls the latch circuit 10 (4), characterized by the following steps: a ) reading a first code date from the number of code data of the secret code from the code store (1a) and printing a first check date on the second input to the comparator; 15 b) comparing the code date with the check date in the comparator (5); the code date read from the code data is matched to the control date, an additional code date is read from the code data (1a) and a further 20 control atum is applied to the comparator (5), to which step b) is repeated; d) when the code date read from the code store (1a) does not match the control date, further reading of code data is prevented by a signal 25 from the comparator (5) to the bar (4). ) via the blocking logic circuit (9). 2. Fremgangsmåde ifølge krav 1, kendetegnet ved, at en videre udlæsning af kodedata fra kodedatalageret til dataoverføringsorganet (6) for- 30 hindres efter afslutning af en korrekt datasammenligning . *Method according to claim 1, characterized in that a further reading of code data from the code data store to the data transfer means (6) is prevented after the completion of a correct data comparison. * 3. Fremgangsmåde ifølge krav 1 eller 2, kendetegnet ved, at udlæsning af kodedata fra ko- S DK 169883 B1 ii dedatalageret (la) til dataoverføringsorganet (6) først er mulig efter skrivning af en tællerbit.Method according to claim 1 or 2, characterized in that reading code data from the data storage (1a) to the data transfer means (6) is only possible after writing a counter bit. 4. Fremgangsmåde ifølge et af de foregående krav, kendetegnet ved, at kodedataene over- 5 føres serielt på en databus (6) og sammenlignes bit for bit med kontroldataene.Method according to one of the preceding claims, characterized in that the code data is transmitted serially on a data bus (6) and compared bit by bit with the control data. 5. Fremgangsmåde ifølge et af de foregående krav, kendetegnet ved, at der findes en fejltæller (2) til tælling af de fejlagtige kontrolda- 10 taindkodninger, at antallet af fejlagtige kontrolda-taindkodninger på kendt måde er begrænset ved hjælp af denne fejltæller (2), og at antallet af de for en sammenligningscyklus krævede sammenligningsoperationer er større end det maksimalt tilladelige antal indkodnin- 15 ger af fejlbehæftede kontroldata.Method according to one of the preceding claims, characterized in that an error counter (2) exists for counting the incorrect control data encodings, that the number of erroneous control data encodings in a known manner is limited by this error counter (2). ), and that the number of comparison operations required for a comparison cycle is greater than the maximum allowable number of encodings of faulty control data. 6. Integreret kredsløb indbefattende et sammenligningsorgan (5), der har en første indgang, en anden indgang og en udgang, et kodedatalager (la) med udgange, og hvor kodedatalagerets (la) udgange over et spær- 20 rekredsløb (4) ved hjælp af et dataoverføringsorgan (6) står i forbindelse med den første indgang til sammenligningsorganet (5), og hvor den anden indgang til sammenligningsorganet (5) kan få tilført kontroldata, kendetegnet ved, at sammenligningsorganets 25 (5) udgang er forbundet med spærrekredsløbet (4) via et spærrelogikkredsløb på en sådan måde, at ved første indlæsning af kontroldata, der ikke stemmer overens med kodedata, der fra kodedatalageret (la) føres til sammenligningsorganet, forhindres yderligere aflæsning af 30 kodedata til dataoverføringsorganet (6).An integrated circuit including a comparison means (5) having a first input, a second input and an output, a code data store (1a) with outputs, and the outputs of the code data store (1a) over a blocking circuit (4) by means of a data transfer means (6) communicates with the first input of the comparator (5), and the second input of the comparator (5) can be fed with control data, characterized in that the output of the comparator 25 (5) is connected to the blocking circuit (4). ) via a blocking logic circuit in such a way that upon first loading control data that does not match the code data passed from the code data store (1a) to the comparison means, further reading of 30 code data to the data transfer means (6) is prevented. 7. Kredsløb ifølge krav 6, kendetegnet ved,at spærrekredsløbet (4) har en kontakttransistor (T) på hver lagerudgang, hvilken transistors styrede strækning forbinder den lagerudgang, der skal beskyt- 35 tes, med et forudgivet potential.Circuit according to claim 6, characterized in that the blocking circuit (4) has a contact transistor (T) on each storage output, the controlled stretch of the transistor connecting the storage output to be protected with a predetermined potential. 8. Kredsløb ifølge krav 6, kendetegnet ved, at spærrekredsløbet (4) i aktiv tilstand forbinder alle kodedatalagerudgange med hinanden. 12 DK 169883 B1Circuit according to claim 6, characterized in that the blocking circuit (4) in active state connects all code data outputs with each other. 12 DK 169883 B1 9. Kredsløb ifølge krav 6, 7 eller 8, k e n -detegnet ved, at der findes en flip-flop (12) til styring af spærrekredsløbet (4). >9. A circuit according to claim 6, 7 or 8, characterized in that a flip-flop (12) is provided for controlling the blocking circuit (4). > 10. Kredsløb ifølge krav 6, 7, 8 eller 9, 5 kendetegnet ved, at der findes et udkoblingslogikkredsløb (10) til registrering af sammenlig-ningsprocesserne med overensstemmende kontroldata og kodedata og til spærring af spærrekredsløbet (4) efter afslutning af en sammenligningscyklus. '·* «Circuit according to claims 6, 7, 8 or 9, 5, characterized in that a switch-off logic circuit (10) exists for recording the comparison processes with corresponding control data and code data and for blocking the blocking circuit (4) after the end of a comparison cycle. '· * «
DK728088A 1988-02-25 1988-12-29 Method for securing secret code data stored in a data store and circuit arrangement for carrying out the method DK169883B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE3805977 1988-02-25
DE3805977 1988-02-25

Publications (3)

Publication Number Publication Date
DK728088D0 DK728088D0 (en) 1988-12-29
DK728088A DK728088A (en) 1989-08-26
DK169883B1 true DK169883B1 (en) 1995-03-20

Family

ID=6348186

Family Applications (1)

Application Number Title Priority Date Filing Date
DK728088A DK169883B1 (en) 1988-02-25 1988-12-29 Method for securing secret code data stored in a data store and circuit arrangement for carrying out the method

Country Status (6)

Country Link
EP (1) EP0329966B1 (en)
AT (1) ATE128258T1 (en)
DE (1) DE58909440D1 (en)
DK (1) DK169883B1 (en)
ES (1) ES2077566T3 (en)
FI (1) FI100068B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2941361B2 (en) * 1990-06-07 1999-08-25 株式会社東芝 Portable electronic devices
FR2789774B1 (en) 1999-02-11 2001-04-20 Bull Cp8 SECURE COMPARISON METHOD OF TWO MEMORY REGISTERS, AND SECURITY MODULE IMPLEMENTING SAID METHOD

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3761892A (en) * 1971-07-19 1973-09-25 R Bosnyak Electronic locking system
US3829833A (en) * 1972-10-24 1974-08-13 Information Identification Co Code element identification method and apparatus
FR2311365A1 (en) * 1975-05-13 1976-12-10 Innovation Ste Int SYSTEM FOR TRANSFERRING AND STORING DATA IN A PERSONAL AND CONFIDENTIAL WAY BY MEANS OF PORTABLE INDEPENDENT ELECTRONIC OBJECTS
DE3671119D1 (en) * 1985-07-03 1990-06-13 Siemens Ag INTEGRATED CIRCUIT AND METHOD FOR SECURING SECRET CODE DATA.
JPS6267800A (en) * 1985-09-20 1987-03-27 Hitachi Ltd Semiconductor integrated circuit device

Also Published As

Publication number Publication date
EP0329966A1 (en) 1989-08-30
DK728088A (en) 1989-08-26
EP0329966B1 (en) 1995-09-20
FI890900A (en) 1989-08-26
FI100068B (en) 1997-09-15
ES2077566T3 (en) 1995-12-01
ATE128258T1 (en) 1995-10-15
DK728088D0 (en) 1988-12-29
FI890900A0 (en) 1989-02-24
DE58909440D1 (en) 1995-10-26

Similar Documents

Publication Publication Date Title
RU2254608C2 (en) Method for protecting program execution process
EP0297209B1 (en) Data card circuits
US7458002B2 (en) Processor having electronic fuses for storing secret data
US7187600B2 (en) Method and apparatus for protecting an integrated circuit from erroneous operation
JPH087780B2 (en) Data carrier for storing and processing data
US5974513A (en) IC memory card having read/write inhibit capabilities
JPS62168261A (en) Electronic postage meter having non-volatile memory
EP0197345A2 (en) An electronic postage meter having power up and power down protection circuitry
US8495734B2 (en) Method and device for detecting an erroneous jump during program execution
DK169883B1 (en) Method for securing secret code data stored in a data store and circuit arrangement for carrying out the method
US8006045B2 (en) Dummy write operations
US7657795B2 (en) Method and apparatus for writing to a target memory page of a memory
US7593258B2 (en) Protection of the flow of a program executed by an integrated circuit or of data contained in this circuit
JPH0822422A (en) Memory device
US20070274302A1 (en) Data Storage Device, Memory Managing Method, and Program
US7806319B2 (en) System and method for protection of data contained in an integrated circuit
US4819202A (en) Release process for an access-controlled user memory and apparatus for carrying out the process
US9659425B2 (en) Electronic key for authentication
CN101253413A (en) Semiconductor device and test mode control circuit
FI86922C (en) FOERFARANDE OCH ANORDNING FOER KONTROLLERING AV INSKRIVNING I ETT MINNE
US6493808B1 (en) Device and process for testing a reprogrammable nonvolatile memory
JPH1153487A (en) Method for deciding validity of written data on ic card
GB2129586A (en) Improvements in or relating to memory systems
JPS6037069A (en) Information storage device
JPH11282992A (en) Ic card

Legal Events

Date Code Title Description
PBP Patent lapsed

Country of ref document: DK