Merklen allekirjoitus

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 27. marraskuuta 2016 tarkistetusta versiosta . tarkastukset vaativat 46 muokkausta .

Merkle -allekirjoitus on postkvantti-  ja uudelleenkäytettävä digitaalinen allekirjoitusalgoritmi , joka perustuu Merkle-puun käyttöön ja jonkinlaiseen kertaluonteiseen digitaaliseen allekirjoitukseen. [yksi]

Historia

Ralph Merkle julkaisi allekirjoituksen ensimmäisen kerran vuonna 1979 artikkelissaan "Secrecy, authentication and public key systems" [2] uudelleenkäytettävänä digitaalisena allekirjoituksena käyttäen Lamportin kerta-allekirjoitusta . [3]

Algoritmin kuvaus

Valmistelu

Merklen allekirjoitus perustuu jo olemassa olevaan kertaluonteiseen digitaaliseen allekirjoitukseen, jonka kryptografisen vahvuuden tulee perustua kryptografisesti turvalliseen hajautustoimintoon . Esimerkkejä tällaisista allekirjoituksista ovat Winternitzin kertaluonteinen allekirjoitusjärjestelmä tai Lamportin allekirjoitus . [4] Kertaluonteisen digitaalisen allekirjoituksen tulisi sisältää kolme päätoimintoa: [5]

On myös tarpeen päättää kryptonkestävästä hash-funktiosta , jota käytetään myöhemmin julkisen avaimen laskemiseen. [neljä]

Avaimen luominen

Näppäinten ja pituuksien joukot luodaan . Pituus valitaan potenssiksi kaksi, koska Merkle-puun rakentaminen on välttämätöntä. Jokaista paria käytetään yksityisen ja julkisen avaimen parina kertaluonteiseen perusallekirjoitukseen. Array  - on Merkle-allekirjoituksen yksityinen avain, Merkle-puu on rakennettu luomaan julkista avainta:

Rakennetun Merkle-puun juuri otetaan julkiseksi avaimeksi: . [6]

Allekirjoituksen luominen

Allekirjoituksen luomiseksi taulukoista ja valitaan -. avainpari Viesille lasketaan yksityisellä avaimella kertaluonteinen digitaalinen allekirjoitus . Harkitse seuraavaksi polkua Merkle-puun juuresta avainta vastaavaan lehteen . Merkitään pisteet, joiden kautta tämä polku kulkee taulukona , jonka pituus on , jossa  on puun juuri ja  on . Kunkin huippupisteen arvo paitsi , lasketaan muodossa , missä ja ovat välittömiä jälkeläisiä . Näin ollen polun laskemiseksi puun juuresta riittää, että tunnetaan kärkijoukko , jota kutsumme autentikointipoluksi. Näin ollen viestin allekirjoitus sisältää: vahvistusavaimen , kertaluonteisen allekirjoituksen ja todennuspolun polun laskemiseksi puun juureen. [7]

Allekirjoituksen vahvistus

Ensin vastaanottaja vertaa kertaluonteisen allekirjoituksen viestiin . Jos tarkistus onnistui, se alkaa rakentaa polkua puun juurelta. Ensin , sitten , ja niin edelleen. Jos , allekirjoituksen vahvistus onnistui. [kahdeksan]

Edut

Post-kvantti

Yleisesti käytetyt digitaalisen allekirjoituksen algoritmit, kuten RSA ja DSA , hyödyntävät lukukertoimien monimutkaisuutta ja diskreetin logaritmin laskemisen monimutkaisuutta . Kuitenkin käyttämällä Shorin algoritmia ja kvanttitietokonetta nämä allekirjoitukset voidaan rikkoa polynomiajassa. Sitä vastoin Merklen allekirjoitus on postkvantti, koska sen kryptografinen vahvuus perustuu kryptografisen hajautusfunktion vahvuuteen ja kertaluonteisen digitaalisen allekirjoituksen vahvuuteen. [yksi]

Uudelleenkäytettävyys

Yksi vahvoihin hajautustoimintoihin perustuvien digitaalisten allekirjoitusten suurimmista ongelmista on, että niitä käytetään tyypillisesti kertaluonteisten digitaalisten allekirjoitusten yhteydessä, eli allekirjoituksissa, joissa yhdellä avainparilla allekirjoitetaan vain yksi viesti. On kuitenkin olemassa tapoja laajentaa tällaisia ​​allekirjoituksia uudelleenkäytettäviksi. Yksi tällainen tapa on rakentaa Merkle-puu, jota käytetään erilaisten kertaluonteisten allekirjoitusten todentamiseen . [9]

Haitat

Puun läpikulkuongelma

Tämä ongelma liittyy tehokkaan algoritmin löytämiseen todennustietojen laskemiseen. Triviaali ratkaisu - pitää kaikki tiedot muistissa - vaatii liikaa muistia. Toisaalta lähestymistapa todennuspolun laskemiseksi alueella, jossa sitä tarvitaan, tulee olemaan liian kallista joillekin puusolmuille. [10] Jos X- ja Y-taulukoiden pituus on suurempi kuin 2^25, Merklen allekirjoituksen käytöstä tulee epäkäytännöllistä. [kahdeksan]

Kryptanalysis

Merklen digitaalisen allekirjoituksen algoritmin on osoitettu olevan kryptografisesti vahva adaptiivista viestinvalintahyökkäystä vastaan, jos se käyttää hash-funktiota, joka kestää tyypin 2 törmäyksiä . [11] [12] Merklen allekirjoituksen murtamiseksi kryptanalyytikon on kuitenkin joko rekonstruoitava hash-funktion esikuva tai laskettava tyypin I törmäys. Tämä tarkoittaa, että käytännössä Merklen allekirjoituksen kryptografinen vahvuus perustuu käytetyn hash-funktion peruuttamattomuuteen ja sen kestävyyteen ensiluokkaisia ​​törmäyksiä vastaan. [12]



Muistiinpanot

  1. 12 CMSS , 2006 , s. 349-350.
  2. Merkle, 1979 .
  3. Turvallisuus, 2005 , s. yksi.
  4. 12 CMSS , 2006 , s. 352.
  5. CMSS, 2006 , s. 351.
  6. Turvallisuus, 2005 , s. 3.
  7. CMSS, 2006 , s. 352-353.
  8. 12 CMSS , 2006 , s. 353.
  9. dods2005hash, 2005 , s. 96.
  10. szydlo2004merkle, 2004 , s. 541.
  11. Turvallisuus, 2005 , s. neljä.
  12. 1 2 rohde2008fast, 2008 , s. 109.

Kirjallisuus