CN112636898A - 基于通信网络的通信方法、装置和系统 - Google Patents
基于通信网络的通信方法、装置和系统 Download PDFInfo
- Publication number
- CN112636898A CN112636898A CN201910907548.7A CN201910907548A CN112636898A CN 112636898 A CN112636898 A CN 112636898A CN 201910907548 A CN201910907548 A CN 201910907548A CN 112636898 A CN112636898 A CN 112636898A
- Authority
- CN
- China
- Prior art keywords
- authentication code
- message authentication
- fresh value
- message
- target 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.)
- Granted
Links
Images
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/06—Cryptographic 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0625—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- 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/06—Cryptographic 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0631—Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
-
- 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/06—Cryptographic 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/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Power Engineering (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请提出一种基于通信网络的通信方法、装置和系统,其中,该方法在通信网络中的发送节点生成待生成报文的过程中,结合待生成报文的明文数据、新鲜值和预共享密钥生成原始消息认证码,并结合新鲜值和原始消息认证码,得到用于放入报文的第一目标消息认证码,并根据明文数据、新鲜值的预设有效位部分和第一目标消息认证码组成报文,并将报文通过通信网络发送给接收节点。由此,使得放入报文中的第一目标消息认证码由新鲜值和原始消息认证码共同决定,新鲜值或者原始消息认证码的不同都会导致放入报文里的第一目标消息认证码不同,增加了报文的安全性,增加了报文被破解难度,保证了报文传输的安全可靠性。
Description
技术领域
本申请涉及信息安全技术领域,尤其涉及一种基于通信网络的通信方法、装置和系统。
背景技术
随着车联网技术发展越来越快,以后甚至可以把汽车当作手机、电脑,可以通过汽车社交、办公甚至玩游戏。这极大地丰富了用户的日常生活,但也增加了攻击者通过主机等联网节点攻击车载网络的风险。攻击者可以通过主机等联网节点模拟发送控制汽车扭矩、转向、启停等功能的报文,影响车辆的运行甚至造成车祸。在车载网络中,有效保证报文的安全可靠性,对保证车辆的车载网络安全是十分重要,因此,实现汽车数据的安全传输是目前亟需解决的技术问题。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请第一个目的在于提出一种基于通信网络的通信方法,使得放入报文中的第一目标消息认证码由新鲜值和原始消息认证码共同决定,新鲜值或者原始消息认证码的不同都会导致放入报文里的第一目标消息认证码不同,增加了报文的安全性,增加了报文被破解难度,保证了通信网络中报文传输的安全可靠性。
本申请第二个目的在于提出一种基于通信网络的通信方法。
本申请第三个目的在于提出一种基于通信网络的通信装置。
本申请第四个目的在于提出一种基于通信网络的通信装置。
本申请第五个目的在于提出一种基于通信网络的通信系统。
本申请第六个目的在于提出一种车载设备。
本申请第七个目的在于提出一种计算机可读存储介质。
为达上述目的,本申请第一方面实施例提出了一种基于通信网络的通信方法,所述通信网络包括发送节点和接收节点,其中,所述发送节点和所述接收节点各自保存有预共享密钥,所述方法应用在所述发送节点中,所述方法包括:根据待生成报文的明文数据、新鲜值和所述预共享密钥生成原始消息认证码;根据所述新鲜值和所述原始消息认证码,确定第一目标消息认证码;根据所述明文数据、所述新鲜值的预设有效位部分和所述第一目标消息认证码组成所述报文,并将所述报文通过所述通信网络发送给所述接收节点。
本申请实施例的基于通信网络的通信方法,在通信网络中的发送节点生成待生成报文的过程中,结合待生成报文的明文数据、新鲜值和预共享密钥生成原始消息认证码,并结合放入报文中的第一目标消息认证码的字节长度,对原始消息认证码进行分组,以得到多组原始消息认证码片段,并结合新鲜值和多组原始消息认证码片段,确定出第一目标消息认证码,以及根据明文数据、新鲜值的预设有效位部分和第一目标消息认证码组成报文,并将报文通过通信网络发送给接收节点。由此,使得放入报文中的第一目标消息认证码由新鲜值和原始消息认证码共同决定,新鲜值或者原始消息认证码的不同都会导致放入报文里的第一目标消息认证码不同,增加了报文的安全性,增加了报文被破解难度,保证了通信网络中报文传输的安全可靠性。
为达上述目的,本申请第二方面实施例提出了一种基于通信网络的通信方法,所述通信网络包括发送节点和接收节点,其中,所述发送节点和所述接收节点各自保存有预共享密钥,所述方法应用在所述接收节点中,所述方法包括:通过所述通信网络接收所述发送节点的报文;根据所述报文中新鲜值的预设有效位部分,重构新鲜值;根据重构的新鲜值、所述报文中的明文数据和所述预共享密钥,生成原始消息认证码;根据所述重构的新鲜值和所述原始消息认证码,确定第二目标消息认证码;比较所述第二目标消息认证码与所述报文中的第一目标消息认证码是否一致,如果一致,则确认所述报文有效,如果不一致,则将所述报文丢弃。
本申请实施例的基于通信网络的通信方法,接收节点通过通信网络接收发送节点的报文,并根据报文中新鲜值的预设有效位部分,重构新鲜值,以及根据重构的新鲜值、报文中的明文数据和预共享密钥,生成原始消息认证码,并根据重构的新鲜值和原始消息认证码,确定第二目标消息认证码,然后,比较第二目标消息认证码与报文中的第一目标消息认证码是否一致,如果一致,则确认报文有效,否则将报文丢弃。由此,结合接收节点所重构的新鲜值以及所生成的原始消息认证码确定出第二目标消息认证码,并结合确定出的第二目标消息认证码确定报文是否有效,增加了破解难度,提高了报文的安全性。
为达上述目的,本申请第三方面实施例提出了一种基于通信网络的通信装置,所述通信网络包括发送节点和接收节点,其中,所述发送节点和所述接收节点各自保存有预共享密钥,所述装置应用在所述发送节点中,所述装置包括:第一生成模块,用于根据待生成报文的明文数据、新鲜值和所述预共享密钥生成原始消息认证码;第一确定模块,用于根据所述新鲜值和所述原始消息认证码,确定第一目标消息认证码;处理模块,用于根据所述明文数据、所述新鲜值的预设有效位部分和所述第一目标消息认证码组成所述报文,并将所述报文通过所述通信网络发送给所述接收节点。
本申请实施例的基于通信网络的通信装置,在通信网络中的发送节点生成待生成报文的过程中,结合待生成报文的明文数据、新鲜值和预共享密钥生成原始消息认证码,并结合放入报文中的第一目标消息认证码的字节长度,对原始消息认证码进行分组,以得到多组原始消息认证码片段,并结合新鲜值和多组原始消息认证码片段,确定出第一目标消息认证码,以及根据明文数据、新鲜值的预设有效位部分和第一目标消息认证码组成报文,并将报文通过通信网络发送给接收节点。由此,使得放入报文中的第一目标消息认证码由新鲜值和原始消息认证码共同决定,新鲜值或者原始消息认证码的不同都会导致放入报文里的第一目标消息认证码不同,增加了报文的安全性,增加了报文被破解难度,保证了通信网络中报文传输的安全可靠性。
为达上述目的,本申请第四方面实施例提出了一种基于通信网络的通信装置,所述通信网络包括发送节点和接收节点,其中,所述发送节点和所述接收节点各自保存有预共享密钥,所述装置应用在所述接收节点中,所述装置包括:接收模块,用于通过所述通信网络接收所述发送节点的报文;重构模块,用于根据所述报文中新鲜值的预设有效位部分,重构新鲜值;第二生成模块,用于根据重构的新鲜值、所述报文中的明文数据和所述预共享密钥,生成原始消息认证码;第二确定模块,用于根据所述重构的新鲜值和所述原始消息认证码,确定第二目标消息认证码;比较模块,用于比较所述第一目标消息认证码与所述报文中的第一目标消息认证码是否一致,如果一致,则确认所述报文有效,如果不一致,则将所述报文丢弃。
本申请实施例的基于通信网络的通信装置,通过通信网络接收发送节点的报文,并根据报文中新鲜值的预设有效位部分,重构新鲜值,以及根据重构的新鲜值、报文中的明文数据和预共享密钥,生成原始消息认证码,并根据重构的新鲜值和原始消息认证码,确定第二目标消息认证码,然后,比较第二目标消息认证码与报文中的第一目标消息认证码是否一致,如果一致,则确认报文有效,否则将报文丢弃。由此,结合接收节点所重构的新鲜值以及所生成的原始消息认证码确定出第二目标消息认证码,并结合确定出的第二目标消息认证码确定报文是否有效,增加了破解难度,提高了报文的安全性。
为达上述目的,本申请第五方面实施例提出了一种基于通信网络的通信系统,所述系统包括发送节点和接收节点,其中,所述发送节点和所述接收节点各自保存有预共享密钥,其中:所述发送节点,用于根据待生成报文的明文数据、新鲜值和所述预共享密钥生成原始消息认证码,并根据所述新鲜值和所述原始消息认证码,确定第一目标消息认证码;以及根据所述明文数据、所述新鲜值的预设有效位部分和所述第一目标消息认证码组成所述报文,并将所述报文通过所述通信网络发送给所述接收节点。
为达上述目的,本申请第六方面实施例提出了一种车载设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现本申请第一方面实施例所述的基于通信网络的通信方法,或者本申请第二方面实施例的基于通信网络的通信方法。
为了实现上述目的,本申请第七方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本申请第一方面实施例所述的基于通信网络的通信方法,或者本申请第二方面实施例的基于通信网络的通信方法。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本申请一个实施例的基于通信网络的通信方法的流程示意图;
图2是根据本申请另一个实施例的基于通信网络的通信方法的流程示意图;
图3是根据新鲜值和原始消息认证码,确定第一目标消息认证码的细化流程示意图一;
图4是根据新鲜值和原始消息认证码,确定第一目标消息认证码的细化流程示意图二;
图5是根据本申请另一个实施例的基于通信网络的通信方法的流程示意图;
图6是根据报文中新鲜值的预设有效位部分,重构新鲜值的细化流程示意图;
图7是根据本申请一个实施例的基于通信网络的通信装置的结构示意图;
图8是根据本申请另一个实施例的基于通信网络的通信装置的结构示意图;
图9是根据本申请一个实施例的基于通信网络的通信系统的结构示意图;
图10是基于通信网络的通信系统中发送节点和接收节点的交互过程示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的基于通信网络的通信方法、装置和系统。
图1是根据本申请一个实施例的基于通信网络的通信方法的流程示意图。如图1所示,该基于通信网络的通信方法包括:
步骤101,根据待生成报文的明文数据、新鲜值和预共享密钥生成原始消息认证码。
在本实施例中,通信网络包括发送节点和接收节点,其中,发送节点和接收节点各自保存有预共享密钥。
其中,本实施例中的通信网络为车辆内部所使用的通信网络,本实施例以汽车内部所使用的通信网络为车载网络,报文为车载报文为例进行描述。
其中,本实施例的基于通信网络的通信方法应用在发送节点中。
发送节点可以为任意通过通信网络发送报文的设备,例如,发送节点可以为车载电子控制单元ECU、车载智能终端等,该实施例对此不作具体限定。
接收节点可以包括但不限于车载电子控制单元ECU、车载智能终端等,该实施例对此不作具体限定。
在本实施例中,在获取明文数据,以及待生成报文的新鲜值后,可采用预设的MAC生成算法,生成原始消息认证码(Message Authentication Code,MAC)。
其中,明文数据是没有加密的数据。
其中,需要说明的是,后续实施例中接收节点所使用的MAC生成算法与本实施例中发送节点所使用的MAC生成算法相同。其中,MAC生成算法可以包括但不限于Hash算法、数据加密标准(Data Encryption Standard,DES)算法、高级加密标准(Advanced EncryptionStandard,AES)算法等,该实施例对此不作具体限定。
其中,根据所使用的MAC生成算法不同,可将原始消息认证码分为两种,一种是以Hash函数(如MD5、SHA-1、SHA-2、SHA-256、SHA-512等)作为认证算法设计的MAC;另一种是以分组加密算法(如DES、AES等)为基础认证算法设计的MAC。
其中,本实施例中的新鲜值是通过发送节点上的新鲜值生成模块预先生成的。
其中,新鲜值是用于保持报文新鲜性的,新鲜值可以分为时间戳新鲜值和计数器新鲜值两种。
本案实施例中以新鲜值为计数器新鲜值为例进行描述。
步骤102,根据新鲜值和原始消息认证码,确定第一目标消息认证码。
其中,需要说明的是,为了进一步保证报文的安全性,对于相同标识(IDentity,ID)的每条报文而言,其各自对应的新鲜值是不相同,即,相同ID的每条报文的新鲜值不相同。因此,对于每个报文而言,根据新鲜值和原始消息认证码所确定出用于放入报文的第一目标消息认证码也会不同,从而大大增加了破解的难度,进一步保证了报文的安全性。
其中,需要说明的是,在不同应用场景中,根据新鲜值和原始消息认证码,确定第一目标消息认证码的方式不同,举例说明如下:
作为一种示例,可通过新鲜值对原始消息认证码进行异或处理,并将异或处理后的MAC作为第一目标消息认证码。
作为另一种示例,可通过预先分组规则,对原始消息认证码以预设位数为单位进行分组,以得到多组原始消息认证码片段,并结合新鲜值和原始消息认证码的分组总数,确定出用于组成第一目标消息认证码的第一组目标消息认证码片段,并根据这组目标消息认证码片段获取之后下一组目标消息认证码片段,然后,根据下一组目标消息认证码片段获取下下一组目标消息认证码片段,如此迭代下去,直至得到第一目标消息认证码的各组目标消息认证码片段,最后根据所得到的各组目标消息认证码片段,确定出第一目标消息认证码。
其中,第一目标消息认证码的目标消息认证码片段总数是根据第一目标消息认证码的字节长度以及预设位数决定的,例如,第一目标消息认证码的字节长度为2个字节,预设位数为4位,则第一目标消息认证码的目标消息认证码片段总数为4,又例如,第一目标消息认证码的字节长度为2个字节,预设位数为2位,则第一目标消息认证码的目标消息认证码片段总数为8,即,第一目标消息认证码是由8组目标MAC片段组成的。
其中,需要说明的是,本实施例中的原始消息认证码和第一目标消息认证码的字节长度可以相同,也可以不相同,本实施例对此不作具体限定。
步骤103,根据明文数据、新鲜值的预设有效位部分和第一目标消息认证码组成报文,并将报文通过通信网络发送给接收节点。
在本实施例中,在获取待生成报文的新鲜值之后,为了进一步增加报文的安全性,可对新鲜值进行分析,以获取新鲜值的预设有效位部分。
在本实施例中,为了使得接收节点后续可基于接收到的报文中的信息重构新鲜值,新鲜值的预设有效位部分可以为新鲜值的低有效位部分。
其中,低有效位部分由新鲜值的最低有效位到第K位有效位上各个有效位上的取值组成,其中,K为大于或者等于1的整数。
其中,本实施例的新鲜值包括低有效位部分和高有效部分,高有效位部分是由预设新鲜值的最高有效位到第K+1位有效位上各个有效位上的取值组成。
本申请实施例的基于通信网络的通信方法,在通信网络中的发送节点生成待生成报文的过程中,结合待生成报文的明文数据、新鲜值和预共享密钥生成原始消息认证码,并结合新鲜值和原始消息认证码,得到用于放入报文的第一目标消息认证码,并根据明文数据、新鲜值的预设有效位部分和第一目标消息认证码组成报文,并将报文通过通信网络发送给接收节点。由此,使得放入报文中的第一目标消息认证码由新鲜值和原始消息认证码共同决定,新鲜值或者原始消息认证码的不同都会导致放入报文里的第一目标消息认证码不同,增加了报文的安全性,增加了报文被破解难度,保证了通信网络中报文传输的安全可靠性。
本公开实施例提供另一种基于通信网络的通信方法,该方法是对图1所示的方法的进一步扩展和优化。
图2是根据本申请另一个实施例的基于通信网络的通信方法的流程示意图。
如图2所示,该基于通信网络的通信方法包括:
步骤201,根据待生成报文的明文数据、新鲜值和预共享密钥生成原始消息认证码。
步骤202,根据第一目标消息认证码的字节长度,将8N位的原始消息认证码以H位为单位进行分组,以得到多组原始消息认证码片段,其中,H为大于或者等于2,且小于或者等于4N的正整数,且小于或者等于所述第一目标消息认证码的字节长度。
其中,第一目标消息认证码的字节长度可以为一个字节,或者多个字节。
在本实施例中,为了在不加大运算量的前提下提高报文MAC的安全性,本实施例结合放入报文中的第一目标消息认证码的字节长度,对原始消息认证码进行分组,并根据新鲜值和原始消息认证码的分组结果,确定出第一目标消息认证码。
下面结合第一目标消息认证码的字节长度的具体情况,对根据第一目标消息认证码的字节长度,将8N位的原始消息认证码以H位为单位进行分组进行描述。
作为一种示例,在第一目标消息认证码的字节长度为一个字节时,将8N位的原始消息认证码以2位或者4位为单元进行分组,以得到多组原始消息认证码片段。
作为一种示例,在第一目标消息认证码的字节长度为大于一个字节时,可将8N位的原始消息认证码以8位为单元进行分组,以获取多组原始消息认证码片段。也就是说,以1个字节为单位将原始消息认证码进行分组。
例如,根据明文数据、新鲜值与共享密钥计算出的原始消息认证码为0xD25423A764D9 FF43 1356 0005A190 11C6,假设放入报文里的第一目标消息认证码的字节长度M为3,此时,按照一个字节为单位对原始消息认证码进行分组,可以得到16组原始消息认证码片段,16组原始消息认证码片段分别为:0xD2 0x54 0x23 0xA7 0x64 0xD9 0xFF 0x430x130x56 0x00 0x05 0xA1 0x90 0x11 0xC6。其中,在本示例中,每组原始消息认证码片段是以16进制的方式进行表示。
步骤203,根据新鲜值和原始消息认证码分组总数,从多组原始消息认证码片段中确定出第一目标消息认证码。
其中,可以理解的是,通常报文中存放的MAC字节越长,其安全性越好,然而,由于报文的有限数据量,在本实施例中,为了不加大运算量的情况下大大增强了报文的安全性,结合新鲜值和原始消息认证码分组总数,从多组原始消息认证码片段中确定出第一目标消息认证码。
其中,本实施例中的第一目标消息认证码的字节数小于原始消息认证码片段的字节数。
在本实施例中,在字节长度为1时,在以4位为单位对8N位的原始消息认证码进行分组后,可以得到2N组原始消息认证码片段,即,原始消息认证码分组总数为2N,根据新鲜值和原始消息认证码分组总数,从多组原始消息认证码片段中确定出第一目标消息认证码的具体实现方式为:根据新鲜值对原始消息认证码分组总数的取余值,确定第一组标识,并将多组原始消息认证码片段中与第一组标识对应的MAC作为第一目标消息认证码的第一组目标消息认证码片段;根据第一组目标消息认证码片段对原始消息认证码分组总数的取余值,确定第二组标识,并将多组原始消息认证码片段中与第二组标识对应的MAC组作为第一目标消息认证码的第二组目标消息认证码片段;根据第一目标消息认证码的第一组目标消息认证码片段和第二组目标消息认证码片段,确定第一目标消息认证码。
下面结合图3对当放入报文里的第一目标消息认证码的字节数为1时,根据新鲜值和原始消息认证码,确定第一目标消息认证码的具体过程进行描述,如图3所示:
步骤301,将所有8N位的原始消息认证码值分成0到2N-1组数据,每组数据含有4位MAC值。
也就是说,按照4位为一组对原始消息认证码进行分组,以得2N组原始消息认证码片段。
其中,需要说明的是,对于每个原始消息认证码片段,其所对应的组标识是不同的。
步骤302,用新鲜值除以2N得到余数i作为第一组标识,并将该第一组标识对应的原始消息认证码片段作为第一组目标消息认证码片段。
步骤303,用第一组目标消息认证码片段除以2N得到余数j,将余数j作为第二组标识,将与第二组标识对应的原始消息认证码片段作为第一目标消息认证码的第一组目标消息认证码片段。
步骤304,根据预设组合规则,将第一组目标消息认证码片段和第二组目标消息认证码片段组成第一目标消息认证码。
其中,需要说明的是,可以令报文里低有效4位MAC值等于第i组数据,令报文里高有效4位MAC值等于第j组数据。当然,也可以令报文里高有效部分等于第j组数据,报文中低有效4位MAC值等于第j组数据。
具体地,将第i组原始消息认证码片段的取值对2N取余。
上述方式获得的第一目标消息认证码的效果为:新鲜度值计数是在变化的,明文数据的报文变化,从而导致原始的MAC就是变化的,从而MAC片段也是变化的,每一时刻取的是哪个MAC片段又是变化的,所以第一目标消息认证码的获得存在很多变量,MAC即使是一个字节的长度也很难被破解,对于车载通信数据量有限的情况下,以数据量少的MAC提高了安全性。
在本实施例中,在字节长度为M时,H为8,M为大于1的正整数时,根据新鲜值和原始消息认证码分组总数,从多组原始消息认证码片段中确定出第一目标消息认证码可以包括:将新鲜值对原始消息认证码分组总数的取余值,作为第三组标识,并将多组原始消息认证码片段中与第三组标识对应的MAC组作为第一目标消息认证码的第一组目标消息认证码片段;针对第一目标消息认证码的第i组目标消息认证码片段,将第一目标消息认证码的第i-1组第一目标消息认证码片段对原始消息认证码分组总数的取余值,作为第四组标识,并将多组原始消息认证码片段中与第四组标识对应的MAC作为第一目标消息认证码的第i组第一目标消息认证码片段,其中,i=2,……,M;根据第一目标消息认证码的每组目标消息认证码片段,生成第一目标消息认证码。
下面结合图4,对当放入报文里的MAC值字节数M大于1时,根据新鲜值和原始消息认证码,确定第一目标消息认证码的具体过程进行描述,如图4所示,可以包括:
步骤401,将原始消息认证码分成0到N-1组数据,每组数据含有1个字节的原始消息认证码片段,设放入报文里的第一目标消息认证码的字节数为M,令计数器i=1。
步骤402,用新鲜值除以N得到的余数X,令Yi等于第X组原始消息认证码片段。
步骤403,用Yi除以N得到的余数X,令计数器i自加1。
步骤404,令Yi等于第X组原始消息认证码片段。
步骤405,判断计数器i是否小于放入报文里的第一目标消息认证码字节数M,如果小于,则跳回步骤403,否则进行下一步。
步骤406,选取的M字节第一目标消息认证码就是(Y1…YM)。
其中,需要说明的是,在获取第一目标消息认证码的目标消息认证码片段Y1到目标消息认证码片段YM后,可按照预设的组合顺序,将目标消息认证码片段Y1到目标消息认证码片段YM生成第一目标消息认证码。其中,需要说明的是,图4中是按照先目标消息认证码片段Y1,然后目标消息认证码片段Y2,…目标消息认证码片段YM的顺序生成第一目标消息认证码。
上述方式获得的第一目标消息认证码的效果,其与MAC为1个字节的效果的区别,报文中应用超过一个字节的目标MAC,并结合新鲜值以及目标MAC的字节长度从多组原始MAC片段确定出目标MAC,通过增加报文中的目标MAC的字节长度进一步增加了报文被难被破解,进一步提高了通信安全性。
为了使本领域技术人员清楚了解本申请根据新鲜值和原始消息认证码,确定第一目标消息认证码的具体过程,下面结合一个具体例子对根据新鲜值和原始消息认证码,确定第一目标消息认证码进行描述。
例如,采用的加密算法为AES加密算法(即计算出的MAC值有128位也就是16个字节),某一条报文的新鲜值为0x000005,采用AES加密算法,根据明文、新鲜值与共享密钥计算出的原始消息认证码值为0xD254 23A7 64D9 FF43 1356 0005A190 11C6,放入报文里的第一目标消息认证码值字节数M=3。
根据图4的方法,确定出放入报文的第一目标消息认证码的流程如下:
1、将原始消息认证码分成0到15组数据,分别为0xD2 0x54 0x23 0xA7 0x64 0xD90xFF0x43 0x13 0x56 0x00 0x05 0xA1 0x90 0x11 0xC6,令计数器i=1;
2、用新鲜值为0x000005除以16得余数5,令Y1=0xD9(第5组MAC值);
3、用Y1除以16得余数9,令计数器i自加1,也就是说计数器i从1变成2;
4、令Y2=0x56(第9组MAC值);
5、判断计数器i是否小于放入报文里的MAC值字节数M,显然i=2小于M=3;
6、用Y2除以16得余数6,令计数器i自加1,也就是说计数器i从2变成3;
7、令Y3=0xFF(第6组MAC值);
8、判断计数器i是否小于放入报文里的第一目标消息认证码字节数M,显然i=3不小于M=3;
9、选取的3字节MAC值就是(Y1…Y3)=0xD956FF。
其中,需要说明的是,上述示例中仅是按照先Y1,后Y2,最后Y3的顺序组合成第一目标消息认证码进行示意,在实际应用中,还可以结合其他顺序组合成第一目标消息认证码,例如,可按照先Y3,后Y2,最后Y1的顺序组合成第一目标消息认证码,
步骤205,根据明文数据、新鲜值的预设有效位部分和第一目标消息认证码组成报文,并将报文通过通信网络发送给接收节点。
本申请实施例的基于通信网络的通信方法,在通信网络中的发送节点生成待生成报文的过程中,结合待生成报文的明文数据、新鲜值和预共享密钥生成原始消息认证码,并结合放入报文中的第一目标消息认证码的字节长度,对原始消息认证码进行分组,以得到多组原始消息认证码片段,并结合新鲜值和多组原始消息认证码片段,确定出第一目标消息认证码,以及根据明文数据、新鲜值的预设有效位部分和第一目标消息认证码组成报文,并将报文通过通信网络发送给接收节点。由此,使得放入报文中的第一目标消息认证码由新鲜值和原始消息认证码共同决定,新鲜值或者原始消息认证码的不同都会导致放入报文里的第一目标消息认证码不同,增加了报文的安全性,增加了报文被破解难度,保证了通信网络中报文传输的安全可靠性。
图5是根据本申请另一个实施例的基于通信网络的通信方法的流程示意图。其中,需要说明的是,本实施例从接收节点对本实施例的基于通信网络的通信方法进行描述,如图5所示,该方法可以包括:
步骤501,通过通信网络接收发送节点的报文。
步骤502,根据报文中新鲜值的预设有效位部分,重构新鲜值。
在本实施例中,新鲜值的预设有效位部分可以为新鲜值的低有效位部分,
其中,低有效位部分由新鲜值的最低有效位到第K位有效位上各个有效位上的取值组成,其中,K为大于或者等于1的整数。
其中,高有效位部分是由预设新鲜值的最高有效位到第K+1位有效位上各个有效位上的取值组成。
在新鲜值的预设有效位部分为新鲜值的低有效位部分时,根据报文中新鲜值的预设有效位部分,重构新鲜值的具体实现过程,如图6所示,可以包括:
步骤601,将报文中新鲜值的低有效位部分与预设新鲜值的低有效位部分进行大小比较。
其中,预设新鲜值为发送节点所发送的上一个报文的新鲜值。
步骤602,如果报文中新鲜值的低有效位部分大于预设新鲜值的低有效位部分,则将预设新鲜值的高有效位部分和报文中新鲜值的低有效位部分进行拼接,以重构新鲜值,其中,预设新鲜值的高有效位部分由预设新鲜值的最高有效位到第K+1位有效位上各个有效位上的取值组成。
步骤603,如果报文中新鲜值的低有效位部分小于预设新鲜值的低有效位部分,则将预设新鲜值的高有效位部分的取值加上1之后再拼接新鲜值的低有效位部分,以重构新鲜值。
其中,需要说明的是,由于报文的有限数据量,发送节点一般会截取新鲜度值的低有效位放入报文里,而接收节点接收到初始化后第一帧报文默认新鲜度值的高有效位全为零,从而将全为零的新鲜度值的高有效位与报文里的新鲜度值的低有效位串联起来作为该报文的新鲜度值。在本实施例中,为了保证在所有节点初始化完成之前发送节点的新鲜度值的高有效位全为零,避免接收节点一直认为该报文无效情况的发生,可获取节点完成初始化的时间为T,而各节点报文的最小周期为t,则初始化这段时间节点最多发送T/t帧报文。因此,可根据T/t预先确定出K的取值,其中,K大于T/t,可以解决接收节点一直认为该报文无效情况的发生。
步骤503,根据重构的新鲜值、报文中的明文数据和预共享密钥,生成原始消息认证码。
步骤504,根据重构的新鲜值和原始消息认证码,确定第二目标消息认证码。
其中,需要说明的是,接收节点根据重构的新鲜值和原始消息认证码,确定第二目标消息认证码的方式与发送节点根据重构的新鲜值和原始消息认证码,确定第二目标消息认证码的方式相同,前述的相关解释说明也适用于本实施,此处不再赘述。
步骤505,比较第二目标消息认证码与报文中的第一目标消息认证码是否一致,如果一致,则执行步骤506,若否,则执行步骤507。
步骤506,确认报文有效。
步骤507,将报文丢弃。
本申请实施例的基于通信网络的通信方法,接收节点通过通信网络接收发送节点的报文,并根据报文中新鲜值的预设有效位部分,重构新鲜值,以及根据重构的新鲜值、报文中的明文数据和预共享密钥,生成原始消息认证码,并根据重构的新鲜值和原始消息认证码,确定第二目标消息认证码,然后,比较第二目标消息认证码与报文中的第一目标消息认证码是否一致,如果一致,则确认报文有效,否则将报文丢弃。由此,结合接收节点所重构的新鲜值以及所生成的原始消息认证码确定出第二目标消息认证码,并结合确定出的第二目标消息认证码确定报文是否有效,增加了破解难度,提高了报文的安全性。
为了实现上述实施例,本申请还提出一种基于通信网络的通信装置。
图7是根据本申请一个实施例的基于通信网络的通信装置的结构示意图。
如图7所示,通信网络包括发送节点和接收节点,其中,发送节点和接收节点各自保存有预共享密钥,装置应用在发送节点中,该基于通信网络的通信装置可以包括:
第一生成模块110,用于根据待生成报文的明文数据、新鲜值和预共享密钥生成原始消息认证码。
第一确定模块120,用于根据新鲜值和原始消息认证码,确定第一目标消息认证码。
处理模块130,用于根据明文数据、新鲜值的预设有效位部分和第一目标消息认证码组成报文,并将报文通过通信网络发送给接收节点。
在本申请一个实施例中,原始消息认证码的位数为8N,N为大于或者等于1的正整数,如图7所示,第一确定模块120可以包括:
获取单元121,用于获取为第一目标消息认证码预先设置的字节长度。
分组单元122,用于根据字节长度,将8N位的原始消息认证码以H位为单位进行分组,以得到多组原始消息认证码片段,其中,H为大于或者等于2,且小于或者等于4N的正整数,且小于或者等于所述字节长度。
确定单元123,用于根据新鲜值和原始消息认证码分组总数,从多组原始消息认证码片段中确定出第一目标消息认证码。
在本申请一个实施例中,在字节长度为1时,H为4,确定单元123,具体用于:根据新鲜值对原始消息认证码分组总数的取余值,确定第一组标识,并将多组原始消息认证码片段中与第一组标识对应的MAC作为第一目标消息认证码的第一组目标消息认证码片段。根据第一组目标消息认证码片段对原始消息认证码分组总数的取余值,确定第二组标识,并将多组原始消息认证码片段中与第二组标识对应的MAC组作为第一目标消息认证码的第二组目标消息认证码片段。根据第一目标消息认证码的第一组目标消息认证码片段和第二组目标消息认证码片段,确定第一目标消息认证码。
在本申请一个实施例中,在字节长度为M时,H为8,M为大于1的正整数,确定单元123具体用于:将新鲜值对原始消息认证码分组总数的取余值,作为第三组标识,并将多组原始消息认证码片段中与第三组标识对应的MAC组作为第一目标消息认证码的第一组目标消息认证码片段。针对第一目标消息认证码的第i组目标消息认证码片段,将第一目标消息认证码的第i-1组第一目标消息认证码片段对原始消息认证码分组总数的取余值,作为第四组标识,并将多组原始消息认证码片段中与第四组标识对应的MAC作为第一目标消息认证码的第i组第一目标消息认证码片段,其中,i=2,……,M。根据第一目标消息认证码的每组第一目标消息认证码片段,生成第一目标消息认证码。
在本申请一个实施例中,新鲜值的预设有效位部分为新鲜值的低有效位部分,低有效位部分由新鲜值的最低有效位到第K位有效位上各个有效位上的取值组成,其中,K为大于或者等于1的整数。
其中,需要说明的是,前述对基于通信网络的通信方法实施例的解释说明也适用于本实施例的基于通信网络的通信装置,此处不再赘述。
本申请实施例的基于通信网络的通信装置,在通信网络中的发送节点生成待生成报文的过程中,结合待生成报文的明文数据、新鲜值和预共享密钥生成原始消息认证码,并结合放入报文中的第一目标消息认证码的字节长度,对原始消息认证码进行分组,以得到多组原始消息认证码片段,并结合新鲜值和多组原始消息认证码片段,确定出第一目标消息认证码,以及根据明文数据、新鲜值的预设有效位部分和第一目标消息认证码组成报文,并将报文通过通信网络发送给接收节点。由此,使得放入报文中的第一目标消息认证码由新鲜值和原始消息认证码共同决定,新鲜值或者原始消息认证码的不同都会导致放入报文里的第一目标消息认证码不同,增加了报文的安全性,增加了报文被破解难度,保证了通信网络中报文传输的安全可靠性。
为了实现上述实施例,本申请还提出一种基于通信网络的通信装置。
图8是根据本申请另一个实施例的基于通信网络的通信装置的结构示意图。
如图8所示,通信网络包括发送节点和接收节点,其中,发送节点和接收节点各自保存有预共享密钥,装置应用在接收节点中,该基于通信网络的通信装置可以包括:
接收模块210,用于通过通信网络接收发送节点的报文。
重构模块220,用于根据报文中新鲜值的预设有效位部分,重构新鲜值。
第二生成模块230,用于根据重构的新鲜值、报文中的明文数据和预共享密钥,生成原始消息认证码。
第二确定模块240,用于根据重构的新鲜值和原始消息认证码,确定第一目标消息认证码。
比较模块250,用于比较第一目标消息认证码与报文中的第一目标消息认证码是否一致,如果一致,则确认报文有效,如果不一致,则将报文丢弃。
在本申请一个实施例中,新鲜值的预设有效位部分为新鲜值的低有效位部分,低有效位部分由新鲜值的最低有效位到第K位有效位上各个有效位上的取值组成,K为大于或者等于1的整数,重构模块220,具体用于:将报文中新鲜值的低有效位部分与预设新鲜值的低有效位部分进行大小比较,其中,预设新鲜值为发送节点所发送的上一个报文的新鲜值。如果报文中新鲜值的低有效位部分大于预设新鲜值的低有效位部分,则将预设新鲜值的高有效位部分和报文中新鲜值的低有效位部分进行拼接,以重构新鲜值,其中,预设新鲜值的高有效位部分由预设新鲜值的最高有效位到第K+1位有效位上各个有效位上的取值组成。
在本申请一个实施例中,重构模块220,还用于:如果报文中新鲜值的低有效位部分小于预设新鲜值的低有效位部分,则将预设新鲜值的高有效位部分的取值加上1之后再拼接新鲜值的低有效位部分,以重构新鲜值。
其中,需要说明的是,前述对基于通信网络的通信方法实施例的解释说明也适用于本实施例的基于通信网络的通信装置,此处不再赘述。
本申请实施例的基于通信网络的通信装置,通过通信网络接收发送节点的报文,并根据报文中新鲜值的预设有效位部分,重构新鲜值,以及根据重构的新鲜值、报文中的明文数据和预共享密钥,生成原始消息认证码,并根据重构的新鲜值和原始消息认证码,确定第二目标消息认证码,然后,比较第二目标消息认证码与报文中的第一目标消息认证码是否一致,如果一致,则确认报文有效,否则将报文丢弃。由此,结合接收节点所重构的新鲜值以及所生成的原始消息认证码确定出第二目标消息认证码,并结合确定出的第二目标消息认证码确定报文是否有效,增加了破解难度,提高了报文的安全性。
为了实现上述实施例,本申请还提出一种基于通信网络的通信系统。
图9是根据本申请一个实施例的基于通信网络的通信系统的结构示意图。
如图9所示,系统包括发送节点10和接收节点20,其中,发送节点10和接收节点20各自保存有预共享密钥,其中:
发送节点10,用于根据待生成报文的明文数据、新鲜值和预共享密钥生成原始消息认证码,并根据新鲜值和原始消息认证码,确定第一目标消息认证码;以及根据明文数据、新鲜值的预设有效位部分和第一目标消息认证码组成报文,并将报文通过通信网络发送给接收节点20。
在本申请的一个实施例中,接收节点20,用于通过通信网络接收发送节点10的报文;根据报文中新鲜值的预设有效位部分,重构新鲜值;根据重构的新鲜值、报文中的明文数据和预共享密钥,生成原始消息认证码;根据重构的新鲜值和原始消息认证码,确定第一目标消息认证码;比较第一目标消息认证码与报文中的第一目标消息认证码是否一致,如果一致,则确认报文有效,如果不一致,则将报文丢弃。
其中,需说明的是,前述对基于通信网络的方法以及装置的相关解释也适用于本实施例的基于通信网络的通信系统,此处不再赘述。
本申请实施例的基于通信网络的通信系统,在通信网络中的发送节点生成待生成报文的过程中,结合待生成报文的明文数据、新鲜值和预共享密钥生成原始消息认证码,并结合新鲜值和原始消息认证码,得到用于放入报文的第一目标消息认证码,并根据明文数据、新鲜值的预设有效位部分和第一目标消息认证码组成报文,并将报文通过通信网络发送给接收节点。由此,使得放入报文中的第一目标消息认证码由新鲜值和原始消息认证码共同决定,新鲜值或者原始消息认证码的不同都会导致放入报文里的第一目标消息认证码不同,增加了报文的安全性,增加了报文被破解难度,保证了通信网络中报文传输的安全可靠性。
下面结合图10对本实施例的基于通信网络的通信系统中发送节点和接收节点的交互过程进行描述。其中,需要说明的是,本实施例中以明文数据之后拼接新鲜值的低有效位部分,新鲜值的低有效位部分之后拼接第一目标消息认证码的方式组成报文。
如图10所示,发送节点先采用预设的MAC算法,根据待生成报文的明文数据、新鲜值和共享的密钥生成原始消息认证码,然后,结合新鲜值和原始消息认证码,选取MAC,并将选取的MAC作为第一目标消息认证码。之后,将明文数据之后拼接新鲜值的低有效位部分,新鲜值的低有效位部分之后拼接第一目标消息认证码的方式组成报文,之后,发送节点通过通信网络将所生成的报文发送给接收节点。
其中,需要说明的是,发送节点结合新鲜值和原始消息认证码,得到第一目标消息认证码的具体实现方式可参见上述实施例的相关部分,此处不再赘述。
对应地,接收节点接收发送节点发送的报文,然后,接收节点对报文进行解析,从报文中获取明文数据、新鲜值的低有效位部分,并根据新鲜值的低有效位部分重构新鲜值,然后,采用预设的MAC算法根据明文数据、重构的新鲜值和共享的密钥,生成原始消息认证码,然后,根据重构的新鲜值和原始消息认证码,得到第二目标消息认证码,然后,将得到的第二目标消息认证码与报文中的第一目标消息认证码比较是否一致,如果一致,则确定报文有效,如果不一致,则确定报文无效,将报文丢弃。
为了实现上述实施例,本申请还提出一种车载设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现上述实施例中的基于通信网络的通信方法。
为了实现上述实施例,本申请还提出一种计算机可读存储介质其上存储有计算机程序,该程序被处理器执行时实现上述实施例的基于通信网络的通信方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (12)
1.一种基于通信网络的通信方法,其特征在于,所述通信网络包括发送节点和接收节点,其中,所述发送节点和所述接收节点各自保存有预共享密钥,所述方法应用在所述发送节点中,所述方法包括:
根据待生成报文的明文数据、新鲜值和所述预共享密钥生成原始消息认证码;
根据所述新鲜值和所述原始消息认证码,确定第一目标消息认证码;
根据所述明文数据、所述新鲜值的预设有效位部分和所述第一目标消息认证码组成所述报文,并将所述报文通过所述通信网络发送给所述接收节点。
2.如权利要求1所述的方法,其特征在于,所述原始消息认证码的位数为8N,N为大于或者等于1的正整数,所述根据所述新鲜值和所述原始消息认证码,确定第一目标消息认证码,包括:
根据所述第一目标消息认证码的字节长度,将8N位的所述原始消息认证码以H位为单位进行分组,以得到多组原始消息认证码片段,其中,H为大于或者等于2,且小于或者等于4N的正整数,且小于或者等于所述第一目标消息认证码的字节长度;
根据所述新鲜值和原始消息认证码分组总数,从所述多组原始消息认证码片段中确定出所述第一目标消息认证码。
3.如权利要求2所述的方法,其特征在于,在所述字节长度为1时,所述H为4,所述根据所述新鲜值和原始消息认证码分组总数,从所述多组原始消息认证码片段中确定出所述第一目标消息认证码,包括:
根据所述新鲜值对所述原始消息认证码分组总数的取余值,确定第一组标识,并将所述多组原始消息认证码片段中与第一组标识对应的原始消息认证码片段作为所述第一目标消息认证码的第一组目标消息认证码片段;
根据所述第一组目标消息认证码片段对所述原始消息认证码分组总数的取余值,确定第二组标识,并将所述多组原始消息认证码片段中与第二组标识对应的原始消息认证码片段作为所述第一目标消息认证码的第二组目标消息认证码片段;
根据所述第一目标消息认证码的第一组目标消息认证码片段和第二组目标消息认证码片段,确定所述第一目标消息认证码。
4.如权利要求2所述的方法,其特征在于,在所述字节长度为M时,所述H为8,所述M为大于1的正整数,所述根据所述新鲜值和原始消息认证码分组总数,从所述多组原始消息认证码片段中确定出所述第一目标消息认证码,包括:
将所述新鲜值对所述原始消息认证码分组总数的取余值,作为第三组标识,并将所述多组原始消息认证码片段中与所述第三组标识对应的原始消息认证码片段作为所述第一目标消息认证码的第一组目标消息认证码片段;
针对所述第一目标消息认证码的第i组目标消息认证码片段,将所述第一目标消息认证码的第i-1组目标消息认证码片段对所述原始消息认证码分组总数的取余值,作为第四组标识,并将所述多组原始消息认证码片段中与所述第四组标识对应的原始消息认证码片段作为所述第一目标消息认证码的第i组目标消息认证码片段,其中,i=2,……,M;
根据所述第一目标消息认证码的每组目标消息认证码片段,生成所述第一目标消息认证码。
5.如权利要求1-4任一项所述的方法,其特征在于,所述新鲜值的预设有效位部分为所述新鲜值的低有效位部分,所述低有效位部分由所述新鲜值的最低有效位到第K位有效位上各个有效位上的取值组成,其中,K为大于或者等于1的整数。
6.一种基于通信网络的通信方法,其特征在于,所述通信网络包括发送节点和接收节点,其中,所述发送节点和所述接收节点各自保存有预共享密钥,所述方法应用在所述接收节点中,所述方法包括:
通过所述通信网络接收所述发送节点的报文;
根据所述报文中新鲜值的预设有效位部分,重构新鲜值;
根据重构的新鲜值、所述报文中的明文数据和所述预共享密钥,生成原始消息认证码;
根据所述重构的新鲜值和所述原始消息认证码,确定第二目标消息认证码;
比较所述第二目标消息认证码与所述报文中的第一目标消息认证码是否一致,如果一致,则确认所述报文有效,如果不一致,则将所述报文丢弃。
7.如权利要求6所述的方法,其特征在于,所述新鲜值的预设有效位部分为所述新鲜值的低有效位部分,所述低有效位部分由所述新鲜值的最低有效位到第K位有效位上各个有效位上的取值组成,K为大于或者等于1的整数,所述根据所述报文中新鲜值的预设有效位部分,重构新鲜值,包括:
将所述报文中新鲜值的低有效位部分与预设新鲜值的低有效位部分进行大小比较,其中,所述预设新鲜值为所述发送节点所发送的上一个报文的新鲜值;
如果所述报文中新鲜值的低有效位部分大于所述预设新鲜值的低有效位部分,则将所述预设新鲜值的高有效位部分和所述报文中新鲜值的低有效位部分进行拼接,以重构新鲜值,其中,所述预设新鲜值的高有效位部分由所述预设新鲜值的最高有效位到第K+1位有效位上各个有效位上的取值组成;
如果所述报文中新鲜值的低有效位部分小于所述预设新鲜值的低有效位部分,则将所述预设新鲜值的高有效位部分的取值加上1之后再拼接所述新鲜值的低有效位部分,以重构新鲜值。
8.一种基于通信网络的通信装置,其特征在于,所述通信网络包括发送节点和接收节点,其中,所述发送节点和所述接收节点各自保存有预共享密钥,所述装置应用在所述发送节点中,所述装置包括:
第一生成模块,用于根据待生成报文的明文数据、新鲜值和所述预共享密钥生成原始消息认证码;
第一确定模块,用于根据所述新鲜值和所述原始消息认证码,确定第一目标消息认证码;
处理模块,用于根据所述明文数据、所述新鲜值的预设有效位部分和所述第一目标消息认证码组成所述报文,并将所述报文通过所述通信网络发送给所述接收节点。
9.一种基于通信网络的通信装置,其特征在于,所述通信网络包括发送节点和接收节点,其中,所述发送节点和所述接收节点各自保存有预共享密钥,所述装置应用在所述接收节点中,所述装置包括:
接收模块,用于通过所述通信网络接收所述发送节点的报文;
重构模块,用于根据所述报文中新鲜值的预设有效位部分,重构新鲜值;
第二生成模块,用于根据重构的新鲜值、所述报文中的明文数据和所述预共享密钥,生成原始消息认证码;
第二确定模块,用于根据所述重构的新鲜值和所述原始消息认证码,确定第二目标消息认证码;
比较模块,用于比较所述第二目标消息认证码与所述报文中的第一目标消息认证码是否一致,如果一致,则确认所述报文有效,如果不一致,则将所述报文丢弃。
10.一种基于通信网络的通信系统,其特征在于,所述系统包括发送节点和接收节点,其中,所述发送节点和所述接收节点各自保存有预共享密钥,其中:
所述发送节点,用于根据待生成报文的明文数据、新鲜值和所述预共享密钥生成原始消息认证码,并根据所述新鲜值和所述原始消息认证码,确定第一目标消息认证码;以及根据所述明文数据、所述新鲜值的预设有效位部分和所述第一目标消息认证码组成所述报文,并将所述报文通过所述通信网络发送给所述接收节点。
11.如权利要求10所述的系统,其特征在于,所述接收节点,用于通过所述通信网络接收所述发送节点的报文;根据所述报文中新鲜值的预设有效位部分,重构新鲜值;根据重构的新鲜值、所述报文中的明文数据和所述预共享密钥,生成原始消息认证码;根据所述重构的新鲜值和所述原始消息认证码,确定第二目标消息认证码;比较所述第二目标消息认证码与所述报文中的第一目标消息认证码是否一致,如果一致,则确认所述报文有效,如果不一致,则将所述报文丢弃。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一项所述的基于通信网络的通信方法,或者如权利要求6-7中任一项所述的基于通信网络的通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910907548.7A CN112636898B (zh) | 2019-09-24 | 2019-09-24 | 基于通信网络的通信方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910907548.7A CN112636898B (zh) | 2019-09-24 | 2019-09-24 | 基于通信网络的通信方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112636898A true CN112636898A (zh) | 2021-04-09 |
CN112636898B CN112636898B (zh) | 2023-03-14 |
Family
ID=75282933
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910907548.7A Active CN112636898B (zh) | 2019-09-24 | 2019-09-24 | 基于通信网络的通信方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112636898B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113541955A (zh) * | 2021-06-03 | 2021-10-22 | 国电南瑞科技股份有限公司 | 一种安控系统2m通信的加密方法及装置 |
CN113992331A (zh) * | 2021-11-15 | 2022-01-28 | 苏州挚途科技有限公司 | 车载以太网数据传输方法、装置及系统 |
CN114760096A (zh) * | 2022-03-11 | 2022-07-15 | 延锋伟世通电子科技(上海)有限公司 | 网络通讯加密策略mac实现方法、系统、发送端及接收端 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101720539A (zh) * | 2007-03-21 | 2010-06-02 | 诺基亚西门子通信有限责任两合公司 | 密钥刷新sae/lte系统 |
US8265593B2 (en) * | 2007-08-27 | 2012-09-11 | Alcatel Lucent | Method and system of communication using extended sequence number |
CN102761560A (zh) * | 2012-08-01 | 2012-10-31 | 飞天诚信科技股份有限公司 | 一种验证信息完整性的方法和系统 |
CN102917313A (zh) * | 2012-10-17 | 2013-02-06 | 重庆邮电大学 | 一种适用于无线传感器网络广播认证的方法 |
CN103428204A (zh) * | 2013-07-29 | 2013-12-04 | 杭州华三通信技术有限公司 | 一种可抵御计时攻击的数据安全实现方法及设备 |
CN104943626A (zh) * | 2014-03-28 | 2015-09-30 | 比亚迪股份有限公司 | 车辆故障辅助系统及用于车辆故障辅助系统的辅助方法 |
US20160142436A1 (en) * | 2013-07-02 | 2016-05-19 | Telefonaktiebolaget L M Ericsson (Publ) | Methods, nodes and computer programs for reduction of undesired energy consumption of a server node |
US20170195878A1 (en) * | 2014-06-05 | 2017-07-06 | Kddi Corporation | Communication network system, transmission node, reception node, and message checking method |
US9705678B1 (en) * | 2014-04-17 | 2017-07-11 | Symantec Corporation | Fast CAN message authentication for vehicular systems |
CN108075897A (zh) * | 2016-11-07 | 2018-05-25 | 福特全球技术公司 | 控制器局域网消息认证 |
CN108781164A (zh) * | 2016-03-14 | 2018-11-09 | Kddi株式会社 | 通信网络系统、车辆、计数器值通知节点、计数器值共享方法以及计算机程序 |
CN109417685A (zh) * | 2018-09-28 | 2019-03-01 | 北京小米移动软件有限公司 | 直连通信的数据传输方法、装置、设备及系统 |
CN109428853A (zh) * | 2017-08-21 | 2019-03-05 | 华为技术有限公司 | 一种通信方法和相关设备 |
CN110098939A (zh) * | 2019-05-07 | 2019-08-06 | 浙江中控技术股份有限公司 | 消息认证方法及装置 |
-
2019
- 2019-09-24 CN CN201910907548.7A patent/CN112636898B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101720539A (zh) * | 2007-03-21 | 2010-06-02 | 诺基亚西门子通信有限责任两合公司 | 密钥刷新sae/lte系统 |
US8265593B2 (en) * | 2007-08-27 | 2012-09-11 | Alcatel Lucent | Method and system of communication using extended sequence number |
CN102761560A (zh) * | 2012-08-01 | 2012-10-31 | 飞天诚信科技股份有限公司 | 一种验证信息完整性的方法和系统 |
CN102917313A (zh) * | 2012-10-17 | 2013-02-06 | 重庆邮电大学 | 一种适用于无线传感器网络广播认证的方法 |
US20160142436A1 (en) * | 2013-07-02 | 2016-05-19 | Telefonaktiebolaget L M Ericsson (Publ) | Methods, nodes and computer programs for reduction of undesired energy consumption of a server node |
CN103428204A (zh) * | 2013-07-29 | 2013-12-04 | 杭州华三通信技术有限公司 | 一种可抵御计时攻击的数据安全实现方法及设备 |
CN104943626A (zh) * | 2014-03-28 | 2015-09-30 | 比亚迪股份有限公司 | 车辆故障辅助系统及用于车辆故障辅助系统的辅助方法 |
US9705678B1 (en) * | 2014-04-17 | 2017-07-11 | Symantec Corporation | Fast CAN message authentication for vehicular systems |
US20170195878A1 (en) * | 2014-06-05 | 2017-07-06 | Kddi Corporation | Communication network system, transmission node, reception node, and message checking method |
CN108781164A (zh) * | 2016-03-14 | 2018-11-09 | Kddi株式会社 | 通信网络系统、车辆、计数器值通知节点、计数器值共享方法以及计算机程序 |
CN108075897A (zh) * | 2016-11-07 | 2018-05-25 | 福特全球技术公司 | 控制器局域网消息认证 |
CN109428853A (zh) * | 2017-08-21 | 2019-03-05 | 华为技术有限公司 | 一种通信方法和相关设备 |
CN109417685A (zh) * | 2018-09-28 | 2019-03-01 | 北京小米移动软件有限公司 | 直连通信的数据传输方法、装置、设备及系统 |
CN110098939A (zh) * | 2019-05-07 | 2019-08-06 | 浙江中控技术股份有限公司 | 消息认证方法及装置 |
Non-Patent Citations (2)
Title |
---|
TOMOYA TATARA ECT.: "Updating A Secret Key for MAC Implemented on CAN Using Broadcast Encryption Scheme", 《2019 34TH INTERNATIONAL TECHNICAL CONFERENCE ON CIRCUITS/SYSTEMS, COMPUTERS AND COMMUNICATIONS (ITC-CSCC)》 * |
李明揆等: "FlexRay总线的安全加密认证研究", 《信息与电脑(理论版)》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113541955A (zh) * | 2021-06-03 | 2021-10-22 | 国电南瑞科技股份有限公司 | 一种安控系统2m通信的加密方法及装置 |
CN113992331A (zh) * | 2021-11-15 | 2022-01-28 | 苏州挚途科技有限公司 | 车载以太网数据传输方法、装置及系统 |
CN114760096A (zh) * | 2022-03-11 | 2022-07-15 | 延锋伟世通电子科技(上海)有限公司 | 网络通讯加密策略mac实现方法、系统、发送端及接收端 |
Also Published As
Publication number | Publication date |
---|---|
CN112636898B (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108965218B (zh) | 一种控制器区域网总线安全通信方法、装置及系统 | |
CN108075897B (zh) | 控制器局域网消息认证 | |
Woo et al. | Can id shuffling technique (cist): Moving target defense strategy for protecting in-vehicle can | |
CN111491299B (zh) | 车辆通信网络中的数据消息认证系统及认证方法 | |
CN107094108B (zh) | 连接到数据总线的部件和在该部件中实现加密功能的方法 | |
US9443107B2 (en) | Method for protecting the integrity of a group of memory elements using an aggregate authentication code | |
CN110545175B (zh) | 一种针对充电桩与电动汽车通信协议的安全认证方法 | |
JP6034998B1 (ja) | 暗号鍵を共有するためのシステム | |
US20230188983A1 (en) | Secure wireless protocol for wireless sensor networks | |
CN112636898B (zh) | 基于通信网络的通信方法、装置和系统 | |
CN110191467B (zh) | 一种物联网设备的鉴权方法、设备、装置及存储介质 | |
EP2890047B1 (en) | Key processing method and apparatus | |
Dahmen et al. | Short hash-based signatures for wireless sensor networks | |
CN112134693B (zh) | 密钥加密存储方法、获取方法及其装置 | |
CN115499124B (zh) | 一种数据传输方法、系统及电动汽车 | |
Soliman et al. | Digital signature and authentication mechanisms using new customized hash function for cognitive radio networks | |
US9083489B2 (en) | Block encryption method and apparatus | |
US10608822B2 (en) | Efficient calculation of message authentication codes for related data | |
CN113489589A (zh) | 数据加密、解密方法、装置及电子设备 | |
CN112152790A (zh) | 一种数据加密方法、解密方法、加密装置和解密装置 | |
US8150030B2 (en) | Cryptographic hashing device and method | |
RP | Keyed-CAHASH: a new fast keyed hash function based on cellular automata for authentication | |
CN113536355B (zh) | 会话密钥的生成方法及装置 | |
CN117675199B (zh) | 一种基于rpa的网络安全防御系统 | |
CN111740819B (zh) | 一种适用于plc的时间基一次性密码方法及系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |