XML messaging and security

Koko: px
Aloita esitys sivulta:

Download "XML messaging and security"

Transkriptio

1 XML messaging and security 168

2 IT systems and security B2B data exchange Internet is an open network, data flowing through can be monitored or altered XML and Java are not enough to ensure security (reliably enough) Security can be thought as a chain that canbebrokenbythe weakestlink 169 Avointa verkkoa kuten Internetiä hyödyntävä viestinvälitys saattaa olla riskialtista tiedon monistus- ja muuntamisriskin vuoksi. On syytä muistaa, että 100% turvallisuutta ei voida koskaan taata. Turvallisuus voidaankin ajatella ketjuna, jonka kestävyys on sama kuin sen heikoimman lenkin kestävyys. Käytännössä kyse on siitä, että tiedonsiirto on turvallista riittävän suurella todennäköisyydellä. Niinpä yritysten tulee päättää turvallisuuspolitiikasta, jota määriteltäessä tulee huomioida (ainakin) seuraavat asiat: arvioida/määrittää mahdolliset vahingot siinä tapauksessa, että tietoturvariski realisoituu, arvioida/määrittää itse tietoturvateknologian aiheuttamat haitat (esim. käyttömukavuus) ja määritellä proseduurit mahdollisia tietoturvahyökkäyksiä ja niihin reagoimista varten.

3 Security of communication Confidentiality message content cannot be read or copied by any unauthorized party Integrity message contents cannot be changed by any unauthorized party Authentication no party can disguise itself as a legitimate (authorized) party Nonrepudiation the message sender cannot deny the content of the message or that it has sent the message 170 Confidentiality: luottamuksellisuus Integrity: koskemattomuus Authentication: autentikointi Nonrepudiation: kiistämättömyys Luottamuksellisuudella tässä yhteydessä tarkoitetaan sitä, että mikään ulkopuolinen osapuoli ei pysty lukemaan tai kopioimaan viestin sisältöä. Luottamuksellisuus voidaan toteuttaa esimerkiksi käyttämällä kryptausmenetelmiä. Koskemattomuus puolestaan tarkoittaa sitä, että mikään ulkopuolinen osapuoli ei pysty muuttamaan tai manipuloimaan viestin sisältöä. Autentikointi takaa sen, että mikään ulkopuolinen osapuoli ei pysty näyttäytymään virallisena osapuolena. Ja lopuksi kiistämättömyys takaa sen, että viestin lähettäjä ei pysty kieltämään lähettäneensä viestiä. Seuraavaksi tarkastelemme näitä viestinvälityksen turvallisuusvaatimuksia hieman tarkemmin, erityisesti Web-palveluiden näkökulmasta.

4 Access control For determining which operations the client is allowed to apply to process the data An example access control policy: all properly authenticated companies can access the database all companies in the trusted category can submit a request a company can review its prior actions 171 Käyttöoikeus (access control) sekoitetaan silloin tällöin autentikointiin (authentication). Tämä on toisaalta ymmärrettävää, sillä näitä kahta tukevat mekanismit on usein integroitu yhdeksi mekanismiksi. Esimerkiksi joissain tilanteissa palvelimen salasanasuojattuja Web-sivuja pääsevät käyttämään/selaamaan vain asianmukaisilla oikeuksilla autentikoidut asiakkaat. Kyseessä eivät kuitenkaan ole synonyymit: autentikointia käytetään todistamaan kommunikointikumppanin identiteetti, kun taas käyttöoikeudet määräävät tietoturvapolitiikan (ts. asiakkaalle sallittavat operaatiot määräytyvät asiakkaan identiteetin perusteella). Web-palveluiden tapauksessa eri käyttäjille eri käyttöoikeuksin voi näkyä erilaiset rajapinnat palveluun.

5 Encryption Symmetric cryptosystems if the encryption key K is known, the decryption key D=K -1 can be (relatively) easily determined Asymmetric cryptosystems (K,D) D cannot be concluded in a reasonable time -> K can be published without a danger or any third party to be able to decrypt the encrypted information T = K(T), where T is the original data and T is the encrypted data 172 Kryptosysteemit voivat olla symmetrisiä tai ei-symmetrisiä. Mikäli kryptausavaimen K perusteella voidaan helposti määrittää sen käänteisoperaatio D, on kyseessä symmetrinen kryptosysteemi. Käänteisoperaatiolla tarkoitetaan tässä sellaista operaatiota, jonka avulla kryptatun tiedon T (ts. K(T)) kryptaus voidaan purkaa ja näin ollen saada selville alkuperäinen tieto T. Ts., D(K(T)) = T. Mikäli taas käänteisoperaatiota ei voida helposti selvittää kryptausavaimen perusteella, on kyseessä eisymmetrinen kryptosysteemi. Ei-symmetrisen kryptosysteemin etuna on se, että kryptausavain voidaan huoletta julkaista.

6 Needham-Schroeder Public Key Protocol määrittelee ei-symmetrisen kryptosysteemin käyttöön perustuvan kommunikaation A:nja B:n välillä seuraavasti: 1. A ->B: {NA, A} KB 2. B ->A: {NA, NB} KA 3. A->B: {NB}KB missä NA on A:n salainen sanoma, NB on B:n salainen sanoma, KA on A:n julkinen avain ja KB on B:n julkinen avain Onko edellä oleva julkisiin avaimiin perustuvat identiteetin varmistus aukoton? Ts., voivatko A ja B olla varmoja toistensa henkilöllisyydestä ja voivatko he välittää turvallisesti viestejä toisilleen?

7 Asymmetric cryptosystems Example: A wants to store information T, ment for B only, in a public place 1) A stores T in a form K B (T) 2) Only B knows D B and can thus decrypt K B (T): T=D B (K B (T)) Example (digital signatures): A wants to store information T, equipped with its signature and ment for B only, in a public place 1) A stores T in a form S =K B (D A (T)) (this is possible, since K B is publically known) 2) B first applies D B and then K A to S (note again that K A is either public or, at least, known by B) 173 Kalvolla on esitetty kaksi esimerkkiä ei-symmetrisen kryptosysteemin käytöstä. Ensimmäisessä esimerkissä A:n tarkoitus on välittää informaatiota B:lle tallentaen sen julkiseen paikkaan B:n haettavaksi. Tällöin A kryptaa ko. informaation T käyttäen B:n julkista avainta. Koska vain B tietää miten kryptattu tieto puretaan, on kryptatun tiedon K B (T) tallettaminen julkiseen paikkaan mahdollista. Jälkimmäinen esimerkki koskee digitaalista allekirjoittamista. Digitaalisissa allekirjoituksissa käytetään vain allekirjoittajan tiedossa olevaa avainta (private key) allekirjoittamiseen. Sen lisäksi on olemassa joko vain tietyn luotettavan osapuolen (tai mahdollisesti useampien) tiedossa oleva avain (public key), jota käytetään digitaalisen allekirjoituksen varmistamiseen. Tässäkin tapauksessa on kyseessä eisymmetrinen kryptosysteemi. Esimerkissä A haluaa tallettaa B:lle tarkoitetun digitaalisesti allekirjoittamansa tiedon T julkiseen paikkaan. Tällöin A kryptaa B:n julkista avainta käyttäen allekirjoittamansa tiedon ja tallettaa lopputuloksen julkiseen paikkaan. B pystyy tällöin käyttämään digitaalisen allekirjoituksen varmistamiseen käytettävää avainta käyttämällä ensin omaa avaintaan kryptauksen purkamiseen.

8 Edellä esitetty Needham-Schroeder Public Key Protocol kommunikaatio ei ole turvallinen, sillä se ei toteuta autentikointivaatimusta. Esimerkki tästä on ns. Lowen hyökkäys (Lowe s attack), jossa oletetaan A:ksi naamioitu tunkeilija Z. Lowe osoitti, että B ei voi olla varma siitä, että viesti tulee A:lta. Huomaa myös, että protokollassa A ei eksplisiittisesti julista haluavansa kommunikoida nimenomaan B:n kanssa. Hyökkäyksessä ilkeä agentti Z huijaa rehellistä A:ta antamaan B:n salaisen sanoman NB. Tämän jälkeen ilkeä Z voikin huijata B:tä. Lowen hyökkäyksessä käytetään kaksi samanaikaista protokollaa, toinen A:n ja Z:n välillä (1) ja toinen Z:n ja B:n välillä (2). 1.1 A ->Z: {NA, A} KZ 2.1 Z(A) ->B: {NA, A} KB 2.2 B ->Z(A): {NA, NB} KA 1.2 Z ->A: {NA, NB} KA 1.3 A->Z: {NB}KZ 2.3 Z(A)->B: {NB}KB

9 Security in Web services 174

10 Secure Sockets Layer (SSL) SSL was defined by Netscape Communications Corporation for securing HTTP connections Confidentiality achieved by using a symmetric cryptosystem Integrity achieved by using a message authentication code based on a secure hash function Client authentication is optional and server authentication mandatory in a SSL connection i.e., client always knows the server s identity, but not necessarily the other way round 175 Web-palveluissa turvallisuusnäkökulmat voidaan huomioida eri tasoilla (kts. kalvo 111, Layers of Web Services ). Kuljetusprotokollatasolla voidaan käyttää esimerkiksi Netscapen määrittelemää SSL:ää HTTP-yhteyden turvaamiseksi. Toisaalta SOAP-viestien turvallisuus voidaan varmentaa käyttämällä kryptausmenetelmiä ja digitaalisia allekirjoituksia. Käytännössä kaikki selaimet ja HTTP-palvelimet tukevat nykyisin SSL:ää. Transport Layer Security 1.0 (TLS), joka on IETF:n (Internet Engineering Task Force) määrittelemä, on lähes identtinen SSL versio 3 :lle. SSL:ssä luottamuksellisuus toteutetaan käyttämällä symmetristä kryptausta (esim. Data Encryption Standard (DES)). Koskemattomuus varmistetaan puolestaan käyttämällä turvallisiin hashfunktioihin perustuvaa viestin autentikointia (esim. Message Digest 5 (MD5) ja Secure Hash Algorithm 1 (SHA-1)). SSL-yhteydessä asiakaspään autentikointi on optionaalista, kun taas palvelimen autentikointi on pakollista. Tämä perustuu siihen, että asiakas tietää aina palvelimen identiteetin, mutta päinvastainen ei välttämättä päde.

11 SSL server authentication 1) The Web server first needs to acquire server s digital certificate from a certification authority (CA) (a third party organization) the certificate contains e.g. a public encryption key K S 2) The server and the client agrees on the encryption mechanism and on the SSL version, and the server sends the client a session id 3) The server sends its certificate to a client 4) The client generates a premaster secret (ps) (a random number), encrypts the number using K S, and sends the encrypted ps to the server 5) The server decrypts the encrypted ps using its private key 6) The server and client now sharing ps generate symmetric keys for message encryption from ps and start communicating using the generated keys 176 SSL:ssä palvelimen autentikointi koostuu seuraavista askeleista: 1) Ennen kommunikoinnin aloittamista Web-palvelin hankkii kolmannelta osapuolelta (ns. certification authority) ns. digitaalisen sertifikaatin, joka sisältää mm. julkisen salausavaimen, tiedon palvelimesta jolle sertifikaatti on myönnetty sekä allekirjoituksen, joka varmistaa palvelimen pitäjän olevan se mikä se väittää olevansa. Sertifikaatti voidaan tallettaa julkiseen paikkaan. 2) Asiakassovellus ja Web-palvelin sopivat salausmenetelmän sekä SSL-version käytöstä, palvelin lähettää asiakkaalle istunnon tunnuksen (id). 3) Palvelin lähettää sertifikaatin asiakkaalle. 4) Asiakas generoi ns. premaster-avaimen (satunnaisluku), kryptaa sen käyttämällä julkista avainta K S ja lähettää sen palvelimelle. 5) Palvelin purkaa kryptauksen (yksityisellä) avaimella D S (jolloin D S (K S (premaster))=premaster). Tässä vaiheessa palvelimella ja asiakkaalla on tieto yhteisestä premaster-luvusta, josta muodostetaan symmetriset kryptausavaimet ko. istuntoa varten. Tämän jälkeen molemmat (asiakas ja palvelin) lähettävät vielä viestin vahvistaakseen, että ovat valmiita suojatun liikenteen aloittamiseen käyttäen sovittua symmetristä salausmenetelmää ja istuntoavainta.

12 SSL client authentication When communicating with a Web browser, the anonymity can (typically) be allowed In B2B communication the client authentication is often critical and needed Two approaches for client authentication are often used: HTTP basic authentication combined with SSL without client authentication HTTP basic authentication is based on user ids and passwords, both are sent without encryption SSL provides confidentiality SSL certificate-based client authentication cf. server authentication the client first needs to acquire a digital certificate 177 SSL:ää käytettäessä asiakaspään autentikointi toisin kuin palvelimen autentikointi - ei siis ole pakollista. Esimerkiksi selaimen anonyymisyys tyypillisesti sallitaan. Toisaalta liiketoiminnan kannalta tärkeässä kommunikoinnissa sitä usein edellytetään. Asiakaspään autentikointi on yleisesti käytössä kaksi tapaa: (1) HTTP perusautentikointi yhdistettynä palvelimen SSL-autentikointiin ja (2) SSL:n sertifikaatti-perustainen autentikointi (samaan tapaan kuin edellä esitettiin palvelimelle). HTTP perusautentikointi (HTTP basic authentication, RFC 2617) on osa HTTP protokollan spesifikaatioita ja se perustuu käyttäjätunnuksen ja salasanan käyttöön. Huomaa, että ne molemmat lähetetään kryptaamattomana. Tässä vaihtoehdossa SSL tarjoaa luottamuksellisuuden. Jälkimmäinen tapa on puolestaan vastaava kuin edellä esitettiin palvelimen tapauksessa. Tässäkin tapauksessa asiakkaan tulee siis ensin pyytää digitaalinen sertifikaatti kolmannelta osapuolelta.

13 WS-Security A joint proposal by IBM, Microsoft, and Verisign in 2002 WS-Security 1.0 standard was released by OASIS in April 2004 WS-Security Core Specification 1.1. was released by OASIS in February 2006 describes enhancements to SOAP messaging to provide quality of protection through message integrity, message confidentiality, and single message authentication WS-Security is extensible Provides mechanisms to construct security protocols, instead of providing certain explicit fixed security protocol 178 Web-palveluteknologioiden kehittäjinä Microsoft ja IBM ovat olleet tärkeissä rooleissa. Turvallinen viestinvälitys on myös viime aikoina ollut näiden sekä monien muiden osapuolien tärkeänä kehityskohteena. Microsoft, IBM ja Verisign tekivätkin ehdotuksen, jonka nimeksi tuli WS-Security, SOAP-pohjaisen viestinvälityksen turvallisuuteen liittyvien ongelmien ratkaisemiseksi. WS-Security pyrkii erityisesti turvaamaan luottamuksellisuuden ja koskemattomuuden viestinvälityksessä. Vuonna 2004 OASIS teki WS-Security ehdotuksesta version 1.0 ja samalla siitä tuli OASIS-organisaation ylläpitämä standardi. Helmikuussa 2006 OASIS julkaisi siitä version 1.1. WS-Security on laajennettava standardi. Se tarjoaa mekanismit turvallisuusprotokollien määrittämiseksi sen sijaan että se tarjoaisi tietyt eksplisiittiset turvallisuusprotokollat. Tämä tarkoittaa sitä, että on käyttäjien vastuulla suunnitella omat haavoittumattomat protokollat.

14 WS-Security Use of security tokens a security token represents a set of claims made by a client that might include a name, password, identity, key, certificate, group, privilege, and so on WS-Security provides a mechanism to associate security tokens with message content An authority can use its key to sign or encrypt security tokens, thus enabling the authentication of the claims in the token Builds on XML Encryption and XML Signature message integrity uses XML Signature in conjunction with security tokens to ensure that messages are transmitted without modifications Message confidentiality uses XML Encryption in conjunction with security tokens to keep portions of a SOAP message confidential 179 WS-Security käyttää hyväkseen W3C:n XML Encryption ja XML Signature spesifikaatioita, joihin tutustutaan seuraavaksi. Koska voisi ehkä sanoa, että SW-Security-spesifikaation takana on Webpalvelutekniikoiden pääkehittäjät, voi sen käyttöönoton olettaa lisääntyvän yleisemminkin. Työkalutukea SW-Security-spesifikaatioille on jo nyt olemassa. WS-Security käyttää XML Signature -spesifikaatioita sekä ns. turvallisuusavaimia (security tokens) viestin koskemattomuuden varmistamiseksi. Nämä turvallisuusavaimet ovat viestin lähettäjän määräämiä väitteitä, joita käytetään varmistamaan viestin koskemattomuus. Tällainen väite voi sisältää esimerkiksi nimen, salasanan, avaimen, sertifikaatin jne. Viestin luotettavuuden varmistamiseen puolestaan käytetään XML Encryption kieltä yhdessä turvallisuusavaimien kanssa.

15 WS-Security WS-Security markup is placed inside element <Security> in a SOAP header WS-Security specification introduces different kinds of security tokens, e.g. <UsernameToken> for providing a user name <BinarySecurityToken> for security tokens in binary format 180 SW-Security merkkaus laajentaa SOAP-viestiä lisäämällä sopivia elementtejä SOAP-viestin headerosaan. Tämä merkkaus sijoitetaan elementtiin <Security>. SW-Security-spesifikaatio määrittelee joukon eri elementtejä erityyppisten turvallisuusavaimien merkkaamiselle. Esimerkiksi elementtiä <UsernameToken> voidaan käyttää käyttäjänimen antamiseen ja elementtiä <BinarySecurityToken> binääri-formaatissa olevan turvallisuusavaimen antamiseen. Alla on SW-Security spesifikaatiossa esitetty esimerkki elementin <UsernameToken> käytöstä: <S11:Envelope xmlns:s11="..." xmlns:wsse="..."> <S11:Header>... <wsse:security> <wsse:usernametoken> <wsse:username>zoe</wsse:username> </wsse:usernametoken> </wsse:security>... </S11:Header>... </S11:Envelope>

16 Hash functions A hash function is an algorithm that creates a digital representation (also called a fingerprint ) of the original data in the form of a hash value that is of standard length the standard length is typically much smaller than the length of the original data Hash value is unique representation of the original data -> any changes to the original data lead to producing a different hash value, if the same hash function is used For a secure hash function, it is computationally impossible or very difficult to derive the original message from its hash value. Hash functions are used e.g. in digital signatures 181 Ns. hash-funktioita käytetään esimerkiksi digitaalisissa allekirjoituksissa helpottamaan ja tehostamaan digitaalisten allekirjoitusten tekemistä sekä niiden verifiointia. hash-funktio on algoritmi, joka muodostaa alkuperäisestä tiedosta yksikäsitteisen esityksen, ns., sormenjäljen, joka on huomattavasti lyhyempi kuin alkuperäinen data. Tässä yksikäsitteisyys on oleellista sormenjäljen aitouden varmentamiseksi ja mahdollisten muutosten havaitsemiseksi: mikäli alkuperäistä tietoa on muutettu, samaa hash-funktioita sovellettaessa saadaan erilainen sormenjälki. Puhuttaessa turvallisista hash-funktioista, tarkoitetaan tilannetta, jossa hash-funktion käänteisfunktio on mahdotonta tai hyvin vaikea muodostaa alkuperäisen datan muodostamiseksi sormenjäljestä. Tilanne on siis vastaava kuin ei-symmetrisissä kryptosysteemeissä.

17 Using hash functions with digital signatures Instead of encrypting the whole data, a much smaller fingerprint is generated using a hash function The fingerprint is then encrypted (using an asymmetric cryptosystem) and attached to the original data, when sent to the receiver The receiver decrypts the encrypted fingerprint and generates a new fingerprint from the original data: if the fingerprints are identical, the signature is valid 182 hash-funktioita käytetään esimerkiksi digitaalisissa allekirjoituksissa, erityisesti tapauksissa, joissa sähköisessä muodossa olevaa asiakirjaa ei haluta kryptata vaan ainoastaan allekirjoittaa se. Ts., tarkoitus ei ole välttämättä salata tietoa vaan ainoastaan todistaa, että lähettäjä on oikea tai tarkemmin sanottuna että lähettäjä ja viesti liittyvät yhteen. Tällöin hash-funktiolla muodostetaan ensin lyhyt sormenjälki alkuperäisestä asiakirjasta. Sen jälkeen tämä sormenjälki kryptataan (alkuperäisen asiakirjan sijaan). Vastaanottajalle lähetetään asiakirja alkuperäisessä muodossaan sekä kryptattu sormenjälki. Allekirjoituksen varmentamiseksi vastaanottaja purkaa ensin kryptauksen käyttäen lähettäjän julkista avainta. Tässä julkisuus voi myös rajoittua rajoitettuun joukkoon vastaanottajia. Sen jälkeen vastaanottaja generoi samalla hash-funktiolla alkuperäisestä dokumentista toisen sormenjäljen. Mikäli uusi sormenjälki ja viestin mukana lähetetty sormenjälki ovat identtiset, on allekirjoitus validi. Tällöin siis vastaanottaja tietää, että kryptaus on suoritettu avaimella, jota ko. julkinen avain vastaa.

18 XML Encryption 183

19 XML Encryption XML Encryption specification specifies a process for encrypting data and representing the result in XML the encrypted data may be, e.g. an XML document, an XML element, or XML element content (namely, sequence of characters), or binary image data The result is presented with element EncryptedData, which replaces the original data XML namespace URI that MUST be used by implementations of the specification (Dec 2002) is: xmlns:xenc='http://www.w3.org/2001/04/xmlenc#' 184 XML Encryption on W3C suositus tiedon kryptaamiseksi ja kryptatun tiedon esittämiseksi XMLmuodossa. Kryptattava tieto voi olla mitä vain, esimerkiksi XML-dokumentti, yksi tai useampi XMLdokumentin elementeistä tai vaikkapa XML-elementin sisältö (merkkijono). Kryptattava tieto voi olla myös binääridataa, esimerkiksi png-formaatissa oleva kuva. XML Encryption kieli on periaatteessa melko yksinkertainen. Kryptauksen tulos esitetään elementin EncryptedData sisältönä. Ko. elementti korvaa alkuperäisen kryptattavan tiedon ja sisältää alielementeissään tai viittaa kryptattuun tietoon. Lisäksi EncryptedData-elementti voi sisältää tietoa kryptauksessa käytetyistä avaimista. Sovelluksien tulee käyttää URIa xmlns:xenc='http://www.w3.org/2001/04/xmlenc#' identifioimaan, että ne toteuttavat voimassa olevan XML Encryption suosituksen (joulukuulta 2002). XML-dokumenttien kryptaus saattaa aiheuttaa myös ongelmia. Esimerkiksi eri tyyppiset haut kryptatusta XML-dokumentista saattavat olla vähintäänkin ongelmallisia. Lisäksi saattaa olla vaikea valita mitkä osat XML-dokumentista on tarkoituksenmukaista kryptata ja mitkä ei. Myös XML Scheman/DTD määrittelyjen käyttö saattaa aiheuttaa ongelmia. Kryptatun lohkon sisältämät elementit voidaan kuitenkin päätellä kielioppimäärityksestä (mikäli sellainen on käytettävissä).

20 EncryptedData element Four optional attributes Id : a string value to assign id to the element within the document context in a standard way Type: an URI valueto identify type information about the plaintext form of the encrypted content Note! If the data included in EncryptedData element is replacing the data in an XML document context and is of type element or content, then it is highly recommended that Type attribute value is given, otherwise the decryptor will not be able to automatically restore the XML document to its original cleartext form (c.f. decryption requirements in XML Encryption spec.) 185 EncryptedData-elementillä on neljä attribuuttia, joista kaikki ovat optionaalisia. Id-attribuuttia voidaan käyttää identifioimaan EncryptedData-elementti string-tyyppisellä arvolla. Type-attribuutti määrittelee kryptatun tiedon tyypin. Se voi olla Element (elementti) tai Content (elementin sisältö): 1) Tyyppi Element a) kryptataan tietty elementti b) super-encryption : kryptattu tieto (elementti) sisältää EncryptedData tai EncryptedKey elementtejä. Huom! Elementti EncryptedData ei kuitenkaan voi olla isä- tai lapsielementti toiselle EncryptedData-elementille. Itse kryptattu tieto sen sijaan voi olla mitä vain...ja siis sisältää esim. EncryptedData tai EncryptedElement elementtejä. Esim.: <EncryptedData Id='ED1' xmlns='http://www.w3.org/2001/04/xmlenc#' Type= > 2. Tyyppi Content a) kryptataan joukko elementtejä (elements) b) kryptataan elementin sisältö (character data) Esim. <EncryptedData xmlns='http://www.w3.org/2001/04/xmlenc#' Type='http://www.w3.org/2001/04/xmlenc#Content'>

21 Vaikka Type-attribuutin käyttö onkin optionaalista, sen käyttöä suositellaan vahvasti tapauksessa, jossa kryptattu data (EncryptedData-elementin sisältö) korvaa osan alkuperäisen XML-dokumentin sisällöstä ja on tyypiltään element (eli korvaa tietyn elementin) tai content (korvaa tietyn elementin sisällön, esim. luottokortin numero: <creditcardnumber>123 </creditcardnumber>). Jos tällöin Typeattribuutille ei anneta arvoa, saattaa dekryptauksessa tulla ongelmia, ts. dekryptaaaja ei pysty automaattisesti purkamaan kryptausta alkuperäiseen XML-dokumentin muotoon. Tämä johtuu dekryptaukselle määritellyistä vaatimuksista XML Encryption spesifikaatioissa ja siitä, että tyyppiinformaatio saattaa muussa tapauksessa sisältää tulkinnan tai prosessoinnin kannalta oleellista tietoa.

22 EncryptedData element Four optional attributes (cont d) MimeType : a string value defining the media type of the encrypted data, e.g. an XML document: MimeType="text/xml" a sequence of characters: MimeType="text/plain" binary image data: MimeType="image/png" Encoding : an URI value defining the encoding style Subelements EncryptionMethod (optional) describes the encryption algorithm applied to the cipher data if the element is absent, the encryption algorithm must be known by the recipient or the decryption will fail 186 MimeType-attribuutti määrittelee kryptatun datan mediatyypin string-muodossa ja Encoding-attribuutti määrittelee käytetyn koodaustavan URI-arvon avulla. Jos esimerkiksi kryptattu data on base64- koodattua PNG-muotoa, voidaan koodaus määritellä Encoding= ja mediatyyppi MimeType= image/png. Attribuuttien lisäksi EncryptedData-elementillä on joukko alielementtejä, joista osa on optionaalisia. Sen ensimmäinen optionaalinen alielementti on EncryptionMethod. Se kuvaa käytetyn kryptausalgoritmin. Mikäli tämä alielementti puuttuu, täytyy vastaanottajan (dekryptaajan) tietää entuudestaan käytetty kryptausalgoritmi. Muuten dekryptaus ei luonnollisestikaan onnistu.

23 EncryptedData element Subelements (cont d) ds:keyinfo (optional) carries information about the key used to encrypt the data may be used to transport public keys subelements: EncryptedKey, AgreementMethod, KeyName, and RetrievalMethod CipherData (mandatory) envelopes or references to the raw encrypted data If enveloping, the raw encrypted data is the CipherValue element's content if referencing, the CipherReference element's URI attribute points to the location of the raw encrypted data EncryptionProperties (optional) can contain additional information concerning the generation of the EncryptedData or EncryptedKey (e.g., date/time stamp) 187 Optionaalinen alielementti KeyInfo sisältää informaatiota kryptaukseen käytetyistä julkisista avaimista. Sillä on muutamia alielementtejä, joita käytetään tämän informaation merkkaamiseen. Koko KeyInfoelementin rakenne on määritelty XML Signature spesifikaatiossa, johon tutustumme seuraavaksi. EncryptedData-elementin CipherData-alielementti on pakollinen. Se joko sisältää kryptatun tiedon CipherValue-alielementissään tai viittaaa siihen CipherReference-alielementissä URI-arvon avulla. EncryptionProperties on myös optionaalinen alielementti. Siinä voidaan antaa lisäinformaatiota EncryptedData tai EncryptedKey elementtien generoinnista prosessointia varten (esim. aika tai päivämäärä). Tarkkaan ottaen EncryptionProperties antaa lisäinformaatiota EncryptedType-elementtien generointiin liittyen, joka puolestaan on abstrakti tyyppi, josta EncryptedData ja EncryptedKey on johdettu.

24 EncryptedData element structure: <EncryptedData Id? Type? MimeType? Encoding?> (<EncryptionMethod/>)? (<ds:keyinfo> (<EncryptedKey>)? (<AgreementMethod>)? (<ds:keyname>)? (<ds:retrievalmethod>)? (<ds:*>)? </ds:keyinfo>)? <CipherData> (<CipherValue>)? (<CipherReference URI?>)? </CipherData> (<EncryptionProperties>)? </EncryptedData> where? denotes zero or one occurence + denotes one or more occurences * denotes zero or more occurences an empty element tag means that the element must be empty 188 Esimerkki (XML Encryption spesifikaatio): 1. Alkuperäinen XML-dokumentti: <?xml version='1.0'?> <PaymentInfo xmlns='http://example.org/paymentv2'> <Name>John Smith</Name> <CreditCard Limit='5,000' Currency='USD'> <Number> </Number> <Issuer>Example Bank</Issuer> <Expiration>04/02</Expiration> </CreditCard> </PaymentInfo>

25 2. Versio, jossa luottokortti-informaatio (CreditCard elementti) on kryptattu <?xml version='1.0'?> <PaymentInfo xmlns='http://example.org/paymentv2'> <Name>John Smith</Name> <EncryptedData Type='http://www.w3.org/2001/04/xmlenc#Element' xmlns='http://www.w3.org/2001/04/xmlenc#'> <CipherData> <CipherValue>A23B45C56</CipherValue> </CipherData> </EncryptedData> </PaymentInfo>

26 XML Signature 189

27 XML Signature XML Signature, 2nd edition became a W3C Recommendation in June 2008 XML Signature specification specifies XML syntax and processing rules for creating and representing digital signatures Can be applied to sign any digital content, e.g., XML A method for associating a key with referenced data Support for integrity, message authentication and/or signer authentication 190 XML Signature suositus on IEFT:n ja W3C:n yhdessä kehittämä. Se määrittelee XML-pohjaisen syntaksin digitaalisten allekirjoitusten merkkaamiseen sekä prosessointiohjeet niiden käsittelemiseksi. XML Signature kieltä voidaan käyttää monentyyppisen digitaalisen sisällön allekirjoittamiseen. Se tarjoaa periaatteessa tavan liittää avaintietoa sisältöön. XML Signature kielen sisältöön tutustuimme osin jo edellä: XML Encryption kielen KeyInfo-määritykset on määritelty XML Signature spesifikaatiossa. XML Signature tarjoaa tuen koskemattomuudelle sekä viestin ja/tai allekirjoittajan autentikoinnille..

28 XML Signature (cont d) A signature may includes, for instance, cryptographic functions involved in the signature operation e.g. hashing and public key algorithms Information on algorithms used Key information (optional) indicates the key to be used to validate the signature XML Signature may be Enveloped: XML signature located in source XML Enveloping: XML signature wraps around the source XML External: XML signature in a separate document to the source XML represented by Signature element 191 Digitaalinen allekirjoitus voi sisältää tietoa käytetyistä kryptografisista funktioista, joita käytetään allekirjoituksissa. Näitä voivat olla esimerkiksi sormenjäljen muodostamiseen käytetyt hash-funktiot ja julkisiin avaimiin perustuvat algoritmit. Lisäksi viestin vastaanottajalle voidaan välittää tietoa (julkisesta) avaimesta, jota se voi käyttää allekirjoituksen varmentamiseen. Digitaalinen allekirjoitus voi koskea paikallisesti jotain tiettyä osaa XML-dokumentista (envoloped), se voi koskea koko XML-dokumenttia (enveloping) tai se voi olla ulkoinen (external), jolloin erillisenä annettuun allekirjoitukseen ainoastaan viitataan itse dokumentista. XML Signature spesifikaation mukainen allekirjoitus annetaan Signature-elementin avulla. Sen sisäiseen rakenteeseen perehdymme myöhemmin.

29 Canonical forms A canonical form of an XML document is a physical representation of the document produced by a canonicalization method. Canonilized forms are often used instead of the original forms when the actual content is of interest. The reason is that XML applications tend to make (cosmetic) changes, which have no impact on the information content of the document but make text-based comparisons unapplicable. 192 Kaksi XML dokumenttia saattavat erota toisistaan puhtaan tekstuaalisen vertailun perusteella, vaikkakin ne voivat olla loogisesti ekvivalentit. Tällaisissa tapauksissa kryptografiset hash-algoritmit, joita käytetään digitaalisissa allekirjoituksissa, antavat eri arvot. Niin sanottu kanoninen XML spesifikaatio kuvaa menetelmän, jolla voidaan generoida sellainen fyysinen esitys XML-dokumentista (ns. kanoninen muoto), joka ottaa huomioon sallittavat variaatiot (eivät vaikuta loogiseen sisältöön) annetussa sovelluskontekstissa. Tämä luonnollisestikin auttaa edellä mainittuun ongelmaan, koska tällöin esimerkiksi epäilyjä autentikoinnin tai luottamuksellisuuden suhteen ei nouse esille loogisesti samanlaisten XML-varianttien esiintyessä. Kanoninen muoto tarkoittaa siis sellaista XML-dokumentin fyysistä esitystä, joka on tuotettu jollain kanonisointimenetelmällä. Kahden fyysisesti hieman erilaisen mutta sisällöltään ja rakenteeltaan samanlaisesta dokumentista kanonisointi tuottaa identtiset dokumentit. Digitaalisissa allekirjoituksissa käytetään tyypillisesti XML-dokumentin kanonista muotoa. Digitaalisten allekirjoitusten lisäksi sitä käytetään tapauksissa, jolloin dokumentin tarkalla fyysisellä rakenteella on vaikutusta sen käyttöön. Tällaisissa tapauksissa esimerkiksi välilyöntien tai tabulointien käyttö vaikuttaa siihen miten dokumenttia tulkitaan tai käytetään. Esimerkki (W3C: Canonical XML Recommendation):

30 Alkuperäinen XML dokumentti: <?xml version="1.0"?> <?xml-stylesheet href="doc.xsl" type="text/xsl"?> <!DOCTYPE doc SYSTEM "doc.dtd"> <doc>hello, world!<!-- Comment 1 --></doc> <?pi-without-data?> <!-- Comment 2 --> <!-- Comment 3 --> b) Kanoninen muoto (ilman kommentteja): <?xml-stylesheet href="doc.xsl" type="text/xsl"?> <doc>hello, world!</doc> <?pi-without-data?> c) Kanoninen muoto (kommentteineen): <?xml-stylesheet href="doc.xsl" type="text/xsl"?> <doc>hello, world!<!-- Comment 1 --></doc> <?pi-without-data?> <!-- Comment 2 --> <!-- Comment 3 -->

31 Signature s subelements SignedInfo (mandatory) contains the information that is actually signed subelement CanonicalizationMethod (mandatory) the algorithm used to canonicalize the SignedInfo element before it is digested as a part of the signature operation subelement SignatureMethod (mandatory) specifies the algorithm used for signature generation and validation the algorithm that is used to convert the canonicalized SignedInfo into the SignatureValue this algorithm identifies all cryptographic functions involved in the signature operation public key algorithms, hashing, padding, etc. a private key is used to form the signature from the digest value, the receiver can then use the corresponding public key to verify the signature for example, the signature algorithm could be RSA-SHA1 193 Digitaaliset allekirjoitukset merkataan XML Signature kieltä käytettäessä elementin Signature avulla. Sillä on neljä alielementtiä, joista kaksi on pakollista ja kaksi optionaalista. Elementti SignedInfo sisältää sen informaation, joka allekirjoitetaan. SignedInfo-elementillä on kolme alielementtiä. Alielementti CanonicalizationMethod on pakollinen ja se määrittelee käytetyn kanonisointialgoritmin, jonka avulla tieto muutetaan kanoniseen XML-muotoon. Itse allekirjoitus tehdään kanonisoidulle muodolle. Seuraava pakollinen alielementti on SignatureMethod. Se puolestaan määrittelee algoritmin, jolla kanonisoidusta muodosta muodostetaan itse allekirjoitus. SignatureMethod identifioi kaikki kryptografiset funktiot, joita allekirjoitusoperaatiossa tarvitaan. Allekirjoituken tekeminen voi olla monimutkainenkin kombinaatio erilaisia funktioita, kuten ensin käytetty kanonisointialgoritmi, padding (ja mahdollisesti muita käytettyjä transformaatioalgoritmeja) sekä hash-funktiota käyttävä sormenjäljen muodostava pakkausalgoritmi (digest-funktio). Jotkut kryptauksessa käytetyt algoritmit edellyttävät tietynmittaisia syötteitä, padding tarkoittaa (yksikertaistetusti) merkkijononlisäystä, jonka avulla syöte saadaan määrämittaiseksi (tai sen monikerraksi). Kryptausta avattaessa tulee luonnollisesti tietää miten ko. lisätty merkkijono tulee poistaa.

32 Yksinkertaisessa allekirjoitusprosessissa siis ensin tulee kanonisoida allekirjoitettava tieto. Sitten siitä muodostetaan lyhyt sormenjälki, joka sen jälkeen allekirjoitetaan käyttäen salaista omaa avainta (julkisiin avaimiin perustuva kryptosysteemi). Allekirjoitus sijoitetaan Signature-elementin SignatureValue-alielementin sisällöksi. Viestin vastaanottaja voi myöhemmin käyttää julkista avainta varmistaakseen allekirjoituksen. XML Signature spesifikaatio sallii siis sen, että usealla osapuolella voi olla julkinen avain hallussaan allekirjoituksen verifiointia varten. Tämä julkinen avain voidaan välittää viestin mukana tai se voi olla muutoin tietyn vastaanottajajoukon hallussa. Spesifikaatio painottaa, että yksityinen avain tulee olla vain pienen joukon ja mieluiten vain yhden osapuolen hallussa. Julkinen avain voi olla suuremman joukon (osapuolet, jotka voivat tai joiden odotetaan varmentavan allekirjoitus) tiedossa, mutta se ei kaikissa tapauksissa ole täysin julkinen. Yksi tärkeä esille nouseva kysymys on vastaanottajaosapuolten luottamus julkiseen avaimeen. Tätä on pyritty varmentamaan käyttämällä sertifikaatteja.

33 Signature s subelements SignedInfo (cont d) Reference (mandatory) specifies a digest algorithm and digest value, and optionally an identifier of the object being signed, the type of the object, and/or a list of transforms to be applied prior to digesting attributes ID (optional): identifier» permits a Reference to be referenced from elsewhere URI (optional): identifies a data object being signed using a URI reference» since this information is used for validation, URI attribute should be omitted only if the receiving application is expected to know the identity of the object Type (optional): contains information about the type of object being signed, represented as an URI 194 SignedInfo-elementin kolmas alielementti Reference on pakollinen. Sillä on kolme optionaalista attribuuttia. ID-attribuutti ja Transforms-alielementti (josta lisää seuraavaksi) kuvaavat miten syöte sormenjäljen ottamiselle on muodostettu. Type-attribuutti puolestaan kuvaa tämän syötteen tyypin ja auttaa siten ko. tiedon prosessoinnissa. URI-attribuuttia käytetään allekirjoituksen validoinnissa (josta lisää myöhemmin). Sen vuoksi se tulisi yleensä antaa. Sen pois jättäminen on perusteltua vain silloin, kun voidaan olettaa, että viestin vastaanottaja pystyy selvittämään allekirjoitettavan tiedon jollain muulla tavoin. ID-attribuutti puolestaan identifioi Reference-elementin (normaaliin ID-attribuutin käytön tapaan). Tämä puolestaan mahdollistaa turvallisen viittauksen Reference-elementtiin ulkopuolelta. Type-attribuutti kertoo minkä tyyppistä allekirjoitettava data on. Esim.: Type=

34 Signature s subelements SignedInfo (cont d) Reference (mandatory) DigestMethod subelement (mandatory) the algorithm applied to the data after Transforms is applied (if specified) to yield the DigestValue signing of the DigestValue is what binds a resources content to the signer's key. DigestValue subelement (mandatory) contains the encoded value of the digest (hash) Transforms subelement (optional) ordered list of processing steps that were applied to the resource's content before it was digested» e.g., canonicalization, encoding, XSLT, XPath, XML Schema validation or XInclude 195 Reference sisältää kolme alielementtiä. Pakollinen DigestMethod-alielementti määrittelee allekirjoitusalgoritmin, jota käytetään allekirjoitettavalle tiedolle sen jälkeen, kun se on ensin käsitelty Transforms-algoritmeilla. DigestMethod-alielementin määrittelemä algoritmi muodostaa allekirjoitettavasta (ja kanonisoidusta) tiedosta hash-funktion avulla muodostetun sormenjäljen. Pakollinen DigestValue-alielementti sisältää itse sormenjäljen. Optionaalinen Transforms-alielementti sisältää listan esiprosessointiaskeleista, joita sovelletaan allekirjoitettavalle tiedolle ennen kuin se allekirjoitetaan. Tällaisia esiprosessointiaskeleita voivat olla esimerkiksi kanonisointi, koodaustavan soveltaminen, XSLT-transformaatio, XPath-määritys, XML Schema validointi tai XInclude-määritys.

35 Signature s subelements SignatureValue (mandatory) contains the actual value of the digital signature it is always encoded using base64 Object (optional) may contain any data Three optional attributes: MimeType, ID, and Encoding KeyInfo (optional) enables the recipient(s) to obtain the key needed to validate the signature 196 Signature-elementin SignatureValue-alielementti on pakollinen ja sisältää lopullisen allekirjoituksen. Se käyttää aina base64-koodaustapaa. Signature-elementin kaksi jäljellä olevaa alielementtiä Object ja KeyInfo ovat molemmat optionaalisia. KeyInfo-alielementin avulla viestin vastaanottajalle välitetään tietoa avaimesta, joita se voi käyttää allekirjoituksen verifiointiin. Object-alielementtejä voi puolestaan esiintyä useampia ja ne voivat periaatteessa sisältää millaista dataa hyvänsä. Object-elementtiä käytetään kirjekuorena toimivaa allekirjoitusta (enveloping signature) käytettäessä kuljettamaan allekirjoitettava tieto. Tällöin sormenjälki (digest) lasketaan koko Objectelementistä, mukaanlukien alku- ja lopputagit. Object-elementillä on kolme optionaalista attribuuttia: MimeType, ID, ja Encoding. Jos esimerkiksi Object sisältää base64-koodattua PNG-mutoista tietoa, voisi attribuutin MimeType arvo olla image/png ja attribuutin Encoding arvo base64. Objectelementin ID-attribuuttiin viitataan usein esimerkiksi SignedInfo-elementistä.

36 Signature element structure: <Signature ID?> <SignedInfo> <CanonicalizationMethod/> <SignatureMethod/> (<Reference URI? > (<Transforms>)? <DigestMethod> <DigestValue> </Reference>)+ </SignedInfo> <SignatureValue> (<KeyInfo>)? (<Object ID?>)* </Signature> where? denotes zero or one occurence + denotes one or more occurences * denotes zero or more occurences an empty element tag means that the element must be empty 197 Esimerkki (XML Signature specification): <Signature Id="MyFirstSignature" xmlns="http://www.w3.org/2000/09/xmldsig#"> <SignedInfo> <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n "/> <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#dsa-sha1"/> <Reference URI="http://www.w3.org/TR/2000/REC-xhtml /"> <Transforms> <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n "/> </Transforms> <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/> <DigestValue>j6lwx3rvEPO0vKtMup4NbeVu8nk=</DigestValue> </Reference> </SignedInfo> <SignatureValue>MC0CFFrVLtRlk=...</SignatureValue> <KeyInfo> <KeyValue> <DSAKeyValue> <P>...</P><Q>...</Q><G>...</G><Y>...</Y> </DSAKeyValue> </KeyValue> </KeyInfo> </Signature>

37 Validation A data object is signed by computing its digest value and a signature over that value The signature is later checked via two required steps of core validation: i. reference validation: the verification of the digest contained in each Reference in SignedInfo ii. signature validation: cryptographic validation of the signature calculated over SignedInfo 198 Kuten jo aiemmin on mainittu, digitaalista allekirjoitusta tehtäessä kanonisoinnin ja mahdollisten muiden transformaatio operaatioiden jälkeen lasketaan allekirjoitettavasta datasta lyhyt sormenjälki (digest) käyttäen hash-algoritmeja. Tämän jälkeen saatu sormenjälki allekirjoitetaan käyttäen allekirjoittajan yksityistä avainta. Vastaava julkinen avain voidaan välittää viestin vastaanottajalle sanomassa (KeyInfo-elementissä) tai vastaanottaja voi saada sen muuten tietoonsa. Allekirjoituksen tarkistamiseen (perusvarmistus) liittyy kaksi pakollista vaihetta, jotka liittyvät em. allekirjoitusprosessiin: sormenjäljen varmistus (digest verification) ja allekirjoituksen varmistus (signature validation). Allekirjoituksen varmistus tehdään, jos sormenjäljen varmistus on onnistunut.

38 Validation (cont d) i. Reference validation: the verification of the digest contained in each Reference in SignedInfo 1. Canonicalize the SignedInfo element based on the CanonicalizationMethod in SignedInfo 2. For each Reference in SignedInfo: 1. Obtain the data object to be digested. e.g., the signature application may dereference the URI and execute Transforms provided by the signer in the Reference element 2. Digest the resulting data object using the DigestMethod specified in its Reference specification 3. Compare the generated digest value against DigestValue in the SignedInfo Reference; if there is any mismatch, validation fails 199 Varmistettaessa XML Signature kielellä tehtyä digitaalista allekirjoita tehdään ensin sormenjäljen varmistus. Aluksi kanonisoidaan SignedInfo-elementin arvo käyttäen annettua kanonisointimenetelmää (CanonicalizationMethod ). Sen jälkeen jokaiselle SignedInfo-elementin Reference-alielementille tehdään sormenjäljen varmistus käyttäen sen alielementtejä DigestMethod, DigestValue ja Transforms. Tämä tehdään puolestaan kolmessa vaiheessa. Aluksi tulee selvittää tieto, jolle allekirjoitus on tehty. Kuten aiemmin Signature-elementin alielementtejä läpi käydessä selvitettiin, SignedInfo-alielementin Reference-alielementin URI-attribuutti identifioi tiedon, jolle sormenjälki muodostetaan. Tässä vaiheessa voidaan siis käyttää apuna sitä tietoa sekä Transforms-alielementin määrittelemiä transformointifunktioita. Seuraavassa vaiheessa saadusta tiedosta muodostetaan sormenjälki käyttäen DigestMethod-elementissä annettua menetelmää. Lopuksi verrataan laskettua arvoa DigestValuealielementin arvoon. Mikäli ne ovat täsmälleen samat, on sormenjälki todettu oikeaksi (koskemattomuus).

39 Validation (cont d) ii. Signature validation: Does the SignatureValue match the result of processing SignedInfo with CanonicalizationMethod and SignatureMethod as specified? 1) Obtain the keying information from KeyInfo or from an external source. 2) Obtain the canonical form of the SignatureMethod using the CanonicalizationMethod and use the result (and previously obtained KeyInfo) to confirm the SignatureValue over the SignedInfo element. 200 Allekirjoituksen tarkistaminen tapahtuu luonnollisesti allekirjoittajan julkista avainta käyttäen. Tarkoituksena on tarkistaa vastaako SignatureValue-elementin arvo sitä arvoa, joka saadaan kun käytetään kanonisointimenetelmää (CanocicalizationMethod ) ja allekirjoitusmenetelmää (SignatureMethod ). Tässä tulee siis tarkistettua, että SignedInfo-elementin arvoa ei ole muutettu ja että käytetyt avaimet ja menetelmät/muunnokset ovat oikeita. Allekirjoituksen validoinnissa toimitaan kuten allekirjoitettaessakin. Ensin siis tehdään kanonisointi allekirjoitettavalle tiedolle ja sen jälkeen käytetään kuvattua allekirjoitusmenetelmää. Laskettua allekirjoitusta verrataan sitten SignatureValueelementin sisältämään allekirjoitukseen. Tässä tulee muistaa, että SignatureMethod kuvaa mahdollisesti useita kryptografisia funktiota, joita allekirjoitusalgoritmi käyttää.

40 Security in Web services Applying digital signatures to messaging e.g., applying XML Signature to SOAP messaging Applying encryption (e.g., XML Encryption) mechanisms Applying SSL or TLS if the SOAP middleware supports HTTPS connections, SSL can be used Security service as a Web service? providing security functions (key management, certificate management, authentication, authorization) as Web services -> freeing application developers and administrators from these tasks 201 SOAP ei itsessään ota kantaa tai sisällä mekanismeja viestin turvallisuuden takaamiseksi, mutta se sallii niiden toteuttamisen laajennosmekanisminsa kautta (header-osa). Turvallinen viestinvälitys voidaan Web-palvelukonseptissa taata usealla eri tavalla ja usealla eri tasolla. Digitaalisia allekirjoituksia ja kryptausta voidaan käyttää laajentaen SOAP-viestejä sopivasti. Toisaalta kuljetusprotokollatasolla voidaan käyttää vaikkapa SSL:ää tai TLS:ää. Mikäli näin saatu lisäturvallisuus on riittävää, on se monissa tapauksissa parempi vaihtoehto kuin käyttää digitaalisia allekirjoituksia ja kryptausta XMLtasolla. On arvioitu, että SSL:n käyttö on n. 10 kertaa tehokkaampaa kuin XML-tasolla tehty kryptaus ja allekirjoitus. Kuten edellä esitetystä voi päätellä, on esimerkiksi digitaalisen allekirjoituksen tekeminen että sen verifiointi monivaiheinen aikaa vievä prosessi. Itse allekirjoitukseen ja kryptaukseen liittyvä merkkaus voi jopa moninkertaistaa viestin koon. Tällöin jo pelkkä jäsentäminenkin vie enemmän aikaa. Mielenkiintoinen vaihtoehto on myös toteuttaa tietyt turvallisuusominaisuudet, kuten avainten hallinta, sertifikaattien hallinta, jne., erillisenä palveluna, joita (tietyt?) Web-palvelut voisivat käyttää. Tämä toisaalta vapauttaisi Web-palveluiden toteuttajan näiden melko monimutkaistenkin asioiden hallinnalta, mutta sisältää myös omat hankaluutensa. Mitkä?

41 Some research topics on SOA and Web services (Web) service composition modeling support many workflow and service composition languages transformations (methods and tools) Web services and Semantic Web Semantic Web techniques can make Web service systems more efficient Especially Internet-based messaging is always slow Transferring only essential information Semantic Web techniqes can be used for finding the essential information metainformation descriptions Not many real applications available 202 Yksi ehkä tällä vilkkaimmin tutkituista palvelujen käyttöön liittyvistä ongelma-alueista on palveluiden yhdistämisen ja workflow-kuvausten mallintaminen. Vaikka BPEL-kieli onkin saavuttanut tietyssä mielessä käytännön standardin aseman palveluperustaisten järjestelmien liiketoimintaprosessien kuvauskielenä, muitakin kieliä on toki ehdotettu ja niitä käytetään. Eri kielet on kehitetty hieman eri tarkoituksiin ja hieman erilaisia vaatimuksia silmällä pitäen. Tämän vuoksi tällä hetkellä kehitetään runsaasti sekä työkaluja ja menetelmiä varsinaisten palveluiden koordinointikuvausten tuottamiseksi korkean tason workflow-malleista. Myös muuntimia eri workflow-kielten välille on kehitetty. Tällä kurssilla ei käsitellä tarkemmin Semanttista Webiä. Siihen voi kuitenkin tutustua esimerkiksi W3C:n Suomen toimiston sivuilla, jonka esitelmäarkistosta löytyy useita esityksiä aiheesta. Perusideana Semanttisessa Webissä on kuvata (Webissä esitettävälle) tiedolle annettava metatieto tavalla, joka on ohjelmallisesti käsiteltävissä ja hyödynnettävissä esimerkiksi tiedon hakua varten. Koska tiedonsiirto erityisesti Internetissä on aina hidasta, on tarkoituksen mukaista siirtää vain oleellinen tieto. Tämä puolestaan edellyttää sen, että tämä oleellinen tieto voidaan helposti löytää. Tiedon tehokasta löytämistä taas tukee metatiedon mahdollisimman hyvä ja kattava esittäminen, jota erilaiset hakukriteerit voivat hyödyntää. Semanttisen Webin tekniikoiden hyödyntäminen Webpalvelujärjestelmissä tarjoaakin näin ollen mahdollisuuden ko. järjestelmien tehostamiseksi. Rekisterit (kuten UDDI) tavallaan hyödyntävätkin metatiedon käyttöä eri kategorisointimekanismeillaan. Käytännössä ei vieläkään ole useita Web-palveluiden ja Semanttisen Webin yhdistämistä tukevia sovelluksia olemassa.

42 Some research topics on SOA and Web services Migrating old legacy systems to SOA/Web services identification of the services decision on the communication mechanism wrapping techniques methods Support for modeling and software development methods SOA governance Mobile Web services 203 Yksi tärkeä tutkimus- ja sovelluskohde on vanhojen legacy-järjestelmien toiminnallisuuden tarjoaminen Web-palveluina. Käytännön tarve sille on tällä hetkellä suuri. Tämä edellyttää ensinnäkin sen, että päätetään mikä toiminnallisuus tarjotaan palveluna. Se puolestaan edellyttää palveluiden identifioinnin. Tämän jälkeen tulee päättää kommunikointitavasta ja kommunikoinnin abstraktiotasosta sekä valita sopiva käärimistapa. Yksi ohjelmistotuotannon näkökulmasta kiinnostava ja oleellinen haaste on myös ohjelmistosuunnitteluprosessin eri vaiheiden huomion ottaminen Web-palveluja toteutettaessa. Tämä edellyttää myös mm. tukea palveluiden ja palveluiden koordinoinnin mallintamiselle. SOA-pohjaisten järjestelmien hallinta kaiken kaikkiaan on myös laaja kysymys. Myös palveluiden tarjoaminen mobiililaitteissa on kiinnostava ja tällä hetkellä akuutti tutkimus- ja kehityskohde. Mobiililaitteita käytetään tällä hetkellä pääasiassa asiakassovellusten ajamiseen. Mobiilius tuo mukanaan myös muita kiinnostavia ja Web-palvelukonseptissa hyödynnettäviä näkökulmia, kuten kontekstisensitiivisyyden.

Avointa verkkoa kuten Internetiä hyödyntävä viestinvälitys saattaa olla riskialtista tiedon monistus- ja muuntamisriskin vuoksi.

Avointa verkkoa kuten Internetiä hyödyntävä viestinvälitys saattaa olla riskialtista tiedon monistus- ja muuntamisriskin vuoksi. 129 Avointa verkkoa kuten Internetiä hyödyntävä viestinvälitys saattaa olla riskialtista tiedon monistus- ja muuntamisriskin vuoksi. On syytä muistaa, että 100% turvallisuutta ei voida koskaan taata. Turvallisuus

Lisätiedot

TIEKE Verkottaja Service Tools for electronic data interchange utilizers. Heikki Laaksamo

TIEKE Verkottaja Service Tools for electronic data interchange utilizers. Heikki Laaksamo TIEKE Verkottaja Service Tools for electronic data interchange utilizers Heikki Laaksamo TIEKE Finnish Information Society Development Centre (TIEKE Tietoyhteiskunnan kehittämiskeskus ry) TIEKE is a neutral,

Lisätiedot

Kuljetus- ja sovelluskerroksen tietoturvaratkaisut. Transport Layer Security (TLS) TLS:n suojaama sähköposti

Kuljetus- ja sovelluskerroksen tietoturvaratkaisut. Transport Layer Security (TLS) TLS:n suojaama sähköposti Kuljetus- ja sovelluskerroksen tietoturvaratkaisut Transport Layer Security (TLS) ja Secure Shell (SSH) TLS Internet 1 2 Transport Layer Security (TLS) Sopii monenlaisille sovellusprotokollille, esim HTTP

Lisätiedot

Olet vastuussa osaamisestasi

Olet vastuussa osaamisestasi Olet vastuussa osaamisestasi Ohjelmistoammattilaisuuden uudet haasteet Timo Vehmaro 02-12-2015 1 Nokia 2015 Mitä osaamista tulevaisuudessa tarvitaan? Vahva perusosaaminen on kaiken perusta Implementaatio

Lisätiedot

Tietoturva 811168P 5 op

Tietoturva 811168P 5 op 811168P 5 op 6. Oulun yliopisto Tietojenkäsittelytieteiden laitos Mitä se on? on viestin alkuperän luotettavaa todentamista; ja eheyden tarkastamista. Viestin eheydellä tarkoitetaan sitä, että se ei ole

Lisätiedot

OHJ-5201 Web-palveluiden toteutustekniikat. Kurssisisällöstä. Tarja Systä

OHJ-5201 Web-palveluiden toteutustekniikat. Kurssisisällöstä. Tarja Systä OHJ-5201 Web-palveluiden toteutustekniikat Kurssisisällöstä Tarja Systä 1 Yleistä Esitietovaatimukset OHJ-1400 Olio-ohjelmoinnin peruskurssi (pakollinen) OHJ-5010 Hajautettujen järjestelmien perusteet

Lisätiedot

Salasanan vaihto uuteen / How to change password

Salasanan vaihto uuteen / How to change password Salasanan vaihto uuteen / How to change password Sisällys Salasanakäytäntö / Password policy... 2 Salasanan vaihto verkkosivulla / Change password on website... 3 Salasanan vaihto matkapuhelimella / Change

Lisätiedot

XML:n turvallisuus web-palveluissa

XML:n turvallisuus web-palveluissa XML:n turvallisuus web-palveluissa Tuukka Nissinen 24.5.2008 Joensuun yliopisto Tietojenkäsittelytiede Pro gradu tutkielma Tiivistelmä Web-palveluiden käyttö on yleistynyt valtavasti viime vuosien aikana.

Lisätiedot

Security server v6 installation requirements

Security server v6 installation requirements CSC Security server v6 installation requirements Security server version 6.x. Version 0.2 Pekka Muhonen 2/10/2015 Date Version Description 18.12.2014 0.1 Initial version 10.02.2015 0.2 Major changes Contents

Lisätiedot

Security server v6 installation requirements

Security server v6 installation requirements CSC Security server v6 installation requirements Security server version 6.4-0-201505291153 Pekka Muhonen 8/12/2015 Date Version Description 18.12.2014 0.1 Initial version 10.02.2015 0.2 Major changes

Lisätiedot

Tietoturvan perusteet - Syksy 2005. SSH salattu yhteys & autentikointi. Tekijät: Antti Huhtala & Asko Ikävalko (TP02S)

Tietoturvan perusteet - Syksy 2005. SSH salattu yhteys & autentikointi. Tekijät: Antti Huhtala & Asko Ikävalko (TP02S) Tietoturvan perusteet - Syksy 2005 SSH salattu yhteys & autentikointi Tekijät: Antti Huhtala & Asko Ikävalko (TP02S) Yleistä SSH-1 vuonna 1995 (by. Tatu Ylönen) Korvaa suojaamattomat yhteydentottotavat

Lisätiedot

Internet Protocol version 6. IPv6

Internet Protocol version 6. IPv6 Internet Protocol version 6 IPv6 IPv6 Osoiteavaruus 32-bittisestä 128-bittiseksi Otsikkokentässä vähemmän kenttiä Lisäominaisuuksien määritteleminen mahdollista Pakettien salaus ja autentikointi mahdollista

Lisätiedot

Software Signing System System overview and key domain concepts

Software Signing System System overview and key domain concepts Software Signing System System overview and key domain concepts Copyright 2004 F-Secure Corporation. All rights reserved. Contents 1 System overview...1 2 Main domain concepts...2 3 Roles and user groups...3

Lisätiedot

Salausmenetelmät 2015/Harjoitustehtävät

Salausmenetelmät 2015/Harjoitustehtävät Salausmenetelmät 2015/Harjoitustehtävät 1. Ystäväsi K lähettää sinulle Caesarin yhteenlaskumenetelmällä kirjoitetun viestin ÖHXHHTTLOHUPSSHSSH R. Avaa viesti. 2. Avaa Caesarin yhteenlaskumenetelmällä laadittu

Lisätiedot

SOA/.NET oppitunti siitä, miten johtoasema säilytetään

SOA/.NET oppitunti siitä, miten johtoasema säilytetään SOA/.NET oppitunti siitä, miten johtoasema säilytetään Ahti Haukilehto FCS Partners Oyj Microsoft Regional Director, Finland Ensinnäkin, MS taitaa johtaa WS-kisaa.NET 56% vrs. Java 44% Forrester, pohjois-amerikka,

Lisätiedot

Yritysturvallisuuden perusteet. 11. Luento Tietotekninen turvallisuus

Yritysturvallisuuden perusteet. 11. Luento Tietotekninen turvallisuus Yritysturvallisuuden perusteet Teemupekka Virtanen Helsinki University of Technology Telecommunication Software and Multimedia Laboratory teemupekka.virtanen@hut.fi 11. Luento Tietotekninen turvallisuus

Lisätiedot

812336A C++ -kielen perusteet, 21.8.2010

812336A C++ -kielen perusteet, 21.8.2010 812336A C++ -kielen perusteet, 21.8.2010 1. Vastaa lyhyesti seuraaviin kysymyksiin (1p kaikista): a) Mitä tarkoittaa funktion ylikuormittaminen (overloading)? b) Mitä tarkoittaa jäsenfunktion ylimääritys

Lisätiedot

Attribuuttipohjainen käyttövaltuuksien hallinta Case Dreamspark Premium

Attribuuttipohjainen käyttövaltuuksien hallinta Case Dreamspark Premium Attribuuttipohjainen käyttövaltuuksien hallinta Case Dreamspark Premium Jari Kotomäki Aalto University IT Käyttövaltuuksien hallinta eli auktorisointi Prosessi, jossa on kyse käyttäjän tunnistamisen (autentikoinnin,

Lisätiedot

Tietorakenteet ja algoritmit

Tietorakenteet ja algoritmit Tietorakenteet ja algoritmit Taulukon edut Taulukon haitat Taulukon haittojen välttäminen Dynaamisesti linkattu lista Linkatun listan solmun määrittelytavat Lineaarisen listan toteutus dynaamisesti linkattuna

Lisätiedot

1.3 Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä

1.3 Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä OULUN YLIOPISTO Tietojenkäsittelytieteiden laitos Johdatus ohjelmointiin 811122P (5 op.) 12.12.2005 Ohjelmointikieli on Java. Tentissä saa olla materiaali mukana. Tenttitulokset julkaistaan aikaisintaan

Lisätiedot

Tiedon salaaminen tallennusverkossa Luottokorttinumeroiden tokenisointi

Tiedon salaaminen tallennusverkossa Luottokorttinumeroiden tokenisointi Tiedon salaaminen tallennusverkossa Luottokorttinumeroiden tokenisointi EMC Forum 2009, Dipoli Jon Estlander, RSA Agenda Tallennetun tiedon salaaminen Tiedon salaaminen tallennusverkossa RSA Key Manager

Lisätiedot

1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä

1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä OULUN YLIOPISTO Tietojenkäsittelytieteiden laitos Johdatus ohjelmointiin 81122P (4 ov.) 30.5.2005 Ohjelmointikieli on Java. Tentissä saa olla materiaali mukana. Tenttitulokset julkaistaan aikaisintaan

Lisätiedot

LYTH-CONS CONSISTENCY TRANSMITTER

LYTH-CONS CONSISTENCY TRANSMITTER LYTH-CONS CONSISTENCY TRANSMITTER LYTH-INSTRUMENT OY has generate new consistency transmitter with blade-system to meet high technical requirements in Pulp&Paper industries. Insurmountable advantages are

Lisätiedot

Verkottunut suunnittelu

Verkottunut suunnittelu Rintekno Oy / JMM / 10.1.2002 Verkottunut suunnittelu DOKUMENTTI- POHJAINEN Tarkastus ja hyväksyntä Automaattinen dokumenttien luonti MALLIPOHJAINEN 2D:SSÄ JA 3D:SSÄ Tarkastus ja hyväksyntä Virtuaaliset

Lisätiedot

BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET.

BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET. BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET. Pekka Ollikainen Open Source Microsoft CodePlex bio Verkkosivustovastaava Suomen Sarjakuvaseura

Lisätiedot

7.4 Variability management

7.4 Variability management 7.4 Variability management time... space software product-line should support variability in space (different products) support variability in time (maintenance, evolution) 1 Product variation Product

Lisätiedot

Choose Finland-Helsinki Valitse Finland-Helsinki

Choose Finland-Helsinki Valitse Finland-Helsinki Write down the Temporary Application ID. If you do not manage to complete the form you can continue where you stopped with this ID no. Muista Temporary Application ID. Jos et onnistu täyttää lomake loppuun

Lisätiedot

Kuljetus- ja sovelluskerroksen tietoturvaratkaisut. Transport Layer Security (TLS) TLS:n turvaama HTTP. TLS:n suojaama sähköposti

Kuljetus- ja sovelluskerroksen tietoturvaratkaisut. Transport Layer Security (TLS) TLS:n turvaama HTTP. TLS:n suojaama sähköposti Kuljetus- ja sovelluskerroksen tietoturvaratkaisut Transport Layer Security (TLS) ja Secure Shell (SSH) TLS Internet 1 2 Transport Layer Security (TLS) Sopii monenlaisille sovellusprotokollille, esim HTTP

Lisätiedot

Sisällysluettelo Table of contents

Sisällysluettelo Table of contents Sisällysluettelo Table of contents OTC:n Moodlen käyttöohje suomeksi... 1 Kirjautuminen Moodleen... 2 Ensimmäinen kirjautuminen Moodleen... 2 Salasanan vaihto... 2 Oma käyttäjäprofiili... 3 Työskentely

Lisätiedot

Group 2 - Dentego PTH Korvake. Peer Testing Report

Group 2 - Dentego PTH Korvake. Peer Testing Report Group 2 - Dentego PTH Korvake Peer Testing Report Revisions Version Date Author Description 1.0 Henrik Klinkmann First version Table of Contents Contents Revisions... 2 Table of Contents... 2 Testing...

Lisätiedot

Miehittämätön meriliikenne

Miehittämätön meriliikenne Rolls-Royce & Unmanned Shipping Ecosystem Miehittämätön meriliikenne Digimurros 2020+ 17.11. 2016 September 2016 2016 Rolls-Royce plc The 2016 information Rolls-Royce in this plc document is the property

Lisätiedot

Tietuekuva. Aineistosiirrot XML ISO 20022 XML pain.001.001.02 MT101 sanomasäännöt 15.11.2012

Tietuekuva. Aineistosiirrot XML ISO 20022 XML pain.001.001.02 MT101 sanomasäännöt 15.11.2012 Tietuekuva Aineistosiirrot XML 20022 XML pain.001.001.02 sanomasäännöt 15.11.2012 2 1. Maksusanoman rakenne ja sisältö Dokumentti on tarkoitettu käytettäväksi yhdessä C2B tietuekuvauksen kanssa pain 001.001.02

Lisätiedot

Luento 12: XML ja metatieto

Luento 12: XML ja metatieto Luento 12: XML ja metatieto AS-0.110 XML-kuvauskielten perusteet Janne Kalliola XML ja metatieto Metatieto rakenne sanasto Resource Description Framework graafikuvaus XML Semanttinen Web agentit 2 1 Metatieto

Lisätiedot

Tiedonsiirto- ja rajapintastandardit

Tiedonsiirto- ja rajapintastandardit Tiedonsiirto- ja rajapintastandardit Viitekehys Julkishallinnon perustietovarantojen rajapinnat (PERA) työryhmän tulokset valmiit syksyllä 2011 Määrittelee teknisen arkkitehtuuriratkaisun tietovarantojen

Lisätiedot

Ohjelmointikielet ja -paradigmat 5op. Markus Norrena

Ohjelmointikielet ja -paradigmat 5op. Markus Norrena Ohjelmointikielet ja -paradigmat 5op Markus Norrena Ko#tehtävä 4 Viimeistele "alkeellinen kuvagalleria". Käytännössä kaksi sivua Yksi jolla voi ladata kuvia palvelimelle (file upload) Toinen jolla ladattuja

Lisätiedot

Lab SBS3.FARM_Hyper-V - Navigating a SharePoint site

Lab SBS3.FARM_Hyper-V - Navigating a SharePoint site Lab SBS3.FARM_Hyper-V - Navigating a SharePoint site Note! Before starting download and install a fresh version of OfficeProfessionalPlus_x64_en-us. The instructions are in the beginning of the exercise.

Lisätiedot

Pretty Good Privacy eli näin kryptaat sähköpostisi

Pretty Good Privacy eli näin kryptaat sähköpostisi Pretty Good Privacy eli näin kryptaat sähköpostisi Miksi PGP? Edward Snowden, the NSA whistleblower who revealed his identity Sunday, first approached The Guardian s Glenn Greenwald in February and, by

Lisätiedot

SOAPin nimen Object on harhaanjohtava, koska SOAPissa ei ole objektiviittauksia. Tähän ja muihin SOAPin puutteisiin palataan niin ikään myöhemmin.

SOAPin nimen Object on harhaanjohtava, koska SOAPissa ei ole objektiviittauksia. Tähän ja muihin SOAPin puutteisiin palataan niin ikään myöhemmin. 1 SOAPin uusin versio 1.2 on vuodelta 2003. Vaikka tämä versio onkin jo yleisesti käytössä ja myös W3C:n suositus, käytetään versiota 1.1 myös jonkin verran edelleen. SOAPia voidaan käyttää esim. tyypilliseen

Lisätiedot

Automaatiojärjestelmän hankinnassa huomioitavat tietoturva-asiat

Automaatiojärjestelmän hankinnassa huomioitavat tietoturva-asiat Automaatiojärjestelmän hankinnassa huomioitavat tietoturva-asiat Teollisuusautomaation tietoturvaseminaari Purchasing Manager, Hydro Lead Buyer, Industrial Control Systems 1 Agenda / esityksen tavoite

Lisätiedot

MUSEOT KULTTUURIPALVELUINA

MUSEOT KULTTUURIPALVELUINA Elina Arola MUSEOT KULTTUURIPALVELUINA Tutkimuskohteena Mikkelin museot Opinnäytetyö Kulttuuripalvelujen koulutusohjelma Marraskuu 2005 KUVAILULEHTI Opinnäytetyön päivämäärä 25.11.2005 Tekijä(t) Elina

Lisätiedot

Tutkimusdata ja julkaiseminen Suomen Akatemian ja EU:n H2020 projekteissa

Tutkimusdata ja julkaiseminen Suomen Akatemian ja EU:n H2020 projekteissa Tutkimusdata ja julkaiseminen Suomen Akatemian ja EU:n H2020 projekteissa Tutkimusasiamies Kaisa Männikkö Tutkimus- ja innovaatiopalvelut Suomen Akatemian projektit Suomen Akatemia kehottaa avoimeen tieteelliseen

Lisätiedot

22.1.2013. truck Check In. truck Check Net. ewaybill ja ajat suoraan terminaaliin

22.1.2013. truck Check In. truck Check Net. ewaybill ja ajat suoraan terminaaliin ja ajat suoraan terminaaliin 1 Konseptit Mussalon Merituulessa ja Vuosaaren Porttitalossa sijaitsevat kioskisovellukset, joilla rekkakuskit voivat itse tehdä konttikeikat autoilleen ennen sisäänajoa satama-alueen

Lisätiedot

Results on the new polydrug use questions in the Finnish TDI data

Results on the new polydrug use questions in the Finnish TDI data Results on the new polydrug use questions in the Finnish TDI data Multi-drug use, polydrug use and problematic polydrug use Martta Forsell, Finnish Focal Point 28/09/2015 Martta Forsell 1 28/09/2015 Esityksen

Lisätiedot

Collaborative & Co-Creative Design in the Semogen -projects

Collaborative & Co-Creative Design in the Semogen -projects 1 Collaborative & Co-Creative Design in the Semogen -projects Pekka Ranta Project Manager -research group, Intelligent Information Systems Laboratory 2 Semogen -project Supporting design of a machine system

Lisätiedot

.NET 2006 ja sen jälkeen

.NET 2006 ja sen jälkeen .NET 2006 ja sen jälkeen Ahti Haukilehto FC Sovelto Oyj Microsoft Regional Director, Finland Superior tools, niin mitkä? Visual Studio Team System Team Foundation Server DSL Tools 2 Visual Studio Team

Lisätiedot

Rekisteröiminen - FAQ

Rekisteröiminen - FAQ Rekisteröiminen - FAQ Miten Akun/laturin rekisteröiminen tehdään Akun/laturin rekisteröiminen tapahtuu samalla tavalla kuin nykyinen takuurekisteröityminen koneille. Nykyistä tietokantaa on muokattu niin,

Lisätiedot

Web-palvelukonsepti tarjoaa yhden tavan toteuttaa SOA. Tämä tapa perustuu Web-palvelustandardien käyttöön: palvelut kuvataan WSDL-kielen avulla ja

Web-palvelukonsepti tarjoaa yhden tavan toteuttaa SOA. Tämä tapa perustuu Web-palvelustandardien käyttöön: palvelut kuvataan WSDL-kielen avulla ja 1 Web-palvelukonsepti tarjoaa yhden tavan toteuttaa SOA. Tämä tapa perustuu Web-palvelustandardien käyttöön: palvelut kuvataan WSDL-kielen avulla ja kommunikointi toteutetaan SOAPin avulla. Näihin kieliin

Lisätiedot

LX 70. Ominaisuuksien mittaustulokset 1-kerroksinen 2-kerroksinen. Fyysiset ominaisuudet, nimellisarvot. Kalvon ominaisuudet

LX 70. Ominaisuuksien mittaustulokset 1-kerroksinen 2-kerroksinen. Fyysiset ominaisuudet, nimellisarvot. Kalvon ominaisuudet LX 70 % Läpäisy 36 32 % Absorptio 30 40 % Heijastus 34 28 % Läpäisy 72 65 % Heijastus ulkopuoli 9 16 % Heijastus sisäpuoli 9 13 Emissiivisyys.77.77 Auringonsuojakerroin.54.58 Auringonsäteilyn lämmönsiirtokerroin.47.50

Lisätiedot

Sähköinen allekirjoitus

Sähköinen allekirjoitus Sähköinen allekirjoitus Pekka Kuosmanen 18.1.2008 Esityksen aiheet Sähköinen allekirjoitus Lainsäädäntö ja standardit Käytännön kokemukset Sähköinen allekirjoitus minkä vuoksi Sähköisen asiakirjan tai

Lisätiedot

The Viking Battle - Part Version: Finnish

The Viking Battle - Part Version: Finnish The Viking Battle - Part 1 015 Version: Finnish Tehtävä 1 Olkoon kokonaisluku, ja olkoon A n joukko A n = { n k k Z, 0 k < n}. Selvitä suurin kokonaisluku M n, jota ei voi kirjoittaa yhden tai useamman

Lisätiedot

FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL

FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL FinFamily PostgreSQL 1 Sisällys / Contents FinFamily PostgreSQL... 1 1. Asenna PostgreSQL tietokanta / Install PostgreSQL database... 3 1.1. PostgreSQL tietokannasta / About the PostgreSQL database...

Lisätiedot

Kuljetus- ja sovelluskerroksen tietoturvaratkaisut

Kuljetus- ja sovelluskerroksen tietoturvaratkaisut Kuljetus- ja sovelluskerroksen tietoturvaratkaisut Transport Layer Security (TLS) ja Secure Shell (SSH) TLS Internet 1 2 Transport Layer Security (TLS) Sopii monenlaisille sovellusprotokollille, esim HTTP

Lisätiedot

Sisällys. Valtion tietotekniikan rajapintasuosituksia. XML:n rooleja sähköisen asioinnin tavoitearkkitehtuurissa. dbroker - asiointialusta

Sisällys. Valtion tietotekniikan rajapintasuosituksia. XML:n rooleja sähköisen asioinnin tavoitearkkitehtuurissa. dbroker - asiointialusta Palveluita ja sisältöä portaaliin - XML:n mahdollisuuksista XML-tietokannat ja julkishallinnon XML-sovellukset, 28.05.2002 Lasse Akselin, TietoEnator Oyj Sisällys Valtion tietotekniikan rajapintasuosituksia

Lisätiedot

Portugalin tasavallan aloite neuvoston päätökseksi Schengenin konsultointiverkoston (tekniset eritelmät) osan 1 muuttamisesta

Portugalin tasavallan aloite neuvoston päätökseksi Schengenin konsultointiverkoston (tekniset eritelmät) osan 1 muuttamisesta Conseil UE EUROOPAN UNIONIN NEUVOSTO Bryssel, 26. lokakuuta 2007 (07.11) (OR. en) PUBLIC 14215/07 LIMITE VISA 334 COMIX 924 ILMOITUS Lähettäjä: Vastaanottaja: Asia: Puheenjohtajavaltio Viisumityöryhmä

Lisätiedot

Vuosi 2006. Jukka Rinnevaara Toimitusjohtaja

Vuosi 2006. Jukka Rinnevaara Toimitusjohtaja Vuosi 2006 Jukka Rinnevaara Toimitusjohtaja 1 Disclaimer This presentation is confidential and is intended solely for the use of the recipients of the presentation in connection with their consideration

Lisätiedot

Lisensointikuulumisia - Kustannustehokkuus Oracle lisensoinnissa

Lisensointikuulumisia - Kustannustehokkuus Oracle lisensoinnissa Lisensointikuulumisia - Kustannustehokkuus Oracle lisensoinnissa Osa II OUGF / 12.5.2004 c Sisält ltö Mitä uutta? Yleistä lisensoinnista Lisensointiin liittyviä ongelmia Hankinnassa muistettavia asioita

Lisätiedot

You can check above like this: Start->Control Panel->Programs->find if Microsoft Lync or Microsoft Lync Attendeed is listed

You can check above like this: Start->Control Panel->Programs->find if Microsoft Lync or Microsoft Lync Attendeed is listed Online Meeting Guest Online Meeting for Guest Participant Lync Attendee Installation Online kokous vierailevalle osallistujalle Lync Attendee Asennus www.ruukki.com Overview Before you can join to Ruukki

Lisätiedot

7. Product-line architectures

7. Product-line architectures 7. Product-line architectures 7.1 Introduction 7.2 Product-line basics 7.3 Layered style for product-lines 7.4 Variability management 7.5 Benefits and problems with product-lines 1 Short history of software

Lisätiedot

KONEISTUSKOKOONPANON TEKEMINEN NX10-YMPÄRISTÖSSÄ

KONEISTUSKOKOONPANON TEKEMINEN NX10-YMPÄRISTÖSSÄ KONEISTUSKOKOONPANON TEKEMINEN NX10-YMPÄRISTÖSSÄ https://community.plm.automation.siemens.com/t5/tech-tips- Knowledge-Base-NX/How-to-simulate-any-G-code-file-in-NX- CAM/ta-p/3340 Koneistusympäristön määrittely

Lisätiedot

Palvelun rekisteröinti Virtu - luottamusverkostoon / testipalveluun

Palvelun rekisteröinti Virtu - luottamusverkostoon / testipalveluun 1 Resurssirekisteri :: Käyttöohje Palvelun rekisteröinti Virtu - luottamusverkostoon / testipalveluun Tässä ohjeessa kerrotaan, miten lisäät uuden Service Provider (SP) palvelun Virtu - luottamusverkostoon

Lisätiedot

Siirtymä maisteriohjelmiin tekniikan korkeakoulujen välillä Transfer to MSc programmes between engineering schools

Siirtymä maisteriohjelmiin tekniikan korkeakoulujen välillä Transfer to MSc programmes between engineering schools Siirtymä maisteriohjelmiin tekniikan korkeakoulujen välillä Transfer to MSc programmes between engineering schools Akateemisten asioiden komitea Academic Affairs Committee 11 October 2016 Eija Zitting

Lisätiedot

FinFamily Installation and importing data (11.1.2016) FinFamily Asennus / Installation

FinFamily Installation and importing data (11.1.2016) FinFamily Asennus / Installation FinFamily Asennus / Installation 1 Sisällys / Contents FinFamily Asennus / Installation... 1 1. Asennus ja tietojen tuonti / Installation and importing data... 4 1.1. Asenna Java / Install Java... 4 1.2.

Lisätiedot

Arkkitehtuuritietoisku. eli mitä aina olet halunnut tietää arkkitehtuureista, muttet ole uskaltanut kysyä

Arkkitehtuuritietoisku. eli mitä aina olet halunnut tietää arkkitehtuureista, muttet ole uskaltanut kysyä Arkkitehtuuritietoisku eli mitä aina olet halunnut tietää arkkitehtuureista, muttet ole uskaltanut kysyä Esikysymys Kuinka moni aikoo suunnitella projektityönsä arkkitehtuurin? Onko tämä arkkitehtuuria?

Lisätiedot

Kuljetus- ja sovelluskerroksen tietoturvaratkaisut. Transport Layer Security (TLS) ja Secure Shell (SSH)

Kuljetus- ja sovelluskerroksen tietoturvaratkaisut. Transport Layer Security (TLS) ja Secure Shell (SSH) Kuljetus- ja sovelluskerroksen tietoturvaratkaisut Transport Layer Security (TLS) ja Secure Shell (SSH) TLS Internet 1 2 Transport Layer Security (TLS) Sopii monenlaisille sovellusprotokollille, esim HTTP

Lisätiedot

Office 2013 ja SQL Server 2012 SP1 uudet BI toiminnallisuudet Marko Somppi/Invenco Oy

Office 2013 ja SQL Server 2012 SP1 uudet BI toiminnallisuudet Marko Somppi/Invenco Oy t Office 2013 ja SQL Server 2012 SP1 uudet BI toiminnallisuudet Marko Somppi/Invenco Oy Agenda 1. Office Excel 2013 2. SharePoint 2013 3. SQL Server 2012 SP1 4. SharePoint 2013 BI-arkkitehtuuri 5. Kunta-analyysi

Lisätiedot

Kuljetus/Sovelluskerroksen tietoturvaratkaisut

Kuljetus/Sovelluskerroksen tietoturvaratkaisut Kuljetus/Sovelluskerroksen tietoturvaratkaisut 1 Tämän luennon aiheet Transport Layer Security (TLS) Secure Shell (SSH) 2 Transport Layer Security (TLS) Sopii monenlaisille sovellusprotokollille Toimi

Lisätiedot

Tämän luennon aiheet. Kuljetus/Sovelluskerroksen tietoturvaratkaisut. TLS:n turvaama HTTP. Transport Layer Security (TLS) TLS:n suojaama sähköposti

Tämän luennon aiheet. Kuljetus/Sovelluskerroksen tietoturvaratkaisut. TLS:n turvaama HTTP. Transport Layer Security (TLS) TLS:n suojaama sähköposti Tämän luennon aiheet Kuljetus/Sovelluskerroksen tietoturvaratkaisut Transport Layer Security (TLS) Secure Shell (SSH) 1 2 Transport Layer Security (TLS) Sopii monenlaisille sovellusprotokollille Toimi

Lisätiedot

anna minun kertoa let me tell you

anna minun kertoa let me tell you anna minun kertoa let me tell you anna minun kertoa I OSA 1. Anna minun kertoa sinulle mitä oli. Tiedän että osaan. Kykenen siihen. Teen nyt niin. Minulla on oikeus. Sanani voivat olla puutteellisia mutta

Lisätiedot

Ongelma 1: Miten tieto kannattaa koodata, jos sen halutaan olevan hyvin vaikeasti luettavaa?

Ongelma 1: Miten tieto kannattaa koodata, jos sen halutaan olevan hyvin vaikeasti luettavaa? Ongelma 1: Miten tieto kannattaa koodata, jos sen halutaan olevan hyvin vaikeasti luettavaa? 2012-2013 Lasse Lensu 2 Ongelma 2: Miten tietoa voidaan (uudelleen)koodata tehokkaasti? 2012-2013 Lasse Lensu

Lisätiedot

Yritysturvallisuuden perusteet

Yritysturvallisuuden perusteet Yritysturvallisuuden perusteet Teemupekka Virtanen Helsinki University of Technology Telecommunication Software and Multimedia Laboratory teemupekka.virtanen@hut.fi 10. Luento Tietotekninen turvallisuus

Lisätiedot

Tikon Ostolaskujenkäsittely versio 6.1.2 SP1

Tikon Ostolaskujenkäsittely versio 6.1.2 SP1 Toukokuu 2012 1 (14) Tikon Ostolaskujenkäsittely versio 6.1.2 SP1 Asennusohje Toukokuu 2012 2 (14) Sisällysluettelo 1. Vaatimukset palvelimelle... 3 1.1..NET Framework 4.0... 3 1.2. Palvelimen Internet

Lisätiedot

SELL Student Games kansainvälinen opiskelijaurheilutapahtuma

SELL Student Games kansainvälinen opiskelijaurheilutapahtuma SELL Student Games kansainvälinen opiskelijaurheilutapahtuma Painonnosto 13.5.2016 (kansallinen, CUP) Below in English Paikka: Nääshalli Näsijärvenkatu 8 33210 Tampere Alustava aikataulu: Punnitus 12:00-13:00

Lisätiedot

Web Service torilla tavataan!

Web Service torilla tavataan! Web Service torilla tavataan! Jari Putula Avarea Oy COPYRIGHT BY AVAREA 2009 1 Google Trends COPYRIGHT BY AVAREA 2009 2 1 1. Mahdollistajat 2. Web service? 3. KISS 4. Miksi? 5. Analogia 6. Ajax 7. Esimerkki

Lisätiedot

A274101 TIETORAKENTEET JA ALGORITMIT

A274101 TIETORAKENTEET JA ALGORITMIT A274101 TIETORAKENTEET JA ALGORITMIT SALAUKSEN PERUSTEITA Lähteet: Timo Harju, Opintomoniste Keijo Ruohonen, Kryptologia (math.tut.fi/~ruohonen/k.pdf) HISTORIAA Salausta on käytetty alkeellisella tasolla

Lisätiedot

Kuljetus- ja sovelluskerroksen tietoturvaratkaisut

Kuljetus- ja sovelluskerroksen tietoturvaratkaisut Kuljetus- ja sovelluskerroksen tietoturvaratkaisut Transport Layer Security (TLS) ja Secure Shell (SSH) 1 Sovelluskerros Kuljetuskerros Verkkokerros Linkkikerros Fyysinen kerros TLS Internet Sovelluskerros

Lisätiedot

T-79.4501 Cryptography and Data Security

T-79.4501 Cryptography and Data Security T-79.4501 Cryptography and Data Security Lecture 11 Bluetooth Security Bluetooth turvallisuus Uhkakuvat Bluetooth turvallisuuden tavoitteet Linkkitason turvamekanismit Pairing menettely Autentikointi ja

Lisätiedot

Use of spatial data in the new production environment and in a data warehouse

Use of spatial data in the new production environment and in a data warehouse Use of spatial data in the new production environment and in a data warehouse Nordic Forum for Geostatistics 2007 Session 3, GI infrastructure and use of spatial database Statistics Finland, Population

Lisätiedot

4x4cup Rastikuvien tulkinta

4x4cup Rastikuvien tulkinta 4x4cup Rastikuvien tulkinta 4x4cup Control point picture guidelines Päivitetty kauden 2010 sääntöihin Updated for 2010 rules Säännöt rastikuvista Kilpailijoiden tulee kiinnittää erityistä huomiota siihen,

Lisätiedot

Integration of Finnish web services in WebLicht Presentation in Freudenstadt 2010-10-16 by Jussi Piitulainen

Integration of Finnish web services in WebLicht Presentation in Freudenstadt 2010-10-16 by Jussi Piitulainen Integration of Finnish web services in WebLicht Presentation in Freudenstadt 2010-10-16 by Jussi Piitulainen Who we are FIN-CLARIN University of Helsinki The Language Bank of Finland CSC - The Center for

Lisätiedot

AYYE 9/ HOUSING POLICY

AYYE 9/ HOUSING POLICY AYYE 9/12 2.10.2012 HOUSING POLICY Mission for AYY Housing? What do we want to achieve by renting apartments? 1) How many apartments do we need? 2) What kind of apartments do we need? 3) To whom do we

Lisätiedot

Kansallinen sähköinen potilasarkisto Varmenteiden käyttö

Kansallinen sähköinen potilasarkisto Varmenteiden käyttö Kansallinen sähköinen potilasarkisto Varmenteiden käyttö Teemupekka Virtanen Erityisasiantuntija teemupekka.virtanen@stm.fi A1 05/2005/tao/paht Keskitetty arkisto Keskitetty sähköinen arkisto Potilastietojen

Lisätiedot

Ohjelmointi 1 C#, kevät 2013, 2. tentti

Ohjelmointi 1 C#, kevät 2013, 2. tentti ITKP102 Ohjelmointi 1 C# 15.5.2013 1 / 6 Ohjelmointi 1 C#, kevät 2013, 2. tentti Tentaattori Antti-Jussi Lakanen Tässä tentissä saa olla mukana omia muistiinpanoja yhden arkin verran. Tentin valvojalla

Lisätiedot

Information on Finnish Language Courses Spring Semester 2017 Jenni Laine

Information on Finnish Language Courses Spring Semester 2017 Jenni Laine Information on Finnish Language Courses Spring Semester 2017 Jenni Laine 4.1.2017 KIELIKESKUS LANGUAGE CENTRE Puhutko suomea? Do you speak Finnish? -Hei! -Moi! -Mitä kuuluu? -Kiitos, hyvää. -Entä sinulle?

Lisätiedot

Rekisteriseloste. Rekisterinpitäjä. Yhteyshenkilö rekisteriä koskevissa asioissa. Rekisterin nimi. Henkilötietojen käsittelyn tarkoitus

Rekisteriseloste. Rekisterinpitäjä. Yhteyshenkilö rekisteriä koskevissa asioissa. Rekisterin nimi. Henkilötietojen käsittelyn tarkoitus Rekisteriseloste Henkilötietolaki (523/1999) 10. Rekisterinpitäjä Anders Manager Oy Aurakatu 12 B 20100 Turku Y-tunnus: 1024785-9 Yhteyshenkilö rekisteriä koskevissa asioissa Matias Mäenpää +358 (0)45

Lisätiedot

eduroamin käyttöohje Windows

eduroamin käyttöohje Windows eduroamin käyttöohje eduroamissa liitytään verkkoon käyttäen 802.1x:ää. Tätä varten tarvitaan suplikantti ja tietokoneissa voidaan käyttää Windowsin tai Linuxin oma suplikanttia. eduroamiin voidaan myös

Lisätiedot

Osavuosikatsaus Q2 2008. JUKKA RINNEVAARA Toimitusjohtaja

Osavuosikatsaus Q2 2008. JUKKA RINNEVAARA Toimitusjohtaja Osavuosikatsaus Q2 2008 JUKKA RINNEVAARA Toimitusjohtaja Disclaimer This presentation is confidential and is intended solely for the use of the recipients of the presentation in connection with their consideration

Lisätiedot

vakuutuslaitosten ja TAMLAn välillä

vakuutuslaitosten ja TAMLAn välillä Asioiden välittämien työeläkealan toimijoiden ja TELKin sekä vakuutuslaitosten ja TAMLAn välillä Työeläkealan XML-käytäntöjen soveltaminen Taustaa, tämän dokumentin tarkoitus Asioiden välittäminen tapahtuu

Lisätiedot

Skene. Games Refueled. Muokkaa perustyyl. napsautt. @Games for Health, Kuopio. 2013 kari.korhonen@tekes.fi. www.tekes.fi/skene

Skene. Games Refueled. Muokkaa perustyyl. napsautt. @Games for Health, Kuopio. 2013 kari.korhonen@tekes.fi. www.tekes.fi/skene Skene Muokkaa perustyyl. Games Refueled napsautt. @Games for Health, Kuopio Muokkaa alaotsikon perustyyliä napsautt. 2013 kari.korhonen@tekes.fi www.tekes.fi/skene 10.9.201 3 Muokkaa Skene boosts perustyyl.

Lisätiedot

DS-tunnusten haku Outi Jäppinen CIMO

DS-tunnusten haku Outi Jäppinen CIMO DS-tunnusten haku 2013 Outi Jäppinen CIMO 2/2009 DS-tunnukset ECTS- ja DS-tunnusten avulla pyritään edistämään ECTS-järjestelmän sekä tutkintotodistuksen liitteen Diploma Supplementin asianmukaista käyttöä

Lisätiedot

Information on preparing Presentation

Information on preparing Presentation Information on preparing Presentation Seminar on big data management Lecturer: Spring 2017 20.1.2017 1 Agenda Hints and tips on giving a good presentation Watch two videos and discussion 22.1.2017 2 Goals

Lisätiedot

Constructive Alignment in Specialisation Studies in Industrial Pharmacy in Finland

Constructive Alignment in Specialisation Studies in Industrial Pharmacy in Finland Constructive Alignment in Specialisation Studies in Industrial Pharmacy in Finland Anne Mari Juppo, Nina Katajavuori University of Helsinki Faculty of Pharmacy 23.7.2012 1 Background Pedagogic research

Lisätiedot

SAMLINK VARMENNEPALVELU PALVELUKUVAUS OHJELMISTOTALOILLE

SAMLINK VARMENNEPALVELU PALVELUKUVAUS OHJELMISTOTALOILLE SAMLINK VARMENNEPALVELU Sisällysluettelo 2 (7) Sisällysluettelo 1 Johdanto... 3 2 Asiakasohjelmiston varmennehaun käyttötapaukset... 3 3 getcertificate-operaatio... 3 3.1 SenderId... 4 3.2 RequestId...

Lisätiedot

VAASAN YLIOPISTO Humanististen tieteiden kandidaatin tutkinto / Filosofian maisterin tutkinto

VAASAN YLIOPISTO Humanististen tieteiden kandidaatin tutkinto / Filosofian maisterin tutkinto VAASAN YLIOPISTO Humanististen tieteiden kandidaatin tutkinto / Filosofian maisterin tutkinto Tämän viestinnän, nykysuomen ja englannin kandidaattiohjelman valintakokeen avulla Arvioidaan viestintävalmiuksia,

Lisätiedot

SALAUSMENETELMÄT. Osa 2. Etätehtävät

SALAUSMENETELMÄT. Osa 2. Etätehtävät SALAUSMENETELMÄT Osa 2 Etätehtävät A. Kysymyksiä, jotka perustuvat luentomateriaaliin 1. Määrittele, mitä tarkoitetaan tiedon eheydellä tieoturvan yhteydessä. 2. Määrittele, mitä tarkoittaa kiistämättömyys

Lisätiedot

Uusia kokeellisia töitä opiskelijoiden tutkimustaitojen kehittämiseen

Uusia kokeellisia töitä opiskelijoiden tutkimustaitojen kehittämiseen The acquisition of science competencies using ICT real time experiments COMBLAB Uusia kokeellisia töitä opiskelijoiden tutkimustaitojen kehittämiseen Project N. 517587-LLP-2011-ES-COMENIUS-CMP This project

Lisätiedot

Tech Conference Office 365 tietoturvan heikoin #TechConfFI

Tech Conference Office 365 tietoturvan heikoin #TechConfFI Tech Conference 28.-29.5.2015 Office 365 tietoturvan heikoin lenkki? @NestoriSyynimaa #TechConfFI Puhujasta Senior-konsultti Nestori Syynimaa, PhD MCT, MCSA (Office 365) www.linkedin.com/in/nestori Luennon

Lisätiedot

ECVETin soveltuvuus suomalaisiin tutkinnon perusteisiin. Case:Yrittäjyyskurssi matkailualan opiskelijoille englantilaisen opettajan toteuttamana

ECVETin soveltuvuus suomalaisiin tutkinnon perusteisiin. Case:Yrittäjyyskurssi matkailualan opiskelijoille englantilaisen opettajan toteuttamana ECVETin soveltuvuus suomalaisiin tutkinnon perusteisiin Case:Yrittäjyyskurssi matkailualan opiskelijoille englantilaisen opettajan toteuttamana Taustaa KAO mukana FINECVET-hankeessa, jossa pilotoimme ECVETiä

Lisätiedot

Julkaisun laji Opinnäytetyö. Sivumäärä 43

Julkaisun laji Opinnäytetyö. Sivumäärä 43 OPINNÄYTETYÖN KUVAILULEHTI Tekijä(t) SUKUNIMI, Etunimi ISOVIITA, Ilari LEHTONEN, Joni PELTOKANGAS, Johanna Työn nimi Julkaisun laji Opinnäytetyö Sivumäärä 43 Luottamuksellisuus ( ) saakka Päivämäärä 12.08.2010

Lisätiedot

Tutkimusrahoittajien ja tiedejulkaisujen vaatimukset aineistonhallinnalle

Tutkimusrahoittajien ja tiedejulkaisujen vaatimukset aineistonhallinnalle Tutkimusrahoittajien ja tiedejulkaisujen vaatimukset aineistonhallinnalle Katja Fält FT, tieteenala-asiantuntija Katja.Falt@uta.fi 26.10.2015 TIETOARKISTO www.fsd.uta.fi Aineistonhallinta Aineistonhallinnalla

Lisätiedot

Salaustekniikat. Kirja sivut: ( )

Salaustekniikat. Kirja sivut: ( ) Salaustekniikat Kirja sivut: 580-582 (647-668) Johdanto Salaus on perinteisesti ollut salakirjoitusta, viestin luottamuksellisuuden suojaamista koodaamalla viesti tavalla, jonka vain vastaanottaja(t) pystyy

Lisätiedot