哪些加密和签名系统(不要?)允许合理否认正在使用的 OP 密钥?

信息安全 加密 公钥基础设施 AES 电子签名 微笑
2021-08-14 07:40:59

我需要防止 Mallory 盲目地将加密和签名密钥与消息匹配

假设场景:

  1. 用户创建公钥
  2. 存在加密或签名的有效负载。
  3. 只有公钥和签名或加密的有效负载,Mallory 想要找出谁签署了数据。我们希望防止 Mallory 将加密的有效负载与公钥相关联。

我假设大多数现代加密原语(GCM、AES、RSA、Blowfish)允许这种类型的关联,但是,某些协议(GSM?、SMIME?PGP?)可能会在有效负载中公开签名密钥,即使规范允许省略。

问题

有人可以告诉我哪种加密允许合理的否认,或者相反哪些不允许?*

*我这样问是为了防止过于笼统的原因,因为我不确定哪个更大

附加信息:

  1. Mallory 拥有公钥,因此可能会进行 CPA 攻击,但数据应该是随机的。
  2. 原始签名者和预期接收者可以验证密钥是可以接受的。
  3. 如果 Mallory 以某种方式 MITM 连接,并将她的密钥传递给签名者,那么合理的否认就不必适用。
2个回答

如果它是加密的,只要知道公钥,就有可能隐藏使用的密钥。由于公钥将只是加密对称密码的随机密钥,因此足够大的密钥长度意味着它不能被暴力破解。私钥的所有者只需解密密钥并尝试数据是否正确解密(例如,附加的 hmac)。Mallory 根本无法测试所有可能的密钥。

另一方面,如果数据是签名的,根据其定义,它必须可以验证密钥 A 签名的数据。因此,Mallory 始终可以确定它签署了该文件的哪些公钥。(OTOH,如果 Mallory 没有您的密钥,或者例如包含每个嫌疑人的密钥的数据库,即使在包含“元数据”的模式上,它通常也只提供所用密钥的指纹,所以它是无用的)

简单的答案是加密(签名(数据))。

显然,元数据(例如发送电子邮件帐户)不应该泄露您的身份。

对于给定的盲目匹配消息键的场景,这只能实现合理的否认。Bob 将完全能够证明他收到的消息是由 Alice 发送的。通常,似是而非的否认一词用于表示爱丽丝甚至可以否认她写了那个。为此,您可以使用像 OTR 这样的协议。

不是用收件人的公钥加密的解决方案吗?

任何人都可以编写它,但只有预期的接收者才能阅读它。