security - 延迟解密文件

标签 security encryption cryptography

大致的想法是:Alice 使用 key K 加密一个文件,并将 key K 都提供给 Bob,表示只有在 Alice 发生什么事时,他才应该使用它来解密文件。为了确保他不会过早使用他的 key ,Alice 想要编写一种算法,当 Bob 尝试解密她的文件时,她会收到一封电子邮件,并且只有在她在特定时间内(例如 48 小时)内没有采取任何操作时Bob 能否继续解密该文件。

如果没有受信任的第三方,这样的事情可能吗?

最佳答案

不是你所创造的否定形式。鲍勃拥有解密数据所需的所有部分。一旦您向一方提供了所有组件,就没有任何机制可以阻止他们使用这些组件(除了希望他们只使用您的软件;通过希望实现的安全并不是强身份验证)。这就是托管服务(即受信任的第三方)所要管理的大部分内容,不仅在数据世界中,而且在现实世界中。

顺便说一句,在设计安全协议(protocol)时,您可能甚至想摆脱“发送电子邮件”的想法。这往往会导致对协议(protocol)的错误思考。你的意思是“向爱丽丝发送消息”。消息被编码为电子邮件的事实是完全无关的,并且可能会让您思考与电子邮件实现相关的术语。

关于security - 延迟解密文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10938140/

相关文章:

JAVA API 创建 keystore 并向其附加 csr 和 key 对

java - 什么时候应该使用 AccessController.doPrivileged()?

security - 在对 < 和 > 进行编码时,html 标记之间是否可能发生 xss 攻击

c - 将整数数组映射到字符串数组时如何进行排列?

javascript - ECSDA用Python签名,用JS验证

java - 解码来自 X500Name 的 DER 编码值

java - changeit 在 java net ssl keystore 中到底做了什么?

encryption - DSA 和 RSA 有什么区别?

php - 使用 MySQL LIKE 或 = 运算符选择加密数据

java - 在java中验证C#中的rsa签名