COS-algoritmi

COS-algoritmi (Coppersmith, Odlyzhko, Shreppel) on subeksponentiaalinen diskreetti logaritmi -algoritmi jäännösrenkaassa , joka modulo alkulukua. Sitä ehdotettiin vuonna 1986 .

Alkutiedot

Esitetään vertailu

((yksi))

On tarpeen löytää luonnollinen luku x , joka tyydyttää vertailun (1).

Algoritmin kuvaus

Vaihe 1. Päästää

Muodostetaan setti

missä q  ovat yksinkertaisia.


Vaihe 2. Seulonnan avulla etsimme sellaisia ​​pareja  , että , ja


(absoluuttinen pienin vähennys otetaan huomioon). Samaan aikaan, siitä lähtien


lisäksi tämä on ehdottomasti pienin jäännös tässä luokassa ja sen arvo on . Siksi sen tasaisuuden todennäköisyys on suurempi kuin mielivaltaisilla luvuilla, jotka ovat pienempiä kuin p -1.

Ottamalla logaritmin kannassa a saadaan relaatio

Voimme myös olettaa, että a on sileä, eli

missä


Vaihe 3. Kun olet kirjoittanut paljon yhtälöitä toisessa vaiheessa, ratkaisemme tuloksena olevan lineaariyhtälöjärjestelmän ja löydämme .

Vaihe 4. Löytääksemme x : n otamme käyttöön uuden sileysrajan . Satunnaislaskennan avulla löydämme yhden arvon w , joka tyydyttää suhteen

u  ovat "keskimääräisen" suuruuden alkulukuja.

Vaihe 5 Käyttämällä vaiheiden 2 ja 3 kaltaisia ​​menetelmiä löydämme vaiheessa 4 syntyneiden alkulukujen u logaritmit.

Vaihe 6 Löydämme vastauksen:

Vaikeusaste

Tällä algoritmilla on aritmeettisten operaatioiden monimutkaisuus. Oletetaan, että numeroille tämä algoritmi on tehokkaampi kuin lukukenttäseula.

Kirjallisuus