diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2006-12-12 17:14:56 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2006-12-12 17:14:56 +0000 |
commit | db2b52425dced7665cc33cc9fb6ade688fcbce4a (patch) | |
tree | 7908c90b12aeaf408181298fdda430d858ac9506 | |
parent | 900406c359c319100c892a38be2bb5d76a8f85b9 (diff) | |
download | busybox-w32-db2b52425dced7665cc33cc9fb6ade688fcbce4a.tar.gz busybox-w32-db2b52425dced7665cc33cc9fb6ade688fcbce4a.tar.bz2 busybox-w32-db2b52425dced7665cc33cc9fb6ade688fcbce4a.zip |
passwd: added comment
-rw-r--r-- | loginutils/passwd.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/loginutils/passwd.c b/loginutils/passwd.c index a062596b4..c28e9b80e 100644 --- a/loginutils/passwd.c +++ b/loginutils/passwd.c | |||
@@ -34,10 +34,15 @@ static void crypt_make_salt(char *p, int cnt) | |||
34 | 34 | ||
35 | x += getpid() + time(NULL) + clock(); | 35 | x += getpid() + time(NULL) + clock(); |
36 | do { | 36 | do { |
37 | /* x = (x*1664525 + 1013904223) mod 2^32 generator is lame | 37 | /* x = (x*1664525 + 1013904223) % 2^32 generator is lame |
38 | * (low-order bit is not "random", etc...), | 38 | * (low-order bit is not "random", etc...), |
39 | * but for our purposes it is good enough */ | 39 | * but for our purposes it is good enough */ |
40 | x = x*1664525 + 1013904223; | 40 | x = x*1664525 + 1013904223; |
41 | /* BTW, Park and Miller's "minimal standard generator" is | ||
42 | * x = x*16807 % ((2^31)-1) | ||
43 | * It has no problem with visibly alternating lowest bit | ||
44 | * but is also weak in cryptographic sense + needs div, | ||
45 | * which needs more code (and slower) on many CPUs */ | ||
41 | *p++ = i64c(x >> 16); | 46 | *p++ = i64c(x >> 16); |
42 | *p++ = i64c(x >> 22); | 47 | *p++ = i64c(x >> 22); |
43 | } while (--cnt); | 48 | } while (--cnt); |