我有自动增加的I作为主要是我的所有数据库表,如用户,订单等。我不想暴露这些I给最终用户,因为他们可能会迭代I可以访问用户详细信息。相反,我想使用一个双向数学函数,这样我就可以在不存储DB映射的情况下对id进行混淆和反混淆。
function obfuscate(id)
{
constSeed = 1203793
return (id*constSeed)
}
function deobfuscate(bigid)
{
constSeed = 1203793
return (bigid/constSeed)
}
我甚至可以通过base36转换器运行bigid,以获得一个较小的字母数字id,并公开公开。
这种方法有问题吗?还有其他建议吗?
发布于 2015-08-25 02:20:03
如果您不想让它们访问ID,那么可以只在$_SESSION变量或类似的东西中使用它们。
如果数据对最终用户可见,即使您对数据进行哈希或加密,数据也不安全。
https://stackoverflow.com/questions/32189009
复制相似问题