iOS指紋識別Touch ID的安全性探討

NetS H發表於2014-11-03

蘋果公司在 iPhone 5s 的釋出會上公佈了全新的指紋識別安全技術,也就是 Touch ID,開創了生物安全識別技術在便攜裝置上使用的新篇章。此後,蘋果還將此技術帶到了 iPad 上。此前沒有任何廠家將指紋識別成功的打造在如此常用的裝置上,因為涉及到非常複雜的工藝和技術難關。蘋果在2012年收購在此方面技術領先的 Authen Tec 公司作為技術基礎,併為iOS裝置量身打造了 Touch ID。這使得蘋果在智慧裝置的指紋識別方面比其他廠商更加智慧且利於使用。三星的指紋識別功能必須要用手指按某個方向滑動,而 Touch ID 只需你將手指放上去,就可以360度讀取指紋。那麼,Touch ID 是否真的足夠安全呢?這是一個值得探討的問題。

iphone touch id bottom

Touch ID 與普通密碼相比的安全性

一個人的指紋是世界上最好的密碼之一。它獨一無二,高度特異,並且無需記憶。它會伴隨人終生,所以你可以一直使用同一個指紋密碼。

比起簡單的4位數字鎖屏密碼一萬分之一的破解可能性,能找到同樣單個指紋的人的概率為五萬分之一,這是非常安全的,比起前者我可以不斷嘗試,Touch ID 指紋的硬性破解機率幾乎沒有,因為不可能有五萬多個人排隊來一一解鎖你的裝置,況且 Touch ID 會拒絕第五次以後的嘗試而要求輸入密碼。所以我們可以新增更加複雜的密碼而不是簡單的數字密碼來進一步提高安全性。

ios_7_touch_id_re-enable_screens

蘋果在釋出會上表示,在 Touch ID 推出之前,因為每次解鎖都要繁瑣的輸入密碼的原因,使用了鎖屏密碼的人不到 50%;然而在此之後,iPhone 5s 使用者使用鎖屏密碼的概率大大增加,因為 Touch ID 簡單好用,所以瞬時的解鎖讓人幾乎感受不到有鎖屏密碼的存在。

passcode-usage-touch-id-02

這實際上是一個非常好的情況,蘋果公司在這一點上做的貢獻就是,它讓大多數曾經沒有保護資料安全習慣的使用者都開始新增密碼來保護資料安全,讓 iPhone 從總體方面來說都變得更加安全。而這一切實現的原因就是 Touch ID 既可靠又簡單。

可見,Touch ID 的出現,讓手機鎖比以前更加安全可靠。

指紋破解可能性

指紋密碼是否可破解?基本所有密碼都可以被破解,只是難度不同。已經有人成功硬性破解了 Touch ID ,靠的是一張指紋的模型。普通人是否應該為此擔心?答案是否定的,因為這種模型需要很高的技術來打造,並且仍然有著很高的失敗率,但 Touch ID 只允許嘗試不超過 5 次,所以必須把指紋模型做到極為精密和逼真,但沒人願意付出如此代價來解鎖 iPhone。

iphone5s_touchid_crack

Touch ID 指紋識別的原理

Touch ID 如何識別指紋呢?在如此快速的識別過程中,Home 按鈕上的一圈金屬環起到了感應手指的功能,通知 Touch ID 來讀取指紋。Touch ID 置於該按鈕中,感測器的厚度只有 170 微米,擁有 500 ppi 高解析度,可讀取極小的指紋細節。感測器可從皮膚皮下層指紋的一些小部分拍攝高解析度影像,然後會分析該資訊,根據三種基本指紋型別(弧形紋、箕形紋或鬥形紋)將指紋分類,它會繪製比人眼不可見的紋路細節,確保指紋讀取準確無誤。

touch id sensor

Touch ID 可從 360 度方向讀取指紋,隨後建立指紋的某種數學表示式,並將其與已註冊的資料進行比較,以確定是否匹配。如果匹配,便可替代密碼來解鎖裝置或通過某個令牌。

此外,根據蘋果官方的描述,Touch ID 會向以註冊的指紋資料裡持續的新增新的特徵資料,隨著時間的推移,這能不斷提高匹配準確度,也能進一步的提高安全性。

touch id ontouch

除了上述的內容,蘋果還加入可以一些有效的手段來進一步確保安全,例如裝置再重新啟動或者保持鎖定 48 小時後,丟只能通過密碼而不是指紋來解鎖裝置,這也打消了壞人通過不停重新啟動來破解指紋的可能性。

總體而言,Touch ID 是一套完備的指紋識別系統,其原理清晰明瞭。

指紋資訊資料儲存的安全性

指紋對於每個人來說都極其重要,因為它不能更改,所以如果洩漏了指紋圖案,相當於是損失了一個天然的強有力的安全密碼。問題是,我的指紋資料在 iOS 裝置上是否安全,iOS 是否會洩露我的指紋影像?這些是我們最應該關心的問題。

首先,蘋果宣告指紋的圖案不會被儲存,儲存於裝置中的是指紋特徵的數學表示式,而且從這些表示式直接反推出指紋影像也是不可能的。因此即使丟失裝置並被人把它拆解開來,也不會丟失指紋的圖形。

touch id structure

其次,指紋的驗證運算獨立於主要處理器晶片(例如 A7、A8),晶片內有稱為 “Secure Enclave” 的高階安全架構,專用於密碼指紋資料,並使用 Secure Enclave 的專用金鑰加密,以及每次啟動以隨機的 UID 進行管理。指紋資料僅能被 Secure Enclave 處理和使用,正因為此架構獨立於其它裝置部件,僅有 Touch ID 使用它,且不能將它用於匹配其他指紋資料庫,所以儲存的指紋資料不會由 iOS 或其他應用訪問,也不會被儲存到 Apple 伺服器或備份到 iCloud 等地方。

A7 Secure Enclave

以上皆是蘋果官方的說明。從硬體上來看指紋特徵資料尚不能被 “Secure Enclave” 和 Touch ID 以外的部件訪問到,並且兩者晶片互相隔離開來,所有軟體都沒有權利獲得指紋資料,僅能得到指紋是否錯誤的回饋。因為架構的核心祕密僅僅只有蘋果公司知道,所以目前幾乎沒有第三方軟體可以訪問到這部分敏感資訊。這裡也要感謝 iOS 的封閉性以及對應用程式嚴格的約束,才能打造出最安全的系統。

那麼蘋果公司是否會自己上傳利用這部分資料呢?從官方的宣告來看是不會的。

與 Touch ID 配合使用的安全建議

Touch ID 雖然很安全,但仍不可在安全性上大意。除了最普通的物理防盜方法之外,還推薦如下的安全措施,來竭力保護個人資料的安全。

更加強壯的鎖屏密碼

Touch ID 快速的掃描解鎖免去了輸入繁瑣的鎖屏密碼,但在多次掃描失敗後,允許使用者手動輸入密碼。這時如果你有一個不簡單的密碼,不是簡單的4位數字,就能大幅提高安全性。這對於本人使用來說,仍然不會增加日常使用的繁瑣。

註冊精準的指紋

推薦使用大拇指錄入指紋,因為此處的指紋紋理清晰,最適合掃描。推薦將手指清潔乾淨再錄入指紋,防止掃描出錯。在錄取指紋邊緣的介面,應當將手指各邊緣儘可能的接觸 Home 按鈕,來全方位的錄入指紋。

touch id ui

雖然網路上有提供方法,可以在錄取指紋時,同時將五個手指錄入到一個指紋裡,但這無疑降低了精準性,可能會帶來增大被破解概率的風險。因此,推薦一次只錄入一個指紋,目前 iOS 支援最多註冊 5 個指紋,你可以安排在你最常用的手指上。

丟失或被盜後停用 Touch ID

在iPhone、iPad丟失或者被盜後,應當前往 iCloud.com/#find 或者其他裝置上的“查詢我的iPhone”應用來開啟“丟失模式”,此時會停用 Touch ID 並只能通過密碼解鎖裝置,排除他人使用破解的指紋來解鎖開 iPhone、iPad 的可能性。

icloud_findmyiphone_webpage

避免 iOS 越獄

雖然目前沒有明確的說明可以指出越獄裝置的 Touch ID 機制會存在安全隱患,但由於越獄裝置的許可權非常大,某些破解軟體和外掛可能會訪問到很機密的資訊,這會留下很大的安全隱患。此外,在 iOS 不斷改良的今天,越獄已經變得不再那麼令人激動了。

相關文章