我的PHP应用程序使用以下URL:
http://domain.com/userid/120
http://domain.com/userid/121
Run Code Online (Sandbox Code Playgroud)
密钥和URL的结尾基本上是MySQL数据库表的主键.
我不希望这个增加的数字是公开的,我也不希望有人只能通过交互ID来抓取用户配置文件.
因此,我希望以一种我可以轻松解密的方式加密此Id以进行显示.字符串不应该长得多.
什么是最好的加密方法?
简单模糊: Base64使用它们编码base64_encode.
现在,您的http://domain.com/userid/121成为:http://domain.com/userid/MTIx
想要更多,再做一次,在它周围添加一些字母.
隐藏 URL 永远无法保证其安全。它使阅读变得更加困难,但操作起来并不困难。您可以使用十六进制数字表示或类似的东西来模糊它。无论如何,那些能读十六进制的人可以在几秒钟内更改您的 URL:
$hexId = dechex($id); // to hex
$id = hexdec($hexId); // from hex
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6097 次 |
| 最近记录: |