我正在WinJS做一个业余爱好项目Windows 8应用程序。因为我正在调用一个需要api密钥和oauth身份验证的外部api,所以我需要一些密钥来保持“秘密”。
我在网上看到了有关如何访问并修改计算机上WinJs(和C#)应用程序源代码的详细说明。但我认为那些是在测试版/预览时间框架内?
我的Google技能似乎无法告诉我这是否已经修复,有人知道吗?
如果没有修复,人们如何处理这些情况?
欢迎任何提示和建议:)
答案 0 :(得分:1)
你有几个选择。
从任何计算机语言编译的任何本地应用程序都可以被篡改,您只需要一个调试器。如果你加密所有东西我理论上可以只加载一个调试器,附加到http堆栈库并观察数据熄灭(不包括更简单的技术,如Fiddler来观察这些数据)并提取我想要的任何东西 - 相当容易。所以问题是你想要阻止什么?
答案 1 :(得分:0)
如果您的应用程序可以帮助发起中间人攻击,则不应该长时间,内存或磁盘上保存机密数据。另外,storing encrypted data locally, alongside with the algorithm and the algorithm key/hash is a recipe for security incidents。
没有灵丹妙药可以保护您的代码或数据不被最终用户(或者对最终用户的机器进行物理访问的人)进行探测,请参阅游戏保存编辑和游戏培训师的数量。不要将您的业务逻辑或重要数据(例如应用内购买)以纯文本或类似方式存储,至少添加一些混淆