我有一个关于将用户导入firebase身份验证的重要问题。我的旧系统包含md5哈希格式的用户密码。我使用php md5函数来获取密码的哈希值。现在的问题是,在通过firebase命令行导入用户时,firbase import命令需要在md5哈希期间使用的轮数,但是php不提供任何有关它的信息。因此,导入后用户密码不匹配。请帮助我摆脱这个问题。我在等你的回应。
答案 0 :(得分:3)
如果您正在使用PHP内置的md5函数,如md5($passwrd)
,则base64对其进行编码并在accounts文件中设置为passwordHash字段。然后将轮数设置为0。
示例:
假设我有一个“Hello”的密码字符串,我可以得到如下所示的base64编码的md5哈希字符串。
php > $pwd = "Hello";
php > echo base64_encode(md5($pwd));
OGIxYTk5NTNjNDYxMTI5NmE4MjdhYmY4YzQ3ODA0ZDc=
使用生成的OGIxYTk5NTNjNDYxMTI5NmE4MjdhYmY4YzQ3ODA0ZDc=
作为密码哈希提交。然后运行auth:import with MD5 hash-algo和0轮。我手动验证它可以工作。