What always got me confused about PKC is, if someone got to your packet as it was en route to the server, then they could just re-send that packet, right?
So if the packet was just the password, then they wouldn't need the password OR the key to resend it, unless the packet was time-stamped and said time-stamp was encoded so you couldn't modify it...
Actually... thats probably how they do it, so you can ignore this entire rant if you feel like it.
That, or a new decryption/encryption key pair is used every time it is utilized...