周 靖
汽車遙控門禁系統(tǒng)(RKE - remote keyless entry system)是一種應用于車輛的防盜技術。它可以用來遠程遙控車門的上鎖和解鎖請求。該系統(tǒng)通過鑰匙端發(fā)送一串特殊編碼的數(shù)據(jù),汽車防盜系統(tǒng)在接收到該串數(shù)據(jù)后,進行加解密的邏輯運算來判斷該數(shù)據(jù)的有效性,之后響應上鎖或解鎖的請求。
汽車遙控門禁系統(tǒng)于 1983年首次應用于 American Motors的產(chǎn)品中,而1989年GM在W平臺車系開始推廣該系統(tǒng)。
鑰匙ID/序列號:每一把遙控鑰匙都有一個序列號。同一廠家的序列號都具有唯一性。
編碼格式:無線信號的傳輸通常采用類似曼徹斯特編碼的方式進行,這樣,就可以不需要時鐘同步信號,而分辨出諸如連續(xù)的“0”或“1”之類的數(shù)據(jù)。曼徹斯特編碼的舉例,如圖1所示:
圖1 曼徹斯特編碼格式
加解密:通過安全算法,將一套數(shù)據(jù)在可讀性和不可讀性間相互轉換的過程。
按鍵狀態(tài):指出什么按鈕輸入激活了發(fā)送。
編碼字:當按鈕激活時,被重復發(fā)送的數(shù)據(jù)。
滾碼:用來使接收端判斷是否和鑰匙端同步的計數(shù)器。
RKE的基本原理是,當用戶按下遙控鑰匙的按鍵后,鑰匙芯片中的軟件根據(jù)選定的加密算法,將鑰匙序列號、滾碼及按鍵信息組合成一串無可讀性的數(shù)據(jù),加載在無線載波信號上,進行廣播發(fā)送。而整車接收設備,則是周期性地監(jiān)聽無線信號。當收到有效頻率的無線載波信號后,接收器將從載波上將有效數(shù)據(jù)調制出來,然后根據(jù)鑰匙和整車約定的數(shù)據(jù)幀格式,判斷是否是有效數(shù)據(jù)幀,當確認為有效數(shù)據(jù)幀后,接收設備將數(shù)據(jù)全部接收下來,并根據(jù)選用的加密算法,將無可讀性的數(shù)據(jù),還原成可識別的滾碼和按鍵等信息。
在對有效的滾碼和按鍵信息進行判斷后,整車上的控制系統(tǒng)就會執(zhí)行上鎖或閉鎖操作。大體工作流程,如圖2所示:
圖2 按鍵工作流程
對于普通的短按操作,鑰匙端在確認按鍵有效后,會發(fā)送一至三遍不等的重復數(shù)據(jù)幀,讓接收端進行確認。當滾碼值處于允許窗口內時,該編碼字被確認為有效,同時汽車響應鑰匙按鍵。
對于長按操作,Microchip采用重復發(fā)送編碼字的策略,只要按鍵觸發(fā)有效,則不斷重復地發(fā)送同一幀編碼字,直到按鍵釋放或者按鍵屏蔽保護機制啟動。
在重復發(fā)送的過程中,編碼字中包含一位重復bit位,當該位置“1”則表明當前編碼字屬于重復內容,接收端可以認為現(xiàn)在用戶正在進行長按操作。當對編碼字數(shù)據(jù)包進行計數(shù)達到溢出閾值后,接收端可以根據(jù)單位數(shù)據(jù)包的長度和接收到的數(shù)據(jù)包的個數(shù),計算出按鍵的按下時間,之后接收端根據(jù)設計規(guī)范讓汽車作相應的動作,諸如執(zhí)行開后備箱、尋車等功能。
由于遙控鑰匙和整車之間的通訊屬于無線通信,在嘈雜的環(huán)境中,存在著眾多的無線干擾。
無線干擾的產(chǎn)生是多種多樣的,原有的專用無線電系統(tǒng)占用現(xiàn)有頻率資源、不同運營商網(wǎng)絡配置不當、發(fā)信機自身設置問題、小區(qū)重疊、環(huán)境、電磁兼容(EMC)等,都是無線通信網(wǎng)絡射頻干擾產(chǎn)生的原因。工作于不同頻率的系統(tǒng)間的共存干擾。有源設備在發(fā)射有用信號的同時,由于器件本身的原因和濾波器帶外抑制的限制,在它的工作頻帶外還會產(chǎn)生雜散、諧波、互調等無用信號,這些信號落到其他無線系統(tǒng)的工作頻帶內,就會對其形成干擾。
由于接收端對于長按操作的判斷是根據(jù)接收到的數(shù)據(jù)幀的個數(shù)來確定的,而數(shù)據(jù)幀又都是重復的。那么,在每一次長按的操作中,接收端都會首先確認一次短按操作。這樣就可能會讓部分用戶認為汽車在設計上不嚴謹。
鑰匙和汽車間的無線通訊,由于是在公共頻段進行,所以,所有的數(shù)據(jù)都可以被任何人截獲。某些別有用心的人就會利用特殊設備監(jiān)聽用戶發(fā)送的無線信號,然后對數(shù)據(jù)幀進行破解,從而危害用戶利益。
對于RKE這類安全性很高的系統(tǒng),除了有加密算法對傳輸?shù)臄?shù)據(jù)進行保護之外,數(shù)據(jù)在公共頻段存在的時間,越短就意味著越安全。
由于鑰匙長按操作的過程是一個重復幀的發(fā)送過程。過長的發(fā)送時間會使整個數(shù)據(jù)包受到干擾和被監(jiān)聽到的幾率大大增加。同時將接收端收到錯誤信息的概率也一并放大。
當用戶在長按鑰匙按鍵時,由于無線干擾的原因,導致數(shù)據(jù)幀在重復發(fā)送過程中出現(xiàn)錯誤數(shù)據(jù),致使接收端在計算數(shù)據(jù)包個數(shù)的過程中,遺漏一些甚至全部的數(shù)據(jù)包,從而無法正確識別出長按信號。
最終,汽車將只執(zhí)行一次短按的操作,同時忽略之后的長按功能,從而令用戶在使用上感到不便,可能會引起部分用戶的抱怨。
為避免無線干擾導致遙控鑰匙按鍵失效的現(xiàn)象產(chǎn)生,就要在常規(guī)的按鍵策略上進行創(chuàng)新開發(fā)。
根據(jù)整個RKE系統(tǒng)的工作方式可知,遙控鑰匙和汽車接收端之間沒有交互的通訊方式,遙控鑰匙是單方面的發(fā)送,汽車接收端是完全被動地接收。
所以,在設計上,可以設法減少雙方在傳輸數(shù)據(jù)上耗費的時間。即首先在鑰匙端,對按鍵的長短時間判斷,先行處理,當按鍵彈起后,計算按鍵觸發(fā)的時間,通過查表來確認,該時間是否屬于功能定義的有效時間。當確認時間有效后,將時間參數(shù)寫入數(shù)據(jù)幀中,然后通過RF發(fā)送出去。
而接收端則只需在收到一幀數(shù)據(jù)包后,即可確認并執(zhí)行相應操作。
具體方案流程如下:
1) 在鑰匙端直接對按鍵輸入開關信號進行計時。
2) 當鑰匙按鍵彈起后即可以計算完畢按鍵被觸發(fā)的時間。
3) 在發(fā)送的數(shù)據(jù)幀報文里使用特定的 bit位,用來指示按鍵時間。
4) 接收端通過對報文的解析,直接判斷遙控鑰匙的按鍵方式。
無論按鍵時間多長,在整個通訊過程中都只有一幀有效數(shù)據(jù)存在,這樣就會大大減少數(shù)據(jù)在傳輸過程中受到干擾的幾率。因為常規(guī)策略在鑰匙按鍵被按下后就開始發(fā)送數(shù)據(jù),直到按鍵松開才停止發(fā)送數(shù)據(jù),在這整個發(fā)送過程中,都會受到無線干擾和監(jiān)聽的危險。
而更新的策略則如前所述,所有的通訊一次完成,遙控鑰匙每次僅在按鍵確認后,才開始發(fā)送報文,相比即按即發(fā)的策略,有效降低了電池的功耗。而接收端也無需長時間處于接收和解碼狀態(tài),有效地釋放了接收端MCU的資源,同時避免了在長時間接收過程中出現(xiàn)的無線傳輸干擾等危害因素。
隨著科技的日新月異,防盜與破解之間的較量也會越來越激烈。我們除了從技術上對產(chǎn)品進行加固設計外,還要從整個系統(tǒng)的工作流程上下功夫。在RKE系統(tǒng)中,鑰匙端的軟件設計都是固定不變的,通常都是由接收端來進行軟件變更并適應鑰匙端。
嘗試用逆向思維,從鑰匙端的變革開始,從源頭上盡量避免功能的失效。將按鍵的觸發(fā)方式放在鑰匙端進行處理,每次鑰匙端和接收端的通訊只有一幀數(shù)據(jù),可以有效地降低通訊過程中受干擾的幾率,大大提升RKE系統(tǒng)的安全性。
[1]汽車安全新應用:無線遙控開門[Z]. 2011.07
[2]基于擴頻通信技術的數(shù)據(jù)無線傳輸,范玲俐[D]. 西南交通大學2010
[3]陳卓、余重秀、徐大雄,無線通信系統(tǒng)頻率干擾原理及其解決之道[J].數(shù)據(jù)通信,2007.11
[4]胡文昌,淺談關于移動通信發(fā)展趨勢[D]. 2009
[5]Microchip Technology Inc. HCS300 datasheet[Z].2006.10
[6]Microchip Technology Inc. An Introduction to KEELOQ Code Hopping Technical Brief[Z]. 8/26/1997