net-tools/encoding_toolbox

提供客户端 JavaScript 编码/混淆功能的 Composer 库

1.0.2 2016-12-18 11:21 UTC

This package is auto-updated.

Last update: 2024-09-24 20:19:48 UTC


README

提供客户端 JavaScript 编码/PHP-混淆功能的 Composer 库

此包包含一个 HTML 页面(以及所需的 CSS 和 JS 文件),您可以使用它快速

  • 将数据编码/解码为 base64
  • 计算某些数据的 sha256 和 md5
  • 在 PHP 脚本中混淆/解混淆敏感字符串

安装说明

要安装 net-tools/encoding_toolbox 包,只需通过 composer 要求它: require net-tools/encoding_toolbox:^1.0.0

您还可以下载完整发布版本,并将文件复制到任何文件夹(这是 纯客户端代码,没有 PHP,没有自动加载等),然后用 encoding_toolbox.html 打开浏览器。

如何使用?

HTML 页面相当简单。

左侧提供 编码 功能,右侧包含 解码 内容。您将需要编码/解码、混淆/解混淆、计算的数据输入(或粘贴)到顶部的文本区域,然后点击所需的操作按钮。编码/解码、混淆/解混淆的数据将显示在底部的文本区域中,并且当您点击它时将被选中(允许轻松的 CTRL+C 复制)。

您会注意到没有 sha256 和 md5 的解码操作。如果您对此不清楚,请参阅维基百科或任何其他关于 sha256 和 md5 的来源:它们是散列算法,不是可以反转的加密算法。

保密性

由于这是纯客户端 JavaScript 代码,所有过程都在您的计算机上运行,因此您的敏感数据永远不会“外出”。

混淆

混淆功能在您不希望密码(或任何敏感数据)在 PHP 脚本中清晰显示时非常有用。如果您的托管服务被黑掉,PHP 文件可能会自动扫描密码。在源代码中明文密码不是一种好做法。

这就是我们必须以另一种方式编写密码的原因。最简单的方法可能是像 $pass = base64_decode('MTIzNA==') 这样的东西,对 '1234' 密码进行编码。然而,一个 base64 字符串也可以很容易地通过黑客的自动化过程在脚本中扫描(寻找只有字母、数字、+、/ 和 = 的字符串)并立即解码为密码。

我的混淆过程使用 base64,但也使用字符串“加密”函数和变量函数。我用引号写“加密”,因为使用的函数不是加密函数;它们只是使用简单的代码算法将原始字符串转换。

目的是不产生强加密字符串,而是在脚本中以一些最小编码编写敏感数据,这样自动化过程可能无法反转(没有人类眼睛的指导,理解所使用的编码过程)。

解混淆

如果您有一天想获取混淆的原始数据,只需复制粘贴混淆代码,然后点击“解混淆”。请确保复制/粘贴确切的数据 eval(base64_decode(...))

如果有一天这个库或我的网站不再在线,您可以把这个包复制到您的计算机上。这将允许您解混淆数据(记住,这是纯客户端 JavaScript 代码,您不需要 Web 服务器来运行代码)。