PHP - 寻找用于存储电话号码的双向混淆方法

bar*_*oon 0 php obfuscation

我正在寻找存储(在mySQL中)电话号码的混淆版本,其中该号码用于验证(我需要能够取回原始号码).

我想过一个任意的方案,比如存储数字*15或某些常数只有我的应用才知道.

有什么更好的方法呢?

编辑:我想澄清的一些事情:

  1. 保存的电话号码可用于登录iPhone应用程序 - 因此我希望用户能够查看他们已连接到服务的号码,以便他们稍后使用其他号码登录应用程序.这意味着我无法散列该值.

  2. 基本上我正在寻找一种方法来保护数据,如果有人举起我的数据库,他们没有一堆原始形式的电话号码.所以我想对它们进行模糊处理,以便我可以使用它们进行身份验证,但是能够以原始形式恢复原状,而不会将其保存为原始状态.

编辑:为了澄清,我不是认证上JUST的电话号码.如果实施,它将是电话号码+密码!输入可能存在的单个数字字符串,您在哪里?大声笑 - 如果我误导了一些人,我道歉.

Mar*_*c B 6

存放在哪里?在数据库中?使用加密功能而不是滚动自己的系统.

在MySQL中它就像下面这样简单:

INSERT INTO users (phone) VALUES (AES_ENCRYPT('yourkey', '867-5309'));
Run Code Online (Sandbox Code Playgroud)

当然,现在你把问题从隐藏电话号码改为"@ $ @#$ @#我可以隐藏这个键吗?".明显的解决方案:将钥匙隐藏在服务器前门外的岩石下面.这将问题变成了"@ @ @#$ @ @ @%@我可以隐藏这块石头的地方?".明显的解决方案:用一个钢制笼子盖住你的前院,门上有挂锁.新问题:如何隐藏挂锁键......等等.