Digitalni potpisi se oslanjaju na arhitekturu kriptografije s javnim ključem za provjeru autentičnosti dokumenta i identifikacije pošiljatelja. Dva standardna načina za dobivanje digitalnih potpisa su algoritmi RSA (Rivest–Shamir–Adleman) i DSA (Digitalni potpis), ali se oba razlikuju u obavljanju funkcija šifriranja i dešifriranja.

Članak daje pregled jednog od industrijskih standardnih algoritama DSA, njegov radni proces s kratkim pregledom generiranja i provjere ključa i potpisa, koraka uključenih u cjelokupni proces, njegovih prednosti/protiv i njegove primjena.

Uvod u algoritme digitalnog potpisa

DSA (Algoritam digitalnog potpisa) uključuje algebarska svojstva problema diskretnog logaritma i modularne eksponencijacije za generiranje elektroničkog potpisa za različite aplikacije. Predložen je 1991., a usvojen je kao federalni standard za obradu informacija od strane NIST-a (Nacionalni institut za standarde i tehnologiju) 1994. godine.

Većina algoritama za stvaranje digitalnog potpisa slijedi tipičnu tehniku ​​potpisivanja sažetka poruke (hash stvarne poruke) s izvornim privatnim ključem za stvaranje digitalnog otiska.

instagram viewer

Međutim, situacija je drugačija u DSA-u jer generira dva potpisa uključivanjem dvije složene i jedinstvene funkcije potpisivanja i provjere. Dakle, DSA algoritam nije jednostavna upotreba privatnih i javnih ključeva na početku i na kraju komunikacije.

Važnost algoritma digitalnog potpisa

Zbog sve većih cyber prijetnji, kad god korisnik pošalje podatke putem interneta, potrebno je identificirati i provjeriti autentičnost vlasnika. Moramo osigurati da je vlasnik dokumenta vjerodostojan i da nitko nije napravio nikakve promjene tijekom prijenosa.

Digitalni potpisi su elektronički potpisi koji primatelju pomažu pri provjeravanju autentičnosti podrijetla poruke. Ove elektroničke potpise možete kreirati putem različitih algoritama, a DSA je jedan od njih. U DSA, pošiljatelj stvara digitalni potpis kako bi ga uključio u poruku tako da ga bilo tko može provjeriti na kraju primatelja.

Prednosti koje DSA nudi su:

  • Neodbacivanje: nakon provjere potpisa pošiljatelj ne može tvrditi da nije poslao podatke.
  • Integritet: izmjena podataka tijekom prijenosa sprječava konačnu provjeru ili dešifriranje poruke.
  • Provjera autentičnosti poruke: ispravna kombinacija privatnih/javnih ključeva pomaže u provjeri porijekla pošiljatelja.

Kako algoritam provjerava autentičnost pošiljatelja?

DSA algoritam radi na mehanizmu sustavnog izračuna koji izračunava hash vrijednost i digitalni potpis koji čine dva 160-bitna broja iz sažetka poruke i privatnog ključa. Slučajnost čini potpis nedeterminističkim. Koristi javni ključ za provjeru autentičnosti potpisa, što je mnogo složenije od RSA.

DSA ciklus slijedi ova tri glavna koraka za dovršetak procesa:

  • Generacija ključeva: Proces se oslanja na koncept modularne eksponencijacije za dobivanje privatnih (x) i javnih (y) ključeva koji zadovoljavaju matematičke uvjete od 0 < x < q i y = gx mod p. Gdje je q prost djelitelj, p je prost broj, a g zadovoljava ove uvjete g**q mod p = 1 i g = h**((p–1)/q) mod p. Tako se stvaraju privatni i javni paketi ključeva {p, q, g, x} i {p, q, g, y}.
  • Generiranje potpisa: Algoritam raspršenja generira sažetak poruke, koji se prosljeđuje kao ulaz u funkciju potpisivanja za stvaranje dvije varijable izlazi, r i s, zapakirani kao potpis {r, s} tako da se poruka i ove varijable šalju kao paket na prijamnik.
  • Provjera potpisa: Proces koristi funkciju raspršivanja za izlaz sažetka i uključuje varijablu s s drugim parametrima iz koraka generiranja ključa za proizvodnju komponente provjere v. Funkcija provjere uspoređuje izračunatu varijablu v s parametrom r iz skupa {M, s, r}.

Da sažeti gornji proces nematematički:

  • Za potpisivanje dokumenta stvarate ključeve uz pomoć algoritma za generiranje ključeva.
  • Zatim upotrijebite algoritam digitalnog potpisa za generiranje potpisa.
  • Koristi hash funkcija za stvaranje sažetka porukei kombinirajte ga s DSA za generiranje digitalnog potpisa.
  • Pošaljite potpis s podacima za provjeru autentičnosti primatelja.
  • Primatelj provjerava autentičnost potpisa pomoću algoritma za provjeru. To je hash funkcija korištena iznad za stvaranje sažetka poruke.

Prednosti korištenja algoritma digitalnog potpisa

  • Brzo izračunavanje potpisa
  • Zahtijeva manje prostora za pohranu za cijeli proces
  • Besplatno dostupno (bez patenta) za besplatnu globalnu upotrebu.
  • Mala dužina potpisa
  • Promatranje u stvarnom vremenu
  • Neinvazivni
  • DSA je globalno prihvaćen za usklađenost sa zakonima.
  • Vremenski učinkovit (mala potrošnja vremena u usporedbi s procesima fizičkog potpisivanja itd.)

Nedostaci korištenja algoritma digitalnog potpisa

  • Proces ne uključuje mogućnosti razmjene ključeva.
  • The temeljna kriptografija mora biti nova kako bi osigurala svoju snagu.
  • Standardizacija dobavljača računalnog hardvera i softvera na RSA-u može uzrokovati probleme zbog drugog DSA standarda za provjeru autentičnosti.
  • Složene operacije ostatka zahtijevaju puno vremena za izračunavanje, a time i provjeru potpisa.
  • Osigurava samo provjeru autentičnosti, a ne povjerljivost, jer algoritam ne šifrira podatke.
  • DSA algoritmi izračunavaju SHA1 hash za generiranje sažetka poruke. Dakle, odražava sve nedostatke SHA1 hash funkcije u algoritmu.

DSA VS RSA

Algoritam digitalnog potpisa je algoritam za šifriranje asimetričnog ključa koji su usvojile američke agencije za tajnu i netajnu komunikaciju. Dok je RSA kriptografski algoritam s javnim ključem koji također koristi modularnu aritmetiku, njegova snaga se oslanja na problem faktorizacije prostih brojeva kako bi se osigurala komunikacija i digitalni potpisi. Stoga, za razliku od uobičajenih algoritama za šifriranje kao što je RSA, DSA je standard samo za digitalne potpise.

Iako oba uključuju različite matematičke algoritme, snaga kriptografije je ekvivalentna. Glavna razlika između dva algoritama sužava se na brzinu, performanse i podršku za SSH protokol.

  • Za razliku od DSA, RSA je spor u dešifriranju, generiranju ključeva i provjeri, ali brz u šifriranju i potpisivanju. Međutim, provjera autentičnosti zahtijeva oboje, a odstupanja u brzini su beznačajna u aplikacijama u stvarnom svijetu.
  • Druga razlika leži u podršci za mrežni protokol Secure Shell. RSA podržava originalni SSH i njegovu sigurnu drugu verziju SSH2, dok DSA radi samo sa SSH2.

Ovjerite izvor podataka pomoću DSA

Digitalni potpisi su potreba današnjeg međusobno povezanog svijeta za stvaranje sigurnog i sigurnog okruženja. Oni su izvrstan način za provjeru autentičnosti bilo kojeg zapisa putem interneta. Članak predstavlja algoritme Digitalnog potpisa s kratkim pregledom procesa njegovog rada, prednostima, nedostacima, sigurnosnim ograničenjima te usporedbom s RSA-om.

TLS vs. SSL: u čemu je razlika i kako funkcionira

O ova dva protokola za šifriranje često se govori zajedno, ali što su oni i kako rade?

Pročitajte dalje

UdioCvrkutE-mail
Povezane teme
  • Sigurnost
  • Digitalni potpisi
O autoru
Rumaisa Niazi (Objavljeno 17 članaka)

Rumaisa je slobodni pisac u MUO. Nosila je mnogo šešira, od matematičarke do entuzijasta za informacijsku sigurnost, a sada radi kao analitičar SOC-a. Njezini interesi uključuju čitanje i pisanje o novim tehnologijama, distribucijama Linuxa i svemu oko informacijske sigurnosti.

Više od Rumaise Niazi

Pretplatite se na naše obavijesti

Pridružite se našem biltenu za tehničke savjete, recenzije, besplatne e-knjige i ekskluzivne ponude!

Kliknite ovdje za pretplatu