<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2015-10-29 17:56 GMT+01:00 Klaus Hartnegg <span dir="ltr"><<a href="mailto:hartnegg@gmx.de" target="_blank">hartnegg@gmx.de</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Am 27.10.2015 um 18:55 schrieb David W Noon:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<<a href="https://en.wikipedia.org/wiki/Secure_Hash_Algorithm" rel="noreferrer" target="_blank">https://en.wikipedia.org/wiki/Secure_Hash_Algorithm</a>><br>
</blockquote>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<<a href="https://tools.ietf.org/html/rfc6234" rel="noreferrer" target="_blank">https://tools.ietf.org/html/rfc6234</a>><br>
</blockquote>
<br>
Do not use a normal hash function to store passwords. If the password file is stolen, the attackers can quickly determine most passwords.<br>
<br>
There are special algorithms to securely store passwords. Common recommendations are: PBKDF2, bcrypt, scrypt.<br>
<br>
Explanation from<br>
<a href="https://en.wikipedia.org/wiki/Password_cracking#Prevention" rel="noreferrer" target="_blank">https://en.wikipedia.org/wiki/Password_cracking#Prevention</a><br>
<br>
"Many hashes used for storing passwords, such as MD5 and the SHA family, are designed for fast computation and efficient implementation in hardware. As a result, they are ineffective in preventing password cracking, especially with methods like rainbow tables. Using key stretching Algorithms, such as PBKDF2, to form password hashes can significantly reduce the rate at which passwords can be tested."<br>
<br>
See also:<br>
<a href="https://en.wikipedia.org/wiki/Key_derivation_function" rel="noreferrer" target="_blank">https://en.wikipedia.org/wiki/Key_derivation_function</a><br>
<br>
scrypt for pascal appears to be offered here:<br>
<a href="http://www.wolfgang-ehrhardt.de/crchash_en.html" rel="noreferrer" target="_blank">http://www.wolfgang-ehrhardt.de/crchash_en.html</a><br>
</blockquote></div><br></div><div class="gmail_extra">Good point. I'd even ask the question: do you really need to store the passwords? IOW, do you want to be able to send them back to the user? Or do you only need to check them?<br clear="all"></div><div class="gmail_extra"><br>-- <br><div class="gmail_signature">Frederic Da Vitoria<br>(davitof)<br><br>Membre de l'April - « promouvoir et défendre le logiciel libre » - <a href="http://www.april.org" target="_blank">http://www.april.org</a><br></div>
</div></div>