Yleistä

Internetin yleistymisen myötä myös kaupankäynti on siirtynyt verkkoon. Perinteisen kaupankäynnin (kauppa – asiakas) lisäksi kahden yksityishenkilön välinen kauppa on merkittävässä roolissa verkossa. Tämä tilanne asettaa vaatimuksia kehitellä jonkinlaisia keinoja vilpillisen käytöksen varalle. Tavoitteena tietenkin on, että elektronisessa kaupankäynnissä molemmat osapuolet saavat sen, mistä on sovittu. Pyrkimyksenä on päästä tilanteeseen, jossa kukaan vaihdon osapuolista ei voi saada hyötyä olemalla epärehellinen. Keskeinen periaate reilussa vaihdossa on, että kaikki osapuolet saavat haluamansa tai kukaan osapuoli ei saa mitään. Niinpä onkin ollut tarpeen kehittää protokollia, jotka varmistavat vaihtotilanteen reiluuden. Käytännössä protokollat tuottavat kiistämättömyystodisteita kaikille osapuolille, eli tarvittaessa voidaan kiistämättömästi osoittaa esimerkiksi A:n lähettäneen maksun B:lle, jos näin todella on tapahtunut. Vastaavasti B voi osoittaa, että hän on lähettänyt A:lle tuotteensa, mikäli A kiistää saaneensa tuotteen. Reilun vaihdon protokollaa nimitetään myös kiistämättömyysprotokollaksi (non-repudiation protocol) sen luonteesta johtuen.

Vaihtotilanteen ongelma on se, että kumpikaan osapuoli ei haluaisi olla ensimmäinen lähettäjä, koska toinen osapuoli voisi keskeyttää vaihdon saatuaan haluamansa. Jos kyseessä on perinteinen asiakkaan ja esimerkiksi verkkokaupan välinen vaihtotilanne, käytännössä asiakkaan on kuitenkin aina lähetettävä maksu tuotteesta ennen sen saamista. Oletuksena näissä tilanteissa on, että asiakas luottaa kauppaan enemmän kuin kauppa asiakkaaseen ja kaupan voidaan olettaa toimivan lähtökohtaisesti rehellisesti, koska kauppiaan epärehellisestä toiminnasta oletettavasti koituisi sille itselleen merkittäviä haittoja. Tällainen haitta on esimerkiksi huono julkisuus, josta voi olla liiketoiminnan kannalta ikäviä seurauksia.

Teoria

Reilun vaihdon protokollien tulee kunnioittaa kiistämättömyyttä ja niiden on tarjottava molemmille osapuolille alkuperän kiistämättömyys (Non-repudiation of origin, NRO) ja vastaanottamisen kiistämättömyys (Non-repudiation of receipt, NRR). NRO:n tarkoituksena on suojata siltä, että lähettäjä valheellisesti kiistää lähettäneensä viestin. NRR:n on tarkoitus suojata siltä, että vastaanottaja valheellisesti kiistää vastaanottaneensa viestin. Nykyaikaisissa protokollatoteutuksissa käytetään luotettua kolmatta osapuolta (Trusted Third Party, TTP) reiluuden varmistamiseksi. Osapuolet A ja B kommunikoivat TTP:n kanssa joko prokotollan aikana tai ainoastaan riitatilanteessa riippuen protokollan toteutustavasta. TTP:n roolina on ratkaista kiistatilanteet vaihtoprosessissa. Näitä tilanteita syntyy, kun toinen osapuoli ei ole toiminut sovitusti tai vaihtoprosessi on päättynyt virhetilanteeseen esimerkiksi verkkoyhteyden katkeamisen takia.

Nykyaikaisissa protokollatoteutuksissa TTP pystyy useimmiten toimittamaan vääryyttä kärsineelle osapuolelle purkuavaimen digitaalisen tuotteen tai maksun salauksen purkamiseen, jolloin tämäkin osapuoli saa haluamansa. Tällöin myös TTP:n toimintaan liittyvät todisteet voivat olla oleellisia. NRS (Non-repudiation of submission) suojaa siltä, että viestin lähettäjä valheellisesti kiistää lähettäneensä viestin TTP:lle. NRD (Non-repudiation of delivery) todistaa, että viesti on välitetty TTP:n toimesta.

Protokollat voidaan luokitella TTP:n käytön perusteella eri tavoilla. On olemassa protokollia, jotka eivät käytä TTP:tä ja niitä, jotka käyttävät. Lisäksi TTP:n käyttötavan mukaan voidaan vielä tehdä karkea jako seuraavasti:

  • Inline-TTP: Kaikki osapuolten väliset viestit välitetään TTP:n kautta, jatkuva yhteys TTP:hen oltava.
  • Online-TTP : TTP on mukana jokaisessa sessiossa, mutta ei kaikissa viesteissä.
  • Offline-TTP: TTP on mukana ainoastaan virhetilanteessa, eli kun toinen osapuoli on kokenut vääryyttä.

Eri asteista reiluutta

Reilun vaihdon protokollat toteuttavat eriasteista reiluutta. Reiluus voidaan määritellä heikoksi, vahvaksi, todelliseksi tai todennäköiseksi. Heikko reiluus tarkoittaa sitä, että jos henkilö A ei saa haltuunsa omaa todistetta tapahtumasta (NRR), mutta henkilö B saa todisteen (NRO), niin A saa todistuksen siitä, että näin on todella tapahtunut. Tällaisia protokollia ei välttämättä ole tarvetta käyttää, koska paremmin reiluutta toteuttavia ratkaisuja on olemassa. Niiden etuna on yleensä riitatilanteen välitön selvittäminen automaattisesti ilman ulkopuolisen osapuolen sekaantumista.

Vahvan reiluuden protokolla toteuttaa seuraavan ehdon: protokollan lopussa joko A saa lähettämäänsä viestiin m varmuuden, että NRR on toteutunut ja B saa viestin m sekä todisteen siitä, että NRO on toteutunut tai sitten kumpikaan osapuoli ei saa mitään hyödyllistä tietoa. Todellisessa reilussa protokollassa tuotetut todisteet ovat riippumattomia siitä, joutuiko luotettu kolmas osapuoli (TTP) puuttumaan protokollan toimintaan vai ei. On siis mahdotonta sanoa pelkästään todisteita katsomalla, tarvittiinko TTP:tä. Tämä on hyvä asia, sillä usein TTP:n käyttö voi johtua myös tietoverkon virheestä eikä toisen osapuolen epärehellisestä toiminnasta. Sellaiset protokollat, jotka eivät käytä TTP:tä, voivat olla reiluja tietyllä todennäköisyydellä. Yleensä reiluuden todennäköisyys on kuitenkin melko korkea. Tarkemmin asiasta voi lukea täältä.

Toiminta käytännössä

Käytännön syistä reilun vaihdon protokollalta vaaditaan näitä ominaisuuksia:

  • Täydellisyys (completeness): vaihto onnistuu aina, kun osapuolet toimivat rehellisesti.
  • Täsmällisyys (timeliness): kaikilla rehellisillä osapuolilla on aina mahdollisuus saavuttaa äärellisessä ajassa kohta, jossa ne voivat keskeyttää vaihdon reiluuden säilyttäen.

Täsmällisyys varmistaa sen, ettei pääse syntymään tilannetta, jossa jokin osapuoli ei tiedä, onko protokollan suorittaminen päättynyt vai ei. Jos tätä ei tiedetä, osapuolen on pidettävä avoinna protokollasessiota mahdollisesti äärettömän pitkä aika varmistaakseen reiluuden. Tällainen tilanne on käytännössä kestämätön. Digitaalisten tuotteiden reilussa vaihdossa on neljä vaihetta:

  1. Osapuolet sopivat vaihdon aloittamisesta (valmistautuminen vaihtoon).

  2. Asiakas lähettää maksun kauppiaalle.

  3. Kauppias lähettää digitaalisen tuotteen asiakkaalle.

  4. Kiistojen ratkaiseminen, jos jotain menee pieleen.

Ensimmäisessä kohdassa osapuolet neuvottelevat vaihdon kulusta, kuten minkä tuotteen asiakas haluaa ja mitä tuote maksaa. Tämä vaihe voidaan nähdä myös omana protokollanaan, koska neuvotteluprotokollassa on useampia vaiheita ja osapuolilla on mahdollisuus keskeyttää protokolla, jos sopuun ei päästä. Kohdat 2 ja 3 voidaan tehdä kummin päin vaan, mutta käytännössä yleensä asiakas on ensimmäinen lähettäjä. Tämä perustuu siihen, että se joka luottaa toiseen osapuoleen enemmän, lähettää ensin.

Käytännön toteutuksissa on syytä pyrkiä suosimaan offline-TTP:n käyttöä, koska siinä TTP:n käyttö on yleensä vähäistä. TTP:tä käytetään tässä mallissa ainoastaan riitatilanteessa, jolloin ei kuormiteta verkkoyhteyksiä turhaan session aikana.

Lisätietoa kiistämättömyysprotokollista

Internetistä löytyy melko kattavasti mielenkiintoista tietoa erilaisista protokollatoteutuksista ja sovelluksista. Google Scholariin voi laittaa hakukenttään esimerkiksi "non-repudiation protocol" tai "fair exchange protocol". Aineistoja on PDF-muodossa saatavilla runsaasti ja niissä kuvataan protokollien toteutuksia useimmiten selkeästi ja kuvien avulla. Luonnollisesti myös matemaattisia malleja on esitelty, jos ne sattuvat kiinnostamaan. Kiistämättömyysprotokollien turvallisuudesta ja haavoittuvuuksista on esitetty erilaisia analyysejä, joihin voi olla syytä tutustua tarkemmin. Käytännön sovelluksia tarvitaan esimerkiksi mobiiliverkkoihin, täällä voi tutustua esitettyihin toimintamalleihin liikkuvassa ad hoc -verkossa, jossa voi olla useita erilaisia päätelaitteita. Sovelluksessa käytetään turvamoduleja turvaamaan reiluutta.

SivuTiedotLaajennettu edit

Vaativuus Jatko
Valmius Valmisteilla
Tyyppi Ydin
Luokitus Verkko
Mitä Harhasuoja
Miltä Tahallinen uhka
Missä Organisaatio
Kuka Titu-ammattilainen
Milloin Hädän hetkellä
Miksi Hyvä tapa
Print version |  PDF  | History: r4 < r3 < r2 < r1 | 
Topic revision: r4 - 18 May 2011 - 16:31:32 - RaineKervinen
 

TUTWiki

Copyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TUTWiki? Send feedback