CN117097559A - Eps转向角度报文传输验证方法 - Google Patents
Eps转向角度报文传输验证方法 Download PDFInfo
- Publication number
- CN117097559A CN117097559A CN202311337271.1A CN202311337271A CN117097559A CN 117097559 A CN117097559 A CN 117097559A CN 202311337271 A CN202311337271 A CN 202311337271A CN 117097559 A CN117097559 A CN 117097559A
- Authority
- CN
- China
- Prior art keywords
- steering angle
- matrix
- value
- row
- column
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 58
- 238000012795 verification Methods 0.000 title claims abstract description 41
- 238000000034 method Methods 0.000 title claims abstract description 34
- 239000011159 matrix material Substances 0.000 claims abstract description 184
- 238000006243 chemical reaction Methods 0.000 claims abstract description 9
- 239000013598 vector Substances 0.000 claims abstract description 9
- 230000009466 transformation Effects 0.000 claims description 41
- 238000004891 communication Methods 0.000 abstract description 5
- 230000008569 process Effects 0.000 description 5
- 125000004122 cyclic group Chemical group 0.000 description 4
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
Classifications
-
- 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/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- 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
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40267—Bus for use in transportation systems
- H04L2012/40273—Bus for use in transportation systems the transportation system being a vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供了一种EPS转向角度报文传输验证方法,EPS控制器模块与车身ECU模块配置相同的初始矩阵,利用报文中要携带传输的转向角度传输值以及单向递增循环计数器生成的计数值作为行列变换的控制参数,将只有发送端和接收端才知晓的初始矩阵变换为密码矩阵,再以计数值为列向量顺序检索密码矩阵获取到校验码、验证码,车身ECU模块判断计数值为真且校验码与验证码相等才接受转向角度报文中的转向角度传输值,验证方法新颖巧妙,易于代码实现,不易破解,有效防止了重放攻击,提升了数据传输可靠性,提高了整车通讯的安全性。
Description
技术领域
本发明属于车辆数字信息传输技术领域,尤其是涉及一种EPS转向角度报文传输验证方法。
背景技术
最初,在车辆中引入CAN总线并未考虑安全问题,因为过去的车辆几乎是孤立的,没有与外部环境连接。直到目前,汽车功能模块的CAN总线通信一般仍采用数据的明文传输,但随着汽车智能化、联网化的快速发展,这种没有任何防护措施的明文数据传输给黑客进行身份欺骗、数据篡改和重放攻击提供了更多的机会。像EPS控制器模块发送给整车的车身ECU模块的含有转向角度值的报文,一旦被非法劫持并篡改,会严重影响到驾驶员及乘客的安全。
发明内容
有鉴于此,为了提升转向角度数据实时通讯传输的安全性,本发明提出一种EPS转向角度报文传输验证方法,具体为:
EPS转向角度报文传输验证方法,EPS控制器模块与车身ECU模块配置相同的初始矩阵A,由EPS控制器模块在其发送给车身ECU模块的转向角度报文中加入由EPS控制器模块获取到的转向角度实际值并经转换得到的转向角度传输值、EPS控制器模块所配置的单向递增循环计数器生成的计数值和校验码,所述校验码是由EPS控制器模块先执行以转向角度传输值为控制参数的矩阵行列变换规则,将EPS控制器模块所配置的初始矩阵A进行矩阵行列变换操作,得到密码矩阵,再以所述计数值为列向量顺序检索遍历此密码矩阵后获得的元素作为EPS控制器模块所发出的转向角度报文中的校验码;
车身ECU模块判断所收到的转向角度报文中的转向角度传输值为真并接受此转向角度传输值,需同时满足两个条件:
条件一、车身ECU模块对其所收到的转向角度报文中的计数值判断为真;
条件二、车身ECU模块以所收到的转向角度报文中的转向角度传输值为控制参数,执行与EPS控制器模块所执行的相同的矩阵变换规则,将车身ECU模块所配置的初始矩阵A进行矩阵行列变换操作,得到密码矩阵,再以所收到的转向角度报文中的计数值为列向量顺序检索遍历此密码矩阵后获得的元素作为验证码,所述验证码应与车身ECU模块所收到的转向角度报文中的校验码相等。
因为发送端和接收端采用相同算法对数据值进行计算,则得到的结果应当相同。若在传输过程当中有对报文当中数据增删或者修改,由于此算法加密所得加密矩阵的唯一性可知,接收端计算出的验证码数值与发送端计算出的校验码数值将不同,接收端应当拒绝接收。这样就可以保证传输数据的真实性和完整性,防止了传输过程当中对转向角度信号数据的破坏和篡改,还能根据循环递增计数器循环加1的特性来保证发送数据的实时性。
进一步,所述初始矩阵A为4×4的矩阵,
,其中的元素 />的值分别取十进制整数0至15当中的任意一个所对应的十六进制值,且矩阵中的任意两个元素的值互不相等。此矩阵中各元素采样此种尽可能不规则的随机取值的取值原则,用以增加生成加密后矩阵的安全程度,防止破解。
进一步,所述单向递增循环计数器能够生成的计数值的总数量与初始矩阵A所具有的元素的总数量相等;所述单向递增循环计数器生成的计数值作为新鲜度值,所采用的计数规则为取值范围为整数0至15,EPS控制器模块每发送一条转向角度报文后,在下一条转向角度报文中的计数值增加1,增加至15后,计数值重置为0,依此单向递增循环。
设置此可循环递增计数器及其计数值的目的是:其一,利用此计数值来确定验证码、校验码的数值元素位于加密后矩阵内部的位置。根据此计数值的十进制值大小,从密码矩阵左上角的元素开始,以列为行走方向遍历此矩阵,来确定EPS控制器模块最终需要发送的验证码的值,或车身ECU模块获取用来与验证码进行校对是否相等的校验码的值。例如,计数值为0,则选取密码矩阵左上角的第一个元素作为验证码的值;再如,计数值为9,则选取第三列、第二行的元素作为验证码或校验码值。其二,此循环递增计数器也可作为新鲜度值来防止重放攻击;因为按顺序发送的每一条转向角度报文中的计数值是按加1的顺序递增的,并且超过15时重置为0,然后再次按加1的顺序递增。这样如果车身的车身ECU模块收到此计数值为不变的或者不是以递增加1的顺序变化的,此条转向角度报文就会被判断为重放攻击或者不具有实时性,即车身ECU模块对其所收到的转向角度报文中的计数值判断为假,车身ECU模块不予接收此条转向角度报文,有效的防止了重放攻击。当然,即便计数值判断为真,车身ECU模块接收了此条转向角度报文,但是否接受转向角度报文中的转向角度传输值,还需满足上述的条件二,即车身ECU模块所得出的验证码应与转向角度报文中的校验码相等,从而起到了双重保险作用,确保数据真实性和实时性。
进一步,所述矩阵行列变换规则包括:
定义转向角度传输值的十六进制值的高8位数据为变量X,
定义转向角度传输值的十六进制值的低8位数据所对应的二进制值为变量Y,
定义计数值的十进制值为变量Z;
定义一组用于矩阵行列变换的变换向量e1、e2、e3、e4:
;
执行以下矩阵行列变换操作:
步骤1、用变量X所对应的十进制值除以十进制数64后取整,得到的结果有4种可能,分别为0,1,2,3;根据所得到的结果按以下规则对初始校验矩阵A进行列变换得到第一中间矩阵B:
当[X÷64] = 0时,B = A[e1,e2,e3,e4];即,当结果为0时,初始校验矩阵A的秩序不变而得到第一中间矩阵B,或者说第一中间矩阵B等于初始校验矩阵A;
当[X÷64] = 1时,B = A[e4,e1,e2,e3];即,当结果为1时,将初始校验矩阵A的原第四列移至第一列,原第一列移至第二列,原第二列移至第三列,原第三列移至第四列,得到第一中间矩阵B;
当[X÷64] = 2时,B = A[e3,e4,e1,e2];即,当结果为2时,将初始校验矩阵A的原第三列移至第一列,原第四列移至第二列,原第一列移至第三列,原第二列移至第四列,得到第一中间矩阵B;
当[X÷64] = 3时,B = A[e2,e3,e4,e1];即,当结果为3时,将初始校验矩阵A的原第二列移至第一列,原第三列移至第二列,原第四列移至第三列,原第一列移至第四列,得到第一中间矩阵B;
步骤2、用X变量所对应的十进制值除以十进制数4后取余数,得到的结果有4种可能,分别为0,1,2,3;根据所得到的结果按以下规则对第一中间矩阵B进行列变换得到第二中间矩阵C:
当X % 4 = 0时,C = B[e1,e2,e3,e4];即,当结果为0时,第一中间矩阵B的秩序不变而得到第二中间矩阵C,或者说第二中间矩阵C等于第一中间矩阵B;
当X % 4 = 1时,C = B[e4,e1,e2,e3];即,当结果为1时,将第一中间矩阵B的原第四列移至第一列,原第一列移至第二列,原第二列移至第三列,原第三列移至第四列,得到第二中间矩阵C;
当X % 4 = 2时,C = B[e3,e4,e1,e2];即,当结果为2时,将第一中间矩阵B的原第三列移至第一列,原第四列移至第二列,原第一列移至第三列,原第二列移至第四列,得到第二中间矩阵C;
当X % 4 = 3时,C = B[e2,e3,e4,e1];即,当结果为3时,将第一中间矩阵B的原第二列移至第一列,原第三列移至第二列,原第四列移至第三列,原第一列移至第四列,得到第二中间矩阵C;
步骤3、用变量Y所对应的二进制值与十进制数5的二进制值,进行按位与运算,得到的结果有4种可能,分别为0,1,4,5;根据所得到的结果按以下规则对第二中间矩阵C进行列变换得到第三中间矩阵D:
当Y&5 = 0时,D = C[e1,e2,e3,e4];即,当结果为0时,第二中间矩阵C的秩序不变而得到第三中间矩阵D,或者说第三中间矩阵D等于第二中间矩阵C;
当Y&5 = 1时,D = C[e4,e1,e2,e3];即,当结果为1时,将第二中间矩阵C的原第四列移至第一列,原第一列移至第二列,原第二列移至第三列,原第三列移至第四列,得到第三中间矩阵D;
当Y&5 = 4时,D = C[e3,e4,e1,e2];即,当结果为4时,将第二中间矩阵C的原第三列移至第一列,原第四列移至第二列,原第一列移至第三列,原第二列移至第四列,得到第三中间矩阵D;
当Y&5 = 5时,D = C[e2,e3,e4,e1];即,当结果为5时,将第二中间矩阵C的原第二列移至第一列,原第三列移至第二列,原第四列移至第三列,原第一列移至第四列,得到第三中间矩阵D;
步骤4、用变量Z除以十进制数4后取余数,得到的结果有4种可能,分别为0,1,2,3;根据所得到的结果按以下规则对第三中间矩阵D进行列变换得到第四中间矩阵F:
当Z % 4 = 0时,F = D[e1,e2,e3,e4];即,当结果为0时,第三中间矩阵D的秩序不变而得到第四中间矩阵F,或者说第四中间矩阵F等于第三中间矩阵D;
当Z % 4 = 1时,F = D[e4,e1,e2,e3];即,当结果为1时,将第三中间矩阵D的原第四列移至第一列,原第一列移至第二列,原第二列移至第三列,原第三列移至第四列,得到第四中间矩阵F;
当Z % 4 = 2时,F = D[e3,e4,e1,e2];即,当结果为2时,将第三中间矩阵D的原第三列移至第一列,原第四列移至第二列,原第一列移至第三列,原第二列移至第四列,得到第四中间矩阵F;
当Z % 4 = 3时,F = D[e2,e3,e4,e1];即,当结果为3时,将第三中间矩阵D的原第二列移至第一列,原第三列移至第二列,原第四列移至第三列,原第一列移至第四列,得到第四中间矩阵F;
步骤5、用变量X所对应的十进制值除以十进制数64后取整,得到的结果有4种可能,分别为0,1,2,3;根据所得到的结果按以下规则对第四中间矩阵F进行行变换得到第五中间矩阵G:
当[X÷64] = 0时,G = [e1,e2,e3,e4]F;即,当结果为0时,第四中间矩阵F的秩序不变而得到第五中间矩阵G,或者说第五中间矩阵G等于第四中间矩阵F;
当[X÷64] = 1时,G = [e2,e3,e4,e1]F;即,当结果为1时,将第四中间矩阵F的原第二行移至第一行,原第三行移至第二行,原第四行移至第三行,原第一行移至第四行,得到第五中间矩阵G;
当[X÷64] = 2时,G = [e3,e4,e1,e2]F;即,当结果为2时,将第四中间矩阵F的原第三行移至第一行,原第四行移至第二行,原第一行移至第三行,原第二行移至第四行,得到第五中间矩阵G;
当[X÷64] = 3时,G = [e4,e1,e2,e3]F;即,当结果为3时,将第四中间矩阵F的原第四行移至第一行,原第一行移至第二行,原第二行移至第三行,原第三行移至第四行,得到第五中间矩阵G;
步骤6、用变量X所对应的十进制值除以十进制的4后取余数,得到的结果有4种可能,分别为0,1,2,3;根据所得到的结果按以下规则对第五中间矩阵G进行行变换得到第六中间矩阵H:
当X % 4 = 0时,H = [e1,e2,e3,e4]G;即,当结果为0时,第五中间矩阵G的秩序不变而得到第六中间矩阵H,或者说第六中间矩阵H等于第五中间矩阵G;
当X % 4 = 1时,H = [e2,e3,e4,e1]G;即,当结果为1时,将第五中间矩阵G的原第二行移至第一行,原第三行移至第二行,原第四行移至第三行,原第一行移至第四行,得到第六中间矩阵H;
当X % 4 = 2时,H = [e3,e4,e1,e2]G;即,当结果为2时,将第五中间矩阵G的原第三行移至第一行,原第四行移至第二行,原第一行移至第三行,原第二行移至第四行,得到第六中间矩阵H;
当X % 4 = 3时,H = [e4,e1,e2,e3]G;即,当结果为3时,将第五中间矩阵G的原第四行移至第一行,原第一行移至第二行,原第二行移至第三行,原第三行移至第四行,得到第六中间矩阵H;
步骤7、用变量Y所对应的二进制值与十进制数5的二进制值,进行按位与运算,得到的结果有4种可能,分别为0,1,4,5;根据所得到的结果按以下规则对第六中间矩阵H进行行变换得到第七中间矩阵J:
当Y&5 = 0时,J = [e1,e2,e3,e4]H;即,当结果为0时,第六中间矩阵H的秩序不变而得到第七中间矩阵J,或者说第七中间矩阵J等于第六中间矩阵H;
当Y&5 = 1时,J = [e2,e3,e4,e1]H;即,当结果为1时,将第六中间矩阵H的原第二行移至第一行,原第三行移至第二行,原第四行移至第三行,原第一行移至第四行,得到第七中间矩阵J;
当Y&5 = 4时,J=[e3,e4,e1,e2]H;即,当结果为4时,将第六中间矩阵H的原第三行移至第一行,原第四行移至第二行,原第一行移至第三行,原第二行移至第四行,得到第七中间矩阵J;
当Y&5 = 5时,J = [e4,e1,e2,e3]H;即,当结果为5时,将第六中间矩阵H的原第四行移至第一行,原第一行移至第二行,原第二行移至第三行,原第三行移至第四行,得到第七中间矩阵J;
步骤8、用变量Z除以4后取余数,得到的结果有4种可能,分别为0,1,2,3;根据所得到的结果按以下规则对第七中间矩阵J进行行变换得到密码矩阵K:
当Z % 4 = 0时,K = [e1,e2,e3,e4]J;即,当结果为0时,第七中间矩阵J的秩序不变而得到密码矩阵K,或者密码矩阵K等于第七中间矩阵J;
当Z % 4 = 1时,K = [e2,e3,e4,e1]J;即,当结果为1时,将第七中间矩阵J的原第二行移至第一行,原第三行移至第二行,原第四行移至第三行,原第一行移至第四行,得到密码矩阵K;
当Z % 4 = 2时,K = [e3,e4,e1,e2]J;即,当结果为2时,将第七中间矩阵J的原第三行移至第一行,原第四行移至第二行,原第一行移至第三行,原第二行移至第四行,得到密码矩阵K;
当Z % 4 = 3时,K = [e4,e1,e2,e3]J;即,当结果为3时,将第七中间矩阵J的原第四行移至第一行,原第一行移至第二行,原第二行移至第三行,原第三行移至第四行,得到密码矩阵K。
进一步,转向角度报文中有两个8位字节存放转向角度传输值的十六进制值,且此两个8位字节中的前一个8位字节存放转向角度传输值的十六进制值的高8位数据,后一个8位字节存放转向角度传输值的十六进制值的低8位数据;计数值的十六进制值和校验码的十六进制值共同占用转向角度报文中的第三个8位字节,且计数值的十六进制值占用第三个8位字节中的高4位,校验码的十六进制值占用第三个8位字节中的低4位。
本发明利用报文中要携带传输的转向角度传输值以及单向递增循环计数器生成的计数值作为行列变换的控制参数,将只有发送端和接收端才知晓的初始矩阵变换为密码矩阵,再以计数值为列向量顺序检索密码矩阵获取到校验码、验证码,车身ECU模块判断计数值为真且校验码与验证码相等才接受转向角度报文中的转向角度传输值,验证方法新颖巧妙,易于代码实现,不易破解,有效防止了重放攻击,提升了数据传输可靠性,提高了整车通讯的安全性。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
本发明出现的术语“第一”、“第二”等仅用于区分描述,不应理解为指示或暗示相对重要性。
下面结合实施例具体说明本发明。
EPS控制器模块连接有实时检测方向盘转向角度的转向角度信号传感器。在EPS控制器模块的控制程序执行过程当中,转向角度信号传感器会将检测到的转向角度实际值和方向的数字量实时传递给EPS控制器模块,而车身ECU模块也需要转向角度实际值和方向数据来进行车身控制,因此EPS控制器模块就需要通过CAN通信以转向角度报文的形式来把上述数据传递给车身ECU模块。
本实施例中,转向角度报文至少包含三个8位字节,EPS控制器模块会把采集到的转向角度实际值的十进制数值并结合方向数据转换为2个字节的十六进制数值即转向角度传输值,第一个字节用来承载转向角度传输值的十六进制值的高8位数据,第二个字节用来承载转向角度传输值的十六进制值的低8位数据;第三个8位字节用来承载计数值的十六进制值和校验码的十六进制值,且计数值的十六进制值占用第三个8位字节中的高4位,校验码的十六进制值占用第三个8位字节中的低4位。
将转向角度实际值并结合方向数据转换为2个字节的十六进制数值即转向角度传输值的转换规则,以及依此规则由转向角度传输值得到转向角度实际值以及方向数据的逆转换规则通常由厂家根据需要而定,属于现有技术,不是本发明的重点,此处仅提供一些常规示例,比如:定义方向盘向右顺时针旋转时产生的转向角度实际值为正值,方向盘向左逆时针旋转时产生的转向角度实际值为负值;将转向角度实际值转换为转向角度传输值,也就是将十进制的实际值转换为十六进制的传输值。在转换的过程当中,将第一传输字节(即变量X)的最高位做为符号位,当转向角度实际值为正时,此符号位设置为0;当转向角度实际值为负时,此符号位设置为1。
例如:当方向盘向左旋转540度,那么转向角度实际值记为负540度,将此转向角度实际值转换为转向角度传输值就等于0x821C,即变量X=0x82,变量Y=0x1C。方向盘向右旋转540度,转向角度实际值记为正540度,转换为转向角度传输值等于0x021C。
首先确定EPS控制器模块和车身的车身ECU模块所配置共享的相同的初始矩阵A:
;
一组向量:
;
我们以方向盘向右旋转540度为例,此时变量X=0x02,变量Y=0x1C,变量Z=0x9(均为16进制表示),我们要得到的校验码值为M。
执行以下矩阵行列变换操作:
步骤1、[X÷64]= [0x02÷64]=0,对初始矩阵A进行列变换得到第一中间矩阵B,B= A[e1,e2,e3,e4];
;
步骤2、X%4=0x02%4=2,对第一中间矩阵B进行列变换得到第二中间矩阵C,C = B[e3,e4,e1,e2];
;
步骤3、Y&5=0x1C&5=4,对第二中间矩阵C进行列变换得到第三中间矩阵D,D = C[e3,e4,e1,e2];
;
步骤4、Z%4=0x9%4=1,对第三中间矩阵D进行列变换得到第四中间矩阵F,F = D[e4,e1,e2,e3];
;
步骤5、[X÷64]= [0x02÷64]=0,对第四中间矩阵F进行行变换得到第五中间矩阵G,G = [e1,e2,e3,e4]F;
;
步骤6、X%4=0x02%4=2,对第五中间矩阵G进行行变换得到第六中间矩阵H,H =[e3,e4,e1,e2]G;
;
步骤7、Y&5=0x1C&5=4,对第六中间矩阵H进行行变换得到第七中间矩阵J,J =[e3,e4,e1,e2]H;
;
步骤8、Z%4=0x9%4=1,对第七中间矩阵J进行行变换得到密码矩阵K,K = [e2,e3,e4,e1]J;
;
综上所述,最终的密码矩阵K为:
。
由于变量Z的值为0x9,从左上角第一列第一行的元素7开始,按列顺序检索密码矩阵,确定至第10个元素即最终校验码的数值为11。将此验证码加入EPS控制器模块所发出的转向角度报文当中,最终发送的此条转向角度报文的三个字节内容为0x23、0x15、0x9B。
在车身ECU模块接收到上述转向角度报文3个字节的数据后,提取前两个字节的方向盘角度数据0x23、0x15和循环递增计数器的值0x9,若车身ECU模块判断发现收到的此条报文的计数值相对上一条为不变的或者不是以递增加1的顺序变化的,此条转向角度报文就会被判断为重放攻击或者不具有实时性,即车身ECU模块对其所收到的转向角度报文中的计数值判断为假,车身ECU模块不予接收此条转向角度报文,有效的防止了重放攻击。
若计数值为真,再根据共享的初始矩阵A,也同样按照上述的矩阵行列变换规则的矩阵行列变换操作得出验证码的值,若验证码结果为1,即与校验码相等,则正常接收此条报文,若验证码结果不为1,即与校验码不相等,则拒收此条报文并上报此事件。
本发明对EPS和整车之间传输的方向盘转向角度数据,做消息真实性的验证处理,确保了转向角度传输值的完整性、真实性;且算法新颖,不易破解,提高了整车通讯的安全性;全新设计了新鲜度指标,用单向递增循环计数器来实现,保证了信息传输的实时性,有效防止了重放攻击,极大提升信息传输可靠性;本发明中的验证方法,易于推广到其他数据的传输应用场景,甚至是重要数据的存储当中去;本发明所设计的矩阵行列变换规则,易于代码实现,可移植性高,计算机矩阵运算速度快,具有较高的应用价值。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.EPS转向角度报文传输验证方法,其特征在于,EPS控制器模块与车身ECU模块配置相同的初始矩阵A,由EPS控制器模块在其发送给车身ECU模块的转向角度报文中加入
由EPS控制器模块将其获取的转向角度实际值结合方向数据转换得到的转向角度传输值、
EPS控制器模块所配置的单向递增循环计数器生成的计数值和
校验码,所述校验码是由EPS控制器模块先执行以转向角度传输值为控制参数的矩阵行列变换规则,将EPS控制器模块所配置的初始矩阵A进行矩阵行列变换操作,得到密码矩阵,再以所述计数值为列向量顺序检索遍历此密码矩阵后获得的元素作为EPS控制器模块所发出的转向角度报文中的校验码;
车身ECU模块判断所收到的转向角度报文中的转向角度传输值为真并接受此转向角度传输值,需同时满足两个条件:
条件一、车身ECU模块对所收到的转向角度报文中的计数值判断为真;
条件二、车身ECU模块以所收到的转向角度报文中的转向角度传输值为控制参数,执行与EPS控制器模块所执行的相同的矩阵变换规则,将车身ECU模块所配置的初始矩阵A进行矩阵行列变换操作,得到密码矩阵,再以所收到的转向角度报文中的计数值为列向量顺序检索遍历此密码矩阵后获得的元素作为验证码,所述验证码应与车身ECU模块所收到的转向角度报文中的校验码相等。
2.根据权利要求1所述的EPS转向角度报文传输验证方法,其特征在于,所述初始校验矩阵A为4×4的矩阵,
,其中的元素/>的值分别取十进制整数0至15当中的任意一个所对应的十六进制值,且矩阵中的任意两个元素的值互不相等。
3.根据权利要求1或2所述的EPS转向角度报文传输验证方法,其特征在于,所述单向递增循环计数器能够生成的计数值的总数量与初始矩阵A所具有的元素的总数量相等;所述单向递增循环计数器生成的计数值作为新鲜度值,所采用的计数规则为取值范围为整数0至15,EPS控制器模块每发送一条转向角度报文后,在下一条转向角度报文中的计数值增加1,增加至15后,计数值重置为0,依此单向递增循环。
4.根据权利要求3所述的EPS转向角度报文传输验证方法,其特征在于,所述矩阵行列变换规则包括:
定义转向角度传输值的十六进制值的高8位数据为变量X,
定义转向角度传输值的十六进制值的低8位数据为变量Y,
定义计数值的十进制值为变量Z;
定义一组用于矩阵行列变换的变换向量e1、e2、e3、e4:
;
执行以下矩阵行列变换操作:
步骤1、用变量X所对应的十进制值除以64后取整,根据所得到的结果按以下规则对初始校验矩阵A进行列变换得到第一中间矩阵B:
当[X÷64] = 0时,B = A[e1,e2,e3,e4];
当[X÷64] = 1时,B = A[e4,e1,e2,e3];
当[X÷64] = 2时,B = A[e3,e4,e1,e2];
当[X÷64] = 3时,B = A[e2,e3,e4,e1];
步骤2、用X变量所对应的十进制值除以4后取余数,根据所得到的结果按以下规则对第一中间矩阵B进行列变换得到第二中间矩阵C:
当X % 4 = 0时,C = B[e1,e2,e3,e4];
当X % 4 = 1时,C = B[e4,e1,e2,e3];
当X % 4 = 2时,C = B[e3,e4,e1,e2];
当X % 4 = 3时,C = B[e2,e3,e4,e1];
步骤3、用变量Y所对应的二进制值与十进制数5的二进制值,进行按位与运算,根据所得到的结果按以下规则对第二中间矩阵C进行列变换得到第三中间矩阵D:
当Y & 5 = 0时,D = C[e1,e2,e3,e4];
当Y & 5 = 1时,D = C[e4,e1,e2,e3];
当Y & 5 = 4时,D = C[e3,e4,e1,e2];
当Y & 5 = 5时,D = C[e2,e3,e4,e1];
步骤4、用变量Z除以4后取余数,根据所得到的结果按以下规则对第三中间矩阵D进行列变换得到第四中间矩阵F:
当Z % 4 = 0时,F = D[e1,e2,e3,e4];
当Z % 4 = 1时,F = D[e4,e1,e2,e3];
当Z % 4 = 2时,F = D[e3,e4,e1,e2];
当Z % 4 = 3时,F = D[e2,e3,e4,e1];
步骤5、用变量X所对应的十进制值除以64后取整,根据所得到的结果按以下规则对第四中间矩阵F进行行变换得到第五中间矩阵G:
当[X÷64] = 0时,G = [e1,e2,e3,e4]F;
当[X÷64] = 1时,G = [e2,e3,e4,e1]F;
当[X÷64] = 2时,G = [e3,e4,e1,e2]F;
当[X÷64] = 3时,G = [e4,e1,e2,e3]F;
步骤6、用变量X所对应的十进制值除以4后取余数,根据所得到的结果按以下规则对第五中间矩阵G进行行变换得到第六中间矩阵H:
当X % 4 = 0时,H = [e1,e2,e3,e4]G;
当X % 4 = 1时,H = [e2,e3,e4,e1]G;
当X % 4 = 2时,H = [e3,e4,e1,e2]G;
当X % 4 = 3时,H = [e4,e1,e2,e3]G;
步骤7、用变量Y所对应的二进制值与十进制数5的二进制值,进行按位与运算,根据所得到的结果按以下规则对第六中间矩阵H进行行变换得到第七中间矩阵J:
当Y & 5 = 0时,J = [e1,e2,e3,e4]H;
当Y & 5 = 1时,J = [e2,e3,e4,e1]H;
当Y & 5 = 4时,J = [e3,e4,e1,e2]H;
当Y & 5 = 5时,J = [e4,e1,e2,e3]H;
步骤8、用变量Z除以4后取余数,得到的结果有4种可能,分别为0,1,2,3;根据所得到的结果按以下规则对第七中间矩阵J进行行变换得到密码矩阵K:
当Z % 4 = 0时,K= [e1,e2,e3,e4]J;
当Z % 4 = 1时,K= [e2,e3,e4,e1]J;
当Z % 4 = 2时,K= [e3,e4,e1,e2]J;
当Z % 4 = 3时,K= [e4,e1,e2,e3]J。
5.根据权利要求4所述的EPS转向角度报文传输验证方法,其特征在于,转向角度报文中有两个8位字节存放转向角度传输值的十六进制值,且此两个8位字节中的前一个8位字节存放转向角度传输值的十六进制值的高8位数据,后一个8位字节存放转向角度传输值的十六进制值的低8位数据;计数值的十六进制值和校验码的十六进制值共同占用转向角度报文中的第三个8位字节,且计数值的十六进制值占用第三个8位字节中的高4位,校验码的十六进制值占用第三个8位字节中的低4位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311337271.1A CN117097559B (zh) | 2023-10-17 | 2023-10-17 | Eps转向角度报文传输验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311337271.1A CN117097559B (zh) | 2023-10-17 | 2023-10-17 | Eps转向角度报文传输验证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117097559A true CN117097559A (zh) | 2023-11-21 |
CN117097559B CN117097559B (zh) | 2023-12-19 |
Family
ID=88783587
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311337271.1A Active CN117097559B (zh) | 2023-10-17 | 2023-10-17 | Eps转向角度报文传输验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117097559B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103220002A (zh) * | 2012-01-18 | 2013-07-24 | 北京大学 | 一种消除译码器访问冲突的准循环ldpc码构造方法 |
CN107911354A (zh) * | 2017-11-07 | 2018-04-13 | 北京航空航天大学 | 一种复合并行数据加密方法 |
US20180189136A1 (en) * | 2017-01-03 | 2018-07-05 | Silicon Motion Inc. | Method for performing data management in memory device, associated memory device and controller thereof |
US20190044537A1 (en) * | 2017-07-31 | 2019-02-07 | Codelucida, Inc. | Vertical Layered Finite Alphabet Iterative Decoding |
CN109492397A (zh) * | 2018-11-15 | 2019-03-19 | 平顶山工业职业技术学院(平顶山煤矿技工学校) | 一种计算机信息安全系统 |
CN110034855A (zh) * | 2019-04-10 | 2019-07-19 | 国网辽宁省电力有限公司 | 一种信息传输校验方法及系统 |
CN112383916A (zh) * | 2020-11-12 | 2021-02-19 | 刘中亚 | 一种适用于单播通信的wsn对密钥管理方法 |
CN113830167A (zh) * | 2021-10-19 | 2021-12-24 | 岚图汽车科技有限公司 | 一种角度验证方法、装置、车辆、设备和介质 |
US20220173909A1 (en) * | 2019-04-18 | 2022-06-02 | Nec Corporation | Mac tag list generation apparatus, mac tag list verification apparatus, method, and program |
CN114866250A (zh) * | 2022-04-25 | 2022-08-05 | 中国第一汽车股份有限公司 | 车内can网络新鲜值构建方法、装置、车辆及存储介质 |
CN115173993A (zh) * | 2022-06-28 | 2022-10-11 | 重庆邮电大学 | 极化码中一种EPS-SCL-Flip译码方法 |
CN115439816A (zh) * | 2022-08-17 | 2022-12-06 | 大连理工大学 | 一种基于凸优化的无人驾驶系统转向角安全性的验证方法 |
CN116579025A (zh) * | 2021-04-20 | 2023-08-11 | 支付宝(杭州)信息技术有限公司 | 一种文件存证方法、装置及设备 |
-
2023
- 2023-10-17 CN CN202311337271.1A patent/CN117097559B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103220002A (zh) * | 2012-01-18 | 2013-07-24 | 北京大学 | 一种消除译码器访问冲突的准循环ldpc码构造方法 |
US20180189136A1 (en) * | 2017-01-03 | 2018-07-05 | Silicon Motion Inc. | Method for performing data management in memory device, associated memory device and controller thereof |
US20190044537A1 (en) * | 2017-07-31 | 2019-02-07 | Codelucida, Inc. | Vertical Layered Finite Alphabet Iterative Decoding |
CN107911354A (zh) * | 2017-11-07 | 2018-04-13 | 北京航空航天大学 | 一种复合并行数据加密方法 |
CN109492397A (zh) * | 2018-11-15 | 2019-03-19 | 平顶山工业职业技术学院(平顶山煤矿技工学校) | 一种计算机信息安全系统 |
CN110034855A (zh) * | 2019-04-10 | 2019-07-19 | 国网辽宁省电力有限公司 | 一种信息传输校验方法及系统 |
US20220173909A1 (en) * | 2019-04-18 | 2022-06-02 | Nec Corporation | Mac tag list generation apparatus, mac tag list verification apparatus, method, and program |
CN112383916A (zh) * | 2020-11-12 | 2021-02-19 | 刘中亚 | 一种适用于单播通信的wsn对密钥管理方法 |
CN116579025A (zh) * | 2021-04-20 | 2023-08-11 | 支付宝(杭州)信息技术有限公司 | 一种文件存证方法、装置及设备 |
CN113830167A (zh) * | 2021-10-19 | 2021-12-24 | 岚图汽车科技有限公司 | 一种角度验证方法、装置、车辆、设备和介质 |
CN114866250A (zh) * | 2022-04-25 | 2022-08-05 | 中国第一汽车股份有限公司 | 车内can网络新鲜值构建方法、装置、车辆及存储介质 |
CN115173993A (zh) * | 2022-06-28 | 2022-10-11 | 重庆邮电大学 | 极化码中一种EPS-SCL-Flip译码方法 |
CN115439816A (zh) * | 2022-08-17 | 2022-12-06 | 大连理工大学 | 一种基于凸优化的无人驾驶系统转向角安全性的验证方法 |
Also Published As
Publication number | Publication date |
---|---|
CN117097559B (zh) | 2023-12-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021012552A1 (zh) | 一种登录处理方法及相关设备 | |
CN102457380B (zh) | 具有安全而有效的签名的数据发送器 | |
KR101702545B1 (ko) | 데이터 인증방법 및 그 장치 | |
US20140301550A1 (en) | Method for recognizing a manipulation of a sensor and/or sensor data of the sensor | |
CN112487408B (zh) | 用于车内ecu的安全访问方法、系统及存储介质 | |
CN104029654B (zh) | 基于指纹密钥加密技术的汽车防盗方法和防盗系统 | |
CN113872770A (zh) | 一种安全性验证方法、系统、电子设备及存储介质 | |
CN115426101B (zh) | 一种云互通平台的数据传输方法 | |
US8738919B2 (en) | Control of the integrity of a memory external to a microprocessor | |
US20030194088A1 (en) | Method for transmitting data among components of the system electronics of mobile systems, and such components | |
CN117097559B (zh) | Eps转向角度报文传输验证方法 | |
Wu et al. | A digital watermark method for in-vehicle network security enhancement | |
CN117640256A (zh) | 一种无线网卡的数据加密方法、推荐装置和存储介质 | |
CN113434876A (zh) | 一种数据加密方法、装置、内存控制器、芯片及电子设备 | |
JP2014137423A (ja) | 暗号処理装置、方法およびプログラム | |
Ansari et al. | IntelliCAN: Attack-resilient controller area network (CAN) for secure automobiles | |
CN116305080A (zh) | 一种密码通用检测方法 | |
US20200036710A1 (en) | Method and system for encryption using a radio frequency fingerprint | |
CN115499199A (zh) | 车辆的安全通信方法、装置、车辆及存储介质 | |
CN115296861A (zh) | 车载can总线的网络安全通讯方法及控制装置 | |
JP6356687B2 (ja) | メッセージへの全単射アルゴリズムの適用によるコードの真正性を制御するための制御方法およびデバイス | |
CN113765651A (zh) | 适用于车载ecu内部芯片间的安全通信方法 | |
CN1252663C (zh) | 算术单元和算术方法 | |
KR102543533B1 (ko) | 차량용 통신 장치 및 이를 이용한 데이터 암호화 방법 | |
CN116629871B (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 |