TLS

internetin salausprotokolla
Tämä artikkeli käsittelee salausprotokollaa. TLS on myös Itä-Timorin maatunnus.

TLS (lyhenne sanoista Transport Layer Security, suom. kuljetustason turvallisuus) on salausprotokolla, joka on suunniteltu tarjoamaan suojattu Internet-sovellusten tietoliikenne IP-verkkojen yli.[1][2] Sitä käytetään laajasti kaikenlaisissa sovelluksissa, kuten sähköpostissa ja pikaviestimissä. Kuitenkin TLS:n tunnetuin käyttötapa on suojata verkkosivujen HTTPS-protokollalla. TLS kehitettiin aiemmin käytössä olleen SSL-salausprotokollan seuraajaksi. Vuoden 2024 helmikuussa TLS 1.2:ta tuki 99.9% verkkosivuista ja TLS 1.3:a 67.8% verkkosivuista.[3]

Historia ja versiot

SSL 1.0, 2.0 ja 3.0

Netscape kehitti vuonna 1995 selaimeensa salausprotokollan, SSL:n (Secure Sockets Layer). Se kehitettiin HTTP-yhteyksien eli WWW-sivujen suojaamiseen. Salausprotokollaa ei kuitenkaan rajoitettu vain HTTP-protokollaan, vaan sillä voidaan suojata mitä tahansa TCP-yhteyksiä.[4] Vuosina 1995-1998 Netscapen päätutkijana toiminutta Taher Elgamalia on kutsuttu "SSL:n isäksi".[5][6] Nykyisin sitä käytetään myös esimerkiksi SMTP-, POP-, IMAP-, LDAP ja IRC-yhteyksien salaamiseen. Protokollan ongelmina olivat useat tietoturva-aukot, joiden takia SSL:n ensimmäistä versiota ei ikinä julkaistu. SSL 2.0 poistettiin käytöstä vuonna 2011 dokumentilla RFC 6176 ja SSL:n uusin versio, SSL 3.0, poistettiin käytöstä vuonna kesäkuussa 2015 dokumentilla RFC 7568.

TLS 1.0

Netscape luovutti kehityksen IETF-standardointiorganisaatiolle, joka sitten kehitti SSL-protokollasta oman versionsa ja antoi sille nimeksi TLS (Transport Layer Security). TLS 1.0 on SSL 3.0:n seuraaja. Standardissa kerrotaan "tämän protokollan ja SSL 3.0:n erot eivät ole suuria, mutta ne ovat tarpeeksi merkittäviä estämään yhteensopivuuden TLS 1.0:n ja SSL 3.0:n välillä.". Myöhemmin työryhmän jäsen Tim Dierks on kertonut että protokollan muutokset ja uudelleennimeäminen olivat "kasvojen säilyttämisele Microsoftille, jottei se näyttäisi siltä että IETF vain hyväksyisi Netscapen luoman protokollan".[7]

Suurimmista maksukorttitarjoajista koostunut PCI Council suositteli, että organisaatiot siirtyisivät TLS 1.0:sta versioon 1.1 tai uudempaan viimeistään kesäkuun 2018 lopussa.[8][9] Lokakuussa 2018 Apple, Microsoft, Google ja Mozilla Foundation yhdessä ilmoittivat poistavansa TLS 1.0:n ja TLS 1.1:n käytöstä selaimistaan maaliskuussa 2020.[10]

TLS 1.1

TLS 1.1 määriteltiin huhtikuussa 2006 dokumentissa RFC 4346.[11] Eroja aiempaan versioon olivat muun muassa:

  • Lisätty suojausta salauslohkojen ketjutushyökkäyksiä (CBC) vastaan.
  • Lisätty tuki IANAn lisäämille parametreille[12]

Tuki versioille 1.0 ja 1.1 poistui laajasti verkkosivuilta vuoden 2020 aikana, poistaen pääsyn Mozilla Firefox-selaimista joiden versio vanhempi kuin 24 ja Chromium-pohjaisista selaimista joiden versio on alle 29. TLS 1.0 ja TLS 1.1 on julistettu vanhentuneeksi maaliskuussa 2021.[13]

TLS 1.2

TLS 1.2:n määritelmä RFC 5246 julkaistiin elokuussa 2008. Maaliskuussa 2011 versiota laajennettiin dokumentissa RFC 6176 poistaen tuen SSL:lle, jolloin TLS-yhteydet eivät koskaan neuvottele SSL 2.0:n käytöstä. TLS 1.2:n käytöstä poistolle ei ole vielä päätetty ajankohtaa.

TLS 1.3

TLS 1.3 -versiossa oleviin muutoksiin kuuluvat nopeampi kättely, uudet salausmenetelmät (Authenticated Encryption with Associated Data, AEAD), kättelyn salaaminen ja useiden vanhentuneiden mekanismien poistaminen.[14] TLS 1.3 hyväksyttiin standardiksi maaliskuussa 2018 (RFC 8446).[15]TLS 1.3 poisti eräitä vanhentuneita salausmenetelmiä ja algoritmeja, sekä sisälsi parannuksia latenssiin.[16]Ennen version 1.3 kehitystä talous- ja pankkiala oli huolissaan seurannan menettämisestä ja halusivat protokollaan takaoven, jota ei protokollaan lopulta tullut.[17][15] Takaovi olisi tehnyt tyhjiksi uuden version edut.[15]

Varmenteet

SSL koostuu kahdesta protokollasta: kättelyprotokollasta ja tallenneprotokollasta.[18] Tallenneprotokolla ohjaa tiedon kulkua SSL-istunnon päätepisteiden välillä.[18] Kättelyprotokolla todentaa yhden tai molemmat päätepisteet SSL-istunnossa ja asettaa yksilöllisen symmetrisen avaimen, jota käytetään tiedon salaamiseen ja purkamiseen tuon istunnon aikana.[18] SSL käyttää epäsymmetristä salausta, digitaalista allekirjoitusta ja SSL-kättelyä todentaakseen yhden tai molemmat päätepisteet.[18] Tyypillisesti SSL todentaa palvelimen ja valinnaisesti SSL todentaa asiakkaan.[18]

SSL perustuu varmenteisiin, joilla sivustot todistavat olevansa hyvämaineisia. Varmenteita myöntävät yritykset (engl. Certificate Authority, CA), jotka takaavat varmenteen hakijan identiteetin. Selainvalmistajat puolestaan pitävät listaa luotetuista varmenteiden myöntäjistä. Nämä voivat myös delegoida myöntämisoikeuksia edelleen.[19]Esimerkiksi Mozillan listalla on yli 50 luotettua varmenteen myöntäjää.[20][21]

Myöhemmin on esitetty epäilyjä, ettei järjestelmä ole enää luotettava. Maaliskuussa 2011 Comodo Groupin luottaman kumppanin palvelimelle murtauduttiin ja iranilaiset krakkerit saivat varmenteita haltuunsa. Yksittäisiä varmenteita voi perua, mutta vuoden 2011 selaimissa krakkeri voi estää toiminnon toiminnan selainten juuri siitä välittämättä.[22]Toisaalta kokonaisen varmenteen myöntäjän varmennetta ei voi käytännössä perua, koska tällöin rikottaisiin kaikkien sen asiakkaiden sivustot.[19]

Marraskuussa 2014 joukko yrityksiä ja järjestöjä perusti ei-kaupallisen Let's Encrypt -CA:n tarjoamaan sertifikaatteja ilmaiseksi. Taustalla olivat Mozilla Corporation, Cisco Systems, Akamai Technologies, Electronic Frontier Foundation, IdenTrust, Inc. ja Michiganin yliopiston tutkijat. Sertikaattien jaosta huolehtii voittoa tuottamaton Internet Security Research Group (ISRG).[23]Taustalla olivat Maailmanlaajuista joukkovalvontaa koskevat paljastukset Yhdysvaltain suorittamasta vakoilusta, jonka seurauksena suhtautuminen salattujen yhteyksien tarpeellisuuteen muuttui.[24]

Euroopan unioni aikoo eIDAS 2.0 -säännöksissä vaatia selaimia luottamaan valtioiden myöntämiin sertifikaatteihin. Tällaista varmennetta ei olisi edes sallittua perua, vaikka osoittautuisi, että sitä väärinkäytetään esim. liikenteen vakoiluun. Täten valtiollinen toimija voisi EU:ssa ottaa haltuunsa varmenteet ja seurata salattua liikennettä verkkosivulle huomaamatta.[25]

Standardeja

TLS-protokollaa koskevia standardeja:

  • RFC 2246 The TLS Protocol Version 1.0
  • RFC 2712 (heikkojen salausmenetelmien käyttö)
  • RFC 2817 (TLS:n käyttö HTTP:n kanssa, sama portti)
  • RFC 2818 (TLS:n käyttö HTTP:n kanssa, eri portti)
  • RFC 3268 (AES-salausmenetelmä)
  • RFC 4279 Pre-Shared Key Ciphersuites for Transport Layer Security (TLS) (TLS:n käyttö symmetrisen avaimen kanssa)
  • RFC 4346 The Transport Layer Security (TLS) Protocol Version 1.1
  • RFC 4366 Transport Layer Security (TLS) Extensions
  • RFC 5246 The Transport Layer Security (TLS) Protocol Version 1.2
  • RFC 8446 The Transport Layer Security (TLS) Protocol Version 1.3

Toteutuksia

Muut käyttökohteet

TLS-kättelyä käytetään myös muissa käyttötarkoituksissa, kuten esimerkiksi EAP-protokollassa.

Laajennukset

ALPN (RFC 7301) on TLS-kättelyyn julkaistu laajennus.[26]

Katso myös

Lähteet

Aiheesta muualla

🔥 Top keywords: