电力控制指令执行检验方法及系统

文档序号:27259532发布日期:2021-11-05 21:19阅读:287来源:国知局
电力控制指令执行检验方法及系统

1.本发明涉及电力系统信息物理安全技术,特别是一种电力控制指令执行检验方法及系统。


背景技术:

2.随着电力企业数字化转型以及5g、云计算等技术在电力系统的大规模应用,电力企业内外网边界日益模糊,传统基于边界物理隔离的措施将不再成为保证电力企业信息安全的绝对壁垒。电力设备不应自动信任内部或外部的对象,应在授权前对任何试图控制电力设备的对象进行身份验证。因此,以身份为中心的零信任网络成为了电力系统安全认证机制发展的必然趋势。然而,目前电力控制指令传输采用ecb分组加密的方式进行指令加密,虽然具有快速、简单等优点,但是也存在着私密性差、易篡改、易出错、无法抵御重放攻击等不足。与此同时,主站与变电站通信规约多采用iec104进行报文传输,纵向加密装置一定程度的保证了主站到变电站量测调度数据通道的安全,然而iec104协议并不具备身份认证及安全保护机制。一旦恶意攻击者在控制指令传输的过程中对其进行篡改或者伪造调度指令发送给变电站,变电站在绝对信任的情况下执行篡改后或者伪造的控制指令,进而操控断路器等电力一次设备,改变电力系统实际运行拓扑结构,极有可能造成电力系统大规模级联故障的发生,严重影响电力系统安全稳定运行。
3.然而,目前并没有针对电力控制指令的通信安全问题提出有效的解决方法。考虑到电力控制指令的重要性以及在传输过程中潜在的安全风险,亟需一种电力控制指令执行检验方法及系统,降低变电站执行主站控制指令的安全风险。


技术实现要素:

4.本发明所要解决的技术问题是,针对现有技术不足,提供一种电力控制指令执行检验方法及系统,提高控制指令在传输过程中的安全性。
5.为解决上述技术问题,本发明所采用的技术方案是:一种电力控制指令执行检验方法,包括以下步骤:
6.s1,改进现有iec104通信协议,增加安全域报文字段,安全域包括发送时间戳、数字签名、主站随机数、变电站随机数、调度证书;
7.s2,根据s1中增加安全域后的主站连接报文和增加安全域后的变电站连接应答报文变电站与主站之间进行第一次身份验证;
8.s3,根据s2变电站与主站第一次身份验证情况,s1中增加安全域后的主站二次连接报文以及增加安全域后的变电站二次连接报文变电站与主站之间进行第二次身份验证;
9.s4,根据s3中变电站与主站的第二次身份验证情况以及s1中的增加安全域后的主站控制指令报文变电站进行主站控制指令检验;若满足指令校验,则执行该主站控制
指令,并返回变电站控制确认报文
10.本发明改进现有iec

104规约,增加安全域字段,解决了现有的iec104通信协议无法进行有效安全认证的不足;采用counter模式对电力控制指令报文进行分组加密,解决了目前主站与变电站之间控制指令所采用的ecb分组加密模式存在的通信安全隐患;构建主站与变电站之间的基于零信任网络的三阶段控制指令执行握手方法,持续对远方控制身份权限进行确认,杜绝非法用户的接入,保证通信双方身份的真实性及业务数据的可追溯性。
11.增加安全域后的主站连接报文的表达式如下:其中,m
zl,i
为原主站连接报文,t
zl,i
为主站连接报文的发送时间戳,sign
zl,i
为主站连接报文的主站数字签名,r
zl,i
为主站连接报文的主站随机数,i为主站与变电站电力控制指令编号,zl表示主站连接,
·
||
·
为字符连接。
12.本发明改进主站连接报文m
zl,i
,增加t
zl,i
、sign
zl,i
以及r
zl,i
,增加安全域后的主站连接报文解决了现有的主站连接报文m
zl,i
无法进行有效安全认证的不足。
13.增加安全域后的变电站连接应答报文的表达式如下:m
bl,i
为原变电站连接应答报文,t
bl,i
为变电站连接应答报文的发送时间戳,sign
bl,i
为变电站连接应答报文的变电站数字签名,r
bl,i
为变电站连接应答报文m
bl,i
的随机数,r
zl,i
为变电站接收主站连接报文的随机数,r
zl,i
为主站连接报文的主站随机数,bl为变电站连接。
14.本发明改进变电站连接应答报文m
bl,i
,增加t
bl,i
、sign
bl,i
、r
bl,i
以及r
zl,i
,增加安全域后的变电站连接应答报文解决了现有的变电站连接应答报文m
bl,i
无法进行有效安全认证的不足。
15.增加安全域后的主站二次连接报文的表达式如下:其中,m
zl2,i
为原主站二次连接报文,t
zl2,i
为主站二次连接报文的发送时间戳,sign
zl2,i
为主站二次连接报文的主站数字签名,ds
zk,i
为主站调度证书。
16.本发明改进主站二次连接报文m
zl2,i
,增加t
zl2,i
、sign
zl2,i
以及ds
zk,i
,增加安全域后的主站二次连接报文解决了主站二次连接报文m
zl2,i
无法进行有效安全认证的不足。
17.增加安全域后的变电站二次连接报文的表达式如下:其中,m
bl2,i
为原变电站二次连接应答报文,t
bl2,i
为变电站二次连接应答报文的发送时间戳,sign
bl2,i
为变电站二次连接应答报文的变电站数字签名。
18.本发明改进变电站二次连接报文m
bl2,i
,增加t
bl2,i
和sign
bl2,i
,增加安全域后的变电站二次连接报文解决了变电站二次连接报文m
bl2,i
无法进行有效安全认证的不足。
19.增加安全域后的主站控制指令报文的表达式如下:m
zk,i
为原主站控制指令报文,t
zk,i
为主站控制指令报文的发送时间戳,sign
zk,i
为主站控制指令报文的主站数字签名,r
zk,i
为主站控制指令报文的随机数,ds
zk,i
为主站调度证书。
20.本发明改进变电站主站控制指令报文m
zk,i
,增加t
zk,i
、sign
zk,i
、r
zk,i
和ds
zk,i
,增加安全域后的主站控制指令报文解决了变电站主站控制指令报文m
zk,i
无法进行有效安全认证的不足。
21.增加安全域后的变电站控制确认报文的表达式如下:m
bz,i
为原变电站控制确认报文,t
bz,i
为变电站控制确认报文的发送时间戳,sign
bz,i
为变电站控制确认报文的变电站数字签名。
22.本发明改进变电站控制确认报文m
bz,i
,增加t
bz,i
以及sign
bz,i
,增加安全域后的变电站控制确认报文解决了变电站控制确认报文m
bz,i
无法进行有效安全认证的不足。
23.这个分步骤s2的实现过程包括:
24.步骤s21,主站根据主站连接报文长度,计算主站连接报文需要加密的段数n
zl,i
,具体计算公式如下:
[0025][0026]
其中,bc
z
为主站连接报文长度,smc为第一套加密算法可加密内容长度,为向上取整;
[0027]
步骤s22,主站根据所述主站连接报文需要加密的段数n
zl,i
以及主站报文计数器记录数据c
z
,利用公式计算分段计数器数值以及利用公式更新主站报文计数器记录数据c
z
为c
z

;h(n
zl,i
)=n
zl,i
{h|h≤n
zl,i
,h∈n
+
},n
+
为正整数;
[0028]
步骤s23,主站根据分段计数器数值对增加安全域后的主站连接报文进行分段异或计算,得到用于加密的报文中第n
zl,i
段加密报文具体计算公式如下:
[0029][0030]
其中,为增加安全域后的主站连接报文的第n
zl,i
段报文,为字符异或运算。
[0031]
步骤s24,主站根据用于加密的报文使用第一套加密算法对其进行加密,得到加密后的主站连接报文具体计算公式如下:
[0032][0033]
其中,f(
·
)为第一套加密算法的加密转换函数;
[0034]
步骤s25,变电站根据加密后的主站连接报文的字节大小,判断加密后的主站连接报文的分段数目n
zl,i
,并计算分段计数器数值更新主站报文计数器记录数据c
z
;步骤s26,变电站根据分段数目n
zl,i
,使用第一套加密算法对加密后的主站连接报文进行解密,得到解密后的分段报文具体公式如下:
[0035][0036]
其中,为加密后的主站连接报文中的第n
zl,i
段报文内容,f
j
为第一套加密算法的解密转换函数;
[0037]
步骤s27,变电站根据解密后的主站连接报文中的第n
zl,i
段报文内容以及分段加密器计数数值得到主站连接报文,具体计算公式如下:
[0038][0039]
其中,其中,c1为解密后的主站连接报文中的第1段报文内容对应的分段加密器计数数值。
[0040]
步骤s28,变电站根据加密后的主站连接报文判断报文的有效性,即当d
tzl,i
&d
rzl,i
&d
szl,i
=1时,变电站完成对主站身份验证,主站身份验证成功;否则,不满足有效性校验时,变电站拒绝执行该报文,主站身份验证失败;当|t
zl,i

t

zl,i
|<t
d
,d
tzl,i
=1;当时,d
rzl,i
=1;当sign
zl,i
∈ω
sign,z
时,d
szl,i
=1;t
zl,i
为解密后的主站连接报文中的发送时间戳,t

zl,i
为变电站接收到主站连接报文的时间;为变电站数据库中所存储的主站随机数的集合;r
zl,i
为解密后的主站连接报文中的主站连接报文的随机数;ω
sign,z
为变电站数据库中所存储的主站数字签名的集合;sign
zl,i
为解密后的主站连接报文中的主站数字签名;t
d
为系统预设的第1类时间间隔;
[0041]
步骤s29,当变电站完成对主站的身份验证,变电站根据原变电站连接应答报文m
bl,i
,变电站连接应答报文的发送时间戳t
bl,i
,变电站数字签名sign
bl,i
,随机数r
bl,i
,以及主站连接报文的随机数r
zl,i
,生成增加安全域后的变电站连接应答报文并对进行加密,将加密后的连接应答报文发送给主站。
[0042]
采用counter模式对主站连接报文、变电站连接应答报文进行分组加密,提高了主站连接报文、变电站连接应答报文私密性;根据主站连接报文、变电站连接应答报文,构建主站与变电站之间的基于零信任网络的第一阶段控制指令执行握手方法,杜绝了未授权用户的非法接入,提高了电力控制指令的安全性。
[0043]
步骤s3的实现过程包括:
[0044]
步骤s31,主站根据加密后的变电站连接应答报文解密得到变电站连接报应答文并进行有效性校验,即当d
tbl,i
&d
tbl,2,i
&d
sbl,i
&d
rzl,2,i
&d
rbl,i
=1时,变电站连接报应答文有效;主站根据变电站连接应答报文发送时间戳t
bl,i
以及主站接受变电站连接应答报文的时间t

bl,i
,当|t
bl,i

t

bl,i
|<t
d
,d
tbl,i
=1,反之,d
tbl,i
=0;主站根据主站接受变
电站连接应答报文的时间t

bl,i
以及主站连接报文的时间戳t
zl,i
,当|t

bl,i

t
zl,i
|<t
d,2
,d
tbl,2,i
=1;主站根据变电站连接应答报文中的变电站数字签名sign
bl,i
,当sign
bl,i
∈ω
sign,b
时,d
sbl,i
=1,其中,ω
sign,b
为主站数据库中所存储的变电站数字签名的集合;主站根据变电站连接应答报文中的主站随机数以及主站连接报文中的主站随机数r
zl,i
,如果二者相同,则d
rzl,2,i
=1;当时,d
rbl,i
=1,其中,为主站接受变电站随机数的集合;t
d,2
为系统预设的第2类时间间隔;
[0045]
步骤s32,当主站判断变电站连接报应答文有效后,主站根据由变电站连接应答报文发送的随机数r
bl,i
和随机数r
zl,i
生成的主站数字签名sign
zl2,i
,原主站二次连接报文m
zl2,i
,主站二次连接报文发送时间戳t
zl2,i
以及调度证书ds
zk,i
,形成二次连接报文,并对二次连接报文进行加密,将加密后的主站二次连接报文发送给变电站;
[0046]
步骤s33,变电站根据加密后的主站二次连接报文解密得到主站二次连接报文并判断报文的有效性,当不满足有效性校验时,变电站拒绝执行该报文,主站身份验证失败;判断报文的有效性的具体实现过程包括:当d
tzl2,i
&d
tzl2,2,i
&d
dzc,i
&d
szl2,i
=1,主站二次连接报文有效,主站二次身份验证成功;否则,主站二次连接报文无效,主站二次身份验证失败;当|t
zl2,i

t

zl2,i
|<t
d
,d
tzl2,i
=1;当|t
zl,i

t

zl2,i
|<t
d,3
,d
tzl2,2,i
=1;当d
dzc,i
=1;当f
sm3
(r
zl,i
,r
bl,i
)&sign
zl2,i
=1,d
szl2,i
=1;t
zl2,i
为变电站根据主站二次连接报文发送时间戳;t

zl2,i
为变电站接受主站二次连接报文的时间;t
zl,i
为变电站根据主站连接报文的时间戳;ds
zk,i
为变电站根据主站二次连接报文中的调度证书,为变电站数据库中所存储的调度证书的集合;r
zl,i
为变电站根据主站连接报文随机数;r
bl,i
为变电站连接应答报文随机数;sign
zl2,i
为主站数字签名;
[0047]
采用counter模式对主站二次连接报文、变电站连二次接应答报文进行分组加密,提高了主站二次连接报文、变电站二次连接应答报文私密性;根据主站二次连接报文、变电站二次连接应答报文,构建主站与变电站之间的基于零信任网络的第二阶段控制指令执行握手方法,杜绝了授权用户的非法接入,提高了电力控制指令的安全性。
[0048]
步骤s4的实现过程包括:
[0049]
步骤841,主站根据加密后的变电站二次连接应答报文解密得到明文并进行有效性校验,即当d
tbl2,i
&d
sbl2,i
=1时,变电站二次连接应答报文有效,连接成功;当d
sbl2,i
=1;sign
bl2,i
为主站根据变电站二次连接应答报文中的变电站数字签名;
[0050]
步骤s42,根据原主站控制指令报文m
zk,i
,主站控制指令报文发送时间戳t
zk,i
、主站数字签名sign
zk,i
、主站随机数r
zk,i
和调度证书ds
zk,i
,生成增加安全域后的主站控制指令报文并对进行加密,将加密后的控制指令报文发送给主站,其中,主站控制指令报文的主站数字签名sign
zk,i
具体计算公式如下:
[0051]
sign
zk,i
=sign
zl2,i

[0052]
步骤s43,变电站根据加密后的主站控制指令报文解密得到主站控制指令报文明文并进行有效性校验,即当d
tzk,i
&d
tzk,2,i
&d
dzk,i
&d
szk,i
&d
rzk,i
=1时,满足有效性检
验,变电站执行该报文,主站实现远程操控;变电站根据主站控制指令报文的发送时间戳t
zk,i
以及变电站接受主站控制指令报文的时间t

zk,i
,当|t
zk,i

t

zk,i
|<t
d
,d
tzk,i
=1;变电站根据变电站接受主站控制指令报文的时间戳t

zk,i
以及变电站接受到主站二次连接报文的时间戳t

zl2,i
,当|t

zl2,i

t

zk,i
|<t
d,2
,d
tzk,2,i
=1;:变电站根据主站控制指令报文中的调度证书ds
zk,i
,当d
dzk,i
=1;变电站根据主站控制指令报文中的主站数字签名sign
zk,i
,当f
sm3
(r
zl,i
,r
bl,i
)&sign
zk,i
=1,d
szk,i
=1;变电站根据主站控制指令报文中的随机数r
zk,i
,当则d
rzk,i
=1;f
sm3
为第二套加密算法的加密转换函数;为变电站接受报文中随机数的集合;
[0053]
步骤s43,当变电站完成现地操控,变电站根据原变电站控制确认报文m
bz,i
,变电站控制确认报文发送时间戳t
bz,i
以及变电站数字签名sign
bz,i
,生成变电站控制确认报文并对进行加密,将加密后的控制指令报文发送给主站;其中,变电站控制确认报文的变电站数字签名sign
bz,i
的具体计算公式如下:
[0054]
sign
bz,i
=sign
bl2,i

[0055]
采用counter模式对主站控制指令报文、变电站连控制确认报文进行分组加密,提高了主站控制指令报文、变电站连控制确认报文私密性;根据主站控制指令报文、变电站连控制确认报文,构建主站与变电站之间的基于零信任网络的第三阶段控制指令执行握手方法,保证业务数据的可追溯性,提高了电力控制指令的安全性。
[0056]
本发明还提供了一种电力控制指令执行检验系统,包括计算机设备;所述计算机设备被配置或编程为用于执行上述方法的步骤。
[0057]
与现有技术相比,本发明所具有的有益效果为:本发明采用counter对电力控制指令报文进行分组加密,解决了目前主站与变电站之间控制指令所采用的ecb分组加密模式存在的通信安全隐患;改进iec

104规约,解决了现有的iec104通信协议缺乏有效安全认证的不足;构建主站与变电站之间的基于零信任网络的三阶段控制指令执行握手方法,持续对远方控制身份权限进行确认,杜绝未授权用户的非法接入,保证通信双方身份的真实性及业务数据的可追溯性。本发明解决了目前主站到变电站之间通信存在的安全缺陷,降低了变电站执行主站控制指令的安全风险,提升了电力系统抵御网络攻击的能力,确保了电力系统安全稳定运行。
附图说明
[0058]
图1是本发明实施例方法流程图。
[0059]
图2是本发明实施例counter分组加密示意图。
[0060]
图3是本发明实施例counter分组解密示意图。
[0061]
图4是本方明实施例系统模块示意图。
[0062]
图5是本发明实施例通信连接模块一的示意图。
具体实施方式
[0063]
图1为本发明实施例提供的一种电力控制指令执行检验方法的流程图,具体的实施步骤如下:
[0064]
步骤s1:改进现有iec104通信协议,增加安全域报文字段,安全域包括发送时间戳、数字签名、主站随机数、变电站随机数、调度证书;
[0065]
步骤s2:根据s1中增加安全域后的主站连接报文和增加安全域后的变电站连接应答报文变电站与主站之间进行第一次身份验证。
[0066]
步骤s3:根据s2变电站与主站第一次身份验证情况,s1中增加安全域后的主站二次连接报文以及增加安全域后的变电站二次连接报文变电站与主站之间进行第二次身份验证。
[0067]
步骤s4:根据s3中变电站与主站的第二次身份验证情况以及s1中的增加安全域后的主站控制指令报文变电站进行主站控制指令检验。如果满足指令校验,则执行该控制指令并返回变电站控制确认报文
[0068]
本发明中电力信息设备为例进行说明,具体的建模过程以及各个模型中参数的含义见下面的实施例,在此处暂不做具体说明。
[0069]
以下为本发明更具体的实施方式:
[0070]
进一步作为优选的实施方式,所述步骤s1,其包括:
[0071]
步骤s11:根据原主站连接报文m
zl,i
,主站连接报文的发送时间戳t
zl,i
,主站连接报文的主站数字签名sign
zl,i
以及主站连接报文的随机数r
zl,i
,增加安全域后的主站连接报文的具体计算公式如下:
[0072][0073]
其中,m
zl,i
为原主站连接报文,i为主站与变电站电力控制指令编号,zl表示主站连接,
·
||
·
为字符连接。
[0074]
在一个实施例中,主站发送连接指令的发送时间戳t
zl,i
为20210311120027,主站连接报文的主站数字签名sign
zl,i
为cxsg,主站连接报文的随机数r
zl,i
为97,增加安全域后的主站连接报文为{m
zl,i
||20210311120027||cxsg||97}。
[0075]
步骤s12:根据原变电站连接应答报文m
bl,i
,变电站连接应答报文的发送时间戳t
bl,i
,变电站连接应答报文的变电站数字签名sign
bl,i
,变电站连接应答报文的随机数r
bl,i
以及变电站接受主站连接报文的随机数r
zl,i
,增加安全域后的变电站连接应答报文的具体计算公式如下:
[0076][0077]
其中,bl为变电站连接。
[0078]
在一个实施例中,变电站连接应答报文的发送时间戳t
bl,i
为202103112103,变电站连接应答报文的变电站数字签名sign
bl,i
为bd1246,变电站连接应答报文的随机数r
bl,i
为67,主站连接报文的随机数r
zl,i
为97,增加安全域后的变电站连接应答报文为{m
bl,i
||202103112103||bd1246||97||67}。
[0079]
步骤s13:根据原主站二次连接报文m
zl2,i
,主站二次连接报文的发送时间戳t
zl2,i
,主站二次连接报文的主站数字签名sign
zl2,i
,主站调度证书ds
zk,i
,增加安全域后的主站二
次连接报文的具体计算公式如下:
[0080][0081]
步骤s14:根据原变电站二次连接应答报文m
bl2,i
,变电站二次连接应答报文的发送时间戳t
bl2,i
,变电站二次连接应答报文的变电站数字签名sign
bl2,i
,增加安全域后的变电站二次连接报文的具体计算公式如下:
[0082][0083]
步骤s15:根据原主站控制指令报文m
zk,i
,主站控制指令报文的发送时间戳t
zk,i
,主站控制指令报文的主站数字签名sign
zk,i
,主站控制指令报文的随机数r
zk,i
以及主站调度证书ds
zk,i
,增加安全域后的主站控制指令报文的具体计算公式如下:
[0084][0085]
步骤s16:根据原变电站控制确认报文m
bz,i
,变电站控制确认报文的发送时间戳t
bz,i
以及变电站遥控确认报文的变电站数字签名sign
bz,i
,增加安全域后的变电站控制确认报文的具体计算公式如下:
[0086][0087]
进一步作为优选的实施方式,所述步骤s2,其包括:
[0088]
步骤s21:主站根据主站连接报文长度,计算主站连接报文需要加密的段数n
zl,i
,具体计算公式如下:
[0089][0090]
其中,bc
z
为主站连接报文长度,smc为第一套加密算法可加密内容长度,为向上取整。本发明中,第一套加密算法为sm2加密算法。
[0091]
在一个实施例中,主站连接报文长度bc
z
为244字节,国密sm2加密算法可加密内容长度smc为64字节,则主站连接报文需要加密的段数n
zl,i
为4。
[0092]
步骤s22:主站根据s21中的主站连接报文需要加密的段数n
zl,i
以及主站报文计数器记录数据c
z
,计算分段计数器数值以及更新主站报文计数器记录数据c
z

[0093]
进一步作为优选的实施方式,所述步骤s22,其包括
[0094]
步骤s220:主站根据s21中的主站连接报文需要加密的段数n
zl,i
,计算加密分段参数h,具体计算公式如下:
[0095]
h(n
zl,i
)=n
zl,i
{h|h≤n
zl,i
,h∈n
+
}
ꢀꢀꢀ
(8)
[0096]
其中,n
+
为正整数。
[0097]
步骤s221:主站根据s21中的加密分段参数h和主站报文计数器记录数据c
z
,计算分段计数数值具体计算公式如下:
[0098][0099]
在一个实施例中,报文需要加密的段数n
zl,i
为4,主站报文计数器记录数据c
z
为104,则c1为104,c2为105,c3为106,c4为107。
[0100]
步骤s222:主站根据s221中的分段计数器数值更新主站报文计数器记录数据c
z
为c

z
,具体计算公式如下:
[0101][0102]
在一个实施例中,主站连接报文需要加密的段数n
zl,i
为4,c4为107,则主站报文计数器记录数据c
z
为107。
[0103]
步骤s23:主站根据步骤s22中的对s11中主站连接报文进行分段异或计算,得到用于sm2加密的报文,具体计算公式如下:
[0104][0105]
其中,为s11中主站连接报文第n
zl,i
段部分内容,为主站连接报文中的第n
zl,i
段进行异或的计数数值,为字符异或计算。
[0106]
步骤s24:主站根据s23中与计数数值分段异或后主站连接报文的使用国密sm2算法对其进行加密,得到加密后的主站连接报文具体计算公式如下:
[0107][0108]
其中,f(
·
)为国密sm2的加密转换函数。
[0109]
步骤s25:变电站根据s2中的加密后的主站连接报文的字节大小,判断其分段数目n
zl,i
,并计算分段计数器数值以及更新主站报文计数器记录数据c
z
,具体计算公式详见步骤s21和步骤s22。
[0110]
步骤s26:变电站根据s25中的报文分段数目n
zl,i
,使用国密sm2对加密后的主站连接报文进行解密,并得到解密前的分段报文具体公式如下:
[0111][0112]
其中,为加密后的主站连接报文中的第n
zl,i
段报文内容,f
j
为国密sm2的解密转换函数。
[0113]
步骤s27:变电站根据s26中解密后的主站连接报文中的第n
zl,i
段报文内容以及s25中的分段加密器计数数值得到主站连接报文,具体计算公式如下:
[0114][0115]
步骤s28:变电站根据s27中的加密后的主站连接报文判断报文的有效性。当不满足有效性校验时,变电站拒绝执行该报文,主站身份验证失败。
[0116]
进一步作为优选的实施方式,所述s28步骤,其包括
[0117]
步骤s280:变电站根据s27中的解密后的主站连接报文中的发送时间戳t
zl,i
和为变电站接收到主站连接报文的时间t

zl,i
,判断主站连接报文的有效性。当|t
zl,i

t

zl,i
|<t
d
,则d
tzl,i
=1。反之,d
tzl,i
=0。其中,t
d
为系统预设的第1类时间间隔,本发明设置为60s。
[0118]
在一个实施例中,主站连接报文的发送时间戳t
zl,i
为20210311120027,变电站接收到主站连接报文的时间t

zl,i
为20210311120047,则满足有效性检验校验。
[0119]
步骤s281:变电站根据s27中的解密后的主站连接报文中的主站连接报文的随机数r
zl,i
,判断主站连接报文的有效性。当时,则d
rzl,i
=1。反之,d
rzl,i
=0。其中,为变电站数据库中所存储的主站随机数的集合。
[0120]
在一个实施例中,解密后的主站连接报文中的随机数r
zl,i
为97,变电站数据库中所存储的主站随机数存在97,主站连接报文异常,变电站不执行连接指令。
[0121]
步骤s282:变电站根据s27中的解密后的主站连接报文中的主站数字签名sign
zl,i
,判断主站连接报文的有效性。当sign
zl,i
∈ω
sign,z
时,则d
szl,i
=1。反之,变电站拒绝执行该报文。其中,ω
sign,z
为变电站数据库中所存储的主站数字签名的集合。
[0122]
在一个实施例中,解密后的变电站主站连接报文中的数字签名sign
zl,i
为cxsg,变电站数据库中所存储的主站数字签名存在cxsg,则满足有效性检验,则d
szl,i
=1。
[0123]
步骤s283:根据s280中的d
tzl,i
,s281中的d
rzl,i
以及s282中的d
szl,i
,变电站判断主站连接报文有效性。当d
tzl,i
&d
rzl,i
&d
szl,i
=1时,变电站完成对主站身份验证,主站身份验证成功。反之,连接报文无效,主站身份验证失败。
[0124]
步骤s29:当变电站完成对主站的身份验证,变电站根据原变电站连接应答报文m
bl,i
,变电站连接应答报文的发送时间戳t
bl,i
,变电站数字签名sign
bl,i
,随机数r
bl,i
,以及主站连接报文的随机数r
zl,i
,生成如步骤s12中的增加安全域后的变电站连接应答报文并通过如步骤s22中的加密方式对其进行加密,将加密后的连接应答报文发送给主站。
[0125]
进一步作为优选的实施方式,所述步骤s3,其包括:
[0126]
步骤s31:主站根据步骤s29中加密后的变电站连接应答报文通过如步骤s25~s26的解密方式得到明文并进行有效性校验。
[0127]
进一步作为优选的实施方式,所述步骤s31,其包括:
[0128]
步骤s310:主站根据变电站连接应答报文发送时间戳t
bl,i
以及主站接受变电站连接应答报文的时间t

bl,i
,判断变电站连接应答报文的有效性。当|t
bl,i

t

bl,i
|<t
d
,,则d
tbl,i
=1。反之,d
tbl,i
=0。
[0129]
步骤s311:主站根据主站接受变电站连接应答报文的时间t

bl,i
以及主站连接报文的时间戳t
zl,i
,判断变电站连接报文的新鲜性。当|t

bl,i

t
zl,i
|<t
d,2
,则d
tbl,2,i
=1。反之,d
tbl,2,i
=0。其中,t
d,2
为系统预设的第2类时间间隔,本发明设为300s。
[0130]
步骤s312:主站根据变电站连接应答报文中的随机数r
bl,i
,判断变电站连接应答报文的有效性。当则d
rbl,i
=1。反之,d
rbl,i
=0。其中,为主站数据库中所存储的变电站随机数的集合。
[0131]
步骤s313:主站根据变电站连接应答报文中的变电站数字签名sign
bl,i
,判断变电站连接应答报文的有效性。当sign
bl,i
∈ω
sign,b
时,则d
sbl,i
=1。反之,d
sbl,i
=0。其中,ω
sign,b
为主站数据库中所存储的变电站数字签名的集合。
[0132]
步骤s314:主站根据变电站连接应答报文中的主站随机数以及主站连接报文中的主站随机数r
zl,i
,判断变电站连接应答报文的有效性。如果二者相同,则d
rzl,2,i
=1。反之,d
rzl,2,i
=0。
[0133]
步骤s315:根据s310中的d
tbl,i
,s311中的d
tbl,2,i
,s312中的d
rbl,i
,s13中的d
sbl,i
以及s314中的d
rzl,2,i
,主站判断变电站连接报应答文有效性。当d
tbl,i
&d
tbl,2,i
&d
sbl,i
&d
rzl,2,i
&d
rbl,i
=1时,变电站连接报应答文有效。反之,无效。
[0134]
步骤s32:当主站判断变电站连接报应答文有效后,主站根据由变电站连接应答报文发送的随机数r
bl,i
和随机数r
zl,i
生成的数字签名sign
zl2,i
,原主站二次连接报文m
zl2,i
,主站二次连接报文发送时间戳t
zl2,i
以及调度证书ds
zk,i
,形成如步骤s13的报文格式的二次连接报文,并通过如步骤s22中的加密方式对其进行加密,将加密后的二次连接报文发送给变电站。
[0135]
进一步作为优选的实施方式,所述s32步骤,其包括
[0136]
步骤s320:根据主站连接报文随机数r
zl,i
,变电站连接应答报文随机数r
bl,i
,通过第二套加密算法生成数字签名sign
zl2,i
,具体计算公式如下:
[0137]
sign
zl2,i
=f
sm3
(r
zl,i
,r
bl,i
)
ꢀꢀꢀ
(15)
[0138]
其中,f
sm3
为第二套加密算法的加密转换函数。在本发明中,第二套加密算法为sm3加密算法。
[0139]
步骤s321:根据原主站二次连接报文m
zl2,i
,主站二次连接报文发送时间戳t
zl2,i
和主站数字签名sign
zl2,i
,生成如步骤s13的主站二次连接报文格式的报文并通过如步骤s22中的加密方式对其进行加密,将加密后的二次连接报文发送给变电站。
[0140]
步骤s33:变电站根据步骤s32中加密后的主站二次连接报文通过如步骤s25~s26的解密方式得到主站二次连接报文并判断报文的有效性。当不满足有效性校验时,变电站拒绝执行该报文,主站身份验证失败。
[0141]
进一步作为优选的实施方式,所述步骤s33,其包括:
[0142]
步骤s330:变电站根据主站二次连接报文发送时间戳t
zl2,i
以及变电站接受主站二次连接报文的时间t

zl2,i
,判断主站二次连接报文的有效性。当|t
zl2,i

t

zl2,i
|<t
d
,则d
tzl2,i
=1。反之,d
tzl2,i
=0。
[0143]
步骤s331:变电站根据主站连接报文的时间戳t
zl,i
以及变电站接受主站二次连接报文的时间t

zl2,i
,判主站二次连接报文的有效性。当|t
zl,i

t

zl2,i
|<t
d,3
,则d
tzl2,2,i
=1。反之,d
tzl2,2,i
=0。其中,t
d,3
为系统预设的第3类时间间隔,本发明设为450s。
[0144]
步骤s332:变电站根据主站二次连接报文中的调度证书ds
zk,i
,判断主站二次连接报文的有效性。当则d
dzc,i
=1。反之,d
dzc,i
=0。其中,为变电站数据库中所存储的调度证书的集合
[0145]
步骤s333:变电站根据主站连接报文随机数r
zl,i
,变电站连接应答报文随机数r
bi,i
以及主站数字签名sign
zl2,i
,判断主站二次连接报文的有效性。当f
sm3
(r
zl,i
,r
bl,i
)&sign
zl2,i
=1,则d
szl2,i
=1。反之,d
szl2,i
=0。
[0146]
步骤s334:根据s330中的d
tzl2,i
,s331中的d
tzl2,2,i
,s332中的d
dzc,i
以及s333中的
d
szl2,i
,变电站判断主站二次连接报文有效性。当d
tzl2,i
&d
tzl2,2,i
&d
dzc,i
&d
szl2,i
=1,主站二次连接报文有效,主站二次身份验证成功。反之,主站二次连接报文无效,主站二次身份验证失败。
[0147]
步骤s34:当变电站完成对主站的二次身份验证,变电站根据为原变电站二次连接应答报文m
bl2,i
,变电站二次连接应答报文的发送时间戳t
bl2,i
以及变电站二次连接应答报文发送的变电站数字签名sign
bl2,i
,生成如步骤s14的变电站二次连接应答报文并通过如步骤s22中的加密方式对其进行加密,将加密后的二次连接应答报文发送给主站。
[0148]
进一步作为优选的实施方式,所述步骤s4,其包括:
[0149]
步骤s41:主站根据步骤s34中加密后的变电站二次连接应答报文通过如步骤s25~s26的解密方式得到明文并进行有效性校验。
[0150]
进一步作为优选的实施方式,所述步骤s41,其包括:
[0151]
步骤s410:主站根据变电站二次连接应答报文发送时间戳t
bl2,i
以及主站接受变电站二次连接应答报文的时间t

bl2,i
,判断变电站二次连接应答报文的有效性。当|t
bl2,i

t

bl2,i
|<t
d
,则d
tbl2,i
=1。反之,d
tbl2,i
=0。
[0152]
步骤s411:主站根据变电站二次连接应答报文中的变电站数字签名sign
bl2,i
,判断变电站二次连接应答报文的有效性。当则d
sbl2,i
=1。反之,d
sbl2,i
=0。
[0153]
步骤s412:主站根据s410中的d
tbl2,i
和s411中的d
sbl2,i
,主站判断变电站二次连接应答报文的有效性。当d
tbl2,i
&d
sbl2,i
=1,变电站二次连接应答报文有效,连接成功。
[0154]
步骤s42:主站根据原主站控制指令报文m
zk,i
,主站控制指令报文发送时间戳t
zk,i
、主站数字签名sign
zk,i
、主站随机数r
zk,i
和调度证书ds
zk,i
,生成如步骤s15的增加安全域后的主站控制指令报文并通过如步骤s22中的加密方式对其进行加密,将加密后的控制指令报文发送给主站。其中,主站控制指令报文的主站数字签名sign
zk,i
,具体计算公式如下:
[0155]
sign
zk,i
=sign
zl2,i
ꢀꢀꢀ
(16)
[0156]
步骤s43:变电站根据步骤s41中加密后的主站控制指令报文通过如步骤s25~s26中的解密方式得到主站控制指令报文明文并进行有效性校验。
[0157]
进一步作为优选的实施方式,所述步骤s43,其包括:
[0158]
步骤s430:变电站根据主站控制指令报文的发送时间戳t
zk,i
以及变电站接受主站控制指令报文的时间t

zk,i
,判断控制指令报文的有效性。当|t
zk,i

t

zk,i
|<t
d
,则d
tzk,i
=1。反之,d
tzk,i
=0。
[0159]
步骤s431:变电站根据变电站接受主站控制指令报文的时间戳t

zk,i
以及变电站接受到主站二次连接报文的时间戳t

zl2,i
,判断主站控制指令报文的有效性。当|t

zl2,i

t

zk,i
|<t
d,2
,则d
tzk,2,i
=1。反之,d
tzk,2,i
=0。
[0160]
步骤s432:变电站根据主站控制指令报文中的调度证书ds
zk,i
,判断主站控制执行报文的有效性。当则d
dzk,i
=1。反之,d
dzk,i
=0。
[0161]
步骤s433:变电站根据主站控制指令报文中的主站数字签名sign
zk,i
,判断主站控制执行报文的有效性。当f
sm
3(r
zl,i
,r
bl,i
)&sign
zk,i
=1,则d
szk,i
=1。反之,d
szk,i
=0。
[0162]
步骤s434:变电站根据主站控制指令报文中的随机数r
zk,i
以及变电站接受报文中随机数的集合判断主站控制执行报文的有效性。当则d
rzk,i
=1。反之,d
rzk,i
=0。
[0163]
步骤s435:根据s430中的d
tzk,i
,s431中的d
tzk,2,i
,s432中的d
dzk,i
,s433中的d
szk,i
以及s434中的d
rzk,i
,变电站判断主站控制指令报文的有效性。当d
tzk,i
&d
tzk,2,i
&d
dzk,i
&d
szk,i
&d
rzk,i
=1,满足有效性检验,变电站执行该报文,主站实现远程操控。反之,拒绝执行。
[0164]
步骤s44:当变电站完成现地操控,变电站根据原变电站控制确认报文m
bz,i
,变电站控制确认报文发送时间戳t
bz,i
以及变电站数字签名sign
bz,i
,生成如步骤s16的变电站控制确认报文并通过如步骤s22中的加密方式对其进行加密,将加密后的控制指令报文发送给主站。其中,变电站控制确认报文的变电站数字签名sign
bz,i
的具体计算公式如下:
[0165]
sign
bz,i
=sign
bl2,i
ꢀꢀꢀ
(17)
[0166]
图4是本发明实施例提供的一种调度指令执行方法及系统的结构示意图,该系统包括计算机设备,该计算机设备适用于执行本发明任意实施例提供的方法,包括:通信连接模块一100,通信连接模块二200,指令执行模块300。
[0167]
所述的通信连接模块一100,用于构造主站与变电站的第一次连接。
[0168]
所述的通信连接模块二200,用于构造主站与变电站的二次连接。
[0169]
所述的指令执行模块300,用于确认执行主站的调度操控指令。
[0170]
所述通信连接模块一100的输出端与所述的通信连接模块二200的输入端相连,用于输入加密后的变电站连接应答报文。
[0171]
在一个实施例中,所述通信连接模块一100生成加密后的变电站应答报文该模块将其作为输出端输送给所述的通信连接模块二200。
[0172]
所述的通信连接模块二200的输出端与所述的指令执行模块300的输入端相连,用于输入加密后的变电站二次连接应答报文。
[0173]
在一个实施例中,所述的通信连接模块二200生成加密后的变电站二次应答报文该模块将其作为输出端输送给所述的指令执行模块300。
[0174]
如图5,进一步的,所述通信连接模块一100包括:数据获取单元201,主站请求指令生成单元202,主站counter

sm2加密单元203,变电站counter

sm2解密单元204,变电站指令判断单元205,变电站应答指令生成单元206、变电站counter

sm2加密单元207。其中
[0175]
所述数据获取单元201的输出端与所述主站请求指令连接单元202输入端相连,用于输入原主站连接报文。
[0176]
所述数据获取单元201的输出端与所述变电站应答指令生成单元206输入端相连,用于输入原变电站连接应答报文。
[0177]
所述主站请求指令生成单元202的输出端与主站counter

sm2加密单元203的输入端相连,用于输入增加安全扩展域后的主站连接报文。
[0178]
所述主站counter

sm2加密单元203的输出端与变电站counter

sm2解密单元204
的输入端相连,用于输入主站加密后的主站连接报文。
[0179]
所述变电站counter

sm2解密单元204的输出端与变电站指令判断单元205的输入端相连,用于输入主站连接报文明文。
[0180]
所述变电站指令判断单元205的输出端与变电站应答指令生成单元206的输入端相连,用于输入主站连接报文有效性判断结果。
[0181]
所述变电站应答指令生成单元206的输入端与变电站counter

sm2加密单元207的输入端相连,用于加密后的变电站连接应答报文。
[0182]
所述数据获取单元201,用于获取原主站连接报文、根据原变电站连接应答报文。
[0183]
在一个实施例中,数据获取单元201,读取m
zl,i
、m
bl,i
,数据读取完毕后,该单元将各参数数据传递给主站请求指令连接单元202、变电站应答指令生成单元206。
[0184]
所述主站请求指令生成单元202,用于计算增加安全扩后的主站连接报文。
[0185]
在一个实施例中,主站请求指令生成单元202,根据m
zl,i
、t
zl,i
、sign
zl,i
为、r
zl,i
,计算得出增加安全域后的主站连接报文计算完毕后,该单元将增加安全扩展域后的主站连接报文传递给主站counter

sm2加密单元203。
[0186]
所述的主站counter

sm2加密单元203,用于计算主站加密后的连接报文指令。
[0187]
在一个实施例中,主站counter

sm2加密单元203,根据c
z
,计算得出主站加密后的主站连接报文计算完毕后,该单元将主站加密后的连接报文指令传递给变电站counter

sm2解密单元204。
[0188]
所述的变电站counter

sm2解密单元204,用于计算主站发送给变电站的主站连接报文。
[0189]
在一个实施例中,变电站counter

sm2加密单元203,根据c
z
,计算得出主站连接报文计算完毕后,该单元将主站连接报文发送给变电站指令判断单元205。
[0190]
所述变电站指令判断单元205,用于判断主站发送给变电站的主站连接报文明文的有效性。
[0191]
在一个实施例中,变电站指令判断单元205,根据m
zl,i
、t
zl,i
、sign
zl,i
为、r
zl,i
,判断判断主站发送给变电站的主站连接报文的有效性。判断完毕后,该单元将判断结果发送给变电站应答指令生成单元206。
[0192]
所述变电站应答指令生成单元206,用于计算增加安全域后的变电站应答报文。
[0193]
在一个实施例中,变电站应答指令生成单元206,根据m
bl,i
、t
bl,i
、sign
bl,i
、r
bl,i
、r
zl,i
,计算得出增加安全扩展域后的变电站连接报文计算完毕后,该单元将增加安全域后的变电站连接报文发送给变电站counter

sm2加密单元207。
[0194]
所述的变电站counter

sm2加密单元207,用于计算加密后的变电站应答报文。
[0195]
在一个实施例中,变电站counter

sm2加密单元207,根据计算得出加密后的变电站应答报文计算完毕后,并将加密后的变电站应答报文作为通信连接模块一的输出端输出。
[0196]
本发明的调度指令执行方法及系统,全过程考虑了控制指令在主站与变电站传递
过程中存在的潜在风险,建立了一种基于零信任网络机制的控制指令执行方法及系统,降低了控制指令在传输过程中给电力系统带来潜在的运行风险。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1