Digitala signaturer förlitar sig på en kryptografiarkitektur med publik nyckel för att verifiera ett dokuments äkthet och avsändarens identifiering. De två standardsätten att erhålla digitala signaturer är RSA (Rivest–Shamir–Adleman) och DSA (Digital Signature) algoritmer, men båda skiljer sig åt när det gäller att utföra krypterings- och dekrypteringsfunktioner.

Artikeln ger en översikt över en av industristandardalgoritmerna DSA, dess arbetsprocess med en kort översikt av nyckel- och signaturgenerering och verifiering, steg involverade i den övergripande processen, dess fördelar/nackdelar, och dess Ansökan.

Introduktion till digitala signaturalgoritmer

DSA (Digital Signature Algorithm) innehåller de algebraiska egenskaperna hos diskreta logaritmproblem och modulära exponentieringar för att generera en elektronisk signatur för olika applikationer. Det föreslogs 1991 och antogs som en federal informationsbehandlingsstandard av NIST (National Institute of Standards and Technology) 1994.

De flesta algoritmer för skapande av digitala signaturer följer den typiska tekniken att signera meddelandesammandraget (hash för det faktiska meddelandet) med den privata källnyckeln för att skapa det digitala tumavtrycket.

instagram viewer

Situationen är dock annorlunda i DSA eftersom den genererar två signaturer genom att införliva två komplexa och unika signerings- och verifieringsfunktioner. Därför är DSA-algoritmen inte en enkel användning av privata och publika nycklar i början och slutet av kommunikationen.

Vikten av digital signaturalgoritm

På grund av ständigt ökande cyberhot, närhelst en användare skickar data över internet, är det nödvändigt att identifiera och verifiera ägarens äkthet. Vi måste säkerställa att dokumentägaren är trovärdig och att ingen har gjort några ändringar under överföringen.

Digitala signaturer är de elektroniska signaturerna som hjälper mottagaren att autentisera meddelandets ursprung. Du kan skapa dessa elektroniska signaturer via olika algoritmer, och DSA är en av dem. I DSA skapar avsändaren en digital signatur för att inkludera den i meddelandet så att vem som helst kan autentisera den vid mottagandet.

Fördelarna med DSA är:

  • Icke förnekande: efter signaturverifiering kan avsändaren inte göra anspråk på att inte ha skickat uppgifterna.
  • Integritet: datamodifiering under överföring förhindrar slutlig verifiering eller meddelandedekryptering.
  • Meddelandeautentisering: rätt kombination av privata/offentliga nycklar hjälper till att verifiera avsändarens ursprung.

Hur autentiserar algoritmen avsändaren?

DSA-algoritmen fungerar på den systematiska beräkningsmekanismen som beräknar ett hashvärde och en digital signatur som utgör två 160-bitars nummer från meddelandesammandraget och den privata nyckeln. Slumpmässigheten gör signaturen icke-deterministisk. Den använder en publik nyckel för signaturautentisering, vilket är mycket mer komplext än RSA.

DSA-cykeln följer dessa tre huvudsteg för att slutföra processen:

  • Nyckelgenerering: Processen bygger på konceptet med modulär exponentiering för att erhålla privata (x) och offentliga (y) nycklar som uppfyller de matematiska villkoren 0 < x < q och y = gx mod p. Där q är en primtalsdelare, är p ett primtal, och g uppfyller dessa g**q mod p = 1 och g = h**((p–1)/q) mod p-villkor. Skapar alltså privata och publika nyckelpaket {p, q, g, x} och {p, q, g, y}.
  • Signaturgenerering: En hashalgoritm genererar ett meddelandesammandrag, som skickas som en indata till en signeringsfunktion för att skapa två variabler utdata, r och s, paketerade som signatur {r, s} så att meddelandet och dessa variabler skickas som en bunt till mottagare.
  • Signaturverifiering: Processen använder hashfunktionen för att mata ut sammandraget och inkluderar variabel s med andra parametrar från nyckelgenereringssteget för att producera verifieringskomponenten v. Verifieringsfunktionen jämför den beräknade variabeln v mot parametern r från paketet {M, s, r}.

För att sammanfatta ovanstående process icke-matematiskt:

  • Du skapar nycklar med hjälp av nyckelgenereringsalgoritmen för att signera dokumentet.
  • Använd sedan en digital signaturalgoritm för att generera signaturen.
  • Använda en hash-funktion för att skapa ett meddelandesammandrag, och kombinera den med DSA för att generera den digitala signaturen.
  • Skicka signaturen med data för mottagaren att autentisera.
  • Mottagaren autentiserar signaturen genom att använda en verifieringsalgoritm. Det är hashfunktionen som används ovan för att skapa meddelandesammandraget.

Fördelar med att använda digital signaturalgoritm

  • Snabb signaturberäkning
  • Kräver mindre lagringsutrymme för hela processen
  • Fritt tillgänglig (patentfri) för kostnadsfri global användning.
  • Liten signaturlängd
  • Observation i realtid
  • Icke-invasiv
  • DSA accepteras globalt för laglig efterlevnad.
  • Tidseffektivt (låg tidsåtgång i jämförelse med processer för fysisk signering etc.)

Nackdelar med att använda digital signaturalgoritm

  • Processen inkluderar inte nyckelutbyte.
  • De underliggande kryptografi måste vara ny för att säkerställa dess styrka.
  • Standardiseringen av maskinvaru- och mjukvaruleverantörer på RSA kan orsaka problem på grund av DSA: s andra autentiseringsstandard.
  • De komplicerade återstående operationerna kräver mycket tid för beräkning och därmed signaturverifiering.
  • Det säkerställer bara autentisering, inte konfidentialitet, eftersom algoritmen inte krypterar data.
  • DSA-algoritmer beräknar SHA1-hash för att generera meddelandesammandraget. Därför återspeglar det alla brister i SHA1-hashfunktionen i algoritmen.

DSA VS RSA

Digital Signature Algorithm är en asymmetrisk nyckelkrypteringsalgoritm som antagits av amerikanska myndigheter för hemlig och icke-hemlig kommunikation. Medan RSA är en kryptografialgoritm med offentlig nyckel som också använder modulär aritmetik, beror dess styrka på problemet med en primtalsfaktorisering för att säkra kommunikation och digitala signaturer. Därför, till skillnad från vanliga krypteringsalgoritmer som RSA, är DSA en standard endast för digitala signaturer.

Även om båda innehåller olika matematiska algoritmer, är kryptografistyrkan likvärdig. Den största skillnaden mellan de två algoritmerna begränsar sig till hastighet, prestanda och SSH-protokollstöd.

  • Till skillnad från DSA är RSA långsam i dekryptering, nyckelgenerering och verifiering men snabb i kryptering och signering. Men autentisering kräver båda och hastighetsavvikelser är obetydliga i verkliga applikationer.
  • En annan skillnad ligger i stödet för nätverksprotokollet Secure Shell. RSA stöder den ursprungliga SSH och dess säkra andra version SSH2, medan DSA bara fungerar med SSH2.

Autentisera datakällan med DSA

Digitala signaturer är ett behov för dagens sammanlänkade värld för att skapa en säker och säker miljö. De är ett utmärkt sätt att autentisera alla poster över internet. Artikeln introducerar Digital Signature-algoritmerna med en kort översikt över dess arbetsprocess, fördelar, nackdelar, säkerhetsbegränsningar och jämförelse med RSA.

TLS vs. SSL: Vad är skillnaden och hur fungerar det

Dessa två krypteringsprotokoll pratas ofta om tillsammans, men vad är de och hur fungerar de?

Läs Nästa

Dela med sigTweetE-post
Relaterade ämnen
  • säkerhet
  • Digitala signaturer
Om författaren
Rumaisa Niazi (17 publicerade artiklar)

Rumaisa är frilansskribent på MUO. Hon har burit många hattar, från en matematiker till en informationssäkerhetsentusiast, och arbetar nu som SOC-analytiker. Hennes intressen inkluderar att läsa och skriva om ny teknik, Linux-distributioner och allt kring informationssäkerhet.

Mer från Rumaisa Niazi

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e-böcker och exklusiva erbjudanden!

Klicka här för att prenumerera