简历阅读 -密码的成本

关闭

你已经阅读了每月两篇免费文章中的一篇。了解更多。

关闭

密码的成本

计算机安全就是尽量避免浪费你的时间。

venona项目代表了冷战最成功的反情报攻击之一。它围绕着加密...由Yevgeniy Dodis

T何维罗纳项目代表了冷战最成功的反情报攻击之一。它围绕加密系统旋转,称为“一次性焊盘方案”,这是完全无法冻断的,但需要为每条消息生成新的随机加密密钥。这非常不方便,容易出错。并且错误正是发生了什么。苏联方面的某人(仍然没有知道谁)开始重复使用钥匙,允许在西方解密约3,000个顶级信息。

这个故事告诉我们,安全性不仅需要强大的代码,还需要易于使用和安全的实现。到目前为止,攻击很少会破坏加密算法(密码学家的工作做得很好!),但通常会发现实现中的一些意想不到的弱点,从而找到完全避免加密算法的方法。因此,现代计算机安全时代依赖于“密码开销”的减少——从系统中削减肥肉,消除意外攻击的途径——就像代码本身一样。这意味着要发明新的系统,同时也要改进现有的系统。

克劳德•香农(Claude Shannon)在1949年的一篇开创性论文中定义了完美加密的概念:当加密信息或密码完全独立于原始信息时,就实现了完美加密。他还定义了它的代价:加密密钥需要至少与消息一样长。实时加密流媒体电影需要一个电影长度的密钥。这表明,至少在间谍活动之外,密码学的未来是有限的。

幸运的是,密码学家最终认识到,可以大幅降低开销需求,以换取实际上只是在理论上降低安全性。这种减少可以通过两个合理的假设来实现:攻击者不能在给定的时间内执行任意数量的计算,而且攻击者实际上破坏加密的可能性很小,但并非为零。

实时加密流媒体电影需要一个电影长度的密钥。

尽管这些假设很微妙,但它们为密码学革命奠定了基础。通过短期可重复使用的键可以实现一时焊盘方案所需的关键材料的浪费数量几乎可以实现的资源加密。今天,一组加密方案于2001年标准化(围绕高级加密标准或AES构建)允许实时加密和流式传输电影,即使在相对较小的设备(例如平板电脑和智能手机),几乎没有计算成本。

然而,随着一种开销的减少,又出现了另一种开销。AES都是对称加密方案,这意味着编码消息的密钥与解码消息的密钥相同。难点在于,发送方和接收方需要提前就密钥达成一致,如果只有少数人参与,这是可行的。然而,现代的交流发生在大而分散的各方之间。如果每个发送方都需要与每个接收方安排一个唯一的密钥,那么就不可能有像现在互联网上交换的信息量那样多的信息了。

问题的解决方案在于,在1976年,首先在惠特菲尔德和马丁地狱曼的开创性工作中提出了所谓的公钥或不对称密钥加密。在不对称的方案中,艾丽斯首先向询问发送Bob加密消息他送她一个开放的挂锁。该挂锁可以截获,甚至是攻击者,夏娃的“复制”。然后,Alice将消息放入盒子中,将其与Bob的挂锁关闭,并将其送回他。夏娃可以观察锁定的盒子,但不能打开它,因为她没有鲍勃的关键。然后鲍勃使用他的私钥打开它,并读取消息。爱丽丝和鲍勃没有秘密交换钥匙,甚至知道他们提前与谁交流。此外,由于鲍勃的挂锁并不特定于爱丽丝,因此可以通过希望与鲍勃沟通的其他方面重复使用。该过程有效地需要两个键:解密钥匙只有鲍勃知道,但是加密键(由挂锁代表)是公共的。

这解决了许多分散派对之间分配钥匙的问题。但它介绍了另一个问题:对于短消息,公钥密码系统比对称方案慢一多倍。这是因为当Alice和Bob从夏娃上有一些共同的秘密时,私人沟通更容易,而不是eve知道爱丽丝所知道的一切,但只有鲍勃知道秘密。但在这里,研究人员也找到了一个答案。对于较长的消息,我们可以先使用公钥方法加密短新键,然后使用该键在更快的私钥方案下加密消息。类似地,对于许多连续的短消息,相同的加密密钥可以用于通信的整个持续时间,然后在通信结束时擦除。这被称为“暂时关键”方法。

因此,公钥系统解决了很多问题。尽管如此,它们的使用受到另一个关键分布问题的限制:确保使用正确的公钥。如果攻击者可以说服某人使用Rogue公钥,他可以获得有权访问特权信息。目前,公钥的身份验证由证书机构(CAS)执行,该机构验证了公钥所有者的身份并发出证书。这些当局需要确保他们不会向错误的用户发出证书,或损害自己签名键的保密。

尽管这些假设很微妙,但它们为密码学革命奠定了基础。

不幸的是,这并不总是发生。主要浏览器(Firefox,Chrome,Internet Explorer和Safari)包括“硬连线”Cas的“硬连线”列表,称为“根CA”。允许根CAS认证较小的CAS。根据电子前沿基金会的SSL天文台项目,2013年初,Mozilla,Microsoft和Google已认证了大约150个根CAS,这反过来被认证为约1,500个其他CAS作为平均用户应该的实体无条件信任。毋庸置疑,大多数这些实体对普通用户完全未知,并且所有这些实体都会避免安全妥协的可能性会出现惊心动魄。

事实上,在过去的几年里,围绕着各种CAs的一些引人注目的丑闻浮出水面。2011年,在一个名为DigiNotar的荷兰CA的密钥下,一个欺诈的谷歌证书被签名,该证书被(仍然未知的实体)用于对伊朗谷歌用户的严重“中间人”攻击。与此同时,土耳其认证机构TURKTRUST在2011年8月发现自己“意外认证”了两个中级认证机构。其中一个被用来签署伪造的谷歌证书。

原则上,带有适当ca的公钥系统提供了极强的保护。但架构大约这种保护本身是脆弱的。爱德华·斯诺登(Edward Snowden)泄露的信息充分说明了这一点。他们向我们展示了,最成功的针对密码学的大规模攻击,包括大量据称由美国国家安全局针对美国公民的大规模监控项目,都是访问特权信息在明文形式:或者在加密之前,或者在解密之后,或者只是以未加密的形式存在于被认为是安全的地方。其他攻击利用了不完全随机密钥生成。

与这些软件攻击并行的一种物理攻击是所谓的“侧通道”攻击,在这种攻击中,入侵者可以访问围绕给定密码系统正常运行的一些(看起来是良性的)物理信息,如时间信息、功耗、声音数据或缓存丢失。值得注意的是,通过仔细地将这些信息与所使用的加密算法的规格进行比较,攻击者通常可以完全恢复密钥。这些攻击是由Paul Kocher在1996年发起的。他利用了一个事实,即流行的公钥密码系统RSA的运行时间与其密钥的内容高度相关(具体来说,就是位分解中的1的数量)。通过操纵RSA算法的公共输入,他使用相同密钥的重复执行来执行统计相关分析,并完全恢复密钥。

密码学研究界认识到,安全不仅仅依赖于代码强度,因此正在扩大现代系统,以防范非密码学攻击。新的“防泄漏”密码系统能够抵抗大类别的侧信道攻击。密码学家们也开发了有意义的计算工具加密数据,完全不需要任何解密步骤(直到最后一步,最终结果被解密)。在计划称为“完全同态加密,”有可能用户发送一个加密的查询谷歌和接收一个加密的回答,谷歌没有想法的实际搜索进行了(这些算法太慢是可行的,但正在工作)。研究人员也在研究如何保护、控制和计算存储在云中的数据,并开始了全新的计划,比如匿名凭证和隐私保护数据挖掘。

这些挑战代表了密码学研究任务的显著扩大和扩展——通常的目标是扩展远远超过传统加密和身份验证的能力,并减少实现过程中涉及的开销。自从VENONA项目和单次使用密钥以来,我们已经走过了很长的一段路,并继续吸取教训,安全性不仅应该是强大的,而且应该是无缝的。


yevgeniy dodis是纽约大学计算机科学教授,共同撰写了100多个科学出版物,是国家科学基金会职业奖,IBM,谷歌和VMware的教师奖,以及最好的纸张奖2005年公钥加密会议。

5条评论 - 加入讨论