ECDLP

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 26. tammikuuta 2015 tarkistetusta versiosta . tarkastukset vaativat 13 muokkausta .

ECDLP (Elliptic Curve Discrete Logathm Problem)  on diskreetti logaritmiongelma elliptisen käyrän pisteryhmässä .

Olkoon elliptinen käyrä E, äärellinen kenttä F p ja pisteet P, Q ∈ E(F p ). ECDLP:n tehtävänä on löytää sellainen k, jos se on olemassa, että Q = [k]P.

Määritelmät

Elliptinen käyrä E äärellisen kentän F p päällä on muotoa (Weierstrassin muoto):

, missä a, b ∈ F p .

Pistejoukko elliptisellä käyrällä kentässä F p , mukaan lukien piste "ääretön" (merkitty Ο), muodostaa äärellisen Abelin ryhmän ja sitä merkitään E(F p ) .

Pistettä Q ∈E (F p ) kutsutaan käänteispisteeksi pisteelle P ∈ E(F p ), jos P + Q = Ο ja sitä merkitään Q = -P .

Luonnolliselle luvulle n ja P ∈ E(F p ) oletetaan:

Merkinnät [n]P ja nP ovat samanarvoisia. Määritelmä voidaan laajentaa mihin tahansa kokonaislukuun n käyttämällä -P:tä.

Pisteryhmän järjestys on luku N, joka on yhtä suuri kuin joukon E(F p ) kardinaliteetti, ja sitä merkitään |E(F p )| =N . Yleensä elliptisessä kryptografiassa käyrät otetaan siten, että N = h * l, missä h = 1, 2 tai 4, ja l on suuri alkuluku.

Pisteen P ∈ E(Fp) kertaluku on minimiluku s siten, että [s]P = Ο. Tässä tapauksessa muodostetaan aliryhmä ja pistettä P kutsutaan generaattoriksi .

Ratkaisualgoritmit

Täysi luettelo

Se on yksinkertaisin toteuttaa hyökkäys. On tarpeen vain pystyä suorittamaan operaatio R = [k]P.

Algoritmi
  1. jos , niin  - ratkaisu
  2. muu ; mene kohtaan [2].

Algoritmin monimutkaisuus: Ο(N).

Polig-Hellman-algoritmi

Kuvaus

Olkoon G aliryhmä E(F p ), (eli oletetaan, että luku N voidaan kertoa) ja .

Ratkaisemme ongelman löytää k modulo , sitten kiinalaisen jäännöslauseen avulla löydämme ratkaisun k modulo N.

Ryhmäteoriasta tiedetään, että on olemassa ryhmäisomorfismi:

missä  on G:n syklinen alaryhmä,

Sitten projektio :

Siksi vuonna .

Näytämme, kuinka ongelma ratkaistaan ​​luvussa , pelkistämällä se ECDLP:n ratkaisemiseen kohdassa .

Anna ja .

Numero on määritelty modulo . Sitten k voidaan kirjoittaa seuraavassa muodossa:

Etsitään arvot induktiolla. Oletetaan, että tiedämme  - arvon , eli

Nyt haluamme määrittää ja siten laskea :

Sitten .

Anna ja sitten

Nyt  - järjestyselementti , järjestyksen elementin saamiseksi ja siten ongelman vähentämiseksi on tarpeen kertoa edellinen lauseke luvulla . Että.

ja

Vastaanotettu ECDLP kentällä nimellä .

Olettaen, että tämä ongelma voidaan ratkaista kohdassa , löydämme ratkaisun kohdassa . Kiinan jäännöslauseen avulla saadaan ECDLP-ratkaisu .

Kuten edellä mainittiin, käytännössä elliptiset käyrät otetaan siten, että , missä  on erittäin suuri alkuluku, mikä tekee tästä menetelmästä tehottoman.

Esimerkki

Vaihe 1. Etsi

  • Löydämme pisteiden projektiot :
  • Me päätämme

Vaihe 2. Etsi

  • Löydämme pisteiden projektiot :
  • Me päätämme
Huomaa se sitten

Vaihe 3. Etsi

  • Löydämme pisteiden projektiot :
  • Me päätämme

Vaihe 4. Etsi

  • Kiinalaisesta jäännöslauseesta edellisissä vaiheissa 1-3 saaduille arvoille saamme sen

Shanksin algoritmi (Baby-Step/Giant-Step-menetelmä)

Kuvaus

Antaa olla  syklinen alaryhmä .

Laitetaan se muotoon:

Siitä lähtien .

Laskemme luettelon "pienistä askeleista" ja tallennamme parit .

Laskelmien monimutkaisuus: .

Nyt laskemme "isot askeleet". Etsitään . _ _

Haun aikana yritämme löytää tallennettujen parien joukosta sellaisia, että . Jos sellainen pari olisi mahdollista löytää, niin .

Tai mikä on sama:

.

"Suurten vaiheiden" laskelmien monimutkaisuus: .

Tässä tapauksessa menetelmän yleinen monimutkaisuus , mutta vaatii myös muistia tallennusta varten, mikä on algoritmin merkittävä haitta.

Algoritmi
  1. Tallentaa
  2. sisäänkirjautumislista [2]

Pollardin ρ-menetelmä

Kuvaus

Antaa olla  syklinen alaryhmä .

Menetelmän pääideana on löytää erilliset parit ja modulo siten, että .

Sitten tai . Siksi ,.

Tämän idean toteuttamiseksi valitsemme iteraatioille satunnaisfunktion ja satunnaisen pisteen läpikäynnin aloittamiseksi. Seuraava piste lasketaan .

Koska  on rajallinen, on olemassa indeksejä niin, että .

Sitten .

Itse asiassa .

Tällöin sekvenssi  on jaksollinen jakson kanssa (katso kuva).

Koska f on satunnaisfunktio, syntymäpäiväparadoksin mukaan sattuma tapahtuu noin iteraatioiden jälkeen. Törmäysten etsinnän nopeuttamiseksi käytetään Floydin keksimää menetelmää syklin pituuden löytämiseksi: arvopari lasketaan kerralla, kunnes osuma löytyy.

Algoritmi
  1. Alustus. Valitse oksien lukumäärä L (yleensä 16 otetaan) Valitse toiminto
  2. Laskenta . Ota satunnainen
  3. Laskenta . Ota satunnainen
  4. Valmistautuminen kiertoon.
  5. Kierrä.
  6. Poistu. VIRHE tai suorita algoritmi uudelleen.

Algoritmin monimutkaisuus: .

Esimerkki

Vaihe 1. Määritä toiminto.

Vaihe 2. Iteraatiot.

Vaihe 3 Törmäyksen havaitseminen

  • osoitteessa :
  • Me ymmärrämme sen

Kirjallisuus

Bolotov, A. A., Gashkov, S. B., Frolov, A. B., Chasovskikh, A. A. Perusjohdanto elliptiseen kryptografiaan: Algebralliset ja algoritmiset perusteet. - M .: KomKniga, 2006. - S. 328. - ISBN 5-484-00443-8 .

Bolotov, A. A., Gashkov, S. B., Frolov, A. B., Chasovskikh, A. A. Perusjohdanto elliptiseen kryptografiaan: Elliptisen käyrän salausprotokollat. - M .: KomKniga, 2006. - S. 280. - ISBN 5-484-00444-6 .

Galbraith, SD, Smart, NP CRYPTREC:N ARVIOINTIRAPORTTI: KRYPTOGRAFIAN TURVALLISUUSTASO - ECDLP:N MATEMAATTINEN ONGELMA.

Kappale Y. Yan Quantum Attacks on ECDLP-pohjainen kryptosysteemi. - Springer USA, 2013 - ISBN 978-1-4419-7721-2