2. Defintion A digital signature is a mathematical scheme for demonstrating the authenticity of a digital message or document. A valid digital signature gives a recipient reason to believe that the message was created by a known sender, and that it was not altered in transit. Digital signatures are commonly used for software distribution, financial transactions, and in other cases where it is important to detect forgery or tampering.
3. Question How do we interpret a digital signature code?
4. Answer The RSA Public- Key Cryptosystem In 1978, the journal Communication of the Association of Computing Machinery (ACM) published a paper entitled “A Method for Obtaining Digital Signatures and Public Key Crptosystems.” The authors, described a cipher system in which senders encipher messages using a method and a key that are publicly distrubuted.
5. RSA Encryption Let p and q = two prime numbers m= pq n = (p-1) (q-1) Next select another number e (public key or encryption key) that is relatively prime to n. Then use the extended Euclidean algorithm to find d (private key or decryption key) such that e * d = 1 (mod n) Regarding a message as a number x in the range 1 to m-1, a sender enciphers x by calculating y= x^e Mod m, where m and e are chosen in a special way. The recipient of y deciphers it by calculating x= y^d mod m, where d is an inverse of e modulo, a number that depends on the prime factorization of m.
6. Digital Signature The idea of a digital signature is straightforward and be illustrated with any public- key method. In this case we will use the RSA encryption. Let m be and RSA modulus, E(x) =x mod m, represent the RSA encryption of a plain text x, and D(y) = y^d mod m the RSA decryption of a ciphertext y. D(E(x))= x for all 0 ≤ x ≤ m-1, And E(D(x))=x for all 0 ≤ x ≤ m-1.
7. Example Suppose Audrey has: RSA modulus¹⁴ m= 5429515137199 Encryption exponent s= 23 Audrey wants to send Zeke the message YOURECUTE and affix a signature by which Zeke can confirm that it is Audrey who sent the message and not one of his buddies playing a trick.
8. Continued… The message is nine letters long, so it can be regarded as a number in the range 0 to 26⁹ -1, which, conveniently, just fits inside the range 0 to m. First she converts the plain text to decimal: X= YOURECUTE= 5130677068274 Then she uses her decryption exponent d= 448247785295 to calculate a signature¹⁵ σ=x^d=5130677068274⁴⁴⁸⁵²⁴⁷⁷⁸⁵²⁹⁵=4320048260981 (mod 5429515137199) Then she sends the pair (x, σ) to Zeke Α=4320048260981²³=5130677068274 (mod 5429515137199)
9. Summary Set up: Audrey established an RSA modulus m, private decryption exponent d, and public encryption exponent e. Signing:To generate a digital signature α for message block x, Audrey calculates: σ = x^d mod m Audrey sends the message Signature pair (x, σ) to Zeke.