gpt4 book ai didi

algorithm - 从 64 位整数到 64 位整数的可逆 "hash"函数

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:35:51 28 4
gpt4 key购买 nike

我需要的是一个可逆函数,它可以将一个long(64 位整数)转换为另一个long 数字,其方式是对于用户来说似乎是“随机的”(但实际上是确定性的),因此 3 个连续的数字被转换为 3 个彼此完全不同的数字。

在不可逆的情况下做起来很容易,但是到了这部分就很难了​​。

基本上这与 Reversible hash function? 是同一个问题,但我需要超过 2^32 个不同的值。

有什么想法吗?

PS:我打算用 Java 编写它,但问题本身很笼统。

最佳答案

这些是分组密码的基本要求,通常用 Feistel 结构实现:https://en.wikipedia.org/wiki/Feistel_cipher

  1. 创建低 32 位的哈希并将其异或到高 32 位
  2. 交换低32位和高32位
  3. 重复几次。

关于algorithm - 从 64 位整数到 64 位整数的可逆 "hash"函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34465444/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com