c++ - 生成 (void *) 数据的 Hash Key

标签 c++ hashtable hash ns-3

我想知道如何生成无效数据的哈希键。

我正在从事一个网络和处理数据包的项目。我必须生成哈希表。在哪个数据包头上进行哈希处理。但我不知道数据包头的结构或类别。所以,关于这个的任何想法。我只是想将其转换为无效。并对无效数据进行哈希处理以生成哈希键。

任何其他想法。良好的逻辑将受到欢迎。

最佳答案

CityHash ,其中有一个我认为适合你输入的函数:

// Hash function for a byte array.
uint64 CityHash64(const char *buf, size_t len);

据我所知,将 char 用作输入类型只是为了方便——例如,它并不意味着函数将在找到零字节时停止散列。

还有 128 位版本和其他东西。

关于c++ - 生成 (void *) 数据的 Hash Key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10199724/

相关文章:

c# - 如何衡量 C# 中哈希表的性能?

javascript - 如何使用 Node.js Crypto 创建 HMAC-SHA1 哈希?

c++ - 如何在多显示器设置中测试我的 Windows 应用程序?

c++ - 删除函数删除哈希表中的所有节点

c++ - 获取中间 C 代码的命令行选项

c++ - 使用智能指针制作哈希表?

python - 通用哈希实现中的整数溢出

hash - 用于分析的 Redis key 方案

c++ - glutIdleFunc 不调用空闲函数

c++ - 输入缓冲和屏蔽密码输入 C++