DOITAPP
DOIT数据智能产业媒体与服务平台
立即打开
DOITAPP
DOIT数据智能产业媒体与服务平台
立即打开

Intel高级加密标准AES-NI

导言

随着电脑设备日益渗透到我们工作和生活,加密变得比以往任何时候都要重要。台式机、笔记本电脑、智能电话,蓝光播放器以及很多设备都有对敏感信息加密的需要。如果没有加密,我们通过网络发送的任何信息都是公开的,任何人都能够读取这些信息。当然,访问权限控制能够提供一些保护,但是如果真的是认真对待安全问题的话,加密必须成为多层安全策略的一部分。你可能会认为你没有什么敏感信息需要保护,事实上,那些你认为没有价值的信息可能会被其他人利用。因此,加密必须部署为默认状态,而不是可选功能。

加密的重要性

想想在日常生活中需要使用(或者应该使用)加密的情况:

当你打开笔记本电脑,并自动连接到无线接入点的时候,你可能使用WPA进行加密并使用AES作为加密算法

当你连接到安全网站分享信息或者购买产品时,加密会话的SSL连接就能确保你的个人信息不会被其他人读取

当你的笔记本使用BitLocker加密磁盘上的信息时,如果笔记本被盗,所有信息都不会被盗贼利用

当你建立Ipsec VPN连接或者基于Ipsec的DirectAccess连接到企业网络时,Ipsec连接使用的是AES加密来确保安全性的

还有很多这样的例子,很明显加密是我们计算生活中不可缺的部分,特别是AES加密。

作为一名网络管理员,你知道加密作为后端基础设施的重要性。现在的攻击者不再会利用漏洞攻击你的整个网络,为什么呢?这是因为网络范围的攻击并不能让他们赚钱。随着网络攻击的刑事处罚变得越来越严厉,大部分攻击者都不只是为了“个人乐趣”而发动攻击了,现在的攻击者只想要赚钱。而攻击者赚钱的一种方法就是破坏关键服务器,并偷偷窃取有价值的信息,例如个人信息或者企业商业机密等。攻击者通常不能从崩溃的服务器中找到有价值信息,并且如果在窃取到有效信息前被发现或者被阻止的话,他们也无法得逞。因此,我们需要在后端使用加密技术来作为最后一道保护防线,防止攻击者获取访问关键信息的权限。

加密也是日常IT法规遵守的重要组成部分,例如,以下法案都将加密作为其标准:

HIPAA 法案(健康保险流通与责任法案)

SOX萨班斯法案

PCI DSS支付卡行业数据安全标准

AES:新标准

AES是目前美国政府对加密的标准,AES取代了之前的标准DES,DES使用的是标准56位密钥。AES可以使用可变必要长度,包括AES-128、AES-192 和AES-256。根据密钥的长度,可以有多达14次转变来生成最终的密文。

AES也有多种运行模式,包括:

电子码表(ECB)

密码块链接(CBC)

(CTR)

密码反馈(CFB)

输出反馈(OFB)

密码块链接是最常使用的模式,因为这种模式提供了可接受水平的安全,并且不易受到漏洞攻击。

挑战:安全与性能

高级加密方法(例如AES加上CBC)的最大的问题在于,他们是处理器密集型。这尤其对于服务器来说,但对于繁忙的客户端系统也可能成为问题,因为客户端系统安装的强大处理器相对较少。这意味着,你需要在最佳安全性与最佳性能间作出选择。这种情况在服务器端尤其麻烦,因为服务器端的工作区,如 SSL或者Ipsec卸载卡(加密卸载卡)是为了缓解处理器的工作,确保处理器正常运行,而不是单单处理会话加密和批量加密。

附加卡的问题在于他们依赖于应用程序,根据使用目的的不同,附加卡可能会或者可能不会正常工作。我们真正需要的是在所有AES加密方案都适用的通用型解决方案,这样我们就不需要专门从主处理器卸载加密工作。我们需要的是内置在操作系统和主板的“即插即用”型的解决方案。英特尔AES-NI

现在有个好消息就是新的英特尔AES-NI指令集(目前可以在英特尔Xeon5600系列处理器中找到)符合这些标准。AES-NI在硬件(处理器芯片上)执行某些AES步骤。然而,你应该知道处理器上的AES-NI并不包括整个AES应用,只是包括某些用于优化加密性能的组件。AES-NI通过添加六个新的AES指令来实现:四个用于加密和解密,一个用于“混合”栏,另一个用于生成“下一轮”文本(转换的次数是由你选择的密钥位长度来决定的)。

AES-NI的好处在于,它是基于硬件的,所以不需要在内存中建立查找表,并且加密模块实在处理器执行。这降低了“边信道攻击”的成功率。另外,英特尔AES-NI使系统能够执行更长的密钥长度,并且最终的结果就是数据将更加安全。

目前,AES-NI主要侧重于以下三个主要用途:

保护互联网与企业内部网间的通信

全磁盘加密(例如微软提供的BitLocker)

应用程序级的加密(安全通信的一部分)

保护互联网与企业内部网间的通信可能还包括使用SSL连接到互联网或者内部网的安全网站。另外,Ipsec通道和传输模式在保护通过内部网(以及在DirectAccess的情况下,通过互联网)的安全会话方面变得越来越受欢迎。需要记住的是,SSL适用于保护layer 7的通信,而Ipsec适用于保护网络级(layer 3)的通信。

我们最近总是听到关于云计算是计算世界下一个大事件的消息,并且云服务供应商能够从AES-NI中大大受益,因为云服务中大部分通信都是通过加密通道的。对于Ipsec而言,如果只有一部分Ipsec与服务器连接,SSL卸载可能不够用。但是如果你的服务器很繁忙,单独靠AES-NI或者结合 SSL卸载将会是更好的解决方案。

然后是“安全通信”的通信部分。除了应用或者网络加密外,还有应用层加密能够受益于AES-NI,例如:

数据库可以被加密

电子邮件可以被加密

权限管理服务使用加密

文件系统本身可以被加密(相比于磁盘级加密)

应用程序(如微软SQL)可以使用透明数据加密TDE来自动加密数据库的条目

AES-NI可以大大加快通信时间让客户和员工更加高效率。

全磁盘加密会对除了MBR外的整个磁盘进行加密。除了微软的BitLocker外,还有其他磁盘加密应用程序可以受益于性能改进,例如 PGPdisk等。全磁盘加密的问题是,它会对性能造成影响,这可能会导致用户不使用这种加密。而使用性能改进,性能影响的问题就不会发生,用户也更加可能进行全磁盘加密,从而确保安全。

性能改进

那么英特尔性能改进究竟能够带来哪些性能改进呢?现在还很难说清楚这个问题,因为这项技术还很新,但是英特尔公司根据自己的测试发现以下几方面的改进:

随着网络银行工作负载开始使用微软IIS/PHP,他们发现当比较两个Nehalem系统时,其中一个有加密,另一个没有加密,系统所能够支持的用户数量会增加23%。当启动加密的Nehalem系统与非Nehalem系统比较时,在支持用户数量方面有4.5倍的改进,这些都是很惊人的!

在使用Oracle 11g对数据库进行加密/解密测试时,他们发现当比较两个Nehalem系统时,其中一个启用了加密,另一个则禁用了加密,启用了加密的系统在解密510 万行加密表时节省了89%的时间。在加密OLTP类型的表和多次插入和截短百万行加密表时,同样节省了87%的时间。

全磁盘加密对于初次磁盘加密而言是非常耗费时间的,英特尔公司发现,当使用McAfee端点加密第一次加密英特尔32GB SDD驱动时,节省了42%的时间。如果你曾经进行过全磁盘加密,你就会知道这是多么大的差异,毕竟一般来说,全磁盘加密是非常耗时和冗长的。

总结

加密几乎是每个人日常计算生活非常重要的一部分,而AES是一种高级加密新标准。虽然加密能够帮助我们保护数据的安全,但是加密也带来巨大的性能损耗,有时候加密对处理器的占用甚至可能让处理器无法完成其他要处理的正常工作。在过去,你可以通过升级到更强大的处理器来解决这个问题,或者添加更多的处理器或者使用加密卸载解决方案来解决这个问题。

然而,所有这些解决方法都有内置限制。新的他们发现当比较两个Nehalem系统时,新的AES-NI加密标准通过在芯片上放置6个新的AES 相关指令能够显著提高处理器性能以及安全性。这能在很多情况下提高性能和安全性,例如在确保网络和应用程序层会话的安全,确保通信安全,以及对整个处理利用有很少影响或者没有影响的全磁盘加密。英特尔AES-NI高级加密标准应该成为任何客户端或者服务器部署规划的一部分,因为加密将用于广泛的应用,例如当DirectAccess被用于连接到企业网络时。Nehalem架构和英特尔AES-NI加密标准的结合能够为计算带来改革,并且在提高生产效率方面能够显著提高用户和管理员的满意度。

未经允许不得转载:DOIT » Intel高级加密标准AES-NI