如何将文本转换为phpbb哈希?
发布时间:2020-12-13 17:06:23 所属栏目:PHP教程 来源:网络整理
导读:我试图将测试密码(testing4)转换为phpbb3哈希.这是我尝试过的代码: ?php/** ** @package phpBB3* @version $Id: v3_dbal.xml 44 2007-07-25 11:06:55Z smithy_dll $* @copyright (c) 2005 phpBB Group * @license http://opensource.org/licenses/gpl-licen
我试图将测试密码(testing4)转换为phpbb3哈希.这是我尝试过的代码:
<?php /** * * @package phpBB3 * @version $Id: v3_dbal.xml 44 2007-07-25 11:06:55Z smithy_dll $ * @copyright (c) 2005 phpBB Group * @license http://opensource.org/licenses/gpl-license.php GNU Public License * */ /** * @ignore */ define('IN_PHPBB',true); include ("functions_phpbb.php"); $data['new_password'] = "testing4"; $user_row = array( 'user_password' => phpbb_hash($data['new_password']) ); $hash = $user_row['user_password']; echo $hash; ?> 这也不起作用: $pass = "testing4"; $hash = phpbb_hash($pass); 两次我都收到以下错误消息: Fatal error: Call to a member function sql_escape() on a non-object in /home/a8544020/public_html/Pass/functions_phpbb.php on line 149 我已经在2个不同的主机上试了一下而没有任何运气.否则是否有一个简单的文本转换为哈希的在线服务? 提前致谢 解决方法
我假设你的functions_phpbb.php文件是phpBB3包的includes / functions.php文件的副本.
现在,您收到此错误的原因是因为phpbb_hash函数使用phpBB unique_id函数进行熵,这取决于数据库连接(在每个请求上更改并保留熵). 有两种方法可以解决这个问题. a)包括phpBB的common.php,它将为phpBB引导你的代码(包括数据库连接,错误处理程序等). b)phpBB3使用phpass进行散列.我建议您只需下载独立的phpass包并使用它来生成哈希. 小警告:phpBB3将哈希标识符从’$P $’更改为’$H $'(不要问我为什么),所以你必须改变这一行: $output = '$P$'; 至: $output = '$H$'; 由于选项a)增加了一些开销,并且您可能只想使用散列函数,我建议选项b). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容