草庐IT

哈希表(HashTable)

全部标签

php - 理解一致性哈希

过去几天我一直在研究PHP的一致性哈希算法。我希望更好地了解一致性哈希的实际工作原理,以便我可以在一些即将进行的项目中使用它。在我看来Flexihash确实是唯一易于理解的纯PHP实现,因此我从中做了一些笔记。我已经创建了一个我自己的小算法来尝试理解它是如何工作的,以及如何让它尽可能快地工作。我对我的算法与Flexihash相比的速度感到惊讶,这让我想知道我的实现是否在某些方面存在缺陷,或者我是否没有掌握整个概念的关键部分。在100万个顺序键(0到1,000,000)的迭代中,速度差异如下所列。显示每个节点以显示实际散列到该特定节点的键数。Flexihash:Time:269secon

php - 使用 password_verify 和 MySQL 验证密码哈希

我正在尝试在MySQL中存储一个加密的密码,至于注册部分,它可以正常工作,但是当我尝试进行登录时,一切都变糟了。我无法根据存储在MySQL中的哈希值验证$_POST['password']。我不知道我做错了什么。这是我的register.php,它可以正常工作:register.php(工作)$post_password=mysqli_real_escape_string($_POST['password']);$password_hash=password_hash($post_password,PASSWORD_BCRYPT);mysqli_querygoeshere...logi

php - 如何在 Python 中获取相同的 PHP adler32 哈希?

我需要生成由PHP生成的相同adler32哈希,但使用的是Python。不幸的是,标准实现不同。有什么想法吗?$php-r'printhash("adler32","bla")."\n";'02620130$python-c'importzlib;printzlib.adler32("bla");'39977264(我正在使用PHP5.5.9和Python2.7.6)此刻我已经使出了defphp_adler32(string):phpcode="""printhash("adler32","%s");"""%stringtry:rv=subprocess.check_output(['

php - 内存:连接参数或执行 md5 哈希?

我正在为几个函数添加内存。这些函数采用2-3个字符串参数(对象名称)、一个可选的int参数(记录ID)和一个bool参数(包括已删除的记录)。每个参数组合都保证产生唯一的结果(因此值得缓存)。我想知道连接给定的参数($param1.$param2.$param3等)并将其用作数组键是否会更快,或者采用相同的连接字符串并使用md5哈希作为键。在99%的情况下,连接参数字符串的长度在20-32个字符之间(平均约为27个),而md5哈希始终为32个字符。编辑:一个md5哈希只有16个字节,而不是32个。谢谢Mjh。我倾向于第一个选项,因为它:为我节省了执行md5哈希的成本它通常会节省几个字节

php - 如何在php中转义字符串中的哈希符号

PHP中如何转义哈希符号?我想做"DELETEFROM[#8:1]"但要让它工作我必须做"DELETEFROM[".'#'."8:1]”。虽然它有效,但看起来有点笨拙,有没有更好的方法来做到这一点? 最佳答案 使用单引号'DELETEFROM[#8:1]' 关于php-如何在php中转义字符串中的哈希符号,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/10105391/

php - 将字符串与哈希进行比较时,Crypt 函数不起作用

我正在使用一种非常标准的cookie登录方式-我给用户两个cookie,一个是他的用户名,另一个是随机生成的字符串加上用户特定的盐。这是登录时发生的事情:$_SESSION['username']=$row[username];$_SESSION['user_id']=$row['id'];$loginhash=generateRandomBase64String()."_".$row['salt'];$number_of_days=14;$date_of_expiry=time()+60*60*24*$number_of_days;setcookie("userlogin",$row

php - 如何使用 codeigniter 正确实现 PHPass 密码哈希?

我正在努力使用phpass在codeigniter中正确执行密码哈希。我已经将phpass密码哈希文件添加到codeigniter的库文件夹中,现在我不知道如何正确编写语句$t_hasher=newPasswordHash(8,FALSE);?你们能帮助正确的语法吗?这是我到目前为止所拥有的:functionpasswordTry(){$this->load->library('PasswordHash','null','passHash');$hasher=new$this->passHash->PasswordHash(8,FALSE);$hash=$hasher->HashPas

php - 如何从嵌套数组创建哈希表 (php)

我有一个包含我需要的信息的嵌套数组。array(66){[0]=>array(2){["key"]=>string(1)"9"["value"]=>string(1)"9"}[1]=>array(2){["key"]=>string(3)"104"["value"]=>string(1)"3"}[2]=>array(2){["key"]=>string(3)"105"["value"]=>string(1)"1"}...但是,这种格式并不是很有用。更有用的是[9]=>9[104]=>3[105]=>1等等。不幸的是我的尝试foreach($arraynameas$key=>$value

php - Blowfish 加密 - 哈希已创建但不会验证

我不久前写了这段代码,现在我正在为一个新项目恢复它,但它似乎不起作用,我无法弄清楚为什么它不会验证哈希。当注册第一个passwordEncrypt()函数时,运行的2个函数如下所示。当尝试登录时调用checkPassword()函数,而不是登录并回显"is",而是进入回显“否”的部分。所以,如果有新的眼睛可以看看,请提前多谢!//EncryptuserpasswordfunctionpasswordEncrypt($password){//setthesalt$salt=substr(md5(time()),0,22);//encryptusingblowfishwithaloadof

php - 如何将文本转换为 phpbb 哈希?

我正在尝试将测试密码(testing4)转换为phpbb3哈希。这是我试过的代码:phpbb_hash($data['new_password']));$hash=$user_row['user_password'];echo$hash;?>这也行不通:$pass="testing4";$hash=phpbb_hash($pass);两次我都收到以下错误消息:Fatalerror:Calltoamemberfunctionsql_escape()onanon-objectin/home/a8544020/public_html/Pass/functions_phpbb.phponlin