Historie počítačů III. – spojení křížovkáři

7. 11. 2008

Sdílet

 Autor: Redakce

Enigma, Fau Ajns až Zet Fýr

Prvního září 1939 překročilo nacistické Německo hranice Polska. Sebevědomě tak vykročilo do války, ve které měli mít Němci navrch. Nemohli tušit, že první a dost možná rozhodující bitva už je dávno prohraná. A zrovna s Poláky.

Polák Marian Rejewski strávil velkou část života jako účetní. Vypadal přesně jako účetní: uhlazený, obrýlený, perfektně vyžehlený. Spokojeně ženatý, dvě děti. V září 1939 oslavil čtyřiatřicet let.
A ještě jeden střípek, nutný k poskládání celého příběhu o zrození digitálních počítačů: v roce 1926 polské tajné služby zaregistrovaly změnu šifry německého námořnictva. Charakter nové šifry vyvolal domněnku, že Němci začali používat nějaký mechanický šifrovací stroj...

Malé polské vítězství

Podezření se potvrdilo v roce 1928. Polským celníkům se dostala do rukou zásilka, omylem doručená do Varšavy. Její zadržení vyvolalo diplomatické protesty z německého velvyslanectví, což podpořilo polskou zvědavost. Celníci zásilku otevřeli a odhalili šifrovací stroj, vzápětí se Němcům omluvili a zásilku poslušně vrátili. Špionážní drama vyvrcholilo o několik týdnů později, kdy polské tajné služby pod falešnou identitou jeden z komerčních šifrovacích strojů Enigma získaly pro vlastní výzkum.
Až do roku 1932 se tajemná Enigma dokázala polskému zájmu ubránit. Příběhy nacistického Německa, Mariana Rejewského a Enigmy se střetly v říjnu tohoto roku.

V té době se nadějný matematik Rejewski stal zaměstnancem tajných služeb, v šifrovacím oddělení měl za úkol prolamovat německé kódy. Na úvod dostal nejtěžší možný úkol: poradit si s Enigmou. Dřevěná bedýnka ukrývala primitivní elektromechanický jednoúčelový počítač:  klávesnici, „displej“, zásuvku, šifrovací rotory a útroby s nespočtem propojení. Klíčem k prolomení šifry Enigmy bylo právě komplikované zadrátování, ukryté hluboko uvnitř.


Enigma před rokem 1938, s třemi rotory a odkrytým zapojením

Nebýt neuvěřitelné chyby německých tajných služeb, byl by Rejewského úkol takřka neřešitelný. Takhle měl matematik k dispozici kompletní šifrovací stroj včetně manuálu s popisem, jak zašifrovat jednoduchou zprávu. I tak šlo o náročný úkol a metody, standardně používané v kryptografii poloviny dvacátého století (statistika a lingvistika), postupně ztroskotaly. Úspěch slavil až experimentální Rejewského přístup, postavený na teoretické matematice. Šifru prolomil spolu se dvěma kolegy během pěti týdnů.

Bomba kryptologiczna

Bitva s Enigmou tím ale teprve začala. Němci totiž každý den měnili šifrovací klíč, který bylo nejdříve třeba odhalit, aby mohlo začít skutečné dešifrování zprávy. Polští matematici stáli před novým úkolem: vytvořit metody, pomocí kterých dokáží klíč odhalit do několika hodin od změny. Němci navíc často měnili operační procedury a tím narušovali známé metody.


Německý generál Heinz Guderian při francouzském tažení. V popředí je vidět Enigma v akci

Z polsko-německého souboje vzešla Bomba (v originále Bomba kryptologiczna): elektromechanický jednoúčelový dešifrovací počítač a inspirace pro budoucí britské počítače. Nešlo o nic jiného, než propojení šesti kopií Enigmy s účelem odhalit aktuální šifrovací klíč. Bomba dokázala přijít s klíčem k tehdejší Enigmě do dvou hodin po jeho zveřejnění. Němci v roce 1938 šifru zkomplikovali; problém s hledáním klíče se ovšem kvůli obsazení Polska přesunul do Spojeného království. Právě souboj o co nejrychlejší rozluštění každodenního klíče vyvolal potřebu co nejvýkonnějšího výpočetního centra. Přesná podoba výpočetních algoritmů se měnila zároveň s modifikacemi Enigmy; proto musel být i stroj pro dešifrování univerzální.

Pokračování německého příběhu je známé, k Enigmě se ještě vrátíme. Zbývá tedy dopovědět příběh Mariana Rejewského. Ten se jen několik týdnů před obsazením Polska sešel se zástupci Francie a Spojeného království. Právě jeho popis Enigmy a předvedení Bomby pak stálo za spojeneckými úspěchy dešifrovat německou tajnou korespondenci. Během války ani dlouho po ní se ale Spojenci o Rejewském nezmiňovali a on sám musel v komunistickém Polsku o spolupráci se Západem mlčet. Až v roce 1973 francouzský generál (a Rejewského válečný hostitel) Gustave Bertrand vydal knihu o prolomení Enigmy a Rejewski vzápětí zveřejnil své paměti. Po dvaceti letech strávených jako účetní a knihovník pod stálou kontrolou polské tajné služby si tak na důchod mohl začít užívat válečnou slávu. Zbylo mu na to sedm let.

Fau Ajns až Zet Fýr

Zatímco Rejewski laboroval s Enigmou, o pět let mladší německý konstruktér Konrád Zuse si už pohrával s myšlenkou na víceúčelový programovatelný digitální počítač. Nešlo ovšem o válečný produkt. „Jaké matematické problémy by měl stroj umět vyřešit?“, napsal si do deníčku v roce 1934. Odpověděl si o čtyři roky později strojem V1 ("V" jako Versuchsmodell neboli Zkušební model). Počítač ukrýval nejednu technologickou novinku: především binární logiku (tehdy nazývanou „ano/ne“), inspirovanou mechanickými součástkami a strojům přirozenou, dále na svou dobu přelomovou výpočetní jednotku, pracující s plovoucí řádovou čárkou, plně adresovatelnou paměť, binární i decimální vstupy i výstupy; založené na principu děrné pásky. Vrcholem Zuseho díla byla programovatelná řídící jednotka.


Z1 – počítač z roku 1938 v bytě manželů Zuseových

Propojení jednotlivých prvků měly na starost kovové plátky, které fungovaly čistě mechanicky; elektřinu tento stroj používal pouze k „taktování procesoru“: pracoval na frekvenci 1 Hz (tedy 1× za sekundu). První binární počítač V1 stával v obýváku jeho rodičů a válku nepřežil. Ani druhý v pořadí, V2, se nedočkal konce války. Padl za oběť spojeneckému náletu. Nebyl ovšem nijak revoluční a jedinou novinkou oproti V1 představovalo využití vysloužilých telefonních relátek místo kovových plíšků na některé jeho části.

Do historie se Zuse zapsal až svým třetím výtvorem. V3 přidal ke struktuře předchozích modelů spolehlivost, postavenou na 2 300 vysloužilých elektromechanických relátcích. Struktura s oddělenými součástmi (vstup a výstup, řídící jednotka, paměť, procesor s dvěma registry) téměř dokonale odpovídala von Neumannovu schématu, zformulovanému o pět let později. Možnost pracovat při programování V3 se smyčkami zase znamenala výpočetní kapacitu ekvivalentní Turingovu stroji (jak von Neumannovu architekturu, tak Turingův stroj najdete v rámečku).

V obou zásadních charakteristikách dosáhl osamělý inženýr Zuse světového prvenství, aniž o tom on nebo svět věděli. „Můj stroj by dovedl hrát šachy,“ chlubil se v roce 1941 úzkému kruhu svých přátel. Důkaz, že dovede, byl proveden až v roce 1998, tři roky po Zuseově smrti. Osud V3 se nicméně završil už v roce 1945. Jak jinak, než při bombardování Berlína.


Karikatura Střelci (1926) německého génia Konrada Zuseho

Čtvrý exemplář, V4, přežil jen díky záměně s raketou V4, plánem na vylepšení zkázonosných raket V1 a V2. Zuse jej vyvíjel od roku 1942 za účelem sériové komerční produkce. V každodenně bombardovaném Berlíně, kterému padl za oběť V3, neměl ani jeho nový projekt šanci na přežití. Zuse proto uprchl na venkov; počítač V4 vydával za součást projektu vojenské rakety, díky tomu získal i podporu dezorientované armády.

Transport nakonec dorazil do podzemních prostor v Nordhausenu, kde se rakety vyráběly. Zuse chtěl svůj počítač sestavit právě zde, v kilometrových tunelech pod horami. Plány mu zhatil až pohled na tisíce zajatců koncentračního tábora, montujících rakety v nelidských podmínkách. Otřesený Zuse přejmenoval svůj projekt z V4 na Z4 (změnu později převzaly i předchozí prototypy), aby nebyl spojován s raketou. Zuseho konvoj odcestoval do hor. Počítač Z4 se ovšem nepodařilo dostat do funkční podoby ještě dlouho po konci války. Místo toho se jeho části válely ukryté ve stodole horského hotýlku kdesi v Bavorsku.

Zuse, Turing a ENIAC

Boje o počítací stroje

Když Poláci předvedli v červenci 1939 Britům svou Bombu, britské tajné služby zajásaly: Enigma se dá prolomit. Patnáctého září téhož roku Britové otevřeli v sídle Bletchley Park na jihovýchodě Anglie kryptografickou kancelář, která měla za úkol zachytávat německé zprávy a dešifrovat je. Jejími zaměstnanci se v průběhu války stali slavní matematici, fyzici, inženýři, spisovatelé, šachisti nebo křížovkáři (jednou z přijímacích metod bylo vyluštění křížovky v deníku The Daily Telegraph; rychlost řešení pod dvanáct minut znamenala nabídku spolupráce). Počátečních několik desítek nadaných hlav se v průběhu války rozrostlo na deset tisíc lidí a stovky počítačů. Obsluhu počítačů obstarávaly především válečné ženy.

Vůbec nejslavnějším zaměstnancem kryptologické kanceláře se stal matematik Alan Turing. V Bletchley pracoval od počátku, jako sedmadvacetiletý mladík dokonce velel „Chýši 8“, oddělení zodpovědnému za dešifrování německé námořní šifry. Byl při setkání s polskými kryptografy a navrhl vylepšenou britskou Bombu pro dešifrování Enigmy.


Vylodění v Normandii. Nebýt britských Colossů, břeh by vypadal jinak

Turing pomáhal také při prolomení dálnopisné šifry Lorenz SZ 40/42 (britské kódové označení „tuňák“). Zvláštní důležitost šifry spočívala v tom, že dálnopis byl výsadou německého štábu, zprávy kódované touto šifrou tedy enormně důležité. V srpnu 1941 udělali němečtí operátoři další kritickou chybu. Nejprve operátor dálnopisu poslal šifrovanou zprávu z Atén do Vídně. Z druhé strany se ozvalo nešifrované „nemám to – pošli prosím znovu“. Operátor tedy poslal zprávu znovu, bez změny nastavení přístroje, zato s mnoha drobnými změnami oproti původnímu textu. Angličani tak měli k dispozici dvě odhadnutelné verze textu šifrovaného při stejném nastavení. Prolomit šifru trvalo čtyři měsíce

Opakoval se příběh Enigmy. Ke včasnému dešifrování původní zprávy bylo třeba rychle uhodnout každodenní nastavení šifrovacího stroje. Pro člověka přetěžký úkol, ale Britové už věděli, kam se mají obrátit. Tentokrát to byl matematik Max Newman a inženýr Tommy Flowers. Nejprve se v Newmanových rukou zrodil stroj Heath Robinson, úspěšný koncept dešifrovacího počítače. Později společně navrhnuli a sestrojili dešifrovací mašinu Colossus, první programovatelný, elektronický a binární počítač. Doba dešifrování „tuňáka“ se zkrátila z několika týdnů na pár hodin. První exemplář tohoto počítače vyhlásil Ose válku v lednu 1944 a přispěl svým dílem k úspěšnému vylodění v Normandii.

Za mořem žije drak

Evropští vývojáři, popohnaní válkou, měli zpočátku před svými kolegy ze Spojených států náskok. Geniální osobnosti typu Zuseho nebo Turinga se za mořem soustředily na jiné projekty (převážně sestrojení atomové bomby v rámci projektu Manhattan). První americký počítač, Atanasoff-Berry Computer, přišel na svět až v létě 1941, a neměl nic společného s armádou – vznikl partyzánsky na státní univerzitě v Iowě. Přestože šlo o první čistě elektronický počítač na světě, nedokázal nic víc než počítat lineární rovnice. Druhý zajímavý projekt, počítač Harvard Mark I, vyvinutý v dílnách IBM, už měl za svými evropskými konkurenty mnohem menší zpoždění a uměl toho víc. Vznikl v únoru 1944, pouhý měsíc po britském Colossu. Z hlediska využití šlo o univerzální, elektromechanický, digitální počítač. Myslel ovšem trochu zpátečnicky v desítkové soustavě.

U desítkové soustavy zůstal i první zajímavý projekt ve Spojených státech. Měl sloužit k výpočtu dělostřeleckých tabulek, ale nestihl konec války. Počítač ENIAC, předvedený čtrnáctého února 1946, byl skutečně obří. Vyrostl na 2,6 × 0,9 × 26 metrů a 27 tun a ukrýval 17 468 elektronek, zhruba 7 200 diod, 1 500 relé, 70 tisíc rezistorů a 10 tisíc kondenzátorů.


ENIAC, stroj, který se stal „oficiálním“ prapředkem dnešních počítačů. Jak vzniklo přízvisko „sálový“ asi není potřeba vysvětlovat

Dřívější počítače se mohly pochlubit prvenstvím v některé disciplíně raných konstrukcí: první digitální stroj, první elektronický stroj, první univerzálně programovatelný (a Turing-kompletní) stroj. ENIAC jako první integroval všechny tyto vlastnosti. Proto se právě pro něj vžil titul oficiálního prapředka moderních digitálních počítačů. Že jde o úspěšnou konstrukci, dokazují jeho potomci. Stejnou výpočetní sílu jako kolos, okupující celou halu, má dnes ovšem jeden mikroskopický čip.

Turingův stroj

První otázka, kterou si položili návrháři počítacích strojů, zněla: „co to umí spočítat?“ Odpověď přinesl v roce 1936, dlouho před vznikem univerzálních programovatelných strojů, britský matematik Alan Turing. Turingův stroj je pouze koncept, nejde sestavit. Přesto dokáže na výše uvedenou otázku odpovědět dokonale. Základní úvaha spočívá na tvrzení, že počítač dokáže odpovědět pouze na to, co lze naprogramovat – v matematické řeči "algoritmizovat". Turingův stroj je vlastně matematický popis jakéhokoliv možného algoritmu. Tím odpovídá také na otázku, co počítače nemohou vyřešit. Turingova definice je zároveň testem univerzálnosti počítače; pouze takový počítač, který se dá překreslit do schématu Turingova stroje, je skutečně univerzální. Z prvních strojů splňovaly Turingovo kritérium pouze Zuseho Z3 a americký ENIAC.


Turingův dešifrovací stroj Bombe, inspirovaný polskou Bombou kryptograficznou

Von Neumannova architektura

Maďarský matematik Margittai Neumann János Lajos, vystupující ve Spojených státech pod pseudonymem John von Neumann, se podílel na projektu počítače EDVAC. Na jedné ze svých přednášek v červnu 1945 ukázal návrh architektury moderního počítače. Modulární koncepce počítala se společnou pamětí pro program i data. Von Neumannovo schéma odpovídá nárokům takzvaného Turingova stroje. Přestože nejde o jediný funkční koncept (počítač Harvard Mark I uvedl například tzv. harvardskou architekturu), von Neumannovou architekturu používá v pozměněné podobě většina dnešních počítačů.

Časová osa

1906 – vynález elektronky (Lee De Forest, USA)
1936 – univerzální Turingův stroj (Alan Turing, UK)
1938 – dešifrovací počítač Bomba kryptologiczna (Marian Rejewski, Polsko)
1938 – první binární počítač Z1 (Konrad Zuse, Německo)
1939 – britská Bomba (Alan Turing, UK)
1940 – vzniká společnost Zuse Apparatebau (Konrad Zuse, Německo)
1941 – první plně programovatelný počítač Z3 (Konrad Zuse, Německo)
1942 – první elektronický počítač ABC (Atanasoff a Berry, USA)
1943 – koncept dešifrovacího počítače Heath Robinson (Newman, UK)
1944 – dešifrovací počítač Colossus (Newman a Flowers, UK)
1944 – univerzální počítač Harvard Mark I (Howard Aiken, USA)
1945 – první programovací jazyk Plankalkül (Konrad Zuse, Německo)
1945 – návrh von Neumannovy architektury (John von Neumann, USA)
1946 – počítač ENIAC (Mauchly a Eckert, USA)

bitcoin_skoleni

 Článek vyšel v časopise Extra PC 7/07.

Autor článku