php程序员 hash碰撞原理是什么 怎么解决

php程序员 hash碰撞原理是什么 怎么解决,第1张

$_GET["hash"] 获取的结果就是123456

你代入这个结果后,计算出另一个结果。

所以要看到123456这个结果是在那一步判断的,或是如何影响到最终结果的,才知道怎么改。

如果不影响输出的最终结果,直接改就可以了。

手册上写了PHP的DBA库只支持BTree型的db文件不支持hash结构

Hash型适合放在内存或高速缓存中,早就可以用memcache等新工具代替

B树的效率也很好在磁盘上最佳,PHP存在这个DBA库也是为了兼容旧文件,而不是作为主力数据库

觉得应该让其他环境的代码去兼容B树型db文件,或者另用现代一点的数据库更佳

实在不行可以在centos的环境写出一个webservice和PHP进行无驱动交换

方法1: PHP512之后的版本内置了直接产生的函数

$value=hash_hmac( 'sha1', $str, 'abc');

即可

方法2:hmac算法不复杂,低版本的php可用sha1()的基础上简单实现。

以上就是关于php程序员 hash碰撞原理是什么 怎么解决全部的内容,包括:php程序员 hash碰撞原理是什么 怎么解决、深入PHP中的HashTable结构详解、php的memcached分布式hash算法,如何解决分布不均crc32这个算法没办法把key值均匀的分布出去等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9550719.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存