Обсуждение: MySQL PASSWORD('x') function workalike
In MySQL, I can get a hash of a VARCHAR by using the PASSWORD('') call. I know for DB admin there is pg_passwd, but is there a function interface so that I can get password hashes of arbitrary strings in SQL? (Note that I mean crypto hashes like MD5 and hopefully compatible with the hashes used for pg_passwd). Thanks, Nate
On Wed, Oct 18, 2000 at 03:11:12PM -0700, Nate Lawson wrote: > In MySQL, I can get a hash of a VARCHAR by using the PASSWORD('') call. I > know for DB admin there is pg_passwd, but is there a function interface so > that I can get password hashes of arbitrary strings in SQL? (Note that I > mean crypto hashes like MD5 and hopefully compatible with the hashes used > for pg_passwd). There was a user-contributed set of functions posted to the mailing list in the past couple weeks that does exactly what you're looking for. The code does MD5 and SHA1 hashes (I'm not sure what MySQL does). I haven't gotten around to testing it myself, but it looked interesting. Check the archives, it should be there. HTH, Neil -- Neil Conway <neilconway@home.com> Get my GnuPG key from: http://klamath.dyndns.org/mykey.asc Encrypted mail welcomed I am not interested in the past. I am interested in the future for that is where I intend to spend the rest of my life. -- Charles F. Ketterring
Вложения
On Wed, Oct 18, 2000 at 03:11:12PM -0700, Nate Lawson wrote: > In MySQL, I can get a hash of a VARCHAR by using the PASSWORD('') call. I > know for DB admin there is pg_passwd, but is there a function interface so > that I can get password hashes of arbitrary strings in SQL? (Note that I > mean crypto hashes like MD5 and hopefully compatible with the hashes used > for pg_passwd). You can check out my implementation I just released ;) http://www.l-t.ee/marko/pgsql/pgcrypto-0.1.tar.gz And you can check out -hackers mail I sent. btw its 20k not 11k as the previous mail said :) copy-paste desc: --------------- It exports 2 functions to SQL level: digest(data::text, hash_name::text) which returns hexadecimal coded hash over data by specified algorithm. eg > select digest('blah', 'sha1'); 5bf1fd927dfb8679496a2e6cf00cbe50c1c87145 digest_exists(hash_name::text)::bool which reports if particular hash type exists. -- marko