关于TLS / SSL,为什么要立即删除Pre_master_secret?

时间:2013-06-16 10:57:32

标签: ssl

我知道可以存储在内存中的MASTER_SECRET用于会话恢复,KEY用于每个连接。RFC 5246表示一旦计算了master_secret,就应该从内存中删除PRE_MASTER_SECRET。但为什么呢?

2 个答案:

答案 0 :(得分:0)

因为不再需要它,但可以用来计算master_secret。因此,以任何方式从内存中获取它可以允许解密所有流量。

答案 1 :(得分:0)

假设它使用PMS但不使用MS作为会话密钥。

  1. 所有会话的PMS 可以相同(因为它是随机数)。

  2. 我们必须将所有会话密钥存储在内存中以便恢复会话。

  3. 内存中的会话密钥可能会泄露,然后所有会话使用相同的密钥都会被破解。

  4. PMS -> KEY vs PMS -> MS -> KEY(使用不可逆哈希)

    为了确保伤害限于一个会话,我们再采取一个步骤。创建并存储MS作为会话密钥,然后立即删除PMS。