2013-03-07 109 views
1

对于Alice和Bob之间的安全通信,如果他们有预共享密码。为什么该密码不应该用作通信的会话密钥?为什么不应该使用密码作为会话密钥

+0

投票结束为“脱离主题”。这似乎不是一个编程特定的问题。 – 2013-03-07 09:10:16

+0

确实,这将更适合我们的姊妹站点http://crypto.stackexchange.com – 2013-03-07 10:50:02

回答

4

因为在此通信会话中,您可能会传输大量数据。这些数据可以用来发现密码。

如果您使用会话密钥,它仅在一个会话期间有效,所以即使密码被泄露,密码也会保持安全。此外,发现此会话密钥的可能性较小,因为它会定期更改,因此攻击者可用的数据量将受到限制。

+0

“*此数据可用于发现密码*” - 会话数据如何与密码相关? – SomeWittyUsername 2013-03-07 09:08:40

+0

如果使用相同的密码来加密数据,攻击者可能会收集大量密码数据并使用某种线性分析来发现该密码。所以重点不在于会话数据和密码之间有关系。 – kamituel 2013-03-07 09:12:29

+0

@icepack随着密钥加密的数据量的增加,密钥暴露的风险也随之上升。我想这里的建议是,更大量的示例数据使得密码分析更容易。 – 2013-03-07 09:12:40

0

密码通常是太短了,他们远不是随机因此其熵可以被攻击,并且他们保持一样的,所以获得的知识可能在将来的会话中使用。你最终得到的是一种自1850年以来已知可以破解的Vigenère-cipher。你必须自己决定,这是否“足够好”。

1

想象一下,攻击者发现从用户发送到服务器的数据。如果您将密码用作会话密钥,则攻击者可以完全访问您的帐户。

如果使用随机密钥,攻击者将只能期间会话密钥有效的时间访问到您的帐户(有些分钟,小时左右)。

这可能是密码被其他网站也使用(邮件为例),因此攻击者可以获取到更加帐户的访问。

然而,这个例子并不现实,因为会话密钥通常与用户的IP和其他相关信息相关联。这意味着攻击者必须伪造自己的IP才能使用会话密钥。

这也是为什么有些网站不允许您在未输入旧密码的情况下更改密码。这是因为如果攻击者劫持您的会话,他将无法劫持您的帐户。您的帐户(电子邮件,密码等)中的每个重要更改都应该使用“输入密码”字段进行保护,以便会话劫持不会成为严重的安全问题(这是一个安全问题,但只是暂时的而不是关键) 。

相关问题