一种应用加密算法对数据进行加密的CAN总线加密方法技术

技术编号:26226506 阅读:42 留言:0更新日期:2020-11-04 11:04
为了解决现有技术中针对CAN总线加密方式容易被破解的问题,本发明专利技术提供一种应用加密算法对数据进行加密的CAN总线加密方法,其特征在于:对原始数据进行SM3算法运算生成杂凑值,然后在杂凑值中抽取若干位数据与原始数据结合成128位的组合数据,然后对所述组合数据进行SM4算法运算进行加密;最后在FPGA平台上实现SM3和SM4算法进行解密,利用AXI总线完成软硬件之间的数据交互。本发明专利技术采用SM3和SM4密码对称加解密算法构建加密系统,为总线数据提供加密方法,也可以做到信息验证,提高了CAN总线数据安全性、可靠性和抗破解能力。

【技术实现步骤摘要】
一种应用加密算法对数据进行加密的CAN总线加密方法
本专利技术涉及通信
,特别涉及一种应用加密算法对数据进行加密的CAN总线加密方法。
技术介绍
现有CAN总线采用明码数据传输,数据在总线上广播,很容易被侦听和非法控制。为保证总线的安全,目前有采用防火墙技术,将车内电子与外部交互界面隔离;也有通过严格的访问机制,采用授权获半开放的形式进行访问权限控制;普遍使用密码系统(验证或编码加密)来保护车内流通的数据;也有采用侦探/防护系统(IPS/IDS)对可能的攻击进行侦探预警。目前,如《一种汽车CAN总线加密方法》,申请号201910659548.X,该专利技术提出了一种汽车CAN总线加密方法,首先发送节点将CAN总线网络中的待发送数据根据AES加密算法区块字节长度要求重新组合为若干个数据块,对各数据块增加校验机制并在末端数据块的末位增加校验位,再利用随机数据对末端数据块进行补位,利用AES加密算法对各数据块进行加密获得各密文数据块,发送节点再对各密文数据块进行数据分割以及设置时间标识和次序标识后将其通过CAN网络发送给接收节点,接收节点接收各密文数据块并检测其完整性,根据检测结果确认是放弃此次接收或接收完成按照预设时间标识和次序标识进行提取后拼接以及解密,并在解密后结合校验机制进行校验以确认数据传输的有效性,提高了数据传输效率,保证了汽车上数据信息传输的安全性。针对该专利进行分析,其只在数据末位添加检验位,检验位的产生只是对数据进行求和运算,而且是放在有效数据的后面,这样的安全强度是很低的,只要知道了AES加密算法的密钥,就可以对解密之后的数据进行逐位相加,就可以得到该检验机制,这样被破解的可能性就大大提高了。
技术实现思路
为了解决现有技术中针对CAN总线加密方式容易被破解的问题,本专利技术提供一种应用加密算法对数据进行加密的CAN总线加密方法,能够有效解决上述技术问题。本专利技术为了解决上述技术问题所采用的技术方案是:一种应用加密算法对数据进行加密的CAN总线加密方法,其特征在于:对原始数据进行SM3算法运算生成杂凑值,然后在杂凑值中抽取若干位数据与原始数据结合成128位的组合数据,然后对所述组合数据进行SM4算法运算进行加密;最后在FPGA平台上实现SM3和SM4算法进行解密,利用AXI总线完成软硬件之间的数据交互。所述的加密过程为:S101.采集原始数据,并且根据需要定义SM3提取规则和128位数据中SM3校验位的插入规则;S102.根据S101步骤中所述SM3提取规则进行SM3加密,在信息摘要中提取校验码;S103.根据S101步骤中所述SM3校验位的插入规则将SM3校验位添加到128位数据中;S104.进行SM4加密过程;S105.进行CAN信号传输,等待接收端的解码。所述的解密过程为:S201.接收到CAN总线的信号后,进行SM4解码;S202.读取SM3校验位插入规则,提取数据的SM3校验位;同时提取数据的有效位;S203.对提取数据有效位后的数据进行SM3加密,在信息摘要中提取校验码;S204.将S203步骤获得的校验码与S202步骤的SM3校验位进行比较,获得数据是否有效的结果,完成解密过程。本专利技术的有益效果是:本专利技术采用SM3和SM4密码对称加解密算法构建加密系统,为总线数据提供加密方法,也可以做到信息验证,提高了CAN总线数据安全性、可靠性和抗破解能力。附图说明图1为CAN总线数据加密处理流程图。图2为CAN总线数据解密处理流程图。具体实施方式下面结合附图对本申请进行进一步的说明。本专利技术的构思是:采用的SM4密码对称加解密算法秘钥的生成是由使用者根据自身需要进行设置的,各个CAN总线节点必须保持相同的秘钥,才能实现数据的正常加密和解密处理。在完成秘钥的设置之后,由于CAN总线数据结构所限,每一帧最高可发送的位数为64bit,而SM4密码对称加解密模块每一次加密需要的数据为128bit,为了弥补中间产生的数据位数偏差,可以采用以下几种总线数据加密方式:1、在64bit数据之后进行填充操作,填充特定数据达到128bit数据,再进行SM4密码对称加解密算法加密处理;2、使用两帧数据各64bit凑成128bit数据,进行SM4密码对称加解密模块的加密处理。以上方案都具有较高的可行性,且目前大部分设计都是按照以上的方案进行设计,但方案一存在的问题是浪费系统资源,而方案二存在的潜在问题就是一旦攻击者随意发送一组数据,接收方按照SM4密码对称加解密模块的解密规则进行解密,但是存在一旦发送错误数据,接收方将无法进行识别,解密后的数据将出错,最终导致控制出现误差。基于此,本专利技术在方案二的基础之上,假设保留112位的数据有效位,另外预留16位的数据校验码,通过引入了SM3密码杂凑算法生成信息摘要,将原始数据通过SM3密码杂凑模块进行计算,并按照自定义的数据提取规则在SM3密码杂凑值中提取16位的校验码插入原有112位数据之中,凑成128位共两帧的数据。具体的数据有效位位数可根据用户实际需要设置,但需明确,有效位位数越少,代表校验位越多,在降低信息有效速率的同时,也能大大提高数据的安全强度。同时提出一种新型的数据插入机制,即当系统运行一段时间之后,例如10s之后,就按照预定的规则对校验位的插入位置做出调整,该插入规则可由用户自定义或者软件根据自身运行状态进行计算,并通过CAN总线广播的方式由一个主节点发送至总线之上,由其他节点接收并按照这一规则对数据的校验位进行重新设置,增加数据的抗破解能力和系统的安全性。具体的,一种应用加密算法对数据进行加密的CAN总线加密方法,其特征在于:对原始数据进行SM3算法运算生成杂凑值,然后在杂凑值中抽取若干位数据与原始数据结合成128位的组合数据,然后对所述组合数据进行SM4算法运算进行加密;最后在FPGA平台上实现SM3和SM4算法进行解密,利用AXI总线完成软硬件之间的数据交互。如图1,所述的加密过程为:S101.采集原始数据,并且根据需要定义SM3提取规则和128位数据中SM3校验位的插入规则;S102.根据S101步骤中所述SM3提取规则进行SM3加密,在信息摘要中提取校验码;S103.根据S101步骤中所述SM3校验位的插入规则将SM3校验位添加到128位数据中;S104.进行SM4加密过程;S105.进行CAN信号传输,等待接收端的解码;如图1,根据实际情况已经定义好了整个系统的加密流程,按照这一规则进行解密处理。首先,需要对秘钥进行初始化操作,根据使用者的需要进行设置。在设置完成之后,需要利用SM4密码对称加解密算法对CAN总线接收到的数据进行解密处理,然后根据SM3校验位插入规则,对解密后的数据去除校验码之后进行一次SM3密码杂凑模块运算,得到信息摘要。再通过SM3提取规则,提取对应位的信息摘要,与解密后得到的校验码进本文档来自技高网
...

【技术保护点】
1.一种应用加密算法对数据进行加密的CAN总线加密方法,其特征在于:对原始数据进行SM3算法运算生成杂凑值,然后在杂凑值中抽取若干位数据与原始数据结合成128位的组合数据,然后对所述组合数据进行SM4算法运算进行加密;最后在FPGA平台上实现SM3和SM4算法进行解密,利用AXI总线完成软硬件之间的数据交互。/n

【技术特征摘要】
1.一种应用加密算法对数据进行加密的CAN总线加密方法,其特征在于:对原始数据进行SM3算法运算生成杂凑值,然后在杂凑值中抽取若干位数据与原始数据结合成128位的组合数据,然后对所述组合数据进行SM4算法运算进行加密;最后在FPGA平台上实现SM3和SM4算法进行解密,利用AXI总线完成软硬件之间的数据交互。


2.根据权利要求1所述的一种应用加密算法对数据进行加密的CAN总线加密方法,其特征在于:所述的加密过程为:
S101.采集原始数据,并且根据需要定义SM3提取规则和128位数据中SM3校验位的插入规则;
S102.根据S101步骤中所述SM3提取规则进行SM3加密,在信息摘要中提取校验码;
S103.根据S101步骤中所述SM3校验位的插入规则将SM3校验位添加到128位数据中;
S104.进行SM4加密过程;
S105.进行CAN信号传输,等待接收端的解码。

...

【专利技术属性】
技术研发人员:熊晓明黄泽武梁润华何柏声
申请(专利权)人:广东工业大学
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1