我是安全方面的新手。我读了很多书(最近读了这本书),现在问问题只是为了确定我是否理解了所有内容。
这是我的问题(或假设),其中哪些是正确的?
- 机密性:为确保机密性,我们可以使用加密
- 完整性:为了确保完整性,我们可以使用加密或数据签名
- 身份验证:为了确保身份验证,我们可以使用数据签名
- 可用性:无论我们使用什么都可以确保 - 我们可以使用加密、数据签名,或者我们不能使用它们 - 我们始终拥有可用性
我是安全方面的新手。我读了很多书(最近读了这本书),现在问问题只是为了确定我是否理解了所有内容。
这是我的问题(或假设),其中哪些是正确的?
您的问题很难回答,因为安全性是系统的属性,而不是单一技术或算法的属性。
它可以使用加密来保证的,但是这还不够。您需要查看整个系统才能给出有意义的答案。
这是一个使用加密但不保证机密性的系统:WEP 无线加密系统。这是有缺陷的,因为重复使用 IV 太快(我认为),这意味着您可以在听了一段时间的加密流量后解密 WEP 通信。
此外,有时消息的内容根本没有消息的存在那么重要。因此,仅仅知道 A 向 B 发送了一条消息就足以破坏机密性。如果您拨打预防自杀热线并且我知道了这次谈话,我可以相当确定您在说什么,而无需知道谈话的确切内容。
使用加密实现完整性时,您会遇到相关问题。假设您使用的是分组密码,它以 8 字节块的形式加密数据。假设您正在尝试保护字符串“I give Reinards $1000000”的完整性。您对其进行加密,产生“a7nBg2iUlRaM1iiRT64O21pm”。是什么阻止我获取密文的最后 8 个字节并用其他内容替换它们?只要它解密正确,你怎么知道它不是原版?如果我设法用解密为“$9999999”或“我的孩子”的内容替换最后 8 个字节怎么办?好吧,也许我们把孩子卖给奴隶的时代已经结束了,但你给我的比你想象的要多得多。因此,您不需要为消息完整性加密,您需要消息身份验证,
可用性意味着数据在您需要时就在那里。在数据位于地球另一端的数据中心的环境中,您不仅仅“拥有”可用性。大量系统必须完美地互操作,才能让您在需要时查看该数据。其中一个系统可能是 Nagios,它会提醒人们服务中断。另一个可能是一组高可用性解决方案,当第一个数据中心当前遭受停电或飓风破坏时,它们会切换到另一个数据中心。这与加密或数字签名完全无关。
目前对服务可用性最严重的威胁可能是分布式拒绝服务攻击,这种攻击很难应对。再多的加密或数字签名都无济于事。
不会。机密性、可用性和完整性是信息系统安全的支柱。您可以使用数据签名和/或加密来实现您的目标,但不能将安全性降低至此。
机密性:只有被允许的人才能阅读信息。发送加密数据可能是一种方式,但使用物理保险箱打印文档也很重要。在 IT 环境中,它涉及对用户进行身份验证并仅提供授予的信息。
诚信:只有被允许的人才能改变信息,而且只能以一定的方式。这里再次涉及身份验证,但档案也可以作为一种从可能改变操作系统破坏信息的事件中恢复的方法。
可用性:在 IT 环境中,它涉及冗余电源、RAID 磁盘和冗余网络链路。对于主要平台,可以将数据复制到不同的数据中心,以确保即使无法访问,您也可以从在线备份中心访问数据。
TL/DR:数据签名和加密仅占重要安全支柱可用性、完整性和机密性的一小部分。