Powrót   Forum CDRinfo.pl > Różne > Off topic

Off topic Forum poświęcone wszelkim innym tematom.



Witaj Nieznajomy! Zaloguj się lub Zarejestruj

Zarejestrowani użytkownicy mają dostęp do dodatkowych opcji, lepszej wyszukiwarki oraz mniejszej ilości reklam. Rejestracja jest całkowicie darmowa!

 
 
Opcje związane z dyskusją Tryby wyświetlania
Prev Poprzedni post   Następny post Next
Stary 08.09.2004, 15:58   #1
Piterniel
Cichy mod
 
Avatar użytkownika Piterniel
 
Data rejestracji: 16.03.2003
Lokalizacja: Wrocław
Posty: 4,485
Piterniel jak się przyłoży ma szansę zostać specem <150 - 249 pkt>Piterniel jak się przyłoży ma szansę zostać specem <150 - 249 pkt>
Faktoryzacja

Pomóż w rozkodowaniu seca 2!

Więcej tutaj >>TU<<

Cytat:
Faktoryzacja za pomocą masowej równoległości?

Około rok temu Daniel Bernstein z Uniwersytetu Illinois w Chicago opublikował fragment swojego wniosku o grant National Science Foundation, odpowiednika naszego KBN, w postaci artykułu zatytułowanego Circuits for Integer Factorization: A Proposal. Artykuł wywołał serię alarmistycznych apeli na e-maliowych listach dyskusyjnych wzywających do zaniechania używania kluczy 1024-bitowych, a nawet 1536-bitowych, w kryptosystemie RSA, oraz sensacyjne artykuły w prasie na temat "odkrycia Bernsteina". W artykule przedstawiony jest pomysł na sprzętową konstrukcję urządzenia (maszyny, komputera), które mogłoby dokonywać faktoryzacji, czyli rozkładać na czynniki pierwsze liczby całkowite trzykrotnie dłuższe niż dziś, ale w porównywalnym czasie. Po dokładnym zapoznaniu się z tą publikacją okazuje się jednak, że pomysł ten jest bardzo daleki od realizacji. Takiej maszyny nie ma i nie widać realnej perspektywy skonstruowania jej wcześniej niż za 25-30 lat, czyli w dającej się przewidzieć przyszłości.

Najważniejsze tezy pracy sam autor sformułował jako pytania badawcze - czy to możliwe?, ile to by kosztowało?, itp. Pomysł sprowadza się do zbudowania komputera, o tak wielkiej liczbie równolegle (jednocześnie) wykonywanych operacji, że jest to nierealne na dziś. I nie wiadomo, kiedy może stać się realne.

Propozycja Bernsteina nie wnosi zasadniczych zmian do ogólnej idei metod rozkładu liczb na czynniki pierwsze. Trzeba najpierw zbudować "bazę" przykładów, z natury rzeczy można to robić współbieżnie, a następnie wykonać obliczenia na dużych macierzach. Te ostatnie obliczenia słabo poddają się uwspółbieżnieniu. Wielkość bazy jest sprawą kompromisu tak, by żaden z dwu kroków algorytmu nie okazał się wąskim gardłem. Propozycja Bernsteina sprowadza się do rozważenia możliwości zastosowania masowej równoległości w algorytmie sortowania, co ma zasadnicze znaczenie dla obliczeń na macierzach. Zmienia się w ten sposób proporcja kompromisowej wielkości bazy.

I tak, w pierwszym kroku algorytmu proponowanego przez Bernsteina trzeba "zbadać" 223 krzywych eliptycznych w przypadku RSA-768, albo 232 krzywych dla RSA-1024, albo 242 krzywych dla RSA-1536. (RSA-X oznacza problem łamania algorytmu RSA z zastosowanym kluczem długości X bitów.) Bernstein proponuje wykonywanie tego przy pomocy około 25 mln procesorów działających równolegle.

W drugim kroku stosuje masowo równoległy algorytm sortowania. Bardzo szybki. Sortujący m2 liczb całkowitych w czasie liniowym O(m) z niewielką stałą. Ale za to wymagający sprzętowej tzw. "aktywnej pamięci" złożonej z komórek samodzielnie wykonujących porównywanie i zamianę zawartości komórek. W pamięci tej komórki liczbowe leżą na siatce kwadratowej i mogą porównywać się, a w razie potrzeby zamieniać zawartością, z komórkami sąsiednimi. To bardzo proste operacje. Ale już w przypadku RSA-1024, potrzeba tych komórek 50 miliardów.

Architektura komputera z masową równoległością, nawet dla bardzo prostych operacji, ale dla tak ogromnej liczby procesorów, jest zagadnieniem o stopniu trudności daleko wykraczającym poza granice obecnego stanu wiedzy i możliwości technologicznych. Połączenie odpowiednimi przeplotami przewodów tak wielkiej ilości procesorów, zapewnienie ich wzajemnego komunikowania się, reagowania na komendy, przyjmowania danych wejściowych i zwracania wyników na zewnątrz do odpowiednich innych procesorów, wreszcie zasilanie i chłodzenie takiego układu, NIE jest możliwe do realizacji obecnie. Idea budowy takiego urządzenia wyprzedza obecne komputery o kilka generacji.

Największym obecnie osiągnięciem w tej dziedzinie jest blisko 10 tys. procesorów (dokładnie 9632) działających równolegle w systemie ASCI Red firmy INTEL zainstalowanym w laboratorium Sandia National Laboratories. Drugi w kolejności system, ASCI White firmy IBM, ma 8192 procesory i zainstalowany jest w Lawrence Livermore National Laboratory w USA. (Patrz http://www.top500.org/list/2002/06/). Trzeci z kolei, bo zawierający "tylko" 5120 procesorów system Earth Simulator wyprodukowany został w kwietniu 2002 przez japońska firmę NEC dla Earth Simulator Centre w Jokohamie w Japonii. Oparty jest na zupełnie nowej technologii tzw. procesorów wektorowych. Zajmuje dwa piętra budynku, każde o wymiarach 50 na 60 m. Według specjalistów z tej dziedziny, w najbliższych latach mogą pojawić się systemy mające 15, a może 20 tys. procesorów działających równolegle.

Obecnie granicą możliwości w dziedzinie faktoryzacji jest - będące w zasięgu możliwości dużych firm i potężnych agend rządowych - łamanie algorytmu RSA z kluczem 512-bitowym. W sierpniu 1999 r. świat nauki, i nie tylko, zelektryzowała wiadomość ogłoszona w dość lakonicznym komunikacie http://www.rsasecurity.com/rsalabs/c...ng/rsa155.html, iż zespół naukowców rozłożył na czynniki pierwsze liczbę 512-bitową wygenerowaną zgodnie ze wszystkimi regułami kryptosystemu RSA. Liczba ta została podana w konkursie ogłoszonym właśnie w celu zbadania możliwości jej faktoryzacji. Ma ona 155 cyfr dziesiętnych:

10941738641570527421809707322040357612003732945449 2059909138421314763499842889
34784717997257891267332497625752899781833797076537 244027146743531593354333897

Jest iloczynem dwu liczb pierwszych 78-cyfrowych:

10263959282974110577205419657399167590071656780803 8066803341933521790711307779
*
10660348838016845482092722036001287867920795857598 9291522270608237193062808643

Znalezienie tych czynników zajęło 4 miesiące pracy. W marcu 2002, podczas Financial Cryptography Conference, firma nCipher Inc. ogłosiła, że opracowała oprogramowanie, które pozwala na złamanie 512-bitowego klucza RSA w czasie 6 tygodni przy użyciu komputerów dostępnych w pojedynczej firmie. Nieco później poprawiono czas do 1 doby.

Dalszy postęp wykorzystujący zwykły wzrost mocy obliczeniowej i szybkości coraz nowszych komputerów nie prowadzi do radykalnego przełomu. Konieczne w problemie faktoryzacji przeszukiwanie gigantycznie większych przestrzeni wymaga jakościowo nowych algorytmów.

Artykuł Bernsteina jest właśnie w tym nurcie badań. Choć nie wnosi nic nowego do praktycznej kryptografii, jest interesujący z punktu widzenia teorii algorytmów z masową równoległością. Od strony matematycznej, algorytm został zaakceptowany przez najlepszych w tej dziedzinie. Używa techniki sita ciał liczbowych oraz krzywych eliptycznych. Na implementację jednak poczekamy jeszcze wiele lat. [Cytat z B. Schneiera, http://www.counterpane.com, 15 marca, 2002: " (...) it will be years before anyone knows exactly whether, and how, this work will affect the actual factoring of practical numbers"].

Masowa równoległość jest też nadzieją kilku innych prób podejścia do problemu rozkładu liczb całkowitych na czynniki pierwsze, do epokowego przyspieszenia obliczeń w ogóle. Najgłośniejsze to obliczenia molekularne, model obliczeń Pauna (P-maszyny) i komputery kwantowe. Bernstein jest lepszy, naszym zdaniem, ponieważ wymaga "tylko" kwadratowo wiele procesorów pracujących równolegle, podczas gdy w tamtych próbach jest to de facto wykładniczo wiele w stosunku do danych wejściowych.

Według prognoz z najlepszych ośrodków badawczych, w instytutach, uniwersytetach i w wielkich firmach komputerowych, systemy RSA i DSA można uważać za wiarygodne (bezpieczne) przez co najmniej 25-30 następnych lat. Inną sprawą jest długość kluczy. Na dziś klucze 1024-bitowe w algorytmie RSA dają zadowalający poziom wiarygodności zabezpieczeń. W perspektywie będziemy stosować klucze dłuższe, 1536- czy 2048-bitowe. Niezbędne jest stałe monitorowanie postępów badań w tej dziedzinie. I elastyczne, dostatecznie szybkie wprowadzanie odpowiednich zmian w praktyce. Jednym z narzędzi monitoringu jest wspomniany już konkurs, a dokładniej wyzwanie, firmy RSA polegający na próbie rozkładu kolejnej dużej liczby, takiej jak te stosowane na co dzień w algorytmie RSA. Obecne wyzwanie firmy jest liczbą o 174 cyfrach dziesiętnych. Czytelnik może zechce spróbować swoich sił rozkładając na czynniki pierwsze liczbę:

18819881292060796383869723946165043980716356337941 7382700763356422988859715234665485319
06060650474304531738801130339671619969232120573403 1879550656996221305168759307650257059

* Pragniemy podziękować serdecznie doc. dr hab. Markowi Tudrujowi z IPIPAN za cenne konsultacje.
Piterniel jest offline   Odpowiedz cytując ten post

  #ads
CDRinfo.pl
Reklamowiec
 
 
 
Data rejestracji: 29.12.2008
Lokalizacja: Sieć globalna
Wiek: 31
Posty: 1227
 

CDRinfo.pl is online  
 


Twoje uprawnienia:
Nie możesz rozpoczynać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz umieszczać załączników
Nie możesz edytować swoich postów

BB codeWłączone
EmotikonkiWłączone
Kody [IMG]Włączone
Kody HTML są Wyłączone

Teleport


Wszystkie czasy w strefie CET. Aktualna godzina: 04:17.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.