Difference between revisions of "Ns sha1"
Jump to navigation
Jump to search
(added postgresql section) |
|||
Line 30: | Line 30: | ||
This function is provided by the [[nssha1]] module. | This function is provided by the [[nssha1]] module. | ||
+ | |||
+ | Unfortunately, this implementation does not seem to be immediately compatible with other SHA1 implementations. | ||
+ | |||
+ | Postgresql: | ||
+ | |||
+ | <pre> | ||
+ | template1=> select encode(digest('mypassword','SHA1'),'hex'); | ||
+ | encode | ||
+ | ------------------------------------------ | ||
+ | 91dfd9ddb4198affc5c194cd8ce6d338fde470e2 | ||
+ | (1 row) | ||
+ | </pre> |
Revision as of 22:36, 2 December 2005
Function
ns_sha1 string
Description
Returns a 40-character, hex-encoded string containing the SHA1 hash of the first argument.
Usage
Example 1:
set sRawPassword "mypassword" set sPassword [ns_sha1 $sRawPassword] ns_adp_puts $sPassword # 04003622EB9D0F788CE7568C7EED23809534365A
Usually this function is used with a salt, as without a salt it is succeptible to dictionary-based attacks.
Example 2:
set sSalt "salty" set sRawPassword "mypassword" set sPassword [ns_sha1 ${sRawPassword}${sSalt}] # B48FB74597C11FC609DBE912992085EB07847FB6
This function is provided by the nssha1 module.
Unfortunately, this implementation does not seem to be immediately compatible with other SHA1 implementations.
Postgresql:
template1=> select encode(digest('mypassword','SHA1'),'hex'); encode ------------------------------------------ 91dfd9ddb4198affc5c194cd8ce6d338fde470e2 (1 row)