Home |
Licence |
FAQ |
Docs |
Download |
Keys |
Links
Mirrors |
Updates |
Feedback |
Changes |
Wishlist |
Team
The current SECSH transport draft, draft-ietf-secsh-transport-22.txt,
specifies a boolean in the KEXINIT packet defined as:
first_kex_packet_follows
Indicates whether a guessed key exchange packet follows. If a
guessed packet will be sent, this MUST be TRUE. If no guessed
packet will be sent, this MUST be FALSE.
After receiving the SSH_MSG_KEXINIT packet from the other side,
each party will know whether their guess was right. If the
other party's guess was wrong, and this field was TRUE, the
next packet MUST be silently ignored, and both sides MUST then
act as determined by the negotiated key exchange method. If
the guess was right, key exchange MUST continue using the
guessed packet.
From code inspection, I think PuTTY currently ignores this field, which means
that if it encounters a server that sets it to true and doesn't share PuTTY's
preferred key-exchange method, it'll get horribly confused.
Audit trail for this bug.