本技術(shù)涉及汽車通信,具體而言,涉及一種can通道接入認(rèn)證方法、裝置、設(shè)備及介質(zhì)。
背景技術(shù):
1、can(controller?area?network,控制器局域網(wǎng)絡(luò))通道接入認(rèn)證是確保can總線網(wǎng)絡(luò)安全、可靠運(yùn)行的關(guān)鍵機(jī)制。它通過物理層連接、協(xié)議規(guī)范及安全認(rèn)證,防止非法設(shè)備接入,避免數(shù)據(jù)篡改和通信沖突。在汽車、工業(yè)自動(dòng)化等領(lǐng)域,接入認(rèn)證保障了系統(tǒng)穩(wěn)定性和數(shù)據(jù)可靠性。相關(guān)技術(shù)中,can通道接入認(rèn)證主要是依靠純手碼代碼實(shí)現(xiàn),不符合autosar(automotive?open?system?architecture,汽車開放系統(tǒng)架構(gòu))的統(tǒng)一標(biāo)準(zhǔn),存在開發(fā)效率低下以及適配性低下的技術(shù)問題。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)在于提供一種can通道接入認(rèn)證方法、裝置、設(shè)備及介質(zhì),旨在解決相關(guān)技術(shù)不符合autosar的統(tǒng)一標(biāo)準(zhǔn),存在開發(fā)效率低下以及適配性低下的問題。
2、本技術(shù)第一方面提供一種can通道接入認(rèn)證方法,所述方法應(yīng)用于汽車ecu中,所述方法包括:
3、獲取can通道接收的待處理報(bào)文,并對(duì)所述待處理報(bào)文進(jìn)行篩選,確定目標(biāo)診斷報(bào)文;
4、對(duì)所述目標(biāo)診斷報(bào)文進(jìn)行格式驗(yàn)證,以在所述目標(biāo)診斷報(bào)文中確定第一目標(biāo)報(bào)文;
5、以預(yù)設(shè)的數(shù)據(jù)格式為基礎(chǔ),對(duì)所述第一目標(biāo)報(bào)文進(jìn)行重新組裝,得到重新組裝之后的第一目標(biāo)報(bào)文;
6、對(duì)所述重新組裝之后的第一目標(biāo)報(bào)文中的路由關(guān)系進(jìn)行驗(yàn)證,以在所述重新組裝之后的第一目標(biāo)報(bào)文之中確定第二目標(biāo)報(bào)文;
7、對(duì)所述第二目標(biāo)報(bào)文進(jìn)行接入認(rèn)證,確定所述第二目標(biāo)報(bào)文對(duì)應(yīng)的can通道接入認(rèn)證結(jié)果。
8、本方案中,通過對(duì)can通道接收的待處理報(bào)文進(jìn)行篩選、格式驗(yàn)證、重新組裝、路由關(guān)系驗(yàn)證以及報(bào)文認(rèn)證,不僅實(shí)現(xiàn)了can通道接入認(rèn)證,還可以適配于汽車ecu(electroniccontrol?unit,單子控制單元)的autosar中,提升了開發(fā)效率以及適配性。
9、結(jié)合第一方面,在一種可能的實(shí)施方式中,所述對(duì)所述第二目標(biāo)報(bào)文進(jìn)行接入認(rèn)證,確定所述第二目標(biāo)報(bào)文對(duì)應(yīng)的can通道接入認(rèn)證結(jié)果,包括:
10、生成隨機(jī)密鑰種子,并根據(jù)所述隨機(jī)密鑰種子以及第二目標(biāo)報(bào)文中的數(shù)據(jù),獲取目標(biāo)認(rèn)證數(shù)據(jù);
11、獲取所述目標(biāo)認(rèn)證數(shù)據(jù)對(duì)應(yīng)的基于密碼的消息認(rèn)證碼,得到所述目標(biāo)認(rèn)證數(shù)據(jù)對(duì)應(yīng)的第一密鑰值;
12、將所述目標(biāo)認(rèn)證數(shù)據(jù)傳輸至診斷設(shè)備中,以接收所述診斷設(shè)備反饋的關(guān)于所述目標(biāo)認(rèn)證數(shù)據(jù)的第二密鑰值;
13、根據(jù)所述第一密鑰值以及所述第二密鑰值,確定所述第二目標(biāo)報(bào)文對(duì)應(yīng)的can通道接入認(rèn)證結(jié)果。
14、結(jié)合第一方面,在一種可能的實(shí)施方式中,根據(jù)所述第一密鑰值以及所述第二密鑰值,確定所述第二目標(biāo)報(bào)文對(duì)應(yīng)的can通道接入認(rèn)證結(jié)果,包括:
15、在所述第一密鑰值與所述第二密鑰值相同的情況下,則確定所述第二目標(biāo)報(bào)文對(duì)應(yīng)的can通道接入認(rèn)證結(jié)果為接入認(rèn)證通過;
16、在所述第一密鑰值與所述第二密鑰值不同的情況下,則確定所述第二目標(biāo)報(bào)文對(duì)應(yīng)的can通道接入認(rèn)證結(jié)果為接入認(rèn)證失敗。
17、本方案中,通過第一密鑰值以及所述第二密鑰值進(jìn)行認(rèn)證,實(shí)現(xiàn)了can通道的接入認(rèn)證,保證了接入安全性。
18、結(jié)合第一方面,在一種可能的實(shí)施方式中,在所述確定所述第二目標(biāo)報(bào)文對(duì)應(yīng)的can通道接入認(rèn)證結(jié)果之后,還包括:
19、在所述第二目標(biāo)報(bào)文對(duì)應(yīng)的can通道接入認(rèn)證結(jié)果為接入認(rèn)證通過的條件下,則生成接入認(rèn)證成功報(bào)文,并將所述接入認(rèn)證成功報(bào)文傳輸至所述診斷設(shè)備中,以獲取所述診斷設(shè)備傳輸?shù)慕⑿奶B接的心跳報(bào)文;
20、在所述第二目標(biāo)報(bào)文對(duì)應(yīng)的can通道接入認(rèn)證結(jié)果為接入認(rèn)證失敗的條件下,則生成接入認(rèn)證報(bào)文失敗報(bào)文,并將所述報(bào)文失敗報(bào)文傳輸至所述診斷設(shè)備中,結(jié)束此次接入認(rèn)證流程。
21、本方案中,根據(jù)第二目標(biāo)報(bào)文對(duì)應(yīng)的can通道接入認(rèn)證結(jié)果對(duì)診斷設(shè)備的接入進(jìn)行了管理,避免了非法設(shè)備的接入,保證了接入安全性。
22、結(jié)合第一方面,在一種可能的實(shí)施方式中,在所述確定所述第二目標(biāo)報(bào)文對(duì)應(yīng)的can通道接入認(rèn)證結(jié)果之后,還包括:
23、在所述第二目標(biāo)報(bào)文對(duì)應(yīng)的can通道接入認(rèn)證結(jié)果為接入認(rèn)證通過的條件下,按預(yù)設(shè)的心跳認(rèn)證周期,對(duì)所述診斷設(shè)備傳輸?shù)男奶鴪?bào)文進(jìn)行認(rèn)證,確定心跳認(rèn)證結(jié)果;其中,所述心跳認(rèn)證結(jié)果包括心跳認(rèn)證成功或心跳認(rèn)證失??;
24、在所述心跳認(rèn)證結(jié)果為心跳認(rèn)證成功的條件下,則繼續(xù)保持心跳連接,并進(jìn)入下一個(gè)心跳認(rèn)證周期;
25、在所述心跳認(rèn)證結(jié)果為心跳認(rèn)證失敗的情況下,則斷開心跳連接,生成心跳認(rèn)證失敗報(bào)文,并將所述心跳認(rèn)證失敗報(bào)文傳輸給所述診斷設(shè)備。
26、本方案中,通過對(duì)診斷設(shè)備傳輸?shù)男奶鴪?bào)文進(jìn)行認(rèn)證,確定了心跳認(rèn)證結(jié)果,并根據(jù)該心跳認(rèn)證結(jié)果進(jìn)行心跳連接的管理,可以實(shí)時(shí)檢測(cè)連接狀態(tài),及時(shí)發(fā)現(xiàn)異常。
27、結(jié)合第一方面,在一種可能的實(shí)施方式中,所述對(duì)所述重新組裝之后的第一目標(biāo)報(bào)文中的路由關(guān)系進(jìn)行驗(yàn)證,以在所述重新組裝之后的第一目標(biāo)報(bào)文之中確定第二目標(biāo)報(bào)文,包括:
28、確定所述重新組裝之后的第一目標(biāo)報(bào)文對(duì)應(yīng)的唯一標(biāo)識(shí)符,并根據(jù)所述唯一標(biāo)識(shí)符,在預(yù)設(shè)的靜態(tài)路由表中進(jìn)行查找,確定所述第一目標(biāo)報(bào)文對(duì)應(yīng)的目標(biāo)地址;
29、驗(yàn)證所述第一目標(biāo)報(bào)文對(duì)應(yīng)的目標(biāo)地址的正確性,確定所述第一目標(biāo)報(bào)文對(duì)應(yīng)的地址驗(yàn)證結(jié)果;其中,所述地址驗(yàn)證結(jié)果包括地址驗(yàn)證成功或者地址驗(yàn)證失?。?/p>
30、確定所述地址驗(yàn)證結(jié)果為地址驗(yàn)證成功的第一目標(biāo)報(bào)文為第二目標(biāo)報(bào)文。
31、本方案中,通過對(duì)所述重新組裝之后的第一目標(biāo)報(bào)文中的路由關(guān)系進(jìn)行驗(yàn)證,可以對(duì)需要認(rèn)證的報(bào)文進(jìn)行篩選,從而實(shí)現(xiàn)認(rèn)證過程的精準(zhǔn)處理。
32、結(jié)合第一方面,在一種可能的實(shí)施方式中,該一種can通道接入認(rèn)證方法,還包括:
33、確定ecu控制模式;其中,所述ecu控制模式為工程模式或客戶模式;
34、在所述ecu控制模式為工程模式的條件下,則關(guān)閉can通道接入認(rèn)證,允許診斷設(shè)備通過obd接口輸入診斷報(bào)文,并將所述診斷報(bào)文通過can通道進(jìn)行正常轉(zhuǎn)發(fā);
35、在所述ecu控制模式為客戶模式的條件下,則開啟can通道接入認(rèn)證,將診斷設(shè)備通過obd(on?board?diagnostics,車載自動(dòng)診斷系統(tǒng))接口輸入診斷報(bào)文進(jìn)行認(rèn)證之后,再通過can通道進(jìn)行轉(zhuǎn)發(fā)。
36、本方案中,可以通過ecu控制模式調(diào)節(jié)自由控制can通道接入認(rèn)證功能的開啟與關(guān)閉,具有較高的靈活性。
37、本技術(shù)第二方面提供一種can通道接入認(rèn)證裝置,所述裝置包括:
38、驅(qū)動(dòng)層,用于獲取can通道接收的待處理報(bào)文,并對(duì)所述待處理報(bào)文進(jìn)行篩選,確定目標(biāo)診斷報(bào)文;
39、can接口層,用于對(duì)所述目標(biāo)診斷報(bào)文進(jìn)行格式驗(yàn)證,以在所述目標(biāo)診斷報(bào)文中確定第一目標(biāo)報(bào)文;
40、傳輸協(xié)議層,用于以預(yù)設(shè)的數(shù)據(jù)格式為基礎(chǔ),對(duì)所述第一目標(biāo)報(bào)文進(jìn)行重新組裝,得到重新組裝之后的第一目標(biāo)報(bào)文;
41、數(shù)據(jù)接收層,用于對(duì)所述重新組裝之后的第一目標(biāo)報(bào)文中的路由關(guān)系進(jìn)行驗(yàn)證,以在所述重新組裝之后的第一目標(biāo)報(bào)文之中確定第二目標(biāo)報(bào)文;
42、接入認(rèn)證層,用于對(duì)所述第二目標(biāo)報(bào)文進(jìn)行接入認(rèn)證,確定所述第二目標(biāo)報(bào)文對(duì)應(yīng)的can通道接入認(rèn)證結(jié)果。
43、本技術(shù)第三方面提供一種電子設(shè)備,包括處理器和存儲(chǔ)器;所述存儲(chǔ)器用于存儲(chǔ)代碼指令;所述處理器用于運(yùn)行所述代碼指令,使得所述電子設(shè)備執(zhí)行如第一方面中任一種可能的實(shí)施方式中所述的can通道接入認(rèn)證方法。
44、本技術(shù)第四方面提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),包括計(jì)算機(jī)指令,當(dāng)所述計(jì)算機(jī)指令在電子設(shè)備上運(yùn)行時(shí),使得所述電子設(shè)備執(zhí)行如第一方面中任一種可能的實(shí)施方式中的can通道接入認(rèn)證方法。
45、其中,第二方面、第三方面和第四方面中任一種實(shí)現(xiàn)方式所帶來的技術(shù)效果可參見第一方面中不同實(shí)現(xiàn)方式所帶來的技術(shù)效果,此處不再贅述。