FI100068B - A method for protecting secret code information stored in a data memory and a switching arrangement for performing the method - Google Patents

A method for protecting secret code information stored in a data memory and a switching arrangement for performing the method Download PDF

Info

Publication number
FI100068B
FI100068B FI890900A FI890900A FI100068B FI 100068 B FI100068 B FI 100068B FI 890900 A FI890900 A FI 890900A FI 890900 A FI890900 A FI 890900A FI 100068 B FI100068 B FI 100068B
Authority
FI
Finland
Prior art keywords
code
code information
data
memory
comparison
Prior art date
Application number
FI890900A
Other languages
Finnish (fi)
Swedish (sv)
Other versions
FI890900A (en
FI890900A0 (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 FI890900A0 publication Critical patent/FI890900A0/en
Publication of FI890900A publication Critical patent/FI890900A/en
Application granted granted Critical
Publication of FI100068B publication Critical patent/FI100068B/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)
  • Control Of El Displays (AREA)
  • Electric Clocks (AREA)
  • Circuits Of Receivers In General (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

100068100068

Menetelmä tietomuietiin sijoitettujen salaisten kooditietojen suojaamiseksi ja kytkentäjärjestely menetelmän suorittamisek-s iMethod for protecting secret code information placed in a data memory and switching arrangement for performing the method

Keksintö kohdistuu patenttivaatimuksen 1 johdannon mukaiseen menetelmään tietomuietiin sijoitettujen salaisten kooditieto-jen suojaamiseksi analysoinnilta, jolla muistιlähtöjen signaaleista voidaan tehdä johtopäätöksiä muistin sisällöstä, ja integroituun piiriin, jossa on tietomuisti menetelmän suorit-tamiseks i.The invention relates to a method according to the preamble of claim 1 for protecting secret code information placed in a data memory from analysis, by which the signals of the memory outputs can be deduced from the contents of the memory, and to an integrated circuit having a data memory for performing the method i.

Lajimääritelmän mukainen menetelmä ja integroitu piiri menetelmän suorittamiseksi ovat periaatteessa tunnettuja EP-hake-musjulkaisusta 0 207 320.A method according to a species definition and an integrated circuit for carrying out the method are known in principle from EP-A-0 207 320.

Tällainen integroitu piiri edustaa esimerkiksi oleellista osaa niin sanotussa älykortissa, jota voidaan käyttää suojaus-ja käytönvalvontajärjestelmissä, laskutus- tai rekisteröintijärjestelmissä ja luotto- ja maksujärjestelmissä. Integroituun piiriin ja tietomuietiin päästään kortinlukulaitteessa kortin pinnalla olevien ulkoisten koskettimien välityksellä.Such an integrated circuit represents, for example, an integral part of a so-called smart card, which can be used in security and access control systems, billing or registration systems and credit and payment systems. The integrated circuit and data can be accessed in the card reader via external contacts on the surface of the card.

Monissa käyttötapauksissa asianomaisen kortin kooditietomuis-tiksi varattuun muistialueeseen on sijoitettu muistitietoja, joita käytetään kortin käyttäjän tai kortin tunnistamiseen tai oikeellisuuden varmistamiseen. Järjestelmän varmuus riippuu siitä, kuinka hyvin nämä kooditiedot suojataan luvattomalta analysoinnilta. Tämän vuoksi korttien ja lukulaitteiden petossuojaukselle asetetaan erittäin korkeat vaatimukset. Nykyistä kokemustasoa vastaavilla suojaustoimenpiteillä koodi-tietomuistin, joka yleensä muodostuu EE-PROM-muistista ja muodostaa erikoisesti mainitun kortin tietomuistin osa-alueen, sisällön suoralla analyysiyrityksellä on tuskin onnistumisen mahdollisuuksia. Kooditietojen epäsuorasta vaikutuksesta koodimuistin lähtöihin tai liitettyyn oheislaitelogiik- 2 100068 kaan on kuitenkin mahdollista vetää johtopäätöksiä näistä muistitiedoista.In many use cases, memory information is placed in a memory area reserved for code information of the card in question, which is used to identify or verify the correctness of the card user or the card. System security depends on how well this code information is protected from unauthorized analysis. Therefore, very high standards are set for the fraud protection of cards and readers. With security measures corresponding to the current level of experience, the direct analysis of the contents of a code data memory, which usually consists of EE-PROM memory and forms a part of the data memory of said card in particular, is unlikely to succeed. However, from the indirect effect of the code information on the outputs of the code memory or the connected peripheral logic, it is possible to draw conclusions from this memory information.

FR-patenttijulkaisusta 2 311 360 on tunnettua käyttövaltuu-tuksen aikaansaamiseksi antaa käyttäjähenkilölle määrätty lukumäärä koodinsyöttökertoja ja tallentaa kaikki hylätyt yritykset sitä varten varattuun muistiin, kunnes koko muistitila on varattu. Tämän jälkeen suojattava yksikkö kytketään pois käytöstä.It is known from FR patent publication 2,311,360 to obtain a user authorization by giving a user a certain number of code entries and storing all rejected attempts in the memory allocated for this purpose until the entire memory space is occupied. The unit to be protected is then switched off.

EP-hakemusjulkaisusta 0 127 Θ09 tunnetaan kytkentäjärjestely, jossa suoritetaan tietojen vertailu tallennettujen kooditie-tojen ja ulkoa syötettyjen valvontatietojen välillä, jolloin kooditiedot sisältävän muistialueen osoiteavaruus on jaettu useisiin valintalogiikan määräämiin osajoukkoihin, joissa kussakin on useita osoitteita, ja jolloin osajoukot määräävät osoitejohtimet on yhdistetty oeoitteenvalvontalaitteeseen, jolta voidaan saada vapautussignaali, kun vertailutoimitusten kuluessa jokaisesta osajoukosta valittiin ainakin yksi osoite.EP-A-0 127 Θ09 discloses a switching arrangement in which data is compared between stored code data and externally entered control data, whereby the address space of the memory area containing the code data is divided into a plurality of subsets determined by the selection logic, each having multiple addresses, from which a release signal can be obtained when at least one address from each subset was selected during the comparison operations.

EP-hakemusjulkaisusta 0 12Θ 362 tunnetaan muisti- ja suojaus-logiikan sisältävä kytkentäjärjestely, jossa syötetyn valvon-tasanan ja tallennetun koodisanan vertailun jälkeen kirjoitetaan operaatiotietoalueen ainakin yhteen muistisoluun, jonka osoite riippuu vertailutuloksesta. Tällöin rekisteröidään pääsy-yritykset, joissa käytetään virheellisesti syötettyjä valvontatietoja, samalla kun pääsyn vapautuksen lisäksi myös operaatiotietomuist in nollaus tapahtuu vain vapautusproseduu-rin onnistuneen päättämisen jälkeen. Operaatiotietomuietin rajallinen laajuus rajoittaa siten sallittujen virhesyöttojen lukumäärää.EP-A-0 12 to 362 discloses a switching arrangement including memory and protection logic, in which, after comparing the input control plane and the stored codeword, a write is made in at least one memory cell of the operation data area, the address of which depends on the comparison result. In this case, access attempts using incorrectly entered control data are registered, while in addition to the release of the access, the resetting of the operation data memory also takes place only after the successful completion of the release procedure. The limited scope of the operation data message thus limits the number of error entries allowed.

Edellä esitetyissä kytkentäjärjestelyissä tietomuistiin sijoitetut kooditiedot siirretään kuitenkin paljolti suojaamattomina vertailulaitteeseen, jossa niitä verrataan syötettyihin valvontatietoihin.However, in the above-mentioned switching arrangements, the code data placed in the data memory is transferred in a largely unprotected manner to the reference device, where it is compared with the input control data.

Il 3 100068Il 3 100068

Erikoisesti kun kooditietojen ja käyttäjän syöttämien valvontatietojen vertailua varten on vertailulaite ja kooditiedot siirretään tälle vertailulaittee1le, esimerkiksi komparaattorille, tiedonsiirtolaitteen, kuten esim. tietojohdon tai tietoväylän välityksellä, kooditiedot voidaan lukea tästä tiedonsiirtolaitteesta. Edellä mainittu tiedonsiirtolaite voi sisältää erikoisesti tietomuistin sarakejohtimet sekä sarakede-kooderin ja tietoväylän.In particular, when there is a reference device for comparing the code data and the user-entered control data, and the code data is transmitted to this reference device 1, e.g. a comparator, via a communication device such as a data line or data bus, the code information can be read from this communication device. In particular, the above-mentioned communication device may include column conductors of the data memory, as well as a column encoder and a data bus.

EP-hakemusjulkaisussa 0 207 320 esitetty integroitu piiri sisältää haihtumattoman kooditietomuistin, joka on etenkin EE-PROM-tyyppiä ja johon on tallennettu salainen koodi. Tämä kooditietomuisti on yhdistetty tietoväylän välityksellä ver-tailupiirin yhteen tuloon syötettävien valvontatietojen vaikuttaessa piirin toiseen tuloon. Koodimuistin lähtö tai tieto-väylä on tällöin varustettu logiikkapiirin ohjaamalla estopii-rillä siten, että muistisolujen lähdöt, yleensä muistikentän sarakejohtimet, ovat normaalitilassa oheislogiikan suhteen estettyinä. Esto poistetaan vain siksi lyhyeksi aikaväliksi, jona salaisia tietoja tarvitaan tosiasiallisesti oheislogii-kaesa tietojen vertailua varten. Kooditietojen analysoinnin mahdollisuus rajoittuu siten lyhyeen aikaväliin, mutta ei ole ehdottomasti poissuljettu. Eston ollessa aktivoituna kooditie-tomuistin suojattavat lähtöjohtimet ovat erikoisesti kytkettyinä määrättyyn potentiaaliin tallennetusta informaatiosta r i ippumatta.The integrated circuit disclosed in EP-A-0 207 320 contains a non-volatile code data memory, in particular of the EE-PROM type, in which a secret code is stored. This code data memory is connected via a data bus to one input of the control circuit when the control data to be input affects the other input of the circuit. The output or data bus of the code memory is then provided with a blocking circuit controlled by a logic circuit so that the outputs of the memory cells, usually the column conductors of the memory field, are normally blocked with respect to the peripheral logic. The block is removed only for the short period of time during which the confidential information is actually needed for the purpose of comparing the data. The possibility of analyzing the code data is thus limited to the short term, but is not absolutely ruled out. When the inhibit is activated, the output lines to be protected in the code data memory are specially connected to a certain potential without falling out of the stored information.

Mahdollisten analyysiyritysten lukumäärän rajoittamiseksi edelleen kooditietomuistin käytön aloitus tallennetaan kir-joituetoimitukeella laskentamuistiin, jota osoitetaan yhdessä asianomaisen koodisanan kanssa. Tämä laskentamuisti palautetaan vasta, kun kooditietoja vastaavat valvontatiedot annetaan virheettömästi ja tarkastustoimitus on suoritettu. Las-kentamuistin laajuus määrää tämän vuoksi virheellisten käyttö-yritysten lukumäärän. Ylimääräinen tunnistusmuisti tunnistaa 100068 4 kooditietomuietin muodostavat tietomuietin solut, niin että käytöneeto rajoittuu vain tähän alueeseen.In order to further limit the number of possible analysis attempts, the start of the use of the code data memory is stored in the calculation memory, which is assigned together with the relevant codeword, with the help of the written delivery support. This calculation memory is not restored until the control data corresponding to the code data is entered correctly and the check operation is completed. The amount of calculation memory therefore determines the number of invalid access attempts. The additional authentication memory identifies the data cells constituting the 100068 4 code data memory so that the usage is limited to this area only.

Tässä hakemus julkaisussa selitetty piiri tosin rajoittaa ajallisesti kooditietojen antamista kooditietomuistista tieto-väylälle, tämä kuitenkin vain vaikeuttaa kaikkien kooditieto-jen analyysiä mutta ei estä sitä.Although the circuit described in this application limits the provision of code information from the code information memory to the data bus in time, this only complicates the analysis of all code information but does not prevent it.

Keksinnön tehtävänä on esittää menetelmä tietomuistiin sijoitettujen salaisten kooditietojen suojaamiseksi ehdottomasti analyys i1tä.The object of the invention is to present a method for protecting secret code information stored in a data memory from absolute analysis.

Tämä tehtävä ratkaistaan patenttivaatimuksen 1 tunnusmerkki-osan mukaisella menetelmällä sekä patenttivaatimuksen 6 tun-nusmerkkiosan mukaisella integroidulla piirillä.This object is solved by a method according to the characterizing part of claim 1 and by an integrated circuit according to the characterizing part of claim 6.

Tietomuistiin sijoitettuja salaisia kooditietoja, joita verrataan vertailulaitteen avulla syötettyihin valvontatietoihin ja jotka on tätä varten johdettava tietomuistin lähdöstä tiedonsiirtolaitteen välityksellä vertailulaitteeseen, voidaan analysoida, kun ne esiintyvät tiedonsiirtolaitteessa. Tällainen analysointi voidaan estää siten, että tietojen vertailun käynnistämisen jälkeen tietojensiirtolaitteelle ei anneta kaikkia salaisia kooditietoja tietomuistista, vaan että keksinnön mukaan ensimmäinen kooditietoja vastaamattoman valvontatiedon syöttö aktivoi estopiirin, joka estää kooditietojen tiedonsiirtolaitteelle antamisen jatkumisen.The secret code information stored in the data memory, which is compared with the control data entered by the reference device and which must be derived from the output of the data memory via the communication device to the reference device, can be analyzed when present in the communication device. Such an analysis can be prevented so that after starting the data comparison, not all secret code information from the data memory is given to the communication device, but according to the invention, the first input of control information not matching the code information activates a blocking circuit preventing the code communication from continuing to be provided.

Erityisen edullista on, että myös täydellisen koodin muodostavien kaikkien kooditietojen oikean tietovertailun päättämisen jälkeen estetään kooditietojen muistista tiedonsiirtolaitteelle antamisen jatkuminen.It is particularly advantageous that, even after the correct data comparison of all the code data constituting the complete code has been completed, the transmission of the code data from the memory to the data transmission device is prevented.

Kooditietojen antaminen muistista tiedonsiirtolaitteelle tulisi edullisesti sallia vasta sen jälkeen, kun vertailutoimi-tue on rekisteröity, esimerkiksi laskuribitin kirjoituksella.The provision of code information from the memory to the communication device should preferably only be allowed after the comparison operation has been registered, for example by writing a counter bit.

Il 5 100068Il 5 100068

Joe rekisteröinti tapahtuu laekuribitin kirjoituksella, eteen-kytketyllä logiikalla voidaan lisäksi varmistaa, että kirjoitettua laskuribittiä ei oltu vielä kirjoitettu. Mainittua, erikoisesti laekuribitin kirjoituksella suoritettua rekisteröintiä voidaan käyttää sekä kaikkien suoritettujen käyttöyritysten pysyvään rekisteröintiin että myös virheellisten käyttöyritysten rekisteröintiin. Jos rekisteröinti on suoritettava virhelaekuria käyttämällä, tällöin on erikoisesti varmistettava logiikkapiirillä, että virhelaskuri voidaan palauttaa oikein suoritetun tietojen vertailun jälkeen.Joe's registration is done by writing the box bit, the forward-connected logic can also be used to ensure that the written counter bit had not yet been written. Said registration, in particular by writing a box bit, can be used both for the permanent registration of all attempted user attempts and for the registration of invalid user attempts. If the registration has to be performed using an error logger, then in particular the logic circuit must ensure that the error counter can be reset after a correctly performed data comparison.

Menetelmän varmuutta voidaan edelleen parantaa siten, että myös kooditietojen ollessa tallennettu tavuittain ne annetaan sarjamuodossa tietoväylälle ja niitä verrataan biteittäin valvontatietoihin. Heti kun ensimmäinen valvontabitti ei vastaa vastaavaa koodibittiä, eeuraavan koodibitin antaminen tiedonsiirtolaitteelle estetään.The reliability of the method can be further improved by providing the code data, even if stored in bytes, in serial form on the data bus and comparing it bit by bit with the monitoring data. As soon as the first monitoring bit does not correspond to the corresponding code bit, the assignment of the next code bit to the communication device is prevented.

Jos käytetään virhelaskuria virheellisten valvontatietojen laskemiseksi, jolloin jokainen virheellinen valvontatietojen syöttö vaatii keksinnön mukaan tietojen vertailun uuden käynnistämisen, tällöin on varmuussyistä edullista, että vertailujaksossa tarvittavien vertailutoimitusten lukumäärä on mahdollisimman suuri virheellisten valvontatietojen syöttökerto-jen suurimpaan sallittuun lukumäärään verrattuna. Vertailujaksossa tarvittavien vertailutoimitusten lukumäärän on kuitenkin oltava ainakin suurempi kuin virheellisten valvontatietojen syöttökertojen suurin sallittu lukumäärä.If an error counter is used to calculate erroneous control data, whereby each erroneous control data input requires a new start of data comparison according to the invention, then for safety reasons it is advantageous that the number of comparison operations required in the comparison period is as large as possible. However, the number of comparative submissions required during the reference period shall be at least greater than the maximum number of incorrect control data entries.

Kuvio esittää lohkokaaviokuvan muodossa keksinnön mukaisen suojausmenetelmän keksinnön mukaisesti toteuttavan integroidun piirin erityisen edullista suoritusmuotoa.The figure shows in the form of a block diagram a particularly preferred embodiment of an integrated circuit implementing the protection method according to the invention.

Tällöin lohko 1 esittää tiedonta1lennuslaitetta, joka sisältää ainakin yhden kooditietomuistin la ja voi erikoisesti sisältää tunnistusmuistin. Lohko 2 sisältää vapautuslaskurin, 6 100068 joka voidaan tehdä erikoisesti virhelaskuriksi, ja se aktivoidaan vertailujakson ohjaamiseksi, erikoisesti vapaa lasku-ribitti kirjoittamalla. Lohko 3 sisältää valvontalogiikkapii-rin, joka valvoo, onko vapautus laskurin 2 laskuribitti aikaisemmin kirjoittamaton ja onko se nyt kirjoitettu, ja joka tässä tapauksessa antaa vastaavan vapautussignaalin edelleen keksinnön mukaiselle esto 1ogiikkapiiri1le 9. Lohko 4 sisältää estopiirin, jonka tarkoituksena on estää kooditietomuistin kooditietojen antaminen tiedonsiirtolaitteelle 6 ja joka aktivoidussa tilassa erikoisesti asettaa kooditietomuistin tie-tolähdöt tai niihin kytketyt tietojohtimet kiinteään potentiaaliin. Lohko 5 sisältää vertailulaitteen, joka vertaa tuloon 7 syötettyjä valvontatietoja tiedonsiirtolaitteella 6 esiintyviin kooditietoihin ja antaa vertailutuloksia vastaavat tiedot lähtöön 8. Lohkojen 1, la, 2, 3, 4 ja 5 sisältämien piirien ja tiedonsiirtolaitteen 6 toteutusmuotoja ja niiden toimintatapoja on selitetty EP-hakemusjulkaisussa EP-0 207 320.In this case, block 1 shows an information flight device which contains at least one code information memory 1a and may in particular contain an identification memory. Block 2 contains a release counter, 6 100068 which can be made in particular as an error counter, and is activated to control the reference period, in particular by writing a free counting limit. Block 3 includes a control logic circuit which monitors whether the counter bit of the release counter 2 was previously unwritten and whether it is now written, and which in this case provides a corresponding release signal to the blocking logic circuit 9 according to the invention. Block 4 includes a blocking circuit for preventing code information from transmitting code information 6 and which, in the activated state, in particular sets the data outputs of the code data memory or the data cables connected thereto to a fixed potential. Block 5 contains a comparison device which compares the control data input to input 7 with the code information present in the communication device 6 and outputs data corresponding to the comparison results to output 8. Embodiments of circuits and communication device 6 contained in blocks 1, 1a, 2, 3, 4 and 5 are described in EP -0 207 320.

Monoliittisesti integroitavan elektronisen piirin tapauksessa, jossa kooditietomuisti la on kytketty estopiirin 4 ja tiedonsiirtolaitteen 6 välityksellä vertailulaitteen 5 tuloon, jolloin tässä vertailulaitteessa 5 on toinen tulo 7 sekä vertai-lutulokset antava lähtö 8, enempien kooditietojen antaminen tietojenkäsittelylaitteelle 6 estetään siten, että keksinnön mukainen esto1ogiikkapiiri 9 aktivoi estopiirin 4 lähdön 8 ensimmäisen negatiivisen vertailutuloksen perusteella.In the case of a monolithically integrated electronic circuit, where the code information memory 1a is connected via an inhibiting circuit 4 and a communication device 6 to the input of a comparator 5, this comparator 5 has a second input 7 and a comparator output 8, the transmission of more code information to the data processing device 6 is prevented. activates the output 8 of the blocking circuit 4 based on the first negative comparison result.

Tällaisessa piirissä kooditietojen antamisen kooditietomuis-tista la tiedonsiirtolaitteelle 6 mahdollistaa edullisesti estoiogiikkapiiri 9 aikaisemmin vapaan vapautuslaskuribitin kirjoittamisen jälkeen kytkemällä estopiiri 4 pois toiminnasta .In such a circuit, the transmission of code information from the code information memory 1a to the communication device 6 is preferably enabled by the blocking circuit 9 after writing the previously free release counter bit by disabling the blocking circuit 4.

Erityisen edulliseksi on osoittautunut, että estologiikkapii-ri 9 sisältää poiskytkentä1ogiikkapiirin 10, joka oikeiden n 7 100068 valvontatietojen ja koko koodin kooditietojen vertailun jälkeen aikaansaa estopiirin 4 aktivoinnin. Koska tämän poiskyt-kentä1ogiikkapiirin 10 lähdössä 8a oleva signaali on riippuvainen täydellisesti oikeasta valvontatietojen syöttämisestä, sitä voidaan myös käyttää virhelaskurin palauttamiseen ja vertailulaitteen 5 lähdössä 8 olevan signaalin lisäksi koko suojauspiirin vapautussignaa1ina. Poiskytkentälogiikkapiiri 10 sisältää edullisesti laskurin, joka palautetaan estopiiri 4 tai vapautuslaskuri 2 aktivoitaessa, joka jokaisen vertailu-laitteen 5 oikean tietovertailun tapauksessa laskee eteenpäin ykkösellä ja viimeisen koodibitin vertailun jälkeen aktivoi estopi irin.It has proved to be particularly advantageous that the blocking logic circuit 9 comprises a switch-off logic circuit 10 which, after comparing the correct control data of the n 7 100068 and the code data of the whole code, causes the activation of the blocking circuit 4. Since the signal at the output 8a of this off-field logic circuit 10 is completely dependent on the correct input of the monitoring data, it can also be used to reset the error counter and in addition to the signal at the output 8 of the comparator 5 as a release signal for the entire protection circuit. The switch-off logic circuit 10 preferably includes a counter which is reset when the blocking circuit 4 or the release counter 2 is activated, which, in the case of a correct data comparison of each comparator 5, counts down by one and after the last code bit comparison activates the blocking circuit.

Seuraavassa selitetään keksinnön mukaisen piirin toimintaa kuviossa esitetyn erityisen edullisen suoritusmuodon avulla.In the following, the operation of the circuit according to the invention will be explained by means of a particularly preferred embodiment shown in the figure.

Valvontalogiikkapiiri 3 valvoo kirjoitetaanko aikaisemmin kirjoittamaton vapautuslaskurin 2 laskuribitti. Tämän ohjaus-logiikkapiirin 3 lähtö on yhdistetty esto1ogiikkapiiriin 9 sisältyvän RS-kiikun 12 asetustuloon. Vapautuslaskurin 2 las-kuribitin oikean kirjoittamisen jälkeen tämä kiikku 12 asetetaan. Tämän kiikun 12 invertoitu lähtö QN on yhdistetty esto-piirin 4 ohjaustuloon ja se asettaa estopiirin toimimattomaksi, kun kiikku asetetaan. Estopiiri 4 sisältää erikoisesti jokaista tietojohdinta varten kytkimen T, joka estopiirin 4 ollessa aktivoituna asettaa tämän tietojohtimen kiinteään potentiaaliin. Eräs toinen estopiirin 4 keksinnön mukainen suoritusmuoto toteutetaan siten, että kooditietomuistin la sara-kekooderi kytketään estopiiriin 4 aktivoidussa tilassa johtavaksi kaikille sarakkeille. Tämän seurauksena kaikki koodi-tietomuietin la lähdöt ovat rinnan eikä kooditietojen suojattavan informaation ja tiedonsiirtolaitteella 6 olevan informaation välinen rinnastus ole mahdollista. Jos estopiiri 4 de-aktivoidaan, kooditiedot voidaan siirtää kooditietomuistista la biteittäin tai tavuittain tiedonsiirtolaitteen 6 välityksellä vertailulaitteen 5 ensimmäiseen tuloon. Vertailulaite 5, 8 100068 joka voi muodostua erikoisesti tunnetunka1taisesta komparaattorista, vertaa ensimmäisessä tulossaan esiintyviä kooditie-toja vastaaviin toiseen tuloonsa 7 syötettyihin valvontatietoihin ja antaa vertailutuloksen edullisesti sarjamuotoisesti lähdöstään 8.The control logic circuit 3 monitors whether the previously unwritten counter bit of the release counter 2 is written. The output of this control logic circuit 3 is connected to the setting input of the RS flip-flop 12 included in the blocking logic circuit 9. After the correct count of the count counter of the release counter 2, this flip-flop 12 is set. The inverted output QN of this flip-flop 12 is connected to the control input of the blocking circuit 4 and disables the blocking circuit when the flip-flop is set. In particular, the blocking circuit 4 includes a switch T for each data line, which, when the blocking circuit 4 is activated, sets this data line to a fixed potential. Another embodiment of the blocking circuit 4 according to the invention is implemented in such a way that the Sara encoder of the code information memory 1a is connected to the blocking circuit 4 in the activated state to lead to all columns. As a result, all the outputs of the code information message 1a are in parallel, and it is not possible to align the code information between the information to be protected and the information on the communication device 6. If the blocking circuit 4 is de-activated, the code data can be transferred from the code data memory la bits or bytes via the data transmission device 6 to the first input of the comparison device 5. The comparison device 5, 8 100068, which may consist of a particularly known comparator, compares the code information present in its first input with the corresponding monitoring data input to its second input 7 and gives the comparison result preferably in series from its output 8.

Jos kooditiedot ja valvontatiedot ovat identtisiä, vertailun tapahtuessa edullisesti biteittäin, vertailulaitteen 5 lähdön 8 ohjaama estologiikkapiiri 9 asettaa estopiirin 4 estotilaan vain silloin, kun kyseinen tietovertailu on vertailujakson viimeinen tietovertailu, ts. kun viimeisellä oikealla tieto-vertailulla koko koodi on tullut vertailluksi oikeisiin valvontatietoihin. Tämä saavutetaan esimerkiksi siten, että oikean tietovertailun jokaisella vertailutuloksella laskuripii-ri 10 laskee eteenpäin ykkösen, että tämä laskuripiiri 10 palautetaan vertailujakson alussa, mikä voidaan aikaansaada muun muassa estopiirin 4 aktivoivan ohjaussignaalin suorittamalla laskuripiirin 10 palautuksella, ja että laskuripiiri 10 antaa koodia vastaavien vertailutoimitusten kokonaislukumäärää vastaava laskurin tila saavutettaessa lähtöönsä 8a signaalin, joka aikaansaa estopiirin 4 aktivoinnin. Laskuripii-rinä 10 voi keksinnön mukaan myös toimia integroidussa piirissä joka tapauksessa olemassa oleva osoitelaskuri. Tällaisen laskurin moninaiskäyttö säästää sirun pinta-alaa.If the code data and the control data are identical, preferably comparing bit by bit, the blocking logic circuit 9 controlled by the output 8 of the comparator 5 sets the blocking circuit 4 to the blocking state only when the data comparison is the last data comparison of the comparison period, i.e. when the last correct data comparison has compared the whole code. This is achieved, for example, by each comparison result of the correct data comparison, the counter circuit 10 advances by one, that this counter circuit 10 is reset at the beginning of the comparison period, which can be achieved, for example, by a counter circuit 10 activation signal by the blocking circuit 4, and that the counter circuit 10 the state of the counter upon reaching its output 8a a signal which causes the activation of the blocking circuit 4. According to the invention, the counter circuit 10 can also in any case be an address counter existing in the integrated circuit. Multiple use of such a counter saves chip area.

Tätä laekuripiirin 10 lähdössä 8a olevaa signaalia voidaan myös käyttää virhelaskurina toimivan vapautuslaskurin 2 pa-lautussignaalina sekä koodisuojauspiirin vapautussignaalina. Tämä vapautuseignaa1i voi vapauttaa jonkin suojattavan toiminnan ja se voi myös mahdollistaa esimerkiksi mikroprosessorin sisältämän CPU:n vapauttamisen, etenkin ohjelmadekooderin tai tietodekooderin vapauttamisen.This signal at the output 8a of the receiver circuit 10 can also be used as a return signal of the release counter 2 acting as an error counter and as a release signal of the code protection circuit. This release signal can release a function to be protected and can also allow, for example, the release of the CPU contained in the microprocessor, in particular the release of a program decoder or a data decoder.

Jos kooditiedot eroavat vastaavista valvontatiedoista, jo vertailulaitteen 5 ensimmäinen eroavien tietojen vertailutoi-mitus aikaansaa estopiirin 4 aktivoinnin.If the code information differs from the corresponding control information, already the first comparison operation of the different information of the comparison device 5 causes the blocking circuit 4 to be activated.

Il 9 100068Il 9 100068

Estopiirin 4 aktivointi poiekytkentälogiikkapiirin 10 lähtö-signaalilla seka vertailulaitteen 5 lähtöeignaalilla negatiivisen tietovertailun esiintyessä voidaan keksinnön mukaan toteuttaa etenkin siten, että vertailulaitteen 5 lähtö 8 on kytketty logiikkaportin 11 toiseen tuloon ja poiskytkentä-logiikkapiirin 10 lähtö 8a on kytketty tämän logiikkaportin 11 toiseen tuloon ja että tämän logiikkaportin 11 lähtöeig-naalia käytetään estologiikkapiirin 9 sisältämän kiikun 12 palautustulon ohjaamiseen.According to the invention, activation of the blocking circuit 4 by the output signal of the switch-off logic circuit 10 and the output signal of the comparator 5 in the presence of negative data comparison can be realized in particular by connecting the output 8 of the comparator 5 to the second input of the logic gate 11 and the output 8a of the the output terminal of the logic gate 11 is used to control the return input of the flip-flop 12 contained in the estology logic circuit 9.

Jos estopiiri 4 on aktivoitava ylemmän tasoisen signaalin esiintyessä vertailulaitteen 5 lähdössä 8 ja poiskytkentä-logiikkapiirin 10 lähdössä 8a, logiikkaportin 11 toiminnan toteuttaa esimerkiksi tai-portti.If the blocking circuit 4 has to be activated when a higher level signal is present at the output 8 of the comparator 5 and at the output 8a of the switch-off logic circuit 10, the operation of the logic gate 11 is implemented, for example, by the or gate.

Claims (5)

100068100068 1. Menetelmä täydellisen salaisen koodin oikeudettoman lukemisen estämiseksi, joka koodi koostuu tietystä määrästä koodit ietoyksiköitä ja on tallennettuna kooditietomuistiin (la), joka kooditietomuisti on liitetty tiedonsiirtovälineen (6) välityksellä vertailuvälineen (5) ensimmäiseen tuloon, jonka vertailuvälineen (5) toiseen tuloon johdetaan valvontatietoja ja jonka vertailuvälineen (5) lähtö ohjaa sulkulogiikan (9) välityksellä sulkukytkintä (4), tunnettu siitä, että siinä - johdetaan mainitun täydellisen salaisen koodin ensimmäinen kooditietoyksikkö mainitusta kooditietomuistista (la) mainitun tiedonsiirtovälineen (6) välityksellä mainittuun vertai-luvälineeseen (5), - verrataan mainitussa vertailuvälineessä (5) mainittua ensimmäistä kooditietoyksikköä sitä vastaavaan ensimmäiseen valvontatietoyksikköön, - jos mainittu ensimmäinen kooditietoyksikkö havaitaan samanlaiseksi kuin mainittu ensimmäinen valvontatietoyksikkö, johdetaan mainitusta kooditietomuistista (la) samalla tavalla toinen kooditietoyksikkö ja verrataan sitä vastaavaan toiseen valvontatietoyksikköön, ja - jos jokin kooditietoyksikkö havaitaan vertailussa erilaiseksi kuin sitä vastaava valvontatietoyksikkö, estetään enem-pien kooditietojen lukeminen mainitusta kooditietomuistista (la) signaalilla, jonka mainittu vertailuväline (5) toimittaa mainitun sulkulogiikan (9) välityksellä mainitulle sulkukyt-kimelle (4).A method for preventing unauthorized reading of a complete secret code, which code consists of a certain number of code information units and is stored in a code information memory (1a) connected to a first input of a comparison means (5) by means of a communication means (6). and whose output of the comparison means (5) controls the closing switch (4) via the closing logic (9), characterized in that - a first code information unit of said complete secret code is passed from said code information memory (1a) to said reference means (5) via said communication means (6), - comparing said first code information unit in said comparison means (5) with its corresponding first control information unit, - if said first code information unit is found to be similar to said first control information unit, the main the second code information unit in the same way and comparing it with the corresponding second control information unit, and - if a code information unit is found to be different in comparison from the corresponding control information unit, preventing more code information from being read from said code information memory (1a) by said signal via shut-off logic (9) to said shut-off switch (4). 2. Patenttivaatimuksen 1 mukainen menetelmä, tunnettu siitä, että sen jälkeen, kun kaikki mainitun täydellisen salaisen *: koodin kooditietoyksiköt on vertailussa havaittu samanlaisik si kuin vastaavat valvontatietoyksiköt, enempien tietojen lukeminen mainitusta kooditietomuistista (la) mainitun tiedonsiirtovälineen (6) välityksellä estetään.A method according to claim 1, characterized in that after all the code information units of said complete secret * code are found in the comparison to be similar to the corresponding control information units, further reading of said code information memory (1a) via said communication means (6) is prevented. 3. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, tunnettu siitä, että tietojen lukeminen mainitusta kooditietomuistista il 100068 (la) mainitun tiedonsiirtovälineen (6) välityksellä on mahdollista vain, jos tietty laskuribitti on asetettu oikein.Method according to claim 1 or 2, characterized in that the reading of data from said code data memory il 100068 (1a) via said communication means (6) is possible only if a certain counter bit is set correctly. 4. Patenttivaatimuksen 1, 2 tai 3 mukainen menetelmä, tunnettu siitä, että mainitut kooditietoyksiköt johdetaan mainitusta kooditietomuistista (la) sarjamuotoista dataväylää (6) käyttäen.Method according to claim 1, 2 or 3, characterized in that said code information units are derived from said code information memory (1a) using a serial data bus (6). 5. Jonkin edellisen patenttivaatimuksen mukainen menetelmä, tunnettu siitä, että sen yhteyteen on lisäksi järjestetty vir-helaskurivälineet (2) virheellisten valvontatietojen syöttö-kertojen laskemista varten ja että mainittujen virhelaskurivä-lineiden välityksellä rajoitetaan mahdollisten virheellisten valvontatietojen syöttökertojen lukumäärää ja että niiden ver-tailukertojen lukumäärä, jotka tarvitaan kaikkien mainittujen kooditietoyksiköiden vertaamiseksi vastaaviin valvontatietoyk-siköihin on suurempi kuin mainittujen mahdollisten virheellisten valvontatietojen syöttökertojen lukumäärä.Method according to one of the preceding claims, characterized in that error counting means (2) for calculating erroneous control data input times are further provided in connection with it, and that the number of possible erroneous control data inputs and the number of comparison times are limited via said error counter means. , which is required to compare all said code data units with the corresponding control data units is greater than the number of possible entries of said erroneous control data.
FI890900A 1988-02-25 1989-02-24 A method for protecting secret code information stored in a data memory and a switching arrangement for performing the method FI100068B (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
FI890900A0 FI890900A0 (en) 1989-02-24
FI890900A FI890900A (en) 1989-08-26
FI100068B true FI100068B (en) 1997-09-15

Family

ID=6348186

Family Applications (1)

Application Number Title Priority Date Filing Date
FI890900A FI100068B (en) 1988-02-25 1989-02-24 A method for protecting secret code information stored in a data memory and a switching arrangement for performing 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
ES2077566T3 (en) 1995-12-01
DE58909440D1 (en) 1995-10-26
DK728088D0 (en) 1988-12-29
DK728088A (en) 1989-08-26
ATE128258T1 (en) 1995-10-15
DK169883B1 (en) 1995-03-20
FI890900A (en) 1989-08-26
EP0329966B1 (en) 1995-09-20
FI890900A0 (en) 1989-02-24

Similar Documents

Publication Publication Date Title
US4295041A (en) Device for the protection of access to a permanent memory of a portable data carrier
US4439670A (en) Method and device for the checking of the number of access attempts to an electronic store, notably that of an integrated circuit of an object such as a credit card or a buyer&#39;s card
AU673900B2 (en) Key protection for smart cards
US5014311A (en) Integrated circuit with an access-controlled data memory
US4572946A (en) Credit card circuit arrangement with a memory and an access control unit
US5237609A (en) Portable secure semiconductor memory device
EP0297209B1 (en) Data card circuits
US5504701A (en) Memory card
KR900006733B1 (en) System for permitting access to data field area in ic card for multiple services
JPH087780B2 (en) Data carrier for storing and processing data
RU2254608C2 (en) Method for protecting program execution process
US5177790A (en) Method for generating a random number in a data processing system/and system for implementing the method
JPS63788A (en) Portable electronic equipment
US7246375B1 (en) Method for managing a secure terminal
JPH04263384A (en) Method and apparatus for reinforcing protection of chip card
JP2739643B2 (en) Integrated circuit with anti-fraud device for secretly storing and processing information
US4819204A (en) Method for controlling memory access on a chip card and apparatus for carrying out the method
US20060221718A1 (en) Memory module and memory system having data protection function, and method for controlling the memory module
JPS62190584A (en) Portable electronic device
US5296687A (en) Method of ratifying secret codes for memory cards
US4712177A (en) Circuit for a cord carrier having a memory and an access control unit for secure data access
US5286962A (en) IC card for prevention of fraudulent use
JPH06502032A (en) How to distribute integrated circuit memory between multiple applications
FI100068B (en) A method for protecting secret code information stored in a data memory and a switching arrangement for performing the method
RU2468428C2 (en) Method for protection of programme execution

Legal Events

Date Code Title Description
FG Patent granted

Owner name: SIEMENS AKTIENGESELLSCHAFT

MM Patent lapsed

Owner name: SIEMENS AKTIENGESELLSCHAFT