Dvû ãísla za 200 000 dolarû



Podobné dokumenty
HRY S KLASICK MI BODOV MI KOSTKAMI

Matematika v kryptografii. Doc. Ing. Karel Burda, CSc. FEKT VUT v Brně

PROJEKTU ROZVOJE INFRASTRUKTURY OBCE VELKÉ B EZNO

1. Alternativní rozdělení A(p) (Bernoulli) je diskrétní rozdělení, kdy. p(0) = P (X = 0) = 1 p, p(1) = P (X = 1) = p, 0 < p < 1.

11/ Pfiíroda a krajina

INFORMACE. Nov stavební zákon a zmûny zákona o státní památkové péãi 1. díl

Je to, jako byste mûli t m kontrolorû kvality prohlíïejících a schvalujících kaïd Vá dokument ihned po jeho naskenování.

6. T e s t o v á n í h y p o t é z

YTONG - Vy í komfort staveb

Moderní technologie ve studiu aplikované fyziky CZ.1.07/2.2.00/ Reálná čísla

Alternativy kurzové politiky v období pfied vstupem do eurozóny: empirická anal za

TransPocket 1100 / 1200 TransPocket 1500 / 1500 RC / 1500 TIG. Obalená elektroda & WIG DC

KZ - TKZ NÁVOD PRO UÎIVATELE

PRAVIDLA, KTER MI SE STANOVUJÍ PODMÍNKY PRO POSKYTOVÁNÍ DOTACE NA PROJEKTY PROGRAMU ROZVOJE VENKOVA âr NA OBDOBÍ (DÁLE JEN PRAVIDLA )

PRAVIDLA, KTER MI SE STANOVUJÍ PODMÍNKY PRO POSKYTOVÁNÍ DOTACE NA PROJEKTY PROGRAMU ROZVOJE VENKOVA âr NA OBDOBÍ (DÁLE JEN PRAVIDLA )

3. Polynomy Verze 338.

Úlohy domácího kola kategorie C

Modely diskrétní náhodné veličiny. Jiří Neubauer. Katedra ekonometrie, FVL, UO Brno kancelář 69a, tel

Mûsíãník Odborového svazu UNIOS

Y36BEZ Bezpečnost přenosu a zpracování dat. Úvod. Róbert Lórencz. lorencz@fel.cvut.cz

Mûsíãník Odborového svazu UNIOS

c sin Příklad 2 : v trojúhelníku ABC platí : a = 11,6 dm, c = 9 dm, α = Vypočtěte stranu b a zbývající úhly.

Pravděpodobnost a statistika

Exponenciála matice a její užití. fundamentálních matic. Užití mocninných řad pro rovnice druhého řádu

10 je 0,1; nebo taky, že 256

OBSAH. V robky 30 âajové prostírání 30 Obálka 31 Pfiání 32 Zápisník 34 Vánoãní ozdoby 36 Papírové perky 39 Dózy 43 Ta ka 47 Îirafa 48

Řešení: 20. ročník, 2. série

AURATON 2020 PROGRAMOVATELN REGULÁTOR TEPLOTY S T DENNÍM PROGRAMEM A S TEPLOTNÍM ROZSAHEM 0,25 C 10:11 23 C NÁVOD K OBSLUZE

V roãní zpráva ORGANIZÁTOR TRHU S CENN MI PAPÍRY

ZMùKâOVÁNÍ DECALUX - DECAL ET DECALUX - DECAL VT DECALUX - DECAL VT DUPLEX VT Pfiíslu enství 36

Natural. Vlastnosti systému PAM Natural ve srovnání se zv en m zinkováním

Řešení: Dejme tomu, že pan Alois to vezme popořadě od jara do zimy. Pro výběr fotky z jara má Alois dvanáct možností. Tady není co počítat.

EUR 091 PROGRAMOVATELN REGULÁTOR TEPLOTY S T DENNÍM PROGRAMEM NÁVOD K OBSLUZE

FAKULTA INFORMATIKY A MANAGEMENTU UNIVERZITA HRADEC KRÁLOVÉ SEMESTRÁLNÍ PRÁCE. Modely operačního výzkumu 1. Studijní obor:

Kamna na tuhá paliva KAMINO 6 a 8 Návod k pouïití a instalaci V robce: SVT - WAMSLER

Pfiiná íme dûvûru spolehlivou sterilizací. Technologií k jistotû

OBSAH Svíãky Materiály Nástroje a pomûcky Voskové a parafínové svíãky Gelové svíãky

Mûsíãník Odborového svazu UNIOS

Platon. Hydroizolace proti vlhkosti pod dfievûné a laminátové podlahy PODLAHY. Úspora ãasu Cenovû v hodné fie ení Maximální pohodlí. ÚPLNù NOVÉ E ENÍ!

Šifrová ochrana informací věk počítačů PS5-2

v r o ã n í z p r á v a

Sports Leitfaden_02_06_CZ_ohne_ts_logo.qxd :34 Uhr Seite 1 I N F O R M A C E S P O R T S

HLEDÁNÍ WIEFERICHOVÝCH PRVOČÍSEL. 1. Úvod

kolská soustava âeské republiky

Břetislav Fajmon, UMAT FEKT, VUT Brno. Poznámka 1.1. A) první část hodiny (cca 50 minut): představení všech tří metod při řešení jednoho příkladu.

2.2.2 Zlomky I. Předpoklady:

EUR 093 PROGRAMOVATELN REGULÁTOR TEPLOTY S T DENNÍM PROGRAMEM 10:11 23 C NÁVOD K OBSLUZE

Skalární součin je nástroj, jak měřit velikost vektorů a úhly mezi vektory v reálných a komplexních vektorových prostorech.

OBO BUS Systém Inteligentnû stavût znamená inteligenci vestavût

Mûsíãník Odborového svazu UNIOS

150 názorných přehledů, 33 tabulek a 8 příloh

VOLVO BLUE KONTRAKT. Nejãastûj í otázky

PORTRÉT PLEMENE. Pfiírodní tvorové slaví úspûchy. Mainská mývalí

âasopis lesníkû a pfiátel lesa

Teoretická rozdělení

Mûsíãník Odborového svazu UNIOS

Seminář z IVT Algoritmizace. Slovanské gymnázium Olomouc Tomáš Kühr

9. ORLICKÁ P EHRADA KRÁLOVSKÁ PLOCHA âeského BRUSLENÍ

Autodesk Inventor 8 vysunutí

Tématické celky { kontrolní otázky.

Jihoãeský zelený list

Detoxikaãní balíãek bioharmoni

obálka zvût ená :38 Stránka 1 ÎENY &MUÎI v datech ISBN Vydalo v záfií 2005 KÓD PUBLIKACE:

Skupina Testování obsahuje následující moduly: Síla a rozsah výběru, Testy a Kontingenční tabulka.

Descartesovy ceny 2007: Tým z Univerzity Karlovy součástí konsorcia, které získalo Descartesovu cenu za projekt HESS

2 Trochu teorie. Tab. 1: Tabulka pˇrepravních nákladů

Základní znalosti o upevàování

ÚVODEM UPOZORNIT STUDENTY, ABY PŘI MANIPULACI NEPŘETRHLI ODPOROVÝ DRÁT.

Základní vlastnosti. cementotřískových desek CETRIS Základní vlastnosti

Colorado. Colorado 450 Délka (cm) 450 ífika (cm) 160 PrÛmûr boãních válcû (cm) 40 Poãet vzduchov ch komor 10

Příprava na 1. čtvrtletní písemku pro třídu 1EB

Epidemiologie zhoubného novotvaru prûdu ky a plíce (C34) v âr

11 Soustavy rovnic a nerovnic, Determinanty a Matice

Jednoduché LOUTKY. Kamila Skopová Alena Vondru ková

CIHLOVÉ ROLETOVÉ SCHRÁNKY - KOMPLETNÍ PROGRAM BEZSPÁROVÉ, ENERGETICKY ÚSPORNÉ SYSTÉMOVÉ E ENÍ

právních pfiedpisû Ústeckého kraje

Šifrová ochrana informací věk počítačů PS5-2

MYČKA NÁDOBÍ CDF 715 T NÁVOD K POUŽITÍ

Úvod do cuttingu KdyÏ zadáte slovo cutting do. internetového vyhledávaãe ãeského ãi zahraniãního, v echny nalezené odkazy se t kají fiezání,

( x ) 2 ( ) Další úlohy s kvadratickými funkcemi. Předpoklady: 2501, 2502

Zobrazení v rovině je předpis, který každému bodu X roviny připisuje právě jeden bod X roviny. Bod X se nazývá vzor, bod X se nazývá obraz.

2 Spojité modely rozhodování

Systém Platon. Aplikaãní katalog. Suché a zdravé domy

9. Hydrologie. Podzemní vody Povrchové vody Beãva a její pfiítoky z hlediska vodohospodáfiského

1.2.5 Reálná čísla I. Předpoklady:

LINDE TECHNOPLYN a.s. Tepelné zpracování pomocí dodávan ch plynû

Manuál obchodníka /2007. profil firmy. dûvody proã zvolit... vûrnostní program Pleasure. partnerská sekce On-Line. ceník pro rok 2006/2007

KAPITOLA 1 CO JE TO AGRESE?

Ragdoll. D obr vztah k lidem je rozhodnû jedním

3 CENY A NÁKLADY 3.1 SPOT EBITELSKÉ CENY

Kompaktní plynov kondenzaèní kotel CERASMARTMODUL

6.3. Lineární diferenciální rovnice druhého řádu s konstantními koeficienty

Asymetrická kryptografie a elektronický podpis. Ing. Dominik Breitenbacher Mgr. Radim Janča

ŠkodaAutorádio MS 202

Moderní technologie ve studiu aplikované fyziky CZ.1.07/2.2.00/ Komplexní čísla

Kypfiiã Cenius - univerzální fie ení pro malé a stfiednû velké zemûdûlské podniky. Pfiehledné uspofiádání v ech funkãních oblastí

P EDSTAVENSTVO DRUÎSTVA INFORMUJE

Pracovní doba v osobní autobusové dopravû a její specifika

Vtom se detektiv odmlãel. Z hlavní brány vûzení 1 La Santé vyrazil vûz, zlovûstn vûz. Lidé smekali. Napínali zrak A bulvárem se náhle rozhostilo

ãtyficestné trojcestné KOMEXTHERM

Transkript:

7 praxe: kryptogra e Faktorizace () Dvû ãísla za 00 000 dolarû Pfiedstavte si, Ïe máte k dispozici ve kerou v poãetní techniku na Zemi, v echny znalosti souãasné vûdy a hodnû penûz. Jak velké ãíslo byste byli schopni faktorizovat? Pokusíme se tuto otázku zodpovûdût a seznámíme vás se znám mi metodami faktorizace. NEJEN STA MATEMATICK POBLÉM Jak dlouho by vám trvalo rozloïení ãísla 33 na prvoãinitele? S tuïkou v ruce byste na fie ení (7 a 9) pfii li moïná za nûkolik minut, s kalkulaãkou za desítky vtefiin. Jistû není tfieba zdûraz- Àovat, Ïe pfii fiádovû vût ích ãíslech by to lo o hodnû pomaleji... Faktorizace, tedy nalezení v ech prvoãinitelû sloïeného ãísla, je velmi star matematick problém, kter není dosud uspokojivû vyfie en. Známe sice metody, jak jej fie it, ale s rostoucí délkou pfiedloïeného ãísla roste i sloïitost tûchto metod, a to tak drasticky, Ïe od urãité hranice uï nemáme ani dost ãasu, ani v poãetní kapacity k fie ení. (âlánky k faktorizaci i ke schopnostem lu ticího zafiízení TWINKLE jsme jiï nûkolikrát publikovali viz infotipy. Jsou také na internetu a váïn m zájemcûm doporuãuji je prostudovat.) AniÏ bychom se pfiíli vzdálili od obecné formulace, v dal ím se soustfiedíme jen na základní úlohu faktorizace ãísla, které je souãinem pouze dvou prvoãísel. e ení tohoto problému totiï mj. umoï- Àuje lu tit asymetrickou ifru SA! Zatím nejvût í ãíslo n = p*q, které se (v r. 999) podafiilo faktorizovat, má dekadick ch cifer ( bitû). Je tû nûjaké rezervy máme, ale ãísla, která mají tfieba tisíc cifer, jsou zatím zcela mimo na e moïnosti. ekordy ve faktorizaci speciálních ãísel i modulû SA ukazuje tabulka. Je tû pfiipomeàme dal í mezníky faktorizace ãísel SA-00 (99, 00 cifer), SA-0 (99, 0 cifer) a SA-0 (993, 0 cifer) z minulé soutûïe SA i kdyï nebyly rekordní v daném roce. Z tabulky i z obrázku je zfiejmé, Ïe faktorizace velk ch ãísel nijak zvlá È rychle nepostupuje a spí e to vypadá, Ïe se problém táhne jako med. Je vidût, Ïe zde chybí nûjak zásadní objev, kter by postup v raznû urychlil i kdyï nevíme, zda si takov pokrok vlastnû máme pfiát. Ten, kdo by takov objev uãinil, by totiï byl schopen nabourat se prostfiednictvím lu tûní SA do nejdûleïitûj ích oblastí mezinárodního bankovnictví, elektronického obchodu, bezpeãnostních systémû a poãítaãov ch sítí... ProtoÏe jsou k dispozici údaje o faktorizaci v znamn ch speciálních ãísel i údaje o faktorizaci ãísel z dosavadní soutûïe spoleãnosti SA Security Inc. (dále jen SASI), lze závislost velikosti faktorizovaného ãísla na roku faktorizace rûzn mi zpûsoby odhadovat a aproximovat. Uvedeme dva názory na tento v voj. První (Silverman) fiíká, Ïe pro poãet cifer faktorizovaného ãísla D lze odvodit lineární vztah D = 4,3 * (rok - 970) + 3, druh (Brent) má mnohem optimistiãtûj í aproximaci D = ((rok - 98,) / 3,4) 3, viz obrázek. Faktorizace 04bitového modulu SA by se tak podle prvního odhadu mohla uskuteãnit v roce 037 a podle druhého v roce 08. Obrázek nasvûdãuje spí e Brentovû aproximaci, ale jak bude skuteãn v voj, je opravdu ve hvûzdách. Ze Silvermanov ch úvah vypl vá, Ïe urãit konzervativismus je na místû, protoïe úloha faktorizace se net ká jen poãtu operací, ale i potfiebné kapacity poãítaãové pamûti. Faktor pamûti oproti tomu podceàuje vûãi Silvermanovi kontroverzní a vzhledem k úspûchûm faktorizace optimistická práce Lenstry a Verheula (viz infotipy). BUDE SESTOJEN SA-CACKE? ProtoÏe jde o dost penûz, vûdeckou ctiïádost i komerãní zájmy (zejména SASI), vedou se dosti ostré diskuse k moïnostem faktorizace v pfií tích letech a desetiletích. Mnoho laikû u nás i ve svûtû napfiíklad z faktorizace bitového ãísla, uskuteãnûné v roce 999, ãiní ukvapené závûry o bezpeãnosti 04bitového modulu a doporuãuje délky modulû 048 bitû nebo radûji 409 bitû! Líbí se jim zdvojnásobovat délky modulû, aniï by tu ili, co je za tím ukryto. Naproti tomu autofii vûdeck ch ãlánkû na toto téma si jasnû uvûdomují, Ïe odhady moïného v voje jsou pouh m Ïonglováním s ãísly a sliby, a proto jasnû uvádûjí pfiedpoklady sv ch závûrû: KdyÏ se situace bude vyvíjet..., Za pfiedpokladu, Ïe by... apod. Dal í C H I P Z Á Í 0 0

ok Poãet cifer âíslo n Kdo faktorizoval Metoda Hardware 970 39 8 + Brillhart/Morrison CF IBM Mainframe 978 4 3 Wunderlich CF IBM Mainframe 98 47 3 Gerver QS HP-3000 98 9 Wagstaff CF IBM Mainframe 983 3 93 + Davis/Holdridge QS Cray 984 7 07 Davis/Holdridge QS Cray 98 87 8 + Silverman QS LAN Sun 987 90 0 + Silverman QS LAN Sun 988 00 04 + Internet QS Distribuované výpočty 990 484 + Lenstra/Manasse QS Distribuované výpočty 99 04 + Lenstra/Manasse QS Distribuované výpočty 994 9 SA-9 Atkins QS Distribuované výpočty 99 30 SA-30 Montgomery GNFS Distribuované výpočty 999 40 SA-40 Montgomery GNFS Distribuované výpočty 999 SA- Montgomery GNFS Distribuované výpočty Poznámka: CF metoda řetězových zlomků, QS kvadratické síto, GNFS General Number Field Sieve Tabulka. ekordy ve faktorizaci čísel skupina laikû v ak interpretuje jen závûry, aniï by si uvûdomovala jejich pfiedpoklady! A tak se opakuje podobná situace jako pfii diskusích o lu titelnosti algoritmu DES. Názory, Ïe DES je nerozlu titeln apod., prostû nebylo moïné utlouci, dokud nebyl sestrojen hmatateln lu ticí stroj DES-Cracker (viz napfi. Chip /98, /98). Teì je to naopak, neexistují stoprocentnû pfiesvûdãivé protiargumenty na laické fantazie, Ïe ten nebo onen modul SA je pfiíli mal a bude zcela urãitû vbrzku lu titeln. SASI se s tím vyrovnala tak, Ïe vypsala novou vefiejnou soutûï na faktorizaci 7-aÏ 048bitov ch ãísel, jak ukazuje tabulka pov imnûte si hezk ch dolarov ch vábniãek v posledním sloupci. V echny podrobnosti k soutûïi naleznete na adrese v infotipech. Je to skvûl komerãní tah, ale poslouïí i vûdû, protoïe k problému pfiitáhne více lidí a ukáïe, kde jsou reálné hranice. Pokud se najde dost zájemcû o poskytnutí v poãetního ãasu, mohlo by b t pomûrnû brzo dosaïeno faktorizace 7bitového modulu. Naproti tomu o 048bitovém ãísle SASI fiíká, Ïe by mûlo vydrïet desítky let. Souãasné metody v ak tuto faktorizaci odsouvají spí e do nekoneãna... My se teì ale odpoutáme od dohadû a zamûfiíme se na fakta. NEJDE O PVOâÍSLO? Dfiíve neï se pustíme do faktorizace nûjakého ãísla, mûli bychom si ovûfiit, Ïe je to skuteãnû ãíslo sloïené, tj. Ïe si z nás nûkdo nestfiílí a nepodstrkuje nám prvoãíslo. Na to existují testy s exaktní odpovûdí ano/ne (naposledy jimi bylo ovûfieno prvoãíslo dlouhé pfies 00 cifer), napfiíklad Cohen-LenstrÛv Jacobi sum test nebo AtkinÛv test, ale vzhledem ke znaãné sloïitosti se nepouïívají. V praxi se lépe osvûdãují tzv. pravdûpodobnostní testy, které jsou velmi rychlé a dobfie programovatelné. Pokud o daném ãísle tvrdí, Ïe je sloïené, je to zaruãenû pravda pokud ale dojdou k závûru, Ïe se jedná o prvoãíslo, mohou se s urãitou pravdûpodobností m lit. Ta se ale dá stlaãit pod libovolnû pfiedem urãenou mez vhodnou volbou bezpeãnostního koe cientu. Zatím nejlep í a nejpouïívanûj í praktick test na prvoãíselnost je Miller-abinÛv test, vycházející z testu Fermatova. FEMATÒV A MILLE-ABINÒV TEST Oba testy vyuïívají malou Fermatovu vûtu, která fiíká, Ïe pokud gcd(a, n) =, tj. nejvût í spoleãn dûlitel ãísel a a n je a n je skuteãnû prvoãíslo, potom a n- (mod n) =. Pfii testování sloïenosti se proto náhodnû volí ãíslo a a zji Èuje se, zda tato rovnost platí. Pokud neplatí, a se naz vá (FermatÛv) svûdek sloïenosti a n je skuteãnû sloïené. JestliÏe rovnost platí, n je pravdûpodobnû prvoãíslo, ale nemáme je tû jistotu. Tu posílíme volbou dal ího náhodného ãísla a a opût zkoumáme, zda a je svûdek sloïenosti. Pokud ani po t pokusech nenalezneme svûdka sloïenosti, je vysoce pravdûpodobné, Ïe pfiedlo- Ïené ãíslo n je prvoãíslo. (Pro zajímavost poznamenejme, Ïe FermatÛv test s velkou pravdûpodobností nepozná celou tfiídu zvlá tních sloïen ch ãísel, která se naz vají Carmichaelova, ale vzhledem k dal ímu to není nijak zvlá È alarmující v sledek.) Miller-abinÛv (M) test vyuïívá jemnûj í fakt uveden na obrázku 3 a je úãinnûj í neï FermatÛv test (napfiíklad a = by pro n = podle Fermatova testu svûdãilo o prvoãíselnosti, zatímco pro M test by bylo svûdkem sloïenosti). Pokud n je prvoãíslo, je n- sudé, a dá se tedy zapsat ve tvaru n = s * r, kde r je liché ãíslo. V M testu generujeme náhodnû ãíslo a (opût to provádíme t-krát, kde t je bezpeãnostní parametr) a poãítáme postupnû posloupnost a r (mod n), a r (mod n), a 4r (mod n),... aï a n- (mod n); podle Fermatovy vûty dospûjeme

nakonec k jedniãce. M test je zaloïen na faktu, Ïe uvedená posloupnost musí mít buì tvar,,...,, nebo x, y,..., z,,,,...,, kde x aï z oznaãují libovolná (i nepovinná) ãísla. Pokud uvedená posloupnost tento tvar nemá, n je sloïené ãíslo s koneãnou platností. Pokud test fiekne, Ïe n je prvoãíslo, mûïe se m lit s pravdûpodobností (/4) t. Proto podle toho, jakou chceme mít jistotu, volíme parametr t (napfiíklad t = 0 dává pravdûpodobnost chyby asi k milionu). METODY FAKTOIZACE Snad kaïd umí faktorizovat dané ãíslo metodou kanadsk ch dfievorubcû, kdy prostû zkou- íme dané ãíslo n dûlit postupnû v emi prvoãísly 3,, 7,,... Dûlitele urãitû najdeme, ale asi to nebude nejrychlej í. Skuteãnû, obecnû se pfii takovém zkou ení mûïeme dostat aï do tûsné blízkosti ãísla n /. JenÏe jak to udûlat jinak? POLLADOVA P- METODA Tato metoda byla popsána v roce 974 a také vyuïívá malé Fermatovy vûty. Opût hledáme prvoãíseln faktor p ãísla n. Jak víme, p je sudé ãíslo, a má proto jeden z dûlitelû dvojku. Metoda je úãinná, pokud ani dal í dûlitelé p nejsou pfiíli velká ãísla jsou dejme tomu omezené shora ãíslem B (pak fiíkáme, Ïe p je B-hladké, resp. B-smooth). Základní my lenka je zaloïena na tom, Ïe pokud máme nûjaké ãíslo Q takové, Ïe p dûlí Q, pak podle Fermatovy vûty p dûlí a Q. ProtoÏe p dûlí také n (je to jeho Vstup: sloïené ãíslo n, které není mocninou prvoãísla V stup: netriviální faktor d ãísla n. Zvol hranici B (napfiíklad 0 nebo 0 ). Vyber náhodné ãíslo a z intervalu [, n] a vypoãti d = gcd(a,n). Je-li d, return(d). 3. Pro kaïdé prvoãíslo q B : M(q) = [ln(n) / ln(q)] a = a q na M(q) (mod n) 4. Vypoãti d = gcd(a, n). Je-li d = nebo d = n, ukonãi algoritmus s chybou,. eturn(d) M test vypl vá z následujícího faktu: NechÈ n je liché prvoãíslo. Vyjádfiíme n ve tvaru s * r, kde r je liché. NechÈ a je libovolné ãíslo nesoudûlné s n. Potom buì a r mod n =, nebo pro nûjaké j = 0... s platí a r mod n = n. Vstup: liché ãíslo n > a bezpeãnostní parametr t > 0 V stup: odpovûì n je prvoãíslo nebo n je sloïené. Vyjádfii n ve tvaru n- = s * r, kde r je liché. For i =...t do Zvol náhodnû ãíslo a, < a < n- Vypoãítej y = a r mod n If ( y and y n-) then do j = While (j s- and y n-) do: y = y mod n If (y = ) then return ( n je sloïené ) j = j + If (y n-) then return ( n je sloïené ) 3. eturn ( n je prvoãíslo ) Obr. 3. Pseudokód Miller-abinova testu prvočíselnosti hledan faktor), nalezneme ho jako dûlitel ãísla d = gcd(a Q, n). Pokud se stane, Ïe d = n, algoritmus selïe, ale v na em pfiípadû, kdy n má dva velké faktory, je to velmi nepravdûpodobné. Zb vá je tû de novat ãíslo Q. ProtoÏe víme, Ïe p má v echny faktory B, mûïeme de novat Q=Π q B q M(q), kde M(q) = [ln(n) / ln(q)] a [] ozna- Vstup: sloïené ãíslo n = p*q V stup: netriviální dûlitel n. x 0 =. For i =,,... do x i = f (xi- ) = x i- + (mod n) x i = f (f(x i- )) = (x i- + ) + (mod n) d = gcd(x i - x i, n) je-li < d < n, ukonãi smyãku a vraè hodnotu d je-li d = n, pfieru algoritmus a zvol jinou funkci f placená inzerce Obr. 4. Pseudokód Pollardova p- algoritmu Obr.. Pseudokód Pollardova algoritmu s Floydovým trikem C H I P Z Á Í 0 0

âíslo Poãet bitû Poãet dekadick ch cifer Odhad roku faktorizace* Odmûna za faktorizaci (v USD) SA-7 7 74 00 0 000 SA-40 40 93 00 0 000 SA-704 704 0 30 000 SA-78 783 09 0 000 SA-89 89 70 08 7 000 SA-04 04 309 03800 000 SA-3 3 43 074 0 000 SA-048 0487 0 00 000 *rok, kdy by mohlo dojít k faktorizaci na základě Silvermanovy aproximace Tabulka. Soutěžní čísla a odměny za jejich faktorizaci ãuje celou ãást ãísla. Vidíme, Ïe M(q) je nejvy í moïné a takové, aby je tû platilo q M(q) n, takïe v Q jsou obsaïeny v echny moïné mocniny v ech moïn ch prvoãinitelû ãísla p. Proto p musí dûlit Q, ãímï je my lenka uzavfiena. Praktickou realizaci algoritmu ukazuje pseudokód na obrázku 4 a konkrétní pfiíklad v tabulce 3. ZÁKLADNÍ MY LENKA FAKTOIZAâNÍCH METOD Dal ím moïn m trikem, jak zjistit nûjak dûlitel ãísla n, je nalézt ãísla x, y tak, Ïe x y (mod n). Odtud potom vypl vá, Ïe n dûlí (x y)(x + y), a pokud máme tûstí, prvoãinitelé p, q ãísla n budou rozdûleni zvlá È do obou ãísel x y, x + y. Jednoho z nich pak snadno nalezneme jako nejvût í spoleãn dûlitel x y a n, tj. gcd(x y, n). Zajímavé je, Ïe toto je základní my lenka v ech dosud znám ch faktorizaãních metod (obecn ch ãísel). Pokud budete chtít udûlat do faktorizace prûlom, oprostûte se od ní a vymyslete nûco jiného! POLLADOVA Ó METODA Teì se zastavíme u Pollardovy ró metody, objevené v roce 97. Má ir í v znam a pouïití neï jen pro faktorizaci, jak ukazuje i ãlánek v Chipu 8/0 (viz infotipy). Naleznete v nûm de nici, rógraf i vyuïití této metody pro hledání kolizí ha ovacích funkcí. My teì popí eme její variantu pro faktorizaci. PfiipomeÀme si jen, Ïe fiecké písmeno ρ, po nûmï je metoda pojmenována, se náramnû podobá obrázku, kter dostaneme Pollardovou Postup Pollardova p- algoritmu pro faktorizaci ãísla n = 90487 Krok : B = 9 Krok : a = 3, gcd(a, n) = Krok 3: prvočísla q =, 3,, 7,, 3, 7, 9 q 3 7 3 7 9 M(q) 4 0 8 a 9344 3889 9373 48 983 374 409 40 Krok 4 a : d = gcd(40-, n) = 8 Výsledný rozklad n = 8 * 307 Tabulka 3. Pollardův p- algoritmus pro faktorizaci čísla 90487 metodou ocásek, kter se napojuje na kruh. UvaÏujme náhodnou funkci f: S S na koneãné mnoïinû S o n prvcích (pro nás to budou ãísla 0,..., n-, protoïe v e poãítáme modulo n), vyberme náhodnû x 0 S a sestrojme posloupnost x 0, x, x,... de novanou vztahem x i+ = f(x i ). Je to náhodná procházka po ãíslech mnoïiny S, a protoïe S je koneãná, po urãité dobû se dostaneme do bodu, kde jsme uï byli, tj. pro nûjaká r, s bude platit f(x r ) = f(x s ). Jakmile shoda nastane, novû poãítané hodnoty x r+j pro j =,,... budou rovny pfiedchozím x s+j a gra cky to bude znamenat, Ïe jsme se uï dostali do oblasti kruhu. Pokud volíme f(x) = x + (mod n), dostáváme v dobû prûseku, Ïe x r x s (mod n), ãili na i cílenou rovnici! Z teorie náhodn ch funkcí víme, Ïe oãekávaná délka ocásku λ i délka kruhové ãásti µ jsou pfiibliïnû rovny (π*n/8) /. Jejich souãet je (π*n/) / a udává stfiední dobu, po kterou musíme ãekat na na i shodu. ProtoÏe oãekáváme nalezení prvoãinitele p fiádovû rovného n /, vyplatí se nám neãekat na shodu f(x r ) = f(x s ), ale sledovat jen okamïik, kdy gcd(f(x r ) f(x s ), n) bude vût í neï a men í neï n. V tom pfiípadû je to pfiímo ná prvoãinitel p! Stfiední doba ãekání na shodu je pak (π*p/) /, coï je mnohem pfiíznivûj í, neboè p bude ãíslo blízké n /. Postup Pollardova algoritmu pro faktorizaci ãísla n = 449 i 0 3 4 7 8 9 0 3 4 7 8 x (i) 77 87 44380 798 34 0 447 40 77 4370 08 4403 4973 47944 933 8343 x (i) 87 798 0 40 4370 4403 47944 8343 d 743 Tabulka 4. Pollardův algoritmus pro faktorizaci čísla 449

FLOYDÒV TIK U Pollardovy metody musíme ukládat hodnoty x i, a u kaïdé novû vytvofiené musíme kontrolovat, zda se nerovná nûkteré pfiedchozí. To vyïaduje dost pamûti. Floydovo vylep ení zde spoãívá v tom, Ïe hodnoty x i neukládáme a místo toho zaãínáme s párem hodnot (x,x ). Iterativnû vypoãítáváme (x,x 4 ), (x 3,x ), (x 4,x 8 ),... obecnû podle vztahu x i = f(x i- ) a x i = f(f(x i- )) a ãekáme tak dlouho, aï shoda nastane pfiímo v na em páru. Shodu nyní chápeme také jako bod, kdy nejvût í spoleãn dûlitel ãísel x m ax m v na em aktuálním páru je smyslupln, tj. kdyï < d = gcd(x m x m,n)< n. V tom pfiípadû je d právû hledan dûlitel ãísla n. Pseudokód této metody je na obrázku, v tabulce 4 uvádíme pfiíklad postupu pro faktorizaci ãísla 449. Je tû poznamenejme, Ïe místo konstanty v polynomu f(x) = x + mûïeme pouïít jiné vhodné ãíslo (kromû 0 a ). ZATÍM TO NEMÁ ËÁVU Pollardova metoda je spolehlivá, ale hodí se spí e na men í ãísla n, neboè její sloïitost je proporcionální ãíslu n /. íkáme men í ãísla, ale i na domácím PC se klidnû mûïeme pustit do faktorizace deseticiferného ãísla. U SA nás v ak zajímají ãísla mnohonásobnû del í. O ra novanûj ích metodách si povíme pfií tû nebude to ov em nic pro domácí poãítaã, spí asi tak pro sto milionû poãítaãû, kaïd s operaãní pamûtí 70 GB AM... ZÁVù Úloha faktorizace je star matematick problém, mající své dûsledky pro souãasnou kryptogra i. Na jeho v poãetní sloïitosti je zaloïen algoritmus SA. Pokud by do lo k zásadnímu urychlení faktorizaãních metod, musela by se odpovídajícím zpûsobem zvy ovat délka modulu SA, aby se zv ila jeho bezpeãnost. Souãasné faktorizaãní metody v ak nic takového nenaznaãují, naopak v voj z hlediska kvality spí e stagnuje. V tomto ãlánku jsme vysvûtlili Pollardovy algoritmy, pfií tû se budeme zab vat dal ími metodami. Vlastimil Klíma vlastimil.klima@i.cz [] Carmichaelovovo ãíslo n je sloïené ãíslo takové, Ïe a n- (mod n) pro v echna celá ãísla a, nesoudûlná s n. V intervalu [, N] je více neï N /7 tûchto ãísel a vûbec nejmen í Carmichaelovo ãíslo je =3**7. INFOTIPY V e o nové soutûïi 3 http://www.rsasecurity.com/rsalabs/challenges/factoring/index.html O faktorizaci a zafiízení TWINKLE 3 osa, T.: Na to vezmi LED!, Chip 8/99 a 9/99, Jde to i bez Twinklu, Chip 0/99 O rûzn ch faktorizaãních metodách 3 Menezes, A. J., Oorschot, P. C., Vanstone, S. A.: Handbook of Applied Cryptography, CC Press, New York, 997 Podstata algoritmu SA 3 Klíma, V.: Bude nás podepisovat SA?, Chip 9/00 Bezpeãnost a faktorizace podle Silvermana 3 http://www.rsasecurity.com/rsalabs/bulletins/bulletin3.html Bezpeãnost a faktorizace podle Lenstry a Verheula 3 Lenstra, A. K., Verheul, E..: Selecting Cryptographic Key Sizes, PKC000, Australia, January 000, nyní aktualizováno na http://www.cryptosavvy.com/joc.pdf Pollardova ró metoda z jiného pohledu 3 osa, T.: Podpis k narozeninám, Chip 8/0 placená inzerce (âlánky z Chipu naleznete také v elektronické podobû na http://www.decros.cz/bezpecnost/_kryptogra e.html) C H I P Z Á Í 0 0