近日,谷歌公開了安卓 PCC 工作原理的技術細節,介紹了如何在受保護的設備上對敏感用戶數據進行數據。
谷歌在安卓 12 系統中引入了私有計算核心(Private Compute Core,PCC)功能。PCC 是操作系統中一個安全、獨立、可信的環境,來自傳感器、GPS、麥克風、攝像頭和屏幕的數據在 PCC 中保存和處理,為用戶提供機器學習過程中的特征。比如 'Live Caption' 特征使用麥克風來進行語音識別,'Now Playing' 特征可以識別歌曲,'Smart Reply' 特征可以在消息 APP 中建議回復內容。
PCC 工作原理
受保護的沙箱中處理的操作系統級數據和相關數據可以通過 API 系統向安卓設備提供智能特征,但應用和遠程服務器是無法訪問的,因此保護了用戶隱私。
PCC 與其他 APP 的隔離是通過安卓框架 API,包括所有 PCC 的數據輸入和數據輸出,以及操作系統安裝過程中授予的權限。只有系統更新才能修改這些權限,因此沒有 APP 或遠程服務器連接能夠修改該權限。
谷歌稱,PCC 使得惡意軟件難以利用操作系統。PCC 設計的目的就是保護用戶數據隱私,并不是專門針對惡意軟件的安全保護措施。所有 PCC enclave 中發生的用戶數據處理都只在設備中。如果機器學習特征需要設備外數據的交互,谷歌 PCC 就可以實現加密交換。
圖 PCC 功能圖
私有計算服務(Private Compute Services,PCS)是提供 PCC 與云之間隱私保護鏈路的一系列服務。目前,谷歌也開源了 PCS,源碼參見:https://github.com/google/private-compute-services
谷歌稱為了改善基于使用統計數據的 PCC,其使用聯邦學習和分析計算來監控使用私有信息提取的機器學習模型的性能。聯邦分析和學習使得谷歌可以在沒有中心化數據收集、在用戶設備上本地使用原始的數據分析計算來訓練機器學習模型。因為 PCC 也是安卓操作系統的一部分,所有 PCC 的機器學習特征也是可更新的。
但 PCC 也在用戶的控制范圍中。比如,將傳感器設置為關,就不會在操作系統中生成和發送數據了,包括 PCC。此外,用戶還可以在系統設置中限制與 PCC 進行數據共享:
圖 安卓系統中的禁用機器學習特征設置