我需要將基於md5的簡單認證模塊升級到PBKDF2,並且我正在尋找可能的模式和額外步驟以及操作流程和所需的更改:從md5移動到PBKDF2如何?
a。新用戶帳戶創建 舊的是最簡單的一個:password = md5(密碼)
b。密碼重置
curently:
update authtable set password=md5(newpassword) where password=md5(oldpwd)
and username='usernamexyz';
℃。驗證
select id, username from authtable where password=md5(pwd) and username='usernamexyz';
模式:
CREATE TABLE `users` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`username` varchar(60) NOT NULL DEFAULT '',
`password` varchar(255) DEFAULT NULL,
`email` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`),
) ENGINE=MyISAM DEFAULT CHARSET=utf8
我沒有看到關於如何實現任何教程/條,DB模式的擔憂,數據庫等的密碼/鹽長度..有關PBKDF2。我可能錯過了,請給出參考。
有人可以在這些黑暗角落闡明如何使用php/mysql實現PBKDF2。
由於我使用的是PHP 5.3,我將無法使用build-in PBKDF2函數(即它需要php 5.5以上版本)。
我們現在需要密碼嗎?我懷疑哈希字符串的所有信息格式如下:algorithm:iterations:salt:hash – sakhunzai
如果您注意到只存儲哈希密碼 – Marek