飛思卡爾汽車遠程無鑰匙進入系統(RKE)方案和VKSP安全協議
針對日益增長的汽車遙控無鑰匙進入系統(RKE)市場,飛思卡爾半導體近期推出了包含硬件和軟件安全協議(VKSP)的整體解決方案。
本文引用地址:http://www.ex-cimer.com/article/90873.htm汽車遙控無鑰匙進入系統(RKE)由發(fā)射端(遙控鑰匙)和集成于車身控制模塊中的接收端組成。發(fā)射端將用戶按鍵命令通過數據編碼、加密和組幀后通過射頻發(fā)射電路發(fā)射,而車內接收端則將接收到的信號通過射頻解調、數據解碼和幀解密后完成相應車門、車燈控制和報警等用戶指令。系統框圖如圖1。
發(fā)射端:使用飛思卡爾低端8位MC9S08QG4/8(4K/8K flash)微控制器完成用戶按鍵的數據編碼、加密組幀,再通過SAW聲表諧振器電路發(fā)射至UHF頻段。
接收端:使用UHF射頻接收芯片MC33596完成信號解調和數據曼徹斯特解碼,再將數據傳送到車身主控芯片(本參考設計選用了8位MC9S08DZ系列)進行數據解密和指令執(zhí)行。
加密協議:采用飛思卡爾研發(fā)的可變密鑰安全協議(VKSP)。
可變密鑰安全協議(VKSP)是飛思卡爾專門為遙控類應用市場開發(fā)的安全傳輸協議。其特點:
采用128位密鑰加密驗證,增強了安全性。
密鑰中的32位可變密鑰(計數器)部分隨時間和按鍵而增加。
即使在遙控距離外被多次按鍵操作之后,該鑰匙也可以繼續(xù)正常使用,不需要和接收端重新進行該鑰匙的學習流程。
最大支持254個不同指令傳輸。
除了采用飛思卡爾提供的AES加密算法模塊外,用戶也可以根據需要(如縮小程序大小,減少解密時間)使用自己的加密算法模塊。
純軟件實現,可以靈活地使用于各類微控制器。
軟件大?。翰话珹ES加密模塊約為1.5K字節(jié),如果含AES模塊接近3K字節(jié)。軟件以庫函數的形式免費授權給采用飛思卡爾方案的客戶使用。
VKSP的發(fā)送過程如圖2。
每次按下鑰匙,將會產生一個發(fā)送幀。發(fā)送幀有兩個部分:數據部分和消息驗證碼(MAC)部分。數據部分不用加密,由三個部分共64位組成:鑰匙號(3個字節(jié));用戶命令(1個字節(jié));可變密鑰(4個字節(jié)),每次發(fā)送隨時間和用戶按鍵而增加,以確保即使用戶命令相同,每次發(fā)送的消息幀內容也不會重復。消息驗證碼(MAC)部分則有8個字節(jié),由加密模塊產生。
接收過程分為三步,如圖3。
步驟一:接收端檢查接收到的發(fā)送幀中的鑰匙號是否存在于接收端存儲的有效鑰匙號數據庫中,如果存在,則從接收端數據庫中同時取出該鑰匙對應的本地密鑰(Local Key)和可變密鑰(Variable Key),進入下一步驟,否則丟棄該幀。
步驟二:檢查發(fā)送幀中的可變密鑰是否大于步驟一中接收端數據庫中該鑰匙目前的可變密鑰,如是,進入下一步驟,否則丟棄該幀。這一步驟保證了任何再次重復發(fā)送的幀不會被認為是有效幀。
步驟三:進行消息碼驗證。由接收幀中的數據字段和從接收數據庫中取出的該鑰匙本地密鑰通過加密模塊生成消息驗證碼,由于發(fā)送端和接收端使用相同的加密模塊,所以,如果發(fā)送端和接收端生成的兩個消息驗證碼相同,則該幀被認為有效,用戶命令被執(zhí)行。同時,更新該鑰匙當前的可變密鑰至接收端數據庫中。
由上述過程可知,每一把新鑰匙必須首先完成學習過程,即將該鑰匙的鑰匙號和本地密鑰存儲到接收端數據庫以后,該鑰匙才能被識別使用。為了系統的安全性,接收系統必須在指定的安全環(huán)境中處于被激活的狀態(tài)下才進行學習幀的識別,例如用戶在接收端按下一個特定的按鍵或者開關。圖4表示了學習過程和學習幀的結構。
接收端首先檢查是否處于安全環(huán)境激活狀態(tài),從而決定是否進行學習幀識別。
發(fā)送端利用一個偽隨機數發(fā)生器產生128位隨機數,然后和廠商提供的128位OEM碼(發(fā)送端和接收端必須共享同樣的OEM碼)通過加密模塊產生128位輸出數據,截取其中64位作為消息驗證碼,截取特定位數存儲在發(fā)送端作為該鑰匙本地密鑰。同時,將該128位隨機數和消息驗證碼通過兩個連續(xù)的學習幀發(fā)送。兩個學習幀分別由數值0XFE和0XFF特征碼來識別。
接收端通過特征碼檢測到學習幀并提取其中的128位隨機數,然后依靠和發(fā)送端同樣的廠商128位OEM碼和加密模塊完成消息驗證碼比對驗證,又按照和發(fā)送端同樣的輸出截取方式生成和發(fā)送端相同的該鑰匙本地密鑰,最后將該本地密鑰和鑰匙號存儲在接收端數據庫中,從而完成該鑰匙的學習過程。
綜上所述,飛思卡爾半導體的RKE整體方案主要特點及其優(yōu)勢如下:
系統選用通用MCU控制器,客戶可以根據需要添加應用功能,增強了靈活性。
接收端不需要單獨的解密芯片,解密算法集成在車身控制器中實現,簡化了方案,節(jié)約了成本。
鑰匙端系統當沒有用戶按鍵時候,處于休眠狀態(tài),節(jié)省系統功耗。
UHF接收芯片MC33596(或者雙向收發(fā)芯片MC33696)支持304MHz到915MHz的OOK和FSK解調;片內支持數據曼徹斯特解碼,節(jié)省了外部微控制器解碼軟件系統占用;具有片內定時喚醒、片腳喚醒并可設置特定幀喚醒外部MCU功能,節(jié)省系統功耗;同時支持兩套系統參數配置。上述特性也使得該芯片還可以應用于被動無鑰匙門禁系統(PKE)和胎壓檢測(TPMS)系統中。
VKSP數據協議:純軟件實現,采用128位AES加密,增加了安全性;本地密鑰在鑰匙每次的學習過程中通過偽隨機數發(fā)生器產生,所以對每把鑰匙的每次學習過程將產生和存儲不同的鑰匙密鑰,增強了保密性。
該方案評估系統實物如圖5和圖6。
VKSP協議詳情可參考:www.freescale.com/vksp 。
評論