数据中心设备设计人员将结合采用基于FPGA的内核来提供安全的高性能以太网链路。
云存储和IT 服务外包对IT 经理而言极富吸引力,因为这不仅能降低成本,而且还可减轻支持工作。然而有一个大的顾虑就是,这样做会使敏感数据流出公司防火墙外,造成安全隐患。这种顾虑是完全可以理解的,因为信息对于许多公司而言是最宝贵的资产,无论是会计、客户还是制造相关的数据。
而现在,设备制造商能够通过使用赛灵思基于FPGA 的解决方案来提高性能和安全水平。满足以太网新标准MACsec 要求的Algotronix 综合安全子系统采用基于赛灵思FPGA 的高性能、低时延、高能效IP 核。
基于FPGA 的解决方案比基于软件的解决方案速度要快得多。此外,专用硬件可接管系统处理器,使其处理其它任务,如深度数据包检查等。或者,设计人员也可采用成本更低的处理器。
保护信息的一个显著策略就是当数据在网络中传输和在数据中心周围移动时对其进行加密。一旦数据被非授权方渗透网络链路而拦截,数据加密能够确保其无法被读取。原则上,数据还应经过认证,从而确保其完整性。消息认证旨在检测原始加密数据是否已被篡改,包括因传输错误而造成变更,抑或是被攻击者为从中牟利而恶意破坏。
目前以太网传输已成为主流通信方式,这是一种既高效又具有可扩展性的高速传输方法。随着以太网标准的普及,以太网传输成本不断降低,这一优势使其更加引人注目,进而确保以太网继续成为首选的L2 技术。不过,就在几年以前,以太网标准还没有任何加密规范要求,只能采用运行在通信协议栈上层的IPsec 等技术来完成加密工作。
现在,根据IEEE 802.1AE 标准,最新以太网标准扩展版本新增了大量安全措施。该技术在几年前正式确定,其采用集成式安全系统来加密并认证消息,同时检测并应对一系列网络攻击。该标准被称为“媒体接入控制安全(Media Access Control Security)”标准,常常简称为“MACsec”。Algotronix 从几年前就开始努力推出能够根据多种不同数据速率要求提供硬件加速加密功能的IP 核。
(Algotronix 还可提供面向IPsec的IP 核,该产品与MACsec 产品的接口类似,对需要支持双重标准的系统而言是不错的选择。)
简要介绍MACsec 系统,帮助了解规范的全面性,同时深入说明实现该规范的复杂程度。
信任实体
MACsec 指的是由网络上的节点组成的一系列信任实体。每个节点都能接收加密消息和明文消息,而系统策略则用于明确如何处理每条消息。内核包括明文消息的旁通选项,无需认证或验证。与IPsec 等作为端到端技术运行在L3/L4 的协议不同,只要数据包进入或离开以太网LAN,MACsec就能对每个数据包进行解密和验证。
MACsec 适用于星型或总线型LAN 等以太网拓扑结构,也可支持点对点系统。
M A C s e c 标准采用安全实体(SecY)方法,也就是每个节点或实体都具备与其以太网源地址相链接的唯一密钥。为支持多个虚拟SecY,我们设计出了该IP 核的1G 版本。因此,单个以太网MAC 能针对多用户LAN 等应用配备多个与之关联的MACsec SecY。MACsec 通常与IEEE 801.1X-2010 或互联网密钥交换(IKE)配合使用,可实现网络周围的安全密钥分配。
数据中心之所以会选择L2 连接功能在数据中心内移动数据包,是为了提高速度,并最大程度地降低时延和减少数据包中的开销数据。相比之下,如果用诸如IPsec 等安全的L3 技术进行通信,消息必须传到协议上层进行处理,而这会增加时延。
此外,L2 解决方案也能避免创建L3 安全策略这一复杂工作。
数据中心能够采用MACsec 提供防火墙后台的保护,或将其用在数据中心之间的直接链路上。系统管理员可授权设备以安全方式进行通信。设备能够检测错误或误用情况,如拒绝服务攻击(DOS)。
符合可编程要求
市场因需求不同,日趋细分化。可定制FPGA 解决方案理想适合于MACsec。起初,MACsec 的设计是作为一项技术应用于城域网,而现在在数据中心中也找到了其用武之地,这就提高了对基于FPGA 的解决方案的整体需求。
Algotronix 开发MACsec 内核是一个自然演进,因为我们已经打造了一系列称为“AES-GCM”的加密引擎。这些内核的运行速率分别为1G、10G 和40G。我们通过流水线、提高时钟速率并从赛灵思ArTIx®器件逐步发展到Kintex® 器件乃至Virtex® FPGA,来实现上述速率的。我们将利用这些技术来推动VirtexUltraScale ™器件上的吞吐量,使其达到100G。
我们使用FPGA 中的IP 核能够实现多种不同性能,可支持从1GbE到10 GbE 的不同速率(即,内核在最坏情况下的实际吞吐量)。此外我们还计划推出40G 和100G 的版本。这比基于软件的系统要快得多。内核通常直连接到硬件MAC(如图1 所示),因为FPGA 芯片上的嵌入式存储器的软件会尽可能足够快地传输数据,以满足其吞吐量要求。如果在硬件上实现安全功能,同时从未向软件提供未加密密钥,那么系统就不那么容易受到特洛伊木马(Trojan horse)和病毒等常见软件攻击。
图1 – 整个MACsec IP核位于FPGA内,可实现最大安全性。
另一个重要考虑事项就是FPGA进行算法加速的系统要大幅降低功耗。加速的算法包括加密函数等,免得再用软件去实现加速。FPGA 比软件解决方案的能效明显要高得多。
所有Algotronix 加密内核都内置了一项重要属性,那就是能够在Block RAM 或FPGA 架构的查找表(LUT)中实现称为“S-Boxes”的关键模块。有了该属性,客户可通过综合平衡两种资源类型便能利用现有资源实现设计。比方说,如果MACsec 内核外的设计未占用大量的BRAM,那么就可用Block RAM 来实现S-Boxes,否则就用LUT 来实现。
这样就算IT专业人士必须考虑系统的整个软件层面的情况时,也能更方便地分析系统漏洞。
MACSEC细节MACsec 系统的设计理念是:每个数据源使用不同的加密密钥。接收到消息后,接收器会在片上CAM 的列表中进行查找,明确用以解密数据包的正确密钥。每个数据包都有编号,确保能检测并拒绝接收重复或重新发送的数据包,这种方法可防范“中间人”攻击。
MACsec 还会收集有关被拒收的数据包数量的统计数据以及拒绝的原因。提供统计数据以支持攻击检测是超出基本加密隐私、认证和防止重发功能之外的更高一层的安全性,能让系统管理器主动应对正在进行的攻击。
我们采取的方法是对业经验证的AES-GCM 内核周围的MACsec 逻辑进行“打包”。就此而言,设计高效快速的加密内核只是设计挑战的一部分。MACsec 标准涉及面广,包括许多变量。
举例来说,该标准最初只指定128 位的加密密钥。采用128 位密钥, 数据进行10 次转换( 被称为“轮”)后在内核中完成加密过程。该标准经修订后可提供256 位加密密钥,整个数字加密过程历经14 轮。这是通过添加流水线级数并提高密钥存储所需的内存带宽才实现的。
MACsec 与以太网流量类型无关,也对更高层协议透明。推出这些内核后,就能方便地将MACsec 添加到系统中,从而进一步提高网络防护。配备MACsec 的站点仍能与未采用MACsec 额外安全保障机制的其它站点进行通信。
从媒体接入控制器(MAC)将以太网数据包提供给MACsec 内核。您可结合使用1G MACsec 内核、片上收发器和三模以太网MAC(TEMAC)构建高效的小型解决方案。每个数据包都包含发起传输的源码的目的地和地址。该标准保存在MACsec 系统中,但一个重要的因素是,在多次反射传输中,“源码”将是传递数据包的最终设备的地址。因此,与可被视为端到端方案的IPsec 不同,MACsec是以逐跳方式工作的。对于每次跳跃,MACsec 都要求输入端的所有加密数据进行解密,然后使用分配给传输设备的唯一密钥再重新加密。解密的明文可在每一级提供数据包检查功能,如图2 所示,也能供流量管理器用以管理数据流。
图2 – 消息在入端口被解密,并在出端口被加密。
在MACsec 标准中,图3 给出的报头包含附加字段“MAC 安全标签(SecTAG)”,其可定义EtherType,并标明数据包是否加密。数据附加在ICV 字段的消息末尾,则表示已经认证。
图3 – MACsec帧结构包括MAC安全标签(SecTAG)字段,其可定义EtherType,并标明数据包是否加密。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)