需求是Android或ios应用内下载文件或数据到本地后能有一个加密方案使得这些文
件只有通过本应用看。查网上看到用sqlite加密(SQLCipher)是比较好的方案,问题是解密的秘钥放在哪里比较安全,另外除了数据加密存储之外还有其他好的方案吗?
可以 模仿SSH 的会话
加密真正秘钥存储在服务端(key) ,另外服务端 和客户端会话建立的时候使用 公钥--私钥 的机制建立会话。
1 客户端 向服务器发送 请求一个串(sessionKey)(作为会话秘钥),使用公钥加密
2.服务端使用 私钥解密。然后使用这个串对 key加密,返回客户端。
3,。客户端使用sessionKey 解密,得到真正的key。
以上流程,key存储在 服务端,防止客户端破解。 sessionkey可以在每次登录的时候随机生成。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。