自駕車可以裝配 Android 系統嗎?三個關鍵點得先克服:系統漏洞、更新速度、成本

【我們為什麼挑選這篇文章】談自駕車應用前,汽車製造商應該先談自駕車的安全性與營造成本。商業上,這兩因素將會直接的影響到消費者的購買傾向;對公司來說,系統安全,不出人命也是品牌營造重要的一環。如果追根究底該如何調升自駕車安全性,我們就會講到自駕車使用的系統本身。

本文作者是黑莓的資深副總裁,他將從直接切入 Android 系統在自駕車領域的挑戰,講述 Android 系統的安全漏洞問題。(責任編輯:陳伯安)

作者:黑莓資深副總裁 Kaivan Karimi

我(本文作者)曾要求開發互聯和自動駕駛汽車軟體的工程師從金錢投入、安全認證和防護性的角度思考使用 Linux 的真實成本。一位朋友之後發郵件問我為何跳過了 Android 系統,而不探討一下它的安全性漏洞問題。

對此我進行了簡要的回答,我認為可以構建一個保留 QNX 的防護和安全認證優勢,同時可以讓 Android 應用程式運行以體現 Android 系統差異化的虛擬駕駛座遙控器,作為兩全其美的辦法。事實上,我們在美國消費者電子展(CES)上展示 JAGUAR(捷豹)LAND ROVER(荒原路華)概念車的駕駛座就是以 QNX 為基礎所構建的(儀錶板和虛擬機器監視器),以及可以使用 Android 應用程式的 QNX 車用資訊娛樂系統(In-Vehicle Infotainment system,IVI system)也是在虛擬網域運行的。

使用 Linux 系統除了存在安全性漏洞問題,還會增加額外的營運成本(研發成本),並未實現差異化。但使用 Android 系統至少還能使用時下受歡迎的應用程式。

自駕車 Android 系統的第一挑戰:系統漏洞比其他作業程式嚴重

首先,我們來看看我的朋友提出的問題:

美國知名的科技部落客 Business Insider 和資料公司 Statista 的圖表反應了他們對不同作業系統的安全性漏洞問題的獨立觀點。

在上方圖表中 523 個由 Android 導致的漏洞中,有 254 個在通用漏洞評價體系(CVSS; Common Vulnerability Scoring System)的評分在 9 分以上,顯示這些漏洞問題十分嚴重。根據《SC Magazine》顯示,在手機領域中,2016 年 Google Android 系統的漏洞要比其他作業系統更多

下方根據美國國家標準技術研究所(NIST)最新的通用漏洞披露(CVE; Common Vulnerabilities & Exposures)資料製作的圖表顯示:截至 2017 年底,Android 或 Linux 當中的 CVE 的數量比 QNX 中的 CVE 高出幾個量級。

來源: CVE 細節
來源: CVE 細節
來源: CVE 細節

也就是說,Android 系統實施可能因手機廠商差異而有所不同,經驗豐富的工程師對系統做一些不同程度的修正來改善 Android 的安全狀況。 BlackBerry 憑藉所有供應商中最安全的 Android 系統實施技術引領潮流成為市場的領導者。然而,這是一項艱苦的工作,需要大量經驗十分豐富的工程師和安全專家。

現在的問題是,在汽車中部署 Android 時應該考慮哪些問題?也就是說,Android 系統實施可能因手機廠牌的差異而有所不同,經驗豐富的工程師對系統做一些不同程度的修正以改善 Android 的安全狀況。BlackBerry 憑藉所有供應商中最安全的 Android 系統實施技術領軍市場。然而,這項工作相當棘手,需要大量經驗豐富的工程師和安全專家。現在的問題是,在汽車中部署 Android 時應考慮哪些問題?

挑戰二:Android 系統並不是全然免費的

有人認為 Android 是免費的。我們來思考一下這種想法的優點。Android 系統中有豐富的應用程式,簡單易用,這是 Android 價值主張的核心。與所有具有高價值的應用程式一樣,例如安卓市集(Android Marketplace)、Google 地圖(Google Maps)、地球(Earth)、語音搜尋(Voice Search)、在地搜尋(Local Search)等。 此類 Android 應用程式需要授權,這就意味著會產生相關成本。

安全的 Android 系統需要大量有經驗的工程師和安全專家來提高風險防禦態勢,這會消耗大量的時間、精力,最終研發成本會大幅提升。

就汽車應用而言,還有更複雜的形勢引發的問題:

1. Android 商標只能用於符合 Google 相容性定義文件和相容性測試套件的設備。

2. 並非所有 Android 應用程式都可以在各個平臺上運行。

3. 原始設備製造商或 Google 是否會控制車輛使用者介面、平臺功能和應用程式驗證目前尚不明確。

4. 原始設備製造商是否允許 Google 連接控制器區域網路(CAN BUS; Controller Area Network)資料?這些資料很有價值,如果允許 Google 連接,那麼免費提供作業系統就顯得合情合理了。舉個例子,這些資料可以用於繪製地圖,研發自動駕駛,瞭解用戶偏好等等。

5. 正如上面提到的,與手機廠商一樣,汽車原始設備製造商也有責任提供安全功能,以防止 Android 或其應用與車輛中的安全關鍵型子系統之間互相影響。

因此, 除了授權費用之外,選擇 Android 還必須要考慮到安全工程、支援、優化和維護等方面的成本 。這些成本高昂的服務通常必須由協力廠商 Android 服務公司或內部團隊來提供。

挑戰三:Android 系統需要高頻率的不斷更新

就汽車行業而言,維護方面的考慮有兩大重要因素。首先, 選擇 Android 可能像手機一樣需要定期更新(可能是以月為單位)。汽車的生命週期平均是 11 年,難道汽車原始設備製造商要在這個週期內每個月都為汽車的系統更新嗎?此外,以手機為例,在短短不到兩年的時間裡,Android 系統已經有許許多多或大或小的更新,例如代號為棉花糖(Marshmallow)、牛軋糖(Nougat)、奧利奧系統(Oreo),最新的是 P,詳見下表。

更重要的是,每次系統發佈只提供兩年支援。在汽車行業,需要花 2 到 3 年時間開發一款產品,然後才能開始量產;另外還需要 5 到 6 年平臺化生產。當然很容易想到, 生產之後到汽車能夠上路,還需額外 5 到 15 年時間

Code Name Version # Initial Release Date
Marshmallow 6.0 – 6.0.1 October 5, 2015
Nougat 7.0 – 7.1.2 August 22, 2016
Oreo 8.0 – 8.1 August 21, 2017
Android P 9 May 8, 2018 (beta)

來源: 維基百科

這些升級和更新的成本是多少?如果未更新,需要承擔的潛在風險有多大?

BlackBerry 將怎麼處理自駕車的安全與防護?

現在,讓我們回到 CVE 和它與汽車發展趨勢的關係這個話題。如果你一直關注汽車市場發展趨勢的話,你就會知道電子控制單元(ECU; Electronic Control Unit)正在朝著合併為越來越少的網域控制站(Domain Controller)的方向發展。

舉個例子,虛擬座艙遙控器(VCC; Virtual Cockpit Controllers)中的車載資訊娛樂系統和儀錶板電子控制單元共同在一個系統單晶片(SoC)高性能網域控制站計算平臺上運行,這不僅節省了成本,還降低了複雜性。然而,為了使虛擬座艙遙控器正常工作,系統需要真正的 1 型管理程式功能來將安全關鍵型(儀錶板)和非安全關鍵型(車載娛樂系統)功能相互隔離。

一些原始設備製造商決定把一個完整的 Android 汽車車載資訊娛樂系統整合到座艙遙控器中,讓其在系統單晶片上運行,同樣支援經過安全認證的儀錶板,如下圖所示。我們認為這種想法容易受到安全性漏洞的影響。

從安全的角度來說,Android 為汽車軟體系統帶來大型的攻擊面 。數位儀錶板必須通過 ISO 26262 ASIL B 安全認證,而資訊娛樂系統則沒有任何安全認證要求。正如上面所提到的,由於存在大量漏洞(CVE),基於 Android 的系統很可能需要頻繁更新和修補。ISO 26262 安全認證要求資訊娛樂子系統軟體更新不得影響安全關鍵型的儀錶板子系統。

然而,如果所有資訊娛樂功能都在 Android 上運行,任何影響共用驅動程式(例如音訊、圖像等)或資源的漏洞(CVE)更新都可能帶來風險,原始設備製造商及其一級供應商必須通過軟體更新來對抗風險。Android 還沒有採用虛擬化架構,其架構也不能與整合的座艙網域控制站共存,這讓上面所提到的情況顯得更加複雜,也意味著系統也會變得愈加繁複。

讓我們以一種全新的方式來解決這個問題,側重於安全性和防護性,同時又能保有各品牌的差異化。試想如果用虛擬機器(VM)域將安全關鍵型和非關鍵型功能進行區隔,同時限制 Android 虛擬機器的連接和功能(例如僅消費級 Android 應用程式可以運行)來降低安全功能的風險,可以達到怎樣的效果?通過限制連接和功能,Android 暴露的大型攻擊面有效減少,同時也避免了產品同質化。BlackBerry QNX 已經開發出這樣的解決方案。

在 BlackBerry 的解決方案中,連接介面(如 USB,藍牙,Wi-Fi)、匯流排(如 CAN 匯流排)以及其他資源(包括瀏覽器和媒體檔案)均在更安全的 QNX 虛擬機之上並受之管理。同時,無論內容在何處生成(Android VM,QNX VM 或其他),系統設計人員都可以使用 QNX 的螢幕功能來管理內容顯示類型和方式。

沒有一個系統是絕對安全,只有當下誰比較強

因此,要回答我的朋友提出的問題:我為何沒有像批評 Linux 一樣批評 Android,是因為 Android 的問題有法可解。比如以 QNX 為架構建立虛擬座艙遙控器,在有 QNX 帶來的安全性和安全認證的同時,可以使用 Android 平臺上的優質應用程式,這也是 Android 平臺差異化之所在。另一方面,正如我 之前的部落格文章 描述的那樣,汽車級 Linux(AGL)的漏洞「自毀聲譽」。

世界上沒有一個系統可保證永遠的絕對安全。安全就如同一場跑步競賽 ,你需要永遠跑在弱勢對手的前面。而 AGL 就像是一灘泥沼,不僅沒有讓你從人群中跳脫出來,反而扯了後腿。

由於汽車製造商希望將車載資訊娛樂系統、遠端資訊處理系統和數位儀錶板等方面的功能整合到虛擬座艙遙控器中,QNX SDP 7.0 提供了一流的即時操作系統,支援 ARMv8 的 64 位計算平臺和 Intel x86-64 架構,以及真正的 1 型管理程式虛擬化功能,用於打造經過安全認證、防護性能強的互聯汽車。

BlackBerry QNX 的基礎軟體平臺讓汽車製造商在全球自由選擇汽車平臺應用程式(Android 應用程式,Apple CarPlay,百度 CarLife),同時將汽車安全關鍵型區域進行安全隔離。最後,BlackBerry QNX 既沒有獲取原始設備製造商的資料的想法,也不想在使用者介面上控制各品牌的差異化。

在總體擁有成本計算完成時,選擇 QNX 的原因便顯而易見了。更多相關資訊,請瀏覽我們的網站 www.QNX.com

作者簡介:
Kaivan Karimi is the SVP of Sales & Product Marketing at BlackBerry Technology Solutions(BTS)

(本文經原作者 BlackBerry 授權轉載,並同意 TechOrange 編寫導讀與修訂標題,原文標題為 〈如何控制汽車上的 Android 作業系統?〉,首圖來源:Pxhere, CC Licensed。)

延伸閱讀

【測不準原理之父】20 世紀物理學家怎麼用「量子力學」,解決自駕車系統除錯問題?
【開自駕車就可以滑手機?】MIT 最新系統:監測司機表情,有沒有看路一秒就知!
為何自駕車要找「人類學博士」一起研究?為了解決人類無理取鬧的天性


點關鍵字看更多相關文章: