Blogin edellisessä osassa käsiteltiin jo fyysistä suojausta ja mm. tietoliikenteen suojausta. Klikkaa päästäksesi blogin ensimmäiseen osaan.
Suurin osa nykyisestä kuluttajaelektroniikasta sisältää huomattavan määrän ohjelmistotekniikkaa. Elektronisen tuotteen arvosta suurin osa on ohjelmistoteknologiaa. Ohjelmistoilla saavutetaan tuotteeseen lisää joustavuutta.
Monimutkaisuus on pahasta → yksinkertaista
Mitä monimutkaisempi järjestelmä on, sitä työläämpi ja vaativampi sen tietoturvan kohottaminen on. Usein järjestelmistä tehdään turhan monimutkaisia, koska halutaan jättää järjestelmään joustavuutta. Joustavuuden hintana on, että useita eri komponentteja sisältävä järjestelmä sisältää myös enemmän mahdollisia heikkouksia. Tietoturvamielessä tarkastelu pitää ulottaa kaikkiin järjestelmän komponentteihin. Järjestelmän suunnittelussa pitää tehdä päätöksiä siitä, kuinka yksinkertaisella anturilla tavoite saavutetaan. Yksinkertaisemmista osista koostuvia järjestelmiä on myös helpompi testata ja valvoa, kuin monimutkaisia. |
Käyttöikä
Myös teknologian edistyminen saattaa muuttaa käyttöiän laskentaa. Esimerkkinä vaikkapa henkilöautot; polttomoottorikäyttöiset autot käynnistetään ja sammutetaan usein, eivätkä ne ole käytössä (kuluttajakäytössä) kuin murto-osan vuorokaudesta. Modernit sähköautot puolestaan sisältävät hyvin paljon auton valvontajärjestelmiä ja muita koko ajan päällä olevia elektronisia komponentteja, jotka käynnistyvät tehtaalla auton valmistuessa ja sammutetaan kun auto romutetaan. Identtisellä lisälaitteella voi saavuttaa sille suunnitelulla käyttöiällä, vaikkapa 5 vuotta, hyvin erilaiset toteutuvat käyttöiät sähköautossa ja polttomoottoriautossa.
Käyttöiän päättymisen jälkeen laitteessa saattaa esiintyä häiriöitä tai toiminnan muutoksia, jotka myös altistavat sen väärinkäytölle. Vanhentuneet ohjelmistot ovatkin sitten kokonaan oma tarinansa, ja niiden puutteita on käytetty hyväksi tietomurroissa ja -häiriköinnissä jo vuosikymmeniä.
Yksisuuntaisuus
Yksi tapa lähestyä elektroniikkalaitteen suunnittelua, on suunnitella tietoliikenne yksisuuntaiseksi. Esimerkiksi aiemmin kuviteltu mittausanturi, jos suunnitteluvaiheessa on mietitty vaikkapa mittausväliä muuttuvana ja anturi pyytää säännöllisin ajoin uutta mittausväliä. Tai mittausväli voidaan jo suunnitteluvaiheessa sitoa kalenteriin – talvella mittauksia tarvitaan harvemmin, kun vuorokauden keskilämpötila on pakkasen puolella, mutta keväällä kun avovettä alkaa olla, on mittausväliä tihennettävä.
Jos anturin ohjelmistosta tehdään yksinkertainen, mutta se testataan kattavasti, ei se lähtökohtaisesti vaadi ohjelmistopäivityksiä. Jos laite ei huoli ohjelmistopäivityksiä ulkopuolelta, on yksi mahdollinen hyökkäysvektori suljettu. Tämä yksinään ei tee laitteesta tietoturvallista, mutta on yhtenä osana tietoturvallisen laitteen suunnittelua.
Paikallinen tallennus
Tietoliikenteessä voidaan olettaa olevan häiriöitä, kun laitteen käyttöajat ovat pitkiä. Häiriöiden kesto ja laajuus vaihtelevat. Mittausantureihin tulisi toteuttaa paikallista tallennustilaa, jolloin tietoliikenteen häiriöt eivät haittaa mittauksia. Häiriöhän saattaa aiheutua vaikkapa rikkoutuneesta radiolaitteesta, joka ei häiritse mittauksia ainoastaan mittaustulosten toimittamista eteenpäin. Löydetystä ja pelastetusta anturista voidaan jälkeenpäin lukea mittausdata ja täydentää näin mittaussarja puuttuvilta osin.
Toisinaan häiriöt ovat vain hetkellisiä, jolloin yhteyden palautuessa anturi kykenee lähettämään mittaustuloksensa. Vastaanottavan järjestelmän on tällöin kyettävä ottamaan vastaan myös historiallista dataa.
Itsediagnostiikka
Elektronisen laitteen tulisi suorittaa käynnistymisen yhteydessä itsediagnostiikka. Sen pitäisi testata antureiden olemassa olevuus ja niiden toiminta, muistilaitteiden-, virtalähteen-, sekä kommunikaatiokanavan toiminta. Eri vikatilanteille tulisi määritellä toipumistoimenpiteet. Monimutkaiselle laitteelle, kuten avaruusalukselle, diagnostiikan suorittaminen on enemmän aikaa vievä.
Laitteen toimintaympäristön perusteella pitäisi myös määritellä se, kuinka usein itsediagnostiikka suoritetaan laitteen ollessa toiminnassa. Diagnostiikan tuloksia pitäisi myös verrata ennustettuun muutosprofiiliin; jos esimerkiksi kaasun pitoisuusmittarin tiedetään deteroituvan (mittaustulos sisältää enemmän virhettä) ajan kuluessa, olisi tämä muutos hyvä ottaa mukaan itsediagnostiikan tuloksia tulkittaessa.
Suunnittelussa tulisi myös määritellä, mitä toimenpiteitä vikaantuneen laitteen tulee tehdä ja miten eri anturien vikatilat tulee ilmoittaa. Onko laitteella ulkoisia indikaattoreita, kuten virhetilaa osoittava ledi, näyttö tai kaiutin, jonka kautta vikailmoitus voidaan välittää käyttäjälle.
Säännölliset ohjelmistopäivitykset
Mikäli järjestelmässä on komponentteja, joihin päivityksiä on saatavilla, tulee niitä myös asentaa. Ennen asennusta on hyvä todentaa päivityksen vaikutukset muihin komponentteihin, ns. varjojärjestelmässä, joka vastaa toiminnallista järjestelmää kaikilta olennaisilta osiltaan. Tämä on erityisen tärkeää toiminnaltaan kriittisissä järjestelmissä.
Valvonta
Elektronisen laitteen suunnittelun jälkeen se valmistetaan ja otetaan käyttöön. Laitteen toimintaa ja sen tilaa tulisi valvoa, jotta voidaan olla varmoja toiminnan oikeellisuudesta. Vikaantuneet laitteet tulee poistaa toiminnasta tai huoltaa. Useita tietomurtoja on toteutettu vikaantuneiden, mutta edelleen käytössä olleiden laitteiden kautta.
Yhteenveto
Tietoturvallisemman elektroniikan suunnittelu on yhdistelmä edellä esitetyistä perusasioista. Tärkein asia on tarkastella elektroniikkaa osana suurempaa järjestelmää, eikä erillisenä osana. Koko järjestelmän toiminta tulee myös dokumentoida, kattaen kaikki sen osat. Tietoturvallisen elektroniikan valmistus tapahtuu suunnitellusti, testatusti sekä dokumentoidusti.