Compare the security services provided by Digital Signatures
Compare the security services provided by Digital Signatures and Message Authentication Codes (MAC). Assume that Oscar is able to observe all messages sent between Alice and Bob. Oscar does not know any key values except the public key in the case of Digital Signature. State whether and how DS and MAC protect against each attack. The value auth(x) is computed with DS or MAC respectively.
a. (Message Integrity) Alice sends a message x=”Transfer $1000 to Mark” in the clear and also sends auth(x) to Bob. Oscar intercepts the message and replaces “Mark” with “Oscar”. Will Bob detect this?
Digital Signature -
Message Authentication Code –
b. (Replay) Alice sends a message x= “Transfer $1000 to Oscar” in the clear and also sends auth(x) to Bob. Oscar observes the message and signature and sends them 100 times to Bob. Will Bob detect this?
Digital Signature -
Message Authentication Code –
c. (Sender Authentication with cheating third party) Oscar claims that he sent some message x with a valid auth(x) to Bob but Alice claims the same. Can Bob clear the question in either case?
Digital Signature –
Message Authentication Code –
d. (Authentication with Bob cheating) Bob claims he received a message x with a valid signature auth(x) from Alice (e.g. “Transfer $1000 from Alice to Bob”) but Alice claims she has never sent it. Can Alice clear this question in either case?
Digital Signature -
Message Authentication Code –
Solution
a. Message Integrity
Bob will be able to detect this in both DS and MAC and also auth(x) will not match x.
b. Replay
Bob will not detect this in both DS and MAC unless a timestamp or sequence number is used for computing auth(x).
c. Sender Authentication with cheating third party
In case of DS, Bob can clear this easily since only Alice has the private key here and this private key matches with Alice\'s public key. Bob uses this Alice\'s public key to authenticate x.
In case of MAC too Bob can clear this easily.The secret key used to compute auth(x) is shared by both Alice and Bob. And for Oscar , his key may no match with Bob\'s auth(x), eventhough Oscar\'s key might be valid.
d. Authentication with Bob cheating
In case of DS, Alice can find it out easily. Only Alice can generate auth(x) because this auth(x) is generated by Alice\'s private key and is verified with her public key.
But in case of MAC, Alice can\'t find Bob cheating her because both Alice and Bob share or hold the secret key which is used to generate and verify auth(x).
