草庐IT

哈希切割

全部标签

PHP - 使用 array_filter 从哈希表(数组)中删除项目

在PHP中,我知道没有正式的方法可以删除已放入数组中的项目。但是必须有一个“最佳方法”来解决我的问题。我相信这可能在于array_filter函数。本质上,我有一个购物车对象,它在哈希表中存储商品。想象一下,您一次只能购买一件商品。我愿意add_item(1);add_item(2);remove_item(1);get_count()仍然返回2。var$items;functionadd_item($id){$this->items[$id]=newmyitem($id);}functionremove_item($id){if($this->items[$id]){$this->i

php - 裁剪后的哈希更难破解吗?

裁剪散列应该意味着丢失它所代表的一些数据,所以我想知道裁剪后的散列是否更难破解,更具体地说,如果存储裁剪后的密码散列用于用户身份验证是一个值得研究的想法。 最佳答案 将这个想法发挥到极致:假设您只存储散列密码的第一个十六进制字符。所有您用户的密码将散列为十六个值之一:0123456789ABCDEF我承认这对于JohnTheRipper来说非常困难暴力破解这些密码,但它也会让某人平均在大约八次尝试中猜出另一个用户的密码。糟糕。如果有的话,您应该存储更长的哈希值。Saltwell相反。 关

php - 为 md5 哈希分配一个数字(1 到 9 之间)

有一个像这样的md5散列:md5("test")="098f6bcd4621d373cade4e832627b4f6"如何编写一个函数,使其在每次向其传递md5哈希值时返回1到9之间的数字?数字必须始终相同,即myfunc("098f6bcd4621d373cade4e832627b4f6")应始终返回相同的数字。谢谢你的帮助。 最佳答案 这太过分了,返回最左边数字的建议是最好的...functionmyfunc($md5){$total=0;foreach(str_split($md5)as$char)$total+=ord($c

php - Python 或 PHP 中的感知哈希算法?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我已经暴露了viaStackOverflow至pHash,一个用于音频、视频、图像和文本指纹识别的C++感知哈希库-最近与PHP、C#和Java进行了初步绑定(bind)。我对研究这些算法很感兴趣,我想知道是否有相同/相似算法的任何开源纯Python或PHP实现?这会让我的生活轻松很多。

php - AJAX 哈希提交表单

我很确定它与我的带有ajax哈希url的core.js文件有关。但是我正在尝试提交表格,但它并没有像我希望的那样提交。这是core.js文件://callinit$(init);functioninit(){ajax_page_handler();page_load($(window.location).attr("hash"));//gotofirstpageif#!isavailable}functionpage_load($href){if($href!=undefined&&$href.substring(0,2)=='#/'){//replacebodythe#content

c# - C# 和 PHP 中的不同 MD5 文件哈希

我在检查C#和PHP文件的MD5校验和时遇到了一个小问题。PHP脚本计算的哈希与C#计算的哈希不同。libcurl.dllC#=c3506360ce8f42f10dc844e3ff6ed999libcurl.dllPHP=f02b47e41e9fa77909031bdef07532af在PHP中我使用md5_file函数,我的C#代码是:protectedstringGetFileMD5(stringfileName){FileStreamfile=newFileStream(fileName,FileMode.Open);MD5md5=newMD5CryptoServiceProvi

php - 如何验证在 node.js 中使用 php-crypt 创建的哈希

我必须将我的后端从php迁移到node。我们使用phpcrypt(使用默认的随机盐)来散列密码。例如,对于密码“d1692fab28b8a56527ae329b3d121c52”,我的基础中有以下加密密码(取决于我使用的是md5还是sha512,如$i$指定的那样):$1$7JxJYjJK$oFtCGyVvflspPtxB7YrWP.$6$CVx6KL5l$wzk3YXlqUaz42Kb9r2lmEJhx/FBUXPRoLWN.20/XMBbgQrhp3vSHkEDF3bJEtpM3M96VZ.AMKatLGSKYZZKNH/在php中我可以用crypt验证它们:echocrypt('

哈希表(底层结构剖析-- 上)

文章目录哈希表底层结构剖析哈希概念哈希冲突哈希函数哈希冲突解决办法闭散列(线性探测+二次探测)开散列哈希表闭散列方法的模拟实现基本框架有关哈希数据的类插入函数删除函数查找函数增加仿函数将所有数据类型转换为整型哈希表开散列方法的模拟实现(增加仿函数版)哈希表底层结构剖析哈希概念1:在顺序结构以及平衡树中,元素关键码与其存储位置之间没有对应的关系.因此,在查找一个元素时,必须要经过关键码的多次比较.我们知道顺序表查找的时间复杂度为0(N),平衡树中的查找的时间复杂度则为树的高度,即O(log2N),此时,搜索的效率取决于搜索过程中元素的比较次数.2:那么理想的搜索方法为:可以不经过比较,一次直接从

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