一种基于共享密钥的电力系统调试工具加密通信方法与流程

文档序号:16401249发布日期:2018-12-25 20:08阅读:253来源:国知局
一种基于共享密钥的电力系统调试工具加密通信方法与流程

本发明属于电力系统通信领域,特别是一种基于共享密钥的电力系统调试工具加密通信方法。

背景技术

在电力系统二次设备调试工具的通信协议中,常采用私有明文传输,该方法虽然方便了工具在使用中的异常信息诊断,但也带来了二次设备内部信息泄露的风险,存在安全隐患。

在电力系统调试工具加密通信中,基于共享密钥的加密通信是常见的通信方法。这种方法,通信双方基于约定的加密算法,并共享预先设定的对称密钥来实现加密通信。该方法使用简单,加密效率高,但与所有设备通信均使用同一密钥,存在被恶意攻击者通过获取大量通信样本进行逆向分析破解密钥的风险。另外一种加密通信方法是基于数字证书的非对称密钥的通信方式,每次通信的密钥都通过非对称密钥进行协商,解决了与不同装置每次通信都使用相同密钥的问题;但非对称密钥的方法算法复杂,执行效率低,并且首次调试前需下载数字证书,甚至需要定期对数字证书进行管理更新,维护使用成本比较高。



技术实现要素:

本发明所要解决的技术问题是:解决现有共享密钥机制下所有通信环境下都使用同一密钥对通信,存在被恶意攻击者通过获取大量通信样本进行逆向分析破解密钥的风险问题,提供一种基于共享密钥的电力系统调试工具加密通信方法,其基于共享密钥组来实现每次使用不同共享密钥进行通信,以提升通信安全性且使用简单可靠。

为达成上述目的,本发明采用的技术方案是:一种基于共享密钥的电力系统调试工具加密通信方法,其包括:

通信双方约定共享一个初始密钥kint和一个包含n组密钥的密钥组kg,其中n≥1;通信双方约定相同的加密算法e(k,x)及对应的解密算法为d(k,x),且加解密满足x≡d(k,e(k,x)),其中k为密钥,x为明文数据;

在通信过程中的步骤为:

步骤1:通信发起方产生链接请求随机数rd并用初始密钥kint加密,以e(kint,rd)作为报文treq_c内容发送通信链接请求;

步骤2:通信接收方通过rd'=d(kint,treq_c)解密treq_c获得链接请求随机数rd',随机选择通信密钥kt以及产生通信密钥验证请求随机数rd2,并以报文irsp_c进行通信链接请求应答;通信密钥kt是kg的第t组密钥,1≤t≤n;

步骤3:通信发起方解密报文irsp_c并验证连接请求应答报文的正确性后,产生通信密钥验证随机数rd3,并发起通信密钥kt的一致性验证请求报文treq_v;

步骤4:通信接收方解密treq_v并验证所协商通信密钥kt的正确性后,发送验证成功报文iok_v;

步骤5:通信发送方解密iok_v并验证iok_v的正确性;

步骤6:验证通过后,通信双方以kt进行加密通信。

作为上述技术方案的补充,通信链接请求应答报文irsp_c的结构为irsp_c=e(kint,(rd',t,rd2)),其中,kint初始密钥,rd'为解密后的链接请求随机数,t为通信密钥所对应的密钥组的组号,rd2为通信密钥验证请求随机数。

作为上述技术方案的补充,通信链接请求报文irsp_c的验证方法为:通过(rd”,t',rd2')=d(kint,irsp_c)解密irsp_c,获得解密应答请求报文后的链接请求随机数rd”,解密后的通信密钥组号t',以及解密后的通信密钥验证请求随机数rd2';若rd”==rd,通信发起方则判定通信链接请求报文正确。

作为上述技术方案的补充,通信密钥kt的一致性验证请求报文treq_v的结构为treq_v=e(kt',(rd2',rd3)),其中kt'为解密后通信密钥组组号t'对应的通信密钥,rd2'为解密后的密钥验证请求随机数,rd3为通信发起方新产生的通信密钥验证随机数。

作为上述技术方案的补充,通信密钥一致性验证请求报文treq_v的正确性验证方法为:通过(rd2”,rd3')=d(kt,treq_v)解密treq_v,获得解密后的通信密钥验证请求随机数rd2”,解密后的通信密钥验证随机数rd3';若rd2”==rd2,通信接收方则判定通信密钥一致性验证请求报文正确。

作为上述技术方案的补充,通信密钥一致性验证成功报文iok_v的结构为iok_v=e(kt,rd3'),其中rd3'为解密treq_v后的通信密钥验证随机数。

作为上述技术方案的补充,通信密钥一致性验证成功报文iok_v的正确性验证方法为:通过rd3”=d(kt',tok_v)解密iok_v,获得解密后的通信密钥验证随机数rd3”;若rd3”==rd3,则认为通信密钥协商成功,此时kt'≡kt。

本发明通过设定初始密钥对和对称密钥组的方式,在基于随机数的协商验证机制下,实现了每次通信使用不同对称密钥,并且密钥由通信接收方随机指定的通信方法。本发明解决了传统对称密钥通信每次都使用相同密钥的问题,并且具有无需配置,使用简单,加密效率高的特点。

附图说明

图1为本发明一种基于共享密钥的电力系统调试工具加密通信方法的流程图。

具体实施方式

下面结合附图和具体的实施案例对本技术方法做进一步描述,以使本领域技术人员更好的理解本发明并能予以实施,但所举实例不作为本发明的限定。

本实施例提供一种基于共享密钥的电力系统调试工具加密通信方法,如图1所示,其步骤如下:

通信双方约定采用aes-256加密算法,其密钥长度为256bit(32字节);通信双方共享一个256bit的初始密钥kint,和一个包含1024组256bit共享密钥的密钥组kg;通信密钥kt是kg的第t(1≤t≤1024)组密钥;加密算法aes-256的加密过程标记为eaes-256(k,x),解密过程标记为daes-256(k,x),其中k为256bit密钥,x为被加解密明文的最小长度为256bit。

在通信过程中:

1)通信发起方产生256bit链接请求随机数rd,并用初始密钥kint加密,以eaes-256(kint,rd)作为报文treq_c内容发起通信链接请求;

2)通信接收方用初始密钥kint解密treq_c,即rd'=daes-256(kint,treq_c),解密后获得链接请求随机数rd'(256bit);并从共享密钥组中随机选取kt最为通信密钥,产生256bit通信密钥验证请求随机数rd2;

3)通信接收方以解密后连接请求随机数rd'、通信密钥kt的组号t、通信密钥验证请求随机数rd2作为明文,以初始化密钥kint进行加密,构建通信链接请求应答报文并发送,其结构为irsp_c=eaes-256(kint,(rd',t,rd2));

4)通信发起方用初始化密钥kint解密报文irsp_c,即(rd”,t',rd2')=d(kint,irsp_c)。解密后获得irsp_c返回的链接请求随机数rd”,解密后的通信密钥组号t',以及解密后的通信密钥验证请求随机数rd2';若rd”==rd,则判定通信链接请求报文正确;

5)通信发起方验证通信链接请求报文的正确性后,确认组号t'的密钥为通信密钥kt',并产生256bit通信密钥验证随机数rd3;以通信密钥验证请求随机数rd2',通信密钥验证随机数rd3为明文输入,以kt'作为密钥构建通信密钥一致性验证请求报文并发送,其结构为treq_v=eaes-256(kt',(rd2',rd3))。

6)通信接收方用通信密钥kt解密treq_v,即(rd2”,rd3')=daes-256(kt,treq_v),获得解密后的通信密钥验证请求随机数rd2”,解密后的通信密钥验证随机数rd3';若rd2”==rd2,则判定通信密钥一致性验证请求报文正确,。

7)通信接收方验证通信密钥一致性验证请求报文的正确性后,以解密后的通信密钥验证随机数rd3'作为明文输入,以通信密钥kt加密构建通信密钥一致性验证成功报文并发送,其的结构为:iok_v=eaes-256(kt,rd3')。

8)通信接收方用密钥kt'解密一致性验证成功报文iok_v,即rd3”=daes-256(kt',tok_v),获得解密后的通信密钥验证随机数rd3”;若rd3”==rd3,则认为一致性验证成功报文iok_v验证成功,并判定通信密钥协商成功,即kt'≡kt。

9)通信接收方验证iok_v通过后,通信双方以kt进行加密通信。

上述实施方式已经对本发明的一些细节进行了描述,但是不能理解为对本发明的限制,本领域的技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对其进行变化、修改、替换和变型。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1