我有一个8位字段,我想加密(我不担心解密)到16个字符(或更多)字段。我需要这个,所以我可以使用加密字段发送给报告机构。
答案 0 :(得分:1)
由于您不需要解密,因此您可以(不可逆转地)对其进行哈希处理,而不是使用加密。在PHP中,您可以使用hash和fnv164
哈希算法执行此操作,该算法返回16个字符的哈希值。
此外,还有一些其他哈希算法将产生超过16个字符。您可以使用hash_algos查看系统上可用的内容。 Here's这样做的脚本。
答案 1 :(得分:1)
我不太了解这种“加密”背后的目的,这就是我所建议的(基于一些保守和保密的关于你的目标的假设):
R
。该数字最好至少为32位。<digits of R><8 digit identifier>
”。 此方案的好处是,只要您记住值R
,就可以始终将每个8位数标识符映射到相同的十六进制字符标识符。这在您的申请中可能重要,也可能不重要。
当然,此方案假设您永远不需要执行启示映射,并且该机构不想解密标识符。换句话说,它假设你的目标只是不给代理商提供标识符I,而是给我一个等价的标识符。