Stronger crypto for client authentication.
authorAndre Noll <maan@systemlinux.org>
Sun, 21 Jun 2009 18:55:07 +0000 (20:55 +0200)
committerAndre Noll <maan@systemlinux.org>
Sun, 21 Jun 2009 18:55:07 +0000 (20:55 +0200)
commita18295788a381a5083e42fde7d7615b328bb6509
tree72b05c2ac13daa7fd596c84ad853cc6c5bf1910e
parenta9126f461792a84c760162ecb25100f1593d427d
Stronger crypto for client authentication.

This patch changes the way clients are authenticated:

- The size of the challenge has been increased from sizeof(unsigned long)
to 64. Openssl's Rand_bytes() is used to get the random buffer for the
challenge and the rc4 keys.

- The client responds with the sha1 hash of the challenge rather than
sending back the decrypted challenge in plain text.

- The rc4 keys are now 2 x 32 bytes long. They are rsa encrypted and
sent together with the challenge.

- Authentication requests for invalid users are not immediatedly denied
as this would reveal the fact that the user does not exist.

- rsa keys are required to be at least 2048 bits long.
INSTALL
client_common.c
command.c
configure.ac
crypt.c
crypt.h
error.h
para.h
rc4.h
user_list.c