Szyfr książkowy działa w ten sposób:
- Wybierz podręcznik.
- Dla każdego znalezionego słowa jego miejsce w książce.
- zamień każde słowo na jego współrzędne (np .: 2, 3, 4 = strona 2, 3 linia, 4 słowo).
Jak czy ktoś mógłby złamać szyfr książkowy bez wiedzy, jaki jest klucz [lub książka użyta w tym przypadku]?
Znalezienie klucza jest albo niemożliwe, albo zajęłoby niepraktyczną ilość czasu. Biorąc pod uwagę znany zwykły tekst i zaszyfrowany tekst, znalezienie odpowiedniego klucza [lub książki] jest niepraktyczne, ponieważ wszystkie możliwe klucze pasujące do zwykłego tekstu wymagałyby 40 miliardów lat przy użyciu współczesnej technologii.
Przykład szyfru książki: szyfrów Beale , jako klucz wykorzystano Deklarację Niepodległości Stanów Zjednoczonych.
Komentarze
- Czy mógłbyś (częściowo) formalnie opisać szyfr? ' nie jest nawet dla mnie jasne, jaki jest klucz, jeśli tekst zaszyfrowany jest pozycją słów …
- Myślę, że ' to szyfr podstawieniowy, w którym wyrazy w tekście jawnym są pobierane, wyszukiwane w książce i zastępowane ich pozycją (prawdopodobnie losową w wielu wystąpieniach) w książce. Liczba wszystkich dostępnych książek nie jest tak duża, więc gracz taki jak Google (ma dużą bazę zeskanowanych książek) mógłby wypróbować wiele książek na jednym szyfrogramie i sprawdzić każdy wynikowy tekst jawny w ramach języka naturalnego, czy wygenerowano poprawne zdania. Jeśli założysz, że żadna książka nie może być użyta do złamania tego, wydaje się, że jest to całkowicie bezpieczny szyfr.
- @MaartenBodewes kluczem może być dowolny tekst. na przykład użyłem własnego postu. wykorzystanie pozycji pewnych słów do wygenerowania zaszyfrowanego tekstu.
- @ 5hammer Czy możesz sprawdzić, czy zmiana wyjaśnia schemat w sposób, jaki masz na myśli? Jeśli nie, to lepiej opisz, co masz na myśli.
- @MaartenBodewes dziękuję, tak, to jest schemat, który ciężko mi było opisać.
Odpowiedź
Po pierwsze, znalezienie klucza (książki) nie jest niemożliwe, ale po prostu trudne. Jeśli ktoś, jak na przykład Google, zeskanował miliony książek do formatów cyfrowych, to nie zajmie mu dużo czasu, zanim zorientuje się, która książka (po prostu spróbuj odszyfrować pierwsze zdanie tylko do momentu znalezienia klucza, powinno być możliwe w przypadku komputerów typu mainframe ).
Brakuje też przypadkowości. Ponieważ wybrana przez Ciebie książka może nie mieć losowych sekwencji, podstawienie niczego nie zdekoreluje, co jest kolejną wadą. Najlepszym sposobem na poprawę tego jest wybranie losowych odniesienia dla każdego znaku za pomocą generatora liczb losowych, co jest uciążliwe.
Komentarze
- Wiem, że znalezienie książki może być możliwe, ale zakładam fakt, że zwykłe brutalne wymuszanie zajmie 40 bilionów lat, nawet jeśli w ciągu każdego roku moc obliczeniowa świata podwaja się. To, czego chcę, to inne metody, których można by użyć, aby zmniejszyć liczbę książek, które musiałbym sprawdzić.
- @ 5hammer: Jak otrzymujesz liczbę taką jak 40 kwintylianów? złożoność tego jest tylko liniowa w liczbie dostępnych książek.
- Przypuszczam, że byłoby dość korzystne, gdyby po prostu postprocesować tekst zaszyfrowany z szyfru książkowego z transpozycją w klasycznym sensie, tak aby użytkownik ' praca ręczna byłaby trudna do przeanalizowania, nawet w przypadku zasobów porównywalnych z zasobami Google.
Odpowiedz
Aby był to praktyczny system kryptograficzny z krótkim kluczem, „jesteś ograniczony do określenia opublikowanej książki, do której każdy, łącznie z przeciwnikiem, ma dostęp. * Powiedzmy, że istnieje około miliarda różnych opublikowanych książek. Badania pobieżne sugerują, że jest to przeszacowanie około dziesięciokrotnie, ale nie kwestionujmy szczegółów. Powiedzmy, że w przypadku każdej książki istnieje średnio z miliona słów. To również ogromne przeszacowanie.
To daje bilion możliwych kluczy, 10 ^ {12} \ około 2 ^ {40} $ – i aby zapisać swój kryptosystem, musisz dosłownie wypełnij bibliotekę.
Lepiej jest ci posługiwać się archaicznym szyfrem DES złamanym brutalną siłą z 56-bitowym kluczem, niż używając tego efektywnie 40-bitowego klucza do szyfru książkowego. Jeśli musisz to zrobić za pomocą pióra i papieru – jeśli w jakiś sposób możesz sobie pozwolić na bibliotekę miliardów książek, ale nie na komputer – są prawdopodobnie dostępne lepsze szyfry pisane na papierze, takie jak [1] i [2] .
* Jeśli nie ograniczasz się do publikowanych książek, równie dobrze możesz wymienić numery w Bibliotece Babel, ale taka propozycja jest jeszcze mniej praktyczna.
Komentarze
- Twoje obliczenie współczynnika pracy ma sens tylko wtedy, gdy przeciwnik faktycznie ma wszystkie miliardy opublikowanych książek (we wszystkich wydaniach) .
Odpowiedź
Istnieje poważny atak kanału bocznego na takie szyfry, nazwany w wyobraźni atakiem przeszukiwania pomieszczeń. Chociaż myślisz, że wszystkie książki na świecie są do twojej dyspozycji, w rzeczywistości nimi nie są. W pewnym momencie musisz mieć książkę, podobnie jak odbiorca zaszyfrowanego tekstu. I muszą być słowo w słowo, strona po stronie identyczne.
Więc jeśli zgłaszasz „raport o lokalnej kolonii kobiet, możesz zaszyfrować i wysłać: –
” Wielki wujek Bułgaria – najstarszy i najmądrzejszy z Wimbledon Wombles i ich przywódca. „
Ale jeśli „szpiegując firmę farmaceutyczną, wtedy Twoja tajna wiadomość może brzmieć: –
” Tutaj przedstawiamy model beleczkowania u myszy, który integruje dynamiczne wsierdzie i zachowań komórek mięśnia sercowego i przebudowy ECM oraz ujawniają nowe epistatyczne związki między zaangażowanymi szlakami sygnalizacyjnymi. ”
Niewiele książek na świecie zawiera te dokładne słowa, a zarówno nadawca, jak i odbiorca musieli je posiadać. Tak nagle wszystkie książki na świecie są zredukowane do niewielu. Długa półka z 10 000 książek to nadal tylko ~ 13 bitów do wyboru. A kto ma 10 000 różnych książek zawierających słowo „Wombles”? Przeszukiwanie półek nadawcy lub odbiorcy miałoby ogromny wpływ na bezpieczeństwo.
Gdyby przeszukano wówczas dom Thomasa Bealea, skarb byłby prawdopodobnie łatwy do zlokalizowania, ponieważ musiałby mieć kopię Deklaracji Niepodległości na półce z książkami.
Dla porównania, wyobraź sobie, że możesz odzyskać klucz AES za pomocą kanału bocznego, aby zmniejszyć nieznaną przestrzeń klucza o 99%. To oznaczałoby szukanie lepszego szyfru. Bezpieczniejsze i bardziej praktyczne jest zastępowanie liter zamiast słów. W ten sposób możesz po prostu używać Biblii do wszystkiego.
Odpowiedź
Myślę, że chodzi o to, że nie można ich złamać, bez klucza nie można ich odszyfrować. Możesz użyć programów komputerowych z nadzieją, że dana książka została zeskanowana, ale pamiętaj, że Twój kod jest oparty na stronie i numery słów, wtedy liczy się również „wydanie” / „drukowanie” książki. Książka w miękkiej oprawie ma inną numerację stron niż twarda. Jeśli używasz starszej książki z innym krojem pisma, słowa będą znajdować się na innych stronach niż współczesna kopia. Dlatego te kody są tak przydatne, ale każda osoba musiałaby mieć to samo wydanie książki, aby się zrozumieć.
Najszybszym sposobem ustalenia, jaki jest klucz byłoby zrozumienie osoby obsługującej kod i próba określenia, której książki / klucza by użyli.