Javascript 如何简单地编码和解码字符串变量

Javascript 如何简单地编码和解码字符串变量,javascript,jquery,encode,decode,Javascript,Jquery,Encode,Decode,我需要简单地编码一个字符串变量(我的api键),这样就不容易被人的眼睛读取,我需要它容易地解码回完全相同的初始字符串。标准的实用和快速(用户端的计算量较小)方法是什么 非常感谢 如果不需要超级安全,Base64编码总是很方便: 对客户机上的信息进行模糊处理所能做的一切都意味着在其旁边包含用于消除模糊的代码 所以…除了为你的程序(和假想的攻击者)添加一个额外的步骤之外,你什么也得不到。嗯,反正也不多 如果您的API密钥是机密的,请将其保存在服务器上,并让服务器通过HTTP请求完成工作。您可以尝试对

我需要简单地编码一个字符串变量(我的api键),这样就不容易被人的眼睛读取,我需要它容易地解码回完全相同的初始字符串。标准的实用和快速(用户端的计算量较小)方法是什么


非常感谢

如果不需要超级安全,Base64编码总是很方便:


对客户机上的信息进行模糊处理所能做的一切都意味着在其旁边包含用于消除模糊的代码

所以…除了为你的程序(和假想的攻击者)添加一个额外的步骤之外,你什么也得不到。嗯,反正也不多


如果您的API密钥是机密的,请将其保存在服务器上,并让服务器通过HTTP请求完成工作。

您可以尝试对整个脚本或部分脚本进行编码。这不是一个绝对的解决方案,而是保护代码的开始。

您可以使用第三方base64编码器库:

这是不是机密信息

如果它是秘密的,你需要一个真正的加密库和一些深入的思考来确保你的秘密是保密的。我会认真考虑从不向浏览器发送任何秘密。


如果这不是秘密,您只需要通过URL发送,而不必修改它,那么escape()/unescape()就是您要查找的内容。

您知道保护您的密钥毫无帮助吗?是的!这是真的,但由于我将混淆javascript函数本身,这只是将它们挤在一起,而且代码很长,所以我只是试图利用“Ctrl+F”的优势,迫使它们实际上重新学习所有代码来复制它。这会让业余爱好者望而却步。这是一种与项目相关的东西,我不确定我描述得有多好。@Mohammed:我知道这是一条细线。但是问问你自己——这是否是秘密(比如“当人们发现时,坏事就会发生”,JS模糊处理是不够的,在客户端上运行它本质上是危险的,不管它是什么形状或形式。如果这不是这些术语中的秘密,为什么还要麻烦对它进行模糊处理呢?那么…谁是你的目标受众,你要赶走谁?Tomalak你当然是对的。我必须在下一次安全优化中开始担心这一点。谢谢:)不推荐使用
escape()
/
unescape()
:很好-只知道这种方法只会给解码带来不便,但绝非不可能。我添加了一些额外的位,对字符串进行了反转、编码等。。哈哈:)我想这会让你很难知道添加了哪些位,特别是因为它也被颠倒了^^解码器返回的是垃圾。我真的很“确定”它被重新设计,可以这么说,在这个项目中,我只是希望它不能够被复制和粘贴,你知道的。我需要尽快找到真正的安全措施。