2 u010731949 u010731949 于 2016.01.13 18:51 提问

iOS-网络请求-加密解密 20C

采用AES解密,但是问题是用于加密解密的key硬编码方式宏定义在了代码中,如何改进?不让key显示出现在代码中

6个回答

oyljerry
oyljerry   Ds   Rxr 2016.01.13 19:44

代码中肯定是要的。反正iOS APP不能轻易反编译,别人也没那么容易看到

zhangbao_csdn
zhangbao_csdn   2016.01.14 09:05

不让看到简单,你可以第一次安装的时候把key存到本地,用法到的时候取一下,这样别人就看不到了,但是还是会被找到,或者存服务器上,谁也不知道

u010731949
u010731949   2016.01.14 11:18

可是我的key就是为了给网络数据传输加密解密的,如果key存到服务器上,肿么去解密服务器返回的key。。。遇到安全测试,他们的规范是不要将解密密钥在代码中hard-coded,我心都碎了

FM447860675
FM447860675   2016.01.14 11:33

可以服务器生成动态的key,然后在客户端中动态获取key。我们是这么做的,java服务器动态生成key。

u010731949
u010731949 客户端动态获取?那不也是要请求接口嘛?服务器生成的key被截取了,不就不安全啦
接近 2 年之前 回复
LG_sun
LG_sun   2016.01.14 19:03

你可以让服务器和客户端定时改变KEY

u010731949
u010731949   2016.01.16 12:05

现在我想去掉接口的AES加密,那么问题是,单单https请求,charles等抓包工具截取的数据是明文的,,不是说https安全吗?不应该是密文吗?

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!