Java 中的短 url 安全数字加密



我正在考虑将一个简单的数据库主键加密成一个简短的 url 安全字符串。我已经查看了 jasypt 加密库,但每个加密数字的长度至少为 20 个字符。我正在寻找可以尽可能小但仍然可以 2 路加密的东西,可能大约 5 个字符长。加密不必非常安全,我希望它不明显。有什么想法吗?

最短的方法是只使用具有足够大的 url 安全字符和 url 字母表的索引。只需"计算"索引并将其保存到带有 url 的数据库中即可。

长度仅由您必须存储的 url 数量定义。

例如,如果您将使用的字母表使用区分大小写的所有字母加数字,则可以存储 (24+24+10)^5 个 URL(包含 5 个字符)。

所以第一个网址可能是:00001。此应用假定可以猜到网址键是可以的。

如果您需要确保它们不容易被猜到,只需随机化下一个密钥,检查该密钥是否不在数据库中并使用它。密钥的数量可能如此之快,除非数据库中有数百万个密钥,否则它们不应经常发生冲突。

最新更新