Consider the following challenge-response protocol for $A$ to convince $B$ that he is indeed $A$. Here we are assuming:
- at the start when the virtual circuit is being set up, $A$ has to convince $B$ that he is indeed $A$.
- once a virtual circuit has been set up, the BG cannot alter messages in the middle.
- $A$ and $B$ share a secret value $S$.
$B$ sends $A$ a nonce $N$.
$A$ calculates $C$ to be the first 64 bits of $N$ XORed with the first 64 bits of $S$.
$A$ returns $C$ back to $B$.
$B$ checks whether $C$ = first 64 bits of $N$ XORed with the first 64 bits of $S$.
If it is, $B$ accepts that $A$ is indeed $A$. is it good idea to use this kind of functionality?