我正在寻找一个简单的哈希函数,它不依赖整数溢出,并且不依赖于无符号整数。如何在没有无符号整数的情况下制作好散列函数?
问题是我必须在虚幻引擎的蓝图中创建哈希函数(只有签名为32位整数,未定义的溢出行为),并且在PHP5中使用64位有符号整数的版本。
所以当我使用'通用'简单散列函数时,它们在两个平台上都不会给出相同的结果,因为它们都依赖于无符号整数的位溢出行为。
唯一真正重要的是具有良好的“随机性”。有没有人知道简单的事情会做到这一点?
它意味着一个非常基本的签名系统发送消息到服务器。不需要成为最高安全级别......这是为了在服务器上存储高分数的简单游戏。我的想法是,我会从消息中生成几个哈希整数(使用不同的'起始数字')并将它们附加到一个哈希签名中。我只需要确保,如果人们嗅探发送到服务器的网络消息,他们不能轻易发送伪造的消息。他们需要为消息提供正确的散列签名,除非他们知道正在使用的散列函数,否则他们不应该这样做。当然,如果他们对游戏进行逆向工程,他们仍然可以'破解'它,但我不知道如何反击... 我无法访问虚幻引擎蓝图系统中的现有哈希函数。