我正在构建一个使用密钥与 REST API 通信(通过 https)的应用程序。我不希望用户/黑客发现该密钥并构建他自己的应用程序,该应用程序可能会向服务器发送虚假数据。保护应用程序内部的“字符串”的最佳选择是什么?
以下是我正在考虑的选项:
1) 在应用程序中对该字符串进行硬编码并混淆程序集。我认为仍然有一些反混淆方法可以解密这个。
2) 将其传递到 app.config 并在安装时使用内置的 .NET 机制进行加密。据我了解,解密密钥存储在 Windows 内的某个位置,用户看不到。必须有人具有良好的系统知识和黑客技能才能检索它,是吗?如果是的话,那么用户下载安装包的时候还是可以解压看到秘钥的吧?
我还有其他选择吗?
我知道没有办法保护客户端机器上的任何东西——没有 100% 的安全方法。
巴特克