为了综合演示MD5、AES和RSA加解密技术的应用,这里提供一个实际项目中获取服务器token的例子,如果对Base64编解码、MD5加密、AES加解密和RSA加解密还不太熟悉,可参考以下文档:
- Base64编解码及在Android中的使用
- MD5加密及在Android中的使用
- AES加密及在Android中的使用
- RSA加密及在Android中的使用
获取服务器token流程如下:
关于该方案的几点说明:
(1) 登录时使用RSA加密密码,基本不用担心密码被破解
(2) 使用明文密码的MD5值作为AES加解密的密钥,既难以被破解获取Token,又具有一定的隐蔽性,即使被破解获得了Token,也很难倒推出密钥和生成密钥的密码明文
(3) 为确保安全,获得的明文Token只参与接口加密,不参与数据传输