ELEC-C7241 Tietokoneverkot Multimedia, tietoturva, jne. Pasi Sarolahti (osa kalvoista: Sanna Suoranta) 14.3.2017
Projekti Lähetä tilanneraportti MyCoursesiin perjantaihin 17.3. mennessä Sisältää Nykytilan toteutuksesta ja dokumentaatiosta Lyhyen kuvauksen tilanteesta tekstikentässä Muista kertoa ketkä kuuluvat ryhmään (ml. opiskelijanumero) Yksi palautus per ryhmä Palautusta ei arvioida, eikä siitä anneta erikseen palautetta Voit tulla laskareihin kysymään 2
Projekti -- muistilista Muista selkeät ohjeet ohjelman kääntämiseksi ja ajamiseksi Tulee toimia Aallon Linux-koneilla Älä unohda dokumentaatiota Älä jätä asioita viime tinkaan 3
d o w h a t I m e a n Verkko 1 Verkko 2 Päätelaite 1 Päätelaite 2 Sovelluskerros Reititin 1 Reititin 1 Sovelluskerros Kuljetuskerros Kuljetuskerros Verkkokerros Verkkokerros Verkkokerros Verkkokerros Linkkikerros Linkkikerros Linkkikerros Linkkikerros Fyysinen kerros Fyysinen kerros Fyysinen kerros Fyysinen kerros
Multimedia Hieman erilaisia tarpeita riippuen median tyypistä Etukäteen tallennetun median toistaminen Suoran lähetyksen toistaminen Interaktiivinen videopuhelu Käytössä useita multimediaformaatteja Osa avoimesti käytettäviä, suuri osa patentoituja 5
Video Multimediapakkauksesta Kuinka monta gigatavua pakkaamaton 5 minuutin HD-video vaatii? Kuinka paljon se on pakattuna esimerkkitapauksessa? Miksi taistelunäytösklippi menee oudon näköiseksi? 6
Multimedian pakkaus Jos lähetettäisiin peräkkäisiä kuvia 30 kertaa sekunnissa, raaka tilantarve olisi valtava Onneksi multimedia pakkautuu tehokkaasti Spatiaalinen pakkaus: hyödynnetään toisteisuutta kuvan sisällä (JPEG) Ajallinen pakkaus: hyödynnetään toisteisuutta peräkkäisten kuvien välillä Yleinen käytössä oleva standardi: H.264 / MPEG-4 7
Multimedian pakkaus https://en.wikipedia.org/wiki/video_compression_picture_types 8
Etukäteen tallennettu media Melkein kuin mikä tahansa tiedostonsiirto Paitsi tiedostoa ruvetaan esittämään ennen kuin siirto on valmis Varauduttava yhteyden laadun vaihteluihin Jos siirtonopeus hetkellisesti heikkenee, video tökkii Kerää hetken aikaa videota etukäteen varastoon puskuriin Täyttönopeus x(t) puskuri Tyhjennys- Nopeus d 9
Dynamic Adaptive Streaming over HTTP (DASH) Etukäteen tallennetun median siirtämiseen käytetään usein HTTP:tä Voi olla esimerkiksi H.264 koodattua Tieto toimitetaan HTTP-lohkoina Etu: voidaan hyödyntää olemassa olevaa HTTPinfrastuktuuria Esim. sisällönjakoverkot 10
Sisällönjakoverkot (Content Distribution Networks, CDN) Alkuperäinen ongelma: Suosittu ja tilaa vievä sisältö vaativat paljon palvelinkapasiteettia Jos palveluntarjoaja maailman toisella puolella: viivettä Palvelu, jolla sisällönjako hajautetaan ja replikoidaan maailmanlaajuisesti Webbisivut, multimedia Kolme osapuolta Kuluttajat Sisällön tuottaja Sisällön jakaja 11
Sisällönjakoverkot (Content Distribution Networks, CDN) 12
Mikä protokolla reaaliaikaisen multimedian siirtoon? TCP vai UDP? Mitä muuta tarvitaan? 13
Real-time Transport Protocol (RTP) UDP:n päällä, mutta tavallaan myöskin kuljetuskerrosta Reaaliaikaisen datan toimittamisessa tarvittavaa tietoa Tiedon tarkka aikaleima Kuka lähetti? (SSRC) Jne. Itse data voi olla mitä tahansa Tukee erilaisia audio- ja video-formaatteja Lisäksi RTCP kontrollidatan keräämiseen 14
Viivevaihteluihin sopeutuminen http://flylib.com/books/en/4.245.1.52/1/ -- C. Perkins: RTP: Audio and Video for the Internet 15
Tietoturvan osa-alueet Luottamuksellisuus (confidentiality): salaaminen estää ulkopuolisia lukemasta viestejä Saavutetaan salaamalla (encrypting) viestit Hyökkäyksiä: Salakuuntelu (eavesdropping) Eheys (integrity): ulkopuoliset eivät voi muuttaa tai tuhota viestejä niitä siirrettäessä tai tallennettaessa Saavutetaan allekirjoittamalla (digital signing) viestit Tunnistaminen (authentication): toisen osapuolen identiteetin varmistaminen Tunnistusprotokollat (authentication protocols) 12.1.2016
Sähköpostin turvallisuus? Viestien sisällön eheyttä (integrity) eikä luottamuksellisuutta (confidentiality) ei suojata eli viestit kulkevat selkokielisenä verkossa Lähettäjää ei tunnisteta lainkaan Lähettäjän osoitekenttään voi kirjoittaa minkä vain osoitteen Vastaanottaja tunnistautuu palvelimelle selkokielisellä salasanalla Palvelimia ei tunnisteta Mitä TLS/SSL turvaa? 12.1.2016
d o w h a t I m e a n Turvallinen sähköposti sähköpostipalvelin sähköpostipalvelin Lähettäjä allekirjoittaa viestin allekirjoitusavaimella ja salaa sen vastaanottajan julkisen avaimen avulla Vain vastaanottaja voi avata viestin, mutta kuka tahansa voi tarkistaa lähettäjän allekirjoituksen avatusta viestistä 12.1.2016
Viestin allekirjoittaminen Hash(m) A(H(m)) Alkuperäinen viesti (m) Tiiviste H(m) Allekirjoitus (a) Lähetettävä viesti: Alkuperäinen viesti (m) Allekirjoitus (a) Alkuperäisestä viestistä lasketaan yksisuuntaisella tiivistysfunktiolla tiiviste (hash) Tiiviste allekirjoitetaan lähettäjän allekirjoitusavaimella Viesti ja sen allekirjoitus lähetetään vastaanottajalle Tai sitten ne vielä salataan 12.1.2016
Viestin salaaminen Istuntoavain (Ki) K vastaanottaja (Ki)) Alkuperäinen viesti (m) Ki(m) Lähetettävä viesti: Salattu viesti (c) Salattu istuntoavain Viestiä varten luodaan symmetrinen istuntoavain symmetrinen salaus on tehokkaampaa, siksi koko viestiä ei salata vastaanottajan julkisella avaimella Istuntoavain salataan vastaanottajan julkisella avaimella ja Viesti salataan istuntoavaimella Istuntoavaimella salattu viesti ja vastaanottajan julkisella avaimella salattu istuntoavain lähetetään vastaanottajalle 12.1.2016
Viestin vastaanotto Vastaanotettu viesti: Salattu viesti (c) Salattu istuntoavain K-1 vastaanottaja (Ki)) Salaamaton viesti ja Alkuperäinen viesti (m) allekirjoitus Hash(m) Tiiviste H(m) Allekirjoitus (a) Tiiviste H(m) -1 A (a) Onko sama? Viestin salaus puretaan vastaanottajan yksityisellä avaimella (ensin istuntoavain ja sitten sitä käyttäen itse viesti) Viestin allekirjoitus ja eheys tarkistetaan laskemalla tiiviste ja vertaamalla sitä tarkistusavaimen avulla allekirjoitukseen 12.1.2016
Symmetrinen ja julkisen avaimen salaus Symmetrisen avaimen salauksessa sekä lähettäjällä että vastaanottajalla on käytössään sama avain Algoritmit ovat tehokkaita, mutta avaimia tarvitaan paljon Julkisen avaimen salauksessa on käytössä avainpari: Julkinen avain, jota käyttäen kuka tahansa voi lähettää viestin vastaanottajalle eli avaimen voi julkaista Yksityinen avain, joka on vain vastaanottajalla ja jota käyttäen vastaavalla julkisella avaimella salatut viestit voi avata (avain pidettävä varmassa tallessa) Algoritmit ovat hitaita, mutta avaimia tarvitaan vähän Samantyylisesti avainpareja käyttävät myös allekirjoitusalgoritmit Mutta mistä tietää, että käytössä on oikealle vastaanottajalle kuuluva avain? 12.1.2016
Sertifikaatti (certificate) Sertifikaatti on dokumentti, joka kertoo tietyn avaimen kuulumisesta tietylle oliolle Sis. Julkisen avaimen, olion nimen, allekirjoituksen jne Sertifikaatin myöntää luotettava kolmas osapuoli (certification authority, CA) Allekirjoittaa sertifikaatin digitaalisesti Mutta mistä löytyy tuo osapuoli, johon kaikki voivat luottaa Selaimet ja käyttöjärjestelmät listaavat monta tahoa. Avaimen aitoidesta voi varmistua myös saamalla se suoraan vastaanottajalta Pretty Good Privacy (PGP) muodosti luottamusverkostoja, jossa käyttäjät voivat toimia välittäjinä luottamukselle allekirjoittamalla toisten käyttäjien avaimia 12.1.2016
Internet Engineering Task Force (IETF) Vastaa protokollien standardoinnista linkkikerroksen yläpuolella Linkkikerros: eri organisaatiot, esim. IEEE lähiverkoissa Multimedia-koodaukset: eri organisaatiot, esim. ISO Standardidokumentit RFC:itä Kaikilla avoin, ei jäsenyyttä tai jäsenmaksua Toiminta tapahtuu sähköpostilistoilla ja kokouksissa Työdokumentteina Internet-Draftit Jaettu työryhmiin (n. 100) 24
25
26
(Vielä yksi) muistilista Ti 4.4. toinen välikoe Pe 7.4. Projektin määräaika Ma 8.5. tentti 27