I know my question is a homework problem and I don't want an answer, I just want to understand how this problem could be solved!
you can give a similar example or show me how to do part of the problem, I will be grateful.
Four Security services: confidentiality (C), Integrity (I), Sender Authentication (A), and Non-Repudiation (NR)
Not: assume that the public key (and its private key) cannot be forged and is authentic. So, if a signature of a message can be verified via the corresponding public key, the sender will not be able to deny having sent the message.
Suppose the following notations are used:
E_k (x):Encryptionof x under k
〖SIG〗_k (x):signature on x under k
X_pri:private key of entity X
X_pub:public key of entity X
H:a public secure cryptographic hash function such as SHA-1
〖PRNG〗_s:a binary stream from a pesudo random number generator seeded with s
For each protocol use C, I, A and NR to represent the services protocol provides. If the protocol cannot provide any service wire “None”.
- S generates a random session key s_k and sends〖 E〗_(S_pub ) ( s_k )||〖 E〗_(R_pub ) ( s_k ) || (M ⊕〖PRNG 〗_(s_k ) )to R.
- 〖 S send y=E〗_(k_1 ) ( x || H(k_(2 ) || x) ) to R.
- S send y=〖〖 E〗_(R_pub ) (x || SIG〗_(S_pri ) (H(x))) to R.
- S generates a new symmetric key s_k and sends y= E_(S_pub ) ( s_k )||〖 E〗_(R_pub ) ( s_k )|| 〖SIG 〗_(S_pri ) (s_k )|| to 〖 E〗_(s_k ) (x)R.
because the question might not be clear here is an embedded picture .