2

为什么有些场景需要加密和完整性,而有些场景只需要加密?在网络域的情况下,决定这一点的因素是什么?

4

3 回答 3

0

当您希望只有授权人员才能访问查看数据时,需要加密。完整性是授权人员可以访问修改数据的时间。

如您所见,加密和完整性之前都需要一个身份验证和授权阶段。

例如:数据可以使用不同的私钥进行加密,并使用相对不同的公钥进行解密。这些阶段取决于身份验证和授权阶段。

例如:当您通过 HTTPS 连接时,第一阶段是协商正确的证书。通常,客户端授权服务器检查证书链的信任。

例如:您必须访问中央数据库中的数据。数据可以加密也可以不加密,但是只有在验证和授权检查之后才能访问密钥和/或数据。

希望我的考虑对你有帮助

于 2010-10-22T05:23:24.413 回答
0

加密在传输过程中保护您的文本,但它不能证明您是谁。添加完整性控制也可以证明您的身份。

一个场景:

我可以加密 ATM 和银行服务器之间的数据。没有人可以嗅探此流量并对其进行解密,因此您可以假设它是“安全的”。但是没有什么可以阻止中介重播这些交易。或者通过重放在不同 ATM 位置看到的流量,即使攻击者不知道交易实际包含什么。交易不作为一个实体链接到任何特定的 ATM。因此,如果我提取 100 美元,那么中间人可以从多个位置重播 10 次流量交换并导致我提取 1000 美元。

向交易所添加完整性控制可以将事务仅锁定到单个系统,并且还可以证明事务没有被修改。因此,例如,我可以让 ATM 对每笔交易的带有数字时间戳的副本进行签名。现在,当重放加密流量时,服务器可以判断这是一个错误的交易,因为时间戳将是旧的。或者,如果重播来自不同位置的类似 ATM 的交易,则服务器还可以确定它正在与实际预期的身份不同的身份交谈。因此,虽然加密保护了交易通道,但完整性确保了解密流量的两个端点实际上是在与他们期望的一方交谈。

于 2010-10-22T03:44:18.587 回答
0

大多数进行加密的系统还一路提供消息完整性,因此您的问题确实构成了错误的二分法。

于 2010-10-22T04:50:14.110 回答