Re: MD5 in pg and php - Mailing list pgsql-php

From Nick Barr
Subject Re: MD5 in pg and php
Date
Msg-id 4090C1E0.6010309@chuckie.co.uk
Whole thread Raw
In response to Re: MD5 in pg and php  (Joolz <joolz@xs4all.nl>)
List pgsql-php
Joolz wrote:

>>[Marek Lewczuk schreef op 29-04-2004 09:31 +0100]
>>
>>Joolz wrote:
>>
>>
>>>Hi, I'm completely new to hashing, so please bear with me.
>>>
>>>I want to store passwords in a pg db, MD5 seems like a good way to
>>>enhance security (no more plaintext passwords over the line etc.) I
>>>had a look at MD5, in PHP 4.3.4 there is a function md5() which seems
>>>to work nicely:
>>>
>>> echo md5('apple');
>>>
>>>returns ae6d32585ecc4d33cb8cd68a047d8434 every time. Apart from the
>>>PHP frontend, I also want to be able to use the same algorithm in
>>>native pg. I found that postgresql-contrib-7.3.4 has a function
>>>crypt() which I expected to work the same. However:
>>>
>>> select crypt('apple', gen_salt('md5'));
>>>
>>>gives values different from the PHP md5() function, and moreover,
>>>they're different each time. Can anyone please tell me what I should
>>>do to get the same result in native pg as in PHP?
>>>
>>>Thanks!
>>>
>>>
>>>
>>I whould suggest to update PG to version 7.4, where there is built-in
>>MD5 function.
>>
>>
>
>Thanks, I already found some fc1 rpm's (still in development). But can
>anyone tell me if the 7.4 internal md5() function will do the same as
>the PHP md5() function? Or do a quick select md5('apple') and let me
>know if the result is 'ae6d32585ecc4d33cb8cd68a047d8434'?
>
>I really wouldn't like to upgrade from my current stable situation,
>only to find out that it didn't solve my original problem.
>
>TIA!
>
>
>
OK, PHP

---------------------------------------------------
<?

echo md5('apple');

?>
---------------------------------------------------

produces

---------------------------------------------------
1f3870be274f6c49b3e31a0c6728957f
---------------------------------------------------

and postgres:

---------------------------------------------------
im_perf=# select version();
                                                 version
---------------------------------------------------------------------------------------------------------
 PostgreSQL 7.4.2 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.3.2
20031022 (Red Hat Linux 3.3.2-1)
(1 row)

im_perf=# select md5('apple');
               md5
----------------------------------
 1f3870be274f6c49b3e31a0c6728957f
(1 row)
---------------------------------------------------

I have no idea why these two results dont agree with yours, but at least
they agree with each other. It is probasbly different library versions.


Nick




pgsql-php by date:

Previous
From: "Stefan Sturm"
Date:
Subject: Re: MD5 in pg and php
Next
From: Joolz
Date:
Subject: Re: MD5 in pg and php