【问题标题】:Obfuscate php variables being passed混淆正在传递的 php 变量
【发布时间】:2012-10-27 19:25:39
【问题描述】:

我有一个通过 javascript 函数传递的 var,我希望在将 var 发送给用户之前对其进行模糊处理,然后在通过 php 返回时还原。

$data = "111:222:333:444";

$data 正在生成并放入视图中(javascript 函数)

<img src="button.jpg" alt="" onclick="newfunc(111:222:333:444)" />

然后将其发送回服务器进行处理

反正有没有散列这个数字,所以它看起来像

“8f8fu8vu8fu8fhguf99fu8fu8fu8fu”安装在 111:222:333:444 中?

是否有任何类似于 md5 的 php 函数可以让您恢复对 var 进行去混淆处理?

任何帮助将不胜感激。

【问题讨论】:

  • 有base64编码,但你的目标是什么?安全?那你就走错路了。在不破坏 JS 数据的情况下让它工作? json_encode() 可能是传递数据的更好方式。
  • 感谢 Pekka,这不是安全问题。我只是喜欢我的数据不在普通(可理解)视图中的想法。使用 base64 可以编码和解码?
  • 是的,base64 看起来就是这样 :)
  • 顺便说一句,我正在传递非关键数据。
  • 那你为什么在乎呢?它将隐藏在页面源中。

标签: php variables obfuscation


【解决方案1】:

使用 javascript 对任何内容进行安全加密(真正混淆)是不可能的。

例如,有一个bluefish encryption library for javascript,但由于相关的 javascript 函数需要知道私钥.. 进行加密的客户端/浏览器必须知道密钥,因此在设计上它不能,注意安全。

您可以做的是信任“通过默默无闻的安全性”(但同样,客户端安全性永远无法工作)并对字符串进行 base64 编码以“混淆它”..

每个知道自己在做什么的人都可以撤销您对字符串进行混淆的任何尝试...

但是!您可以将字符串发送到您的服务器(通过 ajax 调用),让它异步加密明文并返回真正混淆的文本.. 然后服务器可以解密(再次通过 ajax 调用)。

希望对您有所帮助....

【讨论】:

  • 感谢 Gung Foo!结束语句正是我正在做的。这是非关键数据,所以我'
  • 继续.... 我不太担心安全问题。这个 javascript func 变量在服务器端进行编码。发送给客户。 Ajax 返回服务器进行解码。
【解决方案2】:

好吧,如果您使用 base64,您可以将其解码回来,其他人也可以。(您希望对其保密的用户。)

所以我建议您制作一些随机模式并附加/混合数据并在您获取数据后对其进行清理。

【讨论】:

  • base64 是“编码”而不是“加密”。因此你“解码”它而不是“解密”任何东西......
  • 我喜欢让代码变脏并清理它的想法。很有趣。
  • 这个被传递的数据是非关键的顺便说一句。谢谢 Kishor。
猜你喜欢
  • 2014-06-13
  • 1970-01-01
  • 2012-07-06
  • 1970-01-01
  • 2017-02-17
  • 2011-09-22
  • 2016-01-14
  • 1970-01-01
  • 2019-05-10
相关资源
最近更新 更多