Re: password hashing and crypt()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



My apologies Robert, Gmail sucks. I'm bouncing this back to the list, where it
belonged in the first place. Feel free to make corrections if I've
mischaracterized
what you wrote. Good luck with that, btw, but don't expect me to engage.

Robert Cummings wrote:

>>> And THAT does remind me of my MUD server programming :) So it would
>>> seem, by supplying a user defined salt you can ensure compatibility with
>>> legacy systems that used the older (and largely deprecated) crypt()
>>> system. In fact, the description given by PHP worries me a little.
>> In fact, it looks like you are saying that a 13-char hash is better
>> than a 34-char hash, and with your "zz" $salt exposed to anyone who
>> can tell hash from grits.
>
> No, I'm not at all saying that a 13-char hash is better than a 34 char
> hash. I'm saying that you get different types of encryption depending on
> how you use crypt, then I illustrated the point.

Tying your example(s) to older (read: broken) encryption mechanisms.

> Then I tied that back
> to older code I've worked on that produces the encryption variety
> experienced when supplying a user defined salt... this is then used to
> make the case that legacy support can be obtained via the user defined
> salt.

If we are dealing with how the Server handles the scripts, why is
legacy a factor in the first place? Fit your scripts to the server, this
is not some burger joint where you get it your way. And don't try to
go international on me, the rest of the world had 128-bit encryption
and was free to use it before the US populace could legally possess
it for international transactions. Do you remember the Munitions Act?

>>> It says, "Some operating systems support more than one type of encryption.
>> So? Did you mean to say, control is needed on which type is used?
>
> I haven't looked into the crypt() function supplied by PHP beyond having
> read the initial manual for it and producing examples of output.

That sounds like "I don't know." So your earlier statement ultimately
means "I don't know"???

> Obviously, the defining the salt and not defining the salt have profound
> differences on the result produced (as illustrated).

Per your examples, it's the difference between 13-char (hard) and
34-char(harder) differences. And with your 13-char example giving
the $salt away in the first two columns (the scenario is a cracker
who accessed your user/pass table and is trying to find matches),
it doesn't take that cracker long to recognize equal values above
and below the divisor. Solve for what is left.


>> So this was a roundabout way of saying, verify the encryption mechanism?
>> How does that make the random $salt less valid than the user-supplied $salt?
>
> No,

You should have said "yes" and quit while you thought you were ahead.

> that was me saying that there is certainly a good reason to use a
> user defined salt-- legacy compatibility. The random salt is useless
> if you need to create a crypt()'d string that will match the crypt()'d
> string created by a C program 10 years ago--

Given that the scenario is a cracker who has your user/pass ID table, that
was never a stated goal, purpose or anything.

> and so in this context,

Okay, you win. I can't provide enough real world data to illustrate
exactly how wrong you are, in your view because, in your view all
this real world data does not get parsed properly.

Myself and this is what you were talking around but wouldn't embrace,
I think the $salt and encryption method both count for a lot. Given
the same encryption method, why would a user-supplied $salt necessarily
be better than a random $salt? Answer that only, if you can and expect
a reply.

--Doc

> it
> is true that the random salt is less valid than the custom supplied
> salt.

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux