Złam protokół uwierzytelniania na podstawie wstępnie współdzielonego klucza symetrycznego


13

Rozważ następujący protokół, mający na celu uwierzytelnienie (Alice) na (Bob) i odwrotnie.B.AB

A→B:“I'm Alice”,RAB→A:E(RA,K)A→B:E(⟨RA+1,PA⟩,K)
  • R jest losowym nonce.
  • K jest wstępnie współdzielonym kluczem symetrycznym.
  • P to pewna ładowność.
  • E(m,K) oznacza szyfrowane z .K.mK
  • ⟨m1,m2⟩ oznacza złożony z w sposób, który można jednoznacznie zdekodować.m 2m1m2
  • Zakładamy, że algorytmy kryptograficzne są bezpieczne i poprawnie wdrożone.

Osoba atakująca (Trudy) chce przekonać Boba, aby zaakceptował jej ładunek jako pochodzący od Alicji (zamiast ). Czy Trudy może podszywać się pod Alice? W jaki sposób?P APTPA

Jest to nieco zmodyfikowany od ćwiczeń 9,6 w Information Security: Principles and Practice przez Mark Stamp . W wersji książkowej nie ma , ostatnia wiadomość to tylko , a wymaga, aby Trudy „przekonała Boba, że ​​jest Alice”. Mark Stamp prosi nas o znalezienie dwóch ataków, a dwa, które znalazłem, pozwalają Trudy wykuć ale nie . E ( R + 1 , K ) e ( R + 1 , K ) PL ( ⟨ R , P , T ⟩ , K )PAE(RA+1,K)E(R+1,K)E(⟨R,PT⟩,K)


Zobacz dyskusję na temat kryptografii / znaczników bezpieczeństwa w meta
— Ran G.

Odpowiedzi:


5

Ten protokół wydaje się być niepewny ze względu na fakt, że Bob wysyła . Może to zostać wykorzystane przez Trudy do „wygenerowania” szyfrów , które później zostaną użyte do wykonania protokołu uwierzytelnienia.PL ( ⟨ R + 1 , P , TE(RA,K)E(⟨RA+1,PT⟩,K)

W szczególności rozważ następujący atak:

Trudy wybiera losowy i uruchamia protokół z Bobem w następujący sposób: a następnie Trudy odcina protokół w środku (ponieważ ona nie wie jak odpowiedzieć). Zakładamy, że zarówno Trudy, jak i Bob przerywają.R1

T→B:“I'm Alice”,⟨R1+1,PT⟩B→T:E(⟨R1+1,PT⟩,K)

Teraz Trudy rozpoczyna kolejną instancję protokołu: Jak Trudy tym razem wykonała protokół, nie znając ? To jest łatwe! Bob w pierwszej kolejności wykonał dla niej szyfrowanie.

T→B:“I'm Alice”,R1B→T:E(R1,K)T→B:E(⟨R1+1,PT⟩,K)
K

Wyciągnięta lekcja: w protokole kryptograficznym dobrze jest, aby każda wiadomość lub oddzielny fragment zawierała unikalny znacznik, który zapobiega jego ponownemu użyciu jako innej wiadomości w protokole. Jeśli odpowiedź Boba brzmiałaby a trzecia wiadomość to , ten atak nie zadziałałby.PL ( ⟨ 2 , R + 1 , P ⟩ )mi(⟨1,RZA⟩)mi(⟨2),RZA+1,P.⟩)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.