我正在开发一个 sdk 供第三方应用程序使用,我需要对来自我服务器上 sdk 的请求进行身份验证。
现在我通过在 sdk 中硬编码一个私有秘密来解决这个问题,然后 sdk 使用这个秘密来散列(md5)它的请求参数作为一个标志,它与其他参数一起发送到服务器。然后服务器可以检查签名,看它是否由正确的私人秘密签名,因此,我开发了sdk。
问题是:
- 我怎样才能保护这个私人秘密免受逆向工程?
- 我可以通过在android NDK中封装请求过程来保护私有机密吗?
- 还有其他更好的方法来实现我的根本目的:验证我的 sdk 请求吗?那里的其他sdk如何做?
谢谢。