[发明专利]一种GOOSE报文完整性认证方法有效
申请号: | 201510057981.8 | 申请日: | 2015-02-04 |
公开(公告)号: | CN104639330B | 公开(公告)日: | 2018-01-16 |
发明(设计)人: | 王智东;梁梅;黎永昌;刘飘 | 申请(专利权)人: | 华南理工大学 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L29/06;H04L1/00 |
代理公司: | 广州市华学知识产权代理有限公司44245 | 代理人: | 刘巧霞 |
地址: | 510640 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种GOOSE报文完整性认证方法,以更好地适应电力系统高实时性要求。为了适应GOOSE报文需要不间断发送的特性,该方法是提取GOOSE报文APDU中的UtcTime、stNum、sqNum这三个关键数据内容,并判断APDU其余数据是否与前一报文一致若一致,则根据前一GOOSE报文APDU的非关键信息的Hash结果,将上述关键信息附加在其末端后进行Hash运算得最终认证码;若不一致则首先对APDU非关键信息进行Hash运算得认证码C1,随后将APDU关键信息附加于C1末端并再次进行Hash运算得最终认证码。本发明的认证方法效率远高于HMAC直接应用于GOOSE报文的认证方法。 | ||
搜索关键词: | 一种 goose 报文 完整性 认证 方法 | ||
【主权项】:
一种GOOSE报文完整性认证方法,其特征在于,包括以下步骤:S1、GOOSE报文发送端认证过程:S11、提取GOOSE报文APDU中的UtcTime、stNum、sqNum关键信息,根据UtcTime、stNum、sqNum顺序依次连接,形成关键信息报文段P2;S12、删除GOOSE报文APDU中的UtcTime、stNum、sqNum关键信息以及CRC校验码域,形成非关键信息报文段P1;S13、判断非关键信息报文段P1是否与前一GOOSE报文非关键信息段一致,若一致则跳至步骤S15,否则执行步骤S14;S14、利用发送端和接收端预先约定好的任意长度的密钥及Hash算法,对步骤S12所述报文段P1进行Hash运算得Hash码C1,将步骤S11所述报文段P2附加到C1末端,并再次进行Hash运算,得到最终Hash认证码C2,然后执行步骤S16;S15、将步骤S11所述报文段P2附加到前一GOOSE报文APDU认证计算所得Hash码C1`末端,利用发送端和接收端预先约定好的任意长度的密钥及Hash算法,对其进行Hash运算得到最终Hash认证码C2,然后执行步骤S16;得到最终Hash认证码C2的计算过程是:C2=Hash(C1`,P2);其中,C1`是前一GOOSE报文非关键信息段对应的Hash运算结果;S16、将Hash认证码C2作循环冗余校验CRC32运算,得到32比特长度的循环冗余校验码,将其填充于GOOSE报文的CRC校验码域;S2、GOOSE报文接收端认证过程:S21、提取GOOSE报文APDU中的UtcTime、stNum、sqNum关键信息,根据UtcTime、stNum、sqNum顺序依次连接,形成关键信息报文段P4;S22、删除GOOSE报文APDU中的UtcTime、stNum、sqNum关键信息以及CRC校验码域,形成非关键信息报文段P3;S23、利用发送端和接收端预先约定好的任意长度的密钥及Hash算法,对步骤S22所述报文段P3进行Hash运算得Hash码C3,将步骤S21所述报文段P4附加到C3末端,并再次进行Hash运算,得到最终Hash认证码C4;S24、将步骤S23所得Hash认证码C4作循环冗余校验CRC32运算,得到32比特长度的循环冗余校验码,将其与接收到的GOOSE报文的CRC校验码域进行对比,若二者一致则认证成功,否则认证失败。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学,未经华南理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510057981.8/,转载请声明来源钻瓜专利网。