是否可以在几个(动态计数)用户之间共享加密的数据而无需在服务器端解密?
例如:
他们如何解密此机密?
这是我现在的想法:
制作2个后端:
这是我在这里关注的问题:
服务器所有者可以获取公共密钥,获取加密的数据并解密该数据。当服务器不知道哪个密钥可以解密数据时,我看不到任何一种在用户之间进行管理(包括共享公共密钥)的方法。
也许有人知道lastpass,passbolt或其他任何服务如何解决了这个问题?
答案 0 :(得分:0)
您似乎对公钥和私钥的工作方式有误解。
对于给定的公钥/私钥对,任何人都可以使用公钥加密数据,但是只有私钥的所有者才能解密数据。
因此,要在用户之间传递数据,每个用户应首先:
如果用户A要向用户B发送数据,他们将执行以下操作:
服务器现在保存了加密的数据,但是由于它没有B的私钥,因此无法解密。
用户B现在可以从服务器提取加密的数据,并使用其公共密钥对其进行解密。
请注意,这仅涉及加密。它不解决身份验证问题,即确保数据来自已知来源。
通过从受信任的权威机构在每个用户的公钥上颁发证书并将每个用户的证书存储在服务器上,以及让用户将数字签名应用于使用其私钥加密的邮件,可以使此方案更加安全。然后,邮件的收件人可以使用发件人的公钥和证书来验证签名。
答案 1 :(得分:-2)
您需要使用端到端加密,其中用户设备会收到可用于解密消息的公共密钥