I have a question about a encryption protocol, if it is good or not.
Bob and Alice communicate over an insecure channel( a possible attacker can listen). An expert suggests the following protocol to confirm that they have the same segret key without revealing this segret key to an opponent.
1) Alice creates a random string (called R) of bit, as long as the key.
2) Alice calculates the exclusive OR of R with her key and send the result to Bob (on the insecure channel)
3) Bob calculates the exclusive OR of the value he received from Alice with his key and send the result (called S) to Alice
4) Alice compare the received value (called S) with the string generated at the beginning (called R)
5) If R = S, than Alice has verified that Bob has the same key
The question is: do we have problems with this protocol or not? Explain.
If someone could help it would be greatly appreciated