基于秘密共享算法的无人机CAN总线加密通信系统及方法

未命名 08-15 阅读:297 评论:0

基于秘密共享算法的无人机can总线加密通信系统及方法
技术领域
1.本发明属于通信技术领域,更进一步涉及数字信息传输技术领域中的一种基于秘密共享算法的无人机can总线加密通信系统及方法。本发明可用在无人机飞行时实时的can总线加密通信,提升无人机飞行时对can总线攻击的抵御能力。


背景技术:

2.为实时可靠地实现无人机系统中各ecu(electronic control unit,电子控制单元)之间的数据通信,can总线通信技术被用于无人机。can总线为无人机内部实时通信提供了强有力的技术支持,但同时也因为缺乏身份验证和通信安全机制,容易遭到包括伪造、重发、洪泛在内的多种类型的攻击。在实际应用中,无人机的飞行由各个ecu协同控制。can总线广播不同ecu之间的通信信息。在通信过程中,can通信帧除了id之外,不携带发送者和接收者的任何信息,即不包含身份验证机制,任何ecu发送的信息可以通过can总线到达其他ecu上。ecu只读取其预先订阅的接受名单上的can帧,但由于缺乏信息来源和接受者的身份认证,恶意的ecu节点可以监控can总线获取所有广播消息,并注入具有任意id和有负载数据的新信息。各种攻击表明,利用此漏洞能恶意控制无人机ecu,进而影响无人机飞行行为,如让无人机高速飞行、脱离控制等。于此同时,恶意攻击也可以通过逆向工程推理出ecu的信息模式,对无人机造成更大危害。这些攻击可以通过在飞控总线接口、远程通信模块接口接入实现。
3.西北工业大学在其申请的专利文献“一种避免冲突的can总线通信网络设计方法”(申请号:202011370719.6,申请公布号:cn 112532496a,申请日:2020.11.30)中公布了一种避免冲突的无人机can总线通信网络设计方法。该方法的实现步骤为,首先,搭建网络系统,飞控计算机和多个伺服设备通过can互连,飞控计算机每个通信周期项设备发送一个携带有id地址的控制帧,伺服设备每个通信周期向飞控计算机反馈状态信息。然后,定义飞控计算机为最高优先级,对伺服设备编号1到n,伺服设备优先级依次降低。飞控计算机通过本机20ms中断建立通信周期并发起通信,按照伺服设备编号依次向总线发送携带有id地址的控制帧。其次,伺服设备保持侦听状态,接受id地址与飞控计算机一致的控制帧,接受后与总线建立同步,从同步点开始计时,延时向飞控计算机发送携带有id地址的反馈数据帧。最后,飞控计算机接受伺服设备反馈的数据帧。该方法实现了can总线技术在无人机内部通信的应用。该方法保证了无人机内部通信的实时性和可靠性,且can总线通信网络互联简单,便于系统升级。但是,该can总线通信网络方法仍存在三点不足:其一,通信过程中,数据帧不携带发送者和接收者的任何信息,容易受到伪造攻击;其二,由于can总线的广播特性,监听者可以直接获取can通信数据帧,容易泄露无人机飞行数据;其三,数据帧不包含时间戳信息,容易受到重放、洪泛攻击,无人机飞行安全受到极大威胁。
4.吉林大学在申请的专利文献“一种基于can总线的数据加密传输方法”(申请号:202111200635.2,申请公布号:cn 113938304 a,申请日:2021.10.14)中公布了一种基于can总线的无人机数据加密传输方法。该方法的实现步骤为,首先,使用16位的ecc非对称加
密算法,使得每个无人机中的ecu均保存所有的公钥以及自己的私钥,并将椭圆曲线参数以及对应的公钥、私钥写入ecui的内存中。然后,在将需要传输的信息加密后,发送方通过can总线发送帧。其次,接受方接受数据帧,并对接受的数据帧进行判断。最后,接受方根据判断结果,对数据进行操作,实现数据的加密传输。该方法实现了基于can总线技术的无人机通信加密传输。该方法保证了无人机内部通信的实时性和安全性,但是,该can通信加密方法仍存在两点不足:其一,该方法需要预先计算、存储大量密钥,对ecu的算力、存储能力有较高要求,由于无人机受自身特点限制算力、存储无法满足该方法要求;其二,通信负载大,一次数据加密传输需要双方多次收发通信帧,不适用于传输数据量大的无人机内部网络。


技术实现要素:

5.本发明的目的是针对上述现有技术存在的不足,提出一种基于秘密共享算法的无人机can总线加密通信系统及方法,用于解决现有技术中存在的无人机can总线通信的容易受到伪造、洪泛和重放攻击的安全隐患问题,以及现有加密通信方法存储计算要求高、通信负载大的技术问题。
6.实现本发明目的的思路是:本发明采用秘密共享算法,通过为每个无人机can通信会话分别生成会话密钥,根据会话密钥生成秘密,依据会话密钥订阅列表,集中式地为列表中的ecu分配秘密,同一会话的ecu之间通过共享秘密,使得ecu能够迅速有效地恢复出会话密钥,降低通信负载。通过使用分配好地会话密钥加密数据,使得通信过程中数据可以加密传输,避免信息泄露。通过在密钥分发协议中添加身份验证机制与时间戳信息,使得无人机有效抵御伪造、重放、洪泛攻击,保证无人机的飞行安全。本发明采用拉格朗日插值算法,通过广播ecu恢复会话密钥的辅助点,ecu收集辅助点并利用辅助点进行多项式插值计算,获得有限域下的多项式函数,使得ecu能够迅速有效地恢复对应的会话密钥,降低通信负载、计算算力和存储要求,解决现有加密通信方法存储计算要求高、通信负载大的技术问题。
7.为实现上述目的,本发明的加密通信系统包括无人机信号转换模块、密钥生成模块、消息验证模块、密钥分发模块、密钥恢复模块以及密钥确认模块,其中:
8.所述的无人机信号转换模块,用于将控制电信号转为can总线信号;通过消息帧中的仲裁字段对消息的优先级进行划分;通过消息帧的起始位对所有消息进行同步;
9.所述的密钥生成模块,用于生成无人机启动会话的会话消息标识符列表rml以及采用标准的aes128算法生成128bitecu密钥yi;采用标准的aes128算法生成rml中每个消息对应的128bit会话密钥skj,使用ecu密钥yi对每个会话密钥skj进行加密;生成一个递增计数量e作为时间戳;
10.所述的密钥分发模块,用于调用秘密共享算法分发会话密钥,生成对应会话密钥的的多项式,计算恢复多项式的辅助点;生成包含时间戳、随机偏移变量、消息验证码以及辅助点的消息帧;
11.所述的密钥恢复模块,用于通过拉格朗日插值法恢复会话密钥,利用解析获得的辅助点信息计算无人机密钥分发中心所生成的多项式在x=0处的多项式函数值,将对应值连接得到会话密钥;判断恢复的会话密钥的正确性,若相等,则会话密钥恢复成功,否则,则重新进行密钥恢复;
12.所述的密钥确认模块,用于确认会话密钥分发完成,根据生成的会话密钥连接结
果,计算mac,比较mac与解析出的会话密钥摘要是否相同。若是,则密钥体系构建成功,无人机启动;否则,执行重新进行密钥确认。
13.本发明的加密通信方法包括以下步骤:
14.步骤1,启动无人机信号转换模块将无人机控制电信号转为无人机can总线信号;
15.步骤2,密钥生成模块生成无人机启动会话的会话消息标识符列表rml以及采用标准的aes128算法生成128bitecu密钥yi;
16.步骤3,密钥生成模块采用标准的aes128算法生成rml中每个消息对应的128bit会话密钥skj,使用ecu密钥yi对每个会话密钥skj进行加密;
17.步骤4,密钥生成模块生成一个当前会话的递增计数量e作为时间戳;
18.步骤5,密钥分发模块利用秘密共享算法分发会话密钥;
19.步骤6,密钥恢复模块通过拉格朗日插值法恢复会话密钥:
20.步骤7,密钥确认模块确认会话密钥分发完成。
21.本发明与现有技术相比,具有以下优点:
22.第一,本发明的系统采用密钥分发模块和密钥恢复模块,克服了现有技术由于存储大量长期密钥和使用复杂密码算法造成的存储、计算算力要求高、通信负载大的缺陷,使得本发明大大减少了无人机can总线通信过程恢复密钥的计算量和通信负载,在确保无人机can总线通信安全性的同时,大大降低硬件部署的成本。
23.第二,本发明的方法采用秘密共享算法,同一会话的ecu之间秘密共享,克服了现有方法中采用ecc非对称加密算法预先计算、存储大量密钥的不足,使得本发明能够在降低对无人机存储、和通信负载的同时,确保无人机can总线能够抵御伪造、洪泛和重放攻击。
24.第三,本发明的方法采用拉格朗日插值算法,克服了现有技术中采用的ecc加密算法计算复杂度过大的不足,使得本发明能够大大减少无人机计算量,降低无人机计算要求,确保无人机迅速高效地恢复密钥的同时,能够正常安全飞行。
附图说明
25.图1为本发明的系统结构示意图;
26.图2为本发明的方法流程示意图;
27.图3为本发明的拉格朗日密钥恢复算法流程图;
28.图4为本发明的网关数量与数据帧传输时间关系的实验结果图;
29.图5为本发明的网关数量与协议运行时间关系的实验结果图。
具体实施方式
30.下面结合附图和实施例,对本发明作进一步详细描述。
31.参照图1,对本发明的系统做进一步详细描述。
32.无人机can总线加密通信系统,包括无人机信号转换模块、密钥生成模块、消息验证模块、密钥确认模块、密钥分发模块、密钥恢复模块,其中:
33.所述的无人机信号转换模块,用于将控制电信号转为can总线信号;通过消息帧中的仲裁字段对消息的优先级进行划分;通过消息帧的起始位对所有消息进行同步。
34.所述的密钥生成模块,用于生成无人机启动会话的会话消息标识符列表rml以及
采用标准的aes128算法生成128bitecu密钥yi;采用标准的aes128算法生成rml中每个消息对应的128bit会话密钥skj,使用ecu密钥yi对每个会话密钥skj进行加密;生成一个递增计数量e作为时间戳。
35.所述的密钥分发模块,用于调用秘密共享算法分发会话密钥,生成对应会话密钥的的多项式,计算恢复多项式的辅助点;生成包含时间戳、随机偏移变量、消息验证码以及辅助点的消息帧。
36.所述的密钥恢复模块,用于通过lagrange插值法恢复会话密钥,利用解析获得的辅助点信息计算无人机密钥分发中心所生成的多项式在x=0处的多项式函数值,将对应值连接得到会话密钥。判断恢复的会话密钥的正确性,若相等,则会话密钥恢复成功,否则,则重新进行密钥恢复。
37.所述的密钥确认模块,用于确认会话密钥分发完成,根据生成的会话密钥连接结果,计算mac,比较mac与解析出的会话密钥摘要是否相同。若是,则密钥体系构建成功,无人机启动;否则,执行重新进行密钥确认。
38.参照图2,对本发明的方法做进一步的详细描述。
39.所述的加密通信系统的基于秘密共享算法的无人机can总线加密通信方法,采用秘密共享算法进行密钥分发,采用拉格朗日插值法恢复会话密钥。该加密通信方法包括以下步骤:
40.步骤1,启动无人机信号转换模块将无人机控制电信号转为无人机can总线信号。
41.步骤2,密钥生成模块生成无人机启动会话的会话消息标识符列表rml以及采用标准的aes128算法生成128bitecu密钥yi。
42.所述的生成会话消息标识符列表rml指的是,按can总线中ecu启动时会话的产生顺序生成列表,列表内容为订阅对应会话的所有ecuid。
43.步骤3,密钥生成模块采用标准的aes128算法生成rml中每个消息对应的128bit会话密钥skj,使用ecu密钥yi对每个会话密钥skj进行加密。
44.步骤4,密钥生成模块生成一个当前会话的递增计数量e作为时间戳,递增计数量e在一次会话过程中保持不变,仅在开启下一次会话时发生递增,以此作为当前会话的时间戳,验证发送消息的时效性。
45.步骤5,密钥分发模块,在有限域gf(28)下,利用秘密共享算法分发会话密钥。
46.所述的秘密共享算法的步骤为:
47.第一步,密钥分发模块根据电子控制单元标识符ecuid采用标准的aes128算法生成128bit随机偏移变量ri,对于每个参与会话的ecui,计算消息验证码mac
yi
,通过总线向ecui发送消息帧pr
msg(i,e)
。其中pr
msg(i,e)
的帧格式如下:
[0048][0049]
其中,eidi表示参与会话的ecui对应的身份id,“||”表示对需要发送的信息对应的比特串进行连接操作;
[0050]
第二步,密钥分发模块解析消息帧,获得eidi、解析出的当前会话递增计数量ea、ri和
[0051]
第三步,密钥分发模块判断局部递增计数量ei是否小于或等于解析出的当前会话
递增计数量ea,其中,局部递增计数量ei为上一轮会话的递增计数量,若是,则使用e更新ei后,执行本步骤的第四步,否则,执行本步骤的第一步。
[0052]
第四步,密钥分发模块根据解析出来的e和ri使用blake2s标准算法,计算256bit的消息验证码mac,并用yi加密计算出的消息验证码mac,判断加密后的结果是否等于mac
yi
,若是,则执行本步骤的第五步,否则,执行本步骤的第一步。
[0053]
第五步,密钥分发模块使用yi加密ri生成新的随机偏移变量,将128-bit的会话密钥划分为16个字节,逐字节进行传输,会话密钥中的每个字节生成一个对应的多项式fb(x),其中,b∈[0,15],使用点集合中的tj个坐标点以及坐标点(0,sk
j[b]
),生成度为tj的会话多项式
[0054]
第六步,在会话多项式中任取横坐标作为辅助点的横坐标,将横坐标代入对应字节的会话多项式计算出纵坐标,作为ecu恢复密钥的辅助点的纵坐标。
[0055]
第七步,密钥分发模块将消息的id信息、辅助点、递增计数量、会话密钥加密后的消息验证码构成消息帧kd
msg(j,e)
,在can总线上进行广播。其中kd
msg(j,e)
帧格式如下:
[0056]
步骤6,密钥恢复模块,在有限域gf(28)下,通过拉格朗日插值法恢复会话密钥。
[0057]
参照图3,对拉格朗日插值法恢复密钥的步骤作进一步的描述。
[0058]
第一步,密钥恢复模块根据订阅列表,在总线上接收消息帧kd
msg(j,e)
,解析出递增计数量,辅助点纵坐标和判断局部递增计数量ei是否等于解析出的当前会话递增计数量ea,若是,执行本步骤的第二步,否则,执行本步骤的第四步。
[0059]
第二步,密钥恢复模块插值计算出当x=0时对应字节的多项式函数值。其中,将tj+1个辅助点记为则秘密恢复的插值公式如下:
[0060][0061]
第三步,密钥恢复模块连接计算所得的多项式原点值获取会话密钥,电子控制单元计算消息验证码mac,并用会话密钥skj加密计算出的消息验证码mac,比较加密后的结果与是否相等,若相等,则会话密钥恢复成功,否则,执行本步骤的第四步。
[0062]
第四步,密钥恢复模块将ecu的id信息、更新过的递增计数量、256bit消息验证码构成消息帧re
msg(i)
,重新请求无人机密钥分发中心重新发送消息帧kd
msg(j,e)

[0063]
步骤7,密钥确认模块确认会话密钥分发完成。
[0064]
所述的密钥确认模块确认会话密钥分发完成步骤为:
[0065]
第一步,所有的电子控制单元ecui计算恢复订阅列表sli中的所有会话密钥后,连接所有会话密钥,并使用密钥yi,计算会话密钥摘要,并发送消息帧co
msg(i)
。其中帧格式如下:
[0066][0067]
第二步,密钥分发模块接收消息帧co
msg(i)
,判断局部递增计数量ei与解析出的当前会话递增计数量ea是否相等,若是,则执行本步骤的第三步,否则,执行本步骤的第四步。
[0068]
第三步,密钥分发模块根据生成的会话密钥连接结果,计算mac,比较mac与解析出的会话密钥摘要是否相同。若是,则密钥体系构建成功,无人机启动;否则,执行本步骤的第四步。
[0069]
第四步,密钥分发模块将ecu的id信息、更新过的递增计数量、256bit消息验证码构成消息帧re
msg(i)
,重新请求无人机密钥分发中心重新发送消息帧co
msg(i)

[0070]
本发明的效果可以通过下面的仿真得到进一步证明。
[0071]
1.仿真实验条件。
[0072]
本发明的仿真实验的软件平台为:windows 10操作系统和python 3.10。
[0073]
2.仿真内容与结果分析。
[0074]
本发明的仿真实验是采用本发明所述的方法应用在基于px4开源飞控和can总线的无人机上,分别对数据帧传输时间随ecu数量变化和系统协议运行时间随ecu数量变化两个方面进行仿真实验。
[0075]
所使用的系统参数如下:本发明的加密通信系统的ecu数量n取值为2到5,通信会话数量m取值为1和6,采用arduino uno开发板充当电子控制单元网关,采用raspberry-pi 4b充当密钥分发中心,每次仅测试一条数据帧的发送时间,且数据帧均满足can/can-fd标准帧格式。
[0076]
第一个方面,是对于本发明加密通信系统的ecu数量与数据帧传输时间关系进行仿真实验。采用本发明的方法,分别得到会话数量为1和会话数量为6的不同网关数量条件下的数据帧传输时间,再将的数据帧传输时间随网关数量的变化绘制成如图4所示的两条曲线。
[0077]
第二个方面,是对于本发明加密通信系统的ecu数量与系统协议运行时间关系进行仿真实验。采用本发明的方法,分别得到会话数量为1和会话数量为6的不同网关数量条件下的系统协议完整运行,成功分发会话密钥的时间,再将的系统运行时间随网关数量的变化绘制成如图5所示的两条曲线。
[0078]
下面结合图4、图5的仿真图对本发明的效果做进一步的描述。
[0079]
图4中的横坐标表示基于秘密共享算法的无人机can总线加密通信系统的电子控制单元网关数量,纵坐标表示单位数据帧传输时间,单位为ms。图4中以菱形标示的曲线表示采用本发明方法仿真得到的会话数量为1时的数据帧传输时间随网关数量的关系曲线,以正方形标示的曲线,表示采用本发明方法仿真得到的会话数量为6时的数据帧传输时间随网关数量的关系曲线。
[0080]
从图4中可以看出:在会话数量为1的条件下,本发明的方法随着网关数量的增加,协议需要的数据帧传输时间,平均增加一个网关,传输时间仅增加1.392ms。在会话数量为6的条件下,平均每增加一个网关,传输时间仅增加3.357ms,能够迅速有效地实现轻量级的加密通信。
[0081]
图5中的横坐标表示基于秘密共享算法的无人机can总线加密通信系统的电子控制单元网关数量,纵坐标表示单位协议运行时间,单位为ms。图5中以菱形标示的曲线表示采用本发明方法仿真得到的会话数量为1时的系统协议运行时间随网关数量的关系曲线,以正方形标示的曲线,表示采用本发明方法仿真得到的会话数量为6时的系统协议运行时间随网关数量的关系曲线。
[0082]
从图5中可以看出:在会话数量为1的条件下,平均每增加一个网关,协议运行时间增加2.483ms;在会话数量为6的条件下,协议运行时间逐渐增加,在m=6时,平均每增加一个网关,传输时间增加4.657ms,会话密钥建立时间短,能够满足无人机飞行启动要求。
[0083]
上述仿真分析证明了本发明所提方法的正确性与有效性。

技术特征:
1.一种基于秘密共享的无人机can总线加密通信系统,包括无人机信号转换模块、密钥生成模块、消息验证模块、密钥确认模块,其特征在于:还包括密钥分发模块、密钥恢复模块,其中:所述的无人机信号转换模块,用于将控制电信号转为can总线信号;通过消息帧中的仲裁字段对消息的优先级进行划分;通过消息帧的起始位对所有消息进行同步;所述的密钥生成模块,用于生成无人机启动会话的会话消息标识符列表rml以及采用标准的aes128算法生成128bit ecu密钥y
i
;采用标准的aes128算法生成rml中每个消息对应的128bit会话密钥sk
j
,使用ecu密钥y
i
对每个会话密钥sk
j
进行加密;生成一个递增计数量e作为时间戳;所述的密钥分发模块,用于调用秘密共享算法分发会话密钥,生成对应会话密钥的的多项式,计算恢复多项式的辅助点;生成包含时间戳、随机偏移变量、消息验证码以及辅助点的消息帧;所述的密钥恢复模块,用于通过lagrange插值法恢复会话密钥,利用解析获得的辅助点信息计算无人机密钥分发中心所生成的多项式在x=0处的多项式函数值,将对应值连接得到会话密钥;判断恢复的会话密钥的正确性,若相等,则会话密钥恢复成功,否则,则重新进行密钥恢复;所述的密钥确认模块,用于确认会话密钥分发完成,根据生成的会话密钥连接结果,计算mac,比较mac与解析出的会话密钥摘要是否相同;若是,则密钥体系构建成功,无人机启动;否则,执行重新进行密钥确认。2.根据权利要求1所述的加密通信系统的一种基于秘密共享算法的无人机can总线加密通信方法,其特征在于,采用秘密共享算法进行密钥分发,采用lagrange插值法恢复会话密钥;该加密通信方法包括以下步骤:步骤1,启动无人机信号转换模块将无人机控制电信号转为无人机can总线信号;步骤2,密钥生成模块生成无人机启动会话的会话消息标识符列表rml以及采用标准的aes128算法生成128bit ecu密钥y
i
;步骤3,密钥生成模块采用标准的aes128算法生成rml中每个消息对应的128bit会话密钥sk
j
,使用ecu密钥y
i
对每个会话密钥sk
j
进行加密;步骤4,密钥生成模块生成一个当前会话的递增计数量e作为时间戳;步骤5,密钥分发模块利用秘密共享算法分发会话密钥;步骤6,密钥恢复模块通过lagrange插值法恢复会话密钥:步骤7,密钥确认模块确认会话密钥分发完成。3.根据权利要求2所述的基于秘密共享算法的无人机can总线加密通信方法,其特征在于,步骤2中所述的会话消息标识符列表rml指的是,按can总线中ecu启动时会话的产生顺序生成列表,列表内容为订阅对应会话的所有ecuid。4.根据权利要求2所述的基于秘密共享算法的无人机can总线加密通信方法,其特征在于,步骤4中所述的递增计数量e在一次会话过程中保持不变,仅在开启下一次会话时发生递增,以此作为当前会话的时间戳,验证发送消息的时效性。5.根据权利要求2所述的基于秘密共享算法的无人机can总线加密通信方法,其特征在于,步骤5中所述的秘密共享算法的步骤如下:
第一步,密钥分发模块根据电子控制单元标识符ecuid采用标准的aes128算法生成128bit随机偏移变量r
i
,对于每个参与会话的ecu
i
,计算消息验证码通过总线向ecu
i
发送消息帧pr
msg(i,e)
,pr
msg(i,e)
帧格式为:其中,eid
i
表示参与会话的ecu
i
对应的身份id,“||”表示对需要发送的信息对应的比特串进行连接操作;第二步,密钥分发模块解析消息帧,获得eid
i
、解析出的当前会话递增计数量e
a
、r
i
和第三步,密钥分发模块判断局部递增计数量e
i
是否小于或等于解析出的当前会话递增计数量e
a
,其中,局部递增计数量e
i
为上一轮会话的递增计数量,若是,则用e更新e
i
后执行第四步,否则,执行第一步;第四步,密钥分发模块根据解析出来的e和r
i
使用blake2s标准算法,计算256bit的消息验证码mac,并用y
i
加密计算出的消息验证码mac,判断加密后的结果是否等于若是,则执行第五步,否则,执行第一步;第五步,密钥分发模块使用y
i
加密r
i
生成新的随机偏移变量,将128-bit的会话密钥划分为16个字节,逐字节进行传输,会话密钥中的每个字节生成一个对应的多项式f
b
(x),其中,b∈[0,15],使用点集合中的t
j
个坐标点以及坐标点(0,sk
j[b]
),生成度为t
j
的会话多项式第六步,在会话多项式中任取横坐标作为辅助点的横坐标,将横坐标代入对应字节的会话多项式计算出纵坐标,作为ecu恢复密钥的辅助点的纵坐标;第七步,密钥分发模块将消息的id信息、辅助点、递增计数量、会话密钥加密后的消息验证码构成消息帧kd
msg(j,e)
,在can总线上进行广播。6.根据权利要求2所述的基于秘密共享算法的无人机can总线加密通信方法,其特征在于,步骤6中所述的lagrange插值法的步骤如下:第一步,密钥恢复模块根据订阅列表,在总线上接收消息帧kd
msg(j,e)
,解析出递增计数量,辅助点纵坐标和判断局部递增计数量e
i
是否等于解析出的当前会话递增计数量e
a
,若是,执行第二步,否则,执行第四步;第二步,密钥恢复模块插值计算出当x=0时对应字节的多项式函数值;第三步,密钥恢复模块连接计算所得的多项式原点值获取会话密钥,电子控制单元计算消息验证码mac,并用sk
j
加密计算出的消息验证码mac,比较加密后的结果与是否相等,若相等,则会话密钥恢复成功,否则,执行第四步;第四步,密钥恢复模块将ecu的id信息、更新过的递增计数量、256bit消息验证码构成消息帧re
msg(i)
,重新请求无人机密钥分发中心重新发送消息帧kd
msg(j,e)
。7.根据权利要求2所述的基于秘密共享算法的无人机can总线加密通信方法,其特征在于:步骤5中所述秘密共享算法在有限域gf(28)下进行,即加法与减法运算是异或运算,乘法是以不可约多项式为模进行的。8.根据权利要求2所述的基于秘密共享算法的无人机can总线加密通信方法,其特征在于,步骤7中所述确认会话密钥分发完成的步骤如下:
第一步,所有的电子控制单元ecu
i
计算恢复订阅列表sl
i
中的所有会话密钥后,连接所有会话密钥,并使用密钥y
i
,计算会话密钥摘要,并发送消息帧co
msg(i)
;第二步,密钥分发模块接收消息帧co
msg(i)
,判断局部递增计数量e
i
与解析出的当前会话递增计数量e
a
是否相等,若是,则执行第三步,否则,执行第四步;第三步,密钥分发模块根据生成的会话密钥连接结果,计算mac,比较mac与解析出的会话密钥摘要是否相同;若是,则密钥体系构建成功,无人机启动;否则,执行第四步;第四步,密钥分发模块将ecu的id信息、更新过的递增计数量、256bit消息验证码构成消息帧re
msg(i)
,重新请求无人机密钥分发中心重新发送消息帧co
msg(i)


技术总结
本发明提出了一种基于秘密共享算法的无人机CAN总线加密通信系统及方法,解决现有技术中存在的容易受到伪造、洪泛和重放攻击安全隐患,以及现有加密通信方法存储计算要求高、通信负载大的技术问题。本发明的技术方案包括:无人机预存储验证信息;密钥生成模块根据解析信息生成会话密钥和时间戳;密钥分发模块利用秘密共享算法分发会话密钥;密钥恢复模块利用拉格朗日插值法恢复会话密钥;密钥分发中心确认会话密钥分发完成。本发明能够保证无人机CAN总线加密通信,使无人机CAN总线具备加密和身份验证机制,显著提升无人机CAN总线的安全性。全性。全性。


技术研发人员:李腾 王浩宇 陈淑婷 王子涵 于润泽 陆畅 马卓
受保护的技术使用者:西安电子科技大学
技术研发日:2023.05.16
技术公布日:2023/8/14
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐