CN113315633A - 一种签名字段可变的防篡改数据交互方法 - Google Patents

一种签名字段可变的防篡改数据交互方法 Download PDF

Info

Publication number
CN113315633A
CN113315633A CN202110495214.0A CN202110495214A CN113315633A CN 113315633 A CN113315633 A CN 113315633A CN 202110495214 A CN202110495214 A CN 202110495214A CN 113315633 A CN113315633 A CN 113315633A
Authority
CN
China
Prior art keywords
signature
character string
field
fields
data
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
Application number
CN202110495214.0A
Other languages
English (en)
Inventor
蒋骥
方汉林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Baorong Technology Co ltd
Original Assignee
Zhejiang Baorong Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang Baorong Technology Co ltd filed Critical Zhejiang Baorong Technology Co ltd
Priority to CN202110495214.0A priority Critical patent/CN113315633A/zh
Publication of CN113315633A publication Critical patent/CN113315633A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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
    • H04L9/3249Cryptographic 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 using RSA or related signature schemes, e.g. Rabin scheme

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种签名字段可变的防篡改数据交互方法,可以对交互的数据中的不特定字段内容进行签名的方法。本发明数据交互方法,通过在数据中给出要签名的字段和顺序的方式,对签名验签的处理方式进行统一,无论哪种接口都可以用同一种签名验签方式处理,无需对每个接口进行开发。签名验签字段变更时只需要提供变更后的签名验签字段和顺序,无需进行接口开发。本发明为数据收发双方提供可以统一签名验签方式,签名验签字段可以根据需要进行改变,无需重新开发的解决方案。

Description

一种签名字段可变的防篡改数据交互方法
技术领域
本发明属于信息安全领域。本发明为收发双方进行数据传递,提供一种签名字段可变的防篡改数据交互方法。一种可以根据需要调整签名验签字段的防篡改数据交互方法。
背景技术
随着信息化数字化的发展,越来越多的业务在线上场景进行,越来越多的数据在网上传输。数据传输过程中必须要保障数据安全,数据安全关键一点就是要实现防篡改。在企业和银行的数据交互中,会要求数据的正确性,完整性,所以会采用签名验签的方式来确保数据没有被篡改。
由于场景化越来越多,不同的场景所要求的数据信息不一样,同一个场景在不同时期所需要的数据信息也可能会不同,传统的固定签名验签字段的方式难以适应变化的场景,每次数据信息的改变,都必须进行定制开发调整。
这种方式存在以下不足:
1)需要为每种场景单独开发签名验签的处理逻辑,成本高,周期长。2)如果签名字段或者顺序需要调整,就需要重新进行对接开发,成本高,周期长。
发明内容
本发明的目的是针对现有技术的不足,提供一种签名字段可变的防篡改数据交互方法。
本发明为数据收发双方提供可以统一签名验签方式,签名验签字段可以根据需要进行改变,无需重新开发的解决方案。
本发明解决其技术问题所采用的技术方案如下:
本发明通过在数据中给出要签名的字段和顺序的方式,对签名验签的处理方式进行统一,无需对每个接口进行开发,而签名验签字段变更时只需提供变更后的签名验签字段和顺序,具体实现步骤如下:
数据发送方:
步骤1、确定数据中要签名的所有字段;
步骤2、将要签名的所有字段通过分隔符按照顺序连接,组成包含所有签名字段名称的签名字段字符串;
步骤3、将所有签名字段对应的内容根据签名字段顺序连接,组成签名内容字符串;
步骤4、将签名字段字符串和签名内容字符串连接,组成完整签名字符串;
步骤5、将完整签名字符串使用字符编码,获取完整签名字符串对应的签名字节数组;
步骤6、采用摘要算法对签名字节数组进行摘要,获得签名摘要字节数组;
步骤7、采用数字签名算法,用数据发送方的私钥对签名摘要字节数组进行签名,获得签名结果字节数组;
步骤8、将签名结果字节数组采用字符编码形成签名结果字符串;
步骤9、将签名字段字符串放在交互数据的签名验签信息字段中,将签名结果字符串放在交互数据的签名结果字段中,形成最终交互数据;
步骤10、将最终交互数据发送给接收方;
数据接收方:
步骤(1)、接收最终交互数据;从签名验签信息字段中获取签名字段字符串;
步骤(2)、将签名字段字符串使用分隔符进行分隔,获得所有要签名的字段和顺序;
步骤(3)、将所有要签名字段的内容按照签名字段顺序,连接起来形成签名内容字符串;
步骤(4)、将签名字段字符串和签名内容字段连接,组成完整签名字符串;
步骤(5)、将完整签名字符串使用字符编码,获取签名字符串对应的签名字节数组;
步骤(6)、采用摘要算法对签名字节数组进行摘要,获得签名摘要字节数组;
步骤(7)、从签名结果字段中获取签名结果字符串;
步骤(8)、将签名结果字符串用字符编码进行解码,获得签名结果字节数组;
步骤(9)、采用数字签名算法,用数据发送方的公钥对签名摘要字节数组和签名结果字节数组进行验签;
步骤(10)、如果验签通过,则认为签名字段、签名字段顺序、签名字段内容没有被篡改;如果验签不通过,则认为签名字段、签名字段顺序、签名字段内容已经被篡改。
本发明有益效果如下:
本发明提供了一种新型的签名验签方法,通过在数据中给出要签名的字段和顺序的方式,对签名验签的处理方式进行统一,无论哪种接口都可以用同一种签名验签方式处理,无需对每个接口进行开发。签名验签字段变更时只需要提供变更后的签名验签字段和顺序,无需进行接口开发。
附图说明
图1为本发明发送方流程图;
图2为本发明接收方流程图;
具体实施方式
下面结合附图和实施例对本发明作进一步说明
如图1和2所示,一种签名字段可变的防篡改数据交互方法,具体实现如下:
数据发送方:
步骤1、确定数据中要签名的所有字段;
步骤2、将要签名的所有字段通过分隔符按照顺序连接,组成包含所有签名字段名称的签名字段字符串;例如:内容字段包括A、B、C、D、E;其中A和C是需要签名的字段。则将A和C通过分隔符连接。
步骤3、将所有签名字段对应的内容根据签名字段顺序连接,组成签名内容字符串;
步骤4、将签名字段字符串和签名内容字符串连接,组成完整签名字符串;
步骤5、将完整签名字符串使用UTF8编码,获取完整签名字符串对应的签名字节数组;
步骤6、采用SHA256摘要算法对签名字节数组进行摘要,获得签名摘要字节数组;
步骤7、采用RSA算法,用数据发送方的私钥对签名摘要字节数组进行签名,获得签名结果字节数组;
步骤8、将签名结果字节数组采用Base64编码形成签名结果字符串;
步骤9、将签名字段字符串放在交互数据的签名验签信息字段中,将签名结果字符串放在交互数据的签名结果字段中,形成最终交互数据;
步骤10、将最终交互数据发送给接收方。
数据接收方:
步骤(1)、接收最终交互数据;从签名验签信息字段中获取签名字段字符串;
步骤(2)、将签名字段字符串使用分隔符进行分隔,获得所有要签名的字段和顺序;
步骤(3)、将所有要签名字段的内容按照签名字段顺序,连接起来形成签名内容字符串;
步骤(4)、将签名字段字符串和签名内容字段连接,组成完整签名字符串;
步骤(5)、将完整签名字符串使用UTF8编码,获取签名字符串对应的签名字节数组;
步骤(6)、采用SHA256摘要算法对签名字节数组进行摘要,获得签名摘要字节数组;
步骤(7)、从签名结果字段中获取签名结果字符串;
步骤(8)、将签名结果字符串用Base64进行解码,获得签名结果字节数组;
步骤(9)、采用RSA算法,用数据发送方的公钥对签名摘要字节数组和签名结果字节数组进行验签;
步骤(10)、如果验签通过,则认为签名字段、签名字段顺序、签名字段内容没有被篡改;如果验签不通过,则认为签名字段、签名字段顺序、签名字段内容已经被篡改。
实施例(添加)
具体一句话的传输过程,签名字段,签名顺序,类似内容字段包括A、B、C、D、E;其中A和C是需要签名的字段。则将A和C通过分隔符连接。

Claims (1)

1.一种签名字段可变的防篡改数据交互方法,其特征在于通过在数据中给出要签名的字段和顺序的方式,对签名验签的处理方式进行统一,无需对每个接口进行开发,而签名验签字段变更时只需提供变更后的签名验签字段和顺序,具体实现步骤如下:
数据发送方:
步骤1、确定数据中要签名的所有字段;
步骤2、将要签名的所有字段通过分隔符按照顺序连接,组成包含所有签名字段名称的签名字段字符串;
步骤3、将所有签名字段对应的内容根据签名字段顺序连接,组成签名内容字符串;
步骤4、将签名字段字符串和签名内容字符串连接,组成完整签名字符串;
步骤5、将完整签名字符串使用字符编码,获取完整签名字符串对应的签名字节数组;
步骤6、采用摘要算法对签名字节数组进行摘要,获得签名摘要字节数组;
步骤7、采用数字签名算法,用数据发送方的私钥对签名摘要字节数组进行签名,获得签名结果字节数组;
步骤8、将签名结果字节数组采用字符编码形成签名结果字符串;
步骤9、将签名字段字符串放在交互数据的签名验签信息字段中,将签名结果字符串放在交互数据的签名结果字段中,形成最终交互数据;
步骤10、将最终交互数据发送给接收方;
数据接收方:
步骤(1)、接收最终交互数据;从签名验签信息字段中获取签名字段字符串;
步骤(2)、将签名字段字符串使用分隔符进行分隔,获得所有要签名的字段和顺序;
步骤(3)、将所有要签名字段的内容按照签名字段顺序,连接起来形成签名内容字符串;
步骤(4)、将签名字段字符串和签名内容字段连接,组成完整签名字符串;
步骤(5)、将完整签名字符串使用字符编码,获取签名字符串对应的签名字节数组;
步骤(6)、采用摘要算法对签名字节数组进行摘要,获得签名摘要字节数组;
步骤(7)、从签名结果字段中获取签名结果字符串;
步骤(8)、将签名结果字符串用字符编码进行解码,获得签名结果字节数组;
步骤(9)、采用数字签名算法,用数据发送方的公钥对签名摘要字节数组和签名结果字节数组进行验签;
步骤(10)、如果验签通过,则认为签名字段、签名字段顺序、签名字段内容没有被篡改;如果验签不通过,则认为签名字段、签名字段顺序、签名字段内容已经被篡改。
CN202110495214.0A 2021-05-07 2021-05-07 一种签名字段可变的防篡改数据交互方法 Pending CN113315633A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110495214.0A CN113315633A (zh) 2021-05-07 2021-05-07 一种签名字段可变的防篡改数据交互方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110495214.0A CN113315633A (zh) 2021-05-07 2021-05-07 一种签名字段可变的防篡改数据交互方法

Publications (1)

Publication Number Publication Date
CN113315633A true CN113315633A (zh) 2021-08-27

Family

ID=77371701

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110495214.0A Pending CN113315633A (zh) 2021-05-07 2021-05-07 一种签名字段可变的防篡改数据交互方法

Country Status (1)

Country Link
CN (1) CN113315633A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103647650A (zh) * 2013-12-18 2014-03-19 用友软件股份有限公司 基于规则定义的自动签名/验签装置和自动签名/验签方法
CN103873461A (zh) * 2014-02-14 2014-06-18 中国南方电网有限责任公司 基于iec62351的goose报文的安全交互方法
CN110443072A (zh) * 2019-08-21 2019-11-12 苏州睿威博科技有限公司 数据签名方法、数据校验方法、装置及存储介质
WO2020126235A1 (en) * 2018-12-20 2020-06-25 Thales Dis France Sa Method for generating stateful hash based signatures of messages to be signed
CN112202713A (zh) * 2020-08-28 2021-01-08 航天科工网络信息发展有限公司 一种Kubernetes环境下用户数据安全保护方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103647650A (zh) * 2013-12-18 2014-03-19 用友软件股份有限公司 基于规则定义的自动签名/验签装置和自动签名/验签方法
CN103873461A (zh) * 2014-02-14 2014-06-18 中国南方电网有限责任公司 基于iec62351的goose报文的安全交互方法
WO2020126235A1 (en) * 2018-12-20 2020-06-25 Thales Dis France Sa Method for generating stateful hash based signatures of messages to be signed
CN110443072A (zh) * 2019-08-21 2019-11-12 苏州睿威博科技有限公司 数据签名方法、数据校验方法、装置及存储介质
CN112202713A (zh) * 2020-08-28 2021-01-08 航天科工网络信息发展有限公司 一种Kubernetes环境下用户数据安全保护方法

Similar Documents

Publication Publication Date Title
CN110879903B (zh) 证据存储方法、证据验证方法及装置、设备和介质
CN102576559B (zh) 数据流的认证
JP4170317B2 (ja) トランスコードされた情報データを受信する方法、およびレシーバ
CN101820346B (zh) 一种安全数字签名方法
JP2020170189A (ja) 複数のメディア処理ノードによる適応処理
CN106603636B (zh) 一种差错交易的标准化方法及装置
KR20040098025A (ko) 디지털 서명에 의한 디지털 오브젝트의 워터마킹
CN111314172B (zh) 基于区块链的数据处理方法、装置、设备及存储介质
WO2003003329A1 (fr) Procede et systeme de validation de l'authenticite des donnees
CN110532808A (zh) 一种基于电子文档图像对象的电子签章方法
CN115442047A (zh) 一种业务管理文件的电子签章方法及系统
Ooi Coding for channels with feedback
CN114239080A (zh) 一种基于数字证书的软件多层签名方法及系统
CN112131041A (zh) 用于管理数据放置的方法、设备和计算机程序产品
CN113315633A (zh) 一种签名字段可变的防篡改数据交互方法
CN113129008A (zh) 数据处理方法、装置、计算机可读介质及电子设备
CN112733167A (zh) 电子证据数据的处理方法、装置、电子设备和存储介质
CN114374517A (zh) 基于动态时间戳的api调用方法、系统、装置及存储介质
CN110011910B (zh) 一种支持多协议设备接入的网关通信系统及网关通信方法
Fraczek et al. Steg Blocks: Ensuring perfect undetectability of network steganography
CN111506916A (zh) 一种基于区块链技术的建设工程电子档案存证方法及系统
CN116305214A (zh) 数据加密、解密方法、装置、电子设备及存储介质
JP3477480B2 (ja) ディジタル署名システム
Solomon New paradigms for future standards
CN112905836A (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

Application publication date: 20210827

RJ01 Rejection of invention patent application after publication