hash-function相关内容

关于密码散列函数的要点是什么?

我正在阅读关于 MD5 哈希值的 这个问题接受的答案让我感到困惑.据我了解,加密哈希函数的主要属性之一是不可能找到两个具有相同哈希值的不同消息(输入). 然而,对于为什么 MD5 哈希值不可逆?这个问题的共识答案是 因为无限数量的输入字符串会产生相同的输出. 这似乎完全和我矛盾. 另外,让我有些困惑的是算法是公开的,但哈希值仍然是不可逆的.这是因为哈希函数中总是存在数据丢失,因此无法判 ..
发布时间:2022-01-10 10:17:14 其他开发

浮点数的散列函数

我目前正在用 C++ 实现一个哈希表,我正在尝试为浮点数创建一个哈希函数... 我打算通过填充十进制数将浮点数视为整数,但后来我意识到我可能会遇到大数字溢出... 有没有很好的方法来散列浮点数? 你不必直接给我函数,但我想看看/理解不同的概念...... 注意事项: 我不需要它真的很快,只要可能的话均匀分布即可. 我已经读到,由于计算速度的原因,不应该对浮点数进 ..
发布时间:2022-01-09 10:42:51 C/C++开发

Java HashMap 如何处理具有相同哈希码的不同对象?

根据我的理解,我认为: 两个对象具有相同的哈希码是完全合法的. 如果两个对象相等(使用 equals() 方法),则它们具有相同的哈希码. 如果两个对象不相等,则它们不能具有相同的哈希码 我说得对吗? 现在如果我是对的,我有以下问题:HashMap 在内部使用对象的哈希码.那么如果两个对象可以有相同的哈希码,那么 HashMap 如何跟踪它使用的键? 谁能解释一下Has ..
发布时间:2021-11-25 11:50:04 Java开发

Java HashMap 如何处理具有相同哈希码的不同对象?

根据我的理解,我认为: 两个对象具有相同的哈希码是完全合法的. 如果两个对象相等(使用 equals() 方法),则它们具有相同的哈希码. 如果两个对象不相等,则它们不能具有相同的哈希码 我说得对吗? 现在如果我是对的,我有以下问题:HashMap 在内部使用对象的哈希码.那么如果两个对象可以有相同的哈希码,那么 HashMap 如何跟踪它使用的键? 谁能解释一下Has ..
发布时间:2021-11-19 22:52:44 Java开发

什么是FreeBSD MD5,为什么它会产生非十六进制的哈希值?

我正在接受“黑客入侵本网站"的黑客攻击,在该网站中,我找到了密码哈希,然后通过强行破解手段将其破解.我的哈希饼干(开膛手约翰)使用的格式是"FreeBSD MD5".密码和哈希如下:PW:阴影哈希:$ 1 $ AAODv ... $ gXPqGkIO3Cu6dnclE/sok1 我的问题是,MD5通常不是只有字符集0123456789abcdef(十六进制)吗?为什么此哈希突然包含其他字符? ..
发布时间:2021-04-26 18:32:12 其他开发

生成k个成对的独立哈希函数

我正在尝试在Scala中实现 Count-Min Sketch 算法,并且所以我需要生成k个成对的独立哈希函数. 这是一个比我以前编写的程序都要低的级别,并且我对除算法类之外的哈希函数了解不多,所以我的问题是:如何生成这k个成对的独立哈希函数?/p> 我应该使用MD5或MurmurHash之类的哈希函数吗?我是否只生成了f(x) = ax + b (mod p)形式的k个哈希函数,其中p是 ..
发布时间:2020-06-17 19:32:16 其他开发

如何为自定义类使用C ++ unordered_set?

如何在unordered_set中存储类的对象?我的程序需要经常检查此unordered_set中是否存在对象,如果存在,则对该对象进行一些更新. 我在线上查找了如何使用unordered_set,但是可悲的是,大多数教程都涉及在int或string类型上使用它.但是如何在课堂上使用它呢?在下面的示例中,如何定义哈希函数以使node_id成为unordered_set的键? #incl ..
发布时间:2020-06-17 19:32:13 C/C++开发

MD5输入/输出的最大长度

可以对md5进行哈希处理的字符串的最大长度是多少?或者:如果没有限制,那么md5输出值的最大长度是多少? 解决方案 MD5将任意长度的消息处理为128位固定长度的输出,该输出通常表示为32个十六进制数字的序列. ..
发布时间:2020-05-08 00:27:42 其他开发

可扩展类的哈希码(面向未来)

由于我的数学技能不高,我问你是否存在我将来可能会在课堂上使用的算法? 请考虑以下情形: “角色"类具有以下字段: private boolean admin; private boolean printer; 几周后,我决定添加一个“来宾"角色: private boolean admin; private boolean printer; private boolea ..
发布时间:2020-05-06 11:43:07 Java开发

Java HashMap如何处理具有相同哈希代码的不同对象?

根据我的理解,我认为: 两个对象拥有相同的哈希码是完全合法的。 如果两个对象相等(使用equals()方法),那么它们具有相同的散列码。如果两个对象不相等,则它们不能具有相同的散列码 我是否正确? 现在如果没错,以下问题: HashMap 内部使用对象的哈希码。因此,如果两个对象可以具有相同的哈希码,那么 HashMap 如何跟踪它使用哪个键? 可以有人解释了 Hash ..
发布时间:2018-06-04 13:07:29 Java开发

使用我自己的散列算法而不是流行的散列算法有什么缺点?

我是算法的小白,并不是很聪明。但我脑海中有一个问题。有很多哈希算法可用,这些算法可能比我写的要复杂10倍,但几乎所有这些算法都可以预测。最近,我读到写我自己的哈希函数不是一个好主意。但为什么?我想知道一个程序/程序员如何破坏我的逻辑(例如)为每个字符串创建一个独特的哈希,其步骤为5 +以上。假设某人在我的服务器中成功注入了SQL查询并获取了所有的哈希值。程序(如hashcat)如何帮助他解密这些哈 ..
发布时间:2018-06-01 19:36:13 其他开发

哈希UUID不需要排序

我有两个UUID。我想完美地对它们进行哈希以产生一个唯一的值,但是有一个约束条件,即f(m,n)和f(n,m)必须生成相同的哈希。 UUID是128位值。 散列函数应该没有冲突 - 所有可能的输入配对必须生成唯一的散列值 f(m,n)和 f(n,m)必须生成相同的散列 - 也就是说,排序并不重要 我在Go中工作,所以结果值必须适合256位int 哈希不需要可逆 任何人都可以帮忙 ..
发布时间:2018-06-01 19:17:56 其他开发

电话号码的散列函数

6948060987 我正在构建一个哈希表,其中关键是一个电话号码(这里是其中的一部分): 6960780800 6963208768 6944870406 6947279288 6953691771 6956094283 6947092062 6960086297 6947719197 6951516975 6957531584 696921 ..
发布时间:2018-06-01 19:07:05 其他开发

为什么布隆过滤器需要多个哈希函数?

我不明白为什么bloom过滤器需要多个散列函数(比如SHA和MD5)。 为什么不只是例如,创建一个更大的 SHA散列,然后将其分解为多个部分并将它们视为单独的散列?在速度方面效率不是很高吗?解析方案 这个想法是使用几种不同但简单的哈希函数。如果你打算使用SHA或MD5等密码散列函数,那么你可以改变它的输入。是否更高效取决于你的散列函数的复杂程度。 ..
发布时间:2018-06-01 19:06:33 其他开发

获得k-wise独立散列函数

我需要使用属于k-wise独立散列函数族的散列函数。 C,C ++或python中的任何库或工具包上的任何指针,它们都可以生成一组k-wise独立散列函数,我可以从中选择一个函数。 背景:我试图在这里实现这个算法: http://researcher.watson.ibm.com/researcher/files/us-dpwoodru/knw10b.pdf 了解不同元素问题。 我已经 ..
发布时间:2018-06-01 18:55:10 其他开发

为什么Git使用密码散列函数?

为什么Git使用加密哈希函数 SHA-1 而不是更快的非加密哈希函数? 相关问题: Stack Overflow问题 为什么Git使用SHA-1作为版本号? 询问为什么Git使用SHA-1而不是您可以检查 / watch?v = 4XpnKHJAok8& t = 56m16s“rel =”noreferrer“> Linus Torvalds本人,当他于2007年向Google呈现G ..
发布时间:2018-04-26 12:59:56 其他开发

写一个哈希函数需要一些方向来排序约160,000个字符串

我的导师把这个抛给我们,告诉我们,我们只需要google如何写一个哈希函数。我对此非常无礼。我们为课程写了一个基本的哈希表模板,但是我有一个项目,因为需要〜160,000个字符串被排序到一个至少有500个桶的表中(我想要做更多的速度)。 我不知道在哪里找到简明易懂的信息。 任何帮助将不胜感激。 p> 解决方案 我建议一个通用散列函数。这种功能保证了少量的预期碰撞,即使数据是由对 ..
发布时间:2017-05-21 23:55:51 C/C++开发

了解词典

我需要使用多个哈希表,所以在 c ++ ,通常我会使用 std :: unordered_map 。到目前为止,我可以明白,我可以在Python中使用一个字典,所以让我们假设以下代码: my_dict_1 = {} my_dict_1 ['foo'] = 1 my_dict_2 = {} my_dict_2 ['foo'] = 2 两个字典将使用不同的哈希函数 ..
发布时间:2017-05-21 18:38:10 Python

关于加密散列函数有什么重点?

我正在阅读关于MD5哈希值的此问题接受的答案使我困惑。根据我的理解,一个密码散列函数的主要属性之一是找不到具有相同散列值的两个不同消息(输入)是不可行的。 但是问题的共识答案为什么MD5哈希值不可逆?是因为无限数量的输入字符串生成相同的输出。这似乎与我完全矛盾。 另外,令我困惑的是算法是公开的,仍然是不可逆的。这是因为在哈希函数中总是有数据丢失,所以没有办法告诉哪些数据被丢弃了? ..
发布时间:2017-01-16 10:10:37 开发方法

如何专门化std :: hash< T>用户定义类型?

问题 什么是std :: hash的一个很好的特化,用于std :: unordered_map的第三个模板参数, std :: unordered_set对于所有成员数据类型已经具有很好的std :: hash特殊化的用户定义类型? 对于这个问题,我定义“good”实现和理解简单,相当高效,并且不可能产生哈希表冲突。好的定义不包括任何有关安全性的声明。 Google的功能状态 ..
发布时间:2016-11-06 02:04:23 C/C++开发