大致的想法是:Alice 使用 key K 加密一个文件,并将 key K 都提供给 Bob,表示只有在 Alice 发生什么事时,他才应该使用它来解密文件。为了确保他不会过早使用他的 key ,Alice 想要编写一种算法,当 Bob 尝试解密她的文件时,她会收到一封电子邮件,并且只有在她在特定时间内(例如 48 小时)内没有采取任何操作时Bob 能否继续解密该文件。
如果没有受信任的第三方,这样的事情可能吗?
最佳答案
不是你所创造的否定形式。鲍勃拥有解密数据所需的所有部分。一旦您向一方提供了所有组件,就没有任何机制可以阻止他们使用这些组件(除了希望他们只使用您的软件;通过希望实现的安全并不是强身份验证)。这就是托管服务(即受信任的第三方)所要管理的大部分内容,不仅在数据世界中,而且在现实世界中。
顺便说一句,在设计安全协议(protocol)时,您可能甚至想摆脱“发送电子邮件”的想法。这往往会导致对协议(protocol)的错误思考。你的意思是“向爱丽丝发送消息”。消息被编码为电子邮件的事实是完全无关的,并且可能会让您思考与电子邮件实现相关的术语。
关于security - 延迟解密文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10938140/