Przypomnienie: typ permutacji mówi ile jest cykli każdej długości, np.: ( 12345

Podobne dokumenty
Przypomnienie: typ permutacji mówi ile jest cykli każdej długości, np.: ( 12345

Matematyka dyskretna. Andrzej Łachwa, UJ, /10

Matematyczne aspekty rozszyfrowania Enigmy

Tajna wiadomość. Scenariusz lekcji

CIĄGI wiadomości podstawowe

3. Macierze i Układy Równań Liniowych

Elementy teorii grafów Elementy teorii grafów

3a. Wstęp: Elementarne równania i nierówności

Lista 6. Kamil Matuszewski 13 kwietnia D n =

7. CIĄGI. WYKŁAD 5. Przykłady :

OLIMPIADA MATEMATYCZNA

WYRAŻENIA ALGEBRAICZNE

Grupy. Permutacje 1. (G2) istnieje element jednostkowy (lub neutralny), tzn. taki element e G, że dla dowolnego a G zachodzi.

Matematyka Dyskretna Zestaw 2

ZADANIE 1 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z D

Ćwiczenia z teoria liczb, ciąg dalszy (pt 15 maja) Matematyka Dyskretna

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Funkcje wymierne. Jerzy Rutkowski. Działania dodawania i mnożenia funkcji wymiernych określa się wzorami: g h + k l g h k.

MACIERZE I WYZNACZNIKI

KOMBINATORYKA. Problem przydziału prac

Podstawą w systemie dwójkowym jest liczba 2 a w systemie dziesiętnym liczba 10.

; B = Wykonaj poniższe obliczenia: Mnożenia, transpozycje etc wykonuję programem i przepisuję wyniki. Mam nadzieję, że umiesz mnożyć macierze...

Spacery losowe generowanie realizacji procesu losowego

Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Przekształcanie wykresów.

2. Układy równań liniowych

Funkcja kwadratowa. f(x) = ax 2 + bx + c,

Rachunek prawdopodobieństwa

Jak odróżnić wariację z powtórzeniami od wariacji bez powtórzeń, kombinacji?

Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5.

Przykładowe zadania na kółko matematyczne dla uczniów gimnazjum

1 Układy równań liniowych

1 Działania na zbiorach

Zastosowanie teorii liczb w kryptografii na przykładzie szyfru RSA

Matematyka dyskretna. Andrzej Łachwa, UJ, A/10

Dwa równania kwadratowe z częścią całkowitą

2 Kryptografia: algorytmy symetryczne

III. Wstęp: Elementarne równania i nierówności

Zasada indukcji matematycznej

FUNKCJA LINIOWA - WYKRES

Funkcja kwadratowa. f(x) = ax 2 + bx + c = a

1 Automaty niedeterministyczne

LISTA 1 ZADANIE 1 a) 41 x =5 podnosimy obustronnie do kwadratu i otrzymujemy: 41 x =5 x 5 x przechodzimy na system dziesiętny: 4x 1 1=25 4x =24

Rachunek prawdopodobieństwa (Elektronika, studia niestacjonarne) Wykład 1

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0,

Regionalne Koło Matematyczne

Ćwiczenia z ułamkami

Kryptologia przykład metody RSA

Rozwiązywanie układów równań liniowych

Typy zadań kombinatorycznych:

W. Guzicki Próbna matura, grudzień 2014 r. poziom rozszerzony 1

KONKURS MATEMATYCZNY KOMA 2018

Ciała i wielomiany 1. przez 1, i nazywamy jedynką, zaś element odwrotny do a 0 względem działania oznaczamy przez a 1, i nazywamy odwrotnością a);

Indukcja matematyczna

Metoda rozdzielania zmiennych

1 Nierówność Minkowskiego i Hoeldera

Sumy kwadratów kolejnych liczb naturalnych

0 --> 5, 1 --> 7, 2 --> 9, 3 -->1, 4 --> 3, 5 --> 5, 6 --> 7, 7 --> 9, 8 --> 1, 9 --> 3.

Matematyka dyskretna. Andrzej Łachwa, UJ, A/14

Teoria ciała stałego Cz. I

Matematyczna wieża Babel. 4. Ograniczone maszyny Turinga o językach kontekstowych materiały do ćwiczeń

Matematyka dyskretna. Andrzej Łachwa, UJ, /14

5. OKREŚLANIE WARTOŚCI LOGICZNEJ ZDAŃ ZŁOŻONYCH

Matematyka dyskretna. Andrzej Łachwa, UJ, A/15

Matematyka dyskretna. Andrzej Łachwa, UJ, B/14

Matematyka A kolokwium 26 kwietnia 2017 r., godz. 18:05 20:00. i = = i. +i sin ) = 1024(cos 5π+i sin 5π) =

Moneta 1 Moneta 2 Kostka O, R O,R 1,2,3,4,5, Moneta 1 Moneta 2 Kostka O O ( )

Algebra liniowa z geometrią. wykład I

Relacje. opracował Maciej Grzesiak. 17 października 2011

WEP: przykład statystycznego ataku na źle zaprojektowany algorytm szyfrowania

Indukcja matematyczna. Zasada minimum. Zastosowania.

Prezydent wszystkich kombinacji czyli rzecz o filtrowaniu systemów Lotto

3. Wykład Układy równań liniowych.

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Wstęp do Informatyki zadania ze złożoności obliczeniowej z rozwiązaniami

0 + 0 = 0, = 1, = 1, = 0.

Podstawowe struktury algebraiczne

INŻYNIERIA BEZPIECZEŃSTWA LABORATORIUM NR 2 ALGORYTM XOR ŁAMANIE ALGORYTMU XOR

A i. i=1. i=1. i=1. i=1. W dalszej części skryptu będziemy mieli najczęściej do czynienia z miarami określonymi na rodzinach, które są σ - algebrami.

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =

Konrad Słodowicz sk30792 AR22 Zadanie domowe satelita

Zadania z ćwiczeń #18 (pon. 7 maja) Matematyka Dyskretna

Znaleźć wzór ogólny i zbadać istnienie granicy ciągu określonego rekurencyjnie:

Podział sieci na podsieci wytłumaczenie

FUNKCJA LINIOWA - WYKRES. y = ax + b. a i b to współczynniki funkcji, które mają wartości liczbowe

4. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych.

Warmińsko-Mazurskie Zawody Matematyczne Eliminacje cykl styczniowy Poziom: szkoły ponadgimnazjalne, 10 punktów za każde zadanie

Joanna Kluczenko 1. Spotkania z matematyka

LXI Olimpiada Matematyczna

Przykładowe zadania z teorii liczb

Kurs ZDAJ MATURĘ Z MATEMATYKI MODUŁ 2 Teoria liczby rzeczywiste cz.2

Kongruencje twierdzenie Wilsona

W. Guzicki Zadanie IV z Informatora Maturalnego poziom rozszerzony 1

YRAŻENIA ALGEBRAICZNE

Co to jest niewiadoma? Co to są liczby ujemne?

II Powiatowy Konkurs Matematyczny dla uczniów gimnazjum organizowany przez II LO im. Marii Skłodowskiej-Curie w Końskich

Ciągi Podzbiory Symbol Newtona Zasada szufladkowa Dirichleta Zasada włączania i wyłączania. Ilość najkrótszych dróg. Kombinatoryka. Magdalena Lemańska

Wstęp do metod numerycznych Eliminacja Gaussa Równania macierzowe. P. F. Góra

DYDAKTYKA ZAGADNIENIA CYFROWE ZAGADNIENIA CYFROWE

iks plus trzy dzielone na dwa iks razy iks plus pięć

Transkrypt:

Zadania z ćwiczeń #6 (pt 17 marca) Matematyka Dyskretna Enigma była maszyną do szyfrowania, używaną od 1920 m.in. w Niemczech. Podstawowa wersja ma: 26 klawiszy, 26 lampek, 3 walcowate rotory na osi zakończonej reflektorem. Każdy rotor ma po 26 styków z obu stron, lewa strona jest jakoś wewnętrznie sparowana z prawą stroną. Reflektor ma 26 styków z jednej strony, które łączy parami miedzy sobą (bez żadnych pętli czy jednokierunkowych diod). Wciśnięcie klawisza, np. z literą a, powodowało połączenie: od baterii, przez wejście a po prawej stronie prawego rotora do jego wyjścia po lewej stronie, podobnie przez środkowy rotor, i lewy, do reflektora, po czym z powrotem przez lewy, środkowy i prawy rotor, aż do lampki połączonej z odpowiednim wyjściem prawego rotora (np. g). Lampka połączona ze wciśniętym klawiszem była rozłączana, więc zapalała sie tylko lampka na drugim końcu połączenia (patrz rysunek). Wciśnięcie w tej samej konfiguracji np. g spowodowałoby zapalenie lampki litery a, co pozwala na odkodowanie wiadomości. Po wciśnięciu każdego klawisza prawy rotor się obraca o jedną literkę. Co 26 wciśnięć obraca się środkowy rotor, co 26 2 lewy (więc dopiero po 26 3 wciśnięciach maszyna wraca do początkowej konfiguracji). Przez to kolejne litery tekstu są kodowane przez a priori zupełnie różne permutacje. Polacy zakupili (w 1928) komercyjną wersję Enigmy, więc wiedzieli jak działa, ale nie znali połączeń w rotorach w wariantach używanych przez armię niemiecką. Danego dnia każda wiadomość z danej stacji była kodowana zaczynając od tej samej konfiguracji: tzn. wyboru trzech rotorów i ich początkowego ułożenia. Ustalmy jakąś początkową konfigurację i skupmy się na pierwszych sześciu literach kodowanego tekstu: x 1 x 2 x 3 x 4 x 5 x 6. Niech P (x 1 )Q(x 2 )R(x 3 )S(x 4 )T (x 5 )U(x 6 ) oznacza otrzymany zakodowany tekst. Tzn. jeśli wciśnięcie początkowo klawisza a zapala lampkę g, to piszemy P (a) = g; jeśli wciśnięcie potem znowu a zapala c, to Q(a) = c, itd. Zauważmy, że np. Q(x 2 ) zależy tylko od x 2 (bo konfiguracja po wciśnieciu pierwszej litery nie zależy od tej litery), więc jest to funkcja z n-elementowego zbioru liter (n = 26) w ten sam zbiór. Skoro można wiadomość jednoznacznie odszyfrować litera po literze (wpisując szyfrogram i odczytując lampki, zaczynając od tej samej konfiguracji), to jest to funkcja odwracalna, czyli permutacja. Można powiedzieć trochę więcej: Q1. Jaki typ (=sygnaturę) może mieć permutacja P? Przypomnienie: typ permutacji mówi ile jest cykli każdej długości, np.: ( 12345 45132 ) ma typ 21 3 1, bo jej cykle to [1, 4, 3] oraz [2, 5] (1 4 3 1 oraz 2 5 2). i i ma typ 1 n, bo każdy punkt jest cyklem jedno-elementowym; i i + 1(mod n) ma typ n 1, bo tworzy jeden cykl [1234... n]. 1

Q2. Ile jest permutacji o takim typie? Ogólniej (ale niewiele trudniej), ile jest permutacji o typie 1 λ 1... n λn? ( i iλ i = n). Szyfogramy były wysyłane radiem, więc łatwo je podsłuchać. Niemcy każdorazowo wysyłali najpierw 6 liter, dalsze dopiero po przerwie. Pewnego dnia podsłuchano np. takie szóstki: fowvat wrtyuo qvtnmo kophau evprmu qmlnxz wvqymk dgybhj orcdua mijwce abocrh coeiaw ntplbu zugmcf lhmqzp... Q3. Znajdź jakąś powtarzającą się wiele razy zależność. Q4. Co ta zależność mówi nam o permutacjach P, Q, R, S, T, U? (wszystkie szóstki z tego dnia zostały zakodowane tymi permutacjami, wiemy o nich tylko tyle co z poprzedniego zadania). Q5. Z odpowiedzi do poprzedniego pytania wiemy już, że Polacy każdego dnia mogli wywnioskować praktycznie dokładnie jaką permutacją jest złożenie P S. Pokaż, że każda permutacja jest złożeniem dwóch inwolucji. Dla chętnych: pokaż, że P S (złożenie dwóch inwolucji bez punktów stałych) musi mieć typ 1 λ 1... n λn, w którym każde λ i jest parzyste. Dowód okaże się kluczowy dla odtworzenia P, S z samego P S. Komentarz: to ostatnie twierdzonko niektórzy ponoć nazywają twierdzeniem, które wygrało WWII. Ściślej rzecz biorąc ważny jest jego dowód (niżej) widać w nim, że czerwono-niebieskie cykle tworzone przez (nieznane nam) parowania P, S implikują dwa cykle permutacji P S tej samej długości. Jeśli więc znamy P S i widzimy, że ma mało cykli, to możemy odgadnąć które pary powstały razem, odgadnąć po jednym czerwonym parowaniu z P i wywnioskować z tego dość łatwo wszystkie pozostałe parowania w P i S. Na przykład jeśli znamy P S = [a][d][bifg][hjce], to cykle można sparować tylko na jeden sposób: a, d musiały należeć do jednego czerwono-niebieskiego cyklu, zaś b, i, f, g, h, j, c, e musiały należeć do drugiego. Rozważając cztery możliwości dla P (b) {h, j, c, e} dostajemy wszystkie cztery możliwe rozkłady: P = [a, d][b, h][i, e][f, c][g, j] S = [a, d][h, i][e, f][c, g][j, b], P = [a, d][b, j][i, h][f, e][g, c] P = [a, d][b, c][i, j][f, h][g, e] P = [a, d][b, e][i, c][f, j][g, h] S = [a, d][j, i][h, f][e, g][c, b], S = [a, d][c, i][j, f][h, g][e, b], S = [a, d][e, i][c, f][j, g][h, b]. To sprowadza pytania o P, Q, R, S, T, U do małej liczby wyborów, o ile nie będzie za wiele cykli. Poznanie P, Q,... pozwala już złamać całe kodowanie - wymaga to trochę chałupniczego wysiłku, ciekawi mogą znaleźć opis niżej. Pozostaje nam pokazać, że oczekiwana liczba cykli jest mała. Q6. Jaka jest oczekiwana liczba cykli długości k, dla ustalonego k? Dla uproszczenia rozważmy zupełnie losową permutację (każdą z prawdopodobieństwem 1 n! ). (Wartość oczekiwana X to suma po wszystkich możliwych zdarzeniach z (prawdopodobieństwa zdarzenia) (wartość X w tym zdarzeniu).) Q7. Jaka jest oczekiwana liczba wszystkich cykli w losowej permutacji? 2

Podpowiedzi P1. Typ permutacji P Z opisu wynika, że jeśli a jest kodowane na g, to g byłoby kodowane na a po prostu te dwie literki są połączone kablem, przy ustalonej chwilowej pozycji rotorów. Wynika też, że a nigdy nie jest kodowane na a: reflektor jest bez pętli, po prostu paruje, zaś w rotorach różne litery przechodzą na różne (bo to permutacje=bijekcje), więc każda litera tekstu (wciśnięta klawiszem) była różna od odpowiadającej jej litery szyfrogramu (zapalonej lampki). Więc P ma dwie własności: P jest inwolucją, tzn. P = P 1, równoważnie P 2 = P P = id (tzn. P (P (x)) = x) P nie ma punktów stałych, tzn. P (x) x dla każdego x. P2. Liczba permutacji o danym typie Żeby policzyć permutacje o danym typie (np. 2 3 3 1 ), pomysł jest taki, żeby zliczyć na dwa sposoby ich wszystkie zapisy. Inaczej mówiąc można: napisać dowolną permutację elementów (np. 745319268), dopisać do niej nawiasy od najmniejszych tak, żeby otrzymać zapis cyklowy permutacji o tym typie (np. [74][53][19][268]) i policzyć ile razy otrzymamy tę samą permutację w ten sposób (np. [74][53][19][682], [35][74][19][682],...). P3. Zależność w szóstkach Enigma nic nie dodaje ani nie mnoży, generalnie tylko zamienia symbole w dowolnych kolejnościach, więc możemy oczekiwać raczej tylko znalezienia zależności w tym gdzie występują te same litery, a gdzie różne. Gdzie występują te same? P4. Co zależność mówi o P, Q, R, S, T, U S(P 1 (w)) =? P5. Złożenie inwolucji Najpierw pokaż, że każdy cykl można otrzymać jako złożenie dwóch inwolucji. Dla dwóch inwolucji bez punktów stałych (czyli parowań zamieniających elementy każdej pary), spójrz na graf otrzymany przez dorysowanie krawędzi dla każdej pary w każdej inwolucji. P6. Oczekiwana liczba cykli długości k Chcemy policzyć każdą permutację tyle razy, ile jest w niej cykli długości k (i pomnożyć 1 przez prawdopodobieństwo uzyskania tej permutacji n! ). Możemy to zrobić zliczając pary (permutacja, cykl długości k w tej permutacji). 3

Odpowiedzi A1. Typ permutacji P Po pierwsze, P jest inwolucją, czyli P (P (x)) = x dla każdego x. Gdybyśmy mieli cykl długości 3, np. x y z... x, to P (P (x)) = z x, sprzeczność. Cykle długości 1 i 2 możemy mieć dowolne, czyli P jest inwolucją wtedy i tylko wtedy gdy ma typ 1 λ 1 dla jakichś λ 1, λ 2. Po drugie, P nie ma punktów stałych, czyli P (x) x dla każdego x. To znaczy dokładnie tyle, że nie ma cykli długości 1. Zatem jedyny możliwy typ P to 2 n/2 (np. P = [ax][bc][dz][eg]... ). A2. Liczba permutacji o danym typie Zapisujemy dowolną permutację elementów (na n! sposobów) i dopisujemy nawiasy od najmniejszych (na 1 sposób), by otrzymać zapis cyklowy permutacji o typie 1 λ 1... n λn. Takie zapisy możemy alternatywnie wypisać wybierając najpierw permutację o tym typie (na X sposobów), wybierając (na λ i! sposobów) kolejność cykli długości i w zapisie, i dla każdego cyklu wybrać od którego elementu go wypisać (na i sposobów dla każdego z λ i cykli długości i). Czyli n! = X λ 1!λ 2! λ n! 1 λ 1... n λn, X = n! λ 1!λ 2! λ n! 1 λ 1...n λn. W szczególności inwolucji bez punktów stałych (czyli sposobów na to, żeby wszystkie elementy zbioru {1,..., n} poparować) jest (dla n parzystego, inaczej nie istnieją) n! n 2!2. n 2 Dla n = 26 to jest ponad 10 12 (podczas gdy 26! jest rzędu 10 26 ). A3. Zależność w szóstkach Zależność jest taka: jeśli w jakichś dwóch szóstkach powtarza się i-ta litera, to powtarza się też i + 3-cia. Np. wrtyuo oraz wvqymk, albo wrtyuo oraz orcdua. Inaczej mówiąc, pierwsze litera szyfrogramu determinuje czwartą, druga piątą i trzecia szóstą. Z budowy maszyny wiemy, że gdyby czwarta litera tekstu była dowolna, to czwarta w szyfrogramie też by była dowolna. Zatem pierwsza litera tekstu determinuje czwartą literę tekstu, itd. Można więc podejrzewać, że po prostu pierwsza litera tekstu jest równa czwartej, czyli wysyłano zawsze x 1 x 2 x 3 x 1 x 2 x 3. I rzeczywiście, Niemcy mieli ustalone w książce kodowej początkowe ustawienia maszyny każdego dnia (podzbiór 3 z 5 i kolejność rotorów, początkowy obrót rotorów, od 1930 kabelki), od których każdy operator Enigmy zaczynał. Operator wybierał potem jako swój klucz trzy literki określające nowe położenie rotorów (okienka uwidaczniają po jednej literce na każdym rotorze) i wysyłał klucz dwa razy (bo transmisja radiowa była dość kiepska), zaszyfrowany ustawieniem z książki. Potem ustawiał rotory zgodnie z kluczem, resztę zostawiając jak w książce. A4. Co zależność mówi o P, Q, R, S, T, U Patrząc na np. wrtyuo wiemy, że jeśli jakąś nieznaną nam pierwszą literę x kodowano na P (x) = w, to tę samą literkę kodowano w czwartej pozycji na S(x) = y. Zatem S(P 1 (w)) = S(x) = y. Podobnie S(P 1 (r)) = u, S(P 1 (t)) = o i tak dalej, dla każdej szóstki poznajemy do trzech wartości permutacji P 1 S = P S (P jest inwolucją). W ten sposób Marian Rejewski w 1932 nie wiedząc nic o permutacjach wewnątrz Enigmy, mając około 80 podsłuchanych szyfrogramów z jednego dnia (o co było dość łatwo), mógł wywnioskować całą permutację P S. 4

A5. Złożenie inwolucji Cykl [1, 2, 3, 4, 5,..., n] można złożyć z dwóch inwolucji jako P S zaczynając np. od założenia, że P zamienia 1 z n. Wtedy S musi zamienic n z 2 (bo S(n) = S(P (1)) = 2), a 1 musi zostawić na miejscu (bo S(1) = S(P (n)) = 1). Z tego wynika, że P musi zamienić 2 z n 1 (bo S(2) = n = S(P (n 1))) i tak dalej. Dostajemy P = [1, n][2, n 1][3, n 2] [ n ] 2, n 2, S = [2, n][3, n 1] [ n ] 2, n 2 + 1 i rzeczywiście P S = [1, 2, 3, 4, 5,..., n]. Jeśli mamy inną permutację, np. chcemy rozłożyć permutację o zapisie cyklowym zawierającym cykl [a, b, c,..., z], to powyższym możemy otrzymać ten cykl jako złożenie dwóch inwolucji ruszających tylko elementy tego cyklu [a, b, c,..., z] = [a, z][b, y]... [n, m] [b, z][c, y]... [n, o][m]. Wystarczy więc rozłożyć te cykle pożądanej permutacji niezależnie od siebie, np. jeśli P S = [a, b, c,..., z][a, b, c, d, e ], to jedną z możliwości jest P = [a, z][b, y]... [n, m][a, e ][b, d ][c ], S = [b, z][c, y]... [n, o][m][b, e ][c, d ]. Dla inwolucji P, S bez punktów stałych, ich parowania układają się w cykle parzystej długości: tzn. jeśli P zamienia a z jakimś b, to S zamienia b z jakimś c, P zamienia c z jakimś d i tak dalej, aż się zapętlimy i np. S zamienia z z a. Wtedy złożenie tych P z S permutuje a na c, c na e,..., w na y, w końcu y na a, zaś b permutuje na z, z na x,..., w końcu d na b. Czyli dla każdego cyklu w grafie tych krawędzi tworzą się dwa cykle równej długości w permutacji P S. Zatem cykle w P S występują parami i typ tej permutacji musi mieć wszystkie λ i parzyste. 4 5 4 5 9 3 9 3 7 1 7 1 0 8 0 8 6 2 6 2 Przykład: P na czerwono, S na niebiesko, P S po prawej. A6. Oczekiwana liczba cykli długości k Wartość oczekiwaną liczby cykli długości k otrzymamy z definicji sumując po wszystkich permutacjach: liczbę cykli w danej permutacji razy prawdopodobieństwo jej uzyskania (równe 1 n! ). Tę sumę można przedstawić jako suma po wszystkich permutacjach, suma po wszystkich cyklach długości k tej permutacji z 1 n! (stała). Zamieniając teraz kolejność sumowania mamy: suma po wszystkich cyklach długości k w n-elementowym zbiorze, suma po wszystkich permutacjach zawierających ten cykl z 1 n!. (Inaczej mówiąc zliczamy pary (permutacja, cykl długości k w tej permutacji) na dwa sposoby). Dla ustalonego cyklu długości k, permutacji go zawierających jest (n k)! (po prostu musimy wybrać permutację na pozostałych elementach). Możliwych cykli długości k w n-elementowym zbiorze jest ( n k) (k 1)! (wybieramy elementy cyklu i wybieramy w jakiej kolejności cykl odwiedza te elementy*). Zatem szukana wartość oczekiwana to ( n ) k (k 1)! (n k)! 1 n! = 1 k. 5

*Jeśli chcemy wybrać kolejność elementów cyklu na danych k elementach, to możemy to zrobić ustalając np. najmniejszy na początek, jego następnik na (k 1) sposobów, następny na (k 2) i tak dalej, aż do ostatniego, który musi wrócić na początek. Inaczej mówiąc możemy wybrać zapis cyklowy na k! sposobów i każdy cykl otrzymamy na k sposobów (np. [afhc] = [fhca] = [hcaf] = [cafh]). A7. Oczekiwana liczba wszystkich cykli Z poprzedniego zadania i z liniowości wartości oczekiwanej (wartość oczekiwana sumy zmiennych to suma wartości oczekiwanych poszczególnych zmiennych) wychodzi H n. H n jest z grubsza logarytmiczne w n, więc oczekiwana liczba cykli jest rzeczywiście mała (dla n = 26 wynosi H 26 3.9). Próbując rozłożyć nasze P S dostaniemy dzięki temu niewiele możliwości do rozpatrzenia. 6

Dodatek: trochę więcej o łamaniu Enigmy Znamy już powiedzmy P, Q, R, S, T, U. Jak stąd wywnioskowano połączenia w rotorach? Niech X, Y, Z oznaczają permutacje odpowiadające prawemu, środkowemu i lewemu rotorowi w początkowej pozycji. Niech W oznacza permutację odpowiadającą reflektorowi (jest to inwolucja bez punktów stałych). Wtedy P = XY ZW Z 1 Y 1 X 1 (pomijam już znak złożenia ). Obrót prawego rotora odpowiada zamianie X na ρxρ 1, gdzie ρ = [abc... z] po prostu przechodzi na kolejną literkę. Dla pierwszych 26 znaków fragment Y ZW Z 1 Y 1 się nie zmienia, więc nazwijmy go W. Wtedy P = XW X 1 Q = ρxρ 1 W ρx 1 ρ 1 R = ρ 2 Xρ 2 W ρ 2 X 1 ρ 2... U = ρ 5 Xρ 5 W ρ 5 X 1 ρ 5 Znamy P,..., U, ρ, nie znamy X, W. Ciut upraszczając znamy np. Xρ i W ρ i X 1 dla i = 0, 1,..., 5, bo P := P = Xρ 0 W ρ 0 X 1 Q := ρ 1 Qρ = Xρ 1 W ρ 1 X 1... U := ρ 5 Uρ 5 = Xρ 5 W ρ 5 X 1 Mnożąc dwie kolejne takie permutacje mamy np. P Q = X(W ρ 1 W ρ)x 1 Q R = Xρ 1 (W ρ 1 W ρ)ρx 1 R S = Xρ 2 (W ρ 1 W ρ)ρ 2 X 1 Oznaczmy ten wspólny nawias jako W. Wtedy P Q = XW X 1 Q R = Xρ 1 W ρ 1 X 1 R S = Xρ 2 W ρ 2 X 1 Wstawiając W = X 1 P Q X z pierwszego równania dostajemy w drugim Podobnie... Q R = Xρ 1 X 1 P Q Xρ 1 X 1 R S = Xρ 1 X 1 Q R Xρ 1 X 1... Jeśli oznaczymy X := Xρ 1 X 1, to zostaje nam jedna niewiadoma i aż cztery równania: Q R = X P Q X, R S = X Q R X, S T = X R S X, T U = X S T X Łatwo zauważyć, że X jest cyklem (bo ρ 1 jest cyklem) i znając P Q, Q R itd. już ręcznie wykluczymy wszystkie oprócz jednego rozwiązania, czasem dwóch. Znajomość X = Xρ 1 X 1 daje tylko 26 możliwości na X, które możemy też już sprawdzić ręcznie. 7

I tak poznajemy połączenia w prawym rotorze. W różnych dniach różne rotory były po prawej, więc w końcu Polacy poznali wszystkie. Mieli pewną komplikację przez to, że Enigma w wersjach armii miała dodatkowy panel zamieniający parami wybrane danego dnia elementy; ale w końcu od Francuzów dostali starą książkę kodów, w której te pary były wypisane. Znając połączenia w rotorach pozostaje danego dnia sprawdzić jakie jest początkowe ustawienie rotorów (jedno z 3!26 3 możliwych). Jedną z kilku metod wymyślonych przez Polaków było pokatalogowanie wszystkich za pomocą mechanicznego tzw. cyklometru w zależności od tego jakie były cykle dobrze znanej permutacji P S zazwyczaj jednoznacznie identyfikowało to początkowe ustawienie. Tak to działało od końca 1932 do końca 1938. Potem Niemcy dodali dwa rotory i odtąd z pięciu wybierało się trzy niewiele więcej do pokatalogowania, ale jednak na granicy polskich możliwości. W sierpniu 1939 Polacy w spotkaniu ze służbami francuskimi i brytyjskimi przekazują wszystko co wiedzą o połączeniach w Enigmie i metodach łamania. Niemcy w trakcie wojny dodawali rotory, kabelki, a w końcu przestali wysyłać klucze w sposób, który pozwalał poznać P S i potrzebne były zupełnie nowe metody, opracowane przez Turinga i Welchmana. Więcej: np. http://en.wikipedia.org/wiki/cryptanalysis_of_the_enigma, https: //cryptocellar.web.cern.ch/cryptocellar/enigma/rew80.pdf oraz Facts and Myths of Enigma: Breaking Stereotypes. 8