Denning-Sacco-protokollet

Kryptografiska notationer som används i autentiserings- och nyckelutbytesprotokoll
Identifierare av Alice ( Alice ), initiativtagaren till sessionen
Identifierare för Bob ( Bob ), den sida från vilken sessionen etableras
Identifierare för Trent ( Trent ), en pålitlig mellanpart
Alice, Bob och Trents publika nycklar
Hemliga nycklar till Alice, Bob och Trent
Kryptering av data med Alices nyckel, eller Alice och Trents gemensamma nyckel
Kryptera data med Bobs nyckel eller Bob och Trents gemensamma nyckel
Datakryptering med hemliga nycklar från Alice, Bob (digital signatur)
Sessionssekvensnummer (för att förhindra reprisattacker)
Slumpmässig sessionsnyckel som ska användas för symmetrisk datakryptering
Krypterar data med en tillfällig sessionsnyckel
Tidsstämplar har lagts till i meddelanden av Alice respektive Bob
Slumptal ( nonce ) som valdes av Alice respektive Bob
Alice, Bob och Trents förgenererade offentliga respektive privata nyckelpar
Slumpmässig session offentligt/privat nyckelpar som ska användas för asymmetrisk kryptering
Signering av data med den privata nyckeln från Alice, Bob, mellanparten ( Trent ), eller en privat nyckel från ett slumpmässigt par.
Asymmetrisk datakryptering med den offentliga nyckeln från Alice, Bob, en mellanpart ( Trent ) eller en offentlig nyckel från ett slumpmässigt par, respektive

Denning-Sacco-protokollet [1]  är ett vanligt namn för symmetriska och asymmetriska nyckeldistributionsprotokoll för betrodda parter .

Historik

1981 presenterade Purdue University-anställda Dorothy E. Denning och Giovanni Maria Sacco en attack mot Needham-Schroeder-protokollet och föreslog sin egen modifiering av protokollet baserat på användningen av tidsetiketter [2] .

Symmetrisk nyckel Denning-Sacco-protokollet

Med symmetrisk kryptering antas det att den hemliga nyckeln som tillhör klienten endast är känd för honom och någon tredje betrodd part - autentiseringsservern. Under exekveringen av protokollet får klienter (Alice, Bob) från autentiseringsservern (Trent) en ny hemlig sessionsnyckel för att kryptera ömsesidiga meddelanden i den aktuella kommunikationssessionen. Överväg implementeringen av Denning-Sacco-protokollet med en symmetrisk nyckel [3] :

Beskrivning

Det första meddelandet från Alice till Trent innehåller identifierarna för deltagarna i det kommande utbytet - Alice och Bob. Detta meddelande skickas i klartext:

Trent genererar en sessionsnyckel och skickar ett krypterat meddelande till Alice som inkluderar Bobs ID, sessionsnyckel, tidsstämpel och ett paket som fungerar som Alices certifikat:

Alice dekrypterar sedan Trents meddelande och skickar hennes certifikat till Bob :

I slutet av protokollet har Alice och Bob en delad sessionsnyckel .

Alice och Bob kan verifiera att meddelandena de får är giltiga genom att kontrollera tidsstämplar .

Protokollattack

1997 presenterade Gavin Lowe en attack mot protokollet [4] :

ett. 2. 3. fyra.

Angriparens handlingar leder till att Bob bestämmer sig för att Alice vill etablera en ny förbindelse med honom.

Protokolländring

I samma arbete föreslog Low en protokollmodifiering som ger Alices autentisering till Bob [4] :

ett. 2. 3. fyra. 5. Efter att Bob har dekrypterat Alices meddelande kan han verifiera att Alice äger sessionsnyckeln .

Inom ramen för protokollet bekräftar Bob inte på något sätt mottagandet av en ny sessionsnyckel och möjligheten att arbeta med den. Meddelandet från Alice på 5:e passet kunde ha snappats upp eller modifierats av en angripare. Men Alice förväntar sig inte längre något svar från Bob och är säker på att protokollet slutfördes framgångsrikt.

Denning-Sacco Public Key Protocol

En asymmetrisk version av Denning-Sacco-protokollet. Autentiseringsservern äger de publika nycklarna för alla klienter. Överväg implementeringen av Denning-Sacco-protokollet med en offentlig nyckel [5] :

Beskrivning

Det första meddelandet från Alice till Trent innehåller identifierarna för deltagarna i det kommande utbytet - Alice och Bob. Detta meddelande skickas i klartext:

Som svar skickar Trent Alice de undertecknade certifikaten för Alice och Bobs offentliga nyckel. Dessutom läggs tidsstämplar till varje certifikat:

Alice genererar en ny sessionsnyckel och skickar den till Bob tillsammans med en tidsstämpel , signerar den med sin nyckel och krypterar den med Bobs publika nyckel, tillsammans med båda meddelandena som tagits emot från Trent:

Bob verifierar CA:s signatur på certifikatet , dekrypterar sessionsnyckeln och verifierar Alices signatur.

Protokollattack

Abadi och Needham beskrev en attack mot protokollet [6] där Bob, efter att ha fått ett meddelande från Alice, kan utge sig för att vara henne i en session med en annan användare. Frånvaron av Bobs identifierare i meddelandet från Alice leder till att Bob kan använda data som tas emot från Alice för att imitera Alice i en ny session med en tredje part (Clara).

ett. 2. 3. fyra. 5. 6.

Clara verifierar framgångsrikt CA:s signatur på certifikatet , dekrypterar sessionsnyckeln och verifierar Alices signatur. Som ett resultat är Clara säker på att hon har upprättat en kommunikationssession med Alice, eftersom alla nödvändiga steg i protokollet utfördes korrekt och alla meddelanden var korrekta.

Anteckningar

  1. Davydov A. N. Attacker mot viktiga etableringsprotokoll  // Säkerhet för informationsteknologi: Proceedings of the scientific and technical conference / ed. Volchikhina V. I., Zefirova S. L. - Penza: Publishing House of the Penza Research Electrotechnical Institute, 2004. - December ( vol. 5 ). - S. 99-104 . Arkiverad från originalet den 19 augusti 2019.
  2. Denning, Sacco, 1981 .
  3. Mao, 2005 , sid. 79.
  4. 1 2 Lowe, 1997 , Denning-Saccos delade nyckelprotokoll, s. 4-5.
  5. Mao, 2005 , sid. 429.
  6. Abadi, Needham, 1996 .

Litteratur