Kiedy słyszę o metodach łamania algorytmów szyfrowania, zauważam, że często koncentruje się na tym, jak odszyfrować bardzo szybko i jak zmniejszyć przestrzeń poszukiwań. Zawsze jednak zastanawiam się, jak rozpoznać udane odszyfrowanie i dlaczego nie tworzy to wąskiego gardła. Czy często przyjmuje się, że szyfrowana/odszyfrowana para jest znana?Czy trudno jest rozpoznać pomyślne odszyfrowanie?
Odpowiedz
W kryptografii asymetrycznej zazwyczaj masz dostęp do klucza publicznego. Dlatego każde odszyfrowanie zaszyfrowanego tekstu zaszyfrowanego może zostać ponownie zaszyfrowane przy użyciu klucza publicznego i porównane z oryginalnym tekstem zaszyfrowanym, ujawniając w ten sposób, czy odszyfrowanie zakończyło się powodzeniem.
To samo dotyczy szyfrowania symetrycznego. Jeśli uważasz, że odszyfrowałeś szyfr, musisz również pomyśleć, że znalazłeś klucz. Dlatego możesz użyć tego klucza, aby zaszyfrować swój, prawdopodobnie poprawiony, odszyfrowany tekst i sprawdzić, czy zaszyfrowany wynik jest identyczny z oryginalnym zaszyfrowanym tekstem.
oprócz szyfrowania symetrycznego, każdy klawisz będzie zachowywał się w ten sposób ... –
Twoja obserwacja nie jest naprawdę przydatna do szyfrowania symetrycznego, ponieważ użyłeś klucza do wygenerowania odszyfrowanego tekst: oczywiście będzie pasować, gdy użyjesz go do ponownego zaszyfrowania. Rozważ ekstremalny przypadek jednorazowej podkładki; dla danego zaszyfrowanego tekstu możesz odgadnąć klucze, które dadzą ci * dowolny tekst w postaci zwykłego tekstu o prawidłowej długości, a wszystkie z powodzeniem ponownie zaszyfrują do właściwego tekstu zaszyfrowanego :). –
Dwa poprzednie komentarze pokazują, że ta odpowiedź jest niestety niestety. –
Od Cryptonomicon:
Jest to kompromis pomiędzy tymi dwoma skrajności, z jednej strony, nie wiedząc dowolnego tekstu jawnego w ogóle, i, z drugiej strony, wiedząc to wszystko . W Cryptonomicon, który wchodzi pod nagłówek łóżeczek. Szopka jest wykształconym odgadnięciem, które słowa lub wyrażenia mogą być obecne w wiadomości . Na przykład, jeśli odszyfrowujesz niemieckie wiadomości ze Świata od , możesz domyślać się, że tekst w postaci zwykłego tekstu zawierał wyrażenie "HElL HITLER" lub "SIEG HElL". Możesz wybrać z sekwencji dziesięciu znaków o numerze losowo i powiedzieć: "Załóżmy, że to reprezentuje HEIL HITLER .Jeśli to jest , co oznaczałoby, że o pozostałej części wiadomości?"
...
Siedząc w swoim gabinecie z świeżych przechwytuje Aretuzy, udał się do pracy, przy użyciu pogrzebowe łóżeczku: jeśli to grupa siedmiu liter odszyfrowuje do FUNERAL , jak wygląda reszta wiadomości? Szwargot? Okay, a co powiesz na tę grupę siedmiu liter: ?
Dla szyfrowania symetrycznego, w którym długość klucza jest krótsza niż długość tekstu zaszyfrowanego, gwarantowane jest, że nie będzie możliwe tworzenie wszystkich możliwych zwykłych tekstów. Możesz się domyślać, jaką formę ma twój zwykły tekst - do pewnego stopnia - prawdopodobnie wiesz, czy to obraz, czy XML, lub jeśli nawet nie wiesz o tym zbyt wiele, to możesz założyć, że będziesz w stanie uruchom na nim file
i nie otrzymuj "danych". Musisz mieć nadzieję, że istnieje tylko kilka kluczy, które dadzą ci nawet mało sensowny deszyfrowanie i tylko taki, który pasuje do formularza, którego szukasz.
Jeśli masz przykładowy tekst zwykły (lub częściowy zwykły tekst), to jest znacznie łatwiejsze.
Ogólnie rzecz biorąc, masz pojęcie o formacie pliku, który spodziewasz się uzyskać po odszyfrowaniu, a większość formatów zapewnia łatwy sposób ich identyfikacji.Na przykład prawie wszystkie formaty binarne, takie jak obrazy, dokumenty, pliki zip, itp., Mają łatwo identyfikowalne nagłówki, natomiast pliki tekstowe zawierają tylko sekwencje ASCII lub tylko poprawne sekwencje UTF-8.
zwłaszcza w parku Bletchly z Turings "Bomby" ... Jak te maszyny wiedzieli, kiedy złamali kod? –
Bomby pracowały, szukając rozwiązań, które były wewnętrznie spójne: wiele hipotez dotyczących klucza dnia było niezgodnych z generowanymi zaszyfrowanymi tekstami, a bombki eliminowały te, pozostawiając tylko te spójne do ręcznej analizy. Zobacz http://pl.wikipedia.org/wiki/Bombe –