我正在使用web administration module for mailservers(如果您想查看,它是开源的)。如何在PHP中安全地生成SSHA256或SSHA512哈希值?
为此,我需要能够生成可由Dovecot读取的散列密码。由于described on their wiki,他们推荐的密码哈希方案是SSHA256(多余的S是盐渍的)。
它也解释说,这可能是相当简单的东西像这样的PHP代码来实现:
$salt = 'generate_a_salt_somehow';
$hash = hash('sha256', $password . $salt);
然而,从我读过有关加密,这是产生盐渍哈希一个比较幼稚的方式,但如果你做错了typing A-E-S in your source code,我想在这种情况下也是如此。因此,如果您对密码学有深入的了解,我很乐意听到最安全的方法来做到这一点,无论是mcrypt,mhash或其他。
哦,是的,一个安全的方法来做一个哈希第一也将是很好的:) – mikl
http://php.net/manual/en/function.ha sh-hmac.php –
散列是否必须与其他实现匹配?或者是每个站点的唯一性可以接受? – wallyk