CN109981291A - 一种混合分组签名方法 - Google Patents
一种混合分组签名方法 Download PDFInfo
- Publication number
- CN109981291A CN109981291A CN201910235837.7A CN201910235837A CN109981291A CN 109981291 A CN109981291 A CN 109981291A CN 201910235837 A CN201910235837 A CN 201910235837A CN 109981291 A CN109981291 A CN 109981291A
- Authority
- CN
- China
- Prior art keywords
- data
- file
- result
- grouping
- false
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/72—Signcrypting, i.e. digital signing and encrypting simultaneously
Abstract
本发明提供一种混合分组签名方法,包括以下具体步骤:(1)首先将数据F进行分组,(2)对已分组的数据文件每一组分别进行多次签名算法加密;(3)当需要对数据进行签名算法验证数据完整性时,需先输入要检测的数据文件和步骤(2)所得到的结果S,并读取报告中步骤(1)进行分组时的PS值和TOD值,最终输出数据完整性检测结果;(4)最后依据步骤(3)中的完整性检测结果,对于结果为FALSE的文件,表示该文件出现了数据篡改问题,依据步骤(2),比较各个文件分组S2与S1的值是否相同,相同为TRUE,不同为FALSE,对于结果为FALSE的文件分组,依据每一分组的首端部分H,回溯到源文件相应的文件分组位置,找到被篡改的数据,进行修改或者重传。
Description
技术领域
本发明涉及电力采集系统信息加密领域,具体地说是一种基于安全层协议智能电表通信的混合分组签名方法。
背景技术
在用电信息采集系统中,智能电表与集中器之间的本地通信安全问题一直未能得到充分重视,但智能电表作为对用户电量、计费等信息进行收集、加工处理以及传输的源头,其与集中器之间的通信是否安全是整个用电信息采集系统能否安全、正常、有效运行的最根本也是最重要的一环,而目前高速发展的信息技术也使得原有的智能电表与集中器之间的通信协议存在着许多的隐患,其传输的数据极易被攻击者进行篡改、窃取,因此,将现有的通信协议进行增强,对于智能电表和集中器之间的安全通信具有重要的意义,考虑到现有签名算法不能实现篡改数据的定位,开发新的混合签名算法定位篡改数据对抵抗攻击起到重要作用。
发明内容
本发明的目的是提供一种混合分组签名方法,实现数据完整性检测,还可以实现篡改数据的回溯。
本发明提出的技术方案
一种混合分组签名方法,包括以下具体步骤:
(1)首先将数据F进行分组,将数据分成长度相同的片段,记为PS,每个数据分组用P表示,在从各个数据分组分成首端部分,用H表示,以及剩余的数据,用TOD表示,
F={P1,P2,P3……Pn} (3)
Pi=Hi+TODi(1≤i≤n) (4)
(2)对已分组的数据文件每一组分别进行多次签名算法加密,第一次计算TODi部分的MD5信息摘要M1,第二次对首端部分Hi和第一次使用MD5计算得到的128位字符连接起来的字符串进行SHA-256签名算法加密得到信息摘要S1,第三次对所有分组的SHA-256算法得到的加密结果连接起来的字符串进行MD5加密,保存计算的结果,记为E1,作为比较的依据;
(3)当需要对数据进行签名算法验证数据完整性时,需先输入要检测的数据文件和步骤(2)所得到的结果S,并读取报告中步骤(1)进行分组时的PS值和TOD值,确保分组得到的PS值即数据片段是相同的,并且验证时每个分组的首端字节H和剩余字节TOD是相同的,同样采用三次加密的方法,即先使用MD5加密得到信息摘要M2,再使用SHA-256加密得到信息摘要S2,最后将所有分组结果使用MD5加密生成结果E2,比较E2与E1的结果是否相同,相同则输出TRUE,表明数据未篡改,否则输出FALSE,最终输出数据完整性检测结果;
(4)最后依据步骤(3)中的完整性检测结果,对于结果为FALSE的文件,表示该文件出现了数据篡改问题,依据步骤(2),比较各个文件分组S2与S1的值是否相同,相同为TRUE,不同为FALSE,对于结果为FALSE的文件分组,依据每一分组的首端部分H,回溯到源文件相应的文件分组位置,找到被篡改的数据,进行修改或者重传。
本发明可以具有以下优点:(1)弥补MD5算法本身只能串行计算的不足,实现快速的数据完整性检测;(2)利用混合两次加密,大大加强了签名的安全性。(3)因为是分组检测数据的完整性,所以又可以通过在每一块中添加标签的方法实现在检测出数据完整性的问题时,准确定位问题数据分组的位置,从而只需要重传或修改问题数据,大大提升了通信效率。
附图说明
图1是本发明的方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
1.本发明提出的首先在智能电表端初始化MD5随机参数,四个32位整数(A,B,C,D)用来计算MD5签名算法信息摘要,之后再初始化SHA-256随机参数,八个32位整数(E,F,G,H,I,j,K,L)用来计算SHA-256签名算法信息摘要。
2.输入待检测数据文件*.log文件,去除数据前后的空格,将数据F分成n个数据文件组,每块记为Pi(1<i<n),大小位PSi,并从每块的初始部分取128个字节Hi(head),作为该数据块的首端部分,用来进行数据完整性检测之后的数据回溯;数据其余部分记为TODi(the other data),最后数据被分割为:
F={P1,P2,P3……Pn) (5)
Pi=Hi+TODi(1≤i≤n)(2) (6)
3.根据步骤2分组的结果,对每一个数据分组Pi的其余数据TODi部分,由步骤1生成的四位MD5初始化随机参数(A,B,C,D),使用MD5签名算法生成一个MD5信息摘要MD5i1,然后将此MD5摘要作为字符串和前面128个首端字节H连接成新的字符串,对得到的字符串,利用步骤1得到的SHA-256八位初始化随机参数(E,F,G,H,I,J,K,L),对新生成的字符串进行SHA-256签名算法计算,结果产生SHA-256信息摘要,在此阶段通过SHA-256算法生成的SHA-256校验码的数目为n个(SHA-256)n={(SHA-256)1,(SHA-256)2,(SHA-256)3…(SHA-256)n},即每一分组生成一个SHA-256校验码,其中:
MD5i1=MD5(TODi)(1≤i≤n) (7)
(SHA-256)i=(SHA-256)(Hi,MD5i1) (8)
(TODi)和(Hi,MD5i1)表示对对括号中的内容运用相应的签名算法进行运算,
保存所有的MD5i1和(SHA-256)i(1≤i≤n)的值。
4.将每个数据分组生成的SHA-256校验码(SHA-256)i(1≤i≤n)进行字符串连接形成新的字符串,并对新生成的字符串再次利用MD5签名算法生成新的MD5信息摘要,即128位的数字指纹。其结果为:
MD5F=MD5((SHA-256)1,(SHA-256)2…(SHA-256)n) (9)
保存MD5F的值,作为比较的依据。
5.数据完整性检测。当集中器端对数据进行完整性检测时,输入需要检测的数据,读取步骤2中的PSi值和Hi值,保证两次计算信息摘要时的PS值大小相同。用与步骤3和步骤4相同的三个计算步骤检测数据文件的MD5摘要值和SHA-256值,相同输出TRUE,不同输出FALSE。
6.若两次计算的MD5F值相同,则直接输出数据完整,整个算法流程结束。若两次计算的MD5F值不同,则进行数据回溯。分别检验各个分组两次信息摘要值不同的分组,即输出为FALSE的分组,根据每一数据分组的首端部分Hi回溯到源文件的相应的文件分组位置。检查问题数据,进行修改或者重传,整个算法流程结束。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (1)
1.一种混合分组签名方法,其特征在于,包括以下具体步骤:
(1)首先将数据F进行分组,将数据分成长度相同的片段,记为PS,每个数据分组用P表示,在从各个数据分组分成首端部分,用H表示,以及剩余的数据,用TOD表示,
F={P1,P2,P3……Pn} (1)
Pi=Hi+TODi(1≤i≤n) (2)
(2)对已分组的数据文件每一组分别进行多次签名算法加密,第一次计算TODi部分的MD5信息摘要M1,第二次对首端部分Hi和第一次使用MD5计算得到的128位字符连接起来的字符串进行SHA-256签名算法加密得到信息摘要S1,第三次对所有分组的SHA-256算法得到的加密结果连接起来的字符串进行MD5加密,保存计算的结果,记为E1,作为比较的依据;
(3)当需要对数据进行签名算法验证数据完整性时,需先输入要检测的数据文件和步骤(2)所得到的结果S1,并读取报告中步骤(1)进行分组时的PS值和TOD值,确保分组得到的PS值即数据片段是相同的,并且验证时每个分组的首端字节H和剩余字节TOD是相同的,同样采用三次加密的方法,即先使用MD5加密得到信息摘要M2,再使用SHA-256加密得到信息摘要S2,最后将所有分组结果使用MD5加密生成结果E2,比较E2与E1的结果是否相同,相同则输出TRUE,表明数据未篡改,否则输出FALSE,最终输出数据完整性检测结果;
(4)最后依据步骤(3)中的完整性检测结果,对于结果为FALSE的文件,表示该文件出现了数据篡改问题,依据步骤(2),比较各个文件分组S2与S1的值是否相同,相同为TRUE,不同为FALSE,对于结果为FALSE的文件分组,依据每一分组的首端部分H,回溯到源文件相应的文件分组位置,找到被篡改的数据,进行修改或者重传。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910235837.7A CN109981291A (zh) | 2019-03-27 | 2019-03-27 | 一种混合分组签名方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910235837.7A CN109981291A (zh) | 2019-03-27 | 2019-03-27 | 一种混合分组签名方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109981291A true CN109981291A (zh) | 2019-07-05 |
Family
ID=67080848
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910235837.7A Pending CN109981291A (zh) | 2019-03-27 | 2019-03-27 | 一种混合分组签名方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109981291A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113329014A (zh) * | 2021-05-28 | 2021-08-31 | 国网湖北省电力有限公司荆州供电公司 | 一种基于电力物联网加密通信认证的信息传输装置 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101137027A (zh) * | 2006-11-23 | 2008-03-05 | 中兴通讯股份有限公司 | 一种媒体分片存储的方法 |
CN102497597A (zh) * | 2011-12-05 | 2012-06-13 | 中国华录集团有限公司 | 高清视频文件的完整性校验方法 |
CN102946379A (zh) * | 2012-10-16 | 2013-02-27 | 无锡江南计算技术研究所 | 多层摘要文件生成方法及文件正确性验证方法 |
CN103491062A (zh) * | 2012-06-13 | 2014-01-01 | 北京新媒传信科技有限公司 | 一种生成密码的方法和装置 |
CN104933619A (zh) * | 2015-06-02 | 2015-09-23 | 郁晓东 | 一种电子债的离线/即时处理系统和方法 |
CN104966193A (zh) * | 2015-07-15 | 2015-10-07 | 郁晓东 | 一种利用蓝牙的安全传送id的系统和方法 |
CN106302303A (zh) * | 2015-05-11 | 2017-01-04 | 林友哲 | 一种用于跨应用用户信息传递的登陆协议运行方法 |
WO2017004828A1 (zh) * | 2015-07-09 | 2017-01-12 | 华为技术有限公司 | 密码算法升级的方法及设备 |
CN106682534A (zh) * | 2017-01-23 | 2017-05-17 | 郑州云海信息技术有限公司 | 一种数据迁移过程中数据完整性校验的方法及装置 |
CN107222453A (zh) * | 2016-03-22 | 2017-09-29 | 阿里巴巴集团控股有限公司 | 一种文件传输方法及装置 |
CN108665272A (zh) * | 2018-05-02 | 2018-10-16 | 百度在线网络技术(北京)有限公司 | 区块链数据处理方法、装置、设备和存储介质 |
-
2019
- 2019-03-27 CN CN201910235837.7A patent/CN109981291A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101137027A (zh) * | 2006-11-23 | 2008-03-05 | 中兴通讯股份有限公司 | 一种媒体分片存储的方法 |
CN102497597A (zh) * | 2011-12-05 | 2012-06-13 | 中国华录集团有限公司 | 高清视频文件的完整性校验方法 |
CN103491062A (zh) * | 2012-06-13 | 2014-01-01 | 北京新媒传信科技有限公司 | 一种生成密码的方法和装置 |
CN102946379A (zh) * | 2012-10-16 | 2013-02-27 | 无锡江南计算技术研究所 | 多层摘要文件生成方法及文件正确性验证方法 |
CN106302303A (zh) * | 2015-05-11 | 2017-01-04 | 林友哲 | 一种用于跨应用用户信息传递的登陆协议运行方法 |
CN104933619A (zh) * | 2015-06-02 | 2015-09-23 | 郁晓东 | 一种电子债的离线/即时处理系统和方法 |
WO2017004828A1 (zh) * | 2015-07-09 | 2017-01-12 | 华为技术有限公司 | 密码算法升级的方法及设备 |
CN104966193A (zh) * | 2015-07-15 | 2015-10-07 | 郁晓东 | 一种利用蓝牙的安全传送id的系统和方法 |
CN107222453A (zh) * | 2016-03-22 | 2017-09-29 | 阿里巴巴集团控股有限公司 | 一种文件传输方法及装置 |
CN106682534A (zh) * | 2017-01-23 | 2017-05-17 | 郑州云海信息技术有限公司 | 一种数据迁移过程中数据完整性校验的方法及装置 |
CN108665272A (zh) * | 2018-05-02 | 2018-10-16 | 百度在线网络技术(北京)有限公司 | 区块链数据处理方法、装置、设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
潘洪敏: ""大数据迁移过程中数据完整性问题研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113329014A (zh) * | 2021-05-28 | 2021-08-31 | 国网湖北省电力有限公司荆州供电公司 | 一种基于电力物联网加密通信认证的信息传输装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107678763A (zh) | 基于数字签名技术的电能表升级方法和系统 | |
CN111131278B (zh) | 数据处理方法及装置、计算机存储介质、电子设备 | |
CN104486075B (zh) | 一种智能变电站icd模型文件数字签名的验证方法 | |
CN102571357B (zh) | 一种签名的实现方法和装置 | |
CN104463007A (zh) | 数据验证方法及其装置 | |
CN107113180B (zh) | 分组发送装置、分组接收装置以及存储介质 | |
CN105515778B (zh) | 云存储数据完整性服务签名方法 | |
US9515989B1 (en) | Methods and apparatus for silent alarm channels using one-time passcode authentication tokens | |
CN110289997A (zh) | 一种日志报文校验方法、装置及系统 | |
CN110505061A (zh) | 一种数字签名算法及系统 | |
CN113822675A (zh) | 基于区块链的报文处理方法、装置、设备及存储介质 | |
CN106254392B (zh) | 基于动态可自定义的exTLV报文传输协议的通信方法 | |
CN113656825B (zh) | 文本水印嵌入方法、文本篡改检测方法、装置和电子设备 | |
CN113158176B (zh) | 基于sm2签名的公钥解析方法、装置、设备及存储介质 | |
CN113055189B (zh) | Sm2数字签名验证失败原因判定方法、装置、设备和介质 | |
CN104935783B (zh) | 一种安全的主动式图像篡改检测方法及装置 | |
CN109981291A (zh) | 一种混合分组签名方法 | |
CN113360935A (zh) | 一种基于区块链技术的对账方法及系统 | |
CN105933303B (zh) | 一种文件篡改的检测方法及装置 | |
Cao et al. | Design and implementation for MD5-based data integrity checking system | |
CN111740817A (zh) | 电力数据采集系统中集中器的代码篡改检测方法及系统 | |
CN114389821A (zh) | 基于区块链的签名监管方法、装置、设备和存储介质 | |
CN105554033B (zh) | 一种图像输入设备的可信认证方法及其图像输入设备 | |
CN112733166A (zh) | license认证授权功能的实现方法及系统 | |
CN112580077A (zh) | 一种信息处理方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190705 |