Source: http://docplayer.fi/723248-Santeri-siltala-kiistamattomyysprotokollat.html
Timestamp: 2018-01-23 03:47:19+00:00
Document Index: 22834171

Matched Legal Cases: ['kko ', 'kko ', 'kko ', 'kko ', 'kko ', 'kko ']

SANTERI SILTALA KIISTÄMÄTTÖMYYSPROTOKOLLAT - PDF
SANTERI SILTALA KIISTÄMÄTTÖMYYSPROTOKOLLAT
Download "SANTERI SILTALA KIISTÄMÄTTÖMYYSPROTOKOLLAT"
1 SANTERI SILTALA KIISTÄMÄTTÖMYYSPROTOKOLLAT Kandidaatintyö Tarkastaja: Pekka Uotila
2 II TIIVISTELMÄ TAMPEREEN TEKNILLINEN YLIOPISTO Signaalinkäsittelyn ja tietoliikennetekniikan koulutusohjelma SILTALA, SANTERI: Kiistämättömyysprotokollat Kandidaatintyö, 22 sivua. Kesäkuu 2010 Pääaine: Tietoliikennetekniikka Tarkastaja: Pekka Uotila Avainsanat: Kiistämättömyys, tietoturva, protokolla Tässä työssä tutustutaan lyhyesti kiistämättömyyden käsitteeseen ja tarkoitukseen sähköisessä kaupankäynnissä. Verkossa tapahtuva asiointi, etenkin maksaminen, vaatii nykypäivänä keinon sitoa osapuolet tehtyyn sopimukseen tai kanssakäymiseen. Tämän avuksi on kehitetty kiistämättömyysprotokollia. Näiden avulla osapuolet voivat varmistua toistensa identiteetistä, eivätkä voi kiistää osallistuneensa kanssakäymiseen sen päätyttyä. Esiteltävänä on kolme erilaista protokollaa, joilla osapuolten välinen kiistämättömyys voidaan saavuttaa. Protokollista esitellään lyhyesti niiden toiminta, sekä arvioidaan subjektiivisesti niiden soveltuvuutta sähköisen kaupankäynnin tukena. Yhdestäkään tässä työssä käsitellystä protokollasta ei ollut sellaisenaan ratkaisemaan kaikkia sähköiseen kaupankäyntiin liittyviä ongelmia. Protokollien turvallisuus ja tehokkuus riippuvat myös huomattavasti käytettävästä kryptoalgoritmista. Myöskään yksikään protokollista ei ottanut kantaa vuorovaikutukseen olemassa olevien protokollien kanssa.
3 III SISÄLLYS Tiivistelmä... II Termit ja niiden määritelmät... IV 1 Johdanto Kiistämättömyyden tarkoitus Sähköinen kaupankäynti Viestintä Sähköinen allekirjoitus Kiistämättömyysprotokollat Kiistämättömyystodisteet viestinnän mukana Luotettu taho varmistaa osapuolet Protokollien arviointikriteerejä Kiistämättömyysprotokollien toteutuksia Kiistämättömyyden tehokkaasti sähköisessä ympäristössä toteuttava protokolla Toteutus Analyysi Yksityisyyden suojaava protokolla Lähtökohta Kolikon nostaminen Kolikon käyttö Turvallisuusnäkökohtia Analyysi Mikromaksamisprotokolla Tiivisteketju Toiminta Analyysi Yhteenveto Lähteet... 23
4 IV TERMIT JA NIIDEN MÄÄRITELMÄT CA CE DSA IAA IP MD5 NA RSA SHA SSL TCP TLS TTP VOD WLAN Certificate Authority; Varmentaja. Myöntää varmenteita niitä tarvitseville osapuolille. Central Entity; Palveluntarjoaja. Maksua vaativan palvelun tarjoaja. Digital Signature Algorithm; Algoritmi digitaalisten allekirjoitusten luomiseen. Information Archiving Authority; Luotettava tietovarasto. Säilöö osapuolten välisessä sopimuksessa syntyviä kiistämättömyystodisteita. Internet Protocol; Verkkokerroksen protokolla. Message Digest; Viestitiivistealgoritmi. Notary Authority; Notaaripalvelu. Toimii avustavana osapuolena asiakkaan ja palveluntarjoajan välisten sopimusten luomisessa Rivest, Shamir, Addleman; Epäsymmetrinen julkisen avaimen salausalgoritmi. Secure Hash Algorithm; Kryptografinen tiivistefunktio. Secure Sockets Layer; Salausprotokolla, jolla voidaan suojata Internet-sovellusten tietoliikenne IP-verkkojen yli. Transmission Control Protocol; Yhteydellinen kuljetuskerroksen protokolla Transport Layer Security; Uudempi versio SSL:sta. Trusted Third Party; Luotettu osapuoli. Varmistaa viestinnän osapuolien identiteetit toisilleen. Video on Demand; Tilausvideopalvelu. Asiakas voi halutessaan ostaa videovirtaa palveluntarjoajalta. Wireless Local Area Network; Langaton lähiverkkotekniikka.
5 1 1 JOHDANTO Tässä kandidaatintyössä luodaan yleiskatsaus olevassa oleviin kiistämättömyysprotokolliin. Suurin osa näistä on olemassa vasta konseptuaalisella tasolla, eikä niitä ole vielä implementoitu mihinkään oikeaan sovellukseen. Usean protokollan toiminta-ajatus on pohjimmiltaan sama, ja suurin osa löytyneistä julkaisusta sisälsikin ainoastaan pieniä parannuksia olemassa oleviin toteutuksiin. Tähän työhön on valittu ne protokollat, jotka pyrkivät tuomaan jotain uutta perinteisiin toteutuksiin. Toteutusten osalta on perehdytty erityisesti siihen, mitä uusia haasteita kiistämättömyys sisältää sähköisessä ympäristössä verrattuna perinteiseen kanssakäyntiin. Näitä ovat mm. osapuolten identiteetin varmistus, kiistämätön sitominen maksutapahtumiin ja osapuolten anonymiteetin säilyttäminen. Kunkin protokollan esittelyssä kuvataan ensin lyhyesti ongelma, jonka ratkaisuun se pyrkii, itse protokollan toteutus, sekä analysoidaan sen soveltuvuutta sähköisen kaupankäynnin eri tarkoituksiin. Huomiota on myös kiinnitetty protokollan toimivuuteen mobiililaitteilla, jotka asettavat haasteita protokollan suorituskyvylle.
6 2 2 KIISTÄMÄTTÖMYYDEN TARKOITUS Kiistämättömyyden tarkoituksena on varmistaa, että viestintään tai sopimukseen osallistuneet osapuolet eivät jälkikäteen voi kiistää olleensa mukana kanssakäymisessä. Epärehellinen osapuoli voi joko kiistää osallistuneensa kanssakäymiseen ylipäätään tai väittää tehtyä varmistusta, esimerkiksi allekirjoitusta, väärennetyksi. Kiistämättömyyspalveluita tarvitaan pääasiallisesta verkossa käytävän liiketoiminnan tukena. Sähköisessä kanssakäymisessä osapuolten identiteetistä on huomattavasti vaikeampi varmistua. Lisäksi osapuolten on helpompi kiistää osallistuneensa sopimukseen. Näin ollen tarvitaan menettely, jolla osapuolet voidaan sitoa luotettavasti tehtyyn sopimukseen tai näiden väliseen viestintään. Etenkin rahaliikenteessä on tärkeää, että kumpikaan liiketoimintaan osallistunut osapuoli ei pysty kiistämään liiketointa. Perinteisissä tilanteissa kiistämättömyyden varmistamiseen on käytetty osapuolten allekirjoitusta. Samalla myös osapuolet ovat helposti voineet varmistua toistensa identiteetistä, koska sopimus on tehty jossain fyysisessä paikassa. Lisäksi kumman tahansa osapuolen on ollut helppo vetäytyä tilanteesta, jos kanssakäymisen yhteydessä on havaittu epärehellisyyttä. On kuitenkin mahdollista, että jälkeenpäin toinen osapuolista voi väittää esimerkiksi allekirjoituksen olevan väärennetty. Näin ollen myös perinteisessä sopimustilanteissa tarvitaan jonkin luotettavan osapuolen, esimerkiksi notaarin tai lakimiehen mukanaoloa. Kiistämättömyys pyrkii siis luomaan todisteet tietojen eheydestä, alkuperästä ja koskemattomuudesta, jotka jokin kolmas osapuoli voi tarvittaessa varmentaa. Taulukossa 1 on kuvattu ominaisuuksia, joita kiistämättömyysprotokollan tulee toteuttaa. Tyypillisesti kiistämättömyydessä ovat mukana ainakin seuraavat toimijat [1]: Lähettäjä. Toimii viestin alkuperäisenä lähettäjänä. Lähettäjän tulee kiistämättömyydessä taata todisteet siitä, että on alunperin lähettänyt viestin. Vastaanottaja. Vastaanottaja vastaanottaa lähettäjän lähettämän viestin. Vastaanottajan tulee taata todisteet siitä, että on vastaanottanut alunperin lähetetyn viestin. Välittäjä. Tyypillisesti osapuolten välillä oleva tietoverkko. Välittäjän tulee taata todisteet siitä, että on välittänyt lähettäjältä saaneensa viestin vastaanottajalle. Tai vaihtoehtoisesti todisteet siitä, että se on välittänyt viestin edelleen vastaanottajalle. Luotettu taho. Varmentaa osapuolten identiteetit. Lisäksi voi säilöä viestinnästä kertyneitä todisteita.
7 3 Taulukko 1. Kiistämättömyyden vaatimukset [2]. Vaatimus Todisteet lähettäjästä. Todisteet vastaanottajasta. Todisteet toimittajasta. Todisteet toimituksesta. Todisteet omistajuudesta. Todisteet siirrosta. Todisteet noudosta. Todisteet hyväksynnästä. Kuvaus Lähettäjä ei voi kiistää olleensa mukana kanssakäymisessä ja siihen liittyvässä viestinnässä ja sen sisällössä. Vastaanottaja ei voi kiistää olleensa mukana kanssakäymisessä tai saaneensa siihen liittyviä viestejä. Viestin välittäjä ei voi kiistää hyväksyneensä viestiä välitettäväksi. Viestin välittävä taho (verkko) ei voi kiistää välittäneensä viestiä vastaanottajalle. Kolmas osapuoli ei voi väittää omistavansa viestinnässä käytettyä tietoa. Tarkastelee viestin välittävien tahojen luotettavuutta. Tarkastelee tiedon välittäjän ja lähettäjän välisen toiminnan haavoittuvuutta Viestin vastaanottaja ei voi kiistää vastaanottaneensa ja hyväksyneensä viestiä. 2.1 Sähköinen kaupankäynti Sähköisten tuotteiden kaupankäynnin yhteydessä ongelma on esimerkiksi sellainen, että asiakas haluaa ostaa digitaalisen tuotteen verkossa olevasta liikkeestä, eikä halua maksaa, ennen kuin on saanut tuotteen haltuunsa. Toisaalta kauppias ei halua luovuttaa tuotetta, ennen kuin on saanut maksun. Jos kauppias luovuttaa tuotteen ennen maksua, voi epärehellinen asiakas kadota maksamatta ja epärehellinen kauppias voi puolestaan jättää tuotteen toimittamatta maksun saatuaan. Toisenlainen ongelma on mikromaksaminen. Asiakas haluaa esimerkiksi käyttää WLAN-yhteyttä tietyn ajan. Jos asiakas maksaa koko käyttöajasta kerralla, voi syntyä tilanne, että yhteys katkeaa teknisen vian takia. Näin ollen asiakas joutuu maksamaan turhaan käyttämättömästä ajasta. Lisäksi asiakkaan on erittäin vaikea todistaa, koska yhteys vikaantui. Tällaiseen tilanteeseen sopii paremmin perinteisessä puhelinliikenteessä käytetty laskutusmalli, jossa maksetaan yhteyden käytöstä sitä mukaa, kun palvelua saadaan. Kiistämättömyysprotokollan avulla palveluntarjoaja voi näyttää toteen, että asiakas on todellakin saanut palvelua ja toisaalta asiakas voi helposti lopettaa käytöstä maksamisen, jos ei mielestään saa tyydyttävää palvelua.
8 4 2.2 Viestintä Myös osapuolten välisessä viestinnässä voi syntyä kiistämättömyyden tarve. Esimerkiksi tehtäessä sähköpostin välityksellä sopimus voi syntyä tilanne, jossa toinen osapuoli jälkikäteen alkaa väittämään, ettei ole suostunut siihen tai kiistää koko sopimuksen olemassaolon. Epärehellinen osapuoli voi myös yrittää esiintyä väärällä identiteetillä sopimuksen luontivaiheessa. Myös päinvastoin ajateltuna, joskus voi olla tarve osoittaa, ettei osapuoli ole koskaan lähettänyt tiettyä viestiä. 2.3 Sähköinen allekirjoitus Tyypillisesti osapuolet sitoutuvat viestintään kiistämättömästi sähköisellä allekirjoituksella. Suomen laki määrittelee sähköiselle allekirjoitukselle tiettyjä ehtoja, jotta sen katostaan olevan oikeudellisesti pätevä. Allekirjoituksen luomistietojen tulee olla ainutkertaisia ja niiden tulee säilyä luottamuksellisina. Lisäksi luomistietoja ei saa pystyä päättelemään muista tiedoista. Allekirjoituksen on myös oltava suojattu väärentämiseltä ja allekirjoittajan tulee voida suojata luomistiedot muiden käytöltä. Luomisväline ei myöskään saa muuttaa allekirjoitettavia tietoja tai estää niiden esittämistä allekirjoittajalle ennen allekirjoitustapahtumaa. Sähköinen allekirjoitus kelpaa oikeustoimeen, jossa vaaditaan allekirjoitus. Sen suositellaan perustuvan laatuvarmenteeseen ja lisäksi täyttämään yllä olevat ehdot. Sähköiseltä allekirjoitukselta ei kuitenkaan evätä suoraan oikeusvaikutuksia, vaikka edellä mainitut ehdot eivät täyttyisi. [3]
9 5 3 KIISTÄMÄTTÖMYYSPROTOKOLLAT Kiistämättömyysprotokollan tehtävänä on esittää luotettava toimintamalli luvussa kaksi esitettyjen ongelmien ratkaisemiseen. Kiistämättömyysprotokollat voidaan jakaa toiminnaltaan kahteen pääkategoriaan: Ensimmäisessä kanssakäymisen osapuolet sisällyttävät kiistämättömyystodisteet viestintään palasina vuorotellen, jolloin voidaan varmistaa viestin lähettäjän ja vastaanottajan osallistuminen kanssakäymiseen, kun kanssakäyminen on päättynyt [4]. Toinen tapa on luvussa kaksi esitelty luotetun tahon hyödyntäminen. 3.1 Kiistämättömyystodisteet viestinnän mukana Ensimmäinen tarkasteltava protokollatyyppi perustuu siihen, että salaisuutta paljastetaan palanen kerrallaan viestien mukana. Viestinnän alkaessa osapuolet sopivat siitä, minkä tyyppistä salaisuutta viestinnässä käytetään, kuitenkaan paljastamatta itse salaisuutta. Joka kierroksen jälkeen osapuolten on todistettava, että jaettu palanen, esimerkiksi bitti, on osa jaettavaa salaisuutta. Tämä menetelmä vaatii mm. sen, että molemmilla osapuolilla on suurin piirtein saman verran prosessointitehoa käytössään. Yksi mahdollinen toteutus tämän tyyppiselle kiistämättömyydelle on, että osapuolet muodostavat julkiset avaimet salaisuuden perusteella. Tämän jälkeen ne paljastavat salaisuudesta jotain, jolla jokaisen viestinvaihdon jälkeen voidaan varmentaa, että vaihdettu palanen on varmennettu salaisuuden osalla. Salaisuus voi olla esimerkiksi alkulukupari. Viestinnän päätteeksi salaisuus on paljastunut, jolloin voidaan varmistaa täysin, että kaikki palaset on varmennettu salaisuuteen kuuluvalla osalla. 3.2 Luotettu taho varmistaa osapuolet Luotettu osapuoli varmentaa lähettäjän ja vastaanottajan julkiset avaimet esimerkiksi sertifikaatilla. Kuvassa 1 on esitelty esimerkki sertifikaatista, jollaisia luotetut tahot voivat myöntää. Molempien osapuolten tulee luottaa samaan luotettuun tahoon, tai samassa luottamusketjussa oleviin luotettuihin tahoihin.
10 6 Kuva 1. Esimerkki sertifikaatista. Kuvassa 2 on esitetty varmentajaketju. Vastaanottaja voi luottaa varmentajaan A ja lähettäjä varmentajaan B, koska molemmilla varmentajilla on ketjussa sama juurivarmentaja CA. Kuva 2. Varmentajaketju.
11 7 Allekirjoittamalla sertifikaatin luotettu osapuoli varmistuu osapuolen identiteetistä ja että avain kuuluu todellakin kyseiselle osapuolelle. Ongelmaksi voi muodostua se, kuinka luotettu taho voi luottaa siihen osapuoleen, jolle on myöntämässä allekirjoitusta. Toisin sanoen epärehellinen osapuoli voi yrittää huijata identiteettinsä luotetulle taholle. Nyt toisen osapuolen riittää vain varmistaa luotetun osapuolen allekirjoitus, jolloin se voi varmistua avaimen omistajan identiteetistä ja viestintä voi alkaa. Osapuolet allekirjoittavat jokaisen viestinsä yksityisellä avaimellaan. Kuvassa 3 on esitelty luotetun tahon toiminta. Kuva 3. Luotettu taho varmentaa osapuolten identiteetin. 3.3 Protokollien arviointikriteerejä Protokollien arviointiin voidaan käyttää useita erilaisia tapoja. Tässä työssä mukaan on otettu taulukossa 2 esitetyt ominaisuudet [5]. Taulukko on laadittu subjektiivisesti, koska objektiivisesti arviointi on kyseissä tapauksessa erittäin hankalaa muuten kuin suorituskyvyn, salauksen ja allekirjoituksen osalta. Kiistämättömyysprotokollat hyödyntävät tyypillisesti kryptografisia algoritmeja. Näin ollen kiistämättömyysprotokollan luotettavuus on melko pitkälti sidonnainen käytettävän kryptografisen algoritmin luotettavuuteen. Tyypillisesti vahvemman algoritmin käyttö tuo paremman luotettavuuden, mutta samalla suorituskyky kärsii. Protokollia on myös arvioitu eri käyttötarkoituksiin soveltuvuuden perusteella. Tyypillinen käyttökohde saattaa olla mobiililaite, jolloin protokollan tekemien allekirjoitusten ja salausten määrä viestinnässä on tärkeä arviointikohde. Operaatioiden määrä ja raskaus vaikuttaa laitteen virrankulutukseen. Toisaalta tämän perusteella voidaan myös arvioida, kuinka monta asiakasta tietyn suorituskyvyn omaava palvelun pystyy käsittelemään samanaikaisesti laadun kärsimättä huomattavasti.
12 8 Taulukko 2. Kiistämättömyysprotokollien arviointikriteerejä. Ominaisuus Heikko Keskitaso Vahva Sitominen Perustuu toiseen Perustuu kansainvälisesti Fyysisesti sidottu osapuoleen tai luotettuun tahoon. arvostettuun luotettuun tahoon. kanssakäymiseen ainutlaatuisella tunnisteella tai todisteella, jonka luotettu taho on säilönyt. Peukaloimattomuus Allekirjoitus on (Allekirjoittajan kone on koskematon) helppo väärentää. Muunneltavuus Viesti on helppo vaihtaa huomaamatta. Varmennettavuus Suora varmennus, verrataan, onko allekirjoitusavain sama. Allekirjoitus on vaikea väärentää. Viesti voidaan vaihtaa useamman tietokoneen avulla. Epäsuora varmennus, tarvitaan erityistä menettelyä, kuten tiettyä matemaattista algoritmia, allekirjoituksen varmentamiseen. Allekirjoitus on mahdotonta väärentää. Viestiä ei voi vaihtaa. Varmennukseen tarvitaan luotetun tahon apua. Luotetun tahon tulee olla saavutettavissa tarkistushetkellä, että mahdollinen revokointi havaitaan. Lisäksi arviointikriteereissä oletetaan, että luotettua tahoa voidaan pitää koskemattomana ja että luotettu taho on pystynyt varmistamaan osapuolten identiteetin luotettavasti.
13 9 4 KIISTÄMÄTTÖMYYSPROTOKOLLIEN TOTEU- TUKSIA Kiistämättömyyden toteutukseen on kehitetty useita eri protokollia. Kuitenkaan tällä hetkellä yksikään ei ole vielä yltänyt standardin tasoiseen toteutukseen. Usein kiistämättömyyden toteutus on tilannekohtaista, jolloin yleispätevän protokollan suunnittelu on erittäin vaikeaa. Tässä luvussa esitellään kuitenkin muutamia mahdollisia toteutuksia. Toteutuksissa on pääasiallisesti keskitytty siihen, kuinka verkossa tapahtuva kaupankäynti ja erityisesti maksuliikenne voidaan toteuttaa kiistämättömästi. 4.1 Kiistämättömyyden tehokkaasti sähköisessä ympäristössä toteuttava protokolla Toteutuksessa on pyritty luomaan menettely verkossa tapahtuvan kertaluonteisen tapahtuman toteuttamiseen. Protokollan toteutuksessa lähtökohtana on käytetty perinteistä menettelyä kiistämättömyyden toteuttamiseen. Lisäksi on pyritty parantamaan yleisesti käytössä olevien SSL(Secure Sockets Layer)/TLS(Transport Layer Security)- protokollien kiistämättömyysominaisuuksia. Joitain muutoksia on kuitenkin tehty tehokkuuden parantamiseksi. Perinteinen kiistämättömyysprosessin kulku on esitelty kuvassa 4. [6] Menettelyyn tarvitaan kuitenkin useita osapuolia, koska asiakkaan ja palveluntarjoajan lisäksi mukana on notaari, todistajat molemmilta osapuolilta, sekä arkisto. Lisäksi signalointia tulee suhteellisen runsaasti. Todistearkistona voisi toimia esimerkiksi pankki tai vastaava luotettavaksi tiedetty taho.
14 10 Kuva 4. Perinteinen kiistämättömyyden toteutus lähdettä [6] mukaillen. Toiminnassa oletetaan, että notaari ja todistearkisto ovat täysin luotettavia. Tosielämässä näin ei kuitenkaan ole.
15 Toteutus Protokollan toteutuksessa on alkuperäisten osapuolten lisäksi mukana CA (Certificate Authority), jonka tehtävänä on varmentaa molempien osapuolten sähköiset allekirjoitukset. Näin ollen CA toimii molemmille osapuolille todistajan roolissa verrattuna perinteiseen malliin. Mukana ovat lisäksi NA (Notary Authority) ja IAA (Information Archiving Authority), joista NA toimii notaarin roolissa. Tämä tarkoittaa käytännössä sitä, että NA toimii luotettavana tahona, eli avustaa sopimuksen luomisessa. IAA toimii puolestaan luotettavana todistearkistona. IAA allekirjoittaa ja kryptaa säilömänsä sopimukset, joten voidaan olettaa, että ne säilyvät peukaloimattomana. Palveluntarjoaja voi olla rekisteröityneenä useammalle notaarille, mutta yhtä notaaria kohden voi olla vain yksi todistearkisto. Kuva 5. Protokollan sekvenssikaavio.
16 12 Kuvassa 5 on esitetty protokollan toiminta eri vaiheissa sopimuksen syntymisessä. Ensimmäisessä vaiheessa sertifikaattitaho myöntää kaikille osapuolille (asiakkaalle, palveluntarjoajalle, notaarille ja luotettavalle tietovarastolle) sertifikaatit (CERT, CERT, CERT, CERT ). Toteutuksessa ei ole otettu kantaa siihen, kuinka kyseiset osapuolet ovat aiemmin todistaneet identiteettinsä varmenteet myöntävälle taholle. Varmenteet on toimitettu osapuolille ennen viestinnän alkua. Toisessa vaiheessa asiakas pyytää haluamaansa palvelua palveluntarjoajalta. Tämän pyynnön perusteella palvelun tarjoaja tekee asiakkaalle sopimusehdotuksen palvelun käytöstä. Vaiheessa kolme asiakas ja palveluntarjoaja toimittavat sopimusehdotuksen valitulle notaarille. Kohdassa neljä notaari valmistelee tämän perusteella sopimusehdotuksen ja allekirjoittaa sen omalla yksityisellä avaimellaan(allekirjoitus ), jossa (Allekirjoitus = (E (H(Luonnos)). Asiakkaalle lähtevä versio salataan asiakkaan julkisella avaimella. ja palveluntarjoajalle lähtevä versio tarjoajan julkisella avaimella salattuna Viidennessä kohdassa asiakas ja palvelin purkavat viestin salauksen yksityisillä avaimillaan ja tarkistavat, täyttääkö sopimusehdotus näiden haluamat ehdot. Osapuolet hyväksyvät sopimuksen allekirjoittamalla sen yksityisillä avaimillaan (Allekirjoitus = (E (H(Sopimus)), (Allekirjoitus = (E (H(Sopimus)), ja toimittavat tämän jälkeen allekirjoitetut versiot notaarille. Notaarille lähtevät sanomat on kryptattu notaarin julkisella avaimella. Vaiheessa kuusi notaari tarkistaa molempien osapuolten allekirjoitukset ja luo sopimuksesta version, joka sisältää asiakkaan ja palveluntarjoajan allekirjoituksen ja lähettää sen osapuolille (Allekirjoitus = Sopimus, Allekirjoitus, Allekirjoitus ). Se myös lisää oman allekirjoituksensa uuteen versioon. Lähetettävät viestit on jälleen kryptattu osapuolten julkisilla avaimilla. Seitsemännessä kohdassa saatuaan molempien allekirjoituksen sisältävän version sopimuksesta osapuolet tarkistavat toistensa allekirjoitukset ja ilmoittavat hyväksynnästä tai kieltäytymisestä notaarille (Allekirjoitus = (E (H(Sopimus )), (Allekirjoitus = (E (H(Sopimus )). Lähtevä viesti on kryptattu notaarin julkisella avaimella. Jos molemmat osapuolet hyväksyivät allekirjoitukset. Ne lähettävät tästä notaarin julkisella avaimella kryptatun viestin. Tämän jälkeen notaari lisää sopimukseen ainutkertaisen tunnisteen, allekirjoittaa tunnisteen sisältävän sopimuksen (Allekirjoitus =E (Allekirjoitus )) ja toimittaa sen luotettavaan tietovarastoon. Sanoma on kryptattu tietovaraston julkisella avaimella. Toimenpide näkyy kaaviossa kohdassa kahdeksan.
17 13 Kohdassa yhdeksän tietovarasto tarkistaa vielä sopimuksen allekirjoitukset. Jos kaikki on kunnossa, tietovarasto lisää oman allekirjoituksensa ja ilmoittaa hyväksynnästä notaarille (Allekirjoitus =E Allekirjoitus ). Viesti on jälleen kryptattu notaarin julkisella avaimella. Toimenpide näkyy kaaviossa kohdassa kahdeksan. Lisäksi notaari ilmoittaa asiakkaalle ja tarjoajalle hyväksynnästä. Lopuksi palveluntarjoaja toimittaa asiakkaalle tunnisteen, jolla asiakas pystyy käyttämään haluamaansa palvelua. Tunniste on allekirjoitettu palveluntarjoajan yksityisellä avaimella ja se sisältää käytettävän palvelun tunnisteen ja voimassaoloajan(tunniste = E (asiakastunnus, palvelutunnus, aikaleima)) Analyysi Esitelty protokolla soveltuu parhaiten verkossa tapahtuviin kertaluonteisiin maksutapahtumiin. Suuresta viestinnän määrästä eri osapuolten välillä johtuen protokolla ei sovi kovinkaan hyvin tilanteisiin, joissa tarvittaisiin mikromaksamista. Protokollan luotettavuus riippuu myös paljon allekirjoituksessa ja salauksessa käytettävästä kryptografiaalgoritmista. Osapuolet joutuvat viestinnän aikana tekemään useita allekirjoituksia johtuen edestakaisesta viestinnästä, että soveltuvuus mobiililaitteisiin on huono, jos halutaan käyttää pitkiä avaimia. Taulukon 2 perusteella protokolla saavuttaa vahvan tason sitomisen osalta. Luotettu tahto, eli tässä tapauksessa luotettava arkisto, säilöö kaikki sopimukseen liittyvät todisteet. Osapuolet puolestaan sidotaan tapahtumaan luotettavan osapuolen varmentamilla allekirjoituksilla. Peukaloimattomuuden osalta saavutetaan myös vahva taso. Koska allekirjoituksiin käytetään luotetun tahon varmentamia julkisia avaimia, on allekirjoitusten väärentäminen käytännössä mahdotonta. Se vaatisi luotettavan tahon epärehellisyyttä, mutta tässä tapauksessa sen oletetaan olevan täysin luotettava. Myös todistearkistoa pidetään täysin luotettavana tässä tarkastelussa. Muunneltavuuden suojaus on vahvalla tasolla. Koska jokainen osapuolten välillä lähetettävä viesti on allekirjoitettu julkisella avaimella, ei viestin muuntelu osapuolten huomaamatta ole mahdollista. Varmennettavuuden vahva taso saavutetaan sillä, että kaikki allekirjoitusten varmennukset tehdään luotettavan osapuolen kautta. Esitelty protokolla on kokonaisuutena erittäin luotettava. Se vaatii kuitenkin paljon signalointia osapuolten välillä ja toisaalta vaatii erillisen notaarin ja todistearkiston apua toimintaansa. Lisäksi sekä asiakkaan, palveluntarjoajan, notaarin että todistearkiston tulee saada sertifikaattinsa samalta luotetulta taholta. Jos osapuolet omistavat toistensa sertifikaatit jo entuudestaan, yhteyttä luotettuun tahoon ei välttämättä tarvita.
18 Yksityisyyden suojaava protokolla Yksi kiistämättömyyteen liittyvä tekijä on yksityisyydensuoja. Koska kiistämättömyydessä pyritään sitomaan osapuolen identiteetti viestintään vahvasti, muodostuu ongelmaksi tilanne, jossa osapuoli haluaa pysyä anonyymina vastakkaiselle osapuolelle. Tällainen tilanne luo kuitenkin huijarille mahdollisuuden tehdä rikoksia, joita on mahdoton jäljittää. Tarvitaan siis keino, jolla käytettyjen maksuyksikköjen anonymiteetti on mahdollista poistaa luotetun tahon avulla, jos kanssakäymiseen epäillään liittyvän rikollista toimintaa. Esiteltävä protokolla pyrkii esittämään ratkaisun näihin ongelmiin.[7] Lähtökohta Tyypillinen sähköinen maksutapahtuma voisi mennä seuraavasti. Tapahtumaan kuuluvat osapuolina asiakas, sokea notaari, pankki, tuomari ja kauppa. Aluksi asiakas saa pankilta kolikon, jota käytetään maksuvälineenä tapahtumassa. Kolikko sisältään pankin tekemän sokean allekirjoituksen. Sokeassa allekirjoituksessa allekirjoitettavan viestin sisältö naamioidaan ennen allekirjoitusta. Tarkoituksena on estää allekirjoittajaa näkemästä viestin sisältöä selville. Allekirjoituksen toimeksiantaja pystyy puolestaan muuntamaan allekirjoituksen vastaamaan alkuperäistä viestiä. Pankilla on tiedossa yhteys käyttäjän todellisen, ja viestinnässä käytettävän näennäisidentiteetin välillä. Notaari osallistui sokeaan allekirjoitukseen ja näin ollen myös se tietää myönnetyn kolikon ja käyttäjän näennäisidentiteetin välisen yhteyden. Ostotapahtuman yhteydessä asiakas osoittaa kaupalle, että sillä on tietoa kolikkoon liittyvästä salaisesta avaimesta x. Jos kolikkoa väärinkäytetään, esimerkiksi suoritetaan sillä maksu kahteen kertaan, pankki ja notaari yhdessä muodostavat siteen käyttäjän todellisen identiteetin ja kolikon välille. Näiden tietojen perusteella tuomari langettaa tuomion. Oletetaan, että käytössä on eksponenttipohjainen allekirjoitusalgoritmi, kuten RSA. Asiakkaalla on kaksi avainta (S ja V ), samoin pankilla (S,V ). S ja S ovat yksityisiä ja V, sekä V julkisia avaimia. Pankilla on tiedossa asiakkaan julkinen avain V ja asiakkaalla on puolestaan tiedossa pankin julkinen avain V. Lisäksi notaarilla on käytössään eksponenttipohjainen julkisen avaimen salausjärjestelmä, jonka tunnuksena on (E,D ). Käyttäjä, pankki ja tuomari tietävät E :n. Käytettävä kolikko sisältää kolme kenttää. Ensimmäisessä on eksponenttiavain y. Tätä vastaa yksityinen avain x. Jokaista kolikkoa varten on omat avaimet. Toisessa kentässä on jotain kolikkoon liittyvää tietoa, kuten arvo ja voimassaoloaika. Kolmannessa kentässä on pankin digitaaliset allekirjoitukset y:lle ja informaatiokentälle. Informaatiokentän allekirjoitukseen on kaksi tapaa. Ensimmäisessä informaatiokenttä yhdistetään y:n kanssa notaarin avulla, ennen sokean eksponenttiavaimen y :n luomista. Toinen vaihtoehto on käyttää kenttään perustuvaa avainta. Pankin käyttämällä allekirjoituksella tulee olla seuraavat ominaisuudet:
19 15 S (m ) S (m )=S (m m ), tämä saavutetaan RSA:n käytöllä. Tästä johtuen RSA:n kanssa viesteihin tulee käyttää jotain yhdensuuntaista tiivistefunktiota. Tässä toteutuksessa on käytetty jälkimmäistä vaihtoehtoa. Kun käytössä on sokeutusfunktio F, vaaditaan että S (F (m )m ) =m S (m ). Myös notaari tietää F :n. Protokolla sisältää kolme vaihetta, jolla saavutetaan aiemmin kuvattu toiminnallisuus: 1. Käyttäjä ja pankki luovat jaetun salaisuuden. 2. Pankki allekirjoittaa :sta muodostetun tiivisteen, jota käytetään näennäisidentiteetin luomisessa lisäämällä siihen operaatiosta E (s) saatu tulos. Tällä toimenpiteellä saavutetaan kiistämättömyys ja sidotaan asiakas viestintään. 3. Pankki säilyttää todisteet asiakkaan identiteetin ja salaisuuden välisestä yhteydestä Kolikon nostaminen Kun asiakas haluaa kolikon käyttöönsä, pankki luo kolikon käyttämällä sokeaa allekirjoitusta. Näin menettelemällä pankki ei saa tietoonsa kolikon käyttäjän identiteettiä. Tällä varmistetaan se, että asiakas voi suorittaa maksutapahtumat anonyymisti, kuten käteisellä rahalla perinteisessä maksutapahtumassa on mahdollista. 1. Asiakas valitsee yksityisen avaimen satunnaisesti, laskee siitä :n arvon ja lähettää E (y) tuloksen notaarille. 2. Asiakas ja notaari luovat jaetun salaisuuden käyttäen Diffie-Hellman -avaimenvaihtoa [8]. 3. Notaari laskee y =F(w) y ja ilmoittaa tuloksen asiakkaalle. 4. Asiakas todentaa y :n, laskemalla y =F(w) y ja vertaamalla sitä notaarilta saatuun arvoon. Tämän jälkeen asiakas lähettää sen edelleen pankille allekirjoitettuna asiakkaan yksityisellä avaimella S. Lähetettävä viesti sisältää s:n, y :n ja notaarin nimen, sekä lisätietoja, kuten aikaleiman. Näillä tiedoilla voidaan osoittaa viestin ainutkertaisuus. 5. Pankilla on asiakkaan allekirjoitustiedot, joten se veloittaa todellisen kolikon asiakkaan tililtä ja lähettää asiakkaalle viestin T, T=E (S (y )). Tämän jälkeen asiakas lähettää T:n notaarille. 6. Notaari käyttää T:a saadakseen selville S (y ), eli sokaisun sisällä olevan eksponenttiavaimen. Tämän jälkeen se purkaa sokaisun saadakseen S (y) eli alkuperäisen eksponenttiavaimen ja edelleen rakentaa tällä tiedolla kolikon. Sitten se lähettää kolikon edelleen asiakkaalle. Tämän jälkeen notaari säilyttää asiakkaan identiteetin ja kolikon. Se sisältää tiedot julkisen avaimen salauksen arvot T:sta ja E (y):sta s:n kanssa.
20 Kolikon käyttö Kun asiakas haluaa suorittaa maksun kolikolla, suoritetaan kolme vaihetta: 1. Asiakas allekirjoittaa viestin, joka on vastaus kaupan esittämään haasteeseen, jolla asiakas todistaa tietävänsä :n 2. Kauppa lunastaa todellisen kolikon pankilta takaisin myöhemmin. 3. Jos asiakas yrittää käyttää kolikkoa useampaan kertaan, pankki luo notaarin avulla ketjun, jolla voidaan selvittää kolikkoon liittyvän asiakkaan identiteetti Turvallisuusnäkökohtia Protokollan toiminnasta on helppo havaita kolme ominaisuutta, joihin sen luotettavuus perustuu. Notaari ei voi käyttää kolikkoa, koska se ei tiedä :aa. Notaari ja asiakas luovat yhdessä salaisuuden. Tämä takaa sen, että kumpikaan ei yksin voi vaikuttaa :n arvoon ja näin ollen yksi sokea allekirjoitus on sidottu yhteen kolikkoon. Toisaalta pankilla on asiakkaan allekirjoittama, joten pankilla on todisteet asiakkaan identiteetin sitomisesta :n. Tämä takaa sen, että asiakas ja pankki eivät voi viestiä siitä, kuka julkaisi :n. Asiakas ei myöskään pysty luomaan kolikkoa tyhjästä, koska sen olisi kyettävä laskemaan S (y ) joko y :n tai E S (y ) :n perusteella, jonka katsotaan olevan mahdotonta. Toisaalta vieras taho ei voi käyttää x:aan sidottua kolikkoa. Koska x:n selvittäminen on mahdotonta y:n ja muun yhteisen tiedon perusteella ja vain x:n julkaisija tietää sen arvon, voi x:n sidottua kolikkoa käyttää ainoastaan sen alkuperäinen luoja. Myöskään notaari ei pysty esittämään olevansa pankin tai kaupan asiakas. Jotta notaari voisi esiintyä asiakkaana pankille, sen tulisi saada selville asiakkaan y :n kuuluva allekirjoitus, jonka katsotaan olevan mahdotonta. Jotta notaari voisi esiintyä asiakkaana kaupalle ja käyttää tämän kolikon, sen tarvitsisi saada selville kolikon tiedot ja x. Jos pankki haluaisi esiintyä asiakkaana ja käyttää tämän kolikoita, sen tulisi kyetä laskemaan y :n digitaalinen allekirjoitus, mikä ei ole mahdollista edes notaarin avulla Analyysi Protokolla sisältää kohtuullisen määrän kryptausta ja allekirjoituksia asiakkaan osalta, joten käytännössä asiakkaana voi toimia myös mobiililaite. Tyypillisimmät käyttötilanteet voidaan katsoa olevan kolikon hankkiminen ja käyttäminen, joista molemmat sisältävät asiakkaan osalta vai yhden raskaan allekirjoitusoperaation. Suurin kuorma kohdistuu pankkiin, joka joutuu tekemään kaksi allekirjoitusta jokaista kolikkoa kohti. Tutkittaessa protokollan ominaisuuksia taulukon 2 perusteella voidaan sitomisen katsoa olevan keskitasoa. Osapuolten identiteetit ovat tässä tapauksessa luotettavaksi ta-