法律状态公告日
法律状态信息
法律状态
2018-02-16
授权
授权
2016-02-03
实质审查的生效 IPC(主分类):H04L9/06 申请日:20150930
实质审查的生效
2016-01-06
公开
公开
技术领域
本发明属于智能变电站通信安全技术领域,涉及基于改进型GCM的智能变 电站报文安全传输实现方法。
背景技术
目前,随着网络信息技术的快速发展,智能变电站对网络通信安全传输要 求越来越高。由于现有的智能变电站安全传输方式存在一定的局限性,实现高 速率、高可靠性、低消耗的安全传输方式受到了广泛关注。
基于以太网的变电站综合解决方案,在实现变电站信息共享的同时,也带 来了诸多安全隐患。智能变电站中的所有智能电子设备(IED)采用对等方式相 连,通信信息均在网络上实现共享,一旦某个IED受到恶意攻击,在变电站信 息未进行有效安全保护时,可能会对整个智能变电站自动化系统的安全运行带 来严重的后果,因此,如何有效保障智能变电站系统信息安全传输是一项亟待 解决的任务。IEC61850、IEC62351和IEEE802.1AE标准,分别设置了不同格 式的报文并提出了不同的安全方案,若采用一种报文对应一种认证和加密算法 的方式又会增加网络负担、影响互操作性。同时针对目前已有研究方案中的诸 多局限,有些方案只有简单加密,有些方案是只有单一认证,有些方案是加密 与认证的简单结合,并不能保证高效的安全性,而且对于分组对称加密普遍存 在的密钥管理与分配问题没有很好的给予解决,针对以上局限,本发明设计了 一种改进型的GCM(伽罗华/计数器)模式,此系统是一种高效、安全、无专 利限制的认证加密算法,针对不同报文的传输要求提供了3种传输方式,此算 法可以对智能变电站通信网络传输的报文进行加解密处理以及完整性校验处 理。本发明采用GCM一种算法来实现变电站不同报文的安全传输,只需运算一 次报文就可实现其中一种模式,既能满足报文的实时性要求,又可方便管理、 提高互操作性,实现智能变电站报文的安全传输。
GCM加密算法定义如下:
H=E(K,0128)
Yi=incr(Yi-1)fori=l,……n
Ci=Pi+E(K,Yi)fori=l,……n-l
Cn*=Pn*+MSBu(E(K,Yn))
T=MSBt(GHASH(H,A,C)+E(K,Y0))
GCM解密算法定义如下:
H=E(K,0128)
T′=MSBt(GHASH(H,A,C)+E(K,Y0))
Yi=incr(Yi-1)fori=l,……n
Pi=Ci+E(K,Yi)fori=l,……n-l
Pn*=Cn*+MSBu(E(K,Yn))
GHASH()函数定义为GHASH(H,A,C)=Xm+n+1,Xi,i=0,1,...,m+n+1 表达式如下所示:
其中K为加密密钥,IV为初始化向量,P为明文,A为附加认证数据,C 为密文,T为认证标签。将P和A按128位分组,分别记为:P1,P2,...,Pn-1, Pn*和A1,A2,...,Am-1,Am*,其中Pn*和Am*的长度分别为u和v位(1≤u,v≤128), 其它分组长度皆为128位。||表示数据串的连接,len()是指用一个64位的数据串 来表示其长度,E(K,Y)表示用密钥K对数据Y进行AES加密,函数incr(Y)表 示对数据Y的低32位进行计数器递加1运算。
经过对现有技术文献的检索发现,也有一些针对GCM加密认证技术的研 究,例如中国发明专利申请号为201010168517.3,公开号为CN101827107A, 名称为“一种基于IEEE802.1AE协议的GCM高速加解密器”的专利,给出了一种 基于IEEE802.1AE协议的GCM加密认证系统,通过对GHASH函数的数据处 理结合全流水线式AES模块以及相应外围信息处理模块构成一个具备可以同时 处理多组数据功能的硬件系统。
上述技术虽然采用了硬件方式实现GCM加密认证,但由于实现方法没有考 虑分组密码的密钥管理问题同时此设计采用全流水线占用资源较大,同时此专 利是IEEE802.1AE协议下的研究方案,不具有一定的通用性,随着信息技术的 提高,并不能很好的提供高速、低能耗和安全性的硬件资源保护。
发明内容
本发明要解决的技术问题是分析报文格式,设计GCM硬件架构框图,提出 解决密钥管理并提高安全性和吞吐率的解决方案,实现智能变电站的高效率通 信。本发明的是提供一种基于改进型GCM的智能变电站报文安全传输实现方 法。
本发明的技术方案是:
一种基于改进型GCM的智能变电站报文安全传输实现方法,包括报文收发 模块、串并转换模块、incr计数器模块、基于混沌的CTR-AES加密模块、位并 行GHASH认证模块和XOR异或模块;报文收发模块包括报文接收模块和报文 发送模块,其与S/P串并转换模块相连,用于实现报文接收与数据处理,提取出 GCM加密认证需要的数据输入并通过串并转换模块实现并行运算;串并转换模 块分别与基于混沌的CTR-AES加密模块中的密钥发生器、incr计数器模块、位 并行GHASH认证模块和XOR异或模块相连,分别为串并转换模块提供密钥K、 初始化向量IV和附加认证数据Ai;incr计数器模块与基于混沌的CTR-AES加 密模块中的AES模块连接,为其提供输入明文Yi,基于混沌的CTR-AES加密 模块的输出结果E(K,Yi)与串并转换模块输出的Pi进行异或并把输出数据Ci传给P/S串并转换模块,位并行GHASH认证模块输出结果与基于混沌的 CTR-AES加密模块的输出结果E(K,Y0)异或并把输出的认证标签T传给P/S 串并转换模块,最后经过报文收发模块,完成报文的加密与认证并将认证标签 插入到报文中,对报文进行封装后并根据IEC61850标准完成带认证标签的报文 传输;
所述的基于混沌的CTR-AES加密模块采用流水线结构,包括1个顶层模块、 1个混沌密钥发生器模块、4个子模块和1个状态机控制模块;所述的CTR-AES 对称计数器加密模块采用10级轮流水线形式,在10个时钟周期后产生密文, 并且在以后的每一时钟周期都会产生密文,其中混沌结构采用M序列扰动的 logistic序列;
所述的位并行GHASH认证模块变换形式如下:
对应X1...Xm+n+1,GHASH系统可以表示为GHASH(X,H)
其中
上述Hq参数采用2的倍数次;
步骤如下:
步骤一:报文接收模块接收发布者预发送的报文,对报文进行判断,IEC 62351标准规定保留字段的部分定义,利用第一个保留字段定义扩展字段的 Length,若Length等于0则说明此报文为不需要安全保护的报文,即符合IEC 61850标准的普通报文;反之若Length不等于0,则说明此报文为需要安全保护 的报文,即表示为需要安全措施保护的报文;若为普通报文,则选择直接明文 传送;再通过区分帧格式及优先级,当为需要安全措施保护的GOOSE/SAV报 文时,选择GCM中的GMAC模式,即启动GHASH开始信号GHASH_sig_start; 当为需要安全措施保护的MMS报文时,则选择GCM加密认证模式,即启动 AES开始信号AES_sig_start;
步骤二:接收报文进行判断后,对报文提取出GCM系统模块需要的输入, 包括明文P、附加认证数据A和初始化向量IV,并把明文P和附加认证数据A 存储到深度为128位的fifo存储器中,通过串并转换模块进行串并转换,最后 一组若不满128位则用Mask掩码在后面用0补齐,以每128位为一组进行运算;
步骤三:当步骤一中判断的是需要安全保护的报文,初始化向量IV补0为 128位数据和128位0作为输入,启动混沌密钥发生器模块,迭代100次数后与 CTR-AES对称计数器加密模块中的轮密钥加模块进行异或,经过10级流水线, 产生加密结果,然后每个时钟周期产生加密结果;启动位并行GHASH认证模 块,以AES输出加密结果与明文P异或结果的密文C和附加认证数据A作为输 入,进行位并行GHASH认证模块运算,最后输出认证标识T,经过并串转换存 储到深度为128位的fifo存储器中后输出;
步骤四:经过步骤三处理后的报文经过报文发送模块进行封装后传送给订 阅者,订阅者接收到数据后先进行GHASH认证操作,计算出认证标签T′后与 接收到的T进行对比,若相同则进行密文解密,若不同则输出Fail并丢弃接收 报文同时向发布者发送再次发送的请求;解密的输入为密钥K、初始化向量IV、 密文C、附加认证码A、认证标签T,认证解密操作有1个输出,即明文值P或 者认证无效Fail。
本发明的效果和益处是:
与现有技术相比,本发明系统考虑多种报文协议的通信要求,设计满足通 用性的报文格式,同时对采用的通信安全模式进行优化,提出采用混沌密钥发 生器的来同步给AES加密系统提供密钥,设计位并行GHASH认证系统,结合 流水线式AES加密系统结构,可以实现高速率、低复杂度、低消耗的硬件实现 系统。
附图说明
图1是基于GCM的智能变电站报文安全传输示意图。
图2是GCM加密认证的整体结构框图。
图3是基于混沌的CTR-AES结构示意图。
图4是基于位并行q=8结构的GHASH硬件结构示意图。
具体实施方式
以下结合附图和技术方案,进一步说明本发明的具体实施方式。
如图1所示,本例包括:6字节的目的地址、6字节的源地址、4字节的优 先级标记(TPID标签协议标识,TCI标签控制信息)、2字节的以太网类型、8字 节的以太网方式PDU(APPID应用标识,长度,保留字段1,保留字段2)、46-1476 字节的数据单元(APDU应用协议数据单元,填充)、20字节的扩展字段。
报文的前16个字节作为GCM系统的输入,称为附加认证数据A,共128 个字节,报文中的序列号作为初始化向量IV,报文的数据单元作为输入的明文 数据。具体实施方式包括以下步骤:
步骤1:当发送端组织好报文,并将其组装成APDU,经应用层和表示层 ASN.1编码处理后交给数据链路层;
步骤2:通过赋值保留字段中的数据来选择GCM系统模块,并把报文序列 号SN赋值给IV向量;
步骤3:经过报文安全类型和模式选择,把扩展字段长度Length以及模式 的选择结果附加到保留字段1中,分别占有一个字节,并规定模式选择字段为0 表示只认证的GMAC模式,模式选择字段不为0时表示GCM模式,当Length 为0时,选择明文传输,当Length不为0时,则判断模式选择字段的大小,当 判断此报文为扩展报文且需要认证加密处理,加密前先对报文进行扩展,添加 报文头部字段、优先权字段以及扩展字段,计算并赋值给A;
步骤4:调用AES-GCM函数对报文进行加密。加密时首先通过初始化向 量参数H和P,然后进行报文预处理,对每段明文进行加密后输出密文段Ci, 再经过串并转换模块输出密文C,调用GHASH(H,A,C)函数计算验证码, 并取最高位中的16位作为认证标签T,最后返回密文C和认证码T,并将其添 加到相应字段。
解密时为图中虚线所示,步骤类似,接收到报文后先进行认证,得到认证 标签与接收报文附带的认证标签进行对比判断,若相等则进行解密运算,若不 等则丢弃。
如图2所示,本发明方法针对系统为基于GCM加密认证系统的优化及其实 现方法主要包括一下几个模块:报文收发模块、串并转换模块、incr计数器模块、 基于混沌的CTR-AES加密模块、位并行GHASH认证模块和XOR异或模块,。
报文收发模块包括报文接收模块、报文发送模块,主要实现状态机控制、 数据的提取和报文解包与报文封装等功能,用于报文收发与数据处理。
具体实施方式描述为:以太网传输的报文输入到报文接收模块完成报文采 集、报文解包、数据的提取、报文判断及模式选择功能,报文格式中的保留字 段1中存储报文扩展字段长度以及模式的选择结果,对报文进行判断后,然后 经由串并转换模块输出GCM加密认证模块需要的数据输入,包括明文P、附加 认证数据A和初始化向量IV,并把明文P和附加认证数据A存储到深度为128 位的fifo存储器中,进行一个串并转换的过程,最后一组若不满128位则用Mask 掩码在后面用0补齐,以每128位为一组进行运算。当判断的是需要安全保护 的报文时,初始化向量IV补0为128位数据和128位0作为输入,启动混沌密 钥发生器模块,迭代100次数后与CTR-AES对称计数器加密模块中的轮密钥加 模块进行异或,经过10级流水线,产生加密结果,然后每个时钟周期产生加密 结果;启动GHASH认证模块,以AES输出加密结果与明文P异或结果的密文 C和附加认证数据A作为输入,进行位并行GHASH认证模块的运算,最后输 出认证标识T,经过并串转换存储到深度为128位的fifo存储器中并进行报文封 装后输出到以太网中传送给订阅者,订阅者接收到数据后先进行GHASH认证 操作,计算出认证标签T′后与接收到的T进行对比,若相同则进行密文解密, 若不同则输出Fail并丢弃接收报文同时向发布者发送再次发送的请求。解密的 输入为密钥K、初始化向量IV、密文C、附加认证码A、认证标签T,认证解密 操作有1个输出,即明文值P或者认证无效Fail,整体系统的的运行过程由状态 机控制完成。
图3为基于混沌的CTR-AES结构示意图,具体实施方式包括以下步骤:
基于混沌的CTR-AES加密系统一共包括1个顶层模块、1个混沌密钥发生器模 块、4个子模块、一个状态机控制模块。4个子模块具体分别为:add_round_key 轮密钥加模块,sub_bytes字节变换模块,shift_rows行移位模块,mix_columns 列混合模块,字节变换采用映射到GF((24)2)域的运算,系统采用10级流水线模 式,在速度和资源方面达到了平衡,同时也很好的解决了密钥的管理问题,扩 大了密钥空间,提高了智能变电站通信传输的安全性。
图4为基于位并行结构的GHASH硬件结构示意图,高性能并行体系 GHASH结构能够提高GCM吞吐量和延迟,根据低消耗的散列子序列提出了高 性能系统架构,利用H2j的形式获取的散列子序列应用GF(2128)乘法体系的数量 最少。
对于并行GHASH系统,密文C、附加认证数据A、操作数H作为输入, 即可以把C与A作为统一输入X,A1、A2、...Am、C1、C2、...Cn、len(A)||len(C) 分别对应X1...Xm+n+1,GHASH系统可以表示为GHASH(X,H)
其中
在本实施例中q=8,m+n+1=16时,
把A,C分成的每128位为一组的数据和len(A)||len(C)数据依次组成X1, X2,...X16,不足16组的部分在前面用0补齐,X1与X9为一组,X2与X10为一组, X3与X11为一组,X4与X12为一组,X5与X13为一组,X6与X14为一组,X7与X15为一组,X8与X16为一组,位并行的输入GHASH认证模块系统中,运算出结果。
此架构具有较高的吞吐率,并且可以达到高效的并行实现目的。
机译: 基于智能变电站保护控制系统的智能变电站保护控制系统及软件定义的实现方法
机译: 基于无线宽带接入网的使用连接标识符的报文头配置方法及其报文传输方法
机译: 在光传输网络中实现AES-GCM密码学的硬件方法和体系结构