客户端JavaScript中的Steam API密钥

Steam API Key in Client-Side JavaScript

本文关键字:API 密钥 Steam 中的 JavaScript 客户端      更新时间:2023-09-26

最近我创建了一个Steam应用程序,使用Steam API,这需要Steam Key在很大程度上使用。我的应用程序完全使用客户端JavaScript编写,并且需要以某种方式将密钥放在那里。然而,Steam禁止用户在公共场所发布他的API,我相信源代码是公开的。

是否有编码的方式,所以没有办法得到正常的关键,但仍然保持功能,把它放在一个网站的调用(例如www.example.com/?api=key)。

我一直在看的一个例子是将其编码为base 64,但我不确定这是否满足所需的隐私。代码是:

alert(btoa("key"));

之后,我粘贴了在

示例中得到的警告消息
var api=atob("key");

这对普通站点隐藏了密钥,但可以使用

这样的内容轻松解码。
alert(atob("key"));

是否有一个库,我可以使用,或一些方式,不需要服务器端JavaScript(如node.js)来做到这一点

正如许多评论所指出的那样,没有办法使任何东西在客户端中安全,并且服务器被期望信任客户端。

在您的示例中,特别是使用功能aTobbToa,您正在创建的是特别创建一个新的APIKEY,其行为与原始APIKEY一样,就像APIKEY'一样,最终不安全。

这个问题的解决方案是将代码和APIKEY完全排除在用户的操作之外。这是一个秘密,因此应该尽可能地保密和"隐藏"。