数据加密

       当涉及到用户信息啊等比较隐私的数据,应该对用户负责,对数据加密保证数据安全。除了采用https保证数据安全外,我们还采用了RSA+AES 混合加密。 

        非对称加密,即加密和解密用的秘钥不同,公钥用来加密,私钥用来解密,如果双方都需要收发数据,那么需要客户端和服务端都各自生成一对秘钥,将公钥传给对方用于对数据加密。该加密方式比较安全,很难破解,但是加密解密需要时间较长,尤其对于性能较差的CPU,耗时更长。该加密方式用的比较多的算法是RSA算法。

        对称加密,即加密和解密只需要一个秘钥即可。该加密方式计算速度较快,耗时较少,但是对于多个服务需要多个key,一般需要通过接口传递,容易被截取。该加密方式用的较多的算法是AES算法。

        综上,一般需要将二者结合,物尽其用,先由服务端生成一对公钥、私钥(RSA 加密方式)将公钥给客户端,私钥留给自己,对于android APP 公钥存在 .so 文件,不容易泄露。然后客户端 生成AES 的key  ,该key 用于之后服务端和客户端数据通信的加密解密,服务端对key 和其他信息通过加密发送给服务端,服务端存储该key用于日后跟该客户端加密解密数据。

你可能感兴趣的:(数据加密)