智能电表通信的数据传输方法

文档序号:6703485阅读:1959来源:国知局
专利名称:智能电表通信的数据传输方法
技术领域
本发明涉及一种智能电表通信的数据传输方法,主要适用于智能电能表的通信。
背景技术
随着智能电表概念的提出,信息传输的安全性已经成为世界各国智能电表通信中的关键因素,中国国家电网公司及中国南方电网公司在制定智能电表标准时也在考虑将信息传输的安全性作为智能电表的要求之一。但目前国内电能表的通信大多没有考虑数据传输安全,数据在传输过程中易被窃听、篡改,黑 客可利用窃听的数据进行某些利益重大的操作如拉合闸等,甚至能源消费者可抵赖其消费的数据。

发明内容
本发明要解决的技术问题是针对现有技术存在的问题提供一种智能电表通信的数据传输方法,防止黑客利用重复的加密指令对表计进行操作,同时防止数据被篡改,以保障表计通信时数据传输的安全性。本发明所采用的技术方案是智能电表通信的数据传输方法,其特征在于步骤如下
a、客户端对拟发送指令进行加密处理后发送至对应的表计;
b、表计收到密文指令后,首先判断帧序号与自身存储的帧序号是否相同,若相同,则执行步骤c ;
C、验证MAC值是否正确,若正确则执行步骤d、;
d、表计对密文指令进行解密得到明文指令数据,并执行该指令,将拟回复数据加密后回复给客户端,然后将其自身存储的帧序号增加I ;
e、客户端收到表计的密文回复数据后,首先判断帧序号是否等于发送指令时的帧序号,若相同,则执行步骤f;
f、验证MAC值是否正确,若正确则执行步骤g;
g、客户端对密文回复数据进行解密得到明文回复数据,并保存;
h、客户端将帧序号加I后,返回步骤a对该表计进行下一次指令发送;
其中所述加密算法的初始化向量包括发送方的身份信息和帧序号。所述步骤b中,若帧序号不同,则丢弃该指令,不予回复,客户端通过明文指令获取表计存储的帧序号后,返回步骤a。所述步骤c中,若MAC值验证结果不正确,则丢弃该指令,不予回复,客户端通过明文指令获取表计存储的帧序号后,返回步骤a。所述步骤e中,若帧序号与发送指令时的帧序号不相同,则丢弃该回复,客户端通过明文指令获取表计存储的帧序号后,返回步骤a。所述步骤f中,若MAC值验证结果不正确,则丢弃该回复,客户端通过明文指令获取表计存储的帧序号后,返回步骤a。
所述客户端,以及该客户端下各表计的加密密钥均唯一。所述客户端下任意一个表计的帧序号超出FFFFFFFF之前,重置客户端及该客户端下所有表计的加密密钥,同时客户端和各表计的帧序号复位为O。所述客户端,以及该客户端下各表计的身份信息均唯一。所述加密算法采用标准的AES-128-GCM算法。所述客户端下的各表计中均保存有该客户端的身份信息,该客户端中则保存有前述各表计的身份信息。本发明的有益效果是1、通信时,将客户端或表计的身份信息和帧序号组合作为AES-128-GCM算法中的初始化向量IV,由于客户端和表计身份信息的唯一性以及所定义的帧序号的变化规则,每个报文的初始化向量IV也具有唯一性,从而保证了即使是相同的明文,在经AES-128-GCM运算后得到的密文和MAC值都将不同,从而有效防止了黑客利用重复的加密指令对表计进行操作。2、通信中采用密文+MAC值的形式,密文保证了数据的机密性,防止数据被窃听;MAC值保证了数据的完整性,防止数据被篡改。3、客户端和表计的身份信息作为加密算法的输入,同时由于客户端及各表计的身份信息唯一,不仅有效防止了非法第三方来冒充客户端或表计,而且保证了数据的溯源,实现了数据防抵赖。


图I是本发明中加密算法的输入输出简图。 图2是本发明中表计验证指令的流程图。图3是本发明中客户端验证回复的流程图。图4是本发明中客户端与表计的通信流程图。图5是本发明黑客攻击时的处理流程图。
具体实施例方式实际应用中,一个客户端一般对应多个表计,其中客户端的身份信息(8字节)唯一,以保证客户端发送命令的溯源;并且该客户端下各表计的身份信息(8字节)也唯一,以保证表计回复数据的溯源;同时客户端中保存有与之对应的多个合法表计的身份信息,而各表计中保存有与之对应的合法客户端的身份信息。此外各表计的加密密钥也具有唯一性,相应的,与该组表计相对应的客户端中存储有多个密钥,分别与各表计一一对应,以方便通信时的加密和解密。下面以客户端与其中一块表计的通信为例进行说明,如图I-图5所示,本实施例具体步骤如下
a、客户端对拟发送指令进行加密处理后发送至对应的表计(通信过程中客户端每次只针对某一个表计发送指令);本例中加密算法采用标准的算法AES-128-GCM,该算法的输入包括初始化向量IV、验证附加信息ADD、加密密钥和明文,其中初始化向量IV包括身份信息(客户端发送时为客户端身份信息,表计回复时为表计身份信息,此处为客户端的身份信息)和帧序号(4字节,为通信时信息帧的帧序号,客户端每发送一次指令,帧序号增加I);该算法的输出包括密文和MAC值,其中MAC值可被认为是客户端对明文的签名值。b、表计收到密文指令后,首先判断帧序号与自身存储的帧序号是否相同(初始状态、首次通信情况下,客户端的帧序号与表计的帧序号相同;客户端可保存每一个表的帧序号,或通信之前读取该表的帧序号,读帧序号时可采用明文方式读取),若相同,则执行步骤C ;若不同,则丢弃该指令,不予回复,同时客户端通过明文指令获取表计存储的帧序号(以便用正确的帧序号与表计进行通信)后,返回步骤a,进行下一次通信。C、验证MAC值是否正确,即判断该指令是否来自表计认可的客户端或数据是否被篡改,若正确则执行步骤d ;若MAC值不正确,则表明该指令不是来源于表计中保存的合法客户端或者明文中的数据被篡改,此时表计丢弃该指令,不予回复,同时客户端通过明文指令获取表计存储的帧序号后,返回步骤a,进行下一次通信。本例中,MAC值的验证方法为表计利用密钥解密,得到明文,然后将明文、密钥、ADD和IV作为数据进行加密计算得到MAC值,将该MAC值和客户端发送的MAC值进行比对即可,一旦数据被篡改,两个MAC会不同,导致验证不通过。d、表计对密文指令进行解密得到明文指令数据,并执行该指令,将拟回复数据加密后回复给客户端,然后将表计自身存储的帧序号增加I ;其加密算法及输入输出与步骤a 相同。e、客户端收到表计的密文回复数据后,首先判断该回复数据的帧序号是否等于客户端发送指令时的帧序号,若相同,则执行步骤f;若不同,则丢弃该回复,同时客户端通过明文指令获取表计存储的帧序号后,返回步骤a,进行下一次通信。f、验证MAC值是否正确,即判断该回复是否来自客户端认可的表计或数据是否被篡改,若正确则执行步骤g;若不正确,则表明该回复不是来源于客户端认可的表计或回复数据被篡改,此时客户端丢弃该回复,同时客户端通过明文指令获取表计存储的帧序号后,返回步骤a,进行下一次通信。MAC值的验证方法为客户端利用密钥解密,得到明文,然后将明文、密钥、ADD和IV作为数据进行加密计算得到MAC值,将该MAC值和表计回复的MAC值进行比对即可。g、客户端对密文回复数据进行解密得到明文回复数据,并保存。h、客户端将帧序号加I后,返回步骤a对该表计进行下一次指令发送,即每次通信来回后,客户端需将帧序号增加I以防止黑客利用重复的加密指令对表计进行操作或者用重复的加密数据对客户端进行回复。上述步骤中,无论是由于帧序号不同还是MAC值不同,导致通信不成功,客户端都会通过明文指令获取表计存储的帧序号,并用该正确的帧序号与表计进行下一次通信。实际应用中,客户端下任意一个表计的帧序号溢出(即超出十六进制数OxFFFFFFFF)之前,重置客户端及该客户端下所有表计的加密密钥,同时客户端和各表计的帧序号复位为O。
权利要求
1.一种智能电表通信的数据传输方法,其特征在于步骤如下 a、客户端对拟发送指令进行加密处理后发送至对应的表计; b、表计收到密文指令后,首先判断帧序号与自身存储的帧序号是否相同,若相同,则执行步骤c ; C、验证MAC值是否正确,若正确则执行步骤d、; d、表计对密文指令进行解密得到明文指令数据,并执行该指令,将拟回复数据加密后回复给客户端,然后将其自身存储的帧序号增加I ; e、客户端收到表计的密文回复数据后,首先判断帧序号是否等于发送指令时的帧序号,若相同,则执行步骤f; f、验证MAC值是否正确,若正确则执行步骤g; g、客户端对密文回复数据进行解密得到明文回复数据,并保存; h、客户端将帧序号加I后,返回步骤a对该表计进行下一次指令发送; 其中所述加密算法的初始化向量包括发送方的身份信息和帧序号。
2.根据权利要求I所述的智能电表通信的数据传输方法,其特征在于所述步骤b中,若帧序号不同,则丢弃该指令,不予回复,客户端通过明文指令获取表计存储的帧序号后,返回步骤a。
3.根据权利要求I或2所述的智能电表通信的数据传输方法,其特征在于所述步骤c中,若MAC值验证结果不正确,则丢弃该指令,不予回复,客户端通过明文指令获取表计存储的帧序号后,返回步骤a。
4.根据权利要求I或2所述的智能电表通信的数据传输方法,其特征在于所述步骤e中,若帧序号与发送指令时的帧序号不相同,则丢弃该回复,客户端通过明文指令获取表计存储的帧序号后,返回步骤a。
5.根据权利要求I或2所述的智能电表通信的数据传输方法,其特征在于所述步骤f中,若MAC值验证结果不正确,则丢弃该回复,客户端通过明文指令获取表计存储的帧序号后,返回步骤a。
6.根据权利要求I或2所述的智能电表通信的数据传输方法,其特征在于所述客户端,以及该客户端下各表计的加密密钥均唯一。
7.根据权利要求I或2所述的智能电表通信的数据传输方法,其特征在于所述客户端下任意一个表计的巾贞序号超出FFFFFFFF之前,重置客户端及该客户端下所有表计的加密密钥,同时客户端和各表计的帧序号复位为O。
8.根据权利要求I或2所述的智能电表通信的数据传输方法,其特征在于所述客户端,以及该客户端下各表计的身份信息均唯一。
9.根据权利要求I或2所述的智能电表通信的数据传输方法,其特征在于所述加密算法米用标准的AES-128-GCM算法。
10.根据权利要求I或2所述的智能电表通信的数据传输方法,其特征在于所述客户端下的各表计中均保存有该客户端的身份信息,该客户端中则保存有前述各表计的身份信
全文摘要
本发明涉及智能电表通信的数据传输方法。本发明目的提供智能电表通信的数据传输方法,保障表计通信时数据传输的安全。本发明技术方案a、客户端对拟发送指令加密后发送至表计;b、表计判断帧序号与自身存储的帧序号是否相同,若相同,执行c;c、验证MAC值,若正确执行d、;d、表计对指令进行解密得明文指令,执行该指令,将其自身存储的帧序号加1;e、客户端收到表计密文回复数据后,判断帧序号是否等于发送时帧序号,若相同,执行f;f、验证MAC值,若正确执行g;g、客户端对回复数据解密得明文回复数据,并保存;h、客户端将帧序号加1,返回a;加密算法的初始化向量包括发送方的身份信息和帧序号。本发明适用于智能电能表的通信。
文档编号G08C19/00GK102903226SQ20121039689
公开日2013年1月30日 申请日期2012年10月18日 优先权日2012年10月18日
发明者周良璋, 姚青, 刘鹏 申请人:杭州海兴电力科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1