In: Computer Science
given a hash finction H(), and an RSA encrypting algorithm. The public and private keys for Alice are PUa, and PRa, respectively.
A. Describe how Alice can produce a digital siguature of a message "M. and how Bob can verify the sigature.
B. Does the process described in part (a) above provide authentication? Give reason.
A. Digital signature generation by Alice:
i. Alice composes a message M.
ii. Alice implements the secure hash function H( ) to generate a hash value H(M).
iii. Alice applies her private key PRa with the asymmetric algorithm in signature mode S (identical to decryption mode D of the RSA algorithm) to generate signature Sig(M) = S(H(M), PRa).
iv. Alice relay message M and signature Sig(M) to Bob along with her unique name and both of the algorithms she used i.e specification of the hash algorithm(function) and the asymmetric algorithm.
Digital signature validation by Bob:
i. Bob receives a message M’ (we will assume M', not M as the sender is not verified yet) along with the signature Sig(M).
ii. Bob applies the secure hash function H( ) on M’ to generate hash value h(M’ ).
iii. Bob retrieves the hash value H(M) from the acquired signature Sig(M) by utilizing Alice’s public key PUa with asymmetric algorithm in verify mode V (identical to encryption mode E of the RSA algorithm) to generate H(M) = V(Sig(M), PUa).
iv.Henceforth Bob verifies whether H(M) = H(M' ) is true if it is true then the message received is authentic and valid.
B .Yes, the above process in part (A) provides authentication.
If H(M) = H(M’ ) == TRUE,
then the signature Sig(M) is valid
and M’ = M.
(origin certain -- authenticated)
else
the signature Sig(M) is invalid,
and M’ ≠ M.
(origin uncertain-- not authentic)
However, the digital signature can convey the following two possible cases
a) The message was sent by Alice but she doesn't compulsorily oblige with its content.
b) The message was sent by Alice and she agrees with its content.
In both of the above cases, authentication of the sender is achieved.
Thanks!
Upvote if it helped!