问题描述
- 关于APP接口加密的问题,在线等大神
-
APP与后台接口间的数据传输加密使用3DES加密,但是3DES的密钥需要保存在APP中,这样很容易被获取,一旦密钥被获取,数据加密将不复存在。
所以我想使用RSA非对称加密方式传输3DES的密钥,用户登录时从服务器获取3DES的密钥,这个密钥是在服务器端经过RSA私钥加密的,APP获取后再用公钥解密,最终得到3DES密钥。
但是我有个问题,RSA的公钥是保存在APP中的,如果能够得到公钥,是不是也可以解密服务器经过RSA私钥传过来的密文了??那RSA的安全性何在??但是如果RSA公钥不保存在APP中,又能放在哪里呢?
求大神解答。
解决方案
只能是尽量加大被攻击的难度,andorid的应用是可以反编译的,数据加密再厉害,代码里总可以拦截到加密前的那个明文,没有办法可以完全防止。复杂一点的可以采用native代码加密。
解决方案二:
这种加密就这样,除非你的秘钥根据某种规则生成,在俩边都能用这个机制,但也还是有危险
时间: 2024-11-17 12:44:26