RTUComputer ScienceYr 2024 · Sem 62024

Q22Information Security Systems

Question

10 marks

Explain the Digital Signature Standard (DSS) approach. Detail the algorithm used for generating and verifying digital signatures.

Answer

A massive mathematical exposition on the Digital Signature Standard (DSS). Details how the architecture utilizes the Secure Hash Algorithm and the ElGamal-based DSA to generate and verify signatures, providing absolute proof of origin and data integrity.

Proposed by NIST in 1991, the Digital Signature Standard (DSS) is a federal cryptographic architecture designed strictly for authenticating digital documents. Unlike RSA, which can be used for both encryption and signing, the algorithm mathematically mandated by DSS—the Digital Signature Algorithm (DSA)—is engineered exclusively for generating digital signatures. It is mathematically based on the extreme computational difficulty of calculating Discrete Logarithms.

The protocol requires a highly secure hash function (strictly SHA-1 or SHA-2). The signing process does NOT encrypt the message; it generates two massive 160-bit integers, and , which act as the signature.

1. Global Public Key Components (System Setup)

  • : A massive prime number (1024 to 3072 bits).
  • : A 160-bit prime divisor of .
  • : A mathematical generator function: .
  • These three parameters are public and can be shared across the entire network.

2. User Key Generation

  • Private Key (): The user violently selects a random integer such that . This is kept in absolute secrecy.
  • Public Key (): The user mathematically calculates . The key is published.

Algorithm 1: Signature Generation (Executed by the Sender)

To sign a message :

  • 1. The sender generates a new, highly secure, one-time random integer () for this specific message.
  • 2. Mathematically calculate :
  • 3. Violently hash the message using SHA: .
  • 4. Mathematically calculate :
  • 5. The absolute signature is the pair of integers: . The sender blasts the plaintext message and the signature across the network.

Algorithm 2: Signature Verification (Executed by the Receiver)

The receiver has and the sender's Public Key .

  • 1. The receiver verifies that and are mathematically valid ( and ).
  • 2. Hash the received message: .
  • 3. Calculate .
  • 4. Calculate .
  • 5. The absolute mathematical verification step—calculate :
  • 6. The Final Test: If, and only if, the calculated is exactly mathematically equal to the received (), the signature is violently validated as authentic. It proves the sender possessed the private key , and that the message was not altered by a single bit during transit.
Back to Paper