【发布时间】:2021-12-21 21:58:35
【问题描述】:
我正在尝试在 Node.js 中实现 C++ 的 std::hash 功能并进行比较。由于std::hash 不基于任何加密算法,我无法理解它是如何在内部生成的。
C++ 中的使用参考:https://iq.opengenus.org/std-hash-cpp/
【问题讨论】:
-
"由于 std::hash 不基于任何加密算法" 我觉得这很难相信。它接受一个值并对其应用单向转换。它一定在做某事。
-
您是否尝试阅读 std::hash 的任何实现?更好的参考en.cppreference.com/w/cpp/utility/hash
-
你知道std::hash的源代码只是开放读入libstdc++、libcxx和MSVC代码库吗?
-
std::hash有多种实现:“实际的哈希函数是依赖于实现的,除了上面指定的那些之外,不需要满足任何其他质量标准。哈希函数只需要产生相同的在一个程序的单次执行中获得相同输入的结果;这允许防止冲突拒绝服务攻击的加盐哈希。" -
@VLAZ 是的,确切地说,某事。它可能是一个身份函数,而 std::hash 不适合且与加密哈希无关。