Digitaalallkirjad tuginevad avaliku võtmega krüptoarhitektuurile, et kontrollida dokumendi autentsust ja saatja identifitseerimist. Kaks standardset viisi digitaalallkirjade saamiseks on RSA (Rivest–Shamir–Adleman) ja DSA (Digital Signature) algoritmid, kuid mõlemad erinevad krüptimise ja dekrüpteerimise funktsioonide täitmise poolest.

Artiklis antakse ülevaade ühest tööstusstandardi algoritmist DSA, selle tööprotsessist koos lühikese ülevaatega võtmete ja allkirjade genereerimise ja kontrollimise, üldise protsessi sammude, selle plusside/miinuste ja selle rakendus.

Sissejuhatus digitaalallkirja algoritmidesse

DSA (Digital Signature Algorithm) sisaldab diskreetsete logaritmiprobleemide algebralisi omadusi ja modulaarseid astendeid erinevate rakenduste jaoks elektroonilise allkirja genereerimiseks. See pakuti välja 1991. aastal ja NIST (National Institute of Standards and Technology) võttis selle 1994. aastal vastu föderaalse teabetöötlusstandardina.

Enamik digitaalallkirja loomise algoritme järgib digitaalse pöidlajälje loomiseks tüüpilist sõnumi kokkuvõtte (tegeliku sõnumi räsi) allkirjastamise tehnikat privaatvõtmega.

instagram viewer

DSA puhul on olukord aga erinev, kuna see genereerib kaks allkirja, ühendades kaks keerukat ja ainulaadset allkirjastamis- ja kontrollifunktsiooni. Seega ei ole DSA-algoritm lihtne privaatsete ja avalike võtmete kasutamine suhtluse alguses ja lõpus.

Digitaalallkirja algoritmi tähtsus

Pidevalt suurenevate küberohtude tõttu on alati, kui kasutaja saadab andmeid Interneti kaudu, tuvastada ja kontrollida omaniku autentsust. Peame tagama, et dokumendi omanik on usaldusväärne ja et keegi pole edastamise ajal muudatusi teinud.

Digitaalallkirjad on elektroonilised allkirjad, mis aitavad vastuvõtjal sõnumi päritolu autentida. Neid elektroonilisi allkirju saate luua erinevate algoritmide abil ja DSA on üks neist. DSA-s loob saatja digitaalallkirja, mis lisab selle sõnumile, nii et igaüks saab selle vastuvõtvas otsas autentida.

DSA pakutavad eelised on järgmised:

  • Keeldumine: pärast allkirja kontrollimist ei saa saatja väita, et ta pole andmeid saatnud.
  • Terviklikkus: andmete muutmine edastamise ajal takistab lõplikku kinnitamist või sõnumi dekrüpteerimist.
  • Sõnumi autentimine: õige privaatsete/avalike võtmete kombinatsioon aitab kontrollida saatja päritolu.

Kuidas algoritm saatja autentib?

DSA-algoritm töötab süstemaatilisel arvutusmehhanismil, mis arvutab räsiväärtuse ja digitaalallkirja, mis moodustavad kaks 160-bitist numbrit sõnumi kokkuvõttest ja privaatvõtmest. Juhuslikkus muudab allkirja mittedeterministlikuks. See kasutab allkirja autentimiseks avalikku võtit, mis on palju keerulisem kui RSA.

DSA tsükkel järgib protsessi lõpuleviimiseks kolme peamist sammu.

  • Võtme genereerimine: Protsess tugineb modulaarse astendamise kontseptsioonile, et saada privaatsed (x) ja avalikud (y) võtmed, mis vastavad matemaatilistele tingimustele 0 < x < q ja y = gx mod p. Kus q on algjagaja, p on algarv ja g täidab need g**q mod p = 1 ja g = h**((p–1)/q) mod p tingimused. Nii luuakse privaat- ja avaliku võtme paketid {p, q, g, x} ja {p, q, g, y}.
  • Allkirja genereerimine: Räsimisalgoritm genereerib sõnumi kokkuvõtte, mis edastatakse sisendina allkirjastamisfunktsioonile kahe muutuja loomiseks väljundid r ja s, pakitud signatuurina {r, s} nii, et sõnum ja need muutujad saadetakse paketina vastuvõtja.
  • Allkirja kinnitamine: Protsess kasutab kokkuvõtte väljastamiseks räsifunktsiooni ja sisaldab muutujat s koos muude võtme genereerimisetapi parameetritega, et luua kinnituskomponent v. Kinnitusfunktsioon võrdleb arvutatud muutujat v parameetriga r kimbust {M, s, r}.

Ülaltoodud protsessi mittematemaatiliseks kokkuvõtteks:

  • Dokumendi allkirjastamiseks loote võtmed võtme genereerimise algoritmi abil.
  • Seejärel kasutage allkirja genereerimiseks digitaalallkirja algoritmi.
  • Kasuta räsifunktsioon sõnumi kokkuvõtte loomiseksja ühendage see digitaalallkirja loomiseks DSA-ga.
  • Saatke allkiri koos andmetega, et vastuvõtja saaks autentida.
  • Vastuvõtja autentib allkirja kinnitusalgoritmi abil. See on ülaltoodud räsifunktsioon, mida kasutatakse sõnumi kokkuvõtte loomiseks.

Digiallkirja algoritmi kasutamise plussid

  • Kiire allkirja arvutamine
  • Nõuab kogu protsessi jaoks vähem salvestusruumi
  • Vabalt saadaval (patendivaba) tasuta ülemaailmseks kasutamiseks.
  • Väike allkirja pikkus
  • Vaatlus reaalajas
  • Mitteinvasiivne
  • DSA on juriidilise vastavuse tagamiseks tunnustatud ülemaailmselt.
  • Ajasäästlik (väike ajakulu võrreldes füüsilise allkirjastamise jms protsessidega)

Digitaalallkirja algoritmi kasutamise miinused

  • Protsess ei sisalda võtmevahetusvõimalusi.
  • The aluseks olev krüptograafia peab selle tugevuse tagamiseks olema uus.
  • Arvuti riist- ja tarkvaramüüjate standardimine RSA-s võib DSA teise autentimisstandardi tõttu probleeme põhjustada.
  • Ülejäänud keerukad toimingud nõuavad palju aega arvutamiseks ja seega allkirja kontrollimiseks.
  • See tagab ainult autentimise, mitte konfidentsiaalsuse, kuna algoritm andmeid ei krüpteeri.
  • DSA algoritmid arvutavad sõnumi kokkuvõtte genereerimiseks SHA1 räsi. Seega peegeldab see kõiki algoritmi SHA1 räsifunktsiooni vigu.

DSA VS RSA

Digitaalallkirja algoritm on asümmeetrilise võtmega krüpteerimisalgoritm, mille USA agentuurid kasutavad salajaseks ja mittesalajaseks suhtluseks. Kui RSA on avaliku võtmega krüptograafiaalgoritm, mis kasutab ka modulaarset aritmeetikat, siis selle tugevus sõltub side ja digitaalallkirjade turvaliseks muutmise algarvude faktoriseerimise probleemist. Seega, erinevalt tavalistest krüpteerimisalgoritmidest, nagu RSA, on DSA standard ainult digitaalallkirjade jaoks.

Kuigi mõlemad sisaldavad erinevaid matemaatilisi algoritme, on krüptograafia tugevus samaväärne. Peamine erinevus kahe algoritmi vahel kitseneb kiiruse, jõudluse ja SSH-protokolli toega.

  • Erinevalt DSA-st on RSA aeglane dekrüpteerimisel, võtme genereerimisel ja kinnitamisel, kuid kiire krüpteerimisel ja allkirjastamisel. Autentimine nõuab aga mõlemat ja kiiruse erinevused on tegelikes rakendustes tähtsusetud.
  • Teine erinevus seisneb Secure Shelli võrguprotokolli toes. RSA toetab algset SSH-d ja selle turvalist teist versiooni SSH2, samas kui DSA töötab ainult SSH2-ga.

Autentige andmeallikas DSA-ga

Digitaalallkirjad on tänapäeva omavahel seotud maailma jaoks turvalise ja turvalise keskkonna loomiseks vajalikud. Need on suurepärane viis mis tahes kirje autentimiseks Interneti kaudu. Artiklis tutvustatakse digitaalallkirja algoritme koos lühiülevaatega selle tööprotsessist, eelistest, puudustest, turvapiirangutest ning võrdlusest RSA-ga.

TLS vs. SSL: mis vahe on ja kuidas see töötab?

Nendest kahest krüpteerimisprotokollist räägitakse sageli koos, kuid mis need on ja kuidas need töötavad?

Loe edasi

JagaSäutsMeil
Seotud teemad
  • Turvalisus
  • Digiallkirjad
Autori kohta
Rumaisa Niazi (17 avaldatud artiklit)

Rumaisa on MUO vabakutseline kirjanik. Ta on kandnud palju mütse, alates matemaatikust kuni infoturbe entusiastini, ja töötab nüüd SOC analüütikuna. Tema huvid hõlmavad uute tehnoloogiate, Linuxi distributsioonide ja kõige muu infoturbega seotud lugemist ja kirjutamist.

Veel Rumaisa Niazist

Liituge meie uudiskirjaga

Liituge meie uudiskirjaga tehniliste näpunäidete, arvustuste, tasuta e-raamatute ja eksklusiivsete pakkumiste saamiseks!

Tellimiseks klõpsake siin