gpt4 book ai didi

java - java中long到String(和返回)的简单对称加密

转载 作者:行者123 更新时间:2023-11-29 09:46:36 29 4
gpt4 key购买 nike

我正在寻找一种简单的方法来将 long 转换为 String 并以一种“隐藏”long 值的方式返回。

我希望避免为此功能向项目添加另一个 .jar。

它不一定是难以破​​解的加密,只是在没有经验的人看来是随机的。

添加:

我的目的是在用户不知道计数器值(有点像 tinyURL 的散列)的情况下将计数器值(long 类型)附加到 URL 作为跟踪参数,以便 servlet 知道计数器的值单击 URL 时。

谢谢

最佳答案

如果

X * Y = 1 (mod 2^32)

然后

A * (X * Y) = A (mod 2^32)
(A * X) * Y = A (mod 2^32)

因此,您可以通过将某个 32 位数字乘以 X 来“加密”,然后再乘以 Y 来“解密”。您所需要的只是找到一些满足条件的非平凡 X 和 Y。

例如,(X, Y) = (3766475841, 1614427073),或 (699185821, 3766459317)。我只是通过一个简单的暴力破解程序找到了这些。

获得 A*X 后,您可以在 URL 中使用 Base-64 或十六进制或某种类似方案对其进行编码。我建议使用 Base64,因为它占用的空间更少,而且看起来相当“随机”。

关于java - java中long到String(和返回)的简单对称加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1403785/

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