我正在使用 TMDB api 制作一个应用程序,并且一直在发出一些 REST 请求以获取请求的数据。我想知道黑客是否有可能嗅探 url 并检索 api 密钥,因为密钥存在于 url 中。
如果是,我该如何保护密钥?
简而言之,只要 API 密钥保留在 Android 应用程序中,您就无法保护它。即使您以某种方式加密 API 密钥,反向工程(反编译)您的应用程序的人也可以检索 API 密钥,因为您的解密密钥也需要在 APK 中的某个位置(否则您的应用程序无法使用 API 密钥)。
唯一的解决方案是将使用 API 密钥的处理卸载到您自己的服务器上,并以一种安全的方式让您的应用程序与该服务器通信(即 SSL)。
这样,您就可以转移到安全方面的单一故障点(您的服务器),而不是大量可以进行逆向工程且难以跟踪的移动应用程序(随着时间的推移安装不同的版本)