注:本文不涉及專業(yè)技術(shù)細(xì)節(jié),放心食用
Why
-
普通操作系統(tǒng)的安全問題:
- 功能復(fù)雜,代碼龐大,漏洞高發(fā).
- 運(yùn)行著大量的惡意代碼,存在大量攻擊技術(shù).
- 管理員權(quán)限可以訪問APP的所有數(shù)據(jù).
- 沒有隔離的能力,無法安全的存儲(chǔ)密鑰.
How
- 能不能在設(shè)備上同時(shí)運(yùn)行另一個(gè)安全的操作系統(tǒng),
專門用來存儲(chǔ)密鑰,運(yùn)行安全相關(guān)敏感代碼,
并且常規(guī)操作系統(tǒng)不能隨意訪問它.
What
Trusty
Trusty是一種安全的操作系統(tǒng)(免費(fèi)開源),
可為Android提供可信執(zhí)行環(huán)境 (TEE).Trusty與Android在同一CPU上并行運(yùn)行,
但Trusty通過硬件和軟件與系統(tǒng)的其余組件隔離.Trusty可以訪問CPU和內(nèi)存的全部功能,但完全隔離.
隔離可以保護(hù)Trusty免受用戶安裝的惡意APP,
以及可能在Android中發(fā)現(xiàn)的潛在漏洞的侵害.在具有TEE實(shí)現(xiàn)的設(shè)備上,主處理器通常稱為“不可信”處理器.
這意味著它無法訪問制造商用于存儲(chǔ)機(jī)密數(shù)據(jù)的特定RAM/硬件寄存器/一次寫入Fuse區(qū)域.
在主處理器上運(yùn)行的軟件,會(huì)將所有需要使用機(jī)密數(shù)據(jù)的操作,委派給TEE處理器.應(yīng)用場景:
移動(dòng)支付、安全銀行、多重身份驗(yàn)證戈泼、設(shè)備重置保護(hù)魂莫、抗重放攻擊的持久存儲(chǔ)清蚀、
安全 PIN 和指紋處理碰辅,甚至還能用于惡意軟件檢測汁雷。
TrustZone技術(shù)橫向?qū)Ρ?/h1>
TPM
TPM用于靜態(tài)完整性度量, 無法確保運(yùn)行態(tài)的安全.
TrustZone/SGX除了提供程序加載時(shí)的完整性驗(yàn)證外,
還保證程序運(yùn)行時(shí)安全,緩解針對程序運(yùn)行時(shí)的攻擊.
SGX
TrustZone中, 通過CPU將系統(tǒng)劃分為兩個(gè)隔離環(huán)境, 兩者之間通過SMC指令通信,
一旦Secure world中存在惡意程序, 那么將危害整個(gè)系統(tǒng)的安全.
而SGX中, 一個(gè)CPU可以運(yùn)行多個(gè)安全enclaves, 并發(fā)執(zhí)行, 即使某個(gè)enclave中存在惡意程序,
它也不能訪問和危害其他enclave的被保護(hù)內(nèi)容.
總結(jié)
TEE是一個(gè)標(biāo)準(zhǔn)/概念,一個(gè)可信的執(zhí)行環(huán)境(Trusted execution environment).
Trusty是一個(gè)實(shí)現(xiàn)了TEE標(biāo)準(zhǔn)的操作系統(tǒng).
REE是相對TEE來說的,Andorid系統(tǒng)屬于REE,屬于不可信的執(zhí)行環(huán)境.
TrustZone是ARM處理器的一個(gè)特性或者說功能,
為TEE/TrustyOS的實(shí)現(xiàn)提供了硬件基礎(chǔ).
鴻蒙微內(nèi)核也是一個(gè)TEE的實(shí)現(xiàn).
比較新的手機(jī)類似解鎖之類安全功能,
通常都使用了TrustZone特性來實(shí)現(xiàn)保障安全性.
參考
TPM
TPM用于靜態(tài)完整性度量, 無法確保運(yùn)行態(tài)的安全.
TrustZone/SGX除了提供程序加載時(shí)的完整性驗(yàn)證外,
還保證程序運(yùn)行時(shí)安全,緩解針對程序運(yùn)行時(shí)的攻擊.
SGX
TrustZone中, 通過CPU將系統(tǒng)劃分為兩個(gè)隔離環(huán)境, 兩者之間通過SMC指令通信,
一旦Secure world中存在惡意程序, 那么將危害整個(gè)系統(tǒng)的安全.
而SGX中, 一個(gè)CPU可以運(yùn)行多個(gè)安全enclaves, 并發(fā)執(zhí)行, 即使某個(gè)enclave中存在惡意程序,
它也不能訪問和危害其他enclave的被保護(hù)內(nèi)容.
TEE是一個(gè)標(biāo)準(zhǔn)/概念,一個(gè)可信的執(zhí)行環(huán)境(Trusted execution environment).
Trusty是一個(gè)實(shí)現(xiàn)了TEE標(biāo)準(zhǔn)的操作系統(tǒng).
REE是相對TEE來說的,Andorid系統(tǒng)屬于REE,屬于不可信的執(zhí)行環(huán)境.
TrustZone是ARM處理器的一個(gè)特性或者說功能,
為TEE/TrustyOS的實(shí)現(xiàn)提供了硬件基礎(chǔ).
鴻蒙微內(nèi)核也是一個(gè)TEE的實(shí)現(xiàn).
比較新的手機(jī)類似解鎖之類安全功能,
通常都使用了TrustZone特性來實(shí)現(xiàn)保障安全性.
https://source.android.google.cn/security/trusty/?hl=zh-cn
http://www.jos.org.cn/html/2018/9/5594.htm#outline_anchor_52
https://zhuanlan.zhihu.com/p/53677903