測量生物識別解鎖安全性

要被視為與 Android 兼容,設備實現必須滿足Android 兼容性定義文檔 (CDD)中提出的要求。 Android 10 CDD 使用架構安全性欺騙性來評估生物識別實施的安全性。

  • 架構安全:生物特徵管道對內核或平台妥協的彈性。如果內核和平台妥協不賦予讀取原始生物特徵數據或將合成數據注入管道以影響身份驗證決策的能力,則管道被認為是安全的。
  • 生物識別安全性能:生物識別安全性能通過生物識別的欺騙接受率 (SAR) 、錯誤接受率 (FAR) 和(如果適用)冒名頂替接受率 (IAR) 來衡量。 SAR 是 Android 9 中引入的一項指標,用於衡量生物特徵對物理呈現攻擊的彈性。測量生物特徵時,您需要遵循下述協議。

Android 使用三種類型的指標來衡量生物識別安全性能。

  • 欺騙接受率 (SAR) :定義生物特徵模型接受先前記錄的已知良好樣本的機會的度量。例如,通過語音解鎖,這將使用錄音樣本來衡量解鎖用戶手機的機會:“Ok, Google” 我們將此類攻擊稱為Spoof Attacks 。也稱為冒名頂替者攻擊表示匹配率 (IAPMR)。
  • 冒名頂替者接受率 (IAR) :定義生物特徵模型接受旨在模仿已知良好樣本的輸入的機會度量。例如,在Smart Lock可信語音(語音解鎖)機制中,這將衡量有人試圖模仿用戶語音(使用相似的語調和口音)解鎖其設備的頻率。我們將此類攻擊稱為Imposter Attacks
  • 錯誤接受率 (FAR) :定義模型錯誤接受隨機選擇的錯誤輸入的頻率。雖然這是一個有用的衡量標準,但它並沒有提供足夠的信息來評估模型對針對性攻擊的抵抗力。

信託代理人

Android 10 改變了 Trust Agent 的行為方式。信任代理無法解鎖設備,他們只能延長已解鎖設備的解鎖持續時間。可信面孔在 Android 10 中已棄用。

生物識別課程

使用架構安全性和欺騙性測試的結果對生物識別安全性進行分類。生物識別實現可以分類為3 類(以前是強)2 類(以前是弱)1 類(以前是方便) 。下表描述了新 Android 11 設備的每個類。

生物識別類指標生物識別管道約束
3 級
(以前的強)
特區:0-7%
遠:1/50k
FRR:10%
安全的
  • 回退到主要身份驗證(例如 PIN、圖案或密碼)前 72 小時
  • 可以向應用程序公開 API(例如:通過與 BiometricPrompt 或 FIDO2 API 集成)
  • 必須提交 BCR
2 級
(以前的弱)
特區:7-20%
遠:1/50k
FRR:10%
安全的
  • 回退到主要身份驗證前 24 小時
  • 4 小時空閒超時或 3 次錯誤嘗試後回退到主要身份驗證
  • 可以與 BiometricPrompt 集成,但不能與 keystore 集成(例如:釋放應用身份驗證綁定的密鑰)
  • 必須提交 BCR
1級
(以前的便利)
特區:>20%
遠:1/50k
FRR:10%
不安全/安全
  • 回退到主要身份驗證前 24 小時
  • 4 小時空閒超時或 3 次錯誤嘗試後回退到主要身份驗證
  • 無法向應用程序公開 API
  • 必須從 Android 11 開始提交 BCR(SAR 測試不是強制性的,但強烈建議)
  • 臨時課程將來可能會消失

第 3 類與第 2 類與第 1 類模式

生物特徵安全等級的分配基於安全管道的存在和三個接受率 - FAR、IAR 和 SAR。在不存在冒名頂替者攻擊的情況下,我們只考慮 FAR 和 SAR。

請參閱Android 兼容性定義文檔(CDD),了解針對所有解鎖方式要採取的措施。

人臉和虹膜認證

評估過程

評估過程由兩個階段組成。校準階段確定給定身份驗證解決方案(即校準位置)的最佳呈現攻擊。測試階段使用校准後的位置執行多次攻擊,並評估攻擊成功的次數。 Android 設備和生物識別系統的製造商應通過提交此表格與 Android 聯繫以獲取最新的測試指南。

首先確定校準位置很重要,因為只能使用針對系統最大弱點的攻擊來測量 SAR。

校準階段

在校準階段需要優化面部和虹膜身份驗證的三個參數,以確保測試階段的最佳值:演示攻擊工具 (PAI)、演示格式和跨主題多樣性的性能。


  • 演示攻擊工具 (PAI)是物理欺騙。無論生物識別技術如何,以下 PAI 物種目前都在範圍內:
    • 2D PAI 物種
      • 打印的照片
      • 顯示器或手機顯示屏上的照片
      • 顯示器或手機顯示屏上的視頻
    • 3D PAI 物種
      • 3D打印口罩
  • 演示格式涉及以有助於欺騙的方式對 PAI 或環境的進一步操作。以下是一些嘗試操作的示例:
    • 稍微折疊打印的照片,使其在臉頰處彎曲(從而稍微模仿深度)有時可以極大地幫助打破 2D 面部認證解決方案。
    • 改變照明條件是修改環境以幫助欺騙的一個示例
    • 稍微弄髒或弄髒鏡頭
    • 在縱向和橫向模式之間更改手機的方向以查看是否會影響欺騙性
  • 跨學科多樣性(或缺乏學科多樣性)的性能與基於機器學習的身份驗證解決方案特別相關。跨受試者性別、年齡組和種族/民族測試校準流程通常可以揭示全球人口部分的性能明顯較差,並且是此階段校準的重要參數。
欺騙測試旨在測試系統是否接受有效的重放或演示攻擊。如果未實施或禁用反欺騙或演示攻擊檢測 (PAD),則 PAI 種類需要足以在生物特徵驗證過程中作為有效的生物特徵聲明傳遞。在沒有反欺騙或 PAD 功能的情況下無法通過生物特徵驗證過程的 PAI 作為 PAI 是無效的,並且使用該 PAI 種類的所有測試都是無效的。欺騙測試的執行者應證明在他們的測試中使用的 PAI 種類滿足此標準。
虹膜
  • 演示攻擊工具 (PAI)是物理欺騙。以下 PAI 物種目前在範圍內:
    • 清晰顯示虹膜的面部打印照片
    • 顯示器或手機顯示屏上清晰顯示虹膜的面部照片/視頻
    • 假眼
  • 演示格式涉及以有助於欺騙的方式對 PAI 或環境的進一步操作。例如,將隱形眼鏡放置在打印的照片上或眼睛的照片/視頻的顯示上有助於欺騙某些虹膜分類系統,並有助於提高虹膜認證系統的繞過率。
  • 跨學科多樣性的性能與基於機器學習的身份驗證解決方案特別相關。使用基於虹膜的身份驗證,不同的虹膜顏色可以具有不同的光譜特徵,並且跨不同顏色的測試可以突出全球人群的性能問題。
測試多樣性

面部和虹膜模型可能在不同性別、年齡組和種族/民族中表現不同。跨各種面孔校準演示攻擊,以最大限度地發現性能差距的機會。

測試階段

測試階段是使用前一階段的優化演示攻擊來測量生物特徵安全性能。

在測試階段計數嘗試

單次嘗試被計為呈現人臉(真實或欺騙)和從手機接收一些反饋(解鎖事件或用戶可見消息)之間的窗口。手機無法獲得足夠數據來嘗試匹配的任何嘗試都不應包含在用於計算 SAR 的嘗試總數中。

評估協議

註冊

在開始面部或虹膜身份驗證的校準階段之前,導航到設備設置並刪除所有現有的生物特徵配置文件。刪除所有現有配置文件後,使用將用於校準和測試的目標面部或虹膜註冊一個新配置文件。添加新人臉或虹膜配置文件時,必須處於明亮的環境中,並且設備正確放置在目標人臉正前方 20 厘米至 80 厘米的距離處。

校準階段

至少執行兩次校準階段:至少一次用於 2D PAI 物種,至少一次用於 3D PAI 物種。該階段至少確定 2D PAI 物種的校準位置和 3D PAI 物種的校準位置。建議對每個物種進行校準,但不是必需的。準備 PAI。


  • 在與註冊流程相同的照明條件、角度和距離下拍攝註冊人臉的高質量照片或視頻。
  • 對於物理打印輸出:
    • 沿著臉部輪廓剪裁,製作各種紙質面具。
    • 在兩個臉頰處彎曲面罩以模仿目標面部的曲率
    • 在“面罩”上切出眼孔以顯示測試者的眼睛——這對於將眨眼作為活體檢測手段的解決方案非常有用。
  • 嘗試建議的演示格式操作,看看它們是否會影響校準階段的成功機會
虹膜
  • 拍攝註冊人臉的高分辨率照片或視頻,在與註冊流程相同的照明條件、角度和距離下清晰顯示虹膜。
  • 嘗試在眼睛上戴和不戴隱形眼鏡,看看哪種方法會增加欺騙性

進行校準階段

參考位置
  • 參考位置:參考位置是通過將 PAI 放置在設備前面的適當距離(20-80 厘米)處確定的,這樣 PAI 在設備視圖中清晰可見,但使用其他任何東西(例如支架)對於 PAI)不可見。
  • 水平參考平面:當 PAI 處於參考位置時,設備和 PAI 之間的水平平面是水平參考平面。
  • 垂直參考平面:當 PAI 處於參考位置時,設備和 PAI 之間的垂直平面是垂直參考平面。
參考平面
圖 1 :參考平面
垂直弧線

確定參考位置,然後以垂直弧線測試 PAI,保持與設備的距離與參考位置相同。在同一垂直平面上抬起 PAI,在設備和水平參考平面之間形成 10 度角,並測試人臉解鎖。

繼續以 10 度的增量升高和測試 PAI,直到 PAI 在設備視野中不再可見。記錄任何成功解鎖設備的位置。重複此過程,但在水平參考平面下方以向下的弧線移動 PAI。有關電弧測試的示例,請參見下面的圖 3。

水平弧線

將 PAI 返回到參考位置,然後將其沿水平面移動以與垂直參考面形成 10 度角。使用 PAI 在這個新位置執行垂直電弧測試。以 10 度增量沿水平面移動 PAI,並在每個新位置執行垂直弧測試。

沿水平弧線測試

圖 1 :沿垂直和水平弧線測試

需要以 10 度的增量對設備的左側和右側以及設備的上方和下方重複電弧測試。

產生最可靠解鎖結果的位置是 PAI 物種類型(例如,2D 或 3D PAI 物種)的校準位置

測試階段

在校準階段結束時,應該有兩個校準位置,一個用於 2D PAI 物種,一個用於 3D PAI 物種。如果無法建立校準位置,則應使用參考位置。測試方法對於測試 2D 和 3D PAI 物種很常見。

  • 跨越已註冊的面孔,其中 E>= 10,並且包括至少 10 個獨特的面孔。
    • 註冊面部/虹膜
    • 使用上一階段的校準位置,執行U解鎖嘗試,如上一節所述計算嘗試次數,其中 U >= 10。記錄成功解鎖的次數S。
    • 然後可以測量 SAR:
$$ \displaystyle SAR = \frac{\displaystyle\sum_{i=1}^{E}{S_i} }{(U * E)}\ {* 100\%} $$

在哪裡:

  • E = 註冊人數
  • U = 每次註冊的解鎖嘗試次數
  • Si = 註冊成功解鎖次數 i

獲得統計上有效的錯誤率樣本所需的迭代次數:95% 以下的置信度假設,大 N

誤差範圍每個主題所需的測試迭代
1% 9595
2% 2401
3% 1067
5% 385
10% 97

所需時間(每次嘗試 30 秒,10 個科目)

誤差範圍總時間
1% 799.6 小時
2% 200.1 小時
3% 88.9 小時
5% 32.1 小時
10% 8.1 小時

我們建議以 5% 的誤差幅度為目標,這使得總體中的真實錯誤率在 2% 到 12% 之間。

範圍

測試階段主要針對目標用戶面部的傳真測量面部認證的彈性。它不解決基於非傳真的攻擊,例如使用 LED 或充當主打印的圖案。雖然這些還沒有被證明對基於深度的人臉認證系統有效,但在概念上沒有什麼可以阻止這一點。未來的研究表明情況確實如此,這既可能也是合理的。此時,將對該協議進行修訂,以包括衡量對這些攻擊的彈性。

指紋認證

在 Android 9 中,標准設置為對 PAI 的最低彈性,以小於或等於 7% 的欺騙接受率 (SAR)衡量。關於為什麼 7% 的簡要原因可以在這篇博文中找到。

評估過程

評估過程由兩個階段組成。校準階段確定給定指紋認證解決方案(即校準位置)的最佳呈現攻擊。測試階段使用校准後的位置執行多次攻擊,並評估攻擊成功的次數。 Android 設備和生物識別系統的製造商應通過提交此表格與 Android 聯繫以獲取最新的測試指南。

校準階段

指紋認證的三個參數需要優化以確保測試階段的最佳值:演示攻擊工具 (PAI)、演示格式和跨主題多樣性的性能

  • PAI是物理欺騙,例如印刷指紋或模製複製品都是演示媒體的示例。強烈推薦以下惡搞素材
    • 光學指紋傳感器 (FPS)
      • 使用非導電墨水的複印紙/透明膠片
      • 諾克斯明膠
      • 乳膠漆
      • 埃爾默的膠水
    • 電容式 FPS
      • 諾克斯明膠
      • 埃爾默木匠的室內木膠
      • 埃爾默的膠水
      • 乳膠漆
    • 超聲波FPS
      • 諾克斯明膠
      • 埃爾默木匠的室內木膠
      • 埃爾默的膠水
      • 乳膠漆
  • 演示格式涉及以有助於欺騙的方式對 PAI 或環境的進一步操作。例如,在創建 3D 複製品之前修飾或編輯指紋的高分辨率圖像。
  • 跨學科多樣性的性能與調整算法特別相關。跨受試者性別、年齡組和種族/民族測試校準流程通常可以揭示全球人口部分的性能明顯較差,並且是此階段校準的重要參數。
測試多樣性

指紋讀取器可能在性別、年齡組和種族/民族之間表現不同。一小部分人的指紋難以識別,因此應使用各種指紋來確定識別和欺騙測試的最佳參數。

測試階段

測試階段是測量生物特徵安全性能的時候。至少,測試應該以非合作方式進行,這意味著收集的任何指紋都是通過將它們從另一個表面抬起來完成的,而不是讓目標積極參與他們的指紋收集,例如製作一個合作模具對象的手指。後者是允許的,但不是必需的。

在測試階段計數嘗試

將單次嘗試計為向傳感器顯示指紋(真實或欺騙)與從手機接收一些反饋(解鎖事件或用戶可見消息)之間的窗口。

手機無法獲得足夠數據來嘗試匹配的任何嘗試都不應包含在用於計算 SAR 的嘗試總數中。

評估協議

註冊

在開始指紋驗證的校準階段之前,導航到設備設置並刪除所有現有的生物特徵配置文件。刪除所有現有配置文件後,使用將用於校準和測試的目標指紋註冊一個新配置文件。按照屏幕上的所有說明操作,直到成功註冊個人資料。

校準階段

光學FPS

這類似於超聲波和電容的校準階段,但目標用戶指紋的 2D 和 2.5D PAI 種類。

  • 將指紋的潛在副本從表面上提起。
  • 使用 2D PAI 物種進行測試
    • 將抬起的指紋放在傳感器上
  • 使用 2.5D PAI 物種進行測試。
    • 創建指紋的 PAI
    • 將 PAI 放在傳感器上
超聲波FPS

超聲波校準涉及提升目標指紋的潛在副本。例如,這可以使用通過指紋粉末提取的指紋或指紋的打印副本來完成,並且可以包括手動重新觸摸指紋圖像以實現更好的欺騙。

在獲得目標指紋的潛在副本後,進行 PAI。

電容式 FPS

電容校準涉及與上述超聲波校準相同的步驟。

測試階段

  • 使用計算 FRR/FAR 時使用的相同參數,讓至少 10 個獨特的人註冊
  • 為每個人創建 PAI
  • 然後可以測量 SAR:
$$ \displaystyle SAR = \frac{\displaystyle\sum_{i=1}^{E}{S_i} }{(U * E)}\ {* 100\%} $$

獲得統計上有效的錯誤率樣本所需的迭代次數:95% 以下的置信度假設,大 N

誤差範圍每個主題所需的測試迭代
1% 9595
2% 2401
3% 1067
5% 385
10% 97

所需時間(每次嘗試 30 秒,10 個科目)

誤差範圍總時間
1% 799.6 小時
2% 200.1 小時
3% 88.9 小時
5% 32.1 小時
10% 8.1 小時

我們建議以 5% 的誤差幅度為目標,這使得總體中的真實錯誤率在 2% 到 12% 之間。

範圍

設置此過程是為了測試指紋身份驗證的彈性,主要針對目標用戶指紋的傳真。測試方法基於當前的材料成本、可用性和技術。該協議將被修訂,以包括測量新材料和技術的彈性,因為它們變得實用。

常見註意事項

雖然每種模式都需要不同的測試設置,但有一些共同的方面適用於所有模式。

測試實際硬件

當生物特徵模型在理想化條件下和在不同於移動設備上實際出現的硬件上進行測試時,收集的 SAR/IAR 指標可能不准確。例如,使用多麥克風設置在消聲室中校準的語音解鎖模型在嘈雜環境中用於單個麥克風設備時的行為非常不同。為了捕獲准確的指標,應在安裝了硬件的實際設備上進行測試,並在設備上顯示的硬件失敗。

使用已知攻擊

當今使用的大多數生物識別方式都已被成功欺騙,並且存在有關攻擊方法的公開文檔。下面我們簡要概述了具有已知攻擊的模式的測試設置。我們建議盡可能使用此處列出的設置。

預測新的攻擊

對於進行了重大新改進的模式,測試設置文檔可能不包含合適的設置,並且可能不存在已知的公共攻擊。現有模式可能還需要在新發現的攻擊之後調整其測試設置。在這兩種情況下,您都需要提出合理的測試設置。請使用本頁底部的網站反饋鏈接讓我們知道您是否設置了可以添加的合理機制。

不同模式的設置

指紋

IAR沒有必要。
特區
  • 使用目標指紋的模具創建 2.5D PAI。
  • 測量精度對指紋模具的質量很敏感。牙科矽膠是一個不錯的選擇。
  • 測試設置應測量使用模具創建的假指紋能夠解鎖設備的頻率。

臉和虹膜

IAR下限將被 SAR 捕獲,因此不需要單獨測量。
特區
  • 用目標面部的照片進行測試。對於虹膜,需要放大面部以模擬用戶通常使用該功能的距離。
  • 照片應該是高分辨率的,否則結果會產生誤導。
  • 照片不應以顯示它們是圖像的方式呈現。例如:
    • 不應包含圖像邊框
    • 如果照片在手機上,則手機屏幕/邊框不應可見
    • 如果有人拿著照片,不應該看到他們的手
  • 對於直角,照片應該填滿傳感器,這樣就看不到外面的其他東西了。
  • 當樣本(人臉/虹膜/照片)與相機成銳角時,人臉和虹膜模型通常更寬鬆(模擬用戶將手機直接放在他們面前並指向他們的臉的用例) )。在這個角度進行測試將有助於確定您的模型是否容易受到欺騙。
  • 測試設置應測量面部或虹膜圖像能夠解鎖設備的頻率。

嗓音

IAR
  • 使用參與者聽到陽性樣本然後嘗試模仿的設置進行測試。
  • 與跨性別和不同口音的參與者一起測試模型,以確保覆蓋某些語調/口音具有更高 FAR 的邊緣情況。
特區
  • 使用目標聲音的錄音進行測試。
  • 錄音必須具有相當高的質量,否則結果會產生誤導。