CN116846541A - 一种基于sm3摘要算法的私有网络组件通信方法和系统 - Google Patents

一种基于sm3摘要算法的私有网络组件通信方法和系统 Download PDF

Info

Publication number
CN116846541A
CN116846541A CN202310628081.9A CN202310628081A CN116846541A CN 116846541 A CN116846541 A CN 116846541A CN 202310628081 A CN202310628081 A CN 202310628081A CN 116846541 A CN116846541 A CN 116846541A
Authority
CN
China
Prior art keywords
data
communication
digest
algorithm
message
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
CN202310628081.9A
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.)
China Standard Intelligent Security Technology Co Ltd
Original Assignee
China Standard Intelligent Security 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 China Standard Intelligent Security Technology Co Ltd filed Critical China Standard Intelligent Security Technology Co Ltd
Priority to CN202310628081.9A priority Critical patent/CN116846541A/zh
Publication of CN116846541A publication Critical patent/CN116846541A/zh
Pending legal-status Critical Current

Links

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/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/40Network security protocols

Abstract

本发明提出了一种基于SM3摘要算法的私有网络组件通信方法和系统。所述私有网络组件通信方法包括:在数据发送方和数据接收方之间建立通信连接,并在通信连接建立之后,通信双方生成一个对称密钥,所述对称密钥用于加密和解密通信数据。所述数据发送方利用SM3算法对通信数据进行摘要处理,生成一个固定长度的消息摘要。所述数据发送方使用所述对称密钥对通信数据进行加密处理,获得加密后数据;确保数据机密性和完整性。加密算法可以使用AES、DES等对称加密算法。所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要,并利用消息摘要进行消息认证。如果消息认证通过,所述数据接收方使用所述对称密钥对通信数据进行解密处理,得到明文数据。

Description

一种基于SM3摘要算法的私有网络组件通信方法和系统
技术领域
本发明提出了一种基于SM3摘要算法的私有网络组件通信方法和系统,属于通信技术领域。
背景技术
私有网络(Private Network)是一种在公共网络基础设施之上,利用各种加密技术和隧道技术实现的安全通信网络。私有网络可以将多个本地网络连接成一个虚拟网络,使得这些本地网络之间的通信都经过加密处理,从而保证了通信的安全性和私密性。现有技术中网络组件内存在通信缺乏协议,许多为数据直传,或者使用私有协议但缺乏认证机制,有一定的安全隐患的问题。
发明内容
本发明提供了一种基于SM3摘要算法的私有网络组件通信方法和系统,用以解决现有技术中网络组件内通信缺乏协议,许多为数据直传,或者使用私有协议但缺乏认证机制,有一定的安全隐患的问题,所采取的技术方案如下:
一种基于SM3摘要算法的私有网络组件通信方法,所述私有网络组件通信方法包括:
在数据发送方和数据接收方之间建立通信连接,并在通信连接建立之后,通信双方生成一个对称密钥,所述对称密钥用于加密和解密通信数据;其中,所述对称密钥可以使用Diffie-Hellman密钥交换算法、RSA算法等方法生成,具体算法选择要根据具体情况而定。
所述数据发送方利用SM3算法对通信数据进行摘要处理,生成一个固定长度的消息摘要;其中,所述摘要可以使用SM3算法计算得出,其结果是一个160位的哈希值。发送方将消息摘要附加在通信数据上一起发送给接收方。
所述数据发送方使用所述对称密钥对通信数据进行加密处理,获得加密后数据;确保数据机密性和完整性。加密算法可以使用AES、DES等对称加密算法。
所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要,并利用消息摘要进行消息认证;
如果消息认证通过,所述数据接收方使用所述对称密钥对通信数据进行解密处理,得到明文数据。
通过以上步骤,可以实现基于SM3摘要算法的私有网络组件通信。该方法可以保证通信的机密性、完整性和可靠性,有效地防止了被攻击者窃听、篡改或伪造的风险。
进一步地,所述数据发送方对通信数据进行摘要处理,生成一个固定长度的消息摘要,包括:
将要发送的通信数据作为输入量传递给SM3算法函数;
所述SM3算法函数对输入的通信数据进行处理,生成一个固定长度的消息摘要。
通过对数据进行哈希处理,可以确保通信数据的完整性和真实性。如果发送的数据被篡改或者数据传输中发生了错误,接收方计算出的消息摘要将与发送方发送的消息摘要不同,从而提醒接收方数据有问题。
进一步地,所述SM3算法函数对输入的通信数据进行处理,生成一个固定长度的消息摘要,包括:
将通信数据按照ISO/IEC 10118-3:2004标准进行填充,使其长度满足512位的倍数,形成标准长度数据;其中,填充方式可以是但不限制为在数据末尾加上一个1和若干个0,使得数据长度满足对512取模后余数为448;
定义一个固定的初始值(IV),所述初始值的长度为32个字节(256位),将所述初始值作为哈希函数的状态;
将所述标准长度数据按照512位一组进行分组迭代处理,每次迭代后更新哈希函数的状态值;
经过分组迭代后,将得到的哈希函数状态值作为最终的消息摘要,其中,所述消息摘要长度为32个字节(256位)。
进一步地,所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要,并利用消息摘要进行消息认证,包括:
所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要;
所述数据接收方使用同样的SM3算法对通信数据的消息摘要进行计算,获得所述消息摘要对应的摘要值;
所述数据接收方将获得摘要值与所述数据发送方发送的摘要值进行比较;如果两个摘要值相等,则表明接收到的数据是完整的,并且没有被篡改,允许接收;如果摘要值不相等,则表明数据可能已被篡改或者存在错误,拒绝接收。
一种基于SM3摘要算法的私有网络组件通信系统,所述私有网络组件通信系统包括:
通信建立模块,用于在数据发送方和数据接收方之间建立通信连接,并在通信连接建立之后,通信双方生成一个对称密钥,所述对称密钥用于加密和解密通信数据;其中,所述对称密钥可以使用Diffie-Hellman密钥交换算法、RSA算法等方法生成,具体算法选择要根据具体情况而定。
摘要处理模块,用于所述数据发送方利用SM3算法对通信数据进行摘要处理,生成一个固定长度的消息摘要;其中,所述摘要使用SM3算法计算得出,其结果是一个160位的哈希值。发送方将消息摘要附加在通信数据上一起发送给接收方。
加密模块,用于所述数据发送方使用所述对称密钥对通信数据进行加密处理,获得加密后数据;确保数据机密性和完整性。加密算法可以使用AES、DES等对称加密算法。
认证模块,用于所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要,并利用消息摘要进行消息认证;
解密模块,用于如果消息认证通过,所述数据接收方使用所述对称密钥对通信数据进行解密处理,得到明文数据。
通过以上步骤,可以实现基于SM3摘要算法的私有网络组件通信。该方法可以保证通信的机密性、完整性和可靠性,有效地防止了被攻击者窃听、篡改或伪造的风险。
进一步地,所述摘要处理模块包括:
传递模块,用于将要发送的通信数据作为输入量传递给SM3算法函数;
摘要生成模块,用于所述SM3算法函数对输入的通信数据进行处理,生成一个固定长度的消息摘要。
通过对数据进行哈希处理,可以确保通信数据的完整性和真实性。如果发送的数据被篡改或者数据传输中发生了错误,接收方计算出的消息摘要将与发送方发送的消息摘要不同,从而提醒接收方数据有问题。
进一步地,所述摘要生成模块包括:
填充模块,用于将通信数据按照ISO/IEC 10118-3:2004标准进行填充,使其长度满足512位的倍数,形成标准长度数据;其中,填充方式可以是但不限制为在数据末尾加上一个1和若干个0,使得数据长度满足对512取模后余数为448;
定义模块,用于定义一个固定的初始值(IV),所述初始值的长度为32个字节(256位),将所述初始值作为哈希函数的状态;
迭代模块,用于将所述标准长度数据按照512位一组进行分组迭代处理,每次迭代后更新哈希函数的状态值;
摘要输出模块,用于经过分组迭代后,将得到的哈希函数状态值作为最终的消息摘要,其中,所述消息摘要长度为32个字节(256位)。
进一步地,所述认证模块包括:
解密处理模块,用于所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要;
摘要值获取模块,用于所述数据接收方使用同样的SM3算法对通信数据的消息摘要进行计算,获得所述消息摘要对应的摘要值;
比较认证模块,用于所述数据接收方将获得摘要值与所述数据发送方发送的摘要值进行比较;如果两个摘要值相等,则表明接收到的数据是完整的,并且没有被篡改,允许接收;如果摘要值不相等,则表明数据可能已被篡改或者存在错误,拒绝接收。
本发明有益效果:
本发明提出了一种基于SM3摘要算法的私有网络组件通信方法和系统设计了一种私有通信协议,解决了网络组件间数据直传的问题,加入SM3摘要算法产生数字签名,增加了网络组件通信的安全性,减小被攻击的可能。可以保证数据的机密性和完整性,并且使用私有网络进行通信可以增加通信的安全性。通信双方建立通信连接后,生成一个对称密钥,用于加密和解密通信数据,避免了传输过程中密钥被截获的风险。同时,在数据发送方利用SM3算法对通信数据进行摘要处理,生成一个固定长度的消息摘要,附加在通信数据上一起发送给接收方,接收方收到数据后使用对称密钥对数据进行解密处理,并对摘要进行认证,确保数据的完整性和认证安全性。本发明提出的一种基于SM3摘要算法的私有网络组件通信方法和系统可以有效地防止数据在传输过程中被篡改、伪造、劫持等安全威胁。
附图说明
图1为本发明所述方法的流程图;
图2为本发明所述系统的系统框图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明实施例提出了一种基于SM3摘要算法的私有网络组件通信方法,如图1所示,所述私有网络组件通信方法包括:
S1、在数据发送方和数据接收方之间建立通信连接,并在通信连接建立之后,通信双方生成一个对称密钥,所述对称密钥用于加密和解密通信数据;
S2、所述数据发送方利用SM3算法对通信数据进行摘要处理,生成一个固定长度的消息摘要;
S3、所述数据发送方使用所述对称密钥对通信数据进行加密处理,获得加密后数据;
S4、所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要,并利用消息摘要进行消息认证;
S5、如果消息认证通过,所述数据接收方使用所述对称密钥对通信数据进行解密处理,得到明文数据。
上述技术方案的工作原理为:首先,在数据发送方和数据接收方之间建立通信连接,并在通信连接建立之后,通信双方生成一个对称密钥,所述对称密钥用于加密和解密通信数据;其中,所述对称密钥可以使用Diffie-Hellman密钥交换算法、RSA算法等方法生成,具体算法选择要根据具体情况而定。然后,所述数据发送方利用SM3算法对通信数据进行摘要处理,生成一个固定长度的消息摘要;其中,所述摘要可以使用SM3算法计算得出,其结果是一个160位的哈希值。发送方将消息摘要附加在通信数据上一起发送给接收方。之后,所述数据发送方使用所述对称密钥对通信数据进行加密处理,获得加密后数据;确保数据机密性和完整性。加密算法可以使用AES、DES等对称加密算法。最后,所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要,并利用消息摘要进行消息认证;如果消息认证通过,所述数据接收方使用所述对称密钥对通信数据进行解密处理,得到明文数据。
上述技术方案的效果为:通过以上方式,可以实现基于SM3摘要算法的私有网络组件通信。该方法可以保证通信的机密性、完整性和可靠性,有效地防止了被攻击者窃听、篡改或伪造的风险。可以保证数据的机密性和完整性,并且使用私有网络进行通信可以增加通信的安全性。通信双方建立通信连接后,生成一个对称密钥,用于加密和解密通信数据,避免了传输过程中密钥被截获的风险。同时,在数据发送方利用SM3算法对通信数据进行摘要处理,生成一个固定长度的消息摘要,附加在通信数据上一起发送给接收方,接收方收到数据后使用对称密钥对数据进行解密处理,并对摘要进行认证,确保数据的完整性和认证安全性。这样的方法可以有效地防止数据在传输过程中被篡改、伪造、劫持等安全威胁。
本发明的一个实施例,所述数据发送方对通信数据进行摘要处理,生成一个固定长度的消息摘要,包括:
S201、将要发送的通信数据作为输入量传递给SM3算法函数;
S202、所述SM3算法函数对输入的通信数据进行处理,生成一个固定长度的消息摘要。
上述技术方案的工作原理为:首先,将要发送的通信数据作为输入量传递给SM3算法函数;然后,所述SM3算法函数对输入的通信数据进行处理,生成一个固定长度的消息摘要。
上述技术方案的效果为:通过对数据进行哈希处理,可以确保通信数据的完整性和真实性。如果发送的数据被篡改或者数据传输中发生了错误,接收方计算出的消息摘要将与发送方发送的消息摘要不同,从而提醒接收方数据有问题。
本发明的一个实施例,所述SM3算法函数对输入的通信数据进行处理,生成一个固定长度的消息摘要,包括:
S2021、将通信数据按照ISO/IEC 10118-3:2004标准进行填充,使其长度满足512位的倍数,形成标准长度数据;其中,填充方式可以是但不限制为在数据末尾加上一个1和若干个0,使得数据长度满足对512取模后余数为448;
S2022、定义一个固定的初始值(IV),所述初始值的长度为32个字节(256位),将所述初始值作为哈希函数的状态;
S2023、将所述标准长度数据按照512位一组进行分组迭代处理,每次迭代后更新哈希函数的状态值;
S2024、经过分组迭代后,将得到的哈希函数状态值作为最终的消息摘要,其中,所述消息摘要长度为32个字节(256位)。
上述技术方案的工作原理为:首先,将通信数据按照ISO/IEC 10118-3:2004标准进行填充,使其长度满足512位的倍数,形成标准长度数据;其中,填充方式可以是但不限制为在数据末尾加上一个1和若干个0,使得数据长度满足对512取模后余数为448;然后,定义一个固定的初始值(IV),所述初始值的长度为32个字节(256位),将所述初始值作为哈希函数的状态;之后,将所述标准长度数据按照512位一组进行分组迭代处理,每次迭代后更新哈希函数的状态值;最后,经过分组迭代后,将得到的哈希函数状态值作为最终的消息摘要,其中,所述消息摘要长度为32个字节(256位)。
上述技术方案的效果为:使用SM3算法对通信数据进行摘要处理,可以保证通信数据的机密性和完整性。具体来说,通过ISO/IEC 10118-3:2004标准进行数据填充和分组处理,可以将任意长度的数据转换为固定长度的消息摘要,从而实现了数据的压缩和固化。同时,使用固定的初始值作为哈希函数的状态,可以保证摘要的唯一性和不可逆性,从而防止数据被篡改或伪造。这样,接收方在收到通信数据后,只需要通过相同的算法和密钥对数据进行解密和摘要处理,并进行消息认证,就可以验证数据的完整性和真实性,确保通信的安全性和可靠性。
本发明的一个实施例,所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要,并利用消息摘要进行消息认证,包括:
S401、所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要;
S402、所述数据接收方使用同样的SM3算法对通信数据的消息摘要进行计算,获得所述消息摘要对应的摘要值;
S403、所述数据接收方将获得摘要值与所述数据发送方发送的摘要值进行比较;如果两个摘要值相等,则表明接收到的数据是完整的,并且没有被篡改,允许接收;如果摘要值不相等,则表明数据可能已被篡改或者存在错误,拒绝接收。
上述技术方案的工作原理为:首先,所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要;然后,所述数据接收方使用同样的SM3算法对通信数据的消息摘要进行计算,获得所述消息摘要对应的摘要值;最后,所述数据接收方将获得摘要值与所述数据发送方发送的摘要值进行比较;如果两个摘要值相等,则表明接收到的数据是完整的,并且没有被篡改,允许接收;如果摘要值不相等,则表明数据可能已被篡改或者存在错误,拒绝接收。
上述技术方案的效果为:上述技术方案采用了对称密钥加密和消息摘要算法,能够保证通信数据的机密性和完整性。使用对称密钥加密可以保证数据在传输过程中不会被窃听和篡改,而使用消息摘要算法可以保证数据在传输过程中没有被篡改。此外,对称密钥加密和消息摘要算法具有高效性和安全性,可以满足实际应用的需求。因此,上述技术方案的技术效果是保证通信数据的机密性和完整性,具有高效性和安全性。
本发明实施例提出了一种基于SM3摘要算法的私有网络组件通信系统,如图2所示,所述私有网络组件通信系统包括:
通信建立模块,用于在数据发送方和数据接收方之间建立通信连接,并在通信连接建立之后,通信双方生成一个对称密钥,所述对称密钥用于加密和解密通信数据;其中,所述对称密钥可以使用Diffie-Hellman密钥交换算法、RSA算法等方法生成,具体算法选择要根据具体情况而定。
摘要处理模块,用于所述数据发送方利用SM3算法对通信数据进行摘要处理,生成一个固定长度的消息摘要;其中,所述摘要使用SM3算法计算得出,其结果是一个160位的哈希值。发送方将消息摘要附加在通信数据上一起发送给接收方。
加密模块,用于所述数据发送方使用所述对称密钥对通信数据进行加密处理,获得加密后数据;确保数据机密性和完整性。加密算法可以使用AES、DES等对称加密算法。
认证模块,用于所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要,并利用消息摘要进行消息认证;
解密模块,用于如果消息认证通过,所述数据接收方使用所述对称密钥对通信数据进行解密处理,得到明文数据。
上述技术方案的工作原理为:首先,通过通信建立模块在数据发送方和数据接收方之间建立通信连接,并在通信连接建立之后,通信双方生成一个对称密钥,所述对称密钥用于加密和解密通信数据;其中,所述对称密钥可以使用Diffie-Hellman密钥交换算法、RSA算法等方法生成,具体算法选择要根据具体情况而定。
然后,利用摘要处理模块控制所述数据发送方利用SM3算法对通信数据进行摘要处理,生成一个固定长度的消息摘要;其中,所述摘要使用SM3算法计算得出,其结果是一个160位的哈希值。发送方将消息摘要附加在通信数据上一起发送给接收方。
之后,采用加密模块控制所述数据发送方使用所述对称密钥对通信数据进行加密处理,获得加密后数据;确保数据机密性和完整性。加密算法可以使用AES、DES等对称加密算法。
随后,通过认证模块控制所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要,并利用消息摘要进行消息认证;
最后,通过解密模块在如果消息认证通过时,所述数据接收方使用所述对称密钥对通信数据进行解密处理,得到明文数据。
上述技术方案的效果为:通过以上方式,可以实现基于SM3摘要算法的私有网络组件通信。该方法可以保证通信的机密性、完整性和可靠性,有效地防止了被攻击者窃听、篡改或伪造的风险。可以保证数据的机密性和完整性,并且使用私有网络进行通信可以增加通信的安全性。通信双方建立通信连接后,生成一个对称密钥,用于加密和解密通信数据,避免了传输过程中密钥被截获的风险。同时,在数据发送方利用SM3算法对通信数据进行摘要处理,生成一个固定长度的消息摘要,附加在通信数据上一起发送给接收方,接收方收到数据后使用对称密钥对数据进行解密处理,并对摘要进行认证,确保数据的完整性和认证安全性。这样的方法可以有效地防止数据在传输过程中被篡改、伪造、劫持等安全威胁。
本发明的一个实施例,所述摘要处理模块包括:
传递模块,用于将要发送的通信数据作为输入量传递给SM3算法函数;
摘要生成模块,用于所述SM3算法函数对输入的通信数据进行处理,生成一个固定长度的消息摘要。
上述技术方案的工作原理为:首先,通过传递模块将要发送的通信数据作为输入量传递给SM3算法函数;然后,利用摘要生成模块控制所述SM3算法函数对输入的通信数据进行处理,生成一个固定长度的消息摘要。
上述技术方案的效果为:通过对数据进行哈希处理,可以确保通信数据的完整性和真实性。如果发送的数据被篡改或者数据传输中发生了错误,接收方计算出的消息摘要将与发送方发送的消息摘要不同,从而提醒接收方数据有问题。
本发明的一个实施例,所述摘要生成模块包括:
填充模块,用于将通信数据按照ISO/IEC 10118-3:2004标准进行填充,使其长度满足512位的倍数,形成标准长度数据;其中,填充方式可以是但不限制为在数据末尾加上一个1和若干个0,使得数据长度满足对512取模后余数为448;
定义模块,用于定义一个固定的初始值(IV),所述初始值的长度为32个字节(256位),将所述初始值作为哈希函数的状态;
迭代模块,用于将所述标准长度数据按照512位一组进行分组迭代处理,每次迭代后更新哈希函数的状态值;
摘要输出模块,用于经过分组迭代后,将得到的哈希函数状态值作为最终的消息摘要,其中,所述消息摘要长度为32个字节(256位)。
上述技术方案的工作原理为:首先,通过填充模块将通信数据按照ISO/IEC10118-3:2004标准进行填充,使其长度满足512位的倍数,形成标准长度数据;其中,填充方式可以是但不限制为在数据末尾加上一个1和若干个0,使得数据长度满足对512取模后余数为448;
然后,利用定义模块定义一个固定的初始值(IV),所述初始值的长度为32个字节(256位),将所述初始值作为哈希函数的状态;
之后,采用迭代模块将所述标准长度数据按照512位一组进行分组迭代处理,每次迭代后更新哈希函数的状态值;
最后,通过摘要输出模块在经过分组迭代后,将得到的哈希函数状态值作为最终的消息摘要,其中,所述消息摘要长度为32个字节(256位)。
上述技术方案的效果为:使用SM3算法对通信数据进行摘要处理,可以保证通信数据的机密性和完整性。具体来说,通过ISO/IEC 10118-3:2004标准进行数据填充和分组处理,可以将任意长度的数据转换为固定长度的消息摘要,从而实现了数据的压缩和固化。同时,使用固定的初始值作为哈希函数的状态,可以保证摘要的唯一性和不可逆性,从而防止数据被篡改或伪造。这样,接收方在收到通信数据后,只需要通过相同的算法和密钥对数据进行解密和摘要处理,并进行消息认证,就可以验证数据的完整性和真实性,确保通信的安全性和可靠性。
本发明的一个实施例,所述认证模块包括:
解密处理模块,用于所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要;
摘要值获取模块,用于所述数据接收方使用同样的SM3算法对通信数据的消息摘要进行计算,获得所述消息摘要对应的摘要值;
比较认证模块,用于所述数据接收方将获得摘要值与所述数据发送方发送的摘要值进行比较;如果两个摘要值相等,则表明接收到的数据是完整的,并且没有被篡改,允许接收;如果摘要值不相等,则表明数据可能已被篡改或者存在错误,拒绝接收。
上述技术方案的工作原理为:首先,通过解密处理模块控制所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要;然后,利用摘要值获取模块控制所述数据接收方使用同样的SM3算法对通信数据的消息摘要进行计算,获得所述消息摘要对应的摘要值;最后,采用比较认证模块控制所述数据接收方将获得摘要值与所述数据发送方发送的摘要值进行比较;如果两个摘要值相等,则表明接收到的数据是完整的,并且没有被篡改,允许接收;如果摘要值不相等,则表明数据可能已被篡改或者存在错误,拒绝接收。
上述技术方案的效果为:上述技术方案采用了对称密钥加密和消息摘要算法,能够保证通信数据的机密性和完整性。使用对称密钥加密可以保证数据在传输过程中不会被窃听和篡改,而使用消息摘要算法可以保证数据在传输过程中没有被篡改。此外,对称密钥加密和消息摘要算法具有高效性和安全性,可以满足实际应用的需求。因此,上述技术方案的技术效果是保证通信数据的机密性和完整性,具有高效性和安全性。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (8)

1.一种基于SM3摘要算法的私有网络组件通信方法,其特征在于,所述私有网络组件通信方法包括:
在数据发送方和数据接收方之间建立通信连接,并在通信连接建立之后,通信双方生成一个对称密钥,所述对称密钥用于加密和解密通信数据;
所述数据发送方利用SM3算法对通信数据进行摘要处理,生成一个固定长度的消息摘要;
所述数据发送方使用所述对称密钥对通信数据进行加密处理,获得加密后数据;
所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要,并利用消息摘要进行消息认证;
如果消息认证通过,所述数据接收方使用所述对称密钥对通信数据进行解密处理,得到明文数据。
2.根据权利要求1所述私有网络组件通信方法,其特征在于,所述数据发送方对通信数据进行摘要处理,生成一个固定长度的消息摘要,包括:
将要发送的通信数据作为输入量传递给SM3算法函数;
所述SM3算法函数对输入的通信数据进行处理,生成一个固定长度的消息摘要。
3.根据权利要求2所述私有网络组件通信方法,其特征在于,所述SM3算法函数对输入的通信数据进行处理,生成一个固定长度的消息摘要,包括:
将通信数据按照ISO/IEC 10118-3:2004标准进行填充,使其长度满足512位的倍数,形成标准长度数据;
定义一个固定的初始值,所述初始值的长度为32个字节,将所述初始值作为哈希函数的状态;
将所述标准长度数据按照512位一组进行分组迭代处理,每次迭代后更新哈希函数的状态值;
经过分组迭代后,将得到的哈希函数状态值作为最终的消息摘要,其中,所述消息摘要长度为32个字节。
4.根据权利要求1所述私有网络组件通信方法,其特征在于,所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要,并利用消息摘要进行消息认证,包括:
所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要;
所述数据接收方使用同样的SM3算法对通信数据的消息摘要进行计算,获得所述消息摘要对应的摘要值;
所述数据接收方将获得摘要值与所述数据发送方发送的摘要值进行比较;如果两个摘要值相等,则表明接收到的数据是完整的,并且没有被篡改,允许接收;如果摘要值不相等,则表明数据可能已被篡改或者存在错误,拒绝接收。
5.一种基于SM3摘要算法的私有网络组件通信系统,其特征在于,所述私有网络组件通信系统包括:
通信建立模块,用于在数据发送方和数据接收方之间建立通信连接,并在通信连接建立之后,通信双方生成一个对称密钥,所述对称密钥用于加密和解密通信数据;
摘要处理模块,用于所述数据发送方利用SM3算法对通信数据进行摘要处理,生成一个固定长度的消息摘要;
加密模块,用于所述数据发送方使用所述对称密钥对通信数据进行加密处理,获得加密后数据;
认证模块,用于所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要,并利用消息摘要进行消息认证;
解密模块,用于如果消息认证通过,所述数据接收方使用所述对称密钥对通信数据进行解密处理,得到明文数据。
6.根据权利要求5所述私有网络组件通信系统,其特征在于,所述摘要处理模块包括:
传递模块,用于将要发送的通信数据作为输入量传递给SM3算法函数;
摘要生成模块,用于所述SM3算法函数对输入的通信数据进行处理,生成一个固定长度的消息摘要。
7.根据权利要求5所述私有网络组件通信系统,其特征在于,所述摘要生成模块包括:
填充模块,用于将通信数据按照ISO/IEC 10118-3:2004标准进行填充,使其长度满足512位的倍数,形成标准长度数据;
定义模块,用于定义一个固定的初始值,所述初始值的长度为32个字节,将所述初始值作为哈希函数的状态;
迭代模块,用于将所述标准长度数据按照512位一组进行分组迭代处理,每次迭代后更新哈希函数的状态值;
摘要输出模块,用于经过分组迭代后,将得到的哈希函数状态值作为最终的消息摘要,其中,所述消息摘要长度为32个字节。
8.根据权利要求5所述私有网络组件通信系统,其特征在于,所述认证模块包括:
解密处理模块,用于所述数据接收方收到所述加密后数据之后,使用所述对称密钥对所述加密后数据进行解密处理,获得所述通信数据和附加的消息摘要;
摘要值获取模块,用于所述数据接收方使用同样的SM3算法对通信数据的消息摘要进行计算,获得所述消息摘要对应的摘要值;
比较认证模块,用于所述数据接收方将获得摘要值与所述数据发送方发送的摘要值进行比较;如果两个摘要值相等,则表明接收到的数据是完整的,并且没有被篡改,允许接收;
如果摘要值不相等,则表明数据可能已被篡改或者存在错误,拒绝接收。
CN202310628081.9A 2023-05-30 2023-05-30 一种基于sm3摘要算法的私有网络组件通信方法和系统 Pending CN116846541A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310628081.9A CN116846541A (zh) 2023-05-30 2023-05-30 一种基于sm3摘要算法的私有网络组件通信方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310628081.9A CN116846541A (zh) 2023-05-30 2023-05-30 一种基于sm3摘要算法的私有网络组件通信方法和系统

Publications (1)

Publication Number Publication Date
CN116846541A true CN116846541A (zh) 2023-10-03

Family

ID=88158982

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310628081.9A Pending CN116846541A (zh) 2023-05-30 2023-05-30 一种基于sm3摘要算法的私有网络组件通信方法和系统

Country Status (1)

Country Link
CN (1) CN116846541A (zh)

Similar Documents

Publication Publication Date Title
US9172529B2 (en) Hybrid encryption schemes
JP5307191B2 (ja) 無線通信機器とサーバとの間でのデータの安全なトランザクションのためのシステムおよび方法
EP2334008A1 (en) A system and method for designing secure client-server communication protocols based on certificateless public key infrastructure
US11831764B2 (en) End-to-end double-ratchet encryption with epoch key exchange
CN111277412B (zh) 基于区块链密钥分发的数据安全共享系统及方法
CN111585759B (zh) 一种高效的基于sm9公钥加密算法的线上线下加密方法
CN111416706B (zh) 基于秘密共享的量子保密通信系统及其通信方法
CN103155481A (zh) 具有消息恢复的数字签名的认证加密
CN101707767B (zh) 一种数据传输方法及设备
CN102469173A (zh) 基于组合公钥算法的IPv6网络层可信传输的方法和系统
CN113285959A (zh) 一种邮件加密方法、解密方法及加解密系统
CN110113150A (zh) 基于无证书环境的可否认认证的加密方法和系统
US20120284524A1 (en) Low overhead nonce construction for message security
CN111416712B (zh) 基于多个移动设备的量子保密通信身份认证系统及方法
CN111800784A (zh) 基于云计算的区块链云服务系统
WO2013039659A1 (en) Hybrid encryption schemes
CN111526131B (zh) 基于秘密共享和量子通信服务站的抗量子计算的电子公文传输方法和系统
CN112069487B (zh) 一种基于物联网的智能设备网络通讯安全实现方法
CN116846541A (zh) 一种基于sm3摘要算法的私有网络组件通信方法和系统
CN110365482B (zh) 一种数据通信方法和装置
CN109787772B (zh) 基于对称密钥池的抗量子计算签密方法和系统
CN112822015A (zh) 信息传输方法及相关装置
CN114070549A (zh) 一种密钥生成方法、装置、设备和存储介质
CN114553420B (zh) 基于量子密钥的数字信封封装方法及数据保密通信网络
CN115955302B (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