Python脚本中的秘密数据/密钥

时间:2017-03-11 12:32:59

标签: python decompiling copy-protection

我有一些代码,通过DropBox API与我的DropBox帐户一起使用,代码中有帐户访问令牌,如

token="sdfdsfsdfdsfsf"
dbx = dropbox.Dropbox(token)

我计划使用该代码分发我的应用,但我不知道如何保护token值 - Python脚本可以轻松反编译,任何其他人都可以看到我的令牌。

如何用代码保护代码中的令牌?

谢谢!

1 个答案:

答案 0 :(得分:2)

这确实是一个值得讨论的问题。

我们一直在讨论如何在源代码中保护我们的app_keytoken。事实上,要做到这一点非常困难。特别是在您的源代码中这意味着如果你的程序被反编译,无论如何,你的应用程序都会暴露,也许你加密了app_keytoken,它的角色不是很大。

我的建议是不要将真正的app_key放在源代码中。那么问题的关键是如何授权?

以下是几个计划:

  • 您可以将加密密钥存储在外部文件中,并将其放在服务器或任何其他VPS上,然后将其加载到运行时。将获得加密密钥在您的程序中解密。

  • 生成具有您程序权限的唯一令牌。这意味着您应该构建 API密钥系统,以便为客户提供密钥。这样可以保护您的{{1}在最大程度上。

  • IP白名单。如果您在客户的服务器上部署您的程序。但前提是您的用户相对固定。如果您的客户是业务用户,那将会很有帮助,否则他们会移动电话用户,这将是一个坏主意。

  • 使用 SSL 来防止黑客捕获数据包。如果您想构建自己的授权验证系统。这在某种程度上可以有效保护您的界面。

  • 通过您自己的一些方法生成一个临时令牌,也许您可​​以将dropbox app_keyapp_key绑定在一起,这个临时令牌具有特权,但它&# 39;在很短的时间内享有特权。

顺便说一句,你可以咨询服务提供商,也许他们已经建立了一套计划。

希望这有帮助。