本發(fā)明屬于無線通信網(wǎng)絡的,更具體地,涉及一種多鏈跨區(qū)域的車聯(lián)網(wǎng)匿名認證和通信方法及系統(tǒng)。
背景技術:
1、車聯(lián)網(wǎng)是一種典型的智能交通系統(tǒng),可以為用戶提供更便捷、更安全、更智能的出行服務。車聯(lián)網(wǎng)采用的網(wǎng)絡結構是一種開放的移動ad?hoc網(wǎng)絡,網(wǎng)絡去中心化,自組織,支持多跳轉發(fā),節(jié)點移動速度快,時延要求嚴格。由于車聯(lián)網(wǎng)特殊的網(wǎng)絡結構和無線通信方式,在實際應用中很容易遭受各種網(wǎng)絡攻擊。為了保護車聯(lián)網(wǎng)通信實體的安全性和隱私性需要對車聯(lián)網(wǎng)的實體和消息進行認證,認證的同時還要防止車輛的位置等軌跡信息被暴露,即通信或消息認證還需要提供隱私保護功能。
2、近年來學者提出很多車聯(lián)網(wǎng)的認證協(xié)議,主要有這樣的幾類,基于公鑰基礎設施pki的方案中,為了實現(xiàn)認證的匿名性,需要多個證書來隱藏車輛的真實身份,大量匿名證書使用會導致證書的管理和撤銷變得復雜,需要管理中心參與認證,容易形成系統(tǒng)的瓶頸?;谏矸莸拿艽a認證方案,在車聯(lián)網(wǎng)中基于身份的車聯(lián)網(wǎng)認證方案中,很多方案為了保證認證的匿名性需要將系統(tǒng)密鑰保存在車輛的防纂改設備tpd中,通過系統(tǒng)密鑰和車輛的假名生成密鑰,驗證身份時使用假名,達到了認證的匿名性,但是需要tpd有很強的安全性。還有些方案不需要tpd,但是這些方案需要發(fā)布信息或通信需要第三方認證機構參與生成車輛的私鑰和假名,當瞬時車輛很多時,也容易形成認證瓶頸,不符合車聯(lián)網(wǎng)去中心化的思想。區(qū)塊鏈技術可以實現(xiàn)分布式數(shù)據(jù)存儲、點對點傳輸、共識機制、加密算法等機制,適用于具有分布式共識特征的去中心化應用環(huán)境,尤其是在車輛彼此不信任的復雜道路交通環(huán)境中。
3、目前也有不少基于區(qū)塊鏈的車聯(lián)網(wǎng)認證方案,中國專利文獻cn113596778a公開了一種基于區(qū)塊鏈的車聯(lián)網(wǎng)節(jié)點匿名認證方法,所述認證方法包括以下步驟:(1)系統(tǒng)初始化;(2)lea將車輛的注冊請求信息以及車輛公鑰信息打包成生成的交易上傳至區(qū)塊鏈網(wǎng)絡中,同時通過可信中心ta向車輛頒發(fā)證書;(3)車輛與路側單元rsu認證;(4)車輛與車輛認證。中國專利文獻cn117041943a公開了一種車聯(lián)網(wǎng)中基于區(qū)塊鏈的完全匿名認證與密鑰協(xié)商方法,該方法設計了一種基于同態(tài)加密的假名生成算法,保證車輛假名可驗證性的同時,實現(xiàn)了車輛假名的完全匿名性;在此基礎上,設計了一種假名自動撤銷機制,將一個與時間相關的秘密值嵌入到假名中,并定期更新該秘密值,以自動撤銷過期的假名;此外,使用去中心化的區(qū)塊鏈技術驗證和存儲車輛證書,提高了車輛證書的認證效率;本發(fā)明不僅實現(xiàn)了車輛假名的可驗證性和完全匿名性,亦實現(xiàn)了假名的自動撤銷,可用于車聯(lián)網(wǎng)環(huán)境下的各種認證場景。但是上述兩種方法仍需多個證書的參與,認證過程較為復雜。
4、還有很多方案,車輛每次需要和路側單元rsu或基礎設施認證,為了保證認證的匿名性,都需要到第三方權威機構重新申請私鑰,造成通信交互次數(shù)過多,認證延時等問題。本文提出多鏈跨區(qū)域的匿名認證和通信方案,將車聯(lián)網(wǎng)分層,劃分多個區(qū)域,通過私有鏈,聯(lián)盟鏈多個區(qū)塊鏈聯(lián)合工作實現(xiàn)車輛與路側單元rsu或基礎設施,車輛與車輛的跨區(qū)域匿名認證和通信。
5、有鑒于此,本發(fā)明提出一種多鏈跨區(qū)域的車聯(lián)網(wǎng)匿名認證和通信方法,以解決車輛匿名認證需要頻繁和第三方協(xié)商私鑰和證書的問題。
技術實現(xiàn)思路
1、針對現(xiàn)有技術的不足,本發(fā)明的目的是公開一種多鏈跨區(qū)域的車聯(lián)網(wǎng)匿名認證和通信方法,以實現(xiàn)車聯(lián)網(wǎng)節(jié)點的無證書匿名認證方案,車輛可以根據(jù)第三方權威機構發(fā)布的公共參數(shù)自動更新認證私鑰和公鑰,縮短了認證延時,降低了認證的交互次數(shù)和復雜度。
2、本發(fā)明還公開了一種多鏈跨區(qū)域的車聯(lián)網(wǎng)匿名認證和通信系統(tǒng)。
3、本發(fā)明為了實現(xiàn)上述目的所采用的詳細技術方案如下:
4、一種多鏈跨區(qū)域的車聯(lián)網(wǎng)匿名認證和通信方法,所述方法包括以下步驟:
5、s1、車聯(lián)網(wǎng)系統(tǒng)初始化;
6、s2、車輛注冊;
7、s3、rsu注冊;
8、s4、車輛與rsu的跨越匿名認證和通信密鑰協(xié)商;
9、s5、車輛與車輛的跨越匿名認證和通信密鑰協(xié)商;
10、s6、臨時公鑰的更新。
11、根據(jù)本發(fā)明優(yōu)選的,所述車聯(lián)網(wǎng)系統(tǒng)初始化是指,選擇有限域上的橢圓曲線,在橢圓曲線上構造循環(huán)加法群g,p是g的生成元,選擇隨機數(shù)s作為系統(tǒng)的主密鑰,計算系統(tǒng)公鑰,計算密鑰更新參數(shù)和密鑰更新參數(shù)的使用期限,選擇4個安全hash函數(shù);然后,可信中心ta公布系統(tǒng)參數(shù),包括橢圓曲線、生成元p、系統(tǒng)公鑰、密鑰更新參數(shù)和密鑰更新參數(shù)的使用期限、hash函數(shù),并將系統(tǒng)參數(shù)寫入核心層的信息注冊鏈中。
12、根據(jù)本發(fā)明優(yōu)選的,所述車輛注冊包括以下步驟:
13、s21、車輛通過安全通道向附近的可信中心ta提交注冊信息,包括車牌號、車主信息、車輛的id、所屬區(qū)域的區(qū)域id;
14、s22、可信中心ta服務器驗證審核車輛信息的真?zhèn)?,可信中心ta確認車輛信息有效后,車輛選擇隨機數(shù),在循環(huán)加法群g上分別計算隨機數(shù)與生成元p的積,然后將積值發(fā)送給可信中心ta;
15、s23、可信中心ta分別將積值和密鑰更新參數(shù)進行單向的hash運算得到車輛的密鑰;可信中心ta根據(jù)車輛的多個密鑰計算車輛的多個臨時公鑰;可信中心ta將車輛的注冊信息及多個密鑰發(fā)布到核心層的私有鏈信息注冊鏈;可信中心ta將車輛的多個臨時公鑰和臨時公鑰的使用期限發(fā)布到私有鏈的全局臨時公鑰鏈;
16、s24、車輛根據(jù)可信中心ta公布的系統(tǒng)參數(shù)和密鑰更新參數(shù)計算車輛自身的多個密鑰和多個臨時公鑰,并安全保存。
17、根據(jù)本發(fā)明優(yōu)選的,所述rsu注冊包括以下步驟:
18、s31、rsu選擇一個隨機數(shù),計算隨機數(shù)與生成元p的乘積,rsu將身份id、區(qū)域id和積值發(fā)送給附近的可信中心ta驗證;
19、s32、可信中心ta驗證信息有效后,可信中心ta將積值和密鑰更新參數(shù)進行單向的hash運算得到rsu的密鑰,可信中心ta根據(jù)rsu的密鑰計算rsu的公鑰,將rsu的身份id和區(qū)域id發(fā)布到核心層的注冊信息鏈,rsu的公鑰和公鑰的使用期限發(fā)布到核心的全局臨時公鑰鏈;
20、s33、rsu根據(jù)可信中心ta公布的系統(tǒng)參數(shù)和密鑰更新參數(shù)計算車輛自身的密鑰和公鑰,并安全保存。
21、根據(jù)本發(fā)明優(yōu)選的,所述車輛與rsu的跨越匿名認證和通信密鑰協(xié)商是指,當車輛到達一個區(qū)域需要與附近的rsu通信時,具體包括以下步驟:
22、s41、rsu認證車輛:
23、車輛選擇一個隨機數(shù),結合車輛的真實id和可信中心ta的公鑰計算一個假名,選擇一個密鑰對假名、要發(fā)送的消息m、和當前時間戳的簽名,將簽名和密鑰對應的公鑰以及當前的時間戳一起發(fā)送給rsu;
24、rsu收到后,檢查時間戳是否在有效期內(nèi),使用車輛的公鑰驗證簽名等式是否成立,如果成立,則檢查車輛與rsu是否是一個區(qū)域:
25、如果車輛與rsu是一個區(qū)域,則檢查聯(lián)盟鏈中是否有車輛的公鑰,如果有則車輛合法;
26、如果車輛與rsu不是一個區(qū)域,則向附近的可信中心ta發(fā)送查詢請求,可信中心ta查詢?nèi)峙R時公鑰鏈,如果有車輛的公鑰,則將查詢結果使用rsu的密鑰進行對稱加密后發(fā)送給rsu,rsu將車輛的公鑰添加到rsu所在的聯(lián)盟鏈,以后車輛如何還需要認證,rsu就可以直接查詢rsu所在的聯(lián)盟鏈了,不需要再和可信中心ta交互。
27、s42、車輛認證rsu:
28、rsu將使用密鑰對要發(fā)送的消息和當前的時間戳簽名、公鑰和當前的時間戳發(fā)送給出車輛,車輛驗證時間戳是否在有效時間內(nèi),如果在則驗證簽名等式是否成立,如果成立,檢查車輛與rsu是否是一個區(qū)域:
29、如果車輛與rsu是一個區(qū)域,則檢查rsu的聯(lián)盟鏈中是否有rsu的公鑰,如果有則rsu合法;
30、如果車輛與rsu不是一個區(qū)域,則向車輛所屬區(qū)域的可信中心ta發(fā)送查詢請求,可信中心ta查詢?nèi)峙R時公鑰鏈,如果有rsu的公鑰,則將查詢結果使用車輛的密鑰進行對稱加密后發(fā)送給車輛,車輛將rsu的公鑰保存在本地;
31、s43、rsu被認證通過后,車輛與rsu使用雙方的公鑰協(xié)商通信密鑰,進行安全數(shù)據(jù)通信。
32、根據(jù)本發(fā)明優(yōu)選的,所述車輛與車輛的跨越匿名認證和通信密鑰協(xié)商具體步驟如下:
33、s51、當車輛到達一個區(qū)域后,需要發(fā)送消息,車輛計算選擇一個隨機數(shù),計算假名,通過假名和車輛的一個密鑰計算消息簽名,簽名中含有當前的時間戳,將簽名和車輛的公鑰以及當前的時間戳發(fā)送給其他車輛;
34、s52、其他車輛收到后,檢查當前的時間戳是否在有效期內(nèi),如果當前的時間戳沒有過期,則驗證簽名等式是否成立,如果成立,則訪問rsu的聯(lián)盟鏈;
35、s53、如果聯(lián)盟鏈有發(fā)送方車輛的公鑰,則簽名有效,表明當前車輛合法;如果本地的聯(lián)盟鏈沒有該車輛的公鑰,并且接收車輛和發(fā)送車輛不是一個區(qū)域,接收車輛則向當前區(qū)域的可信中心ta發(fā)送查詢請求,可信中心ta則通過全局臨時公鑰鏈查詢車輛公鑰是否存在,并將查詢結果返回給車輛,車輛收到消息,確認消息簽名是否有效,如果有效則表明當前車輛合法;
36、s54、對方車輛使用相同的方法認證,認證成功后雙方計算共享密鑰,使用共享密鑰進行數(shù)據(jù)通信。
37、根據(jù)本發(fā)明優(yōu)選的,所述臨時公鑰的更新是指:
38、ta定期在網(wǎng)絡中發(fā)布密鑰更新參數(shù)和密鑰更新參數(shù)的使用期限,車輛或rsu收到后,根據(jù)密鑰更新參數(shù),計算新的公鑰和私鑰:核心層的可信中心ta根據(jù)密鑰更新參數(shù),更新全局臨時公鑰鏈和所在區(qū)域的聯(lián)盟鏈;網(wǎng)絡中車輛和rsu根據(jù)可信中心ta的密鑰更新參數(shù),分別計算自己的公鑰和私鑰并安全保存;
39、所述車輛有多個公鑰,并且公鑰和私鑰動態(tài)更新,車輛在與車輛,車輛與rsu認證時,使用不同私鑰簽名,公鑰認證,其他節(jié)點很難根據(jù)公鑰追蹤到車輛。
40、在本發(fā)明的另一個方面當中,提供了一種多鏈跨區(qū)域的車聯(lián)網(wǎng)匿名認證和通信系統(tǒng),所述系統(tǒng)采用分層分區(qū)多鏈的區(qū)塊鏈結構,包括核心層和管理層,核心層采用區(qū)塊鏈技術的私有鏈作為信息平臺,通過私有鏈在各個可信中心ta之間實現(xiàn)信息的分布式存儲和同步;管理層各區(qū)域采用區(qū)塊鏈技術中的聯(lián)盟鏈在為信息的平臺;所述可信中心ta既屬于核心層也存在于管理層,可信中心ta需要同時維護私有鏈和聯(lián)盟鏈的信息。
41、根據(jù)本發(fā)明優(yōu)選的,所述核心層由可信中心ta和服務器組成,用于完成車輛和rsu的注冊,車輛和rsu真實身份信息的維護,車輛和rsu臨時公鑰的維護,生成和存儲車輛和rsu協(xié)商秘密參數(shù);
42、所述管理層由可信中心ta、rsu、車輛以及一些邊緣節(jié)點組成,可信中心ta和rsu、車輛、邊緣節(jié)點根據(jù)位置來劃分區(qū)域,各區(qū)域采用區(qū)塊鏈技術中的聯(lián)盟鏈作為信息的平臺。
43、根據(jù)本發(fā)明優(yōu)選的,所述私有鏈包括兩個鏈,一個是注冊信息鏈,用于管理車輛和rsu的注冊信息、身份信息、車輛與可信中心ta協(xié)商的密鑰以及rsu與可信中心ta協(xié)商的密鑰;另一個是全局臨時公鑰鏈,用于維護車輛的臨時公鑰和公鑰使用期限,提供跨域服務;
44、所述聯(lián)盟鏈存儲的是車輛和rsu的臨時公鑰以及臨時公鑰的使用期限,每個區(qū)域有區(qū)域aid,為了提高聯(lián)盟鏈的維護效率,聯(lián)盟鏈中可信中心ta和rsu維護數(shù)據(jù),車輛只能訪問數(shù)據(jù),不參與共識機制;在聯(lián)盟鏈中,可信中心ta為區(qū)塊鏈的全節(jié)點,存儲多個區(qū)域車輛和rsu的臨時公鑰和臨時公鑰的使用期限,rsu和邊緣節(jié)點是部分節(jié)點,主要存儲本區(qū)域的車輛和rsu的臨時公鑰和臨時公鑰的使用期限。
45、與現(xiàn)有技術相比,本發(fā)明的有益效果為:
46、(1)本發(fā)明的車輛在認證過程中發(fā)送消息簽名使用的是假名和車輛的臨時公鑰,攻擊者和其他節(jié)點無法通過假名計算得到車輛的真實id,車輛有多個臨時公鑰,每次簽名隨機選擇其中一個,而且車輛的臨時公鑰是定期更新的,所以其他攻擊者和車輛很難從假名和臨時公鑰去鎖定一個車輛,車輛的認證和通信具有匿名性和不可鏈接性;車輛認證過程中,如果車輛的消息有異常,可信中心ta可以通過車輛的假名計算出車輛的真實id,從而追蹤到車輛,所以該認證過程同時滿足可追蹤性。
47、(2)本發(fā)明車輛和rsu進行跨域認證時,需要查詢其他域的節(jié)點公鑰時,rsu可以通過ta的全局臨時公鑰鏈輔助查詢,并將查詢結果保存到本區(qū)域的聯(lián)盟鏈,在后續(xù)通信不需要再次查詢,減少了通信次數(shù)。車輛和車輛跨越認證時,需要驗證公鑰是否存在,車輛首先查詢本區(qū)域的聯(lián)盟鏈,如果沒有再向可信中心ta發(fā)送查詢請求,可信中心ta訪問全局臨時公鑰鏈,并將查詢結果返回給車輛。本發(fā)明通過可信中心ta可以有效實現(xiàn)私有鏈和聯(lián)盟鏈的信息安全銜接,提高了認證的效率,并保證了信息的安全性,私有鏈只有可信中心ta組成,既避免了單點失效,也保證了數(shù)據(jù)的安全性。聯(lián)盟鏈存儲的主要是區(qū)域的臨時公鑰信息,參與共識的是rsu和一些邊緣節(jié)點,其他網(wǎng)絡節(jié)點只能查詢數(shù)據(jù)。rsu和邊緣節(jié)點在區(qū)域內(nèi)是較少數(shù)的節(jié)點,由少數(shù)節(jié)點維護數(shù)據(jù),這樣聯(lián)盟鏈有很高的運行效率。
48、(3)本發(fā)明沒有使用證書,減少證書的發(fā)布,管理等開銷,通過臨時公鑰來保證認證的可靠性,通過ta在車聯(lián)網(wǎng)中廣播發(fā)布公鑰更新參數(shù),讓各個節(jié)點自己單獨實現(xiàn)臨時公鑰的更新,實現(xiàn)簡單,既實現(xiàn)了認證的匿名性,不可鏈接性等安全屬性,也保證認證的高效性。