FI116172B - Installation of software for integrated circuits - Google Patents

Installation of software for integrated circuits Download PDF

Info

Publication number
FI116172B
FI116172B FI20002609A FI20002609A FI116172B FI 116172 B FI116172 B FI 116172B FI 20002609 A FI20002609 A FI 20002609A FI 20002609 A FI20002609 A FI 20002609A FI 116172 B FI116172 B FI 116172B
Authority
FI
Finland
Prior art keywords
program
secret
key
microcircuit
installation
Prior art date
Application number
FI20002609A
Other languages
Finnish (fi)
Swedish (sv)
Other versions
FI20002609A0 (en
FI20002609A (en
Inventor
Lauri Paatero
Original Assignee
Setec Oy
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 Setec Oy filed Critical Setec Oy
Priority to FI20002609A priority Critical patent/FI116172B/en
Publication of FI20002609A0 publication Critical patent/FI20002609A0/en
Priority to AU2002218339A priority patent/AU2002218339A1/en
Priority to PCT/FI2001/001033 priority patent/WO2002044995A2/en
Publication of FI20002609A publication Critical patent/FI20002609A/en
Application granted granted Critical
Publication of FI116172B publication Critical patent/FI116172B/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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data

Description

116172116172

Ohjelmien asennus mikropiirille Tämän keksintö liittyy ohjelmien asentamiseen mikropiirille sellaisella tavalla, että mikropiirille tulee asennetuksi yksinomaan ne ohjelmat, jotka 5 sen valmistuttaja on halunnut piirille asentaa. Keksintö soveltuu hyödynnettäviksi sellaisissa kohteissa, joissa tietoturvallisuus ohjelmien asennusvaiheessa on ensiarvoisen tärkeää. Seuraavassa keksintöä tullaan esimerkinomaisesti selostamaan toimikorttien valmistukseen viittaamalla, vaikkakin on huomattava, että esillä olevaa keksintöä voidaan hyödyntää myös muissa yhteyksissä.This invention relates to the installation of software on a microcircuit in such a way that only the software that its manufacturer wanted to install on the microchip will be installed on the microchip. The invention is suitable for use in applications where information security is of paramount importance during the software installation phase. In the following, the invention will be described by way of example with reference to the manufacture of smart cards, although it should be noted that the present invention may also be utilized in other contexts.

10 Toimikorttien valmistus voidaan karkeasti jakaa kahteen eri vaihee seen, joista ensimmäisen muodostaa mikropiirin valmistaminen ja toisen tarvittavien ohjelmien asentaminen. Toimikortin kaltaisissä käyttökohteissa on erittäin tärkeää, että toimikortin valmistaja on täysin perillä niistä ohjelmista, jotka on asennettu valmiin toimikortin mikropiirille. Tämä sen vuoksi, että mikäli 15 jokin ulkopuolinen hyökkääjä on onnistunut asentamaan itse laatimansa ohjelman toimikortin mikropiirille saattaa esimerkiksi maksukorttina tai elektronisena henkilökorttina toimiva toimikortti tietyssä tilanteessa toimia yllättävällä tavalla, josta aiheutuu merkittävää vahinkoa. Näin ollen toimikorttien mikropiirit pyritään valmistamaan sellaisella tavalla, että ainoastaan juuri oikeat ohjelmat 20 saadaan asennettua mikropiirille.10 The manufacture of smart cards can be roughly divided into two stages, the first consisting of the manufacture of the integrated circuit and the second the installation of the necessary software. In applications such as a smart card, it is very important that the manufacturer of the smart card is fully aware of the software that is installed on the chip of the finished smart card. This is because if an outside attacker has successfully installed a program of his or her own design on a smart card chip, a smart card, such as a payment card or electronic identity card, may, in some circumstances, perform surprisingly and cause significant damage. Thus, it is sought to fabricate the ICs of the smart cards in such a way that only the right programs 20 can be installed on the IC.

Tunnetuissa ratkaisuissa mikropiirin valmistustapahtuma on jaettu ’ kahteen vaiheeseen, jolloin ensimmäisessä vaiheessa valmistetaan mikropiiri, jonka muistiin tallennetaan salainen asennusavain sekä asennusohjelma. Mik-ropiirien valmistus on käytännön syistä usein annettu ulkopuolisen alihankkijan : 25 tehtäväksi, jolloin kortin valmistuttaja luovuttaa alihankkijalle käyttöön mikropii- rin valmistuksessa käytettävän asennusavaimen ja asennusohjelman. Näin tollen samaa salaista asennusavainta ja asennusohjelmaa käytetään suuressa *" määrässä mikropiirejä.In the known solutions, the process of manufacturing the integrated circuit is divided into two stages, in which the first stage is the production of the integrated circuit, in which the secret installation key and the installation program are stored. For practical reasons, the manufacture of microcircuits has often been entrusted to an external subcontractor: 25, whereby the card manufacturer submits to the subcontractor the installation key and installation program used to manufacture the microcircuits. This way, the same secret installer and installer are used in a large number of * "integrated circuits.

Mikropiirin valmistuksen toisessa vaiheessa suoritetaan mikropiirien ·'·’ : 30 varsinaisten ohjelmien asennus sekä mikropiirikohtaisten salaisten avainten asennus. Ohjelmien asennukseen tarvitaan mikropiirin muistiin valmistuksen : yhteydessä tallennettua asennusavainta. Asennusavaimen avulla tuotetaan jokaiselle asennettavalle ohjelmalle tarkiste, jonka perusteella mikropiirin * » asennusohjelma voi tarkistaa, että kyseessä on autenttinen ohjelma. Mikropii-: **· 35 rin asennusohjelma suostuu asentamaan mikropiirille ainoastaan sellaisia oh- :,'*i jelmia, jotka mikropiirin asennusohjelma kykenee autentikoimaan salaisen 116172 2 asennusavaimen avulla. Mikäli asennusohjelma toteaa, että asennettava ohjelma on autenttinen sallii se ohjelman asentamisen mikropiirille. Ohjelman asennuksen (tai ohjelmien asennuksen) päätyttyä asennettu ohjelmaa käynnistyy ja alkaa toimia mikropiirillä.In the second step of the chip manufacturing process, the actual programs of the integrated circuits · '·': 30 and the installation of the secret keys specific to the integrated circuits are carried out. Installing the programs requires an integrated key stored at the time of manufacturing: the integrated circuit. The installation key is used to generate a check for each program that is installed, which allows the chipset * »to verify that it is an authentic program. Microcircuit: ** · The 35-chip installer agrees to install only those applications that can be authenticated to the integrated circuit using a secret 116172 2 installation key. If the installer determines that the software to be installed is authentic, it will allow the software to be installed on the integrated circuit. When the program installation (or software installation) is complete, the installed program starts and starts working with the integrated circuit.

5 Jotta turvallisuus voitaisiin maksimoida edellä selostetun kaltaises sa valmistusprosessissa on salainen asennusavain, joilla ohjelmalle voidaan tuottaa oikea tarkiste, erittäin harvan henkilön hallussa. Näin ollen ainoastaan nämä harvat ja valitut henkilöt voivat hyväksyä tietyn ohjelman asentamisen mikropiirille tuottamalla kyseiselle ohjelmalle ohjelmakohtaisen tarkisteen nii-10 den hallussa olevan salaisen asennusavaimen avulla.5 In order to maximize security in a manufacturing process such as the one described above, there is a very small number of people in possession of a secret installation key to produce the correct checksum for the program. Therefore, only a few and selected individuals can approve the installation of a particular program on the integrated circuit by generating a program-specific check for that program using a secret install key in their possession.

Eräs edellä selostettuun tunnettuun ratkaisuun liittyvä heikkous on se, että valmistajan omaan organisaatioon kuuluva henkilö on saattanut tahallisesti tai tahattomasti tehdä ohjelman, jonka avulla mikropiirin salainen asennusavain on luettavissa mikropiiristä kun kyseinen ohjelma on käynnistynyt 15 mikropiirillä. Koska kyseessä on oman organisaation palveluksessa olevasta henkilöstä saattaa tällaisen henkilön valmistama ohjelma saada autenttisen ohjelman tarkisteen sellaiselta henkilöltä, jolla on käytettävissään tähän tarvittava salainen asennusavain. Näin ohjelmalle syntyy tarkiste, jonka perusteella mikropiirin asennusohjelma tulee tunnistamaan sen autenttiseksi ohjelmaksi, 20 ja näin ollen sallimaan sen asentamisen ja käynnistämisen mikropiirillä. Tällaisesta mikropiiristä, josta salainen asennusavain on luettavissa, saattaa ai-\i ·' heutua erittäin merkittävää haittaa, koska kun ulkopuolinen henkilö on saanut salaisen asennusavaimen haltuunsa lukemalla sen mikropiiriltä on hänellä : mahdollisuus valmistaa sopivaksi katsomiaan ohjelmia ja tuottaa niille oikeat : 25 tarkisteet salaisella asennusavaimella. Näin ollen uusien valmistettavien mik- .···, ropiirien asennusohjelmat tulevat tulkitsemaan nämä ohjelmat autenttisiksi, ja !!! näin ollen sallimaan niiden asentamisen mikropiireille.One of the drawbacks of the known solution described above is that a person within the manufacturer's own organization may have intentionally or unintentionally made a program that reads a secret integrated circuit key from the integrated circuit when that program has started with 15 integrated circuits. Because it is a person employed by your own organization, a program made by such a person may have a genuine program validation from someone who has the secret installation key required for this purpose. This creates a checkpoint for the program to identify the IC chip as an authentic program 20 and thus allow it to be installed and run on the IC. This type of integrated circuit, which reads the secret installation key, can cause very significant disadvantage, because when an outside person has obtained the secret installation key by reading it from the integrated circuit, he / she has the ability to make the programs he / she deems appropriate and produce the correct ones. . Therefore, the new microprocessor microprocessor installers will interpret these programs as authentic, and !!! hence to allow their installation on the integrated circuits.

Tämän keksinnön tarkoitus on ratkaista edellä selostettuun tunnettuun ratkaisuun liittyvä heikkous, ja saada aikaan ratkaisu, joka entisestään :·'· *· 30 parantaa mikropiirien valmistukseen liittyvää tietoturvallisuutta. Tämä päämää- rä saavutetaan keksinnön mukaisella menetelmällä, ohjelmien asentamiseksi : mikropiirille, jossa menetelmässä: tallennetaan salainen asennusavain mikro- .···, piirin muistiin valmistuksen yhteydessä, tuotetaan asennettaville ohjelmille ohjelmakohtainen tarkiste salaisen asennusavaimen avulla, tarkistetaan oh-: " 35 jelmien asennuksen yhteydessä kunkin asennettavan ohjelman autenttisuus mikropiirin muistiin tallennetun salaisen asennusavaimen ja ohjelmakohtaisen 116172 3 tarkisteen avulla, ja sallitaan ohjelman asennus ainoastaan, jos kyseinen ohjelma tarkistuksen perusteella on autenttinen. Keksinnön mukaiselle menetelmälle on tunnusomaista, että poistetaan mikropiirin muistiin tallennettu salainen asennusavain kun ohjelmat on asennettu, ja käynnistetään asennetut oh-5 jelmat mikropiirillä salaisen asennusavaimen poistamisen jälkeen.The object of the present invention is to overcome the weakness of the known solution described above, and to provide a solution which further: · '· * · 30 improves the information security associated with the manufacture of integrated circuits. This object is achieved by the method of the invention for installing programs on: a microcircuit, the method of: storing a secret installation key in a microchip. ···, in manufacturing the circuit, generating a program-specific check for the programs to be installed with a secret installation key; authentication of each program to be installed by means of a secret installation key stored in the IC memory and program specific check 116172 3, and allowing the installation of the program only if the said program is authentic by authentication. installed programs with the integrated circuit after removing the secret installation key.

Keksinnön kohteena on lisäksi mikropiiri, joka käsittää muistin, johon on tallennettu salainen asennusavain, välineitä asennettavan ohjelman ja ohjelmakohtaisen tarkisteen vastaanottamiseksi ulkoiselta laitteistolta, ja prosessorin ennalta määrätyn asennusohjelman suorittamiseksi, joka asennus-10 ohjelma muistiin tallennetun salaisen asennusavaimen ja ohjelmakohtaisen tarkisteen perusteella tarkistaa onko asennettava ohjelma autenttinen, ja joka asentaa mainitun ohjelman mikäli ohjelma tarkisteen perusteella on autenttinen. Keksinnön mukaiselle mikropiirille on tunnusomaista, että mikropiiri on järjestetty poistamaan salaisen asennusavaimen muistista ennen asennusoh-15 jelman asentaman ohjelman käynnistämistä.The invention further relates to a microcircuit comprising memory for storing a secret installation key, means for receiving an install program and a program-specific check from an external hardware, and a processor for executing a predetermined installation program which checks a program to be installed based on a secret installation key and authentic, and who installs said program if the program is authentic based on the check. The microcircuit according to the invention is characterized in that the microcircuit is arranged to remove the secret installation key from memory before executing the program installed by the installer.

Keksintö perustuu siihen ajatukseen, että mikropiirien valmistuksesta ja ohjelmien asentamisesta saadaan entistä turvallisempaa, kun ohjelman asennuksessa tarvittava salainen asennusavain poistetaan mikropiirin muistista ennen asennetun ohjelman tai asennettujen ohjelmien käynnisty-20 mistä. Tällöin mikropiirin salainen asennusavain ei voi joutua ulkopuolisen käsiin edes vaikka mikropiirille olisi asennettu ohjelma, joka mahdollistaisi salaili’: sen asennusavaimen lukemisen mikropiirin muistista. Tämä sen vuoksi, että salainen asennusavain on tuhottu mikropiirin muistista jo ennen kuin sen lu-. kemisen mahdollistava ohjelma on käynnistynyt. Keksinnön mukaisen ratkai- : 25 sun merkittävin etu on näin ollen entisestään parantunut tietoturvallisuus, kos- ka edes mikropiirin valmistuttajan organisaatioon kuuluva henkilö ei voi toimin-nallaan saada aikaan tilannetta, jossa mikropiirin salainen avain olisi luettavis-**·* sa mikropiiriltä.The invention is based on the idea that manufacturing of integrated circuits and installation of programs is made more secure by removing the secret installation key required for installing the program from the memory of the integrated circuit before starting the installed program or programs. In this case, the microchip secret installation key cannot fall into the hands of an outsider, even if a program is installed on the microchip that would allow the secret key to be read from the microchip memory. This is because the secret installation key has already been deleted from the microchip memory before it was read. a program to enable boiling has started. The major advantage of the solution according to the invention is thus the further improved information security, since even a person within the organization of the chip manufacturer cannot, by its function, create a situation where the secret key of the chip is readable from the chip.

Eräässä keksinnön edullisessa suoritusmuodossa mikropiirille : 30 asennettavat ohjelmat luokitellaan ennalta määrättyihin luokkiin, jolloin jokai- • · t selle asennettavalle ohjelmalle määritellään luokkakoodi, joka tarkistetaan kun : asennuksen yhteydessä selvitetään onko kyseessä autenttinen ohjelma, ja [···’ jota hyödynnetään ohjelman asentamiseksi. Tämä keksinnön mukainen suo- '·' ritusmuoto auttaa ennaltaehkäisemään sellaisia tahallisia tai tahattomia vir- :’· 35 heitä, joita saattaa aiheutua ohjelman väärästä luokittelusta. Jos esimerkiksi * testikäyttöön suunniteltu ohjelma virheellisesti luokitellaan tuotantotason oh- 116172 4 jelmaksi, ja tämän jälkeen välitetään mikropiirille asennusta varten, yrittää mikropiirin asennusohjelma asentaa sen sellaisella tavalla kun tuotantotason ohjelmat tulee asentaa. Koska kyseessä tosiasiallisesti on testiohjelma, niin asennus epäonnistuu.In a preferred embodiment of the invention, the programs to be installed on the microcircuit: 30 are classified into predefined classes, whereby each program to be installed has a class code to be checked when: the installation is an authentic program and used to install the program. This embodiment of the invention helps to prevent intentional or unintentional errors that may be caused by misclassification of the program. For example, if a * test program is misclassified as a production-level program 116172 4 and then passed to the IC for installation, the IC installer will attempt to install it in the manner that the production-level programs should be installed. Because this is actually a test program, the installation fails.

5 Keksinnön mukaisen menetelmän ja mikropiirin edulliset suoritus muodot ilmenevät oheisista epäitsenäisistä patenttivaatimuksista 2 - 3 ja 5 - 6.Preferred embodiments of the method and circuit of the invention are set forth in the dependent claims 2 to 3 and 5 to 6.

Keksintöä selostetaan seuraavassa esimerkinomaisesti lähemmin viittaamalla oheisiin kuvioihin, joista: kuvio 1 esittää vuokaaviota keksinnön mukaisen menetelmän en- 10 simmäisestä edullisesta suoritusmuodosta, kuvio 2 havainnollistaa keksinnön mukaisen mikropiirin ensimmäistä edullista suoritusmuotoa, kuvio 3 havainnollistaa keksinnön mukaisen mikropiirin toista edullista suoritusmuotoa, ja 15 kuvio 4 havainnollistaa salaisten avainten tallennusta mikropiirin muistiin.Figure 1 illustrates a first preferred embodiment of a microcircuit according to the invention, Figure 3 illustrates a second embodiment of a microcircuit according to the invention, and Figure 2 illustrates a second preferred embodiment of a microcircuit according to the invention. storing secret keys in the IC chip.

Kuvio 1 esittää vuokaaviota keksinnön mukaisen menetelmän ensimmäisestä edullisesta suoritusmuodosta. Kuvion 1 vuokaaviota voidaan hyödyntää esimerkiksi ohjelmien asentamiseksi toimikortin mikropiirille.Figure 1 shows a flow chart of a first preferred embodiment of the method according to the invention. The flowchart of Figure 1 can be utilized, for example, to install programs on a smart card integrated circuit.

20 Lohkossa A mikropiirille tallennetaan asennusavain valmistuksen yhteydessä. Sama asennusavain tallennetaan usean mikropiirin muistiin vai-ν’·' mistuksen yhteydessä.20 In block A, the installation key is stored on the integrated circuit during manufacture. The same installation key is stored in the memory of multiple integrated circuits during the ν '·' runtime.

Lohkossa B tuotetaan ohjelmakohtainen tarkiste jokaiselle mikropii-: rille asennettavaksi tarkoitetulle ohjelmalle. Ohjelmakohtainen tarkiste voidaan : 25 tuottaa algoritmilla joka laskee ohjelmakoodin sekä salaisen asennusavaimen .···. perusteella tietyn tarkisteen. Näin ollen tarkiste ja ohjelmakoodi tulevat muo- lil dostamaan parin, joiden autenttisuus voidaan varmistaa asennusavaimen avulla.In block B, a program-specific check is provided for each program to be installed on the microcircuit. The program-specific checksum can be: 25 generated by an algorithm that computes the program code and the secret installation key. based on a particular review. Thus, the checksum and program code will form on the pair a pair whose authenticity can be verified by the installation key.

Lohkossa C tuotettu ohjelma sekä sen tarkiste syötetään mikropii-: 30 rille. Mikropiirin muistissa on tällöin sama algoritmi (asennusohjelman osa) se- kä sama salainen asennusavain, jolla tarkiste on tuotettu lohkossa B. Näin • ollen mikropiirin asennusohjelma kykenee tarkistamaan asennettavan ohjel- .···. man autenttisuuden, eli kyseessä on autenttinen ohjelma jos asennusohjel- / man salaisen asennusavaimen ja ohjelmakoodin perusteella suorittaman las- : ’’ 35 kuoperaation tulos vastaa tarkistetta.The program produced in block C, as well as its check, is fed to the microcircuit. The integrated circuit memory then has the same algorithm (part of the installer) and the same secret installation key used to generate the check in block B. Thus, the integrated circuit installer is able to check the software to be installed. man authenticity, that is, an authentic program if the result of the 35 operation performed by the installer / secret secret key and program code matches the check.

* * 116172 5* * 116172 5

Mikäli mikropiiri lohkossa D toteaa, että kyseessä ei ole autenttinen ohjelma keskeyttää sen asennusohjelma ohjelman asentamisen siirtymällä lohkoon F. Jos sitävastoin ohjelma on autenttinen suorittaa mikropiirin prosessori asennusohjelman mukaisen ohjelman asennuksen.If the microcircuit in block D states that it is not an authentic program, the installer program will be interrupted by moving to block F. If, on the other hand, the program is authentic, the microchip processor installer will install the program.

5 Lohkossa F mikropiiri tarkistaa onko jäljellä muita asennettavia oh jelmia. Jos ei ole poistaa se lohkossa G salaisen asennusavaimen muististaan. Tämän jälkeen mikropiiri käynnistää asennetut ohjelmat lohkossa H.5 In block F, the integrated circuit checks for other software to be installed. If not, delete it in block G from secret memory. The integrated circuit then starts the installed programs in block H.

Koska asennettujen ohjelmien käynnistys tapahtuu vasta lohkossa H sen jälkeen kun salainen asennusavain on poistettu lohkossa G, voidaan 10 ennalta ehkäistä sellainen tilanne, että jokin asennetuista ohjelmista olisi sellainen, että se mahdollistaa salaisen asennusavaimen lukemisen mikropiirin muistista. Tämä ei ole mahdollista kuvion 1 vuokaavion mukaisessa menetelmässä, koska salaista asennusavainta ei enää löydy mikropiirin muistista siinä vaiheessa kun asennettu ohjelma käynnistyy.Since the installed programs are only started in block H after the secret installation key has been removed in block G, it is possible to prevent one of the installed programs from allowing the secret installation key to be read from the IC chip. This is not possible in the method according to the flowchart of Fig. 1, because the secret installation key is no longer found in the IC chip when the installed program starts.

15 Kuvio 2 havainnollistaa keksinnön mukaisen mikropiirin ensim mäistä edullista suoritusmuotoa. Kuvion 2 tapauksessa on havainnollistettu kolmea toisistaan erillistä mikropiirin 4 tuotantovaihetta 1-3. Tällaista jakoa voidaan hyödyntää esimerkiksi toimikorttiin tulevien mikropiirien valmistuksessa, jolloin on erittäin tärkeää, että ainoastaan juuri oikeat ohjelmat tulevat 20 asennetuksi mikropiirille, jotta sen toiminta olisi kaikissa tilanteissa täysin ennakoitavissa. Esimerkiksi toimikortin valmistuksen yhteydessä jako voi olla : sellainen, että mikropiirit valmistetaan alihankkijalla, mikropiirien valmistuttaja : ‘ : tuottaa tarvittavat ohjelmat ja salaiset avaimet, ja ohjelmat sekä salaiset avai- : met asennetaan mikropiireille joko valmistuttajan tai jonkin kolmannen osa- • · · : 25 puolen toimesta.Figure 2 illustrates a first preferred embodiment of an integrated circuit according to the invention. In the case of Figure 2, three separate production steps 1-3 of the integrated circuit 4 are illustrated. Such a division can be utilized, for example, in the manufacture of integrated circuits on a smart card, whereby it is very important that only the right programs are installed on the integrated circuit so that its operation is fully predictable in all situations. For example, in the case of smart card manufacturing, the division may be: such that the microcircuits are manufactured by a subcontractor, the microcircuits manufacturer: 'provides the necessary programs and secret keys, and the programs and secret keys are installed on the microcircuits by either the manufacturer or a third party. through the agency of.

Ohjelmien tuotanto tapahtuu tuotantovaiheessa 1. Kuvion 2 tapauk-ϋ! sessa oletetaan, että tuotettaville mikropiireille on tarkoitus asentaa ohjelmat PROG1 ja PROG2. Näitä ohjelmia ei kuitenkaan haluta luovuttaa tuotantovaiheeseen 2, jossa mikropiirin varsinainen valmistus tapahtuu. Jos asennettavat ·’·— 30 ohjelmat luovutettaisiin tuotantovaiheeseen 2, jouduttaisiin tuotantovaiheen 2 turvallisuuteen kiinnittämään erittäin suurta huomiota, jotta voitaisiin olla var-• moja, että kukaan ulkopuolinen ei pääse muuttamaan asennettavia ohjelmia.The production of the programs takes place in the production phase 1. The case of FIG. 2! it assumes that the microcircuits to be produced are to be equipped with PROG1 and PROG2. However, it is not desired to transfer these programs to production stage 2, where the actual manufacturing of the integrated circuit takes place. If the · · · - 30 programs to be installed were handed over to production stage 2, the safety of production stage 2 would have to be very carefully addressed to ensure that • no outsider could modify the programs to be installed.

.···, Sen sijaan ohjelmien tuotannosta voidaan tuotantovaiheeseen 2 luovuttaa asennusohjelma INST sekä salainen asennusavain K1. Nämä tallennetaan ·’ *' 35 mikropiirin mekaanisen valmistuksen yhteydessä valmistettavien mikropiirien :.’i muistiin M. Kun mikropiiri 4 lähtee tuotantovaiheesta 2 kuuluu siihen ainakin 6 1 1 61 7 2 prosessori P ja yksi tai useampi muisti M, jolloin muistiin on tallennettu ohjelma tai ohjelmat jotka ovat välttämättömiä, jotta mikropiiri myöhemmin voisi vastaanottaa muita tietoja, kuten ohjelmia ja salaisia avaimia.··· Instead, program production can be handed over to production stage 2 by the INST installer and the secret installation key K1. These are stored in the memory of microcircuits manufactured in connection with the mechanical fabrication of 35 integrated circuits: When the microcircuit 4 departs from production step 2, it includes at least 6 1 1 61 7 2 processor P and one or more memory M, programs that are necessary for the integrated circuit to receive other information later, such as programs and secret keys.

Kun mikropiiri 4 on mekaanisesti valmis, ja sen muistiin M on tallen-5 nettu asennusohjelma INST sekä salainen asennusavain K1 siirretään se tuotantovaiheeseen 3, jossa suoritetaan ohjelmien PROG1 ja PROG2 asennus. Tämän mahdollistamiseksi mikropiiri liitetään siinä olevien nastojen (ei esitetty kuviossa) välityksellä ulkoiseen laitteistoon, kuten tietokoneen oheislaitteeseen. Jotta mikropiirin valmistuttaja voisi olla varma siitä, että mikropii-10 rille ei tuotantovaiheessa 3 tahallaan tai vahingossa asenneta vääriä ohjelmia on ohjelmien tuotannosta mikropiirin valmistukseen lähetetty asennusohjelma INST valittu sellaiseksi, että se asentaa mikropiirille 4 ainoastaan sellaisia ohjelmia jotka ovat autenttisia salaisen asennusavaimen K1 avulla suoritetun autentikoinnin perusteella.Once the microcircuit 4 is mechanically complete and the installation program INST and the secret installation key K1 stored in its memory M are transferred to production step 3, where the installation of the programs PROG1 and PROG2 is performed. To enable this, the microcircuit is connected via pins (not shown) to an external hardware such as a computer peripheral. In order to make sure that the chip manufacturer does not intentionally or inadvertently install any wrong software on the microcircuit in production step 3, the INST program sent from the program production to the microchip manufacture is selected to install only those that are authenticated using the secret installation key K1. by.

15 Mikropiirille asennettavien ohjelmien autentikointi tulee mahdolli seksi kun ohjelmien tuotannossa lasketaan ennalta määrättyä algoritmia, ohjelmakoodia PROG1 ja salaista asennusavainta K1 hyödyntämällä tarkiste T1 ohjelmalle PROG1. Vastaavasti ohjelmakoodille PROG2 lasketaan salaista asennusavainta K1 hyödyntämällä tarkiste T2. Algoritmi, jolla tarkisteet laske-20 taan on osa asennusohjelmaa INST, jolloin se löytyy myös mikropiirin 4 muistista siten, että mikropiiri kykenee suorittamaan vastaavan laskuoperaation. Tuotantovaiheesta 1 välitetään näin ollen tuotantovaiheeseen 3, eli ohjelmien : asennukseen, ohjelmien PROG1 ja PROG2 lisäksi niiden tarkisteet T1 ja T2.15 Authentication of the programs to be installed in the integrated circuit is made possible by the use of a T1 for the PROG1 program to calculate a predetermined algorithm, program code PROG1, and secret installation key K1 in program production. Correspondingly, for program code PROG2, the secret installation key K1 is calculated by using a checkpoint T2. The algorithm for calculating the checks is part of the INST setup program, so that it is also found in the memory of the integrated circuit 4 so that the integrated circuit is able to perform the corresponding calculation operation. The production stage 1 is thus passed on to the production stage 3, that is to say the programs: installation, programs PROG1 and PROG2, their checkpoints T1 and T2.

: Tarkisteet T1 ja T2 syötetään ohjelmien PROG1 ja PROG2 mukana .·. ; 25 mikropiirille sen tulon kautta. Mikropiirin 4 prosessori suorittaa tällöin asennus- ohjelmaan INST sisältyvän algoritmin avulla autentikoinnin, jossa se salaisen • · !!! asennusavaimen K1 avulla tarkistaa ovatko tarkisteet oikein. Jos tarkisteet ovat oikein asentaa mikropiirin asennusohjelma INST ohjelmat PROG1 ja PROG2 mikropiirille. Kun asennus on valmis poistaa asennusohjelma salaisen » * · 30 asennusavaimen K1 mikropiirin muistista M. Tämän jälkeen asennusohjelma :: käynnistää asennetut ohjelmat ja lakkaa toimimasta.: Controls T1 and T2 are entered with PROG1 and PROG2. ; 25 microcircuits through its input. The processor of the integrated circuit 4 then performs the authentication using the algorithm included in the INST program where it secretly · · !!! Use the K1 installation key to check if the checks are correct. If the checks are correct, install the integrated circuit installer INST programs for the PROG1 and PROG2 integrated circuits. When the installation is complete, the installation program will be removed from memory »* · 30 installation keys K1 by the integrated circuit M. Then the installer :: will start the installed programs and stop working.

: Kuvio 3 havainnollistaa keksinnön mukaisen mikropiirin toista edul- .*·*. lista suoritusmuotoa. Kuvion 3 suoritusmuoto vastaa hyvin pitkälle kuvion 2 ’·’ suoritusmuotoa, minkä vuoksi seuraavassa kuvion 3 suoritusmuotoa seloste- : " 35 taan ensisijaisesti niiltä osin kuin se eroaa kuvion 2 suoritusmuodosta.Figure 3 illustrates another preferred embodiment of a microcircuit according to the invention. list of embodiments. The embodiment of Fig. 3 corresponds very closely to the embodiment of Fig. 2 '·', therefore, the following embodiment of Fig. 3 will be described primarily in so far as it differs from the embodiment of Fig. 2.

116172 7116172 7

Kuvion 3 suoritusmuodossa on käytössä ohjelmien luokittelu eri tasoihin. Käytössä voi olla esimerkiksi kolme eri tasoa: 1) tuotantotason ohjelmat, jotka on suojattava sellaisella tavalla, että ulkopuolinen hyökkääjä ei saa niistä tai mikropiiristä muutenkaan mitään 5 tietoja millään tavalla, 2) asiakkaiden testitason ohjelmat, jotka antavat asiakkaille mahdollisuuden testata asiakkaiden omia ohjelmia ja koodeja. Esimerkiksi toimikortin tapauksessa tyypillinen asiakas voisi olla jokin pankki, jolloin pankin oman ATK-osaston on kyettävä testaamaan itse tuottamiensa ohjelmien toi- 10 mintaa mikropiirillä. Näin ollen asiakkaan testitasoon kuuluvat ohjelmat ovat sellaisia ohjelmia, jotka tarjoavat rajoitetun pääsyn mikropiirin muistiin tallennettuun informaatioon.In the embodiment of Fig. 3, classification of programs at different levels is used. There are, for example, three different levels of access: 1) production-level software that must be protected in such a way that no outside information is received from the outside attacker or the 5 chip in any way; 2) customer test-level software that allows customers to test their own software and code . For example, in the case of a smart card, a typical customer could be a bank, whereby the bank's own IT department must be able to test the operation of the software it produces on a microchip. Thus, the client test-level programs are programs that provide limited access to the information stored in the IC chip.

3) valmistajan testitason ohjelmat, jotka antavat mikropiirin valmistajalle mahdollisuuden testata mikropiirin toimintaa. Valmistajan testitasoon 15 kuuluvat ohjelmat tarjoavat näin ollen rajattoman pääsyn mikropiirin muistiin tallennettuun informaatioon.3) manufacturer's test-level programs, which enable the integrated circuit manufacturer to test the functionality of the integrated circuit. The manufacturer's test level 15 programs thus provide unrestricted access to the information stored in the IC memory.

Ohjelmien tuotannossa tuotetuille ohjelmille määritellään näin ollen luokkakoodi LEVEL, joka ilmaisee minkä tason ohjelmasta on kyse. Kun valmiille ohjelmalle PROG1 tuotetaan tarkiste salaisen asennusavaimen K1 20 avulla käytetään algoritmia, joka hyödyntää ohjelmakoodin ja asennusavaimen lisäksi myös luokkakoodia. Vastaavasti asennusohjelma INST' hyödyntää sa-v ·* maa algoritmia, joka huomioi luokkakoodin kun se tarkistaa ohjelman autentti- suuden ennen asennusta. Kuvion 3 suoritusmuodossa tuotantovaiheesta 2 • ♦ · : välittyy näin ollen tuotantovaiheeseen 3 asennettavat ohjelmat PROG1 ja : 25 PROG2, näiden luokkakoodit LEVEL1 ja LEVEL2 sekä ohjelmien tarkisteet T1 ja T2.Thus, for programs produced in program production, a class code LEVEL is defined, which indicates the level of the program in question. When generating a checksum for a finished program PROG1, a secret installation key K1 20 uses an algorithm that utilizes not only the program code and the installation key but also the class code. Similarly, installer INST 'utilizes a sa-v · * country algorithm that takes into account the class code when it checks the authenticity of the program before installation. In the embodiment of Fig. 3, the production steps 2 • ♦ ·: thus transmit programs PROG1 and: 25 PROG2 to be installed in production stage 3, their class codes LEVEL1 and LEVEL2, and program checkers T1 and T2.

!!! Mikropiirille 4 valmistuksen yhteydessä tallennettu asennusohjelma "* INST on tehty sellaiseksi, että se käsittelee eri tasoisia ohjelmia eri tavoilla. Eli jos jostain syystä testitason ohjelma onkin luokkakoodin perusteella luokiteltu >· ' 30 tuotantotason ohjelmaksi epäonnistuu tämän ohjelman asennus, koska asen- nusohjelma INST tekee sille asennuksen yhteydessä toimenpiteitä, jotka tes-; titason ohjelman ollessa kyseessä johtavat onnistuneeseen asennukseen, . mutta jotka tuotantotason ohjelman ollessa kyseessä johtavat asennuksen epäonnistumiseen. Tämä voidaan toteuttaa esimerkiksi siten, että asennus-: " 35 ohjelma suorittaa asennuksen yhteydessä luokkakoodista riippuvaisia lasku- i toimituksia, jolloin laskutoimitukset etenevät asennettavan ohjelman osalta 116172 8 oikeaan lopputulokseen (onnistuneeseen asennukseen) ainoastaan, jos kyseiselle ohjelmalle on annettu oikea luokkakoodi.!!! The manufacturing program stored on the chip 4 "* INST is designed to handle different levels of programs in different ways. So for some reason, the test-level program is categorized by class code> · '30 production-level program fails to install this program because INST does it during installation, the steps that lead to a successful installation in the test-level program, but which in the case of the production-level program lead to an installation failure. This can be done, for example, by installing: "35 program performs class code dependent deliveries during installation, whereby the calculation proceeds for the program to be installed 116172 8 to the correct final result (successful installation) only if the correct class code is given for that program.

Kuvio 4 havainnollistaa salaisten avainten tallennusta mikropiirin muistiin. Kuviossa 4 esitettyä salaisten avainten tallennusta voidaan hyödyn-5 tää sekä kuvion 2 että kuvion 3 suoritusmuodoissa. Eli sen lisäksi mitä kuvioiden 2 ja 3 yhteydessä on selostettu tallennettavaksi mikropiirin muistiin, voidaan lisäksi vielä tallentaa salaisia avaimia kuvion 4 osoittamalla tavalla.Figure 4 illustrates the storage of secret keys in the memory of an integrated circuit. The secret key storage shown in Figure 4 can be utilized in both the embodiments of Figure 2 and Figure 3. That is, in addition to what has been described in connection with Figs.

Kuvion 4 esimerkkitapauksessa on salaisten avainten tallennusta kuvattu olettamalla, että ohjelmien tallennus tapahtuu kuvion 2 suoritusmuo-10 don mukaisesti. Näin ollen tässä esimerkissä ei ole käytössä ohjelmien luok-kakoodeja. Kuvion 4 tapauksessa tallennettavia salaisia avaimia on kaksi, eli A1 ja A2. Salaisten avainten tuotannon yhteydessä avaimet koodataan, jolloin ne voidaan siirtää tuotantovaiheeseen 3 ilman, että kukaan ulkopuolinen saa selville salaisia avaimia. Salaisten avaimien koodaus suoritetaan koodiavai-15 mella K2, joka lasketaan ennalta määrätyllä koodausalgoritmilla hyödyntämällä laskennassa satunnaislukua RND sekä salaista asennusavainta K1. Kun koodiavain K2 on laskettu koodataan avaimet A1 ja A2 siten, että tuloksena on koodatut avaimen AT ja A2'. Nämä koodatut avaimet A1' ja A2 sekä satunnaisluku RND lähetetään tuotantovaiheeseen 3, jossa ne ohjelmien asennuk-20 sen yhteydessä syötetään mikropiirille.In the example of Figure 4, the storage of secret keys is illustrated by assuming that the programs are stored according to the embodiment of Figure 2. Therefore, this example does not use program category codes. In the case of Figure 4, there are two secret keys to be stored, i.e. A1 and A2. In the case of the production of secret keys, the keys are encoded so that they can be transferred to production step 3 without the secret keys being discovered by any outsider. The encryption of the secret keys is performed by the code key K2, which is calculated by a predetermined coding algorithm using a random number RND and a secret installation key K1. Once the code key K2 is calculated, the keys A1 and A2 are encoded so that the result is encoded keys AT and A2 '. These coded keys A1 'and A2 and a random number RND are sent to production step 3, where they are supplied to the integrated circuit during program installation.

Kuvion 4 tapauksessa on käytössä mikropiirin asennusohjelma INST", johon sisältyy edellä mainittu koodausalgoritmi, jolloin mikropiirin pro-sessori voi salaisen asennusavaimen K1 sekä mikropiirin työvaiheessa 3 vas-. taanottaman satunnaisluvun RND avulla laskea koodiavaimen K2. Tämän 25 koodiavaimen avulla mikropiirin asennusohjelma voi purkaa koodattujen ,'.. ‘ avainten A1' ja A2' koodauksen siten, että mikropiirin muistiin tallentuu salaiset avaimet A1 ja A2.In the case of Fig. 4, an integrated circuit installer INST "is used which includes the above coding algorithm, whereby the microcircuit processor can compute the code key K2 using the secret installation key K1 and the random number RND received by the integrated circuit in step 3. '..' encryption of keys A1 'and A2' such that secret keys A1 and A2 are stored in the memory of the integrated circuit.

*···' On ymmärrettävä, että edellä oleva selitys ja siihen liittyvät kuviot on ainoastaan tarkoitettu havainnollistamaan esillä olevaa keksintöä. Alan : 30 ammattimiehelle tulevat olemaan ilmeisiä erilaiset keksinnön variaatiot ja I t « muunnelmat ilman että poiketaan oheisissa patenttivaatimuksissa esitetyn : keksinnön suojapiiristä ja hengestä.It is to be understood that the foregoing description and the accompanying figures are merely intended to illustrate the present invention. Various variations and variations of the invention will be apparent to those skilled in the art without departing from the scope and spirit of the appended claims.

I · II · I

* * i % k* * i% k

t * k ) It * k) I

Claims (6)

1. Förfarande för installering av program pä en mikrokrets, i vilket förfarande: 5 en hemlig instailationsnyckel lagras i mikrokretsens minne i sam- band med tillverkningen, ett programspecifikt kontrollelement produceras med hjälp av den hemliga installationsnyckeln för programmen som skall installeras, autenticiteten för vart och ett program som skall installeras kontrolle-10 ras i samband med programinstallationen med hjälp av den i mikrokretsens minne lagrade hemliga installationsnyckeln och det programspecifika kontroll-elementet, och installering av programmet tilläts endast ifall programmet i fräga pä basis av kontrollen är autentiskt, kännetecknat avatt 15 den hemliga installationsnyckeln som är lagrad i mikrokretsens min ne avlägsnas, när programmen är installerade, och de installerade programmen startas upp pä mikrokretsen, efter att den hemliga installationsnyckeln har avlägsnats.1. Method of installing programs on a microcircuit, in which method: a secret instillation key is stored in the memory of the microcircuit in connection with the manufacture, a program-specific control element is produced by means of the secret installation key for the programs to be installed, the authenticity of each a program to be installed is controlled in connection with the program installation by means of the secret installation key stored in the memory of the microcircuit and the program-specific control element, and installation of the program is only allowed if the program in question on the basis of the control is authentic, characterized by the secret installation key stored in the microchip's memory is removed when the programs are installed, and the installed programs are started on the microchip, after the secret installation key has been removed. 2. Förfarande enligt patentkrav 1,kännetecknat av att 20 programmen som skall installeras pä mikrokretsen indelas i pä för- hand bestämda klasser och för vart och ett program som skall installeras defi- » · · '. · nieras en klasskod som beskriver dess kiass, # · I » nämnda programspecifika kontrollelement produceras med en algo- * » * ritm, som förutom den hemliga nyckeln och programmet beaktar programmets ♦ ♦ » 25 klasskod, och < f » i samband med programinstallationen kontrolleras autenticiteten för vart och ett program som skall installeras med hjälp av den i mikrokretsens minne lagrade hemliga nyckeln och den tili mikrokretsen matade klasskoden : för programmet, och ; 30 programmet installeras pä ett av klasskoden beroende sätt, sävida , ’, programmet pä basis av kontrollen är autentiskt.2. A method according to claim 1, characterized in that the programs to be installed on the microcircuit are divided into predetermined classes and for each program to be installed. · A class code describing its file is generated, # · In »said program-specific control element is produced with an algo * * * rhythm which, in addition to the secret key and program, considers the program's ♦ ♦» 25 class code, and <f »in connection with the program installation is controlled the authenticity of each program to be installed using the secret key stored in the microcircuit memory and the class code supplied to the microcircuit: for the program, and; The program is installed in a manner dependent on the class code, unless the program on the basis of the control is authentic. :: 3. Förfarande enligt patentkrav 1 eller 2,kännetecknat av att ' * · ’ för lagring av hemliga nycklar i mikrokretsens minne: beräknas en kodnyckel med en kodningsalgoritm, som utnyttjar den . *. ,: 35 hemliga installationsnyckeln och ett slumptal, 116172 de hemliga nycklarna som skall lagras kodas med hjälp av den be-räknade kodnyckeln, de kodade hemliga nycklarna och nämnda slumptal mätäs tili mikro-kretsen, och 5 kodnyckeln beräknas med hjälp av den i mikrokretsens minne lag- rade hemliga installationsnyckeln, slumptalet och nämnda kodningsalgoritm, och kodningen av de kodade hemliga nycklarna upphävs med den beräknade kodnyckeln och de hemliga nycklarna lagras i minnet.:: 3. A method according to claim 1 or 2, characterized in that '* ·' for storing secret keys in the memory of the microcircuit: a code key is calculated with a coding algorithm which uses it. *. , The secret installation key and a random number 116172 the secret keys to be stored are coded using the calculated code key, the coded secret keys and said random number is measured in the microcircuit, and the code key is calculated using the in the memory of the microcircuit the stored secret key, the random number and the coding algorithm, and the coding of the coded secret keys is canceled with the calculated code key and the secret keys are stored in memory. 4. Mikrokrets, vilken omfattar 10 ett minne (M), i vilket en hemlig installationsnyckel (K1) är lagrad, don för mottagning av ett program som skall installeras och ett pro-gramspecifikt kontrollelement frän en yttre apparatur, och en processor (P) för att utföra ett pä förhand definierat installations-program (INST, INST’, INST"), vilket installationsprogram pä basis av den i 15 minnet (M) lagrade hemliga installationsnyckeln (K1) och det programspecifika kontrollelementet (T1, T2) kontrollerar om programmet (PROG1, PROG2) som skall installeras är autentiskt, och som installerar nämnda program, ifall programmet pä basis av kontrollelementet är autentiskt, kännetecknad av att mikrokretsen (4) är anordnad att avlägsna den hemliga installationsnyckeln 20 (K1) frän minnet (M), innan programmet som installerats av installationspro-grammet (INST, INST’, INST”) startas upp.A microcircuit, comprising a memory (M), in which a secret installation key (K1) is stored, means for receiving a program to be installed and a program-specific control element from an external apparatus, and a processor (P) for executing a predefined installation program (INST, INST ', INST "), which installs on the basis of the secret installation key (K1) stored in memory (M) and the program-specific control element (T1, T2) checks if the program (PROG1, PROG2) to be installed is authentic, and installing said program, if the program on the basis of the control element is authentic, characterized in that the microcircuit (4) is arranged to remove the secret installation key 20 (K1) from the memory (M), before starting the program installed by the installer (INST, INST ', INST'). • ‘: 5. Mikrokretsenligtpatentkrav4, kännetecknad av ·. att mikrokretsen (4) är anordnad att motta en klasskod (LEVEL1, , LEVEL2) för programmet som skall installeras med programmet (PROG1, '•l'. 25 PROG2) som skall installeras och det programspecifika kontrollelementet (K1, K2), och att mikrokretsen (4) är anordnad att utnyttja den programspecifika ’···’ klasskoden (LEVEL1, LEVEL2) vid kontroll av autenticiteten för programmet (PROG1, PROG2) som skall installeras och installera programmet pä ett av i 30 klasskoden beroende sätt, sävida programmet pä basis av kontrollen är auten-tiskt. : . 1.• ': 5. Microcompatible patent claim4, characterized by ·. the microcircuit (4) is arranged to receive a class code (LEVEL1,, LEVEL2) for the program to be installed with the program (PROG1, 'l'. PROG2) to be installed and the program-specific control element (K1, K2), and the microcircuit (4) is arranged to utilize the program-specific '···' class code (LEVEL1, LEVEL2) in checking the authenticity of the program (PROG1, PROG2) to be installed and installing the program in a manner dependent on the class code, unless the program is the basis of control is authentic. :. 1st 6. Mikrokrets enligt patentkrav 4 eller 5, kännetecknad av att mikrokretsen (4) omfattar medel för mottagning av kodade hem-'; · liga nycklar (AT, A2’) och ett slumptal (RND) frän en yttre apparatur, och • ‘ · 35 att mikrokretsen (4) är anordnad att beräkna kodnyckeln med hjälp av en pä förhand bestämd kodningsalgoritm, den hemliga installationsnyckeln 116172 (K1) och nämnda slumptal (RND), och att upphäva kodningen av de kodade hemliga nycklarna (A1\ A2’) med nämnda kodnyckel för kodningen, och lagra de hemliga nycklarna (A1, A2) i minnet (M). 1 ·Microcircuit according to claim 4 or 5, characterized in that the microcircuit (4) comprises means for receiving encoded home messages; · Keys (AT, A2 ') and a random number (RND) from an external device, and • the microcircuit (4) is arranged to calculate the code key by means of a predetermined coding algorithm, the secret installation key 116172 (K1 ) and said random number (RND), and to cancel the encoding of the encoded secret keys (A1 \ A2 ') with said code key for the encoding, and store the secret keys (A1, A2) in the memory (M). 1 ·
FI20002609A 2000-11-28 2000-11-28 Installation of software for integrated circuits FI116172B (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
FI20002609A FI116172B (en) 2000-11-28 2000-11-28 Installation of software for integrated circuits
AU2002218339A AU2002218339A1 (en) 2000-11-28 2001-11-27 Installation of programs into microcircuit
PCT/FI2001/001033 WO2002044995A2 (en) 2000-11-28 2001-11-27 Installation of programs into microcircuit

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI20002609 2000-11-28
FI20002609A FI116172B (en) 2000-11-28 2000-11-28 Installation of software for integrated circuits

Publications (3)

Publication Number Publication Date
FI20002609A0 FI20002609A0 (en) 2000-11-28
FI20002609A FI20002609A (en) 2002-05-29
FI116172B true FI116172B (en) 2005-09-30

Family

ID=8559598

Family Applications (1)

Application Number Title Priority Date Filing Date
FI20002609A FI116172B (en) 2000-11-28 2000-11-28 Installation of software for integrated circuits

Country Status (3)

Country Link
AU (1) AU2002218339A1 (en)
FI (1) FI116172B (en)
WO (1) WO2002044995A2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7930537B2 (en) 2002-08-13 2011-04-19 Nokia Corporation Architecture for encrypted application installation
CN100367144C (en) * 2003-02-03 2008-02-06 诺基亚有限公司 Architecture for encrypted application progam installation

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6062252A (en) * 1983-09-16 1985-04-10 Toshiba Corp Card incorporating enciphering circuit
JPH0632102B2 (en) * 1985-08-22 1994-04-27 カシオ計算機株式会社 IC card verification method
GB2206431B (en) * 1987-06-30 1991-05-29 Motorola Inc Data card circuits
FR2626095B1 (en) * 1988-01-20 1991-08-30 Sgs Thomson Microelectronics SECURITY SYSTEM FOR PROTECTING PROGRAMMING AREAS OF A CHIP CARD
JPH0452890A (en) * 1990-06-15 1992-02-20 Mitsubishi Electric Corp Ic card
US5412717A (en) * 1992-05-15 1995-05-02 Fischer; Addison M. Computer system security method and apparatus having program authorization information data structures
US6385723B1 (en) * 1997-05-15 2002-05-07 Mondex International Limited Key transformation unit for an IC card

Also Published As

Publication number Publication date
WO2002044995A3 (en) 2002-07-25
FI20002609A0 (en) 2000-11-28
AU2002218339A1 (en) 2002-06-11
FI20002609A (en) 2002-05-29
WO2002044995A8 (en) 2003-11-27
WO2002044995A2 (en) 2002-06-06

Similar Documents

Publication Publication Date Title
US6957338B1 (en) Individual authentication system performing authentication in multiple steps
US5856659A (en) Method of securely modifying data on a smart card
KR101915676B1 (en) Card settlement terminal and card settlement system
CN104978531B (en) The method be programmed to smart card and programmable smart card
JPH11506560A (en) How to safely put commands on a smart card
JP6329485B2 (en) Mobile terminal, processing terminal, and method for executing processing in processing terminal using mobile terminal
EP2235658A1 (en) Secure end-of-life handling of electronic devices
JP2003263618A (en) Nv fuse authenticating method and device, authentication computer program product and computer readable storage medium with its program stored
Boehm et al. Holistic tracking of products on the blockchain using NFC and verified users
EP0855815A2 (en) Certification of cryptographic keys for chipcards
JPH0830748A (en) Function method of chip card
FI116172B (en) Installation of software for integrated circuits
CN100399738C (en) Data processing with a key
ES2673187T3 (en) Non-authentic card detection procedure with microprocessor, microprocessor card, card reader terminal and corresponding programs
US11321437B2 (en) Method for enabling a biometric template
CN112488261A (en) Method and system for identifying authenticity of article based on block chain information storage
US10853476B2 (en) Method for the security of an electronic operation
US9659425B2 (en) Electronic key for authentication
CN105701412B (en) External authentication key verification method and device
EP2782006B1 (en) Process and system for verifying computer program on a smart card
JP2005056292A (en) Ic card authentication method and system
KR20030033218A (en) Chip card capable of controlling memory access of a microprocessor according to its state
Sengupta et al. Biometrics for Hardware Security and Trust: Discussion and Analysis
IDProtect et al. Athena IDPass ICAO BAC
EVANGELISTA Security Target SOMA-c003 Electronic Passport Basic

Legal Events

Date Code Title Description
FG Patent granted

Ref document number: 116172

Country of ref document: FI

PC Transfer of assignment of patent

Owner name: GEMALTO OY

MA Patent expired