Digitálne podpisy sa spoliehajú na architektúru kryptografie s verejným kľúčom na overenie pravosti dokumentu a identifikácie odosielateľa. Dva štandardné spôsoby získavania digitálnych podpisov sú algoritmy RSA (Rivest–Shamir–Adleman) a DSA (digitálny podpis), ale oba sa líšia vo vykonávaní funkcií šifrovania a dešifrovania.

Článok poskytuje prehľad jedného z odvetvových štandardných algoritmov DSA, jeho pracovný proces so stručným prehľadom generovania a overovania kľúča a podpisu, kroky zahrnuté v celkovom procese, jeho klady/proti a jeho aplikácie.

Úvod do algoritmov digitálneho podpisu

DSA (Digital Signature Algorithm) zahŕňa algebraické vlastnosti diskrétnych logaritmických problémov a modulárnych umocňovaní na generovanie elektronického podpisu pre rôzne aplikácie. Bol navrhnutý v roku 1991 a bol prijatý ako federálny štandard spracovania informácií NIST (Národný inštitút pre štandardy a technológie) v roku 1994.

Väčšina algoritmov na vytváranie digitálnych podpisov sa riadi typickou technikou podpísania súhrnu správy (hash skutočnej správy) zdrojovým súkromným kľúčom na vytvorenie digitálneho odtlačku.

instagram viewer

Situácia je však iná v DSA, pretože generuje dva podpisy začlenením dvoch zložitých a jedinečných funkcií podpisovania a overovania. Algoritmus DSA teda nie je jednoduchým použitím súkromných a verejných kľúčov na začiatku a na konci komunikácie.

Význam algoritmu digitálneho podpisu

Z dôvodu neustále sa zvyšujúcich kybernetických hrozieb je vždy, keď používateľ posiela údaje cez internet, potrebné identifikovať a overiť pravosť vlastníka. Musíme zabezpečiť, aby bol vlastník dokumentu dôveryhodný a aby počas prenosu nikto neurobil žiadne zmeny.

Digitálne podpisy sú elektronické podpisy, ktoré pomáhajú príjemcovi overiť pôvod správy. Tieto elektronické podpisy môžete vytvárať pomocou rôznych algoritmov a DSA je jedným z nich. V DSA odosielateľ vytvorí digitálny podpis, ktorý ho zahrnie do správy tak, aby ju mohol ktokoľvek overiť na prijímacej strane.

Výhody, ktoré DSA ponúka, sú:

  • Neodmietnutie: po overení podpisu odosielateľ nemôže tvrdiť, že údaje neodoslal.
  • Integrita: úprava údajov počas prenosu zabraňuje konečnému overeniu alebo dešifrovaniu správy.
  • Overenie správ: správna kombinácia súkromných/verejných kľúčov pomáha overiť pôvod odosielateľa.

Ako algoritmus overuje odosielateľa?

Algoritmus DSA pracuje na systematickom výpočtovom mechanizme, ktorý vypočítava hodnotu hash a digitálny podpis tvoriaci dve 160-bitové čísla zo súhrnu správy a súkromného kľúča. Vďaka náhodnosti je podpis nedeterministický. Na autentifikáciu podpisu používa verejný kľúč, ktorý je oveľa zložitejší ako RSA.

Cyklus DSA sa riadi týmito tromi hlavnými krokmi na dokončenie procesu:

  • Generovanie kľúčov: Proces sa spolieha na koncept modulárneho umocňovania na získanie súkromných (x) a verejných (y) kľúčov, ktoré spĺňajú matematické podmienky 0 < x < q a y = gx mod p. Kde q je prvočíselný deliteľ, p je prvočíslo a g spĺňa tieto podmienky g**q mod p = 1 a g = h**((p–1)/q) mod p. Takto sa vytvárajú balíky súkromných a verejných kľúčov {p, q, g, x} a {p, q, g, y}.
  • Generovanie podpisu: Hašovací algoritmus generuje súhrn správy, ktorý sa odovzdá ako vstup do funkcie podpisovania na vytvorenie dvoch premenných výstupy, r a s, zabalené ako podpis {r, s} tak, že správa a tieto premenné sa posielajú ako balík do prijímač.
  • Overenie podpisu: Proces využíva hašovaciu funkciu na výstup súhrnu a zahŕňa premenné s s ďalšími parametrami z kroku generovania kľúča na vytvorenie overovacieho komponentu v. Verifikačná funkcia porovnáva vypočítanú premennú v s parametrom r zo zväzku {M, s, r}.

Ak chcete zhrnúť vyššie uvedený proces nematematicky:

  • Kľúče vytvoríte pomocou algoritmu generovania kľúčov na podpísanie dokumentu.
  • Potom na vygenerovanie podpisu použite algoritmus digitálneho podpisu.
  • Použite a hašovacia funkcia na vytvorenie súhrnu správya skombinujte ho s DSA na vygenerovanie digitálneho podpisu.
  • Pošlite podpis s údajmi príjemcovi na overenie.
  • Prijímač autentifikuje podpis pomocou overovacieho algoritmu. Je to hašovacia funkcia použitá vyššie na vytvorenie súhrnu správy.

Výhody použitia algoritmu digitálneho podpisu

  • Rýchly výpočet podpisu
  • Vyžaduje menej úložného priestoru pre celý proces
  • Voľne dostupné (bez patentov) na bezplatné globálne používanie.
  • Malá dĺžka podpisu
  • Pozorovanie v reálnom čase
  • Neinvazívne
  • DSA je celosvetovo akceptovaná z hľadiska súladu s právnymi predpismi.
  • Časovo efektívne (nízka časová náročnosť v porovnaní s procesmi fyzického podpisovania atď.)

Nevýhody použitia algoritmu digitálneho podpisu

  • Proces nezahŕňa možnosti výmeny kľúčov.
  • The základná kryptografia musí byť nový, aby sa zabezpečila jeho pevnosť.
  • Štandardizácia dodávateľov počítačového hardvéru a softvéru na RSA môže spôsobiť problémy v dôsledku druhého štandardu overovania DSA.
  • Zložité operácie so zvyškom vyžadujú veľa času na výpočet, a teda aj overenie podpisu.
  • Zabezpečuje iba autentifikáciu, nie dôvernosť, pretože algoritmus údaje nešifruje.
  • Algoritmy DSA vypočítajú hash SHA1, aby vytvorili súhrn správy. Preto odráža všetky nedostatky hašovacej funkcie SHA1 v algoritme.

DSA VS RSA

Algoritmus digitálneho podpisu je algoritmus šifrovania asymetrického kľúča, ktorý prijali agentúry USA na tajnú a neutajovanú komunikáciu. Zatiaľ čo RSA je kryptografický algoritmus s verejným kľúčom, ktorý tiež používa modulárnu aritmetiku, jeho sila sa spolieha na problém faktorizácie prvočísel na zabezpečenie komunikácie a digitálnych podpisov. Na rozdiel od bežných šifrovacích algoritmov, ako je RSA, je DSA štandardom iba pre digitálne podpisy.

Aj keď obidva obsahujú rôzne matematické algoritmy, sila kryptografie je ekvivalentná. Hlavný rozdiel medzi týmito dvoma algoritmami sa zužuje na rýchlosť, výkon a podporu protokolu SSH.

  • Na rozdiel od DSA je RSA pomalý v dešifrovaní, generovaní kľúčov a overovaní, ale rýchly v šifrovaní a podpisovaní. Overenie však vyžaduje oboje a rozdiely v rýchlosti sú v aplikáciách v reálnom svete zanedbateľné.
  • Ďalší rozdiel spočíva v podpore sieťového protokolu Secure Shell. RSA podporuje pôvodné SSH a jeho zabezpečenú druhú verziu SSH2, zatiaľ čo DSA funguje iba s SSH2.

Overte zdroj údajov pomocou DSA

Digitálne podpisy sú v dnešnom prepojenom svete nevyhnutnosťou na vytvorenie bezpečného prostredia. Sú skvelým spôsobom, ako overiť akýkoľvek záznam cez internet. Článok predstavuje algoritmy digitálneho podpisu so stručným prehľadom ich pracovného postupu, výhodami, nevýhodami, bezpečnostnými obmedzeniami a porovnaním s RSA.

TLS vs. SSL: Aký je rozdiel a ako to funguje

O týchto dvoch šifrovacích protokoloch sa často hovorí spolu, ale čo to je a ako fungujú?

Prečítajte si ďalej

zdieľamTweetujteEmail
Súvisiace témy
  • Bezpečnosť
  • Digitálne podpisy
O autorovi
Rumaisa Niazi (17 publikovaných článkov)

Rumaisa je spisovateľkou na voľnej nohe v MUO. Nosila veľa klobúkov, od matematičky až po nadšenca informačnej bezpečnosti, a teraz pracuje ako analytička SOC. Medzi jej záujmy patrí čítanie a písanie o nových technológiách, distribúciách Linuxu a všetkom okolo informačnej bezpečnosti.

Viac od Rumaisa Niaziho

prihlásiť sa ku odberu noviniek

Pripojte sa k nášmu bulletinu a získajte technické tipy, recenzie, bezplatné e-knihy a exkluzívne ponuky!

Kliknutím sem sa prihlásite na odber