FI114416B - Menetelmä elektroniikkalaitteen varmistamiseksi, varmistusjärjestelmä ja elektroniikkalaite - Google Patents

Menetelmä elektroniikkalaitteen varmistamiseksi, varmistusjärjestelmä ja elektroniikkalaite Download PDF

Info

Publication number
FI114416B
FI114416B FI20011278A FI20011278A FI114416B FI 114416 B FI114416 B FI 114416B FI 20011278 A FI20011278 A FI 20011278A FI 20011278 A FI20011278 A FI 20011278A FI 114416 B FI114416 B FI 114416B
Authority
FI
Finland
Prior art keywords
task
electronic device
software
fuse
stage
Prior art date
Application number
FI20011278A
Other languages
English (en)
Swedish (sv)
Other versions
FI20011278A0 (fi
FI20011278A (fi
Inventor
Risto Roenkkae
Toni Sormunen
Antti Kiiveri
Original Assignee
Nokia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Corp filed Critical Nokia Corp
Publication of FI20011278A0 publication Critical patent/FI20011278A0/fi
Priority to FI20011278A priority Critical patent/FI114416B/fi
Priority to ES02743287T priority patent/ES2236530T3/es
Priority to JP2003505748A priority patent/JP2004530235A/ja
Priority to EP02743287A priority patent/EP1395892B1/en
Priority to CA2450844A priority patent/CA2450844C/en
Priority to DE60202605T priority patent/DE60202605T8/de
Priority to PCT/FI2002/000517 priority patent/WO2002103495A1/en
Priority to BR0210379-6A priority patent/BR0210379A/pt
Priority to AT02743287T priority patent/ATE287102T1/de
Priority to US10/173,569 priority patent/US7506381B2/en
Priority to KR1020037016192A priority patent/KR100657532B1/ko
Priority to CNB028157834A priority patent/CN1276319C/zh
Publication of FI20011278A publication Critical patent/FI20011278A/fi
Application granted granted Critical
Publication of FI114416B publication Critical patent/FI114416B/fi
Priority to JP2007128552A priority patent/JP2007293873A/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)
  • Fuses (AREA)
  • Emergency Protection Circuit Devices (AREA)
  • Retry When Errors Occur (AREA)
  • Debugging And Monitoring (AREA)

Description

114416
Menetelmä elektroniikkalaitteen varmistamiseksi, varmistusjärjestelmä ja elektroniikkalaite
Nyt esillä oleva keksintö kohdistuu oheisen patenttivaatimuksen 1 joh-5 danto-osassa esitettyyn menetelmään elektroniikkalaitteen varmistamiseksi. Keksintö kohdistuu lisäksi oheisen patenttivaatimuksen 14 johdanto-osan mukaiseen järjestelmään. Keksintö kohdistuu myös oheisen patenttivaatimuksen 27 johdanto-osan mukaiseen elektroniikka-laitteeseen. Keksintö kohdistuu vielä oheisen patenttivaatimuksen 30 10 johdanto-osan mukaiseen ohjelmistoon ja oheisen patenttivaatimuksen 31 johdanto-osan mukaiseen tallennusvälineeseen.
Lukuisissa erilaisissa elektroniikkalaitteissa käytetään ohjelmoitavia ohjauselimiä, kuten mikroprosessoreita, mikro-ohjaimia, ohjelmoitavia 15 logiikoita, ja/tai sovelluskohtaisesti ohjelmoitavia integroituja piirejä. Tällaisiin elektroniikkalaitteisiin on tallennettu yhdestä tai useammasta ohjelmasta koostuva ohjelmisto, joka sisältää mm. elektroniikkalaitteen toiminnassa tarvittavia ohjelmakäskyjä. Tällaisten ohjelmistojen tallennuksessa käytetään muistia, josta tavallisesti ainakin osa on pysyväis-20 muistia, eli muistin sisältö säilyy, vaikka muistin käyttöjännite katkeaa.
Tällaisia muisteja ovat mm. ROM (Read-Only Memory), PROM (Programmable ROM), ja EEPROM (Electrically Erasable PROM). Ainakin osa muistista on tavallisesti asennettu kiinteästi elektroniikkalait-teeseen, mutta lisäksi useissa sovelluksissa voidaan muistia lisätä ....: 25 esimerkiksi lisämuistikortin avulla. Eräs tällainen lisämuistikortti on ns.
Flash-muistikortti. Flash-muisti on eräänlainen EEPROM-tyyppinen muisti, jonka sisältöä voidaan muuttaa sähköisellä ohjauksella. Flash-muistin sisältö säilyy myös käyttöjännitteiden katkaisemisen jälkeen. Tällaisen lisämuistin avulla voidaan elektroniikkalaitteeseen helposti li-30 sätä uusia ohjelmia, tallennuskapasiteettia esimerkiksi digitaalisessa kamerassa valokuvien tallentamiseksi, käyttöoikeuksien asettamiseksi esim. langattomassa viestimessä, jne. Ohjelmien asennus elektroniikkalaitteeseen voidaan sinänsä tunnetusti suorittaa myös muita tallensi nusvälineitä käyttäen, kuten levykkeeltä, CDROM-levyltä, tai DVD-le- 35 vyltä.
2 114416
Tallennusvälineille tallennettujen ohjelmistojen kopiointi on suhteellisen yksinkertaista, joten ohjelmistojen valmistajat ovat kehittäneet erilaisia menetelmiä, joilla kopioitujen ohjelmistojen käyttö voitaisiin estää. Eräs tällainen menetelmä on tuotetunnuksen (Product ID) tai vastaavan 5 käyttäminen. Tällöin ohjelman käynnistyksen yhteydessä on käyttäjän syötettävä tämä tuotetunnus elektroniikkalaitteeseen, ennen kuin ohjelmaa voidaan käyttää. Tällaisen järjestelyn epäkohtana on kuitenkin se, että ohjelman kopioinnin yhteydessä on käyttäjä voinut saada alkuperäisen ohjelmiston haltijalta tietoonsa tämän tuotetunnuksen, jolloin 10 myös kopioitua ohjelmaa voidaan käyttää. Toisaalta vaikka kopioidun ohjelmiston käyttäjällä ei olisi tiedossa tuotetun n usta, voi käyttäjä yrittää selvittää ohjelmiston suojauksen rakenteen esim. käänteisellä ohjelmoinnilla (debug), jossa ohjelman objektikoodia muunnetaan lähdekoodiksi. Tällöin käyttäjä saattaa onnistua selvittämään kopiosuojauk-15 sen ja muuttamaan ohjelmaa esim. siten, että kopiosuojaus on pois käytöstä, tai siten, että käyttäjä selvittää tarvittavan tuotetunnuksen objektikoodin perusteella. Tällaisen mahdollisuuden hankaloittamiseksi on kehitetty ohjelmistoja, joissa ohjelmiston suorittamisen aikana väliajoin tarkistetaan se, ettei ohjelmistoa ole muutettu. Tällöin pelkkä 20 käynnistyksessä suoritettavan kopiosuojauksen selvittäminen ei vält-, tämättä mahdollista kopioidun ohjelmiston pidempiaikaista käyttöä, ellei käyttäjä pysty selvittämään tällaisen kopiosuojauksen rakennetta.
On tunnettua sitoa tietty ohjelmisto yksikäsitteisesti johonkin laitteistoon 25 siten, ettei ohjelmistoa voi käyttää muussa laitteistossa. Tämä voidaan tehdä esimerkiksi muokkaamalla ohjelmistoa laitteistokohtaisen sarjanumeron perusteella tai toimittamalla laitteistokohtaisen sarjanumeron perusteella vain yhdessä laitteessa toimiva asennusohjelma. Näissä ratkaisuissa on se epäkohta, että joko ohjelmistoa tai laitteistoa muok-30 kaarnalla tämä suojaus voidaan purkaa.
Käänteisen ohjelmoinnin vaikeuttamiseksi voidaan ohjelmiston ainakin * kopiosuojausosuutta ja/tai tuotetunnuksen tallennusta ohjelmakoodin ' . yhteyteen yrittää saada monimutkaisemmaksi, jolloin kopiosuojauksen ! 35 murtaminen vaikeutuu. Eräs tällainen ratkaisu on esitetty mm. kansain- ;· välisessä patenttihakemuksessa WO 00/77597.
3 114416
Patentissa US-5,131,091 on esitetty menetelmä, jossa muistikortille tallennettu ohjelma suojataan sekoittamalla ohjelmakoodin sisältö XOR-operaatioilla. Sekoittamisessa käytetään pysyväismuistiin tallennettua salausbittijonoa, jonka selvittäminen on pyritty tekemään mah-5 dollisimman hankalaksi. Eri käyttäjille toimitetuissa muistikorteissa käytetään erilaista salausbittijonoa.
Ohjelmiston laillisesti hankkineella käyttäjällä voi myös olla tarve varmistaa ohjelmiston alkuperä, koska joissakin tapauksissa voi joku kol-10 mas taho pyrkiä toimittamaan alkuperäisohjelmistoista muunneltuja versioita ja markkinoida niitä alkuperäisinä ohjelmistoina. Tällaisiin ohjelmistoihin on voitu lisätä esim. virus, tai ohjelmistoon on tehty ns, takaportti, jonka kautta muunnellun ohjelmiston valmistaja voi jopa päästä tunkeutumaan tällaisen muunnellun ohjelmiston asentaneen 15 yrityksen lähiverkkoon. Joissakin tapauksissa muunneltuun ohjelmistoon on lisätty ominaisuus, joka lähettää käyttäjän huomaamatta käyttäjän elektroniikkalaitteeseen syöttämiä käyttäjätunnuksia ja salasanoja esim. Internet-tietoverkon kautta muunnellun ohjelmiston valmistajalle. Ohjelmiston alkuperän varmistamiseksi voidaan ohjelmistoon lisätä di-20 gitaalinen allekirjoitus, jonka perusteella käyttäjä voi varmistaa, että kyseessä todella on alkuperäinen ohjelmisto.
Ohjelmistojen kopiointisuojauksen lisäksi on muutakin elektroniikka-laitteiden yhteyteen tallennettua informaatiota tarve suojata väärinkäy-25 tösten estämiseksi. Esimerkiksi käyttöoikeuksien rajaaminen vain tietylle käyttäjälle tai käyttäjille on joidenkin elektroniikkalaitteiden yhteydessä järjestetty siten, että käyttäjällä on henkilökohtainen toimikortti, jolloin elektroniikkalaitteen käyttämiseksi käyttäjä asettaa toimikortin elektroniikkalaitteeseen järjestettyyn korttiliittimeen. Lisävarmistuksena 30 voidaan vielä käyttää käyttäjätunnusta, jolloin elektroniikkalaitteen käynnistyksen yhteydessä käyttäjän on vielä syötettävä tämä käyttäjätunnus, ennen kuin elektroniikkalaite on käytettävissä. Tällainen järjestely on käytössä mm. useissa matkaviestinverkoissa, kuten GSM-... matkaviestinverkossa ja UMTS-matkaviestinverkossa. Tällaisessa 35 matkaviestinverkossa käytettävään matkaviestimeen asetetaan toimi-kortti, josta GSM-järjestelmässä käytetään nimitystä SIM (Subscriber Identity Module) ja UMTS-järjestelmässä USIM (Universal Subscriber 4 114416
Identity Module). Tällaiseen toimikorttiin on matkaviestinverkon palveluntarjoaja asettanut tietyt tilaajamääritykset, kuten kansainvälisen matkapuhelintilaajatunnuksen IMSI (International Mobile Subscriber Identifier). Käyttäjätunnus tallennetaan myös tähän toimikorttiin, jolloin 5 toimikortti suorittaa käyttäjätunnuksen tarkistuksen matkaviestimen käynnistyksen yhteydessä.
Patentissa US 6,032,257 esitetään järjestely, jossa tietokonelaitteiston komponentteja on hankala varastaa tai varastettujen komponenttien 10 käyttö jossakin toisessa laitteistossa pyritään estämään. Laitteiston toiminta on järjestetty niin, että kun komponenttia ensimmäisen kerran käytetään laitteistossa, komponentilla olevaan muistiin kirjoitetaan allekirjoitus, joka on muodostettu komponentin sarjanumerosta ja tietokonelaitteiston tunnisteesta. Jos komponentti siirretään tämän 15 jälkeen esim. varkauden seurauksena toiseen laitteistoon, se ei toimi ollenkaan tai toimii alemmalla toimintatasolla, koska laitteiston luotettavuus tarkistetaan aina laitteiston käynnistyksen yhteydessä. Kyseessä on siis laitteiston luotettavuuden tutkiminen, eikä julkaisun mukainen ratkaisu liity mitenkään ohjelmiston luotettavuuden 20 tutkimiseen. Julkaisussa on esitetty sellainen kaksivaiheinen laitteiston tunnistus, jossa ensimmäisessä vaiheessa tutkitaan tietokoneessa komponentin sarjanumero, ja jos se ei ole kunnossa, komponentin toiminta estetään tai sallitaan vain sen rajoitettu toiminta. Jos sarjanumero on kunnossa, siirrytään toiseen vaiheeseen, jossa 25 tietokoneesta lähetetään komponenttiin tietokonelaitteiston tunniste.
Tämä tunniste tutkitaan komponentissa ja jos tunniste ei täsmää, komponentti asettaa toimintatilansa sellaiseksi, että tietokone ei voi käyttää komponenttia tai voi käyttää vain joitakin sen toimintoja. Tunnisteisiin voi liittyä digitaalisia allekirjoituksia. US-julkaisun 30 mukainen ratkaisu perustuu siis eräänlaiseen ristiintarkistukseen, siis molemmat osapuolet tarkistavat toistensa aitouden. Tällä voidaan pyrkiä estämään varastetun komponentin käyttö tietokonelaitteistossa . ·! ’ ja toisaalta aidon komponentin käyttö väärässä tietokonelaitteistossa.
35 Edellä esitetyt ratkaisut eivät kuitenkaan ratkaise sitä ongelmaa, että ulkopuolinen taho muokkaa ohjelmistoa siten, että voi käyttää sitä itse L” joko toisessa laitteessa tai muuttaa ohjelman toimintaa tässä laittees- 5 114416 sa. Tällainen ongelma on tullut esille mm. matkaviestinten yhteydessä, joissa on voitu saada maksuton pääsy matkaviestinverkon palveluihin valmistamalla matkaviestimestä kopio. Kopioidun matkaviestimen ohjelmisto sekä kansainvälinen laitetunnus (IMEI, International Mobile 5 Equipment Identity) on sama kuin alkuperäisellä matkaviestimellä.
Myös toimikortista on tehty kopio, joka on asennettu kopioituun matkaviestimeen. Tällöin matkapuhelinkeskus ei havaitse eroa alkuperäisen ja kopioidun matkaviestimen välillä.
10 Vielä eräänä epäkohtana tunnetun tekniikan mukaisissa ohjelmistojen ja muiden tietojen salausratkaisuissa on se, että jos suurten tietomäärien salauksessa on käytetty samaa salausavainta, saattaa salausavaimen selvittäminen onnistua analysoimalla tällaista salattua tietoa.
15 Kannettavien laitteiden tietojenkäsittelyominaisuuksien lisääntyessä on niihin tallennettavissa enemmän informaatiota, joka voi olla myös luottamuksellista tai muuten sellaista informaatiota, joka ei saa joutua ulkopuolisen tietoon. Kannettavien laitteiden mukana pitäminen lisää kuitenkin riskiä sille, että kannettava laite häviää tai varastetaan, joten 20 siihen tallennettu tieto on pyrittävä suojaamaan jollakin salausmene-' X telmällä. Kannettaviin laitteisiin voidaan tavallisesti määrittää salasana, joka käyttäjän on syötettävä laitteeseen käynnistysvaiheessa, ennen kuin laitetta voidaan käyttää normaalisti. Tällainen suojaus on kuitenkin suhteellisen helppo ohittaa, koska käytettävät salasanat ovat yleensä 25 suhteellisen lyhyitä, tyypillisesti alle kymmenen merkkiä pitkiä. Toisaalta vaikka salasanaa ei yritettäisikään selvittää, voidaan laitteen sisältämään informaatioon päästä käsiksi esim. siirtämällä tallennusväline, kuten kiintolevy, johonkin toiseen laitteeseen. Mikäli tallennusvälineelle tallennettu informaatio ei ole salattua, on tallennusvälineelle tal-30 lennettu informaatio helposti selvitettävissä.
On tunnettua, että käyttäjän tai laitteiston tarvitsemaa tietoa voidaan salata yhdellä avaimella, tallentaa salattu tieto laitteiston muistiin ja purkaa salaus toisella avaimella. Epäsymmetrisessä salauksessa käy-35 tettävä avain on erilainen kuin salauksen purkamisessa käytettävä avain. Vastaavasti symmetrisessä salauksessa salauksessa käytettävä X avain on sama kuin salauksen purkamisessa käytettävä avain. Epä- 6 114416 symmetrisessä salauksessa käytetään näistä avaimista yleensä nimitystä julkinen avain ja henkilökohtainen avain. Julkinen avain on tarkoitettu salauksen suorittamiseen ja henkilökohtainen avain salauksen purkamiseen. Vaikka julkinen avain voi olla yleisesti tiedossa, ei sen 5 perusteella yleensä pysty helposti selvittämään julkista avainta vastaavaa henkilökohtaista avainta, jolloin ulkopuolisen on erittäin vaikea selvittää tällä julkisella avaimella salattua tietoa. Eräs esimerkki tällaisen julkisen avaimen ja henkilökohtaisen avaimen käyttöön perustuvasta järjestelmästä on PGP-järjestelmä (Pretty Good Privacy), jossa käyttäjä 10 sataa lähetettävän tiedon vastaanottajan julkisella avaimella ja vastaanottaja sitten avaa salatun tiedon henkilökohtaisella avaimellaan. Tunnetun tekniikan mukaisissa järjestelmissä on kuitenkin merkittäviä puutteita. Tehokkaat symmetriset avaimet ovat n. 100 bittiä, kun taas asymmetriset avaimet ovat n. 1000 - 2000 bittiä. Jos avainpituus on 15 liian lyhyt, on se suhteellisen helppo murtaa nykyisillä tietojenkäsittely-laitteistoilla. Tämä ongelma on erityisen merkittävä kannettavissa tietojenkäsittely- ja viestintälaitteissa, joissa myös rajallinen prosessointi-teho estää pitkien avainten käytön.
20 Nyt esillä olevan keksinnön eräänä tarkoituksena on aikaansaada parannettu menetelmä elektroniikkalaitteen varmistamiseksi siten, että tietty ohjelmisto asetetaan toimivaksi vain tietyssä elektroniikkalaitteessa. Keksintö perustuu siihen ajatukseen, että käynnistys muodostetaan vähintään kaksivaiheiseksi siten, että ensimmäisessä vaiheessa 25 tarkistetaan ensimmäinen varmistustieto, ja mikäli ensimmäinen var-mistustieto on kunnossa, tarkistetaan toiseen käynnistysvaiheeseen liittyvä toinen varmistustieto, jolloin toisenkin varmistustiedon ollessa kunnossa, voidaan toisen käynnistysvaiheen suorittaminen aloittaa. Täsmällisemmin ilmaistuna nyt esillä olevan keksinnön mukaiselle me-30 netelmälle on pääasiassa tunnusomaista se, mitä on esitetty oheisen patenttivaatimuksen 1 tunnusmerkkiosassa. Nyt esillä olevan keksin-‘ nön mukaiselle järjestelmälle on pääasiassa tunnusomaista se, mitä on esitetty oheisen patenttivaatimuksen 14 tunnusmerkkiosassa. Nyt esillä /. olevan keksinnön mukaiselle elektroniikkalaitteelle on pääasiassa tun- 35 nusomaista se, mitä on esitetty oheisen patenttivaatimuksen 27 tunnusmerkkiosassa. Nyt esillä olevan keksinnön mukaiselle ohjelmistolle on vielä pääasiassa tunnusomaista se, mitä on esitetty oheisen patent- 7 114416 tivaatimuksen 30 tunnusmerkkiosassa. Nyt esillä olevan keksinnön mukaiselle tallennusvälineelle on vielä pääasiassa tunnusomaista se, mitä on esitetty oheisen patenttivaatimuksen 31 tunnusmerkkiosassa.
5 Nyt esillä olevalla keksinnöllä saavutetaan merkittäviä etuja tunnetun tekniikan mukaisiin ratkaisuihin verrattuna. Keksinnön mukaisessa elektroniikkalaitteessa laitetunnus on tallennettu sellaiseen muistiin, jonka muokkaaminen on tehty mahdollisimman vaikeaksi. Lisäksi laitetunnus on eräässä edullisessa suoritusmuodossa varmennettu digi-10 taalisella allekirjoituksella, jonka varmentamisessa käytettävä julkinen avain on tallennettu elektroniikkalaitteeseen. Tällöin digitaalisen allekirjoituksen tarkistamisella saadaan suurella todennäköisyydellä varmistettua se, vastaako digitaalinen allekirjoitus kyseisen elektroniikka-laitteen laitetunnusta. Yksi laitetunnus on järjestetty laitteeseen pysy-15 västi ja toinen allekirjoitettuun tietoon, jota kutsutaan varmenteeksi (sertifikaatiksi, certificate). Nyt allekirjoituksen tarkistuksella saadaan varmenteen oikeellisuus ja tekijä selville. Sitten varmistetaan, että sekä laitteen pysyvä laitetunnus ja varmenteen sisältämä laitetunnus ovat samat. Keksinnön mukaisella menetelmällä voidaan varmistaa se, että 20 tietty ohjelmisto toimii vain tietyssä elektroniikkalaitteessa ja vastaa-:V vasti voidaan tarvittaessa varmistaa se, että tietyssä elektroniikkalait- teessä toimii vain tietty ohjelmisto. Tällöin ohjelmistojen kopioinnin ai-;·,·· heuttamia taloudellisia menetyksiä ohjelmistojen valmistajille voidaan ...; merkittävässä määrin pienentää. Myös elektroniikkalaitteiden käyttäjien 25 asemaa voidaan parantaa, koska keksinnön mukaisella ratkaisulla voidaan väärennettyjen elektroniikkalaitteiden ja ohjelmistojen toiminta jopa estää kokonaan. Käyttäjälle ei tällöin aiheudu kustannuksia sellaisesta käytöstä, jonka on aiheuttanut käyttäjän elektroniikkalaitetta vastaavan kopioidun elektroniikkalaitteen käyttö. Keksinnön mukaisella 30 menetelmällä voidaan ohjelmiston alkuperä varmentaa, jolloin ohjel-miston käyttäjä voi olla suhteellisen varma siitä, että ohjelmiston alku-:’’’ perä vastaa ilmoitettua ja että ohjelmisto ei sisällä viruksia, takaportteja ' tai vastaavia. Keksintö mahdollistaa myös sen, että elektroniikkalait- ; . teen ohjelmistoa ei voi asiattomasti muuttaa siten, että se toimisi muu- ", 35 tosten jälkeen.
8 114416
Keksinnön mukaisessa elektroniikkalaitteessa piirin sisäisen lukumuis-tin koko voidaan pitää suhteellisen pienenä, koska suuri osa ohjelmistoista voidaan tallentaa edullisempaan uudelleen kirjoitettavissa olevaan lukumuistiin. Tämä mahdollistaa myös sen, että suuri osa 5 elektroniikkalaitteen ohjelmistoista voidaan vaihtaa elektroniikkalaitteen valmistuksen jälkeenkin ja myös ohjelmistojen suunnittelu on helpompaa.
Keksinnön edullisessa suoritusmuodossa on ohjelmistojen käyttöoi-10 keuksien valvonnassa käytettävä laitetunnus riippumaton elektroniikkalaitteen mahdollisesta IMEI-koodista. Tällöin laitteen valmistaja voi tarvittaessa vaihtaa IMEI-koodin. Lisäksi laitetunnuksen pituus voi olla lyhyempi kuin IMEI, joten laitetunnuksen tallentamisessa tarvitaan kallista muistia vähemmän kuin tunnetun tekniikan mukaisia ratkaisuja so-15 vedettäessä.
Keksintöä selostetaan seuraavassa tarkemmin viitaten samalla oheisiin piirustuksiin, joissa 20 kuva 1 esittää keksinnön erään edullisen suoritusmuodon mukaista — ’' elektroniikkalaitetta pelkistettynä lohkokaaviona, kuva 2 esittää keksinnön erään edullisen suoritusmuodon mukaista menetelmää soveltavan elektroniikkalaitteen käynnistys-. 25 ohjelmiston rakennetta, kuva 3 esittää ohjelmistojen valmistamista ja toimittamista elektroniikkalaitteeseen keksinnön erään edullisen suoritusmuodon mukaisella varmistusjärjestelmällä, 30 kuva 4 esittää ohjelmistojen valmistamista ja toimittamista elektro-niikkalaitteeseen keksinnön erään toisen edullisen suori-' tusmuodon mukaisella varmistusjärjestelmällä, 35 kuva 5 esittää vuokaaviona keksinnön erään edullisen ,'· suoritusmuodon mukaisen käynnistysohjeimiston toimintaa, ja 9 114416 kuva 6 esittää digitaalisen allekirjoituksen suorittamisen erästä tunnettua periaatetta.
5 Seuraavassa selostetaan keksinnön erään edullisen suoritusmuodon mukaisen elektroniikkalaitteen 1 toimintaa keksinnön mukaisen menetelmän yhteydessä. Elektroniikkalaitteena 1 voidaan käyttää jotakin sellaista elektroniikkalaitetta, joka sisältää välineet ohjelmien suorittamiseksi. Edullisesti elektroniikkalaite 1 käsittää edullisesti käyttöjärjes-10 telmäohjelmiston tai vastaavan, jolla elektroniikkalaitteen 1 keskeisiä toimintoja ohjataan ja jolla muiden ohjelmistojen (sovellusten) suoritusta elektroniikkalaitteessa 1 voidaan ohjata. Eräinä ei rajoittavina esimerkkeinä tällaisista elektroniikkalaitteista 1 mainittakoon tässä yhteydessä matkaviestin ja tietokone.
15
Kuvassa 1 esitetty keksinnön erään edullisen suoritusmuodon mukainen elektroniikkalaite 1 käsittää ohjauslohkon 2, joka sisältää välineet 2a ohjelmien suorittamiseksi. Nämä välineet käsittävät esimerkiksi mikro-ohjaimen MCU ja digitaalisen signaalinkäsittely-yksikön DSP. Li-20 säksi ohjauslohko 2 käsittää edullisesti sovelluskohtaisesti ohjelmoita-van integroidun piirin ASIC, johon mm. ainakin osa elektroniikkalaitteen loogisista toiminnoista voidaan toteuttaa. Lisäksi kuvan 1 mukaisen : elektroniikkalaitteen 1 ohjauslohkossa 2 on edullisesti lukumuistia 2d, josta ainakin osa on kertaalleen kirjoitettavissa olevaa lukumuistia 2e 25 (OTPROM, One Time Programmable ROM), ja luku/kirjoitusmuistia 2f.
On kuitenkin selvää, että nämä muistit 2d, 2e, 2f voidaan toteuttaa myös ohjauslohkosta 2 erillisinä muisteina. Elektroniikkalaitteessa on myös ohjauslohkon ulkopuoliset muistivälineet 3, jotka käsittävät edullisesti ainakin lukumuistia 3a, uudelleen kirjoitettavissa olevaa lukumuis-30 tia 3b ja luku/kirjoitusmuistia 3c. Ainakin osa lukumuistia 3a on toteutettu siten, että sen sisältöä käyttäjä ei voi muuttaa. Kuvan 1 mukai-seen elektroniikkalaitteeseen 1 on mahdollista liittää myös lisämuistia ’ asettamalla lisämuistilohko 4 muistiliitäntävälineisiin 5. Lisämuistilohko 4 on esimerkiksi Flash-muistikortti, mutta myös muita lisämuistivälineitä 35 voidaan keksinnön yhteydessä soveltaa. Elektroniikkalaitteeseen 1 on muodostettu myös käyttöliittymä UI (User Interface), jossa on edulli-sesti näyttö 6, näppäimistö 7, ja audiovälineet 8, kuten kuuloke/kaiutin 10 114416 ja mikrofoni. Kuvan 1 mukainen keksinnön erään edullisen suoritusmuodon mukainen elektroniikkalaite 1 käsittää vielä välineet 9 matka-viestintoimintojen suorittamiseksi, esimerkiksi GSM-matkaviestimen ja/tai UMTS-matkaviestimen. Elektroniikkalaite 1 käsittää edullisesti 5 myös välineet 10 tunnistekortin 11, kuten SIM-kortin ja/tai USIM-kortin, liittämiseksi elektroniikkalaitteen 1 yhteyteen.
Kuvassa 2 on esitetty elektroniikkalaitteen 1 käynnistysohjelmiston rakennetta, jossa keksinnön erään edullisen suoritusmuodon mukaista 10 menetelmää sovelletaan. Käynnistysohjelmisto on jaettu ainakin kahteen käynnistyslohkoon P1, P2, joista ensimmäinen käynnistyslohko P1 suorittaa ensimmäisen vaiheen alkukäynnistystoimenpiteet. Toisessa käynnistyslohkossa P2 suoritetaan jatkotarkistuksia siinä tilanteessa, että ensimmäisessä käynnistyslohkossa ei havaittu käynnistyksen 15 estäviä virheitä.
Nyt esillä olevan keksinnön mukainen, vähintään kaksivaiheinen varmistusmenetelmä toimii seuraavasti. Toimintaa on havainnollistettu kuvan 5 vuokaaviossa. Elektroniikkalaitteen 1 käynnistyksessä ohjaus-20 lohko 2 aloittaa käynnistysohjelmiston suorituksen (lohko 501 kuvassa : , 5). Tämä suoritetaan sinänsä tunnetusti siten, että ohjauslohkon 2 : , osoiterekisteri asetetaan tiettyyn alkuosoitteeseen, jossa sijaitsee käynnistysohjelmiston ensimmäiseksi suoritettava ohjelmakäsky. Tämä ohjelmakäsky sijaitsee ensimmäisessä käynnistyslohkossa P1. Tämän 25 jälkeen ohjelman suoritusta jatketaan suorittamalla edullisesti tarvittavat laitteiston alustustoimenpiteet, jotka ovat alan asiantuntijan tuntemaa tekniikkaa eikä niiden käsittely tässä yhteydessä ole tarpeen. Ensimmäinen käynnistyslohko P1 sisältää ensimmäisen tarkistusvaiheen, jossa tarkistetaan kertaalleen kirjoitettavissa olevaan lukumuistiin 2d 30 tallennettu laitetunnus (Device ID) tai vastaava (lohko 502). Tätä laite-tunnusta on kuvassa 2 esitetty viitteellä DID. Lisäksi voidaan tarkistaa ensimmäisen käynnistyslohkon P1 ohjelmakoodin muokkaamattomuus. Tarkistus suoritetaan edullisesti siten, että ohjauslohkossa 2 lasketaan digitaalinen allekirjoitus käyttämällä ainakin mainittua laitetunnusta DID 35 ja mahdollisesti myös ainakin osaa lukumuistiin 2d, 2e tallennetusta käynnistysohjelmistosta. Digitaalisen allekirjoituksen laskemisessa , ’ ’ käytetään samaa algoritmia ja samoja tietoja, joilla elektroniikkalaitteen 11 114416 1 valmistuksen yhteydessä on laskettu digitaalinen allekirjoitus, joka on muodostettu laitevalmistajan salaisella avaimella, kuten myöhemmin tässä selityksessä esitetään. Tämä digitaalinen allekirjoitus on tallennettu edullisesti uudelleen kirjoitettavissa olevaan lukumuistiin 3b (mer-5 kitty viitteellä S1 kuvaan 2), mutta on selvää, että se voidaan tallentaa myös esimerkiksi samaan lukumuistiin 2d, 2e, johon laitetunnus DID on tallennettu. Digitaalisen allekirjoituksen tarkistaminen voidaan suorittaa käyttämällä allekirjoituksessa käytettyä salaista avainta vastaavaa julkista avainta PK1, joka on tallennettu lukumuistiin 2d, 2e. Digitaalisen 10 allekirjoituksen laskemisen jälkeen suoritetaan ohjauslohkossa 2 lasketun digitaalisen allekirjoituksen ja kertaalleen kirjoitettavissa olevaan lukumuistiin 2d, 2e tallennetun digitaalisen allekirjoituksen S1 vertailu (lohko 503). Mikäli vertailu osoittaa, että digitaaliset allekirjoitukset vastaavat toisiaan, voidaan käynnistystä jatkaa. Muussa tapauksessa 15 on ilmeistä, että elektroniikkalaitetta 1 ja/tai sen sisältämää tunnistetietoa DID ja/tai käynnistysohjelmistoa on yritetty muuttaa, joten tämän seurauksena laitteen normaali toiminta estetään esimerkiksi pysäyttämällä elektroniikkalaite (lohko 504). Tämä tarkistuksen suorittava osa käynnistysohjelmistoa on tallennettuna elektroniikkalaitteen 1 muistiin 20 siten, ettei sitä voida muuttaa rikkomatta elektroniikkalaitetta 1. Eräs käyttökelpoinen ratkaisu on käyttää tallennukseen ohjauslohkon 2 sisäistä, kertaalleen kirjoitettavissa olevaa lukumuistia 2e.
Käynnistystä jatkettaessa siirrytään suorittamaan käynnistysohjelman 25 toista tarkistusvaihetta, ennen kuin muita ohjelmistoja PG1, PG2, PG3 käynnistetään. Toista tarkistusvaihetta vastaava ohjelmakoodi on ensimmäisessä käynnistyslohkossa P1. Toisessa tarkistusvaiheessa suoritetaan käynnistysohjelman toisen käynnistyslohkon P2 aitouden tarkistaminen. Käynnistysohjelman toinen käynnistyslohko P2 on tallen-30 nettu edullisesti uudelleen kirjoitettavissa olevaan lukumuistiin 3b (EEPROM), kuten Flash-muistiin. Lasketaan digitaalinen allekirjoitus käyttämällä ainakin osaa lukumuistiin 3a, 3b tallennetusta käynnistys-ohjelmistosta (lohko 505). Samaan muistiin 3b on tallennettu myös käynnistysohjelman toisen käynnistyslohkon P2 digitaalinen allekirjoi-35 tus S2. Tämän digitaalisen allekirjoituksen S2 laskemisessa on käytetty jotakin varmistettavaa tietoa, kuten osaa käynnistysohjelman toisen käynnistyslohkon P2 ohjelmakoodia sekä elektroniikkalaitteen 1 vai- 12 114416 mistajan salaista avainta. Tätä salaista avainta vastaava julkinen avain PK2 on myös tallennettuna muistiin 3b. Laskettua digitaalista allekirjoitusta verrataan muistiin 3b tallennettuun digitaaliseen allekirjoitukseen (lohko 506), ja mikäli allekirjoitukset vastaavat toisiaan, voidaan 5 elektroniikkalaitteen 1 käynnistystä edelleen jatkaa. Jos allekirjoitukset sen sijaan eivät vastaa toisiaan, laitteen normaali toiminta estetään esimerkiksi pysäyttämällä elektroniikkalaite.
Toisessa tarkistusvaiheessa tarkistettava tieto on voitu muodostaa 10 esim. siten, että uudelleen kirjoitettavissa olevaan lukumuistiin 3b tallennetuista ohjelmista PG1, PG2, PG3, parametreista, laitetunnuk-sista DID, IMEI tai vastaavista on laskettu esim. hash-funktiolla tiiviste-tieto H. Tämä tiivistetieto H on allekirjoitettu salaisella avaimella ja tallennettu uudelleen kirjoitettavissa olevaan lukumuistiin 3b. Tarkistami-15 nen suoritetaan tällöin varmistamalla tämän allekirjoituksen aitous.
Keksinnön eräässä edullisessa suoritusmuodossa ensimmäisestä käynnistysvaiheesta välitetään toisen käynnistysvaiheen suorittavalle ohjelmalle tieto siitä, missä sijaitsevat toisessa käynnistysvaiheessa 20 käytettävä tarkistusohjelma ja julkinen avain PK2.
Edellä esitetyn toisen tarkistusvaiheen onnistuneen suorituksen jälkeen voidaan siirtyä suorittamaan muistiin 3b tallennettua käynnistysohjelman toista käynnistyslohkoa P2. Tässä käynnistysohjelman toisessa 25 käynnistyslohkossa P2 suoritetaan mm. joidenkin muiden lukumuistiin 3b tallennettujen tietojen varmistaminen esim. edellä esitettyjä periaatteita noudattaen laskemalla yksi tai useampi digitaalinen allekirjoitus (lohko 507) ja vertaamalla sitä lukumuistiin tallennettuun vastaavaan digitaaliseen allekirjoitukseen (lohko 508). Tällaisia varmistettavia tie-30 toja ovat esimerkiksi laitekohtaiset tiedot, kuten laitetunnus DID, kansainvälinen laitetunnus IMEI, sekä palveluntarjoajakohtaiset tiedot, ku-: ten SIM-lukko SL (SIM lock), jolla matkaviestin voidaan asettaa toimi- maan vain tietyllä SIM/USIM-kortilla tai -korteilla ja/tai operaattori lukko, jolla elektroniikkalaite 1 on asetettu toimimaan vain tietyn matkapuhe-35 linoperaattorin SIM/USIM-kortilla. Käynnistysohjelman toisen käynnis-: ·*· tyslohkon P2 suoritusta voidaan jatkaa, mikäli allekirjoitukset ja muut mahdollisesti suoritetut tarkistukset olivat kunnossa. Mainittakoon, että 13 114416 edellä mainittu laitetunnus DID voi joissakin sovelluksissa olla muodostettu kansainvälisen laitetunnuksen IMEI perusteella, mutta ne voivat olla myös toisistaan riippumattomat.
5 Seuraavaksi suoritetaan vielä ainakin yksi tarkistusvaihe, jossa tutkitaan vielä tarkastamaton osa ohjelmistojen PG1, PG2, PG3 ohjelmakoodia tai ainakin osa niistä (lohko 509). Tässä tarkistusvaiheessa voidaan soveltaa edellä esitettyjä periaatteita, jolloin muistiin 3b on tallennettu vielä ainakin yksi digitaalinen allekirjoitus ja sen varmistamisessa 10 tarvittavat tiedot.
Sen jälkeen kun kaikki elektroniikkalaitteen 1 käynnistykseen määritetyt varmistukset on suoritettu, voidaan muita ohjelmistoja PG1, PG2, PG3 käynnistää (lohko 510), minkä jälkeen elektroniikkalaitetta 1 voidaan 15 käyttää normaalisti.
Edellä esitetyt julkiset avaimet voidaan myös varmentaa digitaalisella allekirjoituksella (= varmenne), jolloin saadaan suurempi varmuus julkisten avainten alkuperästä. Julkisten avainten lisäksi on muistiin 2d, 20 2e, 3b tallennettu tällöin myös vastaavat digitaaliset allekirjoitukset, jotka tarkistetaan ennen niiden käyttöä muihin varmistustoimenpiteisiin.
Vaikka edellä on esitetty käynnistysohjelman jakaminen vain ensimmäiseen P1 ja toiseen käynnistyslohkoon P2, on selvää, että keksin-25 nön yhteydessä voidaan käynnistysohjelma jakaa myös useampaan kuin kahteen käynnistyslohkoon P1, P2. Tällöin kussakin käynnistys-lohkossa suoritetaan ainakin seuraavana vuorossa olevan käynnistys-lohkon varmentaminen, ennen kuin toiminta siirtyy seuraavaan käynnistyslohkoon. Varmentamisessa käytetään tietoja, joista ainakin osa 30 on tallennettu tähän seuraavana vuorossa olevaan käynnistyslohkoon.
Edellä kuvattuja tarkistuksia voidaan suorittaa myös käynnistyksen jälkeen elektroniikkalaitteen 1 normaalin toiminnan aikana. Tällä pyritään estämään se, että esim. toimikortti vaihdetaan käynnistyksen jälkeen 35 sellaiseen toimikorttiin, jonka käyttö kyseisessä elektroniikkalaitteessa '; t j 1 ei ole sallittua, tai ulkoinen muisti 3b vaihdetaan sellaiseen muistiin, jossa on muutettua ohjelmakoodia.
14 114416
Keksinnön mukaisen elektroniikkalaitteen 1 valmistusvaiheessa ja/tai ohjelmiston päivitysvaiheessa suoritetaan tarvittavien varmistustietojen ja ohjelmistojen muodostaminen muistiin 2d, 2e, 3a, 3b edullisesti seu-5 raavasti. Ohjauslohkoon 2 tallennetaan varmistuksissa tarvittavat ohjelmakoodit, kuten käynnistysohjelman ensimmäinen käynnistyslohko P1, digitaalisen allekirjoituksen laskentaohjelma, ja salauksen muodostus ja purkualgoritmi/-algoritmit. Tätä vaihetta esittää lohko 301 kuvassa 3. Valmistaja tallentaa ohjauslohkon kertaalleen kirjoitettavaan 10 muistiin 2e myös ainakin osan laitetunnuksesta DID (lohko 303). Kertaalleen kirjoitettavaan muistiin 2e tallennetaan vielä ensimmäisen käynnistyslohkon P1 ja laitetunnuksen varmistuksessa tarvittava valmistajan julkinen avain PK1 ja digitaalinen allekirjoitus S1. Sen jälkeen kun kertaalleen kirjoitettavaan muistiin 2e on suoritettu tarvittavat tal-15 lennukset, asetetaan tarvittaessa tämä kertaalleen kirjoitettava muisti 2e tilaan, jossa muistiin ei enää voi tehdä muutoksia. Tällä pyritään estämään esim. yksittäisten bittien muuttaminen laitetunnuksessa DID tai muussa osassa kertaalleen kirjoitettavaa muistia 2e. Komponenttien asennusvaiheessa (lohko 302) suoritetaan myös kertaalleen kirjoitetta-20 van muistin 2e sisältävän ohjauslohkon 2 asennus elektroniikkalaitteen 1 piirikortille (ei esitetty). Valmistaja suorittaa käynnistysohjelman muiden lohkojen P2 ja mahdollisten sovellusohjelmistojen tallentamisen esim. uudelleen kirjoitettavissa olevaan muistiin 3b ja/tai kertaalleen kirjoitettavaan muistiin 3a (lohkot 304 ja 305). Muistiin 3b tallennetaan 25 myös käynnistysohjelman toisen käynnistyslohkon P2 varmistamisessa käytettävä valmistajan julkinen avain PK2, digitaalinen allekirjoitus S2 sekä mahdollinen varmenne. Tämän jälkeen elektroniikkalaite 1 voidaan toimittaa jälleenmyyjälle tai palveluntarjoajalle, kuten matkapuhelinoperaattorille. Tällöin elektroniikkalaitteen 1 ostajan solmiessa tilaa-30 jasopimuksen jonkin palveluntarjoajan kanssa voidaan elektroniikka-laite 1 asettaa toimimaan yhdellä tai useammalla toimikortilla 11, kuten SIM-kortilla, tai tietyn palvelutarjoajan millä tahansa toimikortilla. Tällöin palveluntarjoaja tai myyjä asettaa elektroniikkalaitteeseen 1 SIM-lukon SL tai vastaavan, sekä kyseisen elektroniikkalaitteen 1 laitetunnuksen 35 IMEI. Varmennetietokannasta CDB noudetaan tarvittaessa varmenne, jota käytetään tietojen oikeellisuuden varmentamiseen elektroniikka-laitteen 1 käynnistyksen yhteydessä aikaisemmin tässä selityksessä 15 114416 esitetyllä tavalla. Nämä määritykset tallennetaan muistiin 3, edullisesti uudelleen ohjelmoitavaan muistiin 3b. Elektroniikkalaite 1 on tämän jälkeen valmis käyttöön otettavaksi. On selvää, että edellä jälleenmyy-jän/palveluntarjoajan suorittamat toimenpiteet voi suorittaa myös laite-5 valmistaja tai laitevalmistajan valtuuttama huoltoliike. Tällöin palveluntarjoajan ja ostaja tiedot välitetään ao. liikkeeseen, jossa tietoja tallennetaan.
Palveluntarjoaja voi edellä kuvattujen varmistustietojen perusteella 10 varmistua siitä, että palveluntarjoajan palveluihin kytkeytyvä keksinnön mukainen elektroniikkalaite 1 on todella se laite, jonka tunnus elektroniikkalaitteeseen 1 on tallennettu. Lisäksi saadaan varmuus siitä, että elektroniikkalaitetta 1 ja sen sisältämiä tietoja ei ole asiattomasti muutettu.
15
Keksintöä voidaan soveltaa myös ohjelmistojen ja muiden tietojen päivittämiseen elektroniikkalaitteeseen 1. Tämä voidaan toteuttaa esimerkiksi jälleenmyyjällä ja/tai huoltoliikkeessä esim. kuvassa 4 esitetyllä järjestelyllä. Käyttäjä haluaa esimerkiksi käyttöjärjestelmästä uuden 20 version asennettavaksi elektroniikkalaitteeseen 1. Käyttöjärjestelmän valmistaja on toimittanut uuden käyttöjärjestelmäversion ao. liikkeeseen AS tai se ladataan tietoverkon välityksellä käyttöjärjestelmän valmistajalta. Latauksen yhteydessä ilmoitetaan edullisesti laitetunnus DID ja mahdollisesti myös palveluntarjoajan tunnus (lohko 401 kuvassa 25 4). Käyttöjärjestelmää ladattaessa suoritetaan tarvittavat varmennukset siitä, että kyseessä on todella lataukseen oikeutettu taho ja että käyttäjä on oikeutettu vastaanottamaan käyttöjärjestelmän uuden version elektroniikkalaitteeseensa (lohko 402). Ladattavaan käyttöjärjestelmään voidaan nyt asettaa tieto laitetunnuksesta DID, ohjelmiston val-30 mistajan julkinen avain, ja/tai digitaalinen allekirjoitus (nuoli 403), jolloin kyseisen käyttöjärjestelmäversion suoritus on rajoitettavissa vain kyseiseen elektroniikkalaitteeseen 1. Tällöin muuta kopiosuojausta ei välttämättä tarvita. Uusi käyttöjärjestelmäversio välitetään elektroniikkalaitteeseen 1 (nuoli 404) tallennettavaksi uudelleen kirjoitettavissa 35 olevaan muistiin 3b jollakin sinänsä tunnetulla menetelmällä (lohko 405).
16 114416
Tunnetaan lukuisia salausmenetelmiä, joita voidaan soveltaa nyt esillä olevan keksinnön yhteydessä. Symmetrisistä salausmenetelmistä mainittakoon tässä yhteydessä DES (Data Encryption Standard), AES (Advanced Encryption Standard) sekä RC2 (Rivest's Cipher 2) ja epä-5 symmetrisistä RSA (Rivest, Shamir, Adleman). Lisäksi on kehitetty ns. hybridijärjestelmiä, jossa käytetään sekä epäsymmetristä salausta että symmetristä salausta. Tällaisissa järjestelmissä epäsymmetristä salausta tavallisesti käytetään salataan symmetrisessä salauksessa käytettävän salausavaimen salaamiseen lähetettäväksi vastaanotta-10 jalle, jolloin varsinaisen tiedon salauksessa käytetään symmetristä salausavainta.
Epäsymmetrisessä salauksessa käytettävien julkisten avainten välitykseen on kehitetty järjestely, josta käytetään lyhennettä PKI (Public Key 15 Infrastructure). Tällainen järjestely käsittää palvelimia, joissa julkisia avaimia säilytetään ja joista avaimen tarvitsija voi avaimen noutaa. Tällainen järjestely soveltuu erityisesti yritysten käyttöön, jolloin yrityksen ei itse tarvitse lähettää julkista avaintaan jokaiselle, joka haluaa lähettää yritykseen tietoa salattuna.
20
Digitaalisia allekirjoituksia varten on kehitetty useita järjestelmiä, kuten RSA, DSA (Digital Signature Algorithm) ja ECC (Elliptic Curve Cryptography), joiden yhteydessä käytetään allekirjoitettavaa tietoa tiivistäviä algoritmeja, joista tässä mainittakoon SHA-1 (Secure Hash Algorithm) 25 ja MD5 (Message Digest 5). Kuvassa 6 on esitetty periaatekuvana digitaalisen allekirjoituksen suorittamista. Allekirjoitettava tieto 601 johdetaan hash-funktion (tiivistefunktio) suorittavaan lohkoon 602. Tämän jälkeen hash-funktiolla muodostettu tiivistetieto allekirjoitetaan 603 salaisella avaimella SK. Allekirjoitus 604 liitetään allekirjoitettavan tiedon 30 601 yhteyteen. Allekirjoitetun tiedon varmennusvaiheessa suoritetaan allekirjoituksella varmennetun tiedon johtaminen vastaavan hash-funktion suorittavaan lohkoon 605, jossa muodostetaan tiivistetieto 606. Allekirjoitus varmennetaan 607 käyttämällä allekirjoittajan salaista avainta vastaavaa julkista avainta PK, minkä jälkeen verrataan 608 tii-35 vistetietoa 606 ja allekirjoituksen varmennuksessa 607 muodostettua tietoa. Mikäli tiedot vastaavat toisiaan, allekirjoitettuun tietoon voidaan suurella todennäköisyydellä luottaa.
) I
5 17 114416
Keksinnön mukaiset vaiheet voidaan suurelta osin toteuttaa elektroniikkalaitteen 1 ohjauslohkon 2 ohjelmien suoritusvälineiden 2a ohjelmakäskyinä.
Keksintöä voidaan soveltaa myös mm. elektroniikkalaitteeseen 1 liittyvien ohjelmistojen kieliversioiden toteuttamisessa. Tällöin kutakin kieliversiosta varten muodostetaan joukko ohjelmistoja, joissa on halutut kielimääritykset. Tähän joukkoon ohjelmistoja asetetaan tiedoksi laite-10 tunnus, jolloin ohjelmistoa voidaan käyttää vain tietyssä laitteessa. Tämän varmistamiseksi sovelletaan nyt esillä olevan keksinnön mukaisia mekanismeja. Toisaalta keksinnön mukaista ratkaisua voidaan soveltaa myös siten, että elektroniikkalaitteessa 1 on määritettävissä se, mitä kieliversiota tai -versioita voidaan asentaa ja suorittaa kyseisessä 15 elektroniikkalaitteessa 1.
On selvää, että nyt esillä olevaa keksintöä ei ole rajoitettu ainoastaan edellä esitettyihin suoritusmuotoihin, vaan sitä voidaan muunnella oheisten patenttivaatimusten puitteissa.
20 *
t I

Claims (31)

114416
1. Menetelmä elektroniikkalaitteessa (1) suoritettavaksi tarkoitetun ohjelmiston luotettavuuden varmistamiseksi, johon elektroniikkalaittee- 5 seen (1) on tallennettu ainakin ensimmäinen (DID, S1, PK1) ja toinen varmistustieto (S2, PK2), jossa menetelmässä suoritetaan käynnistys-ohjelman käynnistys (501), tunnettu siitä, että käynnistysohjelmassa suoritetaan ainakin ensimmäinen (P1) ja toinen käynnistysvaihe (P2), että mainittu ensimmäinen varmistustieto on muodostettu ainakin osit-10 tain käynnistysohjelman ensimmäisen käynnistysvaiheen (P1) ohjelmakoodin perusteella, että mainittu toinen varmistustieto on muodostettu ainakin osittain käynnistysohjelman toisen käynnistysvaiheen (P2) ohjelmakoodin perusteella, että ensimmäisessä käynnistysvaiheessa tutkitaan ainakin mainitun ensimmäisen varmistustie-15 don (DID, S1, PK1) luotettavuus, jolloin mikäli varmistus osoittaa mainitun ainakin ensimmäisen varmistustiedon (DID, S1, PK1) olevan luotettava, tutkitaan ainakin toiseen käynnistysvaiheeseen liittyvä mainittu toinen varmistustieto (S2, PK2) toisen käynnistysvaiheen luotettavuuden varmistamiseksi, jolloin mikäli varmistus osoittaa mainitun ai-20 nakin yhden toiseen käynnistysvaiheeseen liittyvän toisen varmistus-tiedon (S2, PK2) olevan luotettava, suoritetaan mainitun ensimmäisen käynnistysvaiheen (P1) jälkeen mainittu toinen käynnistysvaihe (P2).
2. Patenttivaatimuksen 1 mukainen menetelmä, tunnettu siitä, että 25 mainitun ensimmäisen varmistustiedon (DID, S1, PK1) muodostuksessa käytetään ainakin osittain mainitun ensimmäisen käynnistysvaiheen ohjelmakäskyjä.
3. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, tunnettu siitä, 30 että mainitun ensimmäisen varmistustiedon (DID, S1, PK1) muodostuksessa käytetään elektroniikkalaitteen laitetunnusta (DID), joka on tallennettu elektroniikkalaitteeseen (1).
4. Patenttivaatimuksen 3 mukainen menetelmä, tunnettu siitä, että 35 mikäli mainittu elektroniikkalaitteen laitetunnus (DID) ei vastaa mainittua ensimmäisen varmistustiedon (DID, S1, PK1) muodostuksessa 114416 käytettyä laitetunnusta, elektroniikkalaitteen (1) normaali toiminta estetään.
5. Jonkin patenttivaatimuksen 1—4 mukainen menetelmä, tunnettu 5 siitä, että mainittu ensimmäinen varmistustieto (DID, S1, PK1) muodostetaan digitaalisella allekirjoituksella käyttämällä salaista avainta (S1), että elektroniikkalaitteeseen (1) tallennetaan salaista avainta (S1) vastaava julkinen avain (PK1), ja että mainitun ensimmäisen varmistustiedon (DID, S1, PK1) varmistamisessa käytetään mai- 10 nittua elektroniikkalaitteeseen (1) tallennettua julkista avainta (PK1).
6. Jonkin patenttivaatimuksen 1—5 mukainen menetelmä, tunnettu siitä, että mainitun toisen varmistustiedon (S2, PK2) muodostuksessa käytetään ainakin osittain mainitun toisen käynnistysvaiheen ohjelma- 15 käskyjä.
7. Jonkin patenttivaatimuksen 1—6 mukainen menetelmä, tunnettu siitä, että ainakin mainittu ensimmäinen varmistustieto (DID, S1, PK1) tallennetaan kertaalleen kirjoitettavissa olevaan lukumuistiin (2e). 20
8. Jonkin patenttivaatimuksen 1—7 mukainen menetelmä, tunnettu siitä, että ainakin osa mainitun ensimmäisen käynnistysvaiheen (P1) ohjelmakäskyistä tallennetaan kertaalleen kirjoitettavissa olevaan lukumuistiin (2e). ·' 25
9. Jonkin patenttivaatimuksen 1—8 mukainen menetelmä, tunnettu siitä, että mainitun ensimmäisen käynnistysvaiheen (P1) ohjelmakäskyt ja mainitun toisen käynnistysvaiheen (P2) ohjelmakäskyt tallennetaan eri muisteihin (2d, 2e, 3). • 30
10. Patenttivaatimuksen 8 tai 9 mukainen menetelmä, tunnettu siitä, että mainittu toinen varmistustieto (S2, PK2) tallennetaan samaan muistiin, johon mainitun toisen käynnistysvaiheen (P2) ohjelmakäskyt tallennetaan. ;: 35
11. Jonkin patenttivaatimuksen 1—10 mukainen menetelmä, tunnettu siitä, että mainittu toinen varmistustieto (DID, S1, PK1) muodoste- 114416 taan digitaalisella allekirjoituksella käyttämällä salaista avainta (S2), että elektroniikkalaitteeseen (1) tallennetaan salaista avainta (S2) vastaava julkinen avain (PK2), ja että mainitun toisen varmistustie-don (DID, S1, PK1) varmistamisessa käytetään mainittua elektroniik-5 kalaitteeseen (1) tallennettua julkista avainta (PK2).
12. Patenttivaatimuksen 11 mukainen menetelmä, tunnettu siitä, että digitaalisen allekirjoituksen muodostamiseksi valitaan joukko tietoja, suoritetaan valitun joukon tietoja tiivistäminen tiivisteen (H) muodosta- 10 miseksi, ja muodostetaan digitaalinen allekirjoitus mainitun tiivisteen (H) perusteella.
13. Jonkin patenttivaatimuksen 1—12 mukainen menetelmä, tunnettu siitä, että elektroniikkalaitteessa (1) suoritetaan ainakin yhtä ohjel- 15 mistoa (PG1, PG2, PG3), jonka käynnistäminen suoritetaan toisessa käynnistysvaiheessa (P2) ja johon ainakin yhteen ohjelmistoon (PG1, PG2, PG3) liitetään ainakin kolmas varmistustieto, että ennen mainitun ohjelmiston (PG1, PG2, PG3) käynnistämistä tutkitaan mainittu kolmas varmistustieto mainitun ohjelmiston (PG1, PG2, PG3) 20 luotettavuuden varmistamiseksi, jolloin mikäli mainittu ohjelmiston (PG1, PG2, PG3) luotettavuuden varmistus osoittaa mainitun ohjelmiston (PG1, PG2, PG3) olevan luotettava, ainakin yksi mainittu ohjelmisto (PG1, PG2, PG3) käynnistetään. 25 14. Järjestelmä elektroniikkalaitteessa (1) suoritettavaksi tarkoitetun ohjelmiston luotettavuuden varmistamiseksi, johon elektroniikkalaitteeseen (1) on tallennettu ainakin ensimmäinen (DID, S1, PK1) ja toinen varmistustieto (S2, PK2), ja elektroniikkalaite (1) käsittää välineet (2a) käynnistysohjelman käynnistämiseksi, tunnettu siitä, että järjestelmä 30 käsittää välineet (2) käynnistysohjelman suorittamiseksi ainakin en-! simmäisessä (P1) ja toisessa käynnistysvaiheessa (P2), että mainittu ensimmäinen varmistustieto on muodostettu ainakin osittain käynnistysohjelman ensimmäisen käynnistysvaiheen (P1) ohjelmakoodin perusteella, että mainittu toinen varmistustieto on muodostettu ainakin 35 osittain käynnistysohjelman toisen käynnistysvaiheen (P2) ohjelmakoodin perusteella, että järjestelmä käsittää lisäksi välineet ainakin mainitun ensimmäisen varmistustiedon (DID, S1, PK1) luotettavuuden 114416 tutkimiseksi mainitussa ensimmäisessä käynnistysvaiheessa (P1), ja välineet ainakin toiseen käynnistysvaiheeseen liittyvän mainitun toisen varmistustiedon (S2, PK2) tutkimiseksi toisen käynnistysvaiheen luotettavuuden varmistamista varten, jolloin mikäli mainittu ainakin en-5 simmäinen varmistustieto (DID, S1, PK1) ja mainittu ainakin yksi toiseen käynnistysvaiheeseen liittyvä toinen varmistustieto (S2, PK2) ovat mainittujen varmistusten perusteella luotettavia, mainitun ensimmäisen käynnistysvaiheen (P1) jälkeen on järjestetty suoritettavaksi mainittu toinen käynnistysvaihe (P2). 10
15. Patenttivaatimuksen 14 mukainen järjestelmä, tunnettu siitä, että mainitun ensimmäisen varmistustiedon (DID, S1, PK1) muodostuksessa on käytetty ainakin osittain mainitun ensimmäisen käynnistysvaiheen ohjelmakäskyjä. 15
16. Patenttivaatimuksen 14 tai 15 mukainen järjestelmä, tunnettu siitä, että mainitun ensimmäisen varmistustiedon (DID, S1, PK1) muodostuksessa on käytetty elektroniikkalaitteen laitetunnusta (DID), joka on tallennettu elektroniikkalaitteeseen (1). 20
17. Patenttivaatimuksen 16 mukainen järjestelmä, tunnettu siitä, että se käsittää välineet mainitun elektroniikkalaitteeseen (1) tallennetun elektroniikkalaitteen laitetunnuksen (DID) ja ensimmäisen varmistustiedon (DID, S1, PK1) muodostuksessa käytetyn laitetunnuksen vastaa- 25 vuuden vertaamiseksi, ja välineet käynnistysohjelman pysäyttämiseksi, mikäli mainittu elektroniikkalaitteen laitetunnus (DID) ei vastaa mainittua varmistustiedon (DID, S1, PK1) muodostuksessa käytettyä laite-tunnusta.
18. Jonkin patenttivaatimuksen 14—17 mukainen järjestelmä, tunnet tu siitä, että se käsittää välineet mainitun ensimmäisen varmistustiedon (DID, S1,PK1) muodostamiseksi digitaalisella allekirjoituksella käyttämällä salaista avainta (S1), välineet salaista avainta (S1) vastaavan julkisen avaimen (PK1) tallentamiseksi elektroniikkalaitteeseen (1), 35 ja välineet mainitun elektroniikkalaitteeseen (1) tallennetun julkisen avaimen (PK1) käyttämiseksi mainitun ensimmäisen varmistustiedon (DID, S1, PK1) varmistamisessa. 114416
19. Jonkin patenttivaatimuksen 14—18 mukainen järjestelmä, tunnettu siitä, että mainitun toisen varmistustiedon (S2, PK2) muodostuksessa on käytetty ainakin osittain mainitun toisen käynnistysvaiheen 5 ohjelmakäskyjä.
20. Jonkin patenttivaatimuksen 14—19 mukainen järjestelmä, tunnettu siitä, että se käsittää kertaalleen kirjoitettavissa olevan lukumuis-tin (2e), johon ainakin mainittu ensimmäinen varmistus- 10 tieto (DID, S1, PK1) on tallennettu.
21. Patenttivaatimuksen 20 mukainen järjestelmä, tunnettu siitä, että ainakin osa mainitun ensimmäisen käynnistysvaiheen (P1) ohjelma-käskyistä on tallennettu mainittuun kertaalleen kirjoitettavissa olevaan 15 lukumuistiin (2e).
22. Jonkin patenttivaatimuksen 14—21 mukainen järjestelmä, tunnettu siitä, että mainitun ensimmäisen käynnistysvaiheen (P1) ohjelma-käskyt ja mainitun toisen käynnistysvaiheen (P2) ohjelmakäskyt on 20 tallennettu eri muisteihin (2d, 2e, 3).
23. Patenttivaatimuksen 21 tai 22 mukainen järjestelmä, tunnettu siitä, että mainittu toinen varmistustieto (S2, PK2) on tallennettu samaan muistiin, johon mainitun toisen käynnistysvaiheen (P2) ohjelma- 25 käskyt on tallennettu.
24. Jonkin patenttivaatimuksen 14—23 mukainen järjestelmä, tunnettu siitä, että se käsittää välineet mainitun toinen varmistustiedon (DID, S1, PK1) muodostamiseksi digitaalisella allekirjoituksella 30 käyttämällä salaista avainta (S2), välineet salaista avainta (S1) vastaavan julkisen avaimen (PK1) tallentamiseksi elektroniikkalaitteeseen (1), ja välineet mainitun elektroniikkalaitteeseen (1) tallennetun julkisen avaimen (PK2) käyttämiseksi mainitun toisen varmistustiedon (DID, S1, PK1) varmistamisessa. ; · 35
25. Jonkin patenttivaatimuksen 14—24 mukainen järjestelmä, tunnettu siitä, että se käsittää välineet (2) ohjelmiston suorittamiseksi elektro- 114416 niikkalaitteessa (1), johon ohjelmistoon on liitetty ainakin kolmas var-mistustieto, välineet mainitun kolmannen varmistustiedon tutkimiseksi mainitun ohjelmiston luotettavuuden varmistamiseksi, välineet mainitun ohjelmiston käynnistämiseksi mainitussa toisessa käynnistysvaihees-5 sa (P2), mikäli mainittu ohjelmiston luotettavuuden varmistus osoitti mainitun ohjelmiston olevan luotettava.
26. Jonkin patenttivaatimuksen 14—25 mukainen järjestelmä, tunnettu siitä, että se käsittää ohjelmistojen latausjärjestelmän (AS), jossa 10 ohjelmistoja on tallennettuna latausta varten, välineet (9) ensimmäisen varmistustiedon (DID, S1, PK1) lähettämiseksi elektroniikkalaitteesta (1) ohjelmistojen latausjärjestelmään (AS), välineet (402, CDB) ensimmäisen varmistustiedon (DID, S1, PK1) varmentamiseksi, välineet (402) ensimmäisen varmistustiedon (DID, S1, PK1) liittämiseksi 15 elektroniikkalaitteeseen (1) ladattavaan ohjelmaan, ja välineet (404, AS) ohjelman lähettämiseksi elektroniikkalaitteeseen (1).
27. Elektroniikkalaite (1), joka käsittää välineet elektroniikkalaitteessa (1) suoritettavaksi tarkoitetun ohjelmiston luotettavuuden var- 20 mistamiseksi, johon elektroniikkalaitteeseen (1) on tallennettu ainakin ensimmäinen (DID, S1, PK1) ja toinen varmistustieto (S2, PK2), ja elektroniikkalaite (1) käsittää lisäksi välineet (2a) käynnistysohjelman käynnistämiseksi, tunnettu siitä, että elektroniikkalaite (1) käsittää välineet (2) käynnistysohjelman suorittamiseksi ainakin ensimmäi-25 sessä(P1) ja toisessa käynnistysvaiheessa (P2), että mainittu ensimmäinen varmistustieto on muodostettu ainakin osittain käynnistysohjelman ensimmäisen käynnistysvaiheen (P1) ohjelmakoodin perusteella, että mainittu toinen varmistustieto on muodostettu ainakin osittain käynnistysohjelman toisen käynnistysvaiheen (P2) ohjelmakoodin 30 perusteella, että elektroniikkalaite (1) käsittää lisäksi välineet ainakin mainitun ensimmäisen varmistustiedon (DID, S1, PK1) luotettavuuden tutkimiseksi mainitussa ensimmäisessä käynnistysvaiheessa (P1), ja välineet ainakin toiseen käynnistysvaiheeseen liittyvän mainitun toisen varmistustiedon (S2, PK2) tutkimiseksi toisen käynnistysvaiheen luo-35 tettavuuden varmistamista varten, jolloin mikäli mainittu ainakin ensimmäinen varmistustieto (DID, S1, PK1) ja mainittu ainakin yksi toiseen käynnistysvaiheeseen liittyvä toinen varmistustieto (S2, PK2) ovat 114416 mainittujen varmistusten perusteella luotettavia, mainitun ensimmäisen käynnistysvaiheen (P1) jälkeen on järjestetty suoritettavaksi mainittu toinen käynnistysvaihe (P2).
28. Patenttivaatimuksen 27 mukainen elektroniikkalaite (1), tunnettu siitä, että se käsittää välineet (9) matkaviestintoimintojen suorittamiseksi.
29. Patenttivaatimuksen 28 mukainen elektroniikkalaite (1), tunnettu 10 siitä, että se käsittää välineet (9) ohjelmistojen lataamiseksi matkaviestinverkon kautta.
30. Ohjelmisto elektroniikkalaitteessa (1) suoritettavaksi tarkoitetun ohjelmiston luotettavuuden varmistamiseksi, johon elektroniikkaiaittee- 15 seen (1) on tallennettu ainakin ensimmäinen (DID, S1, PK1) ja toinen varmistustieto (S2, PK2), ja jossa ohjelmistossa on ohjelmakäskyjä käynnistysohjelman käynnistyksen suorittamiseksi (501), tunnettu siitä, että ohjelmisto käsittää lisäksi ohjelmakäskyjä ainakin ensimmäisen (P1) ja toisen käynnistysvaiheen (P2) suorittamiseksi käynnistys-20 ohjelmassa, että mainittu ensimmäinen varmistustieto on muodostettu ainakin osittain käynnistysohjelman ensimmäisen käynnistysvaiheen (P1) ohjelmakäskyjen perusteella, että mainittu toinen varmistus-tieto on muodostettu ainakin osittain käynnistysohjelman toisen käynnistysvaiheen (P2) ohjelmakäskyjen perusteella, että ohjelmisto käsit-25 tää lisäksi ohjelmakäskyjä ainakin mainitun ensimmäisen varmistustie-don (DID, S1, PK1) luotettavuuden tutkimiseksi ensimmäisessä käynnistysvaiheessa, ohjelmakäskyjä ainakin toiseen käynnistysvaiheeseen liittyvän mainitun toisen varmistustiedon (S2, PK2) tutkimiseksi toisen käynnistysvaiheen luotettavuuden varmistamiseksi, ohjelmakäskyjä 30 mainitun toisen käynnistysvaiheen (P2) suorittamiseksi mainitun ensimmäisen käynnistysvaiheen (P1) jälkeen, mikäli mainittu ainakin ensimmäinen varmistustieto (DID, S1, PK1) ja mainittu ainakin yksi toiseen käynnistysvaiheeseen liittyvä toinen varmistustieto (S2, PK2) ovat mainittujen varmistusten perusteella luotettavia. ; 35
31. Tallennusväline (2d, 2e) elektroniikkalaitteessa (1) suoritettavaksi tarkoitetun ohjelmiston luotettavuuden varmistamiseksi käytettävän 114416 ohjelmiston tallentamiseksi, johon elektroniikkalaitteeseen (1) on tallennettu ainakin ensimmäinen (DID, S1, PK1) ja toinen varmistustie-to (S2, PK2), ja jossa ohjelmistossa on ohjelmakäskyjä käynnistysohjelman käynnistyksen suorittamiseksi (501), tunnettu siitä, että tal-5 lennusvälineelle tallennettu ohjelmisto käsittää lisäksi ohjelmakäskyjä ainakin ensimmäisen (P1) ja toisen käynnistysvaiheen (P2) suorittamiseksi käynnistysohjelmassa, että mainittu ensimmäinen varmistustieto on muodostettu ainakin osittain käynnistysohjelman ensimmäisen käynnistysvaiheen (P1) ohjelmakäskyjen perusteella, että mainittu toi-10 nen varmistustieto on muodostettu ainakin osittain käynnistysohjelman toisen käynnistysvaiheen (P2) ohjelmakäskyjen perusteella, että ohjelmisto käsittää lisäksi ohjelmakäskyjä ainakin mainitun ensimmäisen varmistustiedon (DID, S1, PK1) luotettavuuden tutkimiseksi ensimmäisessä käynnistysvaiheessa, ohjelmakäskyjä ainakin toiseen käynnis-15 tysvaiheeseen liittyvän mainitun toisen varmistustiedon (S2, PK2) tutkimiseksi toisen käynnistysvaiheen luotettavuuden varmistamiseksi, ohjelmakäskyjä mainitun toisen käynnistysvaiheen (P2) suorittamiseksi mainitun ensimmäisen käynnistysvaiheen (P1) jälkeen, mikäli mainittu ainakin ensimmäinen varmistustieto (DID, S1, PK1) ja mainittu ainakin 20 yksi toiseen käynnistysvaiheeseen liittyvä toinen varmistustieto (S2, PK2) ovat mainittujen varmistusten perusteella luotettavia. 114416
FI20011278A 2001-06-15 2001-06-15 Menetelmä elektroniikkalaitteen varmistamiseksi, varmistusjärjestelmä ja elektroniikkalaite FI114416B (fi)

Priority Applications (13)

Application Number Priority Date Filing Date Title
FI20011278A FI114416B (fi) 2001-06-15 2001-06-15 Menetelmä elektroniikkalaitteen varmistamiseksi, varmistusjärjestelmä ja elektroniikkalaite
PCT/FI2002/000517 WO2002103495A1 (en) 2001-06-15 2002-06-14 A method for securing an electronic device, a security system and an electronic device
AT02743287T ATE287102T1 (de) 2001-06-15 2002-06-14 Verfahren zur sicherung eines elektronischen geräts, sicherheitssystem und elektronisches gerät
EP02743287A EP1395892B1 (en) 2001-06-15 2002-06-14 A method for securing an electronic device, a security system and an electronic device
CA2450844A CA2450844C (en) 2001-06-15 2002-06-14 A method for securing an electronic device, a security system and an electronic device
DE60202605T DE60202605T8 (de) 2001-06-15 2002-06-14 Verfahren zur sicherung eines elektronischen geräts, sicherheitssystem und elektronisches gerät
ES02743287T ES2236530T3 (es) 2001-06-15 2002-06-14 Metodo de seguridad para un dispositivo electronico, un sistema de seguridad y un dispositivo electronico.
BR0210379-6A BR0210379A (pt) 2001-06-15 2002-06-14 Método e sistema para assegurar a confiabilidade do dispositivo eletrônico, dispositivo eletrônico, e dispositivo de armazenagem
JP2003505748A JP2004530235A (ja) 2001-06-15 2002-06-14 電子装置の安全性を保証する方法、セキュリティシステム及び電子装置
US10/173,569 US7506381B2 (en) 2001-06-15 2002-06-14 Method for securing an electronic device, a security system and an electronic device
KR1020037016192A KR100657532B1 (ko) 2001-06-15 2002-06-14 전자 장치 보안 방법, 보안 시스템 및 전자 장치
CNB028157834A CN1276319C (zh) 2001-06-15 2002-06-14 一种保护电子装置的方法,保护***及电子装置
JP2007128552A JP2007293873A (ja) 2001-06-15 2007-05-14 電子装置の安全性を保証する方法、セキュリティシステム及び電子装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI20011278A FI114416B (fi) 2001-06-15 2001-06-15 Menetelmä elektroniikkalaitteen varmistamiseksi, varmistusjärjestelmä ja elektroniikkalaite
FI20011278 2001-06-15

Publications (3)

Publication Number Publication Date
FI20011278A0 FI20011278A0 (fi) 2001-06-15
FI20011278A FI20011278A (fi) 2002-12-16
FI114416B true FI114416B (fi) 2004-10-15

Family

ID=8561425

Family Applications (1)

Application Number Title Priority Date Filing Date
FI20011278A FI114416B (fi) 2001-06-15 2001-06-15 Menetelmä elektroniikkalaitteen varmistamiseksi, varmistusjärjestelmä ja elektroniikkalaite

Country Status (12)

Country Link
US (1) US7506381B2 (fi)
EP (1) EP1395892B1 (fi)
JP (2) JP2004530235A (fi)
KR (1) KR100657532B1 (fi)
CN (1) CN1276319C (fi)
AT (1) ATE287102T1 (fi)
BR (1) BR0210379A (fi)
CA (1) CA2450844C (fi)
DE (1) DE60202605T8 (fi)
ES (1) ES2236530T3 (fi)
FI (1) FI114416B (fi)
WO (1) WO2002103495A1 (fi)

Families Citing this family (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL133584A (en) * 1999-12-19 2010-02-17 Enco Tone Ltd Method for the acoustic encodification of dynamic identification codes
US7849301B2 (en) * 2001-12-12 2010-12-07 Intel Corporation Providing a user input interface prior to initiation of an operating system
US20030163703A1 (en) * 2002-02-28 2003-08-28 Robins Mark Nelson Image key security system and method
US20030163716A1 (en) * 2002-02-28 2003-08-28 Robins Mark Nelson Card key security system and method
US7707621B2 (en) 2002-12-02 2010-04-27 Silverbrook Research Pty Ltd Creation and usage of mutually exclusive messages
US20100062844A1 (en) * 2003-03-05 2010-03-11 Bally Gaming, Inc. Authentication and validation systems for gaming devices
US7546296B2 (en) 2003-03-19 2009-06-09 Ricoh Company, Ltd. Information processing apparatus started from a program recorded on a recording medium with well-maintained security, and a recording medium storing such a program and a producing method of such a recording medium
US7549042B2 (en) 2003-12-16 2009-06-16 Microsoft Corporation Applying custom software image updates to non-volatile storage in a failsafe manner
US20050132357A1 (en) * 2003-12-16 2005-06-16 Microsoft Corporation Ensuring that a software update may be installed or run only on a specific device or class of devices
US7568195B2 (en) 2003-12-16 2009-07-28 Microsoft Corporation Determining a maximal set of dependent software updates valid for installation
US7614051B2 (en) 2003-12-16 2009-11-03 Microsoft Corporation Creating file systems within a file in a storage technology-abstracted manner
US7549148B2 (en) 2003-12-16 2009-06-16 Microsoft Corporation Self-describing software image update components
FR2864276B1 (fr) 2003-12-19 2006-04-28 Thales Sa Procede de detection de modifications illicites des logiciels constructeurs
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
JP4447977B2 (ja) 2004-06-30 2010-04-07 富士通マイクロエレクトロニクス株式会社 セキュアプロセッサ、およびセキュアプロセッサ用プログラム。
US7694121B2 (en) * 2004-06-30 2010-04-06 Microsoft Corporation System and method for protected operating system boot using state validation
US20060048222A1 (en) * 2004-08-27 2006-03-02 O'connor Clint H Secure electronic delivery seal for information handling system
US8347078B2 (en) 2004-10-18 2013-01-01 Microsoft Corporation Device certificate individualization
US8336085B2 (en) 2004-11-15 2012-12-18 Microsoft Corporation Tuning product policy using observed evidence of customer behavior
US8176564B2 (en) * 2004-11-15 2012-05-08 Microsoft Corporation Special PC mode entered upon detection of undesired state
JP2006221629A (ja) * 2005-02-07 2006-08-24 Sony Computer Entertainment Inc プロセッサのリソース管理によるコンテンツ制御方法および装置
US8423788B2 (en) 2005-02-07 2013-04-16 Sandisk Technologies Inc. Secure memory card with life cycle phases
US8108691B2 (en) 2005-02-07 2012-01-31 Sandisk Technologies Inc. Methods used in a secure memory card with life cycle phases
US8321686B2 (en) 2005-02-07 2012-11-27 Sandisk Technologies Inc. Secure memory card with life cycle phases
US20060236122A1 (en) * 2005-04-15 2006-10-19 Microsoft Corporation Secure boot
US9436804B2 (en) 2005-04-22 2016-09-06 Microsoft Technology Licensing, Llc Establishing a unique session key using a hardware functionality scan
US9363481B2 (en) 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
US7748031B2 (en) 2005-07-08 2010-06-29 Sandisk Corporation Mass storage device with automated credentials loading
US20070023502A1 (en) * 2005-07-26 2007-02-01 Ming-Chih Tsai Composite electronic card device
US20080220880A1 (en) * 2005-09-07 2008-09-11 Bally Gaming, Inc. Trusted Cabinet Identification System
US20080220879A1 (en) * 2005-09-07 2008-09-11 Bally Gaming, Inc. Trusted Cabinet Identification Method
US8966284B2 (en) 2005-09-14 2015-02-24 Sandisk Technologies Inc. Hardware driver integrity check of memory card controller firmware
US20070061597A1 (en) 2005-09-14 2007-03-15 Micky Holtzman Secure yet flexible system architecture for secure devices with flash mass storage memory
JP4891324B2 (ja) * 2005-09-14 2012-03-07 サンディスク コーポレイション 大容量フラッシュメモリを備える高信頼性デバイスのための、セキュアでありながらフレキシブルなシステムアーキテクチャ
US8046833B2 (en) * 2005-11-14 2011-10-25 Sourcefire, Inc. Intrusion event correlation with network discovery information
US20070288740A1 (en) * 2006-06-09 2007-12-13 Dale Jason N System and method for secure boot across a plurality of processors
US7594104B2 (en) * 2006-06-09 2009-09-22 International Business Machines Corporation System and method for masking a hardware boot sequence
US20070288761A1 (en) * 2006-06-09 2007-12-13 Dale Jason N System and method for booting a multiprocessor device based on selection of encryption keys to be provided to processors
US7774616B2 (en) * 2006-06-09 2010-08-10 International Business Machines Corporation Masking a boot sequence by providing a dummy processor
US20070288738A1 (en) * 2006-06-09 2007-12-13 Dale Jason N System and method for selecting a random processor to boot on a multiprocessor system
US20080134319A1 (en) * 2006-11-30 2008-06-05 Kestrelink Corporation License verification
US8423794B2 (en) 2006-12-28 2013-04-16 Sandisk Technologies Inc. Method and apparatus for upgrading a memory card that has security mechanisms for preventing copying of secure content and applications
US8239688B2 (en) 2007-01-07 2012-08-07 Apple Inc. Securely recovering a computing device
US8254568B2 (en) * 2007-01-07 2012-08-28 Apple Inc. Secure booting a computing device
US20080222428A1 (en) * 2007-03-07 2008-09-11 Andrew Dellow Method for Securing Authenticity of Data in a Digital Processing System
US8327456B2 (en) * 2007-04-13 2012-12-04 Microsoft Corporation Multiple entity authorization model
US8209550B2 (en) * 2007-04-20 2012-06-26 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for protecting SIMLock information in an electronic device
SE532600C2 (sv) * 2007-06-29 2010-03-02 Oniteo Ab Metod och system för säker provisionering av hårdvara
GB2454640A (en) * 2007-07-05 2009-05-20 Vodafone Plc Received message verification
DE102007044905A1 (de) * 2007-09-19 2009-04-09 InterDigital Patent Holdings, Inc., Wilmington Verfahren und Vorrichtung zur Ermöglichung einer Dienstnutzung und Feststellung der Teilnehmeridentität in Kommunikationsnetzen mittels softwarebasierten Zugangsberechtigungsausweisen (vSIM)
US20090125996A1 (en) 2007-09-19 2009-05-14 Interdigital Patent Holdings, Inc. Virtual subscriber identity module
US9069990B2 (en) 2007-11-28 2015-06-30 Nvidia Corporation Secure information storage system and method
US8621191B2 (en) * 2007-12-26 2013-12-31 Nokia Corporation Methods, apparatuses, and computer program products for providing a secure predefined boot sequence
US8719585B2 (en) 2008-02-11 2014-05-06 Nvidia Corporation Secure update of boot image without knowledge of secure key
US9069706B2 (en) 2008-02-11 2015-06-30 Nvidia Corporation Confidential information protection system and method
US9158896B2 (en) 2008-02-11 2015-10-13 Nvidia Corporation Method and system for generating a secure key
US9613215B2 (en) * 2008-04-10 2017-04-04 Nvidia Corporation Method and system for implementing a secure chain of trust
US8150039B2 (en) 2008-04-15 2012-04-03 Apple Inc. Single security model in booting a computing device
JP2009260688A (ja) * 2008-04-17 2009-11-05 Dialogue Technology Corp ワイヤレス広域通信網におけるリモート端末装置のセキュリティシステムとその方法
TW200945192A (en) * 2008-04-28 2009-11-01 Asustek Comp Inc Motherboard and method for recovering BIOS thereof and for booting computer
DE102008021567B4 (de) * 2008-04-30 2018-03-22 Globalfoundries Inc. Computersystem mit sicherem Hochlaufmechanismus auf der Grundlage einer Verschlüsselung mit symmetrischem Schlüssel
US20090327741A1 (en) * 2008-06-30 2009-12-31 Zimmer Vincent J System and method to secure boot uefi firmware and uefi-aware operating systems on a mobile internet device (mid)
US8443181B2 (en) * 2008-09-30 2013-05-14 Qualcomm Incorporated Processor boot security device and methods thereof
JP5278813B2 (ja) * 2009-03-25 2013-09-04 セイコーエプソン株式会社 リアルタイムクロックおよび電子機器のセキュリティ設定方法
GB2477774A (en) * 2010-02-12 2011-08-17 Icera Inc Overriding production processor authentication restrictions through remote security unit for development code testing
CN102236754B (zh) * 2010-05-07 2014-01-01 扬智科技股份有限公司 数据保密方法以及使用此数据保密方法的电子装置
EP2405377B1 (en) * 2010-07-09 2017-12-27 BlackBerry Limited Securing a component prior to manufacture of a device
US9032186B2 (en) 2010-07-09 2015-05-12 Blackberry Limited Utilization of a microcode interpreter built in to a processor
WO2012003591A1 (en) 2010-07-09 2012-01-12 Research In Motion Limited Microcode-based challenge/response process
DE102010047186B4 (de) * 2010-09-30 2021-03-25 Infineon Technologies Ag Verfahren zum Unterstützen einer Bindung eines Chips an ein elektronisches Gerät und Chip bzw. elektronisches Gerät hierfür
US20120204254A1 (en) * 2011-02-04 2012-08-09 Motorola Mobility, Inc. Method and apparatus for managing security state transitions
JP2014170255A (ja) * 2011-06-29 2014-09-18 Panasonic Corp セキュアブート方法
US8386763B1 (en) * 2012-01-04 2013-02-26 Google Inc. System and method for locking down a capability of a computer system
US9489924B2 (en) 2012-04-19 2016-11-08 Nvidia Corporation Boot display device detection and selection techniques in multi-GPU devices
US9223982B2 (en) * 2013-03-01 2015-12-29 Intel Corporation Continuation of trust for platform boot firmware
CN104182242A (zh) * 2013-05-28 2014-12-03 华为技术有限公司 一种***启动方法及装置
US9195831B1 (en) 2014-05-02 2015-11-24 Google Inc. Verified boot
CN106934289A (zh) * 2015-12-30 2017-07-07 北京展讯高科通信技术有限公司 校验及形成签名映像的方法
US11080428B2 (en) 2016-02-04 2021-08-03 Telefonaktiebolaget Lm Ericsson (Publ) Actor migration
JP6516870B2 (ja) * 2016-02-09 2019-05-22 シーメンス アクチエンゲゼルシヤフトSiemens Aktiengesellschaft プログラム命令を安全に実行する方法及び該方法用プログラム
US11374760B2 (en) * 2017-09-13 2022-06-28 Microsoft Technology Licensing, Llc Cyber physical key
DE102021207628A1 (de) * 2021-07-16 2023-01-19 Siemens Mobility GmbH Rechenanlage und Verfahren zu deren Betrieb

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3316414A1 (de) 1982-05-12 1983-12-22 Bally Manufacturing Corp., 60618 Chicago, Ill. Geraet und verfahren zum sicherstellen der unversertheit eines spielgeraets
JPH01296361A (ja) * 1988-05-25 1989-11-29 Mitsubishi Electric Corp メモリカード
US5293610A (en) * 1989-08-04 1994-03-08 Motorola, Inc. Memory system having two-level security system for enhanced protection against unauthorized access
US5379342A (en) * 1993-01-07 1995-01-03 International Business Machines Corp. Method and apparatus for providing enhanced data verification in a computer system
US5509120A (en) * 1993-11-30 1996-04-16 International Business Machines Corporation Method and system for detecting computer viruses during power on self test
US5643086A (en) * 1995-06-29 1997-07-01 Silicon Gaming, Inc. Electronic casino gaming apparatus with improved play capacity, authentication and security
US5918047A (en) * 1996-01-26 1999-06-29 Texas Instruments Incorporated Initializing a processing system
US5802592A (en) * 1996-05-31 1998-09-01 International Business Machines Corporation System and method for protecting integrity of alterable ROM using digital signatures
US6138236A (en) 1996-07-01 2000-10-24 Sun Microsystems, Inc. Method and apparatus for firmware authentication
US6026293A (en) * 1996-09-05 2000-02-15 Ericsson Inc. System for preventing electronic memory tampering
JP3293760B2 (ja) * 1997-05-27 2002-06-17 株式会社エヌイーシー情報システムズ 改ざん検知機能付きコンピュータシステム
FI105306B (fi) 1997-06-10 2000-07-14 Nokia Networks Oy Radiojärjestelmä
US5919257A (en) * 1997-08-08 1999-07-06 Novell, Inc. Networked workstation intrusion detection system
US6032257A (en) * 1997-08-29 2000-02-29 Compaq Computer Corporation Hardware theft-protection architecture
JPH11169546A (ja) * 1997-12-12 1999-06-29 Sophia Co Ltd 遊技装置の監視システム
JPH11355468A (ja) * 1998-06-12 1999-12-24 Hitachi Ltd ネットワーク端末器、それを用いたネットワークシステムおよびネットワーク接続方法
US6405311B1 (en) * 1998-07-28 2002-06-11 Compaq Computer Corporation Method for storing board revision
US6735696B1 (en) * 1998-08-14 2004-05-11 Intel Corporation Digital content protection using a secure booting method and apparatus
JP2000174527A (ja) * 1998-12-08 2000-06-23 Toshiba Corp 携帯型電子機器
US6470457B1 (en) * 1998-12-14 2002-10-22 International Business Machines Corporation Local permanent storage in network computer
JP2000322253A (ja) * 1999-05-14 2000-11-24 Namco Ltd セキュリティ・システム
US6594761B1 (en) 1999-06-09 2003-07-15 Cloakware Corporation Tamper resistant software encoding
EP1076279A1 (en) 1999-08-13 2001-02-14 Hewlett-Packard Company Computer platforms and their methods of operation
US7073064B1 (en) * 2000-03-31 2006-07-04 Hewlett-Packard Development Company, L.P. Method and apparatus to provide enhanced computer protection
US6625730B1 (en) * 2000-03-31 2003-09-23 Hewlett-Packard Development Company, L.P. System for validating a bios program and memory coupled therewith by using a boot block program having a validation routine
US6625729B1 (en) * 2000-03-31 2003-09-23 Hewlett-Packard Company, L.P. Computer system having security features for authenticating different components
US6584561B1 (en) * 2000-09-19 2003-06-24 Dell Products L.P. System and method to modify CD boot
US7000249B2 (en) * 2001-05-18 2006-02-14 02Micro Pre-boot authentication system
US7409539B2 (en) * 2004-08-06 2008-08-05 International Business Machines Corporation System design and code update strategy to implement a self-healing, self-verifying system
US7516315B2 (en) * 2005-03-18 2009-04-07 Research In Motion Ltd. Electronic device having an alterable configuration and methods of manufacturing and configuring the same
CN100426228C (zh) * 2005-05-20 2008-10-15 鸿富锦精密工业(深圳)有限公司 切换计算机启动顺序的***及方法
US7987351B2 (en) * 2006-10-06 2011-07-26 Broadcom Corporation Method and system for enhanced boot protection

Also Published As

Publication number Publication date
CA2450844A1 (en) 2002-12-27
KR100657532B1 (ko) 2006-12-13
CN1541352A (zh) 2004-10-27
CN1276319C (zh) 2006-09-20
ES2236530T3 (es) 2005-07-16
EP1395892A1 (en) 2004-03-10
FI20011278A0 (fi) 2001-06-15
DE60202605D1 (de) 2005-02-17
DE60202605T8 (de) 2006-04-27
US20030014663A1 (en) 2003-01-16
ATE287102T1 (de) 2005-01-15
BR0210379A (pt) 2004-08-10
JP2007293873A (ja) 2007-11-08
CA2450844C (en) 2012-08-21
EP1395892B1 (en) 2005-01-12
KR20040007685A (ko) 2004-01-24
US7506381B2 (en) 2009-03-17
WO2002103495A1 (en) 2002-12-27
DE60202605T2 (de) 2006-01-05
JP2004530235A (ja) 2004-09-30
FI20011278A (fi) 2002-12-16

Similar Documents

Publication Publication Date Title
FI114416B (fi) Menetelmä elektroniikkalaitteen varmistamiseksi, varmistusjärjestelmä ja elektroniikkalaite
US9281949B2 (en) Device using secure processing zone to establish trust for digital rights management
TWI416932B (zh) 用於預防複製之裝置結合快閃/開機技術
JP4912879B2 (ja) プロセッサの保護された資源へのアクセスに対するセキュリティ保護方法
CN109937419B (zh) 安全功能强化的设备的初始化方法及设备的固件更新方法
US8150039B2 (en) Single security model in booting a computing device
US8392724B2 (en) Information terminal, security device, data protection method, and data protection program
US20040025010A1 (en) Computing platform certificate
US20060005046A1 (en) Secure firmware update procedure for programmable security devices
WO2012106878A1 (zh) 信息安全处理的方法及装置
WO2015042981A1 (zh) 加解密处理方法、装置和设备
JP2004280284A (ja) 制御プロセッサ、電子機器及び電子機器のプログラム起動方法、並びに電子機器のシステムモジュール更新方法
CN109388961B (zh) 存储设备的安全控制方法及存储设备
US9940462B2 (en) Code validation
CN109814934B (zh) 数据处理方法、装置、可读介质和***
US20220245286A1 (en) Method for protecting device software integrity in continuity scenario
CN114297679B (zh) 一种镜像加密传输与升级的方法
CN117708897A (zh) 用于保护嵌入式设备固件数据的方法以及嵌入式设备
CN117708896A (zh) 用于保护嵌入式设备固件数据的方法以及嵌入式设备

Legal Events

Date Code Title Description
FG Patent granted

Ref document number: 114416

Country of ref document: FI

PC Transfer of assignment of patent

Owner name: NOKIA TECHNOLOGIES OY

PC Transfer of assignment of patent

Owner name: PROVENANCE ASSET GROUP LLC

MA Patent expired