39418 Str063 (2)

39418 Str063 (2)



122    4. Kłucie puhlkunc

„jemy to postępowanie dopóty, dopóki nic będziemy mogli zastąpić danej kongnicncji prze/ kongruencję z wykładnikiem dwa razy mniejszym. Mamy wtedy dwie możliwości:

(i)    Liczba m/2 dzieli się przez jedną z liczb p — 1, g — 1 (np. dzieli się przez p - I), ale nic dzieli się przez obie. Wtedy liczba aml2 zawsze przystaje do 1 modulo p, ale dokładnie w 50% przypadków przystaje do -1, a nie do 1, modulo q.

(ii)    Liczba m/2 nic dzieli się przez żadną z liczb p — 1 i q — 1. Wtedy liczba aml2 przystaje do 1 modulo p i modulo q (a więc i modulo n) w dokładnie 25% przypadków, przystaje do — 1 modulo p i modulo q również w 25% przypadków oraz przystaje do 1 względem jednego modułu i do -1 względem drugiego modułu w pozostałych 50% przypadków.

Testując zatem losowo wybrane liczby o, z dużym prawdopodobieństwem znajdziemy wkrótce liczbę a, dla której liczba am/2 — 1 dzieli się przez jedną z tych liczb pierwszych (np. przez p) i nie dzieli się przez drugą. (Każda losowo wybrana liczba a ma tę własność z prawdopodobieństwem 50%). Z chwilą gdy znajdziemy taką liczbę o, natychmiast rozłożymy liczbę n na czynniki, gdyż NWD(n, cT12 1) = p.

Powyższa procedura jest przykładem algorytmu probabilistycznego. W następnym rozdziale poznamy inne algorytmy probabilistyczne.

3. W jaki sposób przesyłamy swój podpis za pomocą szyfru RSA? Gdy w poprzednim podrozdziale omawialiśmy zagadnienie potwierdzania tożsamości, zakładaliśmy dla uproszczenia, że ^ = W przypadku szyfru RSA mamy do czynienia z trochę bardziej skomplikowaną sytuacją. Oto jeden ze sposobów uniknięcia problemu różnych liczb nA i różnych rozmiarów bloków liter (liczba k liter w jednostce tekstu jawnego jest mniejsza od liczby / liter w jednostce tekstu zaszyfrowanego). Przypuśćmy, że tak jak w ostatnim podrozdziale, Alicja wysyła Bolkowi swój podpis (czyli pewien tekst jawny P). Zna ona klucz szyfrujący Bolka KE B = (nB, eB) i swój klucz rozszyfrowujący Kd a = {nA, dA). Wysyła wtedy fBf~Al(P), jeśli nA < nB, lub //ł/B(P), jeśli nA > nB. Zatem w pierwszym przypadku oblicza resztę z dzielenia Pć* przez nA\ następnie, biorąc pod uwagę to, że wynik jest mniejszy od nB> oblicza (P*A mod nAy’ mod nB i wysyła jako jednostkę tekstu zaszyfrowanego. Natomiast gdy nA> nB, najpierw oblicza Pa* mod nB, a potem podnosi wynik do potęgi dA modulo nA. Oczywiście Bolek może sprawdzić autentyczność podpisu w pierwszym przypadku, najpierw podnosząc go do potęgi dB modulo nB, a potem do potęgi eA modulo nA\ w drugim przypadku wykonuje te operacje w odwrotnej kolejności.

Ćwiczenia

1. Załóżmy, że używamy następującego 40-literowego alfabetu do zapisywania tekstów jawnych i zaszyfrowanych: A-Z z odpowiednikami liczbowy-

mi 0*25, odstęp = 26,. ~ 27,7 -- 28, 8 * 29, cyfry 0*9 z odpowiednikami 10-39. Przypuśćmy, że jednostkami tekstu jawnego są digramy, a jednostkami tekstu zaszyfrowanego są trigramy (tzn. k = 2, / — 3, 402 <nA<403 dla wszystkichnA).

(a)    Wyślij wiadomość „SEND 87500” do użytkownika, którego kluczem szyfrującym jest (nA, eA) = (2047,179).

(b)    Złam szyfr, rozkładając nA na czynniki i znajdując klucz rozszyfrowu-

jący K. dA).

(c)    Wyjaśnij, dlaczego nawet bez rozkładania nA na czynniki, kryptoiog mógłby szybko znaleźć klucz rozszyfrowujący. Innymi słowy, dlaczego (niezależnie od małego rozmiaru) wybór liczby 2047 jest szczególnie zły jako liczby nA?

2.    Spróbuj złamać szyfr, którego kluczem szyfrującym jest (n# ej = = (536813567, 3602561). Wykorzystaj komputer do rozłożenia liczby nna czynniki pierwsze za pomocą najgłupszego możliwego algorytmu, tzn. dzieląc przez wszystkie liczby nieparzyste 3, 5, 7,.... Jeśli nie masz komputera, spróbuj odgadnąć czynniki pierwsze liczby nA, próbując różnych specjalnych liczb pierwszych. Po rozłożeniu nA na czynniki znajdź klucz rozszyfrowujący. Potem rozszyfruj wiadomość BNBPPKZAVQZLBJ przy założeniu, że tekst jawny składa się z bloków sześdoliterowych zapisanych za pomocą zwyczajnego 26-literowego alfabetu (przekształconych na liczby zawarte między 0 i 266 - 1 w zwykły sposób), a tekst zaszyfrowany składa się z bloków siedmioliterowych zapisanych w tym samym alfabecie.

To ćwiczenie powinno pokazać, że nawet 29-bitowa liczba nA jest o wiele za mała.

3.    Przypuśćmy, że zarówno teksty otwarte, jak i kryptogramy składają się z trigramów, ale teksty otwarte są zapisane za pomocą alfabetu 27-litero-wego (składającego się z liter A-Z i odstępu = 26), podczas gdy kryptogramy są zapisane za pomocą alfabetu 28-literowego, otrzymanego przez dodanie symbolu „/” (z odpowiednikiem liczbowym 27) do alfabetu 27-literowego. Wymagamy, by każdy użytkownik A wybrał liczbę nA zawartą między 273 = 19683 i 283 = 21952 tak, by trigram tekstu otwartego w 27-literowym alfabecie odpowiadał reszcie P modulo nA i wtedy liczba C = A mod nA odpowiadała trigramowi kryptogramu zapisanemu w 28--literowym alfabecie.

(a)    Odczytaj wiadomość „YSNAUOZHXXH ” (jeden odstęp na końcu), jeśli kluczem rozszyfrowującym jest KD = (n, d) = (21583, 20787).

(b)    Znajdź (i) e = d~l mod <p(ń) i (ii) rozkład liczby n na czynniki, jeśli wiesz, że w punkcie (a) <p(n) = 21280.

4.    Wykaż, że 35-bitowa liczba naturalna 23360947609 jest wyjątkowo złym kandydatem na n — pq, gdyż jej dzielniki pierwsze są zbyt bliskie siebie; pokaż mianowicie, żc liczba n może być łatwo rozłożona na czynniki pierwsze „metodą Fermata”. Zauważ, że jeśli n-pq (i np. p > q)t to


Wyszukiwarka

Podobne podstrony:
Str063 (2) 122    4. Kłucie puhlkunc „jemy to postępowanie dopóty, dopóki nic będziem
77559 prognozowanie test c c 1.    Czyjaś makówka zastawia, to też tego pytania nic b
img033 (39) 122 Tadeusz Sokołowski 3) Państwa będą postępować zgodnie z celami i zasadami Karty NZ i
img122 122 4.    Middleton D.: An Introduction to Stśtistical Communication Theory. M
IMG75 (6) 122 tak zwany terminizm1”, to znaczy wiara, że wprawdzie łaska jest uniwersalna, ale dana
page0454 PLATON. 0    czem się zawsze chce wykładać* ). Jest to postępowanie indukcy
scandjvutmp16201 122 W nieprzyjażni byli, przez to się zgodzili, Król Herod z Piłatem, kat z okrutn
pewnie zmarzłeś. Nie chcesz? To nie trzeba. Zresztą, muszę już wstać, umyć się i może zjem to śniada
Analiza eksperta” (Fact-Finding, Expertise) to postępowanie, w któiym bezstronna osoba trzecia na ws
Mini-proces”, „quasi-proces” lub „pozorowana rozprawa” (Mini-Trial) to postępowanie, które ma na
42335 P1030818 122 francuskich poetów. Jest to zapewne przestroga bardzo słuszna, bo choć Asnyk czyt
99 (122) 5.2.2A. Specific techniąue to increase ven-tral flexion of Tl on T2. P supine. Starting Pos
Kociołek Kuchnia Dzięku ję za odwiedziny Miłych snów zapraszam do kociołka Co nie zjem to
Ocena wiarygodnosci zeznan swiadkow w procesie karnym4 świadek — pojęcie i Zitacienie to postępowan
10928816?5506326494191!164343 n J JW - »    .. b)    jest to postępowa
To postępowanie zgodne z przyjętymi normami. Takie zachowanie nie narusza obowiązujących reguł
img122 122 4.    Middleton D.: An Introduction to Stśtistical Communication Theory. M

więcej podobnych podstron