我正在开发一个开放协议的Android应用程序。
它将是开源的,但我希望服务器(封闭源代码)能够检查客户端是原始应用程序还是修改(由其他人编译)。
这在Android上有可能吗?
发布于 2014-01-24 19:07:46
要证明没有修改的代码是不可能的,未经修改的代码的存在并不意味着未经修改的代码是唯一的代码。
假设您的开源应用程序有代码以任何方式证明其真实性。任何修改都可以简单地保存、结转或复制这一真实性信息。如果真实性信息实际上检查程序的代码或数据本身,则对手仍然有可能使用一个好程序的代码/数据并模拟它。
发布于 2014-01-24 19:14:41
您可以使用SSL保护服务器端,并需要客户端证书。分发源代码时,不要分发代码用于与服务器通信的证书。修改后的应用程序将必须创建自己的证书来与服务器通信,服务器可以确定用于建立SSL连接的证书。
https://stackoverflow.com/questions/21340408
复制相似问题