「解剖」Volvo汽車遙控鑰匙

作者 : Brian Dipert,EDN特約作者

「當生活給了你酸溜溜的檸檬時,就把它做成酸甜的檸檬汁吧!」(When life gives you lemons, make lemonade.)我打算實現這句諺語——那就是拆解這個被「肢解」的遙控鑰匙碎片,並對殘餘的零碎零件進行分析...

當我開始提筆寫這篇文章之際,時序正進入四月初,春天倏然湧現(大致情形如同想像那樣…畢竟這裡是科羅拉多州),而我家門前的雪護堤(這正是家中那台吹雪機首次「肢解」並埋藏Volvo XC70遙控鑰匙的第一現場)幾乎完全融雪了。

事情是這樣的:前幾天,當我快回到家門口前卻不慎在結冰的路面滑倒了。雖然人沒受傷也沒損壞任何東西(除了我的自尊心…),但在雪地上遺落了我的Volvo XC70無線遙控鑰匙我卻渾然不知。當晚過後由於累積了大約5英吋的厚雪,於是隔天一早我就啟動了吹雪機開始清除積雪,以免門前地面再度結冰。

回想起來,當時隱約在清理過程中聽到「嘎吱嘎吱」作響,但機器運作經常發出這種聲音——尤其是吹雪機吸取到碎冰、小螺絲或樹皮時。

直到我遍尋不著Volvo XC70時,彷彿瞬間明白究竟發生什麼事了。然而,當我見到它的最後一面時已經只剩下散落在植物、樹木和灌木之間的遙控鑰匙「殘骸」了:

  • 這支遙控鑰匙的大部份外殼,包括前面板按鍵組件;
  • 兩顆CR2430電池中的一顆;
  • 外殼內的電路板(PCB)。

「當生活給了你酸溜溜的檸檬時,就把它做成酸甜的檸檬汁吧!」(When life gives you lemons, make lemonade.)我打算實現這句諺語——那就是拆解這個被「肢解」的遙控鑰匙碎片,並對殘餘的零碎零件進行分析。在此過程中,我也希望深入瞭解這些東西如何發揮作用。

在此之前要先搞定怎麼稱呼這玩意兒,這是一個很好的起點。先前提到的「遙控鑰匙」(key fob)只是一個通稱,維基百科(Wikipedia)中更傾向於稱其為「智慧鑰匙」。它是遠端免鑰匙門禁系統的「關鍵」(key)零件:

智慧門禁系統是一種用於控制人員進出建築物或汽車而無需使用傳統機械式鑰匙的電子鎖。免鑰匙進入系統一詞,原本指的是由位於駕駛門或附近之小型鍵盤所控制的鎖,必須輸入預先設定(或是自編程)好的數字密碼。這類系統現在有隱藏式觸控啟動鍵盤,某些福特(Ford)和林肯(Lincoln)車款依然沿用這種鎖。遠端免鑰匙系統(RKS)一詞亦稱為免鑰匙進出或遠端中控鎖,係指使用需在周圍用手持式裝置或自動啟動之電子遙控做為鑰匙的鎖。RKS廣泛用於各式汽車,能執行標準的汽車鑰匙功能,而無需實際接觸。在距離車子數碼之外時,按下遙控器上的按鍵就能鎖上或解鎖車門,並可執行其他功能。遠端免鑰匙系統可以包括用於解鎖車門的RKE,以及發動引擎的遠端免鑰匙點火系統(RKI)

搭配我這款智慧鑰匙的車款是2008年的Volvo XC70 AWD休旅車。從我在網路上搜尋到的經銷商討論資料看來,Volvo先前年份的車型一開始使用「傻瓜型」(dumb)遙控鑰匙,就是車主能透過「客製」操作模式專門將其配對至特定車輛(類似你把車庫門遙控器和汽車組件的接收器連結起來的意思)。很諷刺地,較新款的Volvo卻又回歸這個顯然對使用者友善的相同方法。而其間——從我的車款年份開始及其後數年的時間,Volvo智慧鑰匙都預先編程好客製密碼(並印在所有重要的文件上),只有經銷商能(所費不貲地)替車子配對。我還真是幸運呢!

一旦初始配對成功了,儘管製造商與車型之間有執行上的差距,但就概念而言操作還算是簡單的。相較於更新式的實施概念,我的智慧鑰匙相對而言比較基本:整合型按鍵能解鎖車門和防盜鎖(按一下解鎖駕駛座的門,第二下則解除所有位置的鎖),以及鎖上(所有的)車門(這些按鍵顯然也可控制窗戶…我承認自己並不知道這回事,直到這次在搜尋時重讀了使用者手冊才知道);當您走近車子時可以讓車燈亮起,以及確實解除車門鎖和僅解除尾門防盜鎖。還有一個「恐慌」按鍵按下去會讓喇叭大響、車燈大閃,以及配合按鍵矩陣周圍綠色(左上)、黃色(右上)和雙紅(左下) LED燈一起作用的「資訊」鍵,這能告訴您車子是未鎖、上鎖或警報已啟動(以及此時車內是否偵測到還有人在)。

一旦進入車內,基本上啟動車子的方式在於將鑰匙插入儀表板插槽,馬達就會在此將其饋入鎖定的操作位置,然後壓下它旁邊的「啟動‧停止引擎」(Start Stop Engine)按鍵。

糟糕的是,鑰匙很容易卡在這個位置。

所幸在我這個特殊情況中,只要我坐在駕駛座而且智慧鑰匙和車子之間的無線連線並未被射頻(RF)封鎖的狀態,車子顯然還有讓我還有其他選擇——智慧鑰匙仍在口袋(或其他地方)的情況下也能發動車子(即先前維基百科中提到的RKI)。

但參考我之前的評論「相較於更新式的實施概念」,那表示我的車子並沒那麼讚。舉例而言,我家另一車Land Rover Discovery;它可以鎖上或不鎖周圍的任何車門,僅須透過車門上的電容開關啟動即可,也不用從包包裡拿出智慧鑰匙插入才啟動車子,更別說按下其上的按鍵了(再次重申,必備條件是智慧鑰匙和車子之間的無線連線並非RF封鎖狀態)。就如最近和我交談的經銷商所確定的,那表示這個方法有顯著的不利之處:智慧鑰匙不必一直播送RF訊號,這對電池壽命而言是有弊無利的。過去數年來,有幾次在開這台車時必須把鑰匙放在靠近方向盤的特定位置上才能發動車子(這主要是透過感應耦合以補強無線電力傳輸),一旦安全返家後,馬上就得動手為智慧鑰匙換電池(為此我隨時手上都備有電池)。新的Volvo車款採用的替代做法是把這個感應的「特殊點」設置在中控台上。

介紹了一些基本概念後,讓我們開始分析今天的主題。當我找到這個XC70遙控鑰匙「殘骸」時,其外殼的兩半已經裂開(更別提從備用金屬鑰匙上裂開的碎片了,但它依舊黏在Tile Mate藍牙防丟小幫手和我的其他物件上)。我暫時把它們壓回去,拍了前面的幾張照片。接下來的這張照片是我遭遇到的較實際外觀(您可以想像一下它們深埋在雪堆裡的樣子)。

翻過來PCB立即映入眼簾:

由於外殼裂開了,PCB往左上突出:

在電池陣列和PCB之間有一層「薄膜」,推測其作用大概是要給智慧鑰匙一些外表的防潮作用以及廣泛的環境抗力:

但我們最關心的是PCB,對吧?

拆掉幾對固定片,隨即將多鍵組件向上提起,就能一窺PCB正面的電路全貌:

馬上映入眼簾的是六個開關,其中三個位於先前提過的LED資訊燈周圍。而在PCB一端的是標記CC1020的IC,顯然是一個「針對402-470及804-940MHz範圍窄頻應用的單晶片FSK/OOK CMOS無線收發器」。儘管我並不清楚這顆特殊IC上的製造商標記,讀者們可以參考德州儀器(TI)的晶片產品連結頁面。

相反地,雖然其他晶片(在開關陣列中間)的來源很明確,但功能卻有點神祕。例如標示F7953C05以及飛利浦半導體(Philips Semiconductor)的IC,經Google搜尋的結果是近來由恩智浦半導體(NXP Semiconductor)所提供(想當然爾,NXP是飛利浦半導體部門在2006年時獨立出來的新公司)…但我找不到這款IC的產品頁面,也沒有規格表。

為了更深入瞭解,讓我們將注意力轉移到外殼其他碎片的特寫:

這兒只有其中一小片段但仍然完好的塑膠片,足以辨識出FCC的ID:KR55WK49266,一如往常,這已經有助於引導找到大量資料了。除此之外,請看看這個來自德國汽車零組供應商大陸汽車(Continental Automotive)的VDO部門(先前隸屬於西門子旗下)用戶手冊提供的方塊圖,我從另一個來源找到更容易辨識的版本:

據我推測,藍色長方塊中全部都可在F7953C05中處理,而CC1020則主要負責RF階段功能。回想起來,與我在拆解中所搜尋的其他IC相較,F7953C05的公開資料並沒那麼匱乏(雖然Google確實也揭露了BMW在某些車型的智慧鑰匙中使用相同IC)。畢竟,沒有任何一家製造商會想要車主以外的人解鎖並進入車中,更別說啟動並把車開走了——很諷刺地,就在我提筆寫這篇文章的幾天前,本田汽車(Honda)剛經歷這糟糕的窘境。舉例而言,有件事我依舊不知道(但推測)的是Volvo系統是否使用「滾碼」。維基百科對此解釋:

大多數的免鑰匙系統使用稱為滾碼(rolling code)的技術以避免重送攻擊(replay attack)。在重送攻擊中,開門的指令會被攔截以供竊賊稍後使用。而在滾碼中則使用偽隨機數字產生器,以產生每次解鎖汽車時所發送的不同解鎖序列。

在PCB這一面另一項值得注意的是傳輸用的「PCB迴路天線」,其路線在頂部四個按鍵的上方。而說到PCB,我們還沒仔細瞧瞧另一面;讓我們先彌補這項疏失:

其中一個象限可以看到一點點閃亮金屬,我覺得看起來像是某種類似德國鐵十字徽章(Iron Cross)的東西,是兩個電池「夾層」下面的CR2430電池負極。順帶一提,奇怪的是前述西門子(現為大陸汽車)的用戶手冊說該款智慧鑰匙現在僅需一顆電池。但這可能不是最先吸引我目光的東西。這麼大一塊神秘的灰色焊接方塊上還有行銷資料?到底是怎麼想的?

232D
H743

一開始,我猜測這是傳輸器的加密資料處理來源。但鐵證如山,根據FCC的內部照片,它只是一個接收天線(請注意PCB邊緣處四周的PCB嵌入式天線)。只有一根接收天線?為什麼?好吧,根據FCC的資料,這款智慧鑰匙以兩個不同的頻率運作——902.16MHz和903.575MHz (然而,奇怪的是,維基百科說「大多數RKE用於北美製造的汽車是以315MHz頻率運作,而歐洲、日本和亞洲車則運作於433.92MHz」)。引用自使用者手冊:

RF遙控系統包括以RF傳輸器/接收器組成的遠端鑰匙,以及車輛端的RF傳輸器/接收器套件。使用遠端鑰匙傳輸資訊,藉由按壓按鍵,利用一般遠端操作的雙向RF傳輸線路,以鎖上或解鎖汽車(以及後車箱蓋/車門迎賓燈/應急/舒適開啟/舒適關閉/檢查車輛狀態/被動鎖上/被動解鎖/被動啟動運作等)

若接收到來自汽車套件的電報無誤,則該汽車套件將傳送確認訊息至遠端鑰匙。若遠端鑰匙沒收到確認訊息,將以第二個頻道重複傳送。

最後,我想應該分享一些經銷商提供給我的複製智慧鑰匙照片,讓大家看看當它還沒有被吹雪機蹂躪之前原本是什麼樣子。由於它花了我將近600美元,相信讀者們會原諒我無法進行更完整的拆解!

而當要換電池時,彈出後面板的設計讓人有點傷腦筋,但也還能接受:

談到600美元的代價,我之前曾經有意無意地指出,這款智慧鑰匙的利潤可能非常高。一位署名‘chargehanger’的讀者首先回應了他的看法:

這款智慧鑰匙的物料清單成本(BOM)約為19歐元(相當於21美元)

然而,關於如何得出這個BOM數字,我更希望‘chargehanger’(或瞭解這件事的其他讀者)能夠提供更多的解釋。當然,一如往常地,也歡迎其他評論。

(參考原文:A Volvo key fob: A post-mortem investigation,by Brian Dipert)

本文同步刊登於EDN Taiwan 2022年9月號雜誌

活動簡介

從無線連接、更快的處理和運算、網路安全機制、更複雜的虛擬實境(VR)到人工智慧(AI)等技術,都將在未來的每一個嵌入式系統中發揮更關鍵功能。「嵌入式系統設計研討會」將全面涵蓋在電子產業最受熱議的「智慧」、「互連」、「安全」與「運算」等系統之相關硬體和軟體設計。

會中將邀請來自嵌入式設計相關領域的研究人員、代表廠商以及專家,透過專題演講、產品展示與互動交流,從元件、模組到系統,從概念設計到開發工具,深入介紹嵌入式系統設計領域的最新趨勢、創新和關注重點,並深入分享關於嵌入式系統設計的經驗、成果以及遇到的實際挑戰及其解決方案。

贊助廠商

加入LINE@,最新消息一手掌握!

發表評論