Mam proste pytanie dotyczące protokołu OpenVPN. Załóżmy, że mamy dwóch różnych użytkowników, z różnymi kluczami dla tego samego serwera, i oba klucze mają 1024 bity. Jeśli dwaj użytkownicy złożą dokładnie to samo żądanie, a ktoś wącha dane na serwerze, ta osoba (sniffer) zobaczy te same dane dla obu użytkowników lub różne dane? Pytanie brzmi, czy klucz prywatny użytkownika ingeruje w kryptografię PO uwierzytelnieniu, czy też jest używany tylko w czasie uwierzytelniania. Dziękuję Ci.
8
Odpowiedzi:
Różne dane.
Klucze publiczne / prywatne są używane tylko podczas uwierzytelniania / negocjacji klucza.
OpenVPN może działać w jednym z dwóch trybów , z kluczem wstępnym lub za pomocą TLS z certyfikatami. Klucz wstępny jest stały, stały, ale pytasz o tryb certyfikatu.
Nie będę wdawał się w zbyt wiele szczegółów i możesz sam sprawdzić TLS, ale w zasadzie TLS używa certyfikatów (i kluczy prywatnych) do uwierzytelniania i podczas fazy negocjacji klucza. Generuje symetryczny klucz szyfrowania (np. BlowFish, AES itp.) I wykorzystuje kryptografię klucza publicznego do bezpiecznego udostępniania tego klucza.
Rzeczywiste wiadomości są następnie szyfrowane za pomocą szyfrowania symetrycznego. Każda sesja ma swój niezależny klucz szyfrowania (więc jeśli rozłączysz się i ponownie połączysz, w rzeczywistości otrzymasz inny klucz). Podobnie każdy użytkownik będzie miał różne sesje, a zatem różne klucze.
Są dwa powody, aby to zrobić. Szyfrowanie symetryczne jest znacznie szybsze niż szyfrowanie asymetryczne, dlatego jest preferowane w przypadku wysokiej przepustowości (trudność polega na udostępnianiu kluczy, co rozwiązuje faza negocjacji). Ponadto, generując nowy klucz za każdym razem, trudniej jest skompromitowanym kluczom ujawnić dane innych sesji ( FS ).
źródło
Każdy klient szyfruje swoje dane za pomocą wynegocjowanego klucza między klientem a serwerem, więc dane otrzymane przez bramę VPN będą różne dla obu użytkowników.
źródło