我们的 iOS 应用程序将用户相互发送的消息存储在我们服务器上的 PostgreSQL 数据库中。因此,我们的用户只需登录即可在任何设备(iPhone、iPad、iPod Touch)上访问其整个消息历史记录。
我们希望实现端到端加密,同时仍然允许我们的用户从任何设备访问他们的消息历史记录。
这可能吗?
例如,如果 Apple 的消息应用程序是端到端加密的,那么它如何能够在我的所有设备之间同步?
最佳答案
当然:您可以采用两种方法(好吧,至少两种方法):让用户注册他们的设备并列出所有设备的公钥。然后使用单个数据 key 对所有设备进行加密,并使用各种公钥进行加密。缺点:添加设备意味着需要对设备重新加密。
您还可以将由用户密码加密的单个私钥分发到每个设备。现在,用户必须输入密码才能访问私钥和为其加密的消息。
有两种方法可以做到这一点;还会有更多。我不知道苹果是如何执行端到端加密的。
关于security - 端到端加密和同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43480198/