是否有可能构建一个被动自毁的消息?

信息安全 加密 破坏
2021-08-23 15:37:02

是否有可能构建一个随时间被动退化的消息,而不需要外部因素来破坏它?

类似的事情,但不是我的意思:

  • 随着时间的推移而退化的硬盘驱动器可能会变得更难读取,但如果您成功地将数据从其中复制到更强大的媒体,则该数据将持续存在。换句话说,这是降级的媒体,而不是信息。
  • 一个可执行文件,在运行时会破坏自身的全部或部分。但如果你能阻止它执行,它就不能自我毁灭。在这里,导致消息破坏的不是被动特征,也不是无法预防的。

相反,我的意思是描述一条消息,该消息在可配置的时间段内从可读状态变为不可读状态,而无需任何外部干预。例如,如果我可以使用放射性同位素的不可再现特性来加密一条消息,一旦该同位素衰变超过一个点,就可能无法解密原始消息。但这听起来像是疯狂的科幻小说。有没有可能发生这种事情的真实场景?

关于“外部”的注释

我对这个想法有点过度兴奋,滥用了“外部”这个词。是否涉及外部因素并不重要;我真正的意思是

是否有可能创建一个真实的系统,其中可以使用 TTL 创建消息,并且没有人力可以阻止该消息在 TTL 之后变得不可读?

“同位素”概念是一个例子,其中信息本身仍然存在,但我们阅读它的能力正在衰减。我不想进入关于“外部”的语义讨论,但我真正的意思是衰变是“不可预防的”(没有魔法甚至更高级的科幻小说)。

编辑:我在项目符号列表中添加了斜体注释。

4个回答

让我们先省略“是否可以复制”部分。我可以从相机开始,然后从那里开始。我还可以招募足够数量的僧侣,更不用说数字媒体了。

如果你有足够的时间和足够的僧侣,几乎所有东西都可以复制

你正处于放射性衰变的轨道上。如果您可以安排一个由许多衰变放射性同位素表示的足够大的密钥,并使用纠错码安排该密钥,那么您将在某个时间窗口内发生可预测的密钥丢失,这是丢失 N 位的函数数据的速率由放射性介质的半衰期和 M 位可丢失密钥组合而成。

这仍然留下了一个想法,即部分衰减的密钥比完全衰减的密钥提供了一个更好的起点,但是我们又回到了关于修复错误密钥的尝试次数的数学问题,这也是一个数学组合。一旦密钥被衰减,使得在错误可纠正大小之后一半位可能是错误的,那么您的数据将受到保护,就像攻击者一无所有一样。

对您选择的放射性物质和 EC 代码进行与时间相关的数学运算是读者的练习。

如果时间是约束,则使用时间作为解决方案。

一次性密码可以使用时间同步作为一个因素。您可以设计一个需要 OTP 算法的系统,但使用时间同步部分不仅可以验证 OTP,还可以检查是否超过了时间阈值。

如果我正确理解了您想要的东西,特别是硬盘驱动器示例,那么不会。

因为如果有人能够在一段时间内阅读该消息,则意味着他能够将其从计算机保存到闪存盘,打印,从计算机内存中提取,使用笔和纸复制,照片,音频/视频记录它,记住它,大声说出来等。所以即使媒体退化了,消息也会再次保存在其他媒体中,即使媒体是阅读/收听消息的人的大脑.

但是,如果您的方案不包括,并且您的意思是消息存储在某些完全安全的计算机中,并且您希望能够仅在某个特定时间而不是在此之前/之后检索信息,那么是的:您可以使用您拥有的最强加密对其进行加密,然后让一些第三方在特定时间为您提供密钥。由于没有人可以访问计算机,因此密钥只能在这段时间内解密消息。以前,蛮力会失败。之后,将不会提供密钥。相反,问题出在您的计算机上,它会交给提供密钥的第 3 方。

这里有一些想法给你:

听起来您想依靠物理学和自然作为时间常数t将原始消息降级mm'm' = f(t,m)

  1. 同位素、宇宙辐射、地球的可预测轨道,都可以作为t.

  2. 用于t生成 OTP(或更安全的等效项)或 XOR 输出

  3. 找出上面要做的#2的数学。

  4. 利润!!!

或者

如果我们将 #1 替换为受物理限制的计算,事情可能会更容易,其中计算离散对数会显示部分信息,但不是全部信息。你等待的时间越长,数字越大,就越难计算。

我对上一段的灵感是比特币区块链,我正在重新想象解决的“目标”将前一个区块作为下一个区块的一个因素。

  Block #1 =  11  (this prime decrypts the first word of the file)
  Block #2 =  #1 * new prime
  Block #3 =  #2 * new prime
  Block #4 =  #3 * new prime
  ...

为了防止作弊者回滚时间(以获得更容易计算的数字),旧块将被丢弃在这个主链上。

你将如何实现这一点?您将需要一个不保留这些素数的完整历史的系统。在比特币术语中,有一个众所周知的发布发送地址。该地址将数据插入到链中,其中数据是一个 NOP 操作码分隔的谜题列表(每个句子一个素数)。然后,客户端将列出所有素数并努力解密每个句子,直到它变得难以解决。

希望看到或听到更多关于任何想要进一步探索这个想法的人的信息。