STS (protokolla)

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 5.10.2020 tarkistetusta versiosta . tarkastukset vaativat 2 muokkausta .

STS-protokolla tai Station -to-Station-protokolla ( Station-to-Station-protokolla , STS ) on kryptografinen protokolla , jonka avulla kaksi osapuolta voivat hankkia jaetun salaisen avaimen suojaamattoman viestintäkanavan avulla . Saatua avainta käytetään jatkossa symmetristä salausta käyttäen . Protokolla perustuu Diffie-Hellman-algoritmiin .  

STS-protokollan erottuva piirre on aikaleimien puuttuminen ja tuki täydelliselle eteenpäinsalaisuusominaisuudesta . . Protokolla suorittaa myös kaksisuuntaisen avainvahvistuksen [1] , jonka avulla protokolla voidaan luokitella " autentikoiduksi avainsopimukseksi avaimen vahvistuksella " (AKC).

Historia

STS otettiin alun perin käyttöön vuonna 1987 ISDN -puhelinverkon tietoturvan yhteydessä (O'Higgins et al. 1987) [2] , laajennettiin vuonna 1989 ja sen esittelivät lopulta Whitfield Diffie , Paul C. van Oorschot ja Michael Weiner (Michael). J. Wiener) vuonna 1992. STS-protokollan pohjalta luotiin IKE -protokolla , josta on tullut alan standardi .

Kuvaus tavallisesta STS-algoritmista

Jos haluat yksityiskohtaisen kuvauksen toimintaperiaatteesta, harkitse joidenkin käyttäjien  - Alice ja Bob - välistä tiedonvaihtoprosessia . Oletetaan, että Alicella on Bobin varmennettu julkinen avain ja Bobilla on Liisen sertifioitu julkinen avain. Samanaikaisesti molemmat avaimet on aiemmin sertifioinut luotettava varmenneviranomainen , joka ei ole suoraan mukana prosessissa. Ennen kuin aloitat protokollan, sinun on suoritettava seuraavat vaiheet [3] [4] :

  1. Luo satunnaisesti epäsymmetrinen allekirjoituspari käyttäjien lisätodennusta varten .
  2. Määritä viestien luontiparametrit: moduuli p , jolle syklinen ryhmä luodaan , ja sen generaattori g .

Protokolla koostuu seuraavista tiedonvaihtokierroksista Alicen ja Bobin välillä :

1. Alice valitsee satunnaisluvun x siten, että 2 ≤ x ≤ p-1 ja lähettää Bobille viestin m A = g x mod p

(1) Liisa → Bob : m A = g x mod p,

2. Bob valitsee satunnaisluvun y siten, että 2 ≤ y ≤ p-1, laskee m B = g y mod p ja käyttämällä Alicelta saatua viestiä jaetun salaisen avaimen K = m A y mod p = g xy mod s. Sitten hän lähettää Alice m B :lle ja salatun viestin E K (Sig B ( m B , m A )), joka on allekirjoitettu hänen sähköisellä digitaalisella allekirjoituksellaan.

(2) Liisa ← Bob : m B = g y mod p, E K (Sig B ( m B , m A )),

3. Alice laskee samalla tavalla salaisen avaimen ja purkaa Bobin viestin. Sitten se todentaa Bobin tarkistamalla hänen sähköisen allekirjoituksensa ja lähettää hänelle viestin E k (Sig A ( m A , m B )), joka on allekirjoitettu hänen allekirjoituksellaan.

(3) Liisa → Bob : E k (Sig A ( m A , m B )),

4. Bob vastaanottaa viestin Alicelta, purkaa sen salauksen ja tarkistaa Alicen allekirjoituksen.

Tässä Sig A ja Sig B  ovat käyttäjien Alice ja Bob digitaalisia allekirjoituksia , vastaavasti, K = g xy mod p on vaadittu yhteinen avain.

Digitaalisten allekirjoitusten käyttö lähetettäessä viestejä Alicen ja Bobin välillä takaa [5] viestin aitouden vastaanottajalta käyttäjältä, jolta sen olisi pitänyt tulla. Käyttäjän allekirjoitusarvojen salaus symmetrisellä algoritmilla E otettiin käyttöön avaimen laskennan oikeellisuuden molemminpuolisen vahvistuksen varmistamiseksi, koska on mahdotonta saada digitaalisten allekirjoitusten oikeita arvoja väärin lasketulla avaimella. .

Hyökkäys tavalliseen STS:ään

Vuonna 1994 Oxfordin yliopiston Kevin Lowehyökkäyksen STS - protokollaa vastaan ​​[ 6 ] Tässä tapauksessa Eva yrittää selvittää kirjeenvaihtoa [7] .

(1) Liisa → Eeva(Bob) : m A = g x mod p, (2) Eeva → Bob : m A , (3) Eve ← Bob : m B = g y mod p, E K (Sig B ( m B , m A )), (4) Liisa ← Eve (Bob) : m B , E K (Sig B ( m B , m A )), (5) Liisa → Eeva(Bob) : E K (Sig A ( m A , m B )).

Kryptusanalyytikko Eve, keskellä Alicen ja Bobin välissä, käyttää laillista keskusteluaan Bobin kanssa vakuuttaakseen Alicen siitä, että tämä toimii Bobin puolesta. Istunto Bobin kanssa jää kesken, koska Eve, joka ei tiedä jaettua salaista avainta, ei pysty arvaamaan Bobin oikeaa vastausta. Siksi kaikki Eevan kolmannen vaiheen viestit hylätään. Tämä hyökkäys ei aiheuta todellista vaaraa [4] , koska salainen avain K jää Eevalle tuntemattomaksi. Tässä tapauksessa Alice erehtyy kuitenkin Eveen Bobiin. Bob luulee, että hän on muodostanut yhteisen avaimen Eevan, mutta itse asiassa Alicen kanssa. Näin ollen protokolla ei toimi oikein. Tällaisen hyökkäyksen seuraukset ovat verrattavissa tilanteeseen, jossa Eve on passiivinen, kunnes Alice lähettää viimeisen viestin Bobille. Bob ei voi vastaanottaa sitä, koska Eve estää viimeisen viestin. Bob ilmoittaa Alicelle, että viimeistä viestiä ei ole vastaanotettu. Vaikka yksittäinen hyökkäys ei ole vaarallinen, joukko hyökkääjiä, jotka ovat tehneet tällaisen hyökkäyksen, voi kuitenkin vähentää keskuspalvelimen tehoa rajusti, koska palvelin varaa resursseja käyttäjille, joiden ilmoituksia ei tule. On myös syytä huomata, että tällaisen hyökkäyksen aikana Eve ja hänen liittolaisensa eivät tarvitse todistuksia . Joten tämä hyökkäys vaatii pienen määrän resursseja .

Vuonna 1995 Martin Abadi ja Robert Needham ehdottivat tapaa estää tällainen hyökkäys palvelimeen. Tätä varten riittää, että annat käyttäjätunnuksen avoimesti [8] .

Muokattu STS-protokolla

Vuonna 2004 Colin Boyd ja Wenbo Mao ehdottivat seuraavaa spesifikaatiota STS [9] -protokollalle :

(1) Liisa → Bob : m A = g x mod p (2) Liisa ← Bob : m B = g y mod p, Sig B ( m B , m A ), h K 0 ( m B , m A ) (3) Alice → Bob : Sig A ( m A , m B ), h K 0 ( m A , m B )

jossa K 0 = f(k) on tiivistefunktion avainparametri h K 0 ( m A , m B ), laskettuna jonkin funktion arvona tuloksena olevasta istuntoavaimesta K = g xy mod p. P-moduuli ja g-generaattori ovat edelleen auki.

Hyökkäys modifioitua STS:ää vastaan

On olemassa "kahdenvälinen tuntematon avaimenjakohyökkäys" ( BUKS -  hyökkäys ) [4] Tässä tapauksessa kryptanalyytikot Eva ja Mallory yrittävät selvittää kirjeenvaihtoa.

(1) Alice → Eve : m A = g x mod p (2) Eve → Mallory : m A (3) Mallory → Bob : m A (4) Mallory ← Bob : m B = g y mod p, Sig B ( m B , m A ), h K 0 ( m B , m A ) (5) Eve ← Mallory : m B , h K 0 ( m B , m A ) (6) Alice ← Eve : m B , Sig E ( m B , m A ), h K 0 ( m B , m A ) (7) Alice → Eve : Sig A ( m A , m B ), h K 0 ( m A , m B ) (8) Eeva → Mallory : h K 0 ( m A , m B ) (9) Mallory → Bob : Sig M ( m A , m B ), h K 0 ( m A , m B )

Tämän seurauksena Eve ja Mallory, jotka tekevät yhteistyötä, johdattivat harhaan Alicen ja Bobin, jotka muodostivat yhteisen avaimen. Samaan aikaan Alice on varma, että hän on muodostanut jaetun avaimen Even kanssa, ja Bob on varma, että hän on muodostanut jaetun avaimen Malloryn kanssa .

Yksinkertaistettu STS

Yksinkertaistettua algoritmia käytetään puhtaasti keskinäiseen todentamiseen ilman yhteistä salaisuutta. Toteutus näyttää tältä [10] :

(1) Liisa → Bob : m A = g x mod p (2) Liisa ← Bob : m B = g y mod p, Sig B ( m B , m A ) (3) Alice → Bob : Sig A ( m A , m B )

Attack on Simplified STS

Hyökkäyksen aikana Eve, joka on järjestelmän laillinen käyttäjä ja omistaa julkisen avaimen varmenteen , pyytää Alicea alustamaan protokollan. Sen jälkeen hän aloittaa keskustelun Bobin kanssa, esittelee itsensä Liisaksi ja käyttää hänen kertalukuaan. Saatuaan vastauksen Bobilta Eve korvaa hänen todistuksensa ja allekirjoituksensa omilla kopioillaan. Tämä kehottaa Alicea allekirjoittamaan Bobin viestin, mikä puolestaan ​​antaa Even huijata Bobia. .

(1) Alice → Eve : m A = g x mod p (2) Eeva → Bob : m A (3) Eve ← Bob : m B = g y mod p, Sig B ( m B , m A ) (4) Alice ← Eve : m B = g y mod p, Sig E ( m B , m A ) (5) Alice → Eve : Sig A ( m A , m B ) (6) Eeva → Bob : Sig A ( m A , m B )

Tämän seurauksena Alice luulee puhuvansa Evelle, ja Bob luulee puhuvansa Alicelle. Tämä hyökkäys on virheetön, koska Alice tai Bob eivät epäile mitään. On huomattava, että Eve on erittäin aktiivinen rooli tässä hyökkäyksessä: hän allekirjoittaa Bobin luoman viestin ja vakuuttaa Alicen myös allekirjoittamaan sen johtaakseen Bobin täysin harhaan. Jos Eve olisi toiminut tavallisen passiivisen tarkkailijan roolissa, niin Alice ei olisi koskaan allekirjoittanut Bobin viestiä eikä olisi antanut itseään pettää [7] .

STS-MAC

Tapauksissa, joissa on mahdotonta määrittää käyttäjää, jolta viesti on vastaanotettu, K = g xy voidaan käyttää väärennetyn lisäyksen luomiseen [11] :

(1) Liisa → Bob : m A = g x mod p (2) Liisa ← Bob : m B = g y mod , Sig B ( m B , m A ), MAC K ( Sig B ( g y , g x )) (3) Alice → Bob : S A ( g x , g y ), MAC K ( Sig A ( g x , g y ))

Katso myös

Muistiinpanot

  1. Asemien välinen protokolla . Sterling Connect: Direct Secure Plus for z/OS Yleiskatsaus . IBM. - Station-to-Station (STS) -protokolla on kolmivaiheinen muunnelma Diffie-Hellman-perusprotokollasta. Sen avulla voit luoda jaetun salaisen avaimen kahden solmun välille molemminpuolisella entiteettitodennuslla." Haettu: 18.11.2013.
  2. Delfs, Hans, Knebl, Helmut. Johdatus kryptografiaan: periaatteet ja sovellukset. - 2. - Springer Publishing Company, Incorporated, 2010. - S. 88-89. — 368 s. — ISBN 978-3642080401 .
  3. Bruce Schneier. Sovellettu kryptografia. - 2. painos - Triumph, 2002. - S. 378-379. — 816 s. - ISBN 5-89392-055-4 .
  4. 1 2 3 4 A. V. Cheremushkin. Salausprotokollat: tärkeimmät ominaisuudet ja haavoittuvuudet // Applied Discrete Mathematics: Journal. - 2009. - Nro 2 . - S. 115-150 .
  5. A. V. Cheremushkin "Salausprotokollat: perusominaisuudet ja haavoittuvuudet", aikakauslehti "Applied Discrete Mathematics" UDC 003.26 (075.8)
  6. G. Lowe. Joitakin uusia hyökkäyksiä suojausprotokollia vastaan ​​// IEEE Computer Society : Proceeding. - 1996. - S. 162 . — ISBN 0-8186-7522-5 .
  7. 1 2 Mao, 2005 , s. 415-416.
  8. Martin Abadi, Roger Needham. Prudent Engineering Practice for Cryptographic Protocols // IEEE Computer Society: Proceeding. - 1994. - S. 122 .
  9. Colin Boyd, Wenbo Mao, Kenneth G. Paterson. Avainsopimus käyttämällä staattisia avaimia todentajia // Sovellettu kryptografia ja verkkosuojaus: Tietojenkäsittelytieteen luentomuistiinpanot. – 2004.
  10. Douglas R. Stinson. Kryptografian katsaus: teoria ja käytäntö // ACM SIGACT News : Newsletter. - 2003. - Nro 34 . - S. 22-25 . — ISSN 0163-5700 . - doi : 10.1145/954092.954097 .
  11. Simon Blake-Wilson, Alfred Menezes. PKC '99 Proceedings of the Second International Workshop on Practice and Theory in Public Key Cryptography // Proceedings of the Second International Workshop on Practice and Theory in Public Key Cryptography: Proceedings. - 1999. - S. 154-170 . — ISBN 3-540-65644-8 .

Kirjallisuus