葛红舞 陈民
(南瑞集团有限公司(国网电力科学研究院有限公司),南京 210000)
电力专用纵向加密认证装置部署在电网业务的安全区I/II中,为级联电力控制系统建立安全网络通信通道和认证服务,实现电力交互数据的保密性、可靠性。随着国内智能变电站的规模化建设,网络承载带宽要求越来越高,主流纵向加密认证装置数据处理吞吐量明文状态下不高于1000 Mbit/s亦不能满足某些应用场景要求,因此需要万兆级别加密认证装置更新替代[1-2]。本文提出一种新型万兆纵向加密分流认证装置设计方案,将可信度量功能应用于装置上电启动安全认证[3],重点阐述如何将分流技术应用于多通道并行加密认证模式,并通过XILINX VIVADO工具构建万兆和千兆以太网数据处理逻辑功能模块,建立测试环境可行性与稳定性验证方案。
传统电力纵向加密认证装置主要提供身份认证与业务数据加解密服务,依据数据有效传输带宽大小可划分为万兆型、千兆型、百兆型、十兆型,其核心架构基本是“CPU+加密卡/加密芯片”,加密性能很大程度由CPU决定,高性能应用场景成本预算较高[4]。针对电力市场已有试点应用的万兆加密装置,其硬件架构基本是CPCI-E框架,即两个主控板以及至少6路PCIE卡槽,以供加密卡使用,其工作原理为:基于网络协议栈规范和业务要求,主控板CPU负责网络报文初步解析,借助CPCI-E总线标准实现数据分发与调配,实现万兆级速率数据加解密功能。综上所述,此类万兆加密认证装置产品硬件开发难度不大,CPU选型主频率不得低于2 GHz,采用多核处理器;软件方面主要的难点在于,如何将负载均衡技术融入网络协议栈底层应用开发。因此,此类加密装置性能指标主要取决于CPU,成本无法受控,场景应用局限,市场推广前景不明朗[5]。
旨在突破当前电力专用纵向加密认证装置加解密速率局限性,借助FPGA天然可控编程式并行计算特点,在万兆以太网带宽内构建数据解析分发缓冲带,创建多通道数据加解密链路,实现万兆速率级别对称加密与密钥协商功能,是新型万兆加密分流认证装置方案设计思路[6-9]。
图1所示为新型万兆加密分流认证装置架构,从逻辑功能角度分析,主要包括万兆以太网数据分析单元、密钥配置与协商单元、业务加密模块。本方案在硬件电路方面的设计主要涉及两部分:一是密钥配置与协商单元主要基于南瑞纵向加密认证装置(千兆型)设计,主要负责密钥协商、配置、存储,硬件电路无需大改,重点调整内部软件架构,而业务加密模块采用通用加密芯片SSX30-D,并行接口形态具备千兆对称加解密速率;二是万兆以太网数据分析单元以赛灵思公司的XC7V2000T作为核心主控,该模块内部逻辑程序设计包括10G MAC IP核、1G MAC IP核、异步FIFO IP核、万兆数据处理逻辑单元和千兆数据逻辑处理单元。
图1 新型万兆分流加密认证装置架构示意图
单个万兆以太网数据分析单元具有1个万兆网口和1个千兆网口,对外通过万兆以太网进行网络通信,内部通过并口与业务加解密模块开展对称加密操作,同时依靠标准千兆网口连接密钥与配置协商单元,实现密钥交互、存储、更新功能。
参考图2,依据逻辑功能分析,万兆以太网数据分析单元包括万兆以太网数据逻辑处理单元、异步FIFO缓存、数据加解密逻辑处理单元,其工作流程为:从左往右看,万兆以太网数据逻辑处理单元将万兆网络报文数据进行解析、分发操作,然后传输至FIFO缓存区,而数据加解密逻辑处理单元时刻监控FIFO缓存状态,判断不同业务类型FIFO数据,要么定向传向数据加密模块,或者通过千兆网络传输至密钥与配置协商单元,开展关于密钥交互的操作;从右往左看,根据业务功能要求,数据加解密逻辑处理单元中数据对称加解密与分发处理逻辑接收来自业务加密模块的数据,借助多通道的FIFO进入发送处理逻辑,经过分析进入万兆以太网,而密钥管控处理逻辑同样通过千兆以太网网络通道从密钥配置与协商单元分配加密密钥,为数据对称加解密操作提供基础密钥与认证的功能。
图2 万兆以太网数据分析单元逻辑功能框图
万兆以太网数据分析单元的核心功能点在于报文数据解析与转发机制,其逻辑模块是万兆以太网数据逻辑处理单元,其流程如图3所示。根据FPGA 10G IP核输出以太网数据帧,提取数据包进行解析,一方面具备报文过滤功能,通过规范配置MAC地址、IP地址、协议端口号方式对网络报文初次筛选,建立白名单路由表,提高有效数据流传输;另一方面,开展协议转发与分析功能,判断以太网数据帧类型,标识ARP报文请求与应答,对于IP报文,根据电力业务专用加密配置策略,通过解析协议字段以及自定义数据业务字段,定位是何种加解密业务类型,做出拦截或者指定转发操作。
图3 数据报文处理流程图
为了保证具备10路对称加密通道,本文选择含有1200个管脚的XC7V2000T,集成1 G和10 G MAC IP核实现以太网功能。大容量的Block RAM缓存区与高性能的DSP计算资源,使得XC7V2000T能够胜任多通道数据并发处理要求,有效简化了硬件电路设计。相较于CPCI-E框架万兆加密装置,XC7V2000T的生产成本略有下降,自主可控操作性更强,然而其软件开发周期与深度要求更高。
对于FPGA芯片应用,“FPGA+QSPI Flash+电源系统”即可组成最小系统,烧写bin文件通常存储于QSPI Flash芯片中,烧写固件大小根据逻辑应用情况而定,对于本文所提万兆加密分流认证装置可信启动功能应用,烧写文件经压缩处理只需3 MB左右。以苏州国芯公司的CCM3302S作为可信启动芯片,该芯片符合国内可信密码模块标准,支持标准QSPI接口,因此适宜本文所提可信启动应用需求。
该装置主控芯片XC7V2000T是FPGA架构,待度量系统固件文件存放于QSPI FLASH芯片中,可信装置设计应具备两路电源系统,一路负责可信安全芯片CCM3302S供电,时序上需要先于FPGA供电,即可信电源;另一路为主控FPGA芯片提供电源,即系统电源。由于主控FPGA与可信安全芯片共同访问QSPI FLASH,存在总线复用问题,本可信装置通过线路驱动器方式实现可信启动度量要求(见图4),具体工作流程如下。
图4 可信启动流程图
(1)装置上电,可信电源为安全芯片CCM3302S供电,保证可信度量工作正常启动。
(2)可信安全芯片开展状态扫描与自我校验工作,启动代码进入可信验证模式。
(3)根据用户预设可信策略验证QSPI FLASH烧写固件,待度量正确使能主控FPGA芯片供电系统,正常加载bin文件。
如果装置可信认证过程中出现非正常中断,则进入异常处理,可选择通过可信安全芯片更新QSPI FLASH存储系统固件或者重新烧写系统bin固件。本装置采用静态可信根方法,实现系统的可信启动。正如文献[10]、[11]所述,此方法对系统固件进行可信度量,及时更新与校验PCR值,适合于较小系统固件应用,迭代可信链方式简单、低成本、可靠。
利用思博伦网络测试仪(型号:SPT-N4U)模拟产生以1024字节、512字节、256字节、128字节、64字节为单位的数据包,对新型万兆加密分流认证装置数据报文解析与分发进行性能测试,同时记录在明文与密文传输情况下是否存在误码、丢包现象。
不断优化XC7V2000T可编程逻辑代码,通过一系列稳定性测试得出,万兆以太网数据分析单元能够对报文进行过滤与定向转发,当前测试过滤主要是指对MAC地址、ARP包、报文类型等开展操作,定向转发主要实现有效数据往指定通道传输。从表1可知,在UDP传输条件下,业务加密模块数量与整机加解密速度成正比例关系,当业务加密模块数量大于8时,吞吐量提高不明显;另外,明文传输性能明显优于密文传输。参考当前电力行业应用需求,此次测试性能满足招标要求。
表1 万兆报文明文与密文传输速率表
本阶段测试采用透传分发模式,业务层面应用还未过多涉及,测试结果辅助验证了此方案的可行性。下一步工作是结合电力规范要求,重点关注密钥协商以及业务流程管控实现,同时优化时序以调整XC7V2000T内部FPGA逻辑架构,进而为万兆加密分流认证装置落地应用提供可靠测试依据。
本方案在电力纵向加密认证业务场景电力加解密速率方面优势明显,颠覆了现有“CPU+加密卡”架构模式,实现了功能与成本的自主可控。与当前电力市场万兆加密认证装置相比较,本方案充分运用FPGA可编程与并行机制,资源调度更加合理,实现数据多通道分流加解密操作与传输,天然简化的外围电路有效控制了硬件生产成本,落地可行性更强。此外,可信安全启动也为新型万兆加密分流认证装置增添了砝码,进一步提高装置可靠性。目前,可信万兆加密分流认证装置基本实现可行性验证,加解密高性能符合智能变电站场景应用,待业务软件开发与测试完毕,势必会迅速占领高端应用市场。