480 likes | 643 Views
LUOTTAMUS SEMANTTISESSA WEBISSÄ Semanttinen web –kurssin harjoitustyö Katja Penttonen ja Maiju Virtanen 14.5.2002. Esityksen sisältö. Johdanto Näkökulmia luottamukseen Ongelmia luottamuksen hallinnassa Tekniikat luottamuksen hallintaan Tietosuojaprotokolla P3P
E N D
LUOTTAMUS SEMANTTISESSA WEBISSÄSemanttinen web –kurssin harjoitustyöKatja Penttonen ja Maiju Virtanen14.5.2002
Esityksen sisältö • Johdanto • Näkökulmia luottamukseen • Ongelmia luottamuksen hallinnassa • Tekniikat luottamuksen hallintaan • Tietosuojaprotokolla P3P • XML-allekirjoitus ja –salakirjoitus • Annotea • Yhteenveto
Johdanto • Web on kaikkien saatavilla ja julkaisukynnys on madaltunut • Infoähkyä ja luottamusta täytyisi pystyä hallitsemaan • Täytyy tietää, mihin tietoresurssiin voi luottaa • Ratkaisuna dokumenttien sisältöä kuvaava ja arvioiva metatieto
Johdanto • Elektroninen liiketoiminta yleistymässä • Luottamukselliset tiedot pitää pystyä pitämään salassa. • XML tulossa webin oleelliseksi tekniikaksi • Myös XML-muotoiselle tiedolle tarvitaan tietosuojamenetelmiä.
Johdanto • Luottamuksen näkökulmia • 1) Tulisi varmistua siitä, etteivät ulkopuoliset pääse käsiksi luottamuksellisiin tietoihin (esim. Luottokortin numero). • Menetelmiä ovat tiedon salaaminen (XML-allekirjoitus, -salakirjoitus) ja tietosuojamäärittelyt (P3P).
Johdanto • 2) Mihin verkosta löytyviin tietoresursseihin voimme luottaa? • Ratkaisuna metakuvaukset tiedosta • Annotea-projektissa metatietoa hallitaan joustavasti ja helposti.
Näkökulmia luottamukseen • Luottamus on kahden osapuolen välinen asia, esim. ihmisen ja agentin välinen. • Agentilla tarkoitetaan tässä yhteydessä ohjelmistoa, joka toimii automaattisesti ratkaisten annettuja tehtäviä.
Näkökulmia luottamukseen • Ihminen luo agentille profiilin, jossa määritellään sen tehtävät. • Agentti on luotettava, kun se toimii oikealla, käyttäjän määrittelemällä tavalla.
Näkökulmia luottamukseen • Verkkopalvelun pitäisi pystyä osoittamaan asiakkaalle luotettavuutensa. • Luottamuksen jakaminen • Yhteisöjen sisällä voidaan metakuvausten avulla viestiä, mitkä lähteet ovat tärkeitä ja merkityksellisiä juuri heille. • Käyttäjäryhmien osoittaminen • Oikeuksien jakaminen
Näkökulmia luottamukseen • Luottamuksen syntyminen: Bickmoren ja Cassellin (2001) mukaan ihminen käyttää monenlaisia keskustelustrategioita, kuten kevyttä jutustelua (small talk) luomaan luottamusta. • Tällaisia strategioita voitaisiin käyttää myös käyttöliittymissä.
Näkökulmia luottamukseen • Katkelma Bickmoren ja Cassellin esittämästä keskusteluesimerkistä: • Tämä mikrofoni on kauhea, inhoan käyttää näitä. • Anteeksi muuten ääneni. Tämä on jonkun insinöörin mielipide luonnollisesta äänestä. • Oletko meidän sponsoreitamme? Käyttäjä: Kyllä.
Näkökulmia luottamukseen • Olitko viimeksi sponsorikokouksessa? • Minä tulin niin uupuneeksi viime kokouksessa, että minulta meinasi jo lähteä ääni lopussa. • Niin, missä haluaisit asua? • Kuinka monta makuuhuonetta tarvitset? • Jne.
Ongelmia luottamuksen hallinnassa • Agenttien toimiminen automaattisesti käyttäjänsä hyväksi • Agenttien kommunikoiminen keskenään • Perinteinen tietosuojamenettely SSL (Secure Sockets Layer) suojaa tiedonsiirron. Ongelmana tiedon jättäminen suojaamattomana palvelimelle.
Ongelmia luottamuksen hallinnassa • Parempi olisi suojata itse tieto. • Tärkeää osapuolten tunnistus, eheys ja kiistämättömyys, joita perinteiset menetelmät (SSL, käyttäjätunnus/salasana) eivät varmista yksinään.
Ongelmia luottamuksen hallinnassa • Tavallisen dokumentin osia ei voi suojata erikseen. • XML mahdollistaa dokumentin osittamisen ja hierarkian. • Perinteisillä salausmenetelmillä ei voi salata XML-dokumentin osia. • Esimerkki: Verkkokaupan myyjän ei tarvitse tietää ostajan luottokortin numeroa ja toisaalta pankin ei tarvitse tietää ostettuja tuotteita.
P3P - Platform for Privacy Preferences • Perusajatus suodattaa sellaiset web-sivut ja -sisällöt pois, joita käyttäjä ei tarvitse tai halua. • Protokolla, jonka avulla web-sivu voi ilmoittaa käyttäjälle tietosuojamenettelynsä • Tietosuojamäärittelyt XML-muodossa
P3P • Käyttäjien agentit (selaimet) voivat hakea ja tulkita tietosuojamäärittelyjä automaattisesti, eikä käyttäjän aina tarvitse lukea niitä. • Käyttäjää varoitetaan, kun selaimen omat asetukset ja sivun tietosuojamäärittelyt ovat ristiriidassa keskenään.
P3P • P3P:n toiminta
APPEL - A P3P Preference Exchange Language • Kieli, jolla voidaan kuvailla P3P-tietosuojamäärittelyjä • Tällä käyttäjä voi tehdä omat asetuksensa (ruleset, sääntöjoukko). • Käyttäjälle turvallisuusasetusten tekeminen saattaa olla liian vaikeaa -> Ratkaisuna sääntöjoukkojen jakaminen.
Esimerkkejä • Palveluntarjoajan tietosuojamäärittelyjen tekeminen: http://www.codeinfusion.com/p3pedit/ • Käyttäjän tietosuoja-asetusten tekeminen: http://www.privacybird.com/ • Lisätiedot palveluntarjoajan tietosuojamäärittelyistä: http://www.privacybird.com/press.html • P3P-tietosuojamäärittelyt sisältävät sivut: http://www.w3.org/P3P/compliant_sites
Johdatus digitaaliseen allekirjoitukseen • Tarkoituksena suojata osapuolten välinen tiedonsiirto • Public Key Infrastructure (PKI) eli julkisen avaimen järjestelmä kokoaa yhdeksi tietoturva-arkkitehtuuriksi digitaalisen allekirjoituksen vaatimukset. • Jokaisella käytössä julkinen ja yksityinen avain.
XML-allekirjoitus • Käyttää apunaan julkisen avaimen järjestelmää. • Voidaan allekirjoittaa kaikkea digitaalisessa muodossa olevaa tietoa. • Kukin osapuoli voi allekirjoittaa itselleen merkityksellisen dokumentin osan erikseen.
XML-allekirjoitus • XML-allekirjoituksen kelvolliseksi osoittaminen mukaillen Foxin ym. 2001 kirjoittamaa spesifikaatiota: • 1) Lasketaan alkuperäiselle tiedolle tiiviste (<DigestMethod>:lla) ja verrataan tätä <DigestValue>-elementin arvoon. • 2) Lasketaan allekirjoituksen arvo <SignatureMethod>-elementin ja käytetyn avaimen (<KeyInfo>) avulla ja verrataan tätä <SignatureValue>:seen. • Jos sekä tiedon tiivisteet että allekirjoitukset täsmäävät, allekirjoitus on kelvollinen.
XML-allekirjoitus • Alkuperäinen XML-muotoinen viesti täytyy olla kanonisessa muodossa, jotta allekirjoitus toimisi oikein. • Kanonisoinnilla muunnetaan XML-dokumentit sellaiseen muotoon, että niillä on täsmälleen samanlainen syntaksi, joten niitä voidaan vertailla keskenään. • Dokumenttien tekstimuodoissa voi olla pieniä eroja, jotka johtuvat esim. eroista kommenteista tai erilaisten työkalujen käytöstä.
XML-salakirjoitus • Varmistetaan, ettei arkaluontoinen tieto vuoda ulkopuolisten käsiin. • Salakirjoituksen tulos on XML-muodossa ja <EncryptedData>-elementin sisällä • Alkuperäinen tieto on yhtenä <EncryptedData>-elementin lapsielementtinä tai siihen viitataan URI:n avulla.
XML-salakirjoitus • Yksi XML:n eduista on haun selkeys. • XML-salakirjoituksella pystytään salakirjoittaa elementtejä erikseen.
XML-salakirjoitus • ESIMERKKI 1. XML-muotoinen kuvaus Maiju Virtasesta, hänen pankkikorttinsa numerosta, luottorajasta ja pankista. <?xml version=’1.0’?> <Laskutustieto xmlns=’http://esimerkki.org/laskutus’> <Nimi>Maiju Virtanen</Nimi> <Luottokortti Raja=’500’ Currency=’Euro’> <Numero>8975 2222 1234</Numero> <Pankki>Oma pankki</Pankki> <Raukeamispäivä>10/03</Raukeamispäivä> </Luottokortti> </Laskutustieto>
XML-salakirjoitus • ESIMERKKI 2. Maiju Virtasen kuvaus kokonaan salakirjoitettuna. Tässä alkuperäinen XML-dokumentti on sisällytetty <EncryptedData>-elementin sisälle. Dokumentin salakirjoitus kokonaan on käytännöllinen silloin, kun ei haluta paljastaa edes sitä, että kyse on laskutus- ja luottokorttitiedoista. <?xml version=’1.0’?> <EncryptedData xmlns=’http://www.w3c.org/2001/04/xmlenc#’ Type=’http://www.isi.edu/in-notes/iana/assigments/media-types/text/xml’> <CipherData> <CipherValue>D36K78L87 </CipherValue> </CipherData> </EncryptedData>
XML-salakirjoitus • ESIMERKKI 3. Jossain tapauksessa vastapuolen on tarpeellista tietää lähettäjän nimi ja luottoraja, mutta ei luottokortin numeroa eikä raukeamispäivää. Salakirjoitetaan siis vain osa dokumentista. <?xml version=’1.0’?> <Laskutustieto xmlns=’http://esimerkki.org/laskutus’> <Nimi>Maiju Virtanen</Nimi> <Luottokortti Raja=’3000’ Valuutta=’Euro’> <EncryptedData xmlns=’ http://www.w3c.org/2001/04/xmlenc#’ Type=’http://www.w3.org/2001/04/xmlenc#Content’> <CipherData> <CipherValue> D36K78L87</CipherValue> </CipherData> </EncryptedData> </Luottokortti> </Laskutustieto>
XML-allekirjoituksen ja -salakirjoituksen suhteesta • Yhtäaikainen käyttö voi aiheuttaa ongelmia luottamuksen varmistamisessa. • Kun allekirjoituksen jälkeen dokumenttia vielä salakirjoitetaan, allekirjoitus ei ole enää varmennettavissa. • Ratkaisuna “algoritmien purkamisten järjestely” (decryption transform)
XML-allekirjoituksen ja -salakirjoituksen suhteesta • Dokumentin purkamisjärjestyksen voi määrittää XML-allekirjoituksen <Transform>-elementin avulla. • Sillä estetään virheellinen koodausjärjestys.
Annotea-projekti • Web-pohjainen annotointi- eli kommenttijärjestelmä, joka pohjautuu RDF-infrastruktuuriin. • Annotoinnit ovat dokumentin ulkoista metatietoa (kuvailua ja arvostelua tietoresursseista) ja ne voidaan tallentaa annotointipalvelimille. • Annotoinnin voi tallentaa myös paikalliseen tiedostoon. • Xpointeria käytetään liittämään annotointi dokumenttiin.
Annotea • Apuna yhteistyössä: palaute ja vuorovaikutus. • Esimerkiksi opiskelijat voivat ryhmätyössään kommentoida toistensa dokumentteja tai käytettyjä lähteitä. • Jaetut kirjanmerkit kuvaavat luottamusta yhteisön välillä. • Yhteiset kirjanmerkit jaotellaan kategorioihin ja tallennetaan annotointi-palvelimelle.
Annotea • Metatietoa voidaan lisätä, vaikka dokumenttiin ei kirjoitusoikeutta -> Vältytään päällekkäisiltä kirjoitustapahtumilta. • Myös tekijänoikeussäädökset estävät toisen dokumentin muuttamisen ilman lupaa.
Annotea RDF-skeema
Annotea • Annotointi RDF-muodossa • Miten annotointeja tehdään käytännössä? Annotea Quick Tutorial
Annotea • Annotoidut dokumentit tulee olla XML-muodossa, jotta tiettyyn dokumentin osaan voidaan viitata. Xpointer voi liittyä vain XML:ään. • Vaikka alkuperäistä dokumenttia ei saa muuttaa, annotointilinkki voidaan liittää siihen. Linkki näkyy Amaya-selaimessa selaimen ominaisuutena. Muutoksia alkuperäiseen dokumenttiin ei tehdä.
YHTEENVETO • Suuria kehitysaskelia otettu luottamuksen varmistamiseksi. • Ongelmia ja kehitysalueita löytyy vielä. • Aika näyttää, mitkä tekniikat todella otetaan vastaan.
LÄHTEET • Bickmore T., Cassell J. 2001. Relational Agents: A Model and Implementation of Building User Trust. ACM Digital Library, 396-403. • Boyer J. 2001. Canonical XML Version 1.0. W3C Recommendation [online]. [viitattu 25.4.2002]. Saatavilla www-muodossa http://www.w3.org/TR/xml-c14n
LÄHTEET • Cranor L., Langheinrich M., Marchiori M, Presler-Marshall M. & Reagle J. 2002. The Platform for Privacy Preferences 1.0 (P3P1.0) Specification. W3-C Recommendation [online]. [viitattu 5.4.2002]. Saatavilla www-muodossa < http://www.w3.org/TR/P3P/> • Cranor L., Langheinreich M. & Marchiori M. 2002. A P3P Preference Exhange Language 1.0 (APPEL1.0). W3C Working Draft [online], [viitattu 5.4.2002]. Saatavilla www-muodossa http://www.w3.org/TR/P3P-preferences/
LÄHTEET • Dillaway B., Imamura T. & Simon E. 2002. XML Encryption Syntax and Processing. W3C Candidate Recommendation [online]. [viitattu 22.4.2002]. Saatavilla www-muodossa < http://www.w3.org/TR/xmlenc-core/> • Fox B., Bartel M., Boyer J., LaMaccia B. & Simon E. 2001. XML Signature Syntax and Processing. W3C Candidate Recommendation [online]. [viitattu 22.4.2002]. Saatavilla www-muodossa < http://www.w3.org/TR/xmldsig-core/>
LÄHTEET • Grimm R. & Rossnagel A. Can P3P Help to Protect Privacy Worldwide? ACM Digital Library, 157-160. • Working Draft [online]. [viitattu 25.4.2002]. Saatavilla www-muodossa http://www.w3.org/TR/2001/WD-xmlenc-decrypt-20010626
LÄHTEET • Koivunen M., Swick R. 2001. Metadata Based Annotation Infrastructure offers Flexibility and Extensibility for Collaborative Applications and Beyond [online], [viitattu 13.3.2002]. Saatavilla www-muodossa <http://www.w3.org/2001/Annotea/Papers/KCAP01/annotea.html> • Koivunen M. 2001. Annotea Quick Tutorial [online], [viitattu 13.3.2002]. Saatavilla www-muodossa<http://www.w3.org/2001/Annotea/User/Tutorial/quicktutorial.html>
LÄHTEET • Kahan J., Koivunen M., Prud’Hommeaux E., Swick R. 2001. Annotea: An Open RDF Infrastructure for Shared Web Annotations [online], [viitattu 13.3.2002]. Saatavilla www-muodossa < http://www.w3.org/2001/Annotea/Papers/www10/annotea-www10.html> • Mactaggart M. 2001. An Introduction to XML encryption and XML signature [online], [viitattu 15.4.2002]. Saatavilla www-muodossa < http://www-106.ibm.com/developerworks/xml/library/s-xmlsec.html/index.html>
LÄHTEET • Simon E., Madsen P. & Adams C. 2001. An Introduction to XML Digital Signatures [online], [viitattu 15.4.2002]. Saatavilla www-muodossa http://www.xml.com/pub/a/2001/08/08/xmldsig.html