CN111130750A - 车辆can安全通信方法及系统 - Google Patents

车辆can安全通信方法及系统 Download PDF

Info

Publication number
CN111130750A
CN111130750A CN201811278594.7A CN201811278594A CN111130750A CN 111130750 A CN111130750 A CN 111130750A CN 201811278594 A CN201811278594 A CN 201811278594A CN 111130750 A CN111130750 A CN 111130750A
Authority
CN
China
Prior art keywords
random number
controller
signal
encryption algorithm
generation method
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
Application number
CN201811278594.7A
Other languages
English (en)
Other versions
CN111130750B (zh
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.)
Great Wall Motor Co Ltd
Original Assignee
Great Wall Motor 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 Great Wall Motor Co Ltd filed Critical Great Wall Motor Co Ltd
Priority to CN201811278594.7A priority Critical patent/CN111130750B/zh
Publication of CN111130750A publication Critical patent/CN111130750A/zh
Application granted granted Critical
Publication of CN111130750B publication Critical patent/CN111130750B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/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/0442Network 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 asymmetric encryption, i.e. different keys for encryption and decryption
    • 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
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • 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
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Abstract

本发明涉及车辆CAN通信领域,提供一种车辆CAN安全通信方法及系统,所述车辆CAN安全通信方法包括:基于第一加密算法和随机数序列在信号发送控制器和信号接收控制器之间执行加密握手验证操作,其中发送方随机数生成法和接收方随机数生成法用于分别在信号发送控制器和信号接收控制器中生成随机数序列;若加密握手验证操作通过,则信号发送控制器和信号接收控制器还分别基于发送方随机数生成法、接收方随机数生成法和第二加密算法,对待通信交互的原始通讯数据进行加密和解密,以安全传输原始通讯数据,其中第一加密算法不同于第二加密算法。由此,使得每次发送所使用的加密密钥都不同,且通过多重防护来保障密文难以被破解及嗅探。

Description

车辆CAN安全通信方法及系统
技术领域
本发明涉及车辆CAN通信技术领域,特别涉及一种车辆CAN安全通信方法及系统。
背景技术
目前汽车中集成的控制器数量越来越多,功能越来越复杂。现在整车中使用CAN总线连接控制器依然是主流。所以基于CAN总线的分析是整车调试与开发环节中的重点。整车中各个控制器之间重要的控制信号都是通过CAN信号进行传递。通过破解及伪造CAN报文,甚至可以影响关键控制器的行为。
现有的端到端保护机制主要是AutoSAR中所定义的E2E功能。虽然AutoSAR中的E2E功能可以探测丢帧、重复、注入、数据损坏等问题,但是其信号值依然是明文发送。又由于整车当中重要的CAN信号其实很少,而且比特位相对很少;如果明文发送,存在外部设备嗅探并破解CAN信号的可能。因此,为了防止嗅探,需要对明文的信号加密后再发送到CAN网络上。
发明内容
有鉴于此,本发明旨在提出一种车辆CAN安全通信方法,以防止CAN网络数据被嗅探,从而提高网络的安全性。
为达到上述目的,本发明的技术方案是这样实现的:
一种车辆CAN安全通信方法,应用于CAN网络中的信号发送控制器与信号接收控制器之间,其中所述信号发送控制器和所述信号接收控制器分别预配置有相匹配的发送方随机数生成法和接收方随机数生成法,所述车辆CAN安全通信方法包括:基于第一加密算法和随机数序列在所述信号发送控制器和所述信号接收控制器之间执行加密握手验证操作,其中所述发送方随机数生成法和所述接收方随机数生成法用于分别在所述信号发送控制器和所述信号接收控制器中生成随机数序列;若所述加密握手验证操作通过,则所述信号发送控制器和所述信号接收控制器还分别基于所述发送方随机数生成法、所述接收方随机数生成法和第二加密算法,对待通信交互的原始通讯数据进行加密和解密,以安全传输所述原始通讯数据,其中所述第一加密算法不同于所述第二加密算法。
进一步的,所述针对所述原始通讯数据的安全传输过程是以对称加密验证方式而进行的,其中所述针对所述原始通讯数据的安全传输过程包括:所述信号发送控制器还基于所述第二加密算法和所述发送方随机数生成法对待发送的原始通讯数据进行加密,并将加密通讯数据发送至所述信号接收控制器;所述信号接收控制器基于所述第二加密算法和所述接收方随机数生成法对所述加密通讯数据进行解密,以得到对应的所述原始通讯数据。
进一步的,所述针对所述原始通讯数据的安全传输过程包括:当所述加密算法生成的加密数据数据量超过一个CAN帧的长度时,所述信号发送控制器可以将待发送的所述原始通讯数据与约定位置的所述加密数据进行异或计算,以得到所述加密通讯数据;所述信号接收控制器基于第二加密算法和所述接收方随机数算出所述加密数据,取对应所述约定位置的所述加密数据与所接收到的所述加密通讯数据进行异或计算,以解密所述加密通讯数据。
进一步的,所述加密握手验证操作还包括基于所述随机数序列的非对称加密验证过程,其中在所述信号发送控制器和所述信号接收控制器中分别预配置有用于所述非对称加密验证过程的公钥和私钥。
进一步的,所述基于随机数序列在所述信号发送控制器和所述信号接收控制器之间执行加密握手验证操作包括:所述信号接收控制器开始运行后向所述信号发送控制器发送在线信号;当所述信号发送控制器接收到所有信号接收器的在线信号后,所述信号发送控制器调用发送方随机数法生成随机数序列首项,并经由所述第一加密算法将所述随机数序列首项结合所述公钥加密成握手请求报文,以将其发送至所述信号接收控制器;所述信号接收控制器基于所述第一加密算法和预配置的私钥从所述握手请求报文中解密出所述随机数序列首项,并基于所述接收方随机数生成法推导在所述随机数序列首项之后的随机数序列后续项;所述信号接收控制器应用所述第二加密算法并基于所述随机数序列第二项对接收方标识信息进行加密,并将加密接收方标识信息发送至所述信号发送控制器,其中所述接收方标识信息能够被所述信号接收控制器所识别;所述信号发送控制器应用所述发送方随机数生成法推导在所述随机数序列首项之后的随机数序列第二项,并利用所述第二加密算法和所述随机数序列第二项解密所述加密接收方标识信息;以及若针对所述加密接收方标识信息的解密操作成功并标识正确,则确定所述信号发送控制器和所述信号接收控制器之间成功完成二次握手。
进一步的,在确定所述信号发送控制器和所述信号接收控制器之间成功完成二次握手之后,所述车辆CAN安全通信方法还包括:所述信号发送控制器应用第二加密算法并基于随机数序列第三项对发送方标识信息进行加密以生成加密发送方标识信息,并将加密发送方标识信息发送至信号接收控制器,其中发送方标识信息能够被信号接收控制器所识别;所述信号接收控制器应用接收方随机数生成法推导在随机数序列第二项之后的校验型随机数序列第三项,并利用第二加密算法和校验型随机数序列第三项解密所述加密发送方标识信息;若成功从所述加密发送方标识信息中解密出所述发送方标识信息,则确定握手成功;以及若失败,则向所述信号发送控制器发送指示握手失败的错误信号。
进一步的,所述随机数序列是由所述信号发送控制器和所述信号接收控制器基于所述相匹配的发送方随机数生成法和接收方随机数生成法以及随机数序列首项所唯一确定的。
进一步的,所述CAN网络还用于接入供测试人员操作的下线设备,其中通过该下线设备在整车下线流程中完成对所述信号发送控制器和所述信号接收控制器中信息的预配置,该所预配置的信息包括发送方随机数生成法、所述接收方随机数生成法、以及所述第一加密算法所用的公钥和私钥。
进一步的,所述针对所述原始通讯数据的安全传输过程包括:在发送待发送的原始通讯数据时,所述信号发送控制器应用所述第二加密算法,将按序列获取的随机数作为密钥,将待发送的所述原始通讯数据帧进行加密,并将加密后的所述加密通讯数据发送至接收方;所述信号接收控制器应用所述第二加密算法和按随机数序列获取的随机数对应项作为密钥进行解密,得到对应的所述原始通讯数据。
相对于现有技术,本发明所述的车辆CAN安全通信方法具有以下优势:
本发明所述的车辆CAN安全通信方法,通过在信号发送控制器和信号接收控制器中配置相匹配的随机数生成法,并应用随机数生成法所生成的随机数序列和第一加密算法完成加密握手验证操作,在握手成功之后通过第二加密算法和随机数序列依次作为密钥进行针对原始通讯数据的安全传输。由此,一方面将随机数技术应用在CAN加密传输过程中,使得每次发送所使用的加密密钥都不同,即使是相同的数据也能得出不同的密文,从而达到防破解和防伪造的效果;另一方面,在加密握手验证阶段和数据通讯验证阶段分别采用不同的加密算法,通过多重防护来保障密文难以被破解。
本发明的另一目的在于提出一种车辆CAN安全通信系统,以防止CAN网络数据被嗅探,从而提高网络的安全性。
为达到上述目的,本发明的技术方案是这样实现的:
一种车辆CAN安全通信系统,应用于CAN网络中的信号发送控制器与信号接收控制器之间,其中所述信号发送控制器和所述信号接收控制器分别预配置有相匹配的发送方随机数生成法和接收方随机数生成法,其特征在于,所述车辆CAN安全通信系统包括:
加密握手验证单元,用于基于第一加密算法和随机数序列在所述信号发送控制器和所述信号接收控制器之间执行加密握手验证操作,其中所述发送方随机数生成法和所述接收方随机数生成法用于分别在所述信号发送控制器和所述信号接收控制器中生成随机数序列;
加密通讯传输单元,用于若所述加密握手验证操作通过,则所述信号发送控制器和所述信号接收控制器还分别基于所述发送方随机数生成法、所述接收方随机数生成法和第二加密算法,对待通信交互的原始通讯数据进行加密和解密,以安全传输所述原始通讯数据,其中所述第一加密算法不同于所述第二加密算法。
本发明的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施方式及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例的车辆CAN安全通信方法的流程图;
图2为本发明实施例的车辆CAN安全通信方法中加密握手验证操作的流程图;
图3为本发明实施例的车辆CAN安全通信方法中针对所述原始通讯数据的安全传输过程的流程图;
图4A为本发明实施例的车辆CAN安全通信方法中唤醒流程的示例;
图4B为本发明实施例的车辆CAN安全通信方法中加密握手流程下第一阶段的示例;
图4C为本发明实施例的车辆CAN安全通信方法中加密握手流程下第二阶段的示例;
图4D为本发明实施例的车辆CAN安全通信方法中加密握手流程下第三阶段的示例;
图4E为本发明实施例的车辆CAN安全通信方法中加密通讯流程的示例;
图4F为本发明实施例的车辆CAN安全通信方法中加密通讯流程以AES128的对称加密算法进行异或运算的过程的示例;
图5为本发明一实施例的车辆CAN安全通信系统的结构框图。
附图标记说明:
501 加密握手验证单元 502 加密通讯传输单元
50 车辆CAN安全通信系统
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施方式及实施方式中的特征可以相互组合。
另外,在本发明的实施方式中所提到的术语“信号接收控制器”和“信号发送控制器”,其可以是表示一次CAN通信传输中分别充当信号接收方和信号发送方的控制器,故其可以是不指代特定型号的控制器;也就是说,同一控制器在不同的通信传输中可以是只扮演信号发送控制器或信号接收控制器,可替换地,还可以是同一控制器在不同的通信传输中可以是分别扮演信号发送控制器和信号接收控制器,且都属于本发明的保护范围内。
下面将参考附图并结合实施方式来详细说明本发明。
如图1所示,本发明一实施例的车辆CAN安全通信方法,包括:
S11、基于第一加密算法和随机数序列在信号发送控制器和信号接收控制器之间执行加密握手验证操作,其中该发送方随机数生成法和该接收方随机数生成法用于分别在信号发送控制器和信号接收控制器中生成随机数序列。
本发明实施例方法可以是应用于CAN网络中的信号发送控制器与信号接收控制器之间,其中发送方随机数生成法和接收方随机数生成法是相互匹配的(例如可以是相同的),且被分别预配置在信号发送控制器和信号接收控制器中的;由此,在一次CAN通信当中,由信号发送控制器所生成的随机数序列能够与信号接收控制器所生成的随机数序列相匹配或相对应,并通过与第一加密算法相结合,就能够完成加密握手验证操作。
S12、若加密握手验证操作通过,则信号发送控制器和信号接收控制器还分别基于发送方随机数生成法、接收方随机数生成法和第二加密算法,对待通信交互的原始通讯数据进行加密和解密,以安全传输原始通讯数据,其中第一加密算法不同于第二加密算法。
具体的,在握手验证通过之后,可以是通过应用与加密握手验证操作中不同的加密算法(即第二加密算法)并结合发送方随机数生成法、接收方随机数生成法所生成的随机数序列,进行在通讯数据的安全传输,从而加大了安全传输的可靠性,更保障了CAN数据不会被破解或嗅探。
作为本发明实施例的进一步的优化和公开,加密握手验证操作还包括基于随机数序列的非对称加密验证过程,以及针对原始通讯数据的安全传输过程是以对称加密验证方式而进行的。作为示例,第一加密算法中可以是诸如RSA和/或ElGamal的非对称加密算法;以及第二加密算法可以是诸如异或加密、AES、DES、RC6和/或Twofish的对称加密算法。由此,提供了一新型的CAN加密通讯协议,并在该加密通讯协议中综合使用了非对称加密技术和对称加密技术,结合一次一密的动态密钥机制,使得关键信号无法被破解和伪造;从而提高了整车的安全特性。可以在即将到来的车联网环境中为整车的安全提供保障机制。
具体的,在具有非对称加密验证过程的加密握手验证操作中,在信号发送控制器和信号接收控制器中分别预配置有用于非对称加密验证过程的公钥和私钥。如图2所示,加密握手验证操作的示例流程包括:
S111、信号接收控制器开始运行后向信号发送控制器发送在线信号,以及当信号发送控制器接收到所有信号接收器的在线信号后,信号发送控制器调用发送方随机数法生成随机数序列首项,并经由第一加密算法将随机数序列首项结合公钥加密成握手请求报文,以将其发送至信号接收控制器。
关于该在线信号,可以是在CAN网络系统上电时,信号接收控制器被唤醒之后所自动生成并向信号发送控制器所发出的。
需说明的是,相匹配的发送方随机数生成法和接收方随机数生成法是用来生成随机数序列的方法。相同或向匹配的随机数序列由随机数生成法和随机数序列首项唯一确定。随机数生成法由发送/接收方事先约定好。随机数首项由发送方在握手时随机生成。相同的随机数生成法,由不同的随机数首项会生成不同的随机数序列。
S112、信号接收控制器基于第一加密算法和预配置的私钥从握手请求报文中解密出随机数序列首项,并基于接收方随机数生成法推导在随机数序列首项之后的随机数序列各项。
为了解密经加密的随机数序列首项,可以是利用预存储的对应于非对称加密的私钥与密文中的公钥进行匹配,由此在信号接收控制器处得到了由信号发送控制器所生成的随机数序列首项;然后,信号接收控制器可以是基于接收方随机数生成法推导在随机数序列首项之后(即下一项)的随机数序列第二项。由此,可以是表示第一次握手成功,信号接收控制器确认通信配置是允许的。
为了保障发送方确定接收方的可靠性和加解密的正确性,还需要进行二次握手,以令信号发送控制器确认通信配置是允许的,故提出了如下的S113-115。
S113、信号接收控制器应用第二加密算法并基于随机数序列第二项对接收方标识信息进行加密,并将加密接收方标识信息发送至信号发送控制器,其中接收方标识信息能够被信号发送控制器所识别。
关于该能够被信号发送控制器所识别的接收方标识信息的类型,在此应不限定,其可以是被信号发送控制器预授权的用于识别信号接收控制器的标识信息,其也还可以是通用的确认信息ACK等,且都属于本发明的保护范围内。由此,实现了通过作为对称算法的第二加密算法和随机数序列第二项对接收方标识信息进行加密。
S114、信号发送控制器应用发送方随机数生成法推导在随机数序列首项之后的校验型随机数序列第二项,并利用第二加密算法和校验型随机数序列第二项解密加密接收方标识信息。
相应地,信号发送控制器为了实现对二次握手过程中的密文的解密,其需要得出对应于密文的随机数序列,而其可以是基于发送方随机数生成法直接推导随机数序列首项后的下一次序的随机数序列来获得,以得出用于校验的校验型随机数序列第二项;进而,信号发送控制器通过第二加密算法和校验型随机数序列第二项对加密接收方标识信息进行解密。
S115、若针对加密接收方标识信息的解密操作成功并标识正确,则确认二次握手验证通过。
相应地,当信号发送控制器解密出能够识别的接收方标识信息时,确认二次握手成功,此时说明发送方确定接收方的可靠性和加解密的正确性。
为了保障接收方确定发送方的可靠性和加解密的正确性,还需要进行三次握手,以令信号发送控制器确认通信配置是允许的,故提出了如下的S116-118。
S116、信号发送控制器应用第二加密算法并基于随机数序列第三项对发送方标识信息进行加密,并将加密发送方标识信息发送至信号接收控制器,其中发送方标识信息能够被信号接收控制器所识别。
关于该能够被信号接收控制器所识别的发送方标识信息的类型,在此应不限定,其可以是被信号接收控制器预授权的用于识别信号发送控制器的标识信息,其也还可以是通用的确认信息ACK等,且都属于本发明的保护范围内。由此,实现了通过作为对称算法的第二加密算法和随机数序列第三项对发送方标识信息进行加密。
S117、信号接收控制器应用接收方随机数生成法推导在随机数序列第二项之后的校验型随机数序列第三项,并利用第二加密算法和校验型随机数序列第三项解密加密发送方标识信息。
相应地,信号接收控制器为了实现对三次握手过程中的密文的解密,其需要得出对应于密文的随机数序列,而其可以是基于接收方随机数生成法直接推导随机数序列首项后的下一次序的随机数序列来获得,以得出用于校验的校验型随机数序列第三项;进而,信号接收控制器通过第二加密算法和校验型随机数序列第三项对加密发送方标识信息进行解密。
S118、若成功从所述加密发送方标识信息中解密出所述发送方标识信息,则确认加密握手验证操作通过;以及,若失败,则向信号发送控制器发送指示握手失败的错误信号。
相应地,当信号接收控制器解密出能够被识别的发送方标识信息时,确认三次握手成功,此时说明整个流程中的随机数生成算法及通用通信条件等均是可靠的。
在一些实施方式中,当加密握手流程出错时,信号发送控制器记录故障码并指示所有信号接收控制器重新开始加密握手流程。当重试次数过多时,报整车故障,不再进行加密握手验证操作。
进一步的,在以对称加密验证方式而进行的针对所述原始通讯数据的安全传输过程中。如图3所示,针对所述原始通讯数据的安全传输过程包括:
S121、信号发送控制器还基于第二加密算法和发送方随机数生成法对待发送的原始通讯数据进行加密,并将加密通讯数据发送至信号接收控制器。
S122、信号接收控制器基于第二加密算法和接收方随机数生成法对加密通讯数据进行解密,以得到对应的原始通讯数据。
当加密算法生成的加密数据数据量超过一个CAN帧的长度时,信号发送控制器可以将待发送的原始通讯数据与约定位置的加密数据进行异或计算,以得到加密通讯数据;信号接收控制器基于第二加密算法和接收方随机数生成法(例如得出与发送方随机数相同的接收方随机数)算出加密数据,取对应约定位置的加密数据与所接收到的加密通讯数据进行异或计算,以解密加密通讯数据。
作为本发明实施例的进一步的优化和公开,CAN网络还用于接入供测试人员操作的下线设备,其中通过该下线设备在整车下线流程中完成对信号发送控制器和信号接收控制器的信息的预配置,该所预配置的信息可以是各种上述的信息,例如发送方随机数生成法和所述接收方随机数生成法,还可以是用于异或计算的预设的第一位置,还可以是非对称验证过程中所应用的公钥和私钥,还可以是在二次握手中用于相互识别的标识信息等。并且,基于下线设备,可以为每一辆都分别配置不同的上述信息,用以实现一车一密,更加防止了CAN信息被破解或嗅探。
在一些实施方式中,当信号接收控制器在加密通讯流程中发现无法完成解密或解密出的信号不合理时(意味着解密流程出错),应提示信号发送控制器解密故障,由信号发送控制器重新开始加密握手流程。当重试次数过多时,报整车故障,不再进行加密握手。
如图4A-4F所示,本发明一实施例的加密传输流程,其中以A、B、C指代具体的控制器,并且A为信号发送方,B、C为信号接收方。各个接收方是等同的,如果需要多个接收方,则与此例同理。具体的协议流程如下:
1唤醒流程:
如图4A所示,在该阶段中,控制器B和C唤醒后,分别给A发送明文的唤醒(alive)信号。当A接收到所有接收控制器的alive信号,确认所有控制器均正常工作后,进入下一流程。
2加密握手流程:
a)如图4B所示,A生成一个随机数首项RND0然后通过非对称加密方法将此随机数通过公钥加密后生成RND0*,并发往B、C;在B、C收到后通过私钥解密出随机数首项RND0。可以理解的是,随机数的位数越高,加密强度越好。如果随机数位数长于一个CAN帧的长度,可以使用多帧进行发送。
b)如图4C所示,B、C通过事先约定好的方法F生成随机数RND1,B、C使用RND1对一个已知的值TEXT进行对称加密后生成TEXT*,并将TEXT*发往A;然后,A使用相同的方法F生成随机数RND1,在收到TEXT*后使用RND1进行解密,如能够解密出TEXT,则认为接收方收到的随机数首项和生成方法F符合要求。如不能够解密出TEXT,则认为此流程失败。其中,随机数生成方法F所生成的随机数序列与随机数首项相关,即,不同的随机数首项应生成不同的随机数序列。当所有接收方均符合要求后,进行下一步阶段。
c)如图4D所示,A使用方法F生成随机数RND2,使用RND2通过对称加密算法将已知值ACK进行加密生成ACK*,并发往B、C;在B、C收到密文后,使用方法F生成随机数RND2并进行解密,如解出正确的ACK值,则可以确认发送方的随机数生成方法F符合要求,可以进行正常的加密流程。如无法解出正确的ACK值,则认为加密握手流程出错,需向A发送错误指示信息指示流程出错。
如以上各个阶段都没有错误发生,则进入加密通讯流程。
3加密通讯流程:
如图4E所示,当需要发送加密报文SIGn时,A先使用方法F按序列生成随机数RNDn+2,然后使用RNDn+2对SIGn进行对称加密后生成SIGn*发往B、C。B、C收到报文后使用相同的方法F按序列生成随机数RNDn+2,然后使用RNDn+2对SIGn*进行解密生成SIGn
在一些实施方式中,因为其生成的密文长度比一个CAN帧要长,比大多数CAN信号的长度也要长,所以可以使用密文与待发送信号异或的方式进行加密,以保障密文的完整传输。CAN帧中所填入的代表实际意义的,如车速、油门踏板开度等的信号。一个CAN帧中可以有多个CAN信号。如图4F所示,以AES128的对称加密算法为例,可以是发送方A使用随机密钥RNDn与一段数据PSEED进行加密生成密文OUTPUT。假设SIGn为两字节长度,可以使其与密文中的两个字节异或生成加密后的密文SIGn*。B收到密文SIGn*后,使用随机密钥RNDn与相同数据PSEED进行加密生成相同的密文OUTPUT,用SIGn*与相同位置的数据异或后即可得到原始数据SIGn。具体的,SIGn可以是一个信号或一组信号。例如,SIGn可以由SIGAn和SIGBn组成,其中SIGA为定值,且SIGB为变量,通过判断SIGA是否为已知的定值,可以确定当前解密出的信号是否正确。
优选地,加密流程中所用到的priv key、pub key、PSEED、TEXT、ACK等值可以通过下线设备在整车下线流程中动态写入各个控制器,做到一车一密。
在本发明实施例中,在确认各个控制器功能正常后,使用非对称加密的方式将随机数首项加密后广播给所有接受方;并且,可以使用对称加密算法对待发送的CAN信号进行加密,其中对称加密的密钥为由随机数首项和随机数生成方法F确定的随机序列;每一帧报文的加密密钥随机而均不同,使得相同的CAN信号加密后的密文都不一样,增大了CAN信号破解强度。
如图5所示,本发明一实施例的车辆CAN安全通信系统50,应用于CAN网络中的信号发送控制器与信号接收控制器之间,其中所述信号发送控制器和所述信号接收控制器分别预配置有相匹配的发送方随机数生成法和接收方随机数生成法,所述车辆CAN安全通信系统50包括:
加密握手验证单元501,用于基于第一加密算法和随机数序列在所述信号发送控制器和所述信号接收控制器之间执行加密握手验证操作,其中所述发送方随机数生成法和所述接收方随机数生成法用于分别在所述信号发送控制器和所述信号接收控制器中生成随机数序列;
加密通讯传输单元502,用于若所述加密握手验证操作通过,则所述信号发送控制器和所述信号接收控制器还分别基于所述发送方随机数生成法、所述接收方随机数生成法和第二加密算法,对待通信交互的原始通讯数据进行加密和解密,以安全传输所述原始通讯数据,其中所述第一加密算法不同于所述第二加密算法。
本发明实施例又一方面提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行本申请上述的车辆CAN安全通信方法。
关于本发明实施例的机器可读存储介质和车辆CAN安全通信系统更多的细节,可以是参照上文关于车辆CAN安全通信方法实施例的描述,并能获得与车辆CAN安全通信方法实施例相同或相应的技术效果,故在此便不对其加以赘述。
以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施例对各种可能的组合方式不再另行说明。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种车辆CAN安全通信方法,应用于CAN网络中的信号发送控制器与信号接收控制器之间,其中所述信号发送控制器和所述信号接收控制器分别预配置有相匹配的发送方随机数生成法和接收方随机数生成法,其特征在于,所述车辆CAN安全通信方法包括:
基于第一加密算法和随机数序列在所述信号发送控制器和所述信号接收控制器之间执行加密握手验证操作,其中所述发送方随机数生成法和所述接收方随机数生成法用于分别在所述信号发送控制器和所述信号接收控制器中生成随机数序列;
若所述加密握手验证操作通过,则所述信号发送控制器和所述信号接收控制器还分别基于所述发送方随机数生成法、所述接收方随机数生成法和第二加密算法,对待通信交互的原始通讯数据进行加密和解密,以安全传输所述原始通讯数据,其中所述第一加密算法不同于所述第二加密算法。
2.根据权利要求1所述的车辆CAN安全通信方法,其特征在于,针对所述原始通讯数据的安全传输过程是以对称加密验证方式而进行的,其中所述针对所述原始通讯数据的安全传输过程包括:
所述信号发送控制器还基于所述第二加密算法和所述发送方随机数生成法对待发送的原始通讯数据进行加密,并将加密通讯数据发送至所述信号接收控制器;
所述信号接收控制器基于所述第二加密算法和所述接收方随机数生成法对所述加密通讯数据进行解密,以得到对应的所述原始通讯数据。
3.根据权利要求2所述的车辆CAN安全通信方法,其特征在于,所述针对所述原始通讯数据的安全传输过程包括:
当所述加密算法生成的加密数据数据量超过一个CAN帧的长度时,所述信号发送控制器可以将待发送的所述原始通讯数据与约定位置的所述加密数据进行异或计算,以得到所述加密通讯数据;
所述信号接收控制器基于第二加密算法和所述接收方随机数生成法算出所述加密数据,取对应所述约定位置的所述加密数据与所接收到的所述加密通讯数据进行异或计算,以解密所述加密通讯数据。
4.根据权利要求1所述的车辆CAN安全通信方法,其特征在于,所述加密握手验证操作还包括基于所述随机数序列的非对称加密验证过程,其中在所述信号发送控制器和所述信号接收控制器中分别预配置有用于所述非对称加密验证过程的公钥和私钥。
5.根据权利要求4所述的车辆CAN安全通信方法,其特征在于,所述基于随机数序列在所述信号发送控制器和所述信号接收控制器之间执行加密握手验证操作包括:
所述信号接收控制器开始运行后向所述信号发送控制器发送在线信号,以及当所述信号发送控制器接收到所有信号接收器的在线信号后,所述信号发送控制器调用发送方随机数法生成随机数序列首项,并经由所述第一加密算法将所述随机数序列首项结合所述公钥加密成握手请求报文,以将其发送至所述信号接收控制器;
所述信号接收控制器基于所述第一加密算法和预配置的私钥从所述握手请求报文中解密出所述随机数序列首项,并基于所述接收方随机数生成法推导在所述随机数序列首项之后的随机数序列后续项;
所述信号接收控制器应用所述第二加密算法并基于所述随机数序列第二项对接收方标识信息进行加密,并将加密接收方标识信息发送至所述信号发送控制器,其中所述接收方标识信息能够被所述信号接收控制器所识别;
所述信号发送控制器应用所述发送方随机数生成法推导在所述随机数序列首项之后的随机数序列第二项,并利用所述第二加密算法和所述随机数序列第二项解密所述加密接收方标识信息,以及
若针对所述加密接收方标识信息的解密操作成功并标识正确,则确定所述信号发送控制器和所述信号接收控制器之间成功完成二次握手。
6.根据权利要求5所述的车辆CAN安全通信方法,其特征在于,在确定所述信号发送控制器和所述信号接收控制器之间成功完成二次握手之后,所述车辆CAN安全通信方法还包括:
所述信号发送控制器应用第二加密算法并基于随机数序列第三项对发送方标识信息进行加密以生成加密发送方标识信息,并将加密发送方标识信息发送至信号接收控制器,其中发送方标识信息能够被信号接收控制器所识别;
所述信号接收控制器应用接收方随机数生成法推导在随机数序列第二项之后的校验型随机数序列第三项,并利用第二加密算法和校验型随机数序列第三项解密所述加密发送方标识信息,
若成功从所述加密发送方标识信息中解密出所述发送方标识信息,则确定加密握手验证操作通过,以及
若失败,则向所述信号发送控制器发送指示握手失败的错误信号。
7.根据权利要求1所述的车辆CAN安全通信方法,其特征在于,所述随机数序列是由所述信号发送控制器和所述信号接收控制器基于所述相匹配的发送方随机数生成法和接收方随机数生成法以及随机数序列首项所唯一确定的。
8.根据权利要求1-7中任一项所述的方法,其特征在于,所述CAN网络还用于接入供测试人员操作的下线设备,其中通过该下线设备在整车下线流程中完成对所述信号发送控制器和所述信号接收控制器中信息的预配置,该所预配置的信息包括发送方随机数生成法、所述接收方随机数生成法、以及所述第一加密算法所用的公钥和私钥。
9.根据权利要求2所述的车辆CAN安全通信方法,其特征在于,所述针对所述原始通讯数据的安全传输过程包括:
在发送待发送的原始通讯数据时,所述信号发送控制器应用所述第二加密算法,将按序列获取的随机数作为密钥,将待发送的所述原始通讯数据帧进行加密,并将加密后的所述加密通讯数据发送至接收方;
所述信号接收控制器应用所述第二加密算法和按随机数序列获取的随机数对应项作为密钥进行解密,得到对应的所述原始通讯数据。
10.一种车辆CAN安全通信系统,应用于CAN网络中的信号发送控制器与信号接收控制器之间,其中所述信号发送控制器和所述信号接收控制器分别预配置有相匹配的发送方随机数生成法和接收方随机数生成法,其特征在于,所述车辆CAN安全通信系统包括:
加密握手验证单元,用于基于第一加密算法和随机数序列在所述信号发送控制器和所述信号接收控制器之间执行加密握手验证操作,其中所述发送方随机数生成法和所述接收方随机数生成法用于分别在所述信号发送控制器和所述信号接收控制器中生成随机数序列;
加密通讯传输单元,用于若所述加密握手验证操作通过,则所述信号发送控制器和所述信号接收控制器还分别基于所述发送方随机数生成法、所述接收方随机数生成法和第二加密算法,对待通信交互的原始通讯数据进行加密和解密,以安全传输所述原始通讯数据,其中所述第一加密算法不同于所述第二加密算法。
CN201811278594.7A 2018-10-30 2018-10-30 车辆can安全通信方法及系统 Active CN111130750B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811278594.7A CN111130750B (zh) 2018-10-30 2018-10-30 车辆can安全通信方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811278594.7A CN111130750B (zh) 2018-10-30 2018-10-30 车辆can安全通信方法及系统

Publications (2)

Publication Number Publication Date
CN111130750A true CN111130750A (zh) 2020-05-08
CN111130750B CN111130750B (zh) 2023-09-12

Family

ID=70484554

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811278594.7A Active CN111130750B (zh) 2018-10-30 2018-10-30 车辆can安全通信方法及系统

Country Status (1)

Country Link
CN (1) CN111130750B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114157489A (zh) * 2021-12-02 2022-03-08 安徽江淮汽车集团股份有限公司 基于周期性鉴权握手机制的通信域控制器安全通信方法
CN114422219A (zh) * 2022-01-06 2022-04-29 浙江数秦科技有限公司 一种基于降维多项式的数据加密传输方法
CN115225334A (zh) * 2022-06-23 2022-10-21 中国银行股份有限公司 防重放方法及装置
WO2023151553A1 (zh) * 2022-02-08 2023-08-17 格力博(江苏)股份有限公司 一种数据交互方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104065482A (zh) * 2014-06-06 2014-09-24 宇龙计算机通信科技(深圳)有限公司 一种通过密文握手增加终端自刷机安全性的方法及装置
CN105049401A (zh) * 2015-03-19 2015-11-11 浙江大学 一种基于智能车的安全通信方法
US20170034167A1 (en) * 2015-07-30 2017-02-02 Helder Silvestre Paiva Figueira Method for a Dynamic Perpetual Encryption Cryptosystem
US20170237718A1 (en) * 2014-10-27 2017-08-17 Alibaba Group Holding Limited Method and apparatus for secure network communications
WO2018076365A1 (zh) * 2016-10-31 2018-05-03 美的智慧家居科技有限公司 密钥协商方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104065482A (zh) * 2014-06-06 2014-09-24 宇龙计算机通信科技(深圳)有限公司 一种通过密文握手增加终端自刷机安全性的方法及装置
US20170237718A1 (en) * 2014-10-27 2017-08-17 Alibaba Group Holding Limited Method and apparatus for secure network communications
CN105049401A (zh) * 2015-03-19 2015-11-11 浙江大学 一种基于智能车的安全通信方法
US20170034167A1 (en) * 2015-07-30 2017-02-02 Helder Silvestre Paiva Figueira Method for a Dynamic Perpetual Encryption Cryptosystem
WO2018076365A1 (zh) * 2016-10-31 2018-05-03 美的智慧家居科技有限公司 密钥协商方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114157489A (zh) * 2021-12-02 2022-03-08 安徽江淮汽车集团股份有限公司 基于周期性鉴权握手机制的通信域控制器安全通信方法
CN114422219A (zh) * 2022-01-06 2022-04-29 浙江数秦科技有限公司 一种基于降维多项式的数据加密传输方法
CN114422219B (zh) * 2022-01-06 2024-02-27 浙江数秦科技有限公司 一种基于降维多项式的数据加密传输方法
WO2023151553A1 (zh) * 2022-02-08 2023-08-17 格力博(江苏)股份有限公司 一种数据交互方法及系统
CN115225334A (zh) * 2022-06-23 2022-10-21 中国银行股份有限公司 防重放方法及装置
CN115225334B (zh) * 2022-06-23 2024-04-19 中国银行股份有限公司 防重放方法及装置

Also Published As

Publication number Publication date
CN111130750B (zh) 2023-09-12

Similar Documents

Publication Publication Date Title
US11606341B2 (en) Apparatus for use in a can system
CN106411521B (zh) 用于量子密钥分发过程的身份认证方法、装置及系统
CN111130750B (zh) 车辆can安全通信方法及系统
US9252945B2 (en) Method for recognizing a manipulation of a sensor and/or sensor data of the sensor
CN103166958B (zh) 一种文件的保护方法及系统
US8577039B2 (en) Cryptographic communication apparatus and cryptographic communication system
US7991998B2 (en) Secure proximity verification of a node on a network
CN111147225A (zh) 基于双密值和混沌加密的可信测控网络认证方法
CN112702318A (zh) 一种通讯加密方法、解密方法、客户端及服务端
CN113114621B (zh) 一种用于公交调度系统的通信方法及公交调度系统
KR102017758B1 (ko) 의료 기기, 게이트웨이 기기 및 이를 이용한 프로토콜 보안 방법
CN110753321A (zh) 一种车载tbox与云服务器的安全通信方法
CN112383395B (zh) 密钥协商方法及装置
CN111080299B (zh) 一种交易信息的防抵赖方法及客户端、服务器
CN104836784A (zh) 一种信息处理方法、客户端和服务器
CN111914291A (zh) 消息处理方法、装置、设备及存储介质
KR20160020866A (ko) 폐쇄형 네트워크에서 암복호화 서비스 제공 시스템 및 방법
KR102219086B1 (ko) 드론(Unnamed Aerial vehicle)시스템을 위한 HMAC기반의 송신원 인증 및 비밀키 공유 방법 및 시스템
CN113221136B (zh) Ais数据传输方法、装置、电子设备和存储介质
CN114978542B (zh) 面向全生命周期的物联网设备身份认证方法、系统及存储介质
CN110995671A (zh) 一种通信方法及系统
KR20170032210A (ko) 차량용 데이터 통신 방법 및 그를 이용하는 차량용 전자 제어 장치 및 시스템
KR102236282B1 (ko) 차량용 통신 데이터 인증 방법 및 시스템
CN104883260A (zh) 证件信息处理和验证方法、处理终端及验证服务器
CN113115309B (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
GR01 Patent grant
GR01 Patent grant