Czy dane nie zostaną utracone podczas mapowania wartości 6-bitowych na wartości 4-bitowe w S-Boxach DES? Jeśli tak, to w jaki sposób możemy to odwrócić, aby pojawił się prawidłowy wynik?
12
Czy dane nie zostaną utracone podczas mapowania wartości 6-bitowych na wartości 4-bitowe w S-Boxach DES? Jeśli tak, to w jaki sposób możemy to odwrócić, aby pojawił się prawidłowy wynik?
Odpowiedzi:
W każdej rundzie stosowana jest następująca operacja:
Deszyfrowanie odbywa się w następujący sposób:
Jak widać, deszyfracja nie potrzebuje być odwracalna. (Ponieważ deszyfrowanie nie wymaga obliczenia .)F - 1F F−1
źródło
Zobacz rozdział 5 podręcznika „Wprowadzenie do współczesnej kryptografii” autorstwa Katza i Lindella.
źródło
Bez wchodzenia w matematyczne mumbo-jumbo dotyczące Feistela (którego jeszcze nie rozumiem w 100%), jeśli spojrzysz na ten obraz z Wikipedii:
Widać, że chociaż 8 s-boxów faktycznie kompresuje 48 bitów do 32, tylko 32 bity entropii pochodzą z tekstu jawnego , dlatego podczas dekodowania można uzyskać pozostałe 16 bitów z klucza, co jest magią wykonywaną przez wcześniej wspomniane funkcje Feistela.
źródło