🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.asm
Article #310

Re: 1024 bitowa liczba pierwsza

#310
From: Stachu 'Dozzie' K.
Date: Sun, 04 Jun 2006 13:33
38 lines
2593 bytes
On 04.06.2006, Bogdan (bogdro) <bogdan@bogdan.pl> wrote:
> zrn napisał(a):
>> Witam!
>> Do mojego programu (DOS/Windows) potrzebuję wstawki asemblerowej
>> sprawdzającej czy dana 1024 bitowa liczba jest pierwsza. Liczba jest dana
>> w postaci tablicy zer lub jedynek.
>> Z asemblera jestem mniej niż cienki.
>> Proszę o pomoc, wskazówki, namiary itp.
>
>  Na myśl przychodzi mi najprostszy (czyli też najdłuższy) sposób:
> dzielenie podanej liczby przez wszystkie liczby nieparzyste mniejsze
> równe od liczba/2 (== liczba >> 1).
>  Jeśli ostatni bit = 0, to wiesz, że liczba dzieli się przez 2, więc
> pierwsza nie jest.
>  Omówienie operacji wielokrotnej precyzji znajdziesz m.in. w książce
> Randalla Hyde'a "Art of Assembler", wersja 32-bitowa,
> http://webster.cs.ucr.edu.
>
>  Są też inne sposoby. Słyszałem o teście Fermata, ale złożoność
> problemu nie jest banalna.

Test Fermata (Rabina-Millera, znacznie skuteczniejszy, też) to test
probabilistyczny. Z zerową szansą uznania liczby pierwszej za złożoną.
Niespecjalnie złożony, nawiasem mówiąc.

> W końcu to dzięki złożoności takich testów
> (i faktoryzacji liczb) szyfr RSA żyje jeszcze i ma się dobrze :)

Jakiej znowu złożoności? Ocena pierwszości zadanej liczby to problem
klasy P, o czym wiadomo od paru lat. Zdaje się, że to był wykładnik
rzędu 10, ale to jest wielomian, a nie coś większego. RSA zresztą nie
opiera bezpieczeństwa o trudność stwierdzenia, czy dana liczba jest
pierwsza (co jest łatwe), tylko właśnie o trudność rozkładu dużych
(specjalnie wybieranych) liczb na czynniki pierwsze.

-- 
Feel free to correct my English
Stanislaw Klekot
Technical Details
Message-ID: <slrne85orr.881.dozzie@hans.zsh.bash.org.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!newsfeed.silweb.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mail
References: <e5uk4t$dfl$1@atlantis.news.tpi.pl> <e5umtv$q4t$1@nemesis.news.tpi.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!newsfeed.silweb.pl!newsfeed.pionier.net.pl!news.dialog.net.pl!not-for-mail
From: "Stachu 'Dozzie' K." <dozzie@dynamit.im.pwr.wroc.pl.nospam>
Newsgroups: pl.comp.lang.asm
Subject: Re: 1024 bitowa liczba pierwsza
Date: Sun, 4 Jun 2006 13:33:21 +0000 (UTC)
Organization: Dialog Net
Lines: 38
Message-ID: <slrne85orr.881.dozzie@hans.zsh.bash.org.pl>
References: <e5uk4t$dfl$1@atlantis.news.tpi.pl> <e5umtv$q4t$1@nemesis.news.tpi.pl>
NNTP-Posting-Host: xdsl-2827.wroclaw.dialog.net.pl
Mime-Version: 1.0
X-Trace: news.dialog.net.pl 1149428001 12930 81.168.251.11 (4 Jun 2006 13:33:21 GMT)
X-Complaints-To: abuse@dialog.net.pl
NNTP-Posting-Date: Sun, 4 Jun 2006 13:33:21 +0000 (UTC)
User-Agent: slrn/0.9.8.1 (Linux)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit