Bug #10822: CRYPT_SALT_LENGTH == 2 even when CRYPT_MD5 available
| From: | jo at feuersee dot de | Date: | Fri, 11 May 2001 22:54:00 +0000 |
| Subject: | Bug #10822: CRYPT_SALT_LENGTH == 2 even when CRYPT_MD5 available | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-54914@lists.php.net to get a copy of this message | ||
From: jo@feuersee.de
Operating system: Linux 2.4.4
PHP version: 4.0.5
PHP Bug Type: *Encryption and hash functions
Bug description: CRYPT_SALT_LENGTH == 2 even when CRYPT_MD5 available
Against the documentation, at least on Linux systems the const CRYPT_SALT_LENGTH is 2 even when the
system is capable of encrypting MD5.
Most likely, this is related to bug #9177.
As stated there, I compiled php (after a make clean; rm config.cache) without openssl support, but
<?php
printf("%d", CRYPT_SALT_LENGTH);
?>
still emits 2 (but MD5 encryption works fine).
It gets pretty complicated to maintain compatibility with former versions of PHP. This bug also
causes compatibility probs when porting DBs with crypt() encrypted passwords from Linux to BSD and
vice versa (MD5 ist std on most (all?) BSD platforms.
I'd like to propose the following:
CRYPT_SALT_LENGTH should be set to the longest salt the system is capable of (like it is staded in
the docs).
The 4 different consts specifying the salt of a requested encryprion (eg. CRYPT_MD5) should be set
to 0 (==not available) or the salt length for this kind/flavour of encryption.
--
Edit Bug report at: http://bugs.php.net/?id=10822&edit=1