CN102890757B - 一种电能表软件的比对方法及其比对系统 - Google Patents
一种电能表软件的比对方法及其比对系统 Download PDFInfo
- Publication number
- CN102890757B CN102890757B CN201210335745.4A CN201210335745A CN102890757B CN 102890757 B CN102890757 B CN 102890757B CN 201210335745 A CN201210335745 A CN 201210335745A CN 102890757 B CN102890757 B CN 102890757B
- Authority
- CN
- China
- Prior art keywords
- electric energy
- energy meter
- comparison
- software
- main website
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 230000011218 segmentation Effects 0.000 claims description 4
- 230000007812 deficiency Effects 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000005611 electricity Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种电能表软件的比对方法,所述比对方法包括电能表对主站身份认证;加密读取电能表软件、整理并比对程序代码三个步骤;所述电能表软件比对方法中首先进行电能表对主站的身份认证,认证成功后进入所述加密读取电能表软件步骤,电能表软件加密读取后经过整理进行加密程序代码与备案程序代码的比对。本发明还涉及了一种电能表软件的比对系统,本发明采用带有身份认证的软件加密读取和程序区代码与备案程序代码完全比对的方式,弥补了传统比对方式中存在的漏洞,克服了方案流程方面的不足,能够很好的完成智能电能表软件的加密读取和比对工作。
Description
技术领域
本发明涉及软件加密读取和比对领域,具体涉及一种电能表软件的比对方法及其比对系统。
背景技术
智能电能表是用电系统中电量计量的重要设备,智能电能表的正常工作是国家电网正常运作的重要基础。智能电能表的软件比对是智能电能表正常运行的保障,智能电能表的软件比对面临很多重要的问题。
一方面,智能电能表内软件的源程序的泄漏会对电能表的正常工作带来极大的威胁,同时也会危害带智能电能表软件制作者的相关利益,所以对于电能表内的源程序要先加密再读取;另一方面,软件比对工作还需要保证电能表内程序的正确性,这样才能保证电力用户信息的保密性和用电的安全性。
目前,智能电能表软件比对需要考虑很多方面的因素,首先,主站对智能电能表的程序进行读取前,电能表需要对主站进行身份认证,防止非法主站对源程序的窃取;其次,源程序的加密流程极易受到攻击,采用弱密钥加密或者有漏洞的加密流程都会被攻击者利用窃取部分甚至全部程序代码;再次,软件比对还要注意防止隐形代码的嵌入,隐形代码是指存在于正常代码之后的代码,传统的软件比对经常会忽视这一问题,一旦出现嵌入隐形代码的问题,会对电力用户和电力公司造成极大的损失和极坏的社会影响。
发明内容
针对现有技术安全方面的不足,本发明提供一种电能表软件的比对方法及其比对系统,本发明采用带有身份认证的软件加密读取和程序区的备用程序地源代码完全比对的方式,弥补了传统比对方式中存在的漏洞,克服了方案流程方面的不足,能够很好的完成智能电能表软件的加密读取和比对工作。
本发明的目的是采用下述技术方案实现的:
一种电能表软件的比对方法,所述比对方法包括电能表对主站身份认证;加密读取电能表软件、整理并比对程序代码三个步骤;
其改进之处在于,所述电能表软件比对方法中首先进行电能表对主站的身份认证,认证成功后进入所述加密读取电能表软件步骤,电能表软件加密读取后经过整理进行加密程序代码与备案程序代码(备案程序是指之前备份的已经经过验证的程序代码,比对的目的是为了保证电能表中的程序与备案程序的一致性)的比对。
其中,所述电能表对主站的身份认证是指主站计算电能表的工作密钥,向电能表发送加密信息,电能表用自身密码验证主站的身份;所述加密信息是指应答随机数。
其中,所述电能表对主站的身份认证包括下述步骤:
A、主站向电能表发送比对命令;
B、所述电能表收到所述比对命令后,生成一个随机数并用电能表的工作密钥对电能表加密发送给主站;
C、主站用自身带有的密钥计算出电能表的工作密钥,并用电能表的工作密钥进行解密,得到信息的明文(信息的明文是指未加密的信息)后对随机数(随机数是指主站对电能表解密后信息的明文)执行加1操作;将执行加1操作所得数据定义为应答随机数;
D、将应答随机数用电能表的工作密钥加密回复给电能表作为认证信息。
其中,所述加密读取电能表软件,是指对电能表软件执行加密读取任务,包括比对程序代码预处理,计算比对因子和计算比对密钥索引三部分。
其中,所述加密读取电能表软件的三个步骤或同时进行。
其中,所述比对读取程序代码预处理包括下述步骤:
a、根据主站比对命令中提供的参数确定进行比对的电能表软件程序代码;所述主站比对命令中提供的参数包括进行比对的电能表软件程序代码的起始地址和程序代码的每段的长度;
b、对所述电能表软件程序代码进行分段处理;
c、每段电能表软件程序代码单独进行异或操作。
其中,所述计算比对因子是指根据主站比对命令中提供的参数(比对因子的地址)在电能表中选取比对因子,所述比对因子作为密钥加密的控制信息。
其中,所述比对因子与比对的电能表软件程序代码相关,不受主站参数直接控制。
其中,所述计算密钥索引是指根据主站比对命令中提供的参数(该参数为一设定好的数值)计算电能表中存储的加密密钥索引。
其中,使用的存储密钥的库存储于电能表和主站中,且通过相同的密钥索引找到使用的加密密钥;所述密钥索引是指密钥在密钥库中的编号。
其中,所述整理并比对程序代码包括下述步骤:
I、由电能表把加密后的比对程序代码进行组合;
II、电能表依照先后顺序生成比对代码,将比对代码输出给主站;
III、输出给主站的比对代码与备案程序代码进行比对,并生成比对文件。
本发明基于另一目的提供的一种电能表软件的比对系统,其改进之处在于,所述系统包括:
身份认证模块:用于电能表与主站的身份认证;
加密读取电能表软件模块:对电能表软件进行加密读取;
整理与比对模块:用于加密后的电能表比对程序代码与备案程序代码进行比对。
其中,所述身份认证模块在进行电能表与主站的身份认证时,首先主站向电能表发送比对命令,电能表收到该比对命令后,生成一个随机数并用自己的工作密钥进行加密,然后发送给主站;主站用自身带有的密钥计算出电能表使用的工作密钥,并用电能表的工作密钥进行解密,得到信息的明文后对随机数执行加1操作,得到应答加随机数;最后将应答随机数用电能表的工作密钥加密回复给电能表作为认证信息。
其中,所述加密读取电能表软件模块对电能表软件进行加密读取时,首先,根据主站比对命令中提供的参数(参数包括进行比对的电能表软件程序代码的起始位置和程序代码的每段的长度)确定比对的程序代码段,对程序代码段进行预处理:对代码段进行分段,每段进行异或操作;其次,根据主站比对命令中提供的参数(比对因子的地址)在电能表中选取比对因子,所述比对因子作为密钥加密的控制信息;最后,计算密钥索引,用于确定信息加密时使用的密钥。
其中,所述整理与比对模块进行比对时,由电能表把加密后的比对程序代码进行组合,依照先后顺序生成比对代码,输出给主站,并与备案程序代码进行比对。
与现有技术比,本发明达到的有益效果是:
本发明提供的电能表软件的比对方法及其比对系统,采用带有身份认证的软件源程序的加密读取和程序区的完全比对的方式,弥补了传统比对方式中存在的漏洞,克服了方案流程方面的不足,能够很好的完成智能电能表软件的加密读取和比对工作。
附图说明
图1是本发明提供的电能表软件的比对方法的流程图;
图2是本发明提供的电能表对主站的身份认证示意图;
图3是本发明提供的加密读取电能表软件的示意图。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步的详细说明。
本发明提供的电能表软件的比对方法的流程如图1所示,所述比对方法包括电能表对主站身份认证;加密读取电能表软件、整理并比对程序代码三个步骤;所述电能表软件比对方法中首先进行电能表对主站的身份认证,认证成功后进入所述加密读取电能表软件步骤,电能表软件加密读取后经过整理进行加密程序代码与备案程序代码的比对。
本发明提供的电能表对主站的身份认证如图2所示,电能表对主站的身份认证中,首先主站计算电能表的工作密钥,向电能表发送应答加密随机数,电能表用自身密码验证主站的身份;首先主站向智能电能表发送比对命令,电能表收到该比对命令后,生成一个随机数并用自己的密钥进行加密,发送给主站,主站用自身带有的密钥计算出电能表使用的密钥,并用该密钥进行解密,得到信息的明文后对随机数执行加1操作,最后将所得数据用电能表的密钥加密回复给电能表作为认证信息。
本发明提供的加密读取电能表软件的示意图如图3所示,加密读取电能表软件,包括比对代码预处理,计算比对因子和计算比对密钥索引,电能表完成对主站的身份认证之后,在电能表内执行加密读取任务,其中比对密钥用来加密比对代码段,比对因子作为加密密钥的控制信息;
比对代码预处理,是指根据主站提供的参数确定需要进行比对的程序代码段,对其进行预处理。实现如下:对代码段进行分段,每段进行异或操作;计算比对因子,是指根据主站比对命令中的参数在电能表中选取随机的比对因子,作为密钥加密的控制信息;计算密钥索引,是指根据主站控制信息计算密钥的索引,该密钥用于电能表加密比对程序代码的密钥。
最后由电能表把比加密后的比对程序代码进行组合,依照先后顺序生成比对代码,输出与经过同样处理的备案程序代码进行比对。
本发明还提供了电能表软件的比对系统,系统包括身份认证模块:用于电能表与主站的身份认证;加密读取电能表软件模块:对电能表软件进行加密读取;整理与比对模块:用于加密后的电能表比对程序代码与备案程序代码进行比对。
身份认证模块在进行电能表与主站的身份认证时,首先主站向电能表发送比对命令,电能表收到该比对命令后,生成一个随机数并用自己的工作密钥进行加密,然后发送给主站;主站用自身带有的密钥计算出电能表使用的工作密钥,并用电能表的工作密钥进行解密,得到信息的明文后对随机数执行加1操作,得到应答加随机数;最后将应答随机数用电能表的工作密钥加密回复给电能表作为认证信息。
加密读取电能表软件模块对电能表软件进行加密读取时,首先,根据主站比对命令中提供的参数确定比对的程序代码段,对程序代码段进行预处理:对代码段进行分段,每段进行异或操作;其次,根据主站比对命令中提供的参数在电能表中选取比对因子,所述比对因子作为密钥加密的控制信息;最后,计算密钥索引,用于确定信息加密时使用的密钥。
整理与比对模块进行比对时,由电能表把比加密后的比对程序代码进行组合,依照先后顺序生成比对代码,输出给主站,并与备案程序代码进行比对。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。
Claims (14)
1.一种电能表软件的比对方法,所述比对方法包括电能表对主站身份认证;加密读取电能表软件;整理并比对程序代码三个步骤;
其特征在于,所述电能表软件比对方法中首先进行电能表对主站的身份认证,认证成功后进入所述加密读取电能表软件步骤,电能表软件加密读取后经过整理进行加密程序代码与备案程序代码的比对。
2.如权利要求1所述的电能表软件的比对方法,其特征在于,所述电能表对主站的身份认证是指主站计算电能表的工作密钥,向电能表发送加密信息,电能表用自身密码验证主站的身份;所述加密信息是指应答加密随机数。
3.如权利要求1所述的电能表软件的比对方法,其特征在于,所述电能表对主站的身份认证包括下述步骤:
A、主站向电能表发送比对命令;
B、所述电能表收到所述比对命令后,生成一个随机数并用电能表的工作密钥对电能表加密发送给主站;
C、主站用自身带有的密钥计算出电能表的工作密钥,并用电能表的工作密钥进行解密,得到信息的明文后对随机数执行加1操作;将执行加1操作所得数据定义为应答随机数;
D、将应答随机数用电能表的工作密钥加密回复给电能表作为认证信息。
4.如权利要求1所述的电能表软件的比对方法,其特征在于,所述加密读取电能表软件,是指对电能表软件执行加密读取任务,包括比对程序代码预处理,计算比对因子和计算比对密钥索引三部分。
5.如权利要求4所述的电能表软件的比对方法,其特征在于,所述比对读取程序代码预处理包括下述步骤:
a、根据主站比对命令中提供的参数确定进行比对的电能表软件程序代码;所述主站比对命令中提供的参数包括进行比对的电能表软件程序代码的起始地址和程序代码的每段的长度;
b、对所述电能表软件程序代码进行分段处理;
c、每段电能表软件程序代码单独进行异或操作。
6.如权利要求4所述的电能表软件的比对方法,其特征在于,所述计算比对因子是指根据主站比对命令中提供的参数在电能表中选取比对因子,所述比对因子作为密钥加密的控制信息。
7.如权利要求6所述的电能表软件的比对方法,其特征在于,所述比对因子与比对的电能表软件程序代码相关,不受主站参数直接控制。
8.如权利要求4所述的电能表软件的比对方法,其特征在于,所述计算密钥索引是指根据主站比对命令中提供的参数计算电能表中存储的加密密钥索引。
9.如权利要求8所述的电能表软件的比对方法,其特征在于,使用的存储密钥的库存储于电能表和主站中,且通过相同的密钥索引找到使用的加密密钥;所述密钥索引是指密钥在密钥库中的编号。
10.如权利要求1所述的电能表软件的比对方法,其特征在于,所述整理并比对程序代码包括下述步骤:
I、由电能表把加密后的比对程序代码进行组合;
II、电能表依照先后顺序生成比对代码,将比对代码输出给主站;
III、输出给主站的比对代码与备案程序代码进行比对,并生成比对文件。
11.一种电能表软件的比对系统,其特征在于,所述系统包括:
身份认证模块:用于电能表与主站的身份认证;
加密读取电能表软件模块:对电能表软件进行加密读取;
整理与比对模块:用于加密后的电能表比对程序代码与备案程序代码进行比对。
12.如权利要求11所述的电能表软件的比对系统,其特征在于,所述身份认证模块在进行电能表与主站的身份认证时,首先主站向电能表发送比对命令,电能表收到该比对命令后,生成一个随机数并用自己的工作密钥进行加密,然后发送给主站;主站用自身带有的密钥计算出电能表使用的工作密钥,并用电能表的工作密钥进行解密,得到信息的明文后对随机数执行加1操作,得到应答加随机数;最后将应答随机数用电能表的工作密钥加密回复给电能表作为认证信息。
13.如权利要求11所述的电能表软件的比对系统,其特征在于,所述加密读取电能表软件模块对电能表软件进行加密读取时,首先,根据主站比对命令中提供的参数确定比对的程序代码段,对程序代码段进行预处理:对代码段进行分段,每段进行异或操作;其次,根据主站比对命令中提供的参数在电能表中选取比对因子,所述比对因子作为密钥加密的控制信息;最后,计算密钥索引,用于确定信息加密时使用的密钥。
14.如权利要求11所述的电能表软件的比对系统,其特征在于,所述整理与比对模块进行比对时,由电能表把加密后的比对程序代码进行组合,依照先后顺序生成比对代码,输出给主站,并与备案程序代码进行比对。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210335745.4A CN102890757B (zh) | 2012-09-11 | 2012-09-11 | 一种电能表软件的比对方法及其比对系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210335745.4A CN102890757B (zh) | 2012-09-11 | 2012-09-11 | 一种电能表软件的比对方法及其比对系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102890757A CN102890757A (zh) | 2013-01-23 |
CN102890757B true CN102890757B (zh) | 2015-08-05 |
Family
ID=47534258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210335745.4A Active CN102890757B (zh) | 2012-09-11 | 2012-09-11 | 一种电能表软件的比对方法及其比对系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102890757B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104283675A (zh) * | 2013-07-10 | 2015-01-14 | 中兴通讯股份有限公司 | 集中器、电表及其消息处理方法 |
CN106055991B (zh) * | 2016-06-01 | 2019-03-05 | 国网河北省电力公司电力科学研究院 | 一种采集终端软件程序一致性比对的方法 |
CN106485140A (zh) * | 2016-10-17 | 2017-03-08 | 中国电力科学研究院 | 一种电能表的升级方法和升级系统 |
CN109299945B (zh) * | 2017-07-24 | 2020-10-09 | 深圳荆虹科技有限公司 | 一种基于生物识别算法的身份验证的方法及装置 |
CN107920076B (zh) * | 2017-11-17 | 2020-04-28 | 江苏林洋能源股份有限公司 | 一种基于tls协议的电能表通信方法 |
CN108737449B (zh) * | 2018-06-26 | 2021-05-28 | 华立科技股份有限公司 | 软加密认证方法、装置及电子设备 |
CN112235100B (zh) * | 2019-12-20 | 2022-10-14 | 青岛鼎信通讯股份有限公司 | 一种电能表软加密认证方法及其远程认证系统 |
CN112039664B (zh) * | 2020-08-31 | 2024-04-16 | 宁夏隆基宁光仪表股份有限公司 | 适用于智能电表的数据通信方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101221506A (zh) * | 2007-01-12 | 2008-07-16 | 深圳市科陆电子科技股份有限公司 | 一种对电能表芯片程序进行下载更新的方法 |
CN101783801A (zh) * | 2010-01-29 | 2010-07-21 | 福建星网锐捷网络有限公司 | 一种基于网络的软件保护方法、客户端及服务器 |
CN102385373A (zh) * | 2011-10-21 | 2012-03-21 | 深圳市科陆电子科技股份有限公司 | 一种智能电能表自动编程方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01260600A (ja) * | 1988-04-12 | 1989-10-17 | Nec Corp | パルス発信式メータ集中検針方式 |
-
2012
- 2012-09-11 CN CN201210335745.4A patent/CN102890757B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101221506A (zh) * | 2007-01-12 | 2008-07-16 | 深圳市科陆电子科技股份有限公司 | 一种对电能表芯片程序进行下载更新的方法 |
CN101783801A (zh) * | 2010-01-29 | 2010-07-21 | 福建星网锐捷网络有限公司 | 一种基于网络的软件保护方法、客户端及服务器 |
CN102385373A (zh) * | 2011-10-21 | 2012-03-21 | 深圳市科陆电子科技股份有限公司 | 一种智能电能表自动编程方法 |
Non-Patent Citations (1)
Title |
---|
三相多功能电能表的软件校验;朱遵义;《中国计量》;20070630;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN102890757A (zh) | 2013-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102890757B (zh) | 一种电能表软件的比对方法及其比对系统 | |
CN100586065C (zh) | Cpk可信认证系统 | |
CN102025503B (zh) | 一种集群环境下数据安全实现方法和一种高安全性的集群 | |
CN102170357A (zh) | 组合密钥动态安全管理系统 | |
CN101917267B (zh) | 一种基于可存储加密狗的加密文件的随机密钥保存方法 | |
KR101344074B1 (ko) | 프라이버시 보호를 위한 스마트 그리드 정보 전송 기법 | |
CN106878322B (zh) | 一种基于属性的定长密文与密钥的加密、解密方法 | |
CN101656007A (zh) | 一种在pos机上实现一机多密的安全系统及方法 | |
CN105447394A (zh) | 一种带本地数据加密功能的智能密码钥匙 | |
CN103051450A (zh) | 应用于电力信息采集系统的安全任务下发的系统和方法 | |
CN107302436A (zh) | 一种usb接口标识密码钥匙 | |
CN105635135A (zh) | 一种基于属性集及关系谓词的加密系统及访问控制方法 | |
CN103516523A (zh) | 一种基于云存储的数据加密体系架构 | |
CN104268447A (zh) | 一种嵌入式软件的加密方法 | |
CN104866784A (zh) | 一种基于bios加密的安全硬盘、数据加密及解密方法 | |
CN102025486A (zh) | 安全智能芯片的密钥管理方法 | |
CN205584238U (zh) | 一种网络数据加密器 | |
CN103051459B (zh) | 安全卡的交易密钥的管理方法和装置 | |
CN201716734U (zh) | Usb安全存储加密装置 | |
CN103606223A (zh) | 一种卡片认证方法及装置 | |
CN102903226B (zh) | 智能电表通信的数据传输方法 | |
KR101329015B1 (ko) | 스마트그리드에서 프라이버시 보호가 향상된 안전한 데이터 전송 방법 | |
CN105471577A (zh) | 一种基于3d建模的防泄漏密钥加密方法 | |
CN201498001U (zh) | 一种基于对称密钥密码的可信计算平台 | |
CN110457924A (zh) | 存储数据保护方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |