[发明专利]一种GOOSE报文认证方法及系统有效
申请号: | 201510047772.5 | 申请日: | 2015-01-29 |
公开(公告)号: | CN104639328B | 公开(公告)日: | 2018-04-13 |
发明(设计)人: | 梁梅;黎永昌;王智东 | 申请(专利权)人: | 华南理工大学 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L1/00 |
代理公司: | 广州市华学知识产权代理有限公司44245 | 代理人: | 罗观祥 |
地址: | 510640 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明的目的在于提供一种高效的GOOSE报文认证方法,以更好适应电力系统高实时性要求。为了适应GOOSE报文需要不间断发送的特性,提取GOOSE报文中应用协议数据单元APDU的顺序计数sqNum域作为关键信息报文段,并判断APDU其余数据是否与前一报文一致若一致,则根据前一GOOSE报文APDU的非关键信息的HMAC结果,将上述关键信息附加在其末端后进行HMAC运算得整体认证码;若不一致则首先对非关键信息进行HMAC运算得认证码,随后将关键信息附加于认证码末端并再次进行HMAC运算得整体认证码。本发明的认证方法效率远高于经典的对整个APDU内容直接进行HAMC认证的方法。 | ||
搜索关键词: | 一种 goose 报文 认证 方法 系统 | ||
【主权项】:
一种GOOSE报文认证方法,其特征在于,所述GOOSE报文认证方法将可变的数据放在待运算数据末端,包括下列步骤:创建GOOSE认证报文,判断当前GOOSE报文与前一GOOSE报文中应用协议数据单元APDU的非关键信息是否一致,其中,所述非关键报文信息指的是GOOSE报文中应用协议数据单元APDU除了顺序计数sqNum域以外的所有信息,若一致则直接引用前一GOOSE报文中应用协议数据单元APDU的非关键信息的对应认证码配合当前GOOSE报文中应用协议数据单元APDU的关键信息通过HMAC运算生成整体认证码,其中,所述关键信息指的是GOOSE报文中应用协议数据单元APDU的顺序计数sqNum域,若不一致则首先生成当前GOOSE报文中应用协议数据单元APDU的非关键信息对应认证码,随后利用该认证码配合当前GOOSE报文关键信息通过HMAC运算生成整体认证码;将所述整体认证码作循环冗余校验后生成校验码填充于当前GOOSE报文的帧校验码域后完成GOOSE认证报文创建;验证GOOSE认证报文,首先生成当前GOOSE报文中应用协议数据单元APDU的非关键信息对应认证码,然后利用该认证码配合当前GOOSE报文关键信息通过HMAC运算生成整体认证码,将整体认证码做循环冗余检验生成校验码后与当前GOOSE报文帧校验码域内容进行对比,若二者一致则认证通过,否则认证失败;所述创建GOOSE认证报文的步骤具体为:S11、提取当前GOOSE报文中应用协议数据单元APDU的关键信息,生成第一关键信息报文段P2;S12、删除所述当前GOOSE报文中的所述关键信息,生成第一非关键信息报文段P1;S13、判断所述第一非关键信息报文段P1是否与前一GOOSE报文中应用协议数据单元APDU的非关键信息一致,若一致则跳至S15,否则转入步骤S14;S14、利用事先选定的密钥及哈希函数,对所述第一非关键信息报文段P1进行HMAC运算得到第一认证码C1,将所述第一关键信息报文段P2附加到所述第一认证码C1末端形成第二认证码C2,利用所述密钥及哈希函数对所述第二认证码C2进行HMAC运算得到第一整体认证码C01,跳至步骤S16;S15、将所述第一关键信息报文段P2附加到前一GOOSE报文中应用协议数据单元APDU的非关键信息报文段进行HMAC运算所得第三认证码C3末端形成第四认证码C4,利用步骤S14中所述密钥及哈希函数对所述第四认证码C4进行HMAC运算得到第一整体认证码C01,跳至步骤S16;S16、将所述第一整体认证码C01作循环冗余校验,并将所得校验码K01填充于所述GOOSE报文的帧校验码域,完成GOOSE认证报文的创建;所述验证GOOSE认证报文的步骤具体为:S21、提取待验证的GOOSE认证报文中应用协议数据单元APDU的所述关键信息,生成第二关键信息报文段P4;S22、删除所述待验证的GOOSE认证报文中的所述关键信息,生成第二非关键信息报文段P3;S23、利用步骤S14中所述密钥及哈希函数,对所述第二非关键信息报文段P3进行HMAC运算得到第五认证码C5,将第二关键信息报文段P4附加到所述第五认证码C5末端形成第六认证码C6,利用步骤S14中所述密钥及哈希函数对所述第六认证码C6进行HMAC运算得到第二整体认证码C02;S24、将所述第二整体认证码C02做循环冗余校验得校验码K02,校验码K02与所述待验证的GOOSE认证报文的帧校验码域进行对比,若二者一致则验证成功,否则验证失败。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学,未经华南理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510047772.5/,转载请声明来源钻瓜专利网。
- 上一篇:一种汽车保险杠的制备方法
- 下一篇:一种防治心血管病的组合物