Rebase是一個全球性的極客組織,致力于幫助極客更好的利用科技創(chuàng)新,推動社會發(fā)展。隨著移動設備的發(fā)展,移動設備的功能越來越強大,移動設
Rebase是一個全球性的極客組織,致力于幫助極客更好的利用科技創(chuàng)新,推動社會發(fā)展。
隨著移動設備的發(fā)展,移動設備的功能越來越強大,移動設備會存儲用戶的資產(chǎn),處理支付等操作。目前移動端的系統(tǒng)運行環(huán)境叫做REE(Rich Execution Environment),在其中運行的系統(tǒng)叫做Rich OS(Operating System),包含Android、IOS和Linux,Rich OS的特點是功能強大,開放和擴展性好,可以給上層應用提供設備的所有功能,比如攝像頭,觸摸屏等,這樣才有了我們現(xiàn)在看到的各種各樣的應用。
但Rich OS存在很多的安全隱患,比如經(jīng)常會發(fā)現(xiàn)bug,OS可以獲得應用所有的數(shù)據(jù),很難驗證OS是否被篡改,還會受到各種各樣的攻擊(如上圖),這些對于用戶資產(chǎn)有很大的安全隱患,那如何解決這些問題呢?
這時候就需要TEE幫忙了。
TEE是什么
TEE的全稱 trusted execution environment,即可信執(zhí)行環(huán)境,它是CPU上的一塊區(qū)域。這塊區(qū)域的作用是給數(shù)據(jù)和代碼的執(zhí)行提供一個更安全的空間,并保證它們的機密性和完整性。
為啥說TEE更安全可信呢?
因為TEE提供了一個與REE隔離的環(huán)境保存用戶的敏感信息,TEE可以直接獲取REE的信息,而REE不能獲取TEE的信息。當用戶付款時,通過TEE提供的接口來進行驗證,以保證支付信息不會被篡改,密碼不會被劫持,指紋信息不會被盜用。
在TEE上運行的應用叫做可信應用(Trusted Application,簡稱TA),可信應用之間通過密碼學技術(shù)保證它們之間是隔離開的,不會隨意讀取和操作其它可信應用的數(shù)據(jù)。另外,可信應用在執(zhí)行前需要做完整性驗證,保證應用沒有被篡改。
可信應用可以和觸摸屏,攝像頭還有指紋傳感器等外設進行直接交互,不需要通過REE提供的接口,所以更加保證了安全。
各方對于TEE的態(tài)度
對于個人來講,可以保證個人數(shù)據(jù)和資產(chǎn)的安全。
對于應用開發(fā)者來講,有了更安全的應用,用戶才更放心使用他們提供的服務。
對于操作系統(tǒng)提供商,設備生產(chǎn)廠商來講也是非常重要,因為當前的設備和系統(tǒng)越來越復雜,很難保證用戶的信息和資產(chǎn)的安全,如果出問題,會極大的影響自身的品牌,甚至會遭受巨額的罰款。
所以整個鏈條的參與者都希望TEE標準付諸實踐。
TEE的發(fā)展歷程
1. TEE的前身。Open Mobile Terminal Platform (OMTP)于2006年提出一種雙系統(tǒng)解決方案:即在同一個智能終端下,除了多媒體操作系統(tǒng)外再提供一個隔離的安全操作系統(tǒng),這一運行在隔離的硬件之上的隔離安全操作系統(tǒng)用來專門處理敏感信息以保證信息的安全。該方案即TEE的前身。
2. TEE標準正式提出。OMTP于2009年提出了TEE標準”Advanced Trusted Environment:OMTP TR1”,其中說明了TEE同時包含了硬件和軟件,目標是為應用程序提供必要的支持。其中對安全定義了兩個級別,第一個級別是可以應對軟件方面的攻擊,第二個級別是可以同時應對軟件和硬件攻擊。
3. TEE的實現(xiàn)?;贠MTP的方案,ARM公司提出了一種硬件虛擬化技術(shù)TrustZone及其相關(guān)硬件實現(xiàn)方案。TrustZone即是支持TEE技術(shù)的產(chǎn)品。作為針對消費電子設備設計的一種硬件架構(gòu),其目的是為消費電子產(chǎn)品構(gòu)建一個安全框架來抵御各種可能的攻擊。
TrustZone在概念上將SoC的硬件和軟件資源劃分為安全(Secure World)和非安全(Normal World)兩個世界,所有需要保密的操作在安全世界執(zhí)行(如指紋識別、密碼處理、數(shù)據(jù)加解密、安全認證等),其余操作在非安全世界執(zhí)行(如用戶操作系統(tǒng)、各種應用程序等),安全世界和非安全世界通過一個名為Monitor Mode的模式進行轉(zhuǎn)換。
4. TEE當前的標準。GlobalPlatform(全球最主要的智能卡多應用管理規(guī)范的組織,簡稱為GP)從2011年起開始起草制定相關(guān)的TEE規(guī)范標準,并聯(lián)合一些公司共同開發(fā)基于GP TEE標準的可信操作系統(tǒng)。因此,如今大多數(shù)基于TEE技術(shù)的Trust OS都遵循了GP的標準規(guī)范。
TEE適合哪些場景
數(shù)字內(nèi)容保護。我們先拋開有爭議的版權(quán)和自由知識之間的爭論,單從技術(shù)能力上來說,TEE可以用來做數(shù)字版權(quán)管理(Digital Rights Management,簡稱DRM),通過TEE可以很容易的與連接的設備進行加密信息的傳輸,之所以容易是因為TEE不允許用戶直接讀取TEE中存儲的數(shù)據(jù),只有擁有特定秘鑰或者經(jīng)過應用開發(fā)商同意(比如你付費了)才可以獲取到解密后的數(shù)據(jù)(例如播放電影)。
移動金融服務。TEE可以配合手機的NFC,安全元素(Secure Element,如SIM卡)以及可信后臺系統(tǒng)來給用戶提供安全的操作環(huán)境,讓金融交易可以安全的進行。
認證。TEE可以很好的支持生物ID認證,比如面部識別,指紋傳感器和聲音驗證,這種方式很難被竊取信息,比PIN和密碼的認證方式要安全很多。
區(qū)塊鏈。我們之后會講解。
如何在區(qū)塊鏈領(lǐng)域應用
通過TEE,可以更好的幫助區(qū)塊鏈改進安全,性能和隱私。
對于安全,大多數(shù)公鏈項目都無法保證每個節(jié)點運行環(huán)境的安全,因此需要大量的節(jié)點一起達成共識來提高安全,而節(jié)點的數(shù)量顯然與性能成反比,給公鏈帶來嚴重的性能瓶頸。通過TEE提供的可信環(huán)境,保證了機器中運行的代碼沒有被篡改,可以按照區(qū)塊鏈協(xié)議指定的方式運行,從而為整個網(wǎng)絡提供了安全。
對于性能,因為我們可以相信TEE中的代碼不會被篡改并且按照期望的方式執(zhí)行,所以區(qū)塊鏈可以將一部分計算挪到TEE環(huán)境中來執(zhí)行,這樣減少了全局共識的成本,增加了區(qū)塊鏈的性能。
對于隱私,TEE可以提供端到端的隱私保護,從數(shù)據(jù)到計算結(jié)果都只能被用戶自己看到。
TEE Hackathon
倫敦時間2019年10月9日17:30,Trias將舉辦TEE Hackathon,主題是《如何使用可信計算和Layer -1優(yōu)化以太坊》,首站在牛津大學開啟。本屆黑客松聚焦可信計算、“-1”層網(wǎng)絡與以太坊的優(yōu)化應用,并面向全球開發(fā)者線上征集技術(shù)解決方案。(Rebase)