在我们的应用程序中,我们有几个API密钥(也称为共享密钥或私钥).那些是运行时需要的.至关重要的是,除了我/我的组织之外,这些字符串永远不会被其他任何人掌握.
尝试1 – 什么都不做
NSString *privateKey = @"a6dedb6096973e4576e1dfc9d048075d;
如果有人得到这个应用程序的手,并通过签名的东西,他们可以在二进制文件上运行字符串,并轻松地检索所有字符串. (失败)
尝试2 – 做一些聪明的事
这是stackoverflow-guys最好的地方.给我一些魔力!
最佳答案 为什么您应用的每个副本都使用相同的私钥?
发送数据:
如果您的应用需要向服务器发送信息,则只需要您的公钥来加密数据.
接收数据(这是棘手的地方):
当应用程序安装在用户的设备上时,它应该生成自己的私钥/公钥对.然后它将公钥发送到您的服务器. (往上看).然后,每当服务器需要将数据发送回设备时,它将使用设备的公钥加密所述数据.因此,只有该设备才能解密数据.
重点是,如果你在应用程序中放入一个已知的私钥,重点是什么.