基本上,我想将使用 pbkdf2-sha256 散列的 pw 的用户列表迁移到使用 phpass 的 cms。
为了做到这一点,我尝试检查用户输入的密码并生成typo3散列密码,以便将其与数据库中的记录进行比较。
我试图对typo3使用的pbkdf2散列进行逆向工程(使用示例用户pw),但我没有得到预期的结果:
base64_encode( hash_pbkdf2( "sha256", "88t8R7EfRj9Xf3P", "4f3YKAmnn1dBBU1OPwfdzQ", 25000, 0, true ));
结果:x806WJJRfoHq25Pq2OTs3xfa18qIJ7tzwWaAzO3aKzU=
数据库中存储的散列密码是:
$pbkdf2-sha256$25000$4f3YKAmnn1dBBU1OPwfdzQ$ fq4u5vEp6hm8G6Xi7E2UcnEjcLRgMhJ2Yx9v7ikWyZs
当我使用堆栈溢出的给定示例尝试此操作时,它可以工作:
base64_encode( hash_pbkdf2( "sha256", "school bus", "BbirbJq1C1G7", 100000, 0, true ));
结果:IcYmssO2bsILHcTCzLxPs/YmVGNmKb3cSt2JWzVzP2I=
预期结果:pbkdf2_sha256$100000$BbirbJq1C1G7$ IcYmssO2bsILHcTCzLxPs/YmVGNmKb3cSt2JWzVzP2I=
如果有人可以提供帮助,我将不胜感激。
问候,朱利安