Bezpieczeństwo, kryptografia: Stupid Challenge - Protokół odpowiedzi?
Ok, tylko mała gra:
Mam pewne specyfikacje dla projektu. W pewnym momencie proszą o zaszyfrowanie hasła przez sieć, mówiąc, że jest to protokół odpowiedzi na wyzwanie:
CLIENT ----------------------------- SERVER (1)ask for challenge --------------> (2) <---------------------------- send SHA1 taken from the time (this is the challenge) (3) make SHA1 xor PASSWORD --------> if it's equal to SHA1 xor stored password (4) <---------------------------- Grant access
Dla tych, którzy tego nie wiedzą, SHA oznacza Secure Hashing Algorithm, standardowy algorytm kryptografii.
Mam nadzieję, że to jasne. Pytanie brzmi: Jeśli sniffuję pakiety 2 i 3 („wyzwanie” i „wyzwanie xor password”, mam rzeczywiste hasło tylko z innym xor między nimi!?!? Istnieje inny sposób implementacji tego rodzaju protokołu ??