Handle the scenario where we send a hello, receive a key and start sending data
then the other end resets the session and receives our hello, sends a key
which is delayed or lost, then sends a repeat key packet which has a different
temp key.