Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Prvočísla ano, faktorizace ne

Senzace se podle všeho nekoná: Nové objevy týkající se prvočísel nepředstavují bezprostřední ohrožení pro kryptografii.

Tweetni to Twitter Jaggni to! Jagg Del.icio.us Delicious

Následující kauza má dlouhou (a pohnutou :-)) historii:

Loni před Vánoci mi Tomáš Krause přeposlal e-mail obsahující oskenovanou stránku z vědecké rubriky Koktejlu, kde se s odvoláním na New Scientist oznamoval významný objev na poli prvočísel. Kde se hýbou prvočísla, tam lze větřit také ohrožení šifer. Tištěný New Scientist k dispozici však nemám, verze webová v tomto ohledu mlčela. Ještě v prosinci mě redaktor vědecké rubriky Koktejlu Pavel Hošek odkázal na příští vydání časopisu Vesmír; v diskusi se čtenáři Science Worldu zastávala většina (např. Jan Poslušný alias Pajout) názor, že se nic neděje a že objev týkající se prvočísel s kryptografií nutně souviset nemusí, jenom novinářům to vždycky takhle „sepne“.

Pátrání je u konce. V lednovém Vesmíru konečně vyšel článek Pavla Pudláka, z něhož budeme nadále čerpat.

Jaká je tedy skutečnost? Tři indičtí matematici, Agrawal, Kayal a Saxena nalezli způsob, jak otázku, zda číslo X je prvočíslem, řešit v polynomiálním čase. Až dosud se úloha pokládala za NP problém, tedy takový, jehož složitost roste exponenciálně (i proto se v této souvislosti dumá o nasazení DNA nebo kvantových počítačů, viz níže). Nový objev umožňuje test v čase polynomiálním.

Velikost polynomu je ovšem stále hodně vysoká – 10 exp 12. Pavel Pudlák ve Vesmíru uvádí, že díky tomu bude polynomiální algoritmus rychlejší až u prvočísel v řádu 64 cifer. Fakticky lze také těžko i při polynomu stupně 12 realizovat luštění stále složitějších úloh (můžete si to představit následujícím způsobem: když složitost úlohy roste s X exp 3, po zdvojnásobení X řeším úlohu tak, že zdvojnásobím objem počítače – rychlost řešení mi díky třem rozměrům také poroste se třetí mocninou; samozřejmě se omlouvám znalcům, jde o hodně velké zjednodušení, počítač ve 12 rozměrech ale každopádně k dispozici nemáme).

Ale hlavně: Šifrovací klíče se generují násobením dvojice prvočísel (činitelé jsou tajným klíčem, součin klíčem veřejným). Opačný postup (tzv. faktorizace) je stále pokládána za úlohu se složitostí exponenciální. Náš algoritmus v polynomálním čase pouze zjistí, zda je určité číslo prvočíslem, nebo číslem složeným. Když víme, že jde o číslo složené, stále to ještě neznamená, že známe i rozklad.

Co s tím mají společného kvantové počítače? Definice NP problémů (tedy těch nepolynomiálních, respektive takových, u kterých zatím neznáme algoritmus s polynomiálním růstem složitosti) závisí na fyzikálních vlastnostech použitého počítače. I faktorizace by se stala polynomiální na počítači kvantovém – při použití tzv. Shorova algoritmu (to se v miniměřítku podařilo na kvantovém počítači IBM).

Autor tohoto článku se ovšem necítí kompetentní se podrobněji vyjadřovat k teoriím výpočetní složitosti; předpokládám, že řada čtenářů vidí do problému hlouběji.

Jinak: ohledně zkoumání provočíselnosti existuje samozřejmě celá řada elegantních matematických postupů: Malá Fermatova věta, ARCLP test apod. Vesměs ale mají svá omezení. Například Malá Fermatova věta umožňuje rychle identifikovat čísla složená; zbytek jsou pravděpodobně prvočísla, ale ne nutně.

A ještě jednou: Určení prvočíselnosti ještě neznamená, že nalezneme také rozklad na dvě prvočísla u čísla složeného (faktorizaci). Přitom právě faktorizací bychom se dostali k tajnému klíči. Ba právě naopak: rychlé testy na prvočíselnost spíše urychlují šifrování, tedy generování co nejdelších tajných klíčů.

A když už jsme u těch prvočísel, neodpustím si jednu perličku: Víte, jaká je role prvočísel v biologické evoluci?

Školení: IP v 6 na Linuxu

Tento krátký kurz je určený speciálně pro zkušené správce sítí IPv4, kteří se chtějí seznámit s nastupujícím internetovým protokolem IPv6.

Platforma: Linux

  • Adresace
  • Link-local adresy
  • Dynamické přidělování adres
  • a další

Podrobnější informace a přihláška

Ohodnoťte jako ve škole:
Průměrná známka 3,47

Přehled názorů

bez titulku
zdenda 13. 2. 2003 00:36
Nový
Drobné nepřesnosti
Bwian 13. 2. 2003 00:45
Nový
└ 
Re: Drobné nepřesnosti
pavel houser 13. 2. 2003 13:28
Nový
 
└ 
Re: Drobné nepřesnosti
Bwian 13. 2. 2003 14:09
Nový
 
 
└ 
Re: Drobné nepřesnosti
vcef 13. 2. 2003 15:45
Nový
 
 
 
└ 
Re: Drobné nepřesnosti
Bwian 13. 2. 2003 16:09
Nový
 
 
 
 
└ 
Re: Drobné nepřesnosti
vcef 13. 2. 2003 18:55
Nový
Velikost polynomu
Yeti 13. 2. 2003 01:40
Nový
dotaz
turzin@seznam.czt 13. 2. 2003 13:00
Nový
Taky bych chtěl vědět, co to je velikost polynomu
Tomáš 13. 2. 2003 13:01
Nový
└ 
Re: Taky bych chtěl vědět, co to je velikost polynomu
pavel houser 13. 2. 2003 13:10
Nový
 
└ 
Re: Taky bych chtel vedet, co to je velikost polynomu
Jaroslav Borovicka 13. 2. 2003 15:06
Nový
NP
Petr Lobaz 13. 2. 2003 15:10
Nový
Drobne chyby i v pojmech šifrování
Pavel Vondruška 13. 2. 2003 21:36
Nový
└ 
Re: Drobne chyby i v pojmech šifrování
Jan Šimek 17. 8. 2005 08:21
Nový
Linka
rastos 17. 2. 2003 13:33
Nový
Jeste jedno URL
PaJaSoft 18. 2. 2003 09:41
Nový
       

Tento text je již více než dva měsíce starý. Chcete-li na něj reagovat v diskusi, pravděpodobně vám již nikdo neodpoví. Pro řešení aktuálních problémů doporučujeme využít naše diskusní fórum.

Zasílat nově přidané příspěvky e-mailem