Diskret logaritme

Diskret logaritme (DLOG) er problemet med at invertere en funktion i en eller anden finit multiplikativ gruppe .

Oftest betragtes det diskrete logaritmeproblem i den multiplikative gruppe af en restring eller et endeligt felt , såvel som i gruppen af ​​punkter i en elliptisk kurve over et endeligt felt. Effektive algoritmer til løsning af det diskrete logaritmeproblem er generelt ukendte.

For givet g og a kaldes løsningen x af ligningen den diskrete logaritme af elementet a i grundtallet g . I det tilfælde, hvor G er den multiplikative gruppe af restringen modulo m , kaldes løsningen også indekset for tallet a med hensyn til grundtallet g . Et indeks af a til basis g er garanteret at eksistere, hvis g er en primitiv rod modulo m .

Udtalelse af problemet

Lad en eller anden finit multiplikativ abelsk gruppe få ligningen

. (en)

Løsningen på det diskrete logaritmeproblem er at finde et ikke-negativt heltal , der opfylder ligning (1). Hvis det er opløseligt, skal det have mindst én naturlig løsning, der ikke overstiger rækkefølgen af ​​gruppen. Dette giver umiddelbart et groft skøn over kompleksiteten af ​​løsningssøgningsalgoritmen ovenfra - den udtømmende søgealgoritme ville finde en løsning i et antal trin, der ikke er højere end rækkefølgen af ​​den givne gruppe.

Oftest betragtes tilfældet, når , dvs. gruppen er cyklisk genereret af elementet . I dette tilfælde har ligningen altid en løsning. I tilfælde af en arbitrær gruppe kræver spørgsmålet om løseligheden af ​​det diskrete logaritmeproblem, det vil sige spørgsmålet om eksistensen af ​​løsninger til ligning (1), separat overvejelse.

Eksempel

Overvej problemet med diskret logaritme i ringen af ​​rester modulo et primtal. Lad sammenligning gives

Vi løser problemet ved opregning . Lad os skrive en tabel over alle potenser af tallet 3. Hver gang beregner vi resten af ​​divisionen med 17 (for eksempel 3 3 ≡ 27 - resten af ​​divisionen med 17 er 10).

3 1 ≡ 3 3 2 ≡ 9 3 3 ≡ 10 3 4 ≡ 13 3 5 ≡ 5 3 6 ≡ 15 3 7 ≡ 11 3 8 ≡ 16
3 9 ≡ 14 3 10 ≡ 8 3 11 ≡ 7 3 12 ≡ 4 3 13 ≡ 12 3 14 ≡ 2 3 15 ≡ 6 3 16 ≡ 1

Nu er det let at se, at løsningen af ​​den betragtede sammenligning er x=4 , da 3 4 ≡13.

I praksis er modulet normalt ret stort, og opregningsmetoden er for langsom, så der er behov for hurtigere algoritmer.

Løsningsalgoritmer

I en vilkårlig multiplikativ gruppe

Artiklen af ​​J. Buchmann, MJ Jacobson og E. Teske er viet til løsbarheden og løsningen af ​​det diskrete logaritmeproblem i en vilkårlig finit Abelsk gruppe. [1] Algoritmen bruger en tabel bestående af par af elementer og udfører multiplikationer. Denne algoritme er langsom og ikke egnet til praktisk brug. For specifikke grupper er der deres egne, mere effektive algoritmer.

I ringen af ​​rester modulo prime

Overvej sammenligningen

(2)

hvor  er et primtal og er ikke deleligt med uden en rest. Hvis er et genererende element i gruppen , så har ligning (2) en løsning for enhver . Sådanne tal kaldes også primitive rødder , og deres tal er , hvor  er Euler-funktionen . Løsningen af ​​ligning (2) kan findes ved formlen:

Kompleksiteten ved at beregne denne formel er dog værre end kompleksiteten af ​​opregning.

Følgende algoritme har kompleksitet .

Algoritme
  1. Tildel
  2. Beregn
  3. Opret en værditabel for og sorter den.
  4. Opret en værditabel for og sorter den.
  5. Find almindelige elementer i tabeller. For dem hvor
  6. Udstedelse .

Der er også mange andre algoritmer til at løse det diskrete logaritmeproblem i restfeltet. De er normalt opdelt i eksponentielle og subeksponentielle. En polynomiel algoritme til at løse dette problem eksisterer endnu ikke.

Algoritmer med eksponentiel kompleksitet
  1. Shanks' algoritme ( stor og lille trin algoritme , baby-step kæmpe-trin )
  2. Polyg-Hellman algoritme  - virker, hvis dekomponeringen af ​​et tal til primfaktorer er kendt. Sværhedsgrad :. Hvis de faktorer, som dekomponeres i, er små nok, så er algoritmen meget effektiv [2] .
  3. Pollards ρ-metode har et heuristisk kompleksitetsestimat [3] .
Subeksponentielle algoritmer

I L-notation estimeres beregningskompleksiteten af ​​disse algoritmer som aritmetiske operationer, hvor og  er nogle konstanter. Algoritmens effektivitet afhænger i høj grad af værdiernes nærhed og til henholdsvis 1 og 0.

  1. Adlemans algoritme dukkede op i 1979 [4] . Det var den første sub-eksponentielle diskrete logaritmealgoritme. I praksis er det dog ikke særlig effektivt. i denne algoritme .
  2. COS-algoritmen blev foreslået i 1986 af matematikerne Don Coppersmith, Andrew Odlyzko og Schroeppel [ 5 ] . I denne algoritme er konstanten , . I 1991 blev modulo-logaritmen udført ved hjælp af denne metode . I 1997 lavede Weber den modulo diskrete logaritme ved hjælp af en eller anden version af denne algoritme. Det er eksperimentelt blevet vist , at COS-algoritmen er bedre end talfeltsigten.
  3. Diskret logaritme ved hjælp af en talfeltsigte blev anvendt til diskret logaritme senere end til faktorisering af tal. De første ideer dukkede op i 1990'erne. Algoritmen foreslået af D. Gordon i 1993 havde heuristisk kompleksitet [6] , men viste sig at være ret upraktisk. Senere blev der foreslået mange forskellige forbedringer af denne algoritme. Det har vist sig, at med en si er nummerfeltet hurtigere end COS. Moderne optegnelser i diskret logaritme opnås ved hjælp af denne metode.

De bedste parametre i estimeringen af ​​kompleksitet i øjeblikket er , [7] .

For numre af en særlig art kan resultatet forbedres. I nogle tilfælde er det muligt at konstruere en algoritme, for hvilken konstanterne vil være , . På grund af det faktum, at konstanten er tæt nok på 1, kan sådanne algoritmer overhale algoritmen med .

I et vilkårligt begrænset felt

Problemet betragtes i feltet GF(q) , hvor ,  er simpelt.

  1. Indeksberegningsalgoritmen ( index-calculus ) er effektiv, hvis den er lille. I dette tilfælde har den et heuristisk kompleksitetsestimat .
  2. ElGamal-algoritmen , som dukkede op i 1985, er anvendelig til og har kompleksiteten af ​​aritmetiske operationer.
  3. Coppersmiths algoritme for diskret logaritme i et endeligt felt med karakteristik 2 blev den første subeksponentielle diskrete logaritmealgoritme med en konstant i kompleksitetsestimatet . Denne algoritme dukkede op i 1984  - før opfindelsen af ​​talfeltsigten [8] .

I en gruppe af punkter på en elliptisk kurve

En gruppe af punkter i en elliptisk kurve over et begrænset felt betragtes. Denne gruppe definerer operationen med at tilføje to punkter. Så  er dette . Løsningen på problemet med diskret logaritme på en elliptisk kurve er at finde et sådant naturligt tal , at for givne punkter og

Indtil 1990 var der ingen diskrete logaritmealgoritmer, der tog højde for de strukturelle træk ved en gruppe punkter på en elliptisk kurve. Efterfølgende foreslog Alfred Menezes , Tatsuaki Okamoto og Scott Vanstone en algoritme ved hjælp af Weil-parring [9] . For en elliptisk kurve defineret over et felt , reducerer denne algoritme det diskrete logaritmeproblem til et lignende problem i et felt . Denne reduktion er dog kun nyttig, hvis graden er lille. Denne betingelse er opfyldt hovedsageligt for supersingulære elliptiske kurver. I andre tilfælde fører en sådan reduktion næsten aldrig til subeksponentielle algoritmer.

Beregningsmæssig kompleksitet og applikationer i kryptografi

Det diskrete logaritmeproblem er et af hovedproblemerne, som offentlig nøglekryptografi er baseret på . De klassiske kryptografiske skemaer baseret på det er Diffie-Hellman fælles nøglegenereringsskema [10] , ElGamal elektroniske signaturskema [11] [12] , Massey-Omura kryptosystem [13] til meddelelsestransmission. Deres kryptografiske styrke er baseret på den formodede høje beregningsmæssige kompleksitet ved at invertere den eksponentielle funktion. Selvom selve eksponentialfunktionen beregnes ret effektivt, har selv de mest moderne algoritmer til beregning af den diskrete logaritme en meget høj kompleksitet, som kan sammenlignes med kompleksiteten af ​​de hurtigste algoritmer til faktorisering af tal .

En anden mulighed for effektivt at løse problemet med at beregne den diskrete logaritme er relateret til kvanteberegning . Det er blevet teoretisk bevist, at ved brug af Shor 's algoritme kan den diskrete logaritme beregnes i polynomisk tid [14] [15] [16] . Under alle omstændigheder, hvis en polynomial algoritme til beregning af den diskrete logaritme er implementeret, vil dette betyde, at kryptosystemer baseret på den praktisk talt er uegnede til langsigtet databeskyttelse. En række ideer til at skabe nye offentlige nøglealgoritmer overvejes .

Noter

  1. ↑ Buchmann  J. , Jacobson MJ, Teske E. Om nogle beregningsmæssige problemer i finite abelske grupper  // Mathematics of Computation : journal. - 1997. - Bd. 66 . - S. 1663-1687 . - doi : 10.1090/S0025-5718-97-00880-6 .
  2. S. Pohlig, M. Hellman. En forbedret algoritme til beregning af logaritmer og dens kryptografiske betydning (Corresp.)  // IEEE Transactions on Information Theory. - 1978. - Januar ( bind 24 , hæfte 1 ). - S. 106-110 . — ISSN 0018-9448 . - doi : 10.1109/TIT.1978.1055817 . Arkiveret fra originalen den 21. juni 2018.
  3. JM Pollard. Monte Carlo metoder til indeksberegning (mod p)  // Mathematics of Computation. - 1978. - Januar ( bind 32 , hæfte 143 ). - S. 918-924 . - doi : 10.1090/S0025-5718-1978-0491431-9 .
  4. L. Adleman. En subeksponentiel algoritme til det diskrete logaritmeproblem med applikationer til kryptografi  // 20th Annual Symposium on Foundations of Computer Science. - 1979. - Oktober. - S. 55-60 . - doi : 10.1109/SFCS.1979.2 . Arkiveret fra originalen den 10. maj 2017.
  5. Don Coppersmith, Andrew M. Odlzyko, Richard Schroeppel. Diskrete logaritmer i GF(p)  (engelsk)  // Algorithmica. - 1986. - November ( bind 1 , udg. 1-4 ). - S. 1-15 . - doi : 10.1007/BF01840433 . Arkiveret fra originalen den 13. april 2018.
  6. Daniel M. Gordon. Diskrete logaritmer i GF(p) Brug af talfeltsigten  // SIAM Journal om diskret matematik. - 1993. - T. 6 , no. 1 . - S. 124-138 . - doi : 10.1137/0406010 .
  7. Don Coppersmith. Ændringer af Number Field Sieve  //  Journal of Cryptology. - 1993. - Bd. 6 , iss. 3 . - S. 169-180 . - doi : 10.1007/BF00198464 . Arkiveret fra originalen den 19. juni 2018.
  8. D. Kobbersmed. Hurtig evaluering af logaritmer i felter med karakteristisk to  // IEEE Transactions on Information Theory. - 1984. - Juli ( bind 30 , hæfte 4 ). - S. 587-594 . — ISSN 0018-9448 . - doi : 10.1109/TIT.1984.1056941 .
  9. AJ Menezes, T. Okamoto, SA Vanstone. Reduktion af elliptiske kurvelogaritmer til logaritmer i et begrænset felt  // IEEE Transactions on Information Theory. — 1993-09-01. - T. 39 , no. 5 . - S. 1639-1646 . — ISSN 0018-9448 . - doi : 10.1109/18.259647 . Arkiveret fra originalen den 2. juli 2017.
  10. Diffie, Hellman, 1976 .
  11. Elgamal, 1984 .
  12. Elgamal, 1985 .
  13. James L. Massey, Jimmy K. Omura. Fremgangsmåde og apparat til at opretholde privatlivets fred for digitale meddelelser, der formidles ved offentlig transmission (28. januar 1986). Arkiveret fra originalen den 20. oktober 2016.
  14. Shor, 1994 .
  15. Shor PW Polynomial-Time Algorithms for Prime Factorization and Discrete Logaritms on a Quantum Computer // Fundamenter for datalogi: Konferencepublikationer. - 1997. - S. 1484-1509.
  16. CompuTerra Online #224 - Kvantecomputere og kvantecomputere ... Samtale med kandidaten for fysiske og matematiske videnskaber, en ekspert i teorien om algoritmer Mikhail Vyaly (Computing Center for det russiske videnskabsakademi)

Links