




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
機(jī)密計(jì)算簡介與現(xiàn)狀I(lǐng)ntroductionAndStatusOfCon?dential
Computing04OpenAnolis
龍蜥社區(qū)OpenAnolis
Community011122云原生機(jī)密計(jì)算SIG概述Overview
Of
The
Cloud
Native
Con?dential
Computing
SIG07海光CSV:海光安全虛擬化技術(shù)Intel
SGX:
Intel安全防護(hù)擴(kuò)展Intel
TDX:
Intel安全虛擬化技術(shù)AMD
SEV:
AMD安全加密虛擬化技術(shù)ARMCCA:
Arm安全加密虛擬化技術(shù)機(jī)密計(jì)算平臺(tái)Con?dentialComputing
Platform1214161820編程框架Programming
FrameworkIntel
SGX
SDK/PSW/DCAP:
Intel
SGX軟件開發(fā)套件和平臺(tái)軟件服務(wù)232931Intel
Homomorphic
Encryption:
Intel
平臺(tái)同態(tài)加密加速框架Intel_HE_Toolkit
開發(fā)指南RATS-TLS:
跨機(jī)密計(jì)算平臺(tái)的雙向傳輸層安全協(xié)議35374346113Apache
Teaclave
Java
TEESDK:面向Java生態(tài)的機(jī)密計(jì)算編程框架Apache_Teaclave_
Java_TEE_SDK
最佳實(shí)踐運(yùn)行時(shí)底座Runtime
Foundation4747566168海光CSV機(jī)密容器基于runtime-attestation使用機(jī)密容器基于pre-attestation使用機(jī)密容器基于runtime-attestation使用簽名容器海光CSV機(jī)密虛擬機(jī)72Intel
TDX機(jī)密容器解決方案SolutionOcclum:
基于Intel
SGX的輕量級(jí)LibOS818291102107109111Intel
vSGX:Intel
SGX虛擬化Intel
SGX虛擬機(jī)最佳實(shí)踐AMD
SEV機(jī)密容器AMD
SEV機(jī)密虛擬機(jī)Inclavare
Containers:
面向機(jī)密計(jì)算場景的開源容器運(yùn)行時(shí)技術(shù)棧Enclave-CC:
進(jìn)程級(jí)機(jī)密容器114115121126133Intel
Con?dential
Computing
Zoo:
Intel機(jī)密計(jì)算開源解決方案部署TensorFlow
Serving在線推理服務(wù)部署TensorFlow橫向聯(lián)邦學(xué)習(xí)部署隱私集合求交方案PPML:
端到端隱私保護(hù)機(jī)器學(xué)習(xí)解決方案01認(rèn)識(shí)龍蜥龍蜥社區(qū)(
OpenAnolis)成立于2020
年9月,由阿里云、ARM、統(tǒng)信軟件、龍芯、飛騰、中科方德、Intel
等
24
家國內(nèi)外頭部企業(yè)共同成立龍蜥社區(qū)理事會(huì),到目前有超過
300
家合作伙伴參與共建,是是國內(nèi)領(lǐng)先的開源社區(qū)之一,具備較為領(lǐng)先的產(chǎn)業(yè)和技術(shù)影響力。目前,龍蜥操作系統(tǒng)下載量已超240萬,整體裝機(jī)量達(dá)300多萬,100余款企業(yè)產(chǎn)品完成與龍蜥操作系統(tǒng)的適配。同時(shí),統(tǒng)信軟件、中科方德、中國移動(dòng)云、麒麟軟件、中標(biāo)軟件、凝思軟件、浪潮信息、新支點(diǎn)、阿里云基于龍蜥開源操作系統(tǒng)推出各自商業(yè)版本及產(chǎn)品,在政務(wù)、金融、交通、通信等領(lǐng)域累計(jì)服務(wù)用戶超過30萬。龍蜥開源影響力龍蜥社區(qū)及龍蜥操作系統(tǒng)也獲得了一定的行業(yè)認(rèn)可,工信部電子標(biāo)準(zhǔn)院首批開源項(xiàng)目成熟度評(píng)估,成為唯一獲得“卓越級(jí)”認(rèn)證的開源項(xiàng)目、龍蜥社區(qū)榮登
2022科創(chuàng)中國“開源創(chuàng)新榜”、榮獲“中國開源云聯(lián)盟年度優(yōu)秀開源項(xiàng)目獎(jiǎng)”、“OSCAR
開源尖峰案例獎(jiǎng)”等
25
項(xiàng)行業(yè)獎(jiǎng)項(xiàng)。龍蜥項(xiàng)目運(yùn)作模式龍蜥社區(qū)已成立
50+
個(gè)
SIG
工作組,圍繞芯片、內(nèi)核、編譯器、安全、虛擬化及云原生等操作系統(tǒng)核心領(lǐng)域進(jìn)行技術(shù)創(chuàng)新,已發(fā)布龍蜥Anolis
OS
7、Anolis
OS
8.x
系列、Anolis
OS
23
公測版、Lifsea
OS等多個(gè)社區(qū)版本,為應(yīng)對(duì)即將停服的
CentOS,官網(wǎng)已上線「CentOS
停服專區(qū)」為用戶提供遷移方案及長期穩(wěn)定支持,致力于成為
CentOS
的更佳替代。龍蜥運(yùn)營管理“為更好地運(yùn)營和治理社區(qū),龍蜥社區(qū)定期召開月度運(yùn)營委員會(huì)會(huì)議、技術(shù)委員會(huì)會(huì)議,理事大會(huì)。關(guān)于理事大會(huì):龍蜥社區(qū)第二屆理事大會(huì)圓滿召開!理事?lián)Q屆選舉、4
位特約顧問加入關(guān)于運(yùn)營委員會(huì)會(huì)議:龍蜥社區(qū)第15次運(yùn)營委員會(huì)會(huì)議順利召開歡迎更多企業(yè)加入共建,
龍騰計(jì)劃可參看:“龍騰計(jì)劃”啟動(dòng)!邀請(qǐng)
500
家企業(yè)加入,與龍蜥社區(qū)一起擁抱無限生態(tài)。”龍蜥開放的生態(tài)為了鼓勵(lì)合作伙伴在社區(qū)探索出更多的商業(yè)合作方式,真正牽引企業(yè)在龍蜥社區(qū)的合作落地,社區(qū)推出「龍騰計(jì)劃」的升級(jí)版——「生態(tài)發(fā)展計(jì)劃」,更聚焦在產(chǎn)品和商業(yè)合作本身。關(guān)于龍蜥操作系統(tǒng)
(
Anolis
OS
)龍蜥操作系統(tǒng)(AnolisOS)搭載了
ANCK
版本的內(nèi)核,性能和穩(wěn)定性經(jīng)過歷年“雙
11”歷練,能為云上典型用戶場景帶來40%的綜合性能提升,故障率降低50%,兼容
CentOS
生態(tài),提供平滑的
CentOS
遷移方案,并提供全棧國密能力。最新的長期支持版本Anolis
OS
8.6
已發(fā)布,更多龍蜥自研,支持
X86_64
、RISC-V、Arm64、LoongArch
架構(gòu),完善適配
Intel、飛騰、海光、兆芯、鯤鵬、龍芯等主流芯片。下載體驗(yàn)鏈接:/download2021年12月31
日,龍蜥開源社區(qū)(OpenAnolis)上線「CentOS停服專區(qū)」,為受CentOS停服影響的用戶提供遷移方案及長期穩(wěn)定支持。此次停服,龍蜥操作系統(tǒng)(Anolis
OS)產(chǎn)品優(yōu)勢(shì)包括:打造系統(tǒng)化解決方案
AOMS、提供多款配套工具、承諾10年技術(shù)支持、兼容
CentOS
生態(tài)、具備差異化核心技術(shù)優(yōu)勢(shì)、歷經(jīng)豐富場景驗(yàn)證、沉淀用戶遷移案例實(shí)踐。反饋與共創(chuàng)OpenAnolis是一個(gè)開放包容的社區(qū),因此我們也歡迎志同道合之士參與我們的文檔修訂。對(duì)于文檔中您認(rèn)為不足之處,歡迎到我們的官方倉庫
Whitebook
Con?dentialComputing
新開issue,我們會(huì)第一時(shí)間進(jìn)行響應(yīng)。另外,若您想更新文檔,也同樣歡迎在
Whitebook
Con?dentialComputing
提PR詳情可參看:/page/partner20203機(jī)密計(jì)算簡介與現(xiàn)狀I(lǐng)ntroduction
And
Status
Of
Con?dential
Computing機(jī)密計(jì)算簡介與現(xiàn)狀數(shù)據(jù)安全與機(jī)密計(jì)算數(shù)據(jù)在整個(gè)生命周期有三種狀態(tài):At-Rest(靜態(tài))、In-Transit(傳輸中)和
In-Use(使用中)。At-Rest
狀態(tài)下,一般會(huì)把數(shù)據(jù)存放在硬盤、閃存或其他的存儲(chǔ)設(shè)備中。保護(hù)
At-Rest
狀態(tài)的數(shù)據(jù)有很多方法,比如對(duì)文件加密后再存放或者對(duì)存儲(chǔ)設(shè)備加密。In-Transit
是指通過公網(wǎng)或私網(wǎng)把數(shù)據(jù)從一個(gè)地方傳輸?shù)狡渌胤?,用戶可以在傳輸之前?duì)文件加密或者采用安全的傳輸協(xié)議保證數(shù)據(jù)在傳輸中的安全,比如HTTPS、SSL、TLS、FTPS
等。In-Use
是指正在使用的數(shù)據(jù)。即便數(shù)據(jù)在傳輸過程中是被加密的,但只有把數(shù)據(jù)解密后才能進(jìn)行計(jì)算和使用。也就意味著,如果數(shù)據(jù)在使用時(shí)沒有被保護(hù)的話,仍然有數(shù)據(jù)泄露和被篡改的風(fēng)險(xiǎn)。在這個(gè)世界上,我們不斷地存儲(chǔ)、使用和共享各種敏感數(shù)據(jù):從信用卡數(shù)據(jù)到病歷,從防火墻配置到地理位置數(shù)據(jù)。保護(hù)處于所有狀態(tài)中的敏感數(shù)據(jù)比以往任何時(shí)候都更為重要。如今被廣泛使用的加密技術(shù)可以用來提供數(shù)據(jù)機(jī)密性(防止未經(jīng)授權(quán)的訪問)和數(shù)據(jù)完整性(防止或檢測未經(jīng)授權(quán)的修改),但目前這些技術(shù)主要被用于保護(hù)傳輸中和靜止?fàn)顟B(tài)的數(shù)據(jù),目前對(duì)數(shù)據(jù)的第三個(gè)狀態(tài)“使用中”提供安全防護(hù)的技術(shù)仍舊屬于新的前沿領(lǐng)域。機(jī)密計(jì)算指使用基于硬件的可信執(zhí)行環(huán)境(Trusted
Execution
Environment,TEE)對(duì)使用中的數(shù)據(jù)提供保護(hù)。
通過使用機(jī)密計(jì)算,我們現(xiàn)在能夠針對(duì)“使用中”的數(shù)據(jù)提供保護(hù)。機(jī)密計(jì)算的核心功能有:保護(hù)
In-Use
數(shù)據(jù)的機(jī)密性。未經(jīng)授權(quán)的實(shí)體(主機(jī)上的應(yīng)用程序、主機(jī)操作系統(tǒng)和Hypervisor、系統(tǒng)管理員或?qū)τ布哂形锢碓L問權(quán)限的任何其他人。)無法查看在TEE中使用的數(shù)據(jù),內(nèi)存中的數(shù)據(jù)是被加密的,即便被攻擊者竊取到內(nèi)存數(shù)據(jù)也不會(huì)泄露數(shù)據(jù)。保護(hù)
In-Use數(shù)據(jù)的完整性。防止未經(jīng)授權(quán)的實(shí)體篡改正在處理中的數(shù)據(jù),度量值保證了數(shù)據(jù)和代碼的完整性,使用中有任何數(shù)據(jù)或代碼的改動(dòng)都會(huì)引起度量值的變化。可證明性。通常
TEE
可以提供其起源和當(dāng)前狀態(tài)的證據(jù)或度量值,以便讓另一方進(jìn)行驗(yàn)證,并決定是否信任
TEE
中運(yùn)行的代碼。最重要的是,此類證據(jù)是由硬件簽名,并且制造商能夠提供證明,因此驗(yàn)證證據(jù)的一方就可以在一定程度上保證證據(jù)是可靠的,而不是由惡意軟件或其他未經(jīng)授權(quán)的實(shí)體生成的。機(jī)密計(jì)算的現(xiàn)狀與困境業(yè)界內(nèi)的諸多廠商就已經(jīng)開始關(guān)注并投入到機(jī)密計(jì)算中。各大芯片廠家和云服務(wù)提供商(Cloud
ServiceProvider,簡稱
CSP)都在機(jī)密計(jì)算領(lǐng)域投入研發(fā)資源,并組建了“機(jī)密計(jì)算聯(lián)盟”。該聯(lián)盟專門針對(duì)云服務(wù)及硬件生態(tài),致力于保護(hù)計(jì)算時(shí)的數(shù)據(jù)安全。目前機(jī)密計(jì)算正處于百花齊發(fā)和百家爭鳴的階段,市場和商業(yè)化潛力非常巨大。
但機(jī)密計(jì)算在云原生場景中還有一些不足:1、用戶心智不足。用戶普遍對(duì)機(jī)密計(jì)算這項(xiàng)新技術(shù)的認(rèn)知感不足,難以將其與自己的業(yè)務(wù)直接聯(lián)系起來,導(dǎo)致需求不夠旺盛。2、技術(shù)門檻高。目前,相比傳統(tǒng)開發(fā)方式,主流的機(jī)密計(jì)算技術(shù)的編程模型給人們對(duì)機(jī)密計(jì)算技術(shù)的印象是學(xué)習(xí)和使用門檻高,用戶需要使用機(jī)密計(jì)算技術(shù)對(duì)業(yè)務(wù)進(jìn)行改造,令很多開發(fā)者望而生畏。3、應(yīng)用場景缺乏普適性。目前,機(jī)密計(jì)算主要被應(yīng)用于具有特定行業(yè)壁壘或行業(yè)特征的場景,如隱私計(jì)算和金融等。這些復(fù)雜場景讓普通用戶很難觸達(dá)機(jī)密計(jì)算技術(shù),也難以為普通用戶打造典型應(yīng)用場景。同時(shí),不0405同廠商的CPU
TEE雖各自具有自身的特點(diǎn),但都無法解決異構(gòu)計(jì)算算力不足的問題,限制了機(jī)密計(jì)算的應(yīng)用領(lǐng)域。4、信任根和信任模型問題。在信創(chuàng)、數(shù)據(jù)安全和安全合規(guī)等政策性要求對(duì)CPU
TEE的信任根存在自主可控的訴求;與此同時(shí),雖然有部分用戶愿意信任云廠商和第三方提供的解決方案,但多數(shù)用戶對(duì)云廠商和第三方不完全信任,要求將機(jī)密計(jì)算技術(shù)方案從租戶TCB中完全移除??傊壳耙延械臋C(jī)密計(jì)算技術(shù)方案存在以上困境,不能夠完全滿足用戶不同場景的安全需求。為了解決以上四個(gè)問題,云原生機(jī)密計(jì)算SIG應(yīng)運(yùn)而生,主要可概括為四點(diǎn):1、推廣機(jī)密計(jì)算技術(shù)。邀請(qǐng)參與方在龍蜥大講堂介紹和推廣機(jī)密計(jì)算技術(shù)與解決方案。與芯片廠商合作,未來可以通過龍蜥實(shí)驗(yàn)室讓外部用戶體驗(yàn)機(jī)密計(jì)算技術(shù),對(duì)機(jī)密計(jì)算有一個(gè)更深入化的了解。2、提高機(jī)密計(jì)算技術(shù)的可用性。支持多種機(jī)密計(jì)算硬件。提供多種運(yùn)行時(shí)底座和編程框架供用戶選擇。3、提升機(jī)密計(jì)算技術(shù)的泛用性為最有代表性的通用計(jì)算場景打造解決方案和案例(特性即產(chǎn)品)。積極擁抱并參與到機(jī)密計(jì)算前沿技術(shù)領(lǐng)域的探索與實(shí)踐,加速創(chuàng)新技術(shù)的落地。4、澄清誤會(huì)并增加用戶信心發(fā)布機(jī)密計(jì)算技術(shù)白皮書。與社區(qū)和業(yè)界合作,未來提供結(jié)合了軟件供應(yīng)鏈安全的遠(yuǎn)程證明服務(wù)體系。云原生機(jī)密計(jì)算SIG概述Overview
Of
The
Cloud
Native
Con?dential
Computing
SIG0607云原生機(jī)密計(jì)算SIG概述隨著通信、網(wǎng)絡(luò)和計(jì)算機(jī)技術(shù)的持續(xù)演進(jìn)與廣泛應(yīng)用,數(shù)據(jù)資源的開放共享、交換流通成為推動(dòng)“萬物互聯(lián)、智慧互通”的重要趨勢(shì)。與此同時(shí),近年來數(shù)據(jù)安全事件頻發(fā)、數(shù)據(jù)安全威脅日趨嚴(yán)峻,數(shù)據(jù)的安全處理和流通受到了國內(nèi)外監(jiān)管部門的廣泛重視。如何在保障安全的前提下最大程度發(fā)揮數(shù)據(jù)的價(jià)值,是當(dāng)前面臨的重要課題。在日益嚴(yán)苛的隱私保護(hù)相關(guān)法律法規(guī)約束下,作為當(dāng)前數(shù)據(jù)處理基礎(chǔ)設(shè)施的云計(jì)算也正在經(jīng)歷一次重大的范式轉(zhuǎn)換,即從默認(rèn)以
CSP
為信任基礎(chǔ)的計(jì)算范式走向信任鏈與
CSP
解耦的新范式。我們將此范式稱為隱私保護(hù)云計(jì)算,而機(jī)密計(jì)算是實(shí)現(xiàn)隱私保護(hù)云計(jì)算的必由之路。為擁抱隱私保護(hù)云計(jì)算新范式,促進(jìn)隱私保護(hù)云計(jì)算生態(tài)發(fā)展,云原生機(jī)密計(jì)算SIG應(yīng)運(yùn)而生:愿景云原生機(jī)密計(jì)算SIG致力于通過開源社區(qū)合作共建的方式,為業(yè)界提供開源和標(biāo)準(zhǔn)化的機(jī)密計(jì)算技術(shù)以及安全架構(gòu),推動(dòng)云原生場景下機(jī)密計(jì)算技術(shù)的發(fā)展。工作組將圍繞下述核心項(xiàng)目構(gòu)建云原生機(jī)密計(jì)算開源技術(shù)棧,降低機(jī)密計(jì)算的使用門檻,簡化機(jī)密計(jì)算在云上的部署和應(yīng)用步驟,拓展使用場景及方案。云原生機(jī)密計(jì)算SIG的愿景是:
1)構(gòu)建安全、易用的機(jī)密計(jì)算技術(shù)棧2)適配各種常見機(jī)密計(jì)算硬件平臺(tái)3)打造典型機(jī)密計(jì)算產(chǎn)品和應(yīng)用案例項(xiàng)目介紹海光
CSV
機(jī)密容器CSV是海光研發(fā)的安全虛擬化技術(shù)。CSV1實(shí)現(xiàn)了虛擬機(jī)內(nèi)存加密能力,CSV2
增加了虛擬機(jī)狀態(tài)加密機(jī)制,CSV3
進(jìn)一步提供了虛擬機(jī)內(nèi)存隔離支持。CSV
機(jī)密容器能夠?yàn)橛脩籼峁┨摂M機(jī)內(nèi)存加密和虛擬機(jī)狀態(tài)加密能力,主機(jī)無法解密獲取虛擬機(jī)的加密內(nèi)存和加密狀態(tài)信息。CSV
虛擬機(jī)使用隔離的TLB、Cache等硬件資源,支持安全啟動(dòng)、代碼驗(yàn)證、遠(yuǎn)程認(rèn)證等功能。主頁:/sig/coco/doc/533508829133259244IntelCon?dentialComputing
ZooIntel
發(fā)起并開源了Con?dential
Computing
Zoo
(CCZoo),CCZoo基于
Intel
TEE(SGX,TDX)技術(shù),提供了不同場景下各種典型端到端安全解決方案的參考案例,增加用戶在機(jī)密計(jì)算方案實(shí)現(xiàn)上的開發(fā)體驗(yàn),并引導(dǎo)用戶結(jié)合參考案例快速設(shè)計(jì)自己特定的機(jī)密計(jì)算解決方案。CCZoo
目前提供了基于Libos
+
Intel
TEE
+OpenAnolis
容器的
E2E
安全解決方案參考案例,后續(xù),CCZoo計(jì)劃基于
OpenAnolis
,提供更多的機(jī)密計(jì)算參考案例,為用戶提供相應(yīng)的容器鏡像,實(shí)現(xiàn)敏捷部署。主頁:https://cczoo.readthedocs.io代碼庫:/intel/confidential-computing-zooIntelHE
ToolkitIntel
HE
Toolkit旨在為社區(qū)和行業(yè)提供一個(gè)用于實(shí)驗(yàn)、開發(fā)和部署同態(tài)加密應(yīng)用的平臺(tái)。目前
Intel
HEToolkit
包括了主流的
Leveled
HE
庫,如
SEAL、Palisade和HELib,基于使能了英特爾最新指令集加速的的Intel
HEXL
庫,在英特爾至強(qiáng)處理器平臺(tái)上為同態(tài)加密業(yè)務(wù)負(fù)載提供了卓越的性能體驗(yàn)。同時(shí),Intel
HEToolkit即將集成半同態(tài)
Paillier
加速庫
IPCL,為半同態(tài)加密應(yīng)用提供加速支持。此外,Intel
HE
Toolkit
還提供了示例內(nèi)核、示例程序和基準(zhǔn)測試
HEBench。這些示例程序演示了利用主流的同態(tài)加密庫構(gòu)建各種同態(tài)加密應(yīng)用保護(hù)用戶隱私數(shù)據(jù)的能力。HEBench
則為各類第三方同態(tài)加密應(yīng)用提供了公允的評(píng)價(jià)基準(zhǔn),促進(jìn)了同態(tài)加密領(lǐng)域的研究與創(chuàng)新。主頁:/content/www/us/en/developer/tools/homoorphic-encryption/代碼庫:Intel
HE
Toolkit:
/intel/he-toolkitIntelHEXL:
https:///intel/hexlIntelPaillierCryptosystemLibrary(IPCL):
/intel/pailliercryptolibHEBench:
/hebenchIntel
SGX
Platform
Software
and
Datacenter
Attestation
Primitives在龍蜥生態(tài)中為數(shù)據(jù)中心和云計(jì)算平臺(tái)提供
Intel
SGX
技術(shù)所需的平臺(tái)軟件服務(wù),如遠(yuǎn)程證明等。RPM包:/intel-sgx/latest/linux-latest/distro/Anolis86/代碼庫:/intel/SGXDataCenterAttestationPrimitivesIntelSGX
SDK在龍蜥生態(tài)中為開發(fā)者提供使用
Intel
SGX
技術(shù)所需的軟件開發(fā)套件,幫助開發(fā)者高效便捷地開發(fā)機(jī)密計(jì)算程序和解決方案。RPM包:/intel-sgx/latest/linux-latest/distro/Anolis86/代碼庫:/intel/linux-sgxOcclumOcclum
是一個(gè)
TEE
LibOS,是機(jī)密計(jì)算聯(lián)盟(CCC,
Con?dential
Computing
Consortium)的官方開源項(xiàng)目。目前Occlum支持Intel
SGX和HyperEnclave兩種TEE。Occlum在TEE環(huán)境中提供了一個(gè)兼容Linux的運(yùn)行環(huán)境,使得
Linux
下的應(yīng)用可以不經(jīng)修改就在
TEE
環(huán)境中運(yùn)行。Occlum
在設(shè)計(jì)時(shí)將安全性作為最重要的設(shè)計(jì)指標(biāo),在提升用戶開發(fā)效率的同時(shí)保證了應(yīng)用的安全性。Occlum
極大地降低了程序員開發(fā)
TEE
安全應(yīng)用的難度,提升了開發(fā)效率。主頁:https://occlum.io/代碼庫:/occlum/occlumIntelCCZoo
(TensorFlowGramine
/
CSV//
Occlum
/
SEVCSV /
Inclavare
Containers
/
KubeTEE
Enclave
Services/
SEV /
SGX /
TDX &Apache
Teaclave
Java
TEE
SDK/
Intel
HEToolkit
/
IntelSGX
&PSW
&DCAPAnolis8+ANCK
5.10AMD
SEV(-ES)/ CSV1+2/IntelSGX2.0/Intel
TDX1.0OS0809提供
TEE
有關(guān)的
Kubernetes
基礎(chǔ)服務(wù)
(如集群規(guī)模的密鑰分發(fā)和同步服務(wù)、集群遠(yuǎn)程證明服務(wù)等),使得用戶可以方便地將集群中多臺(tái)
TEE
機(jī)器當(dāng)作一個(gè)更強(qiáng)大的
TEE
來使用。代碼庫:/SOFAEnclave/KubeTEEApacheTeaclaveJavaTEE
SDKApache
Teaclave
Java
TEESDK(JavaEnclave)是一個(gè)面向
Java
生態(tài)的機(jī)密計(jì)算編程框架,它繼承IntelSGX
SDK所定義的Host-Enclave機(jī)密計(jì)算分割編程模型。JavaEnclave提供一種十分優(yōu)雅的模式,對(duì)一個(gè)完整的Java應(yīng)用程序進(jìn)行分割與組織。它將一個(gè)Java項(xiàng)目劃分成三個(gè)子模塊,Common子模塊定義SPI服務(wù)接口,Enclave子模塊實(shí)現(xiàn)SPI接口并以Provider方式提供服務(wù),Host子模塊負(fù)責(zé)TEE環(huán)境的管理和Enclave機(jī)密服務(wù)的調(diào)用。整個(gè)機(jī)密計(jì)算應(yīng)用的開發(fā)與使用模式符合Java經(jīng)典的SPI設(shè)計(jì)模式,極大降低了Java機(jī)密計(jì)算開發(fā)門檻。此外,本框架創(chuàng)新性應(yīng)用Java靜態(tài)編譯技術(shù),將Enclave子模塊Java代碼編譯成Native形態(tài)并運(yùn)行在TEE環(huán)境,極大減小了Enclave攻擊面,杜絕了Enclave發(fā)生注入攻擊的風(fēng)險(xiǎn),實(shí)現(xiàn)了極致安全的Java機(jī)密計(jì)算運(yùn)行環(huán)境。主頁:
代碼庫:
/apache/incubator-teaclave-java-tee-sdkGramineGramine是一個(gè)輕量級(jí)的LibOS,旨在以最小的主機(jī)要求運(yùn)行單個(gè)應(yīng)用程序。Gramine
可以在一個(gè)隔離的環(huán)境中運(yùn)行應(yīng)用程序。其優(yōu)點(diǎn)是可定制,易移植,方便遷移,可以媲美虛擬機(jī)。
在架構(gòu)上
Gramine
可以在任何平臺(tái)上支持運(yùn)行未修改的Linux二進(jìn)制文件。目前,Gramine可以在Linux和Intel
SGX
enclave環(huán)境中工作。主頁:https://gramine.readthedocs.io/代碼庫:/gramineproject/gramineTDX機(jī)密容器&機(jī)密虛擬機(jī)Intel
TrustDomain
Extension
(TDX)
基于虛擬化擴(kuò)展機(jī)密計(jì)算的隔離能力,通過構(gòu)建機(jī)密虛擬機(jī),為業(yè)務(wù)負(fù)載提供了虛擬機(jī)級(jí)別的機(jī)密計(jì)算的運(yùn)行環(huán)境。通過Linux社區(qū)對(duì)TDX機(jī)密虛擬機(jī)的生態(tài)支持,
基于Linux的業(yè)務(wù)應(yīng)用可以方便的遷移到機(jī)密計(jì)算環(huán)境中。此外,Intel
TDX
Pod
級(jí)機(jī)密容器將TDX機(jī)密虛擬機(jī)技術(shù)同容器生態(tài)無縫集成,以云原生方式運(yùn)行,保護(hù)敏感工作負(fù)載和數(shù)據(jù)的機(jī)密性和完整性。在機(jī)密虛擬機(jī)內(nèi)部,默認(rèn)集成了image-rs
和
attestation-agent
等組件,實(shí)現(xiàn)了容器鏡像的拉取、授權(quán)、驗(yàn)簽、解密、遠(yuǎn)程證明以及秘密注入等安全特性。機(jī)密計(jì)算平臺(tái)Con?dentialComputing
Platform1011SM4CSVC86C86C86C86ASID1ASID1ASID2ASID2ASID1ASID2ASID1ASID2TLBcacheC86海光CSV:海光安全虛擬化技術(shù)項(xiàng)目位置鏈接/anolis/cloud-kernel/anolis/hygon-edk2/anolis/hygon-qemu/inclavare-containers/librats/inclavare-containers/rats-tls技術(shù)自身介紹背景容器技術(shù)的出現(xiàn),使應(yīng)用程序的打包、分發(fā)變得非常簡單易用,Kubernetes等容器編排技術(shù)的出現(xiàn),進(jìn)一步加速了容器生態(tài)的普及和發(fā)展,目前容器已經(jīng)逐漸成為云計(jì)算的主要運(yùn)行單元。但是由于傳統(tǒng)容器共享操作系統(tǒng)內(nèi)核,在隔離性和安全性上比傳統(tǒng)虛擬機(jī)差。為了解決這個(gè)問題,Kata容器應(yīng)運(yùn)而生,Kata容器運(yùn)行在輕量級(jí)虛擬機(jī)里,比起傳統(tǒng)容器提供了更好的隔離性和安全性,使Kata容器同時(shí)具有容器技術(shù)帶來的易用性和虛擬機(jī)技術(shù)帶來的安全性。隨著機(jī)密計(jì)算需求的出現(xiàn),CPU廠商紛紛推出了硬件TEE技術(shù),傳統(tǒng)虛擬機(jī)技術(shù)已無法滿足機(jī)密計(jì)算的需要,Kata容器的安全性需要進(jìn)一步增強(qiáng)以便應(yīng)用于機(jī)密計(jì)算場景。問題&挑戰(zhàn)虛擬化是云計(jì)算的底層基礎(chǔ)技術(shù),隨著云計(jì)算的發(fā)展而被廣泛應(yīng)用。由于虛擬機(jī)的全部資源被主機(jī)操作系統(tǒng)和虛擬機(jī)管理器管理和控制,虛擬化本身有較嚴(yán)重的安全缺陷,主機(jī)操作系統(tǒng)和虛擬機(jī)管理器可任意讀取和修改虛擬機(jī)資源且虛擬機(jī)無法察覺。主機(jī)操作系統(tǒng)和虛擬機(jī)管理器有權(quán)讀寫虛擬機(jī)代碼段,虛擬機(jī)內(nèi)存數(shù)據(jù),虛擬機(jī)磁盤數(shù)據(jù),并有權(quán)重映射虛擬機(jī)內(nèi)存等。攻擊者可利用主機(jī)操作系統(tǒng)和虛擬機(jī)管理器的安全缺陷獲取操作系統(tǒng)的權(quán)限后攻擊虛擬機(jī),給虛擬機(jī)最終用戶造成重大損失。解決方案CSV是海光自主研發(fā)的安全虛擬化技術(shù),采用國密算法實(shí)現(xiàn),CSV虛擬機(jī)在寫內(nèi)存數(shù)據(jù)時(shí)CPU硬件自動(dòng)加密,讀內(nèi)存數(shù)據(jù)時(shí)硬件自動(dòng)解密,每個(gè)CSV虛擬機(jī)使用不同的密鑰。海光CPU內(nèi)部使用ASID(Address
SpaceID)區(qū)分不同的CSV虛擬機(jī)和主機(jī),每個(gè)CSV虛擬機(jī)使用獨(dú)立的Cache、TLB等CPU資源,實(shí)現(xiàn)CSV虛擬機(jī)、主機(jī)之間的資源隔離。CSV虛擬機(jī)使用隔離的硬件資源,支持啟動(dòng)度量、遠(yuǎn)程認(rèn)證等功能,是安全的硬件可信執(zhí)行環(huán)境。CSV機(jī)密容器技術(shù)將安全虛擬化技術(shù)與Kata容器技術(shù)結(jié)合,實(shí)現(xiàn)容器運(yùn)行環(huán)境的度量和加密,容器中的程序可以使用遠(yuǎn)程認(rèn)證功能實(shí)現(xiàn)身份證明。CSV機(jī)密容器和普通容器的接口完全兼容,用戶可以使用Docker或者Kubernetes啟動(dòng)機(jī)密容器,實(shí)現(xiàn)對(duì)容器數(shù)據(jù)的隔離和保護(hù)。CSV技術(shù)構(gòu)建了以安全加密虛擬機(jī)為基礎(chǔ)的可信執(zhí)行環(huán)境。在安全加密虛擬機(jī)保證了虛擬機(jī)數(shù)據(jù)機(jī)密性的基礎(chǔ)上,更進(jìn)一步保證了虛擬機(jī)數(shù)據(jù)的完整性,主機(jī)操作系統(tǒng)和虛擬機(jī)管理無法通過改寫虛擬機(jī)嵌套頁表對(duì)虛擬機(jī)實(shí)施重映射攻擊。應(yīng)用場景安全加密虛擬化可以保證最終用戶數(shù)據(jù)的機(jī)密性和完整性,可用于實(shí)施機(jī)密計(jì)算,適用于云計(jì)算和隱私計(jì)算場景。1213Intel
SGX:
Intel安全防護(hù)擴(kuò)展項(xiàng)目位置鏈接/intel/linux-sgx/intel/SGXDataCenterAttestationPrimitives技術(shù)自身介紹背景機(jī)密計(jì)算是信息安全行業(yè)內(nèi)一項(xiàng)新興技術(shù),專注于幫助保護(hù)使用中的數(shù)據(jù)。機(jī)密計(jì)算旨在加密數(shù)據(jù)在內(nèi)存中進(jìn)行處理,同時(shí)降低將其暴露給系統(tǒng)其余部分的風(fēng)險(xiǎn),從而降低敏感數(shù)據(jù)暴露的可能性,同時(shí)為用戶提供更高程度的控制和透明度。在多租戶云環(huán)境中,機(jī)密計(jì)算確保敏感數(shù)據(jù)與系統(tǒng)堆棧的其他特權(quán)部分保持隔離。問題&挑戰(zhàn)傳統(tǒng)操作系統(tǒng)提供了進(jìn)程級(jí)內(nèi)存隔離,但是無法保護(hù)用戶的數(shù)據(jù)不被特權(quán)進(jìn)程獲?。?/p>
虛擬化技術(shù)基于特權(quán)軟件Hypervisor對(duì)系統(tǒng)資源進(jìn)行分配與監(jiān)控,但Hypervisor潛在的軟件漏洞有可能會(huì)威脅到整個(gè)系統(tǒng);
基于TPM(Trusted
Platform
Module)的可信架構(gòu)難以保障程序運(yùn)行時(shí)的可信執(zhí)行;TrustZone技術(shù)為程序提供了兩種隔離的執(zhí)行環(huán)境,
但需要硬件廠商的簽名驗(yàn)證才能運(yùn)行在安全執(zhí)行環(huán)境,開發(fā)門檻較高。解決方案英特爾軟件防護(hù)擴(kuò)展(Intel
Software
Guard
Extensions,SGX)是一組安全相關(guān)的指令,它被內(nèi)置于一些現(xiàn)代Intel
中央處理器(CPU)中。它們?cè)试S用戶態(tài)及內(nèi)核態(tài)代碼定義將特定內(nèi)存區(qū)域,設(shè)置為私有區(qū)域,此區(qū)域也被稱作飛地(Enclaves)。其內(nèi)容受到保護(hù),不能被本身以外的任何進(jìn)程存取,包括以更高權(quán)限級(jí)別運(yùn)行的進(jìn)程。CPU對(duì)受SGX保護(hù)的內(nèi)存進(jìn)行加密處理。受保護(hù)區(qū)域的代碼和數(shù)據(jù)的加解密操作在CPU內(nèi)部動(dòng)態(tài)完成。因此,處理器可以保護(hù)代碼不被其他代碼窺視或檢查。SGX提供了硬件指令級(jí)安全保障,保障了運(yùn)行時(shí)的可信執(zhí)行環(huán)境,
使惡意代碼無法訪問與篡改其他程序運(yùn)行時(shí)的保護(hù)內(nèi)容。Intel從第六代CPU開始支持SGX,SGX已經(jīng)成為學(xué)術(shù)界的熱點(diǎn),各大云廠商也開始在云上部署基于SGX的應(yīng)用。應(yīng)用場景提供基礎(chǔ)機(jī)密計(jì)算能力的支撐,在Intel
SGX和TDX
DCAP之上,支撐機(jī)密計(jì)算運(yùn)行時(shí),虛擬機(jī),容器等具體的使用,最終讓用戶方便地將自己的workload運(yùn)行到一個(gè)可信的機(jī)密計(jì)算環(huán)境當(dāng)中。用戶情況用戶使用情況對(duì)于龍蜥社區(qū)的機(jī)密計(jì)算應(yīng)用,除了需要硬件上的支持,也需要軟件基礎(chǔ)架構(gòu)的支持。所有的機(jī)密計(jì)算應(yīng)用都會(huì)依賴于相應(yīng)機(jī)密計(jì)算技術(shù)底層的軟件開發(fā)包和運(yùn)行時(shí)庫。Intel為SGX和TDX
Attestation提供了基礎(chǔ)的軟件架構(gòu)支撐:主要包括SGXSDK,SGX
PSW/(TDX)
DCAP安裝包的適配,和Anolis的集成。用戶使用效果在vSGX虛擬機(jī),TDX機(jī)密虛擬機(jī),SGX
LibOS運(yùn)行時(shí)Occlum和Gramine當(dāng)中,SGX
SDK/PSW/(TDX)DCAP都提供了SGX,SGX
遠(yuǎn)程證明及TDX遠(yuǎn)程證明相關(guān)的軟件支持(如API等)。后續(xù)計(jì)劃在AnolisOS發(fā)布之前,Intel已經(jīng)在CentOS和Alinux上支持了SGXSDK/PSW/DCAP軟件包的構(gòu)建和完整的測試。在2022年第二季度之后,我們又將TDX
DCAP和SGX
DCAP合并到統(tǒng)一的代碼倉庫。軟件主要功能上準(zhǔn)備完畢,安裝包適配到Anolis
OS的過程可以分為四個(gè)主要步驟:1、完成相關(guān)安裝包(RPM)的構(gòu)建和測試2、發(fā)布到Intel軟件倉庫3、提供RPM
Build
Spec4、集成到Anolis軟件倉庫用戶證言Intel在龍蜥社區(qū)中將機(jī)密計(jì)算如SGX和TDX技術(shù)落地,服務(wù)于我們的客戶。
Intel目前提供了以SGX
SDK/P-SW/DCAP,
TDX
DCAP軟件包為代表的TEE基礎(chǔ)架構(gòu)支撐,和基于LibOS的運(yùn)行時(shí)支持Gramine。并以這些為基礎(chǔ)支持了其他LibOS運(yùn)行時(shí)如螞蟻的Occlum,以及更高層次的機(jī)密計(jì)算應(yīng)用,例如SGX虛擬化及SGX/TDX機(jī)密容器。1415Intel
TDX:
Intel安全虛擬化技術(shù)技術(shù)自身介紹背景近年來,隨著隱私保護(hù)的呼聲和關(guān)注度越來越高,越來越多的人開始關(guān)注集中化的云基礎(chǔ)設(shè)施存在泄露租戶隱私和敏感數(shù)據(jù)的風(fēng)險(xiǎn)。在此背景下,機(jī)密計(jì)算這一新的計(jì)算形態(tài)應(yīng)運(yùn)而生。機(jī)密計(jì)算是通過在基于硬件的可信執(zhí)行環(huán)境(Trusted
Execution
Environment,TEE)中執(zhí)行計(jì)算過程的全新計(jì)算模式,它能夠?qū)κ褂弥械臄?shù)據(jù)進(jìn)行保護(hù)與隔離,防止具有特權(quán)的云基礎(chǔ)設(shè)施提供方對(duì)租戶的應(yīng)用程序和數(shù)據(jù)進(jìn)行未經(jīng)授權(quán)的訪問。問題&挑戰(zhàn)越來越多的租戶業(yè)務(wù)尤其是企業(yè)負(fù)載需要利用云計(jì)算提供的彈性資源進(jìn)行海量數(shù)據(jù)處理。這類租戶要求CSP能夠提供更好的安全和隔離解決方案,尤其是在處理租戶敏感數(shù)據(jù)這一計(jì)算階段的過程中,租戶的敏感數(shù)據(jù)不能以明文形式暴露在內(nèi)存中,而租戶的安全性又不依賴于CSP。解決方案Intel
Trust
Domain
Extensions(簡稱TDX)引入了一種新的、基于硬件隔離的虛擬機(jī)工作負(fù)載形態(tài),所謂的Trust
Domain(簡稱TD)。TDX是一種典型的機(jī)密計(jì)算技術(shù),可以在在租戶不可信的云基礎(chǔ)設(shè)施上,為租戶的工作負(fù)載提供一個(gè)系統(tǒng)級(jí)(相比Intel
SGX機(jī)密計(jì)算技術(shù)提供的應(yīng)用級(jí)粒度)的安全可信的執(zhí)行環(huán)境,同時(shí)保證租戶運(yùn)行環(huán)境的機(jī)密性和完整性。為此,需要將當(dāng)前租戶的TD,與CSP控制的特權(quán)級(jí)系統(tǒng)組件(比如VMM/hypervisor)、VM以及其他租戶的TD都隔離開來,并將它們排除出當(dāng)前租戶的TCB,以確保當(dāng)前租戶的TD不受上述組件的影響。與VM相比,TD額外增加了以下能力:提供了VM內(nèi)存的機(jī)密性和完整性保護(hù)地址轉(zhuǎn)換完整性保護(hù)CPU狀態(tài)機(jī)密性和完整性保護(hù)對(duì)安全中斷和異常的分發(fā)機(jī)制遠(yuǎn)程證明TDX技術(shù)綜合了MKTME(多密鑰全加密內(nèi)存)與VMX虛擬化技術(shù),再添加新的指令集、處理器模式和強(qiáng)制實(shí)施的訪問控制等設(shè)計(jì)。Trust
DomainUnmodi?edApplicationsUnmodi?edDriversTDX-EnlightenedOSTrust
DomainUnmodi?edApplicationsUnmodi?edDriversTDX-EnlightenedOSLegacy
VMApplicationsDriversOSLegacy
VMApplicationsDriversOSTDX-AwareHost
VMMPlatform(Cores,Caches,Devices
etc.)IntelTDXModuleRunninginSEAMRoot
ModeIntelTDXHost-SideInterfaceIntelTDXGuest-Side
InterfaceIntelTDXGuest-Side
InterfaceHostVMMmanagedaccess
controlenhancedwith
MK-TMEIntelTDXmodulemanagedaccess
controlleveragingMK-TMEandSecure
EPT用戶情況目前Intel
TDX已經(jīng)在主流云平臺(tái)上提供相關(guān)實(shí)例或部署計(jì)劃:1、
阿里云8代ECS
提供的TDX機(jī)密計(jì)算實(shí)例已經(jīng)上線邀測。2、
Microsoft
Azure
TDX機(jī)密計(jì)算實(shí)例也計(jì)劃今年晚些時(shí)候提供服務(wù)。1617AMD
SEV:
AMD安全加密虛擬化技術(shù)項(xiàng)目位置鏈接/AMDESE/AMDSEV技術(shù)自身介紹背景機(jī)密計(jì)算指的是在Secureor
Trusted執(zhí)行環(huán)境中進(jìn)行計(jì)算操作,以防止正在做計(jì)算的敏感數(shù)據(jù)被泄露或者修改。機(jī)密計(jì)算的核心是Trusted
Execution
Environment
(TEE),TEE既可基于硬件實(shí)現(xiàn)、也可基于軟件實(shí)現(xiàn),本文主要專注于基于硬件和密碼學(xué)原理的實(shí)現(xiàn),相比于純軟件解決方案,具有較高的通用性、易用性、可靠性、較優(yōu)的性能以及更小的TCB。其缺點(diǎn)是需要引入可信方,即信任芯片廠商。此外由于CPU相關(guān)實(shí)現(xiàn)屬于TCB,側(cè)信道攻擊也成為不可忽視的攻擊向量,需要關(guān)注相關(guān)漏洞和研究進(jìn)展。問題&挑戰(zhàn)隨著越來越多的業(yè)務(wù)上云,端到端的全鏈路可信或機(jī)密正在慢慢成為公有云基礎(chǔ)設(shè)施的默認(rèn)要求而不再是一個(gè)特性,需要綜合利用加密存儲(chǔ)、安全網(wǎng)絡(luò)傳輸、機(jī)密計(jì)算等技術(shù)來實(shí)現(xiàn)對(duì)用戶敏感數(shù)據(jù)全生命周期的保護(hù)。機(jī)密計(jì)算是當(dāng)前業(yè)界正在補(bǔ)齊的環(huán)節(jié),主流的硬件平臺(tái)已經(jīng)部分提供或正在實(shí)現(xiàn)對(duì)機(jī)密計(jì)算的支持,如AMDSEV,Intel
TDX和SGX,Arm
CCA,IBM
SE和RISC-V的KeyStone等。解決方案AMDSEV技術(shù)基于AMD
EPYC
CPU,將物理機(jī)密計(jì)算能力傳導(dǎo)至虛擬機(jī)實(shí)例,在公有云上打造一個(gè)立體化可信加密環(huán)境。SEV可保證單個(gè)虛擬機(jī)實(shí)例使用獨(dú)立的硬件密鑰對(duì)內(nèi)存加密,同時(shí)提供高性能支持。密鑰由AMD平臺(tái)安全處理器
(PSP)在實(shí)例創(chuàng)建期間生成,而且僅位于處理器中,云廠商無法訪問這些密鑰。AMD
SEV提供了硬件級(jí)的內(nèi)存加密方案,
用以實(shí)現(xiàn)安全加密的虛擬化:內(nèi)存控制器中集成了AES-128硬件加速引擎:
客戶操作系統(tǒng)通過頁表選擇要加密的頁,
對(duì)終端用戶的應(yīng)用程序沒有任何改變。AMD安全內(nèi)存加密(SME):所有內(nèi)存由單一的密鑰進(jìn)行加密,
僅僅在BIOS中開啟就可以實(shí)現(xiàn)(TSME)。AMD安全加密虛擬化(SEV):
每臺(tái)虛擬機(jī)都會(huì)被分配自己的獨(dú)立加密密鑰,
宿主機(jī)和客戶虛擬機(jī)之間相互加密隔離。Con?dential
Virtual
Machine也可以稱作Secure
Virtual
Machine
(SVM),是最終實(shí)現(xiàn)機(jī)密計(jì)算的實(shí)體,本身作為一個(gè)可信域存在,SVM自身和在其中運(yùn)行的用戶程序可以不受來自SVM之外的非可信特權(quán)軟件和硬件的的攻擊,從而實(shí)現(xiàn)對(duì)用戶的機(jī)密數(shù)據(jù)和代碼的保護(hù)。因?yàn)槭钦麄€(gè)虛擬機(jī)作為一個(gè)可信域,所以對(duì)運(yùn)行于其中的用戶程序可以做到透明,無需重構(gòu)用戶程序,對(duì)最終用戶而言可以實(shí)現(xiàn)零成本可信
(Trust
Native)。用戶情況目前AMD
SEV
已經(jīng)在主流的云平臺(tái)上都已經(jīng)提供相關(guān)的實(shí)例和部署:1、阿里云G8ae實(shí)例商業(yè)化中。2、Google公有云已經(jīng)提供2代AMDSEV的機(jī)密計(jì)算實(shí)例。3、Microsoft
Azure公有云已經(jīng)提供了AMD
SEV的機(jī)密計(jì)算實(shí)例和機(jī)密計(jì)算容器方案。AMDX86
CPUAMD1819ARM
CCA:
Arm安全加密虛擬化技術(shù)項(xiàng)目位置鏈接Veracuz:
/veracruz-project/veracruzVERAISON-VERi?cAtIonofatteStatiON:
/veraison/veraison技術(shù)自身介紹問題&挑戰(zhàn)TrustZone是Arm為設(shè)備安全提供的一個(gè)安全架構(gòu),通過硬件隔離和權(quán)限分層的方式將系統(tǒng)內(nèi)分為安全世界(Secure
world)和正常世界(Normal
/
Non-Secure
world)。在安全環(huán)境中,通過底層硬件隔離,不同執(zhí)行級(jí)別,安全鑒權(quán)方式等方式,從最根本的安全機(jī)制上提供基于信任根(Root
of
Trust)的可信執(zhí)行環(huán)境TEE(Trusted
Execution
Environment),通過可信服務(wù)(TrustedServices)接口與和通用環(huán)境REE(Rich
Execution
Environment)進(jìn)行安全通信,可以保護(hù)TEE中的安全內(nèi)容不能被非安全環(huán)境的任何軟件,包括操作系統(tǒng)底層軟件等所訪問,竊取,篡改和偽造等。因此一些安全的私密數(shù)據(jù),比如一些安全密鑰,密碼,指紋以及人臉數(shù)據(jù)等都是可以放在安全世界的數(shù)據(jù)區(qū)中進(jìn)行保護(hù)。當(dāng)前,Trustzone機(jī)制已經(jīng)非常成熟穩(wěn)定,并得到大規(guī)模的應(yīng)用,并以開源的方式給業(yè)界提供實(shí)現(xiàn)參考??梢栽L問https://www.trusted?/
獲取更多信息。然而,TrustZone所提供的安全機(jī)制和TEE環(huán)境只能提供硬件級(jí)別的安全隔離。通常情況下,安全物理地址空間的內(nèi)存在系統(tǒng)引導(dǎo)時(shí)靜態(tài)分配,適用于數(shù)量有限的平臺(tái)。對(duì)于大規(guī)模云服務(wù)器的機(jī)密計(jì)算,旨在允許任何第三方開發(fā)人員保護(hù)他們的虛擬機(jī)(VM)或應(yīng)用程序,必須能夠在運(yùn)行時(shí)保護(hù)與VM或應(yīng)用程序關(guān)聯(lián)的任何內(nèi)存,而不受限制或分割。解決方案Arm
CCA引入了一種新的機(jī)密計(jì)算世界:機(jī)密領(lǐng)域(Realm)。在Arm
CCA中,硬件擴(kuò)展被稱為RealmManagement
Extension
(RME),RME
會(huì)和被稱之為機(jī)密領(lǐng)域管理監(jiān)控器(Realm
Management
Monitor,RMM),用來控制機(jī)密領(lǐng)域的專用固件,及在
Exception
level
3
中的
Monitor
代碼交互。Realm是一種Arm
CCA環(huán)境,能被Normalworld主機(jī)動(dòng)態(tài)分配。主機(jī)是指能管理應(yīng)用程序或虛擬機(jī)的監(jiān)控軟件。Realm及其所在平臺(tái)的初始化狀態(tài)都可以得到驗(yàn)證。這一過程使Realm的所有者能在向它提供任何機(jī)密前就建立信任。因此,Realm不必繼承來自控制它的Non-secure
hypervisor的信任。主機(jī)可以分配和管理資源配置,管理調(diào)度Realm虛擬機(jī)。然而,主機(jī)不可以監(jiān)控或修改Realm執(zhí)行的指令。在主機(jī)控制下,Realm可以被創(chuàng)建并被銷毀。通過主機(jī)請(qǐng)求,可以增加或移除頁面,這與hypervisor管理任何其他非機(jī)密虛擬機(jī)的操作方式類似。Arm
CCA技術(shù)能夠從根本上解決用戶敏感應(yīng)用數(shù)據(jù)的安全計(jì)算問題。它充分利用軟硬件實(shí)現(xiàn)的信任根提供的數(shù)據(jù)和程序的物理隔離、保護(hù)、通信和認(rèn)證體系,并在傳統(tǒng)TrustZone的基礎(chǔ)上,增加了被稱為領(lǐng)域(Realm)的隔離區(qū)域,從最底層的安全機(jī)制和原理上解決用戶程序和數(shù)據(jù)的隔離需求。當(dāng)前應(yīng)用情況Realm內(nèi)運(yùn)行的代碼將管理機(jī)密數(shù)據(jù)或運(yùn)行機(jī)密算法,這些代碼需要確保正在運(yùn)行真正的Arm
CCA平臺(tái),而不是冒充者。這些代碼還需要知道自己已經(jīng)被正確地加載,沒有遭到篡改。并且,這些代碼還需要知道整個(gè)平臺(tái)或Realm并不處于可能導(dǎo)致機(jī)密泄露的調(diào)試狀態(tài)。建立這種信任的過程被稱為“證明”。ARM正在與包括機(jī)密計(jì)算聯(lián)盟成員在內(nèi)的主要行業(yè)合作伙伴合作,定義這一證明機(jī)制的屬性,確保在不同的產(chǎn)品和設(shè)備上使用常見的平臺(tái)真實(shí)性和來源方法。Arm主導(dǎo)的開源軟件Veracuz是一個(gè)框架,用于在一組相互不信任的個(gè)人之間定義和部署協(xié)作的、保護(hù)隱私的計(jì)算;VERAISON-VERi?cAtIon
of
atteStatiON構(gòu)建可用于證明驗(yàn)證服務(wù)的軟件組件。Armv9-A架構(gòu)引入了Arm
CCA的RME功能特性,采用對(duì)應(yīng)架構(gòu)的芯片也將擁有此項(xiàng)功能。此外,基于CCA的軟件支持已經(jīng)在虛擬硬件平臺(tái)上進(jìn)行開發(fā)、測試和驗(yàn)證,將在硬件設(shè)備問世的同時(shí)實(shí)現(xiàn)同步支持。更多信息,可以訪問
/armcca
獲取更多信息。ArmCon?dentialCompute
ArchitectureArm
CCA
builds
on
widely
adopted
TrustZone
programming
modelto
protect
User
Code
and
DataVM1App AppOS
KernelHypervisorTATASecureServiceTOSSPMEL0EL1EL2EL3MonitorTATASecureServiceTOSSPMEL0EL1EL2EL3MonitorSecurity
State/PA
SpaceNon-Secure
PASecure
PANon-SecureAllowBlockSecureAllowAllowSecurity
State/PA
SpaceNon-Secure
PASecure
PARealm
PARoot
PANon-SecureAllowBlockBlockBlockSecureAllowAllowBlockBlockRealmAllowBlockAllowBlockRootAllowAllowAllowAllowTrustZoneNon-securesecureRealmManagement
ExtensionRealm Non-secure secureApp AppVM1RMIV App AppM1 OS
KernelHypervisorOS
KernelRSIRMM2021Intel
SGX
SDK/PSW/DCAP:Intel
SGX軟件開發(fā)套件和平臺(tái)軟件服務(wù)Intel
SGX
Platform
Software
and
Datacenter
Attestation
Primitives
(PSW/DCAP)
在龍蜥生態(tài)中為數(shù)據(jù)中心和云計(jì)算平臺(tái)提供
Intel
SGX
技術(shù)所需的平臺(tái)軟件服務(wù),如遠(yuǎn)程證明等。Intel
SGXSDK在龍蜥生態(tài)中為開發(fā)者提供使用
Intel
SGX
技術(shù)所需的軟件開發(fā)套件,幫助開發(fā)者高效便捷地開發(fā)機(jī)密計(jì)算程序和解決方案。本文介紹如何在Anolis
OS
8.6當(dāng)中基于Intel
SGX
SDK/PSW/DCAP構(gòu)建SGX機(jī)密計(jì)算環(huán)境,并演示如何運(yùn)行示例代碼以驗(yàn)證SGX功能。背景信息Intel?
SGX以硬件安全保障信息安全,不依賴固件和軟件的安全狀態(tài),為用戶提供物理級(jí)的機(jī)密計(jì)算環(huán)境。Intel?
SGX通過新的指令集擴(kuò)展與訪問控制機(jī)制實(shí)現(xiàn)SGX程序的隔離運(yùn)行,保障關(guān)鍵代碼和數(shù)據(jù)的機(jī)密性與完整性不受惡意軟件的破壞。不同于其他安全技術(shù),Intel?
SGX的可信根僅包括硬件,避免了基于軟件的可信根可能自身存在安全漏洞的缺陷,極大地提升了系統(tǒng)安全保障。檢查SGX
使能狀態(tài)構(gòu)建SGX機(jī)密計(jì)算環(huán)境前,您可以通過cpuid檢查SGX使能狀態(tài)。1、安裝cpuid。sudo
yum
install
-y
cpuid2、檢查SGX使能狀態(tài)。cpuid
-1
-l
0x7
|
grep
SGX說明
SGX被正確使能后,運(yùn)行SGX程序還需要SGX驅(qū)動(dòng)。3、檢查SGX驅(qū)動(dòng)安裝情況。ls-l
/dev/{sgx_enclave,sgx_provision}開始構(gòu)建SGX機(jī)密計(jì)算環(huán)境為開發(fā)SGX程序,您需要在您的機(jī)器上安裝運(yùn)行時(shí)(runtime)、SDK,并配置遠(yuǎn)程證明服務(wù)。本文以Anolis
OS
8.6為例演示構(gòu)建過程,您也可以直接參考Intel官方提供的Intel?SGX軟件安裝指南安裝所需的驅(qū)動(dòng)、PSW等。1.
安裝SGX運(yùn)行時(shí)框架編程Programming
Framework2223可按需安裝更多庫:sudo
yum
install
--nogpgcheck
-y
libsgx-ae-le
libsgx-ae-pce
libsgx-ae-qe3
libsgx-ae-qve
\libsgx-aesm-ecdsa-pluginlibsgx-aesm-launch-pluginlibsgx-aesm-pce-plugin
\libsgx-aesm-quote-ex-pluginlibsgx-dcap-default-qpllibsgx-dcap-ql
\libsgx-dcap-quote-verifylibsgx-enclave-commonlibsgx-launchlibsgx-pce-logic
\libsgx-qe3-logic
libsgx-quote-ex
libsgx-ra-network
libsgx-ra-ue?
\libsgx-uae-servicelibsgx-urtssgx-ra-service
sgx-aesm-service安裝Intel?
SGX
SDK后,您可以參見Intel?
SGX
DeveloperReference開發(fā)SGX程序。說明
Intel?
SGX
SDK的默認(rèn)安裝目錄為 /opt/intel/sgxsdk/ 。3.
配置SGX遠(yuǎn)程證明服務(wù)Intel?
SGX
ECDSA遠(yuǎn)程證明服務(wù)通過遠(yuǎn)程證明來獲得遠(yuǎn)程提供商或生產(chǎn)者的信任,為SGX
SDK提供下列信息:1、SGX
certi?cates:SGX證書。mkdir-p
$HOME/sgx&&\cd$HOME/sgx&&
\wget/intel-sgx/latest/linux-latest/dis-tro/Anolis86/sgx_rpm_local_repo.tgz--no-check-certi?cate&&
\tarzxvfsgx_rpm_local_repo.tgz&&
\sudo
yum
install
-y
yum-utils
&&
\sudo
yum-con?g-manager
--add-repo
?le://$HOME/sgx/sgx_rpm_local_repo/
&&
\sudoyuminstall--nogpgcheck-ysgx-aesm-servicelibsgx-launchlibsgx-urts&&\rm-rf
sgx_rpm_local_repo.tar.gz說明
SGX
AESM(Architectural
Enclave
Service
Manager)負(fù)責(zé)管理啟動(dòng)Enclave、密鑰配置、遠(yuǎn)程認(rèn)證等服務(wù),默認(rèn)安裝路徑為/opt/intel/sgx-aesm-service。2.
安裝SGX
SDKcd$HOME/sgx&&
\exportSGX_VERSION=""&&
\wget/intel-sgx/latest/linux-latest/dis-tro/Anolis86/sgx_linux_x64_sdk_$SGX_VERSION.bin--no-check-certi?cate&&\chmod+xsgx_linux_x64_sdk_$SGX_VERSION.bin&&
\echo-e'n\n\/opt/intel\n'|./sgx_linux_x64_sdk_$SGX_VERSION.bin
&&\rm-rf
sgx_linux_x64_sdk_$SGX_VERSION.bin&&\source
/opt/intel/sgxsdk/environment2、Revocation
lists:已被撤銷的SGX證書列表。3、Trusted
computing
base
information:可信根信息。說明
Intel
Ice
Lake僅支持基于Intel
SGX
DCAP的遠(yuǎn)程證明方式,不支持基于IntelEPID的遠(yuǎn)程證明方式,您可能需要適配程序后才能正常使用遠(yuǎn)程證明功能。更多遠(yuǎn)程證明的信息,請(qǐng)參見attestation-service。配置QPL及PCK緩存服務(wù):1、安裝Quote
Provider
Library
(QPL)。您可以使用自己定制的
QPL
或使用
Intel
提供的默認(rèn)
QPL(libsgx-dcap-default-qpl)2、安裝
PCK緩存服務(wù)。PCK
Caching
Service的安裝配置請(qǐng)參考Intel官方PCCS文檔:SGXDataCenter-AttestationPrimitives3、確保
PCK
緩存服務(wù)由本地管理員或數(shù)據(jù)中心管理員正確設(shè)置。還要確保引用提供程序庫的配置文件(/etc/sgx_default_qcnl.conf)與真實(shí)環(huán)境一致,例如:2425PCS_URL=https://your_pcs_server:8081/sgx/certi?cation/v3/驗(yàn)證SGX功能示例一:啟動(dòng)EnclaveIntel?
SGX
SDK中提供了SGX示例代碼用于驗(yàn)證SGX功能,默認(rèn)位于/opt/intel/sgxsdk/SampleCode目錄下。本節(jié)演示其中的啟動(dòng)Enclave示例(SampleEnclave),效果為啟動(dòng)一個(gè)Enclave,以驗(yàn)證是否可以正常使用安裝的SGX
SDK。1.
安裝編譯工具及相關(guān)依賴yuminstall-y
gcc-c++2.
設(shè)置SGX
SDK相關(guān)的環(huán)境變量source
/opt/intel/sgxsdk/environment3.
編譯示例代碼SampleEnclave進(jìn)入SampleEnclave目錄cd
/opt/intel/sgxsdk/SampleCode/SampleEnclave編譯SampleEnclavemake運(yùn)行編譯出的可執(zhí)行文件./app預(yù)期的結(jié)果為:Checksum(0x0x7?d989a81e0,100)=
0x?fd4143Info:
executing
thread
synchronization,
please
wait...gitclone/intel/SGXDataCenterAttestationPrimitives-b
DCAP_1.15cd
SGXDataCenterAttestationPrimitives/SampleCode/QuoteGenerationSamplegitclone/intel/SGXDataCenterAttestationPrimitives-b
DCAP_1.15cd
SGXDataCenterAttestationPrimitives/SampleCode/QuoteVeri?cationSampleInfo:SampleEnclavesuccessfully
returned.Enter
a
character
before
exit
...2627驗(yàn)證SGX功能示例二:SGX遠(yuǎn)程證明示例Intel?
SGX
SDK中提供了SGX示例代碼用于驗(yàn)證SGX功能,默認(rèn)位于/opt/intel/sgxsdk/SampleCode目錄下。本節(jié)演示其中的SGX遠(yuǎn)程證明示例(QuoteGenerationSample、QuoteVeri?cationSample),效果為生成和驗(yàn)證Quote。該示例涉及被挑戰(zhàn)方(在SGX實(shí)例中運(yùn)行的SGX程序)和挑戰(zhàn)方(希望驗(yàn)證SGX程序是否可信的一方),其中QuoteGenerationSample為被挑戰(zhàn)方生成Quote的示例代碼,QuoteVeri?cationSample為挑戰(zhàn)方驗(yàn)證Quote的示例代碼。1.
安裝編譯工具及相關(guān)依賴yuminstall-y
git2.
設(shè)置SGX
SDK相關(guān)的環(huán)境變量source
/opt/intel/sgxsdk/environment3.
安裝SGX遠(yuǎn)程證明依賴的包yum
install
--nogpgcheck
-y
libsgx-dcap-ql-devel
libsgx-dcap-quote-verify-devel4.
編譯被挑戰(zhàn)方示例代碼QuoteGenerationSample進(jìn)入QuoteGenerationSample目錄編譯QuoteGenerationSamplemake運(yùn)行編譯出的可執(zhí)行文件生成Quote./app預(yù)期的結(jié)果為:sgx_qe_set_enclave_load_policy
is
valid
in
in-proc
mode
only
and
it
is
optional:
the
defaultenclaveload
policyispersistent:set
the
enclave
load
policy
as
persistent:succeed!Step1:Call
sgx_qe_get_target_info:succeed!Step2:Call
create_app_report:succeed!Step3:Call
sgx_qe_get_quote_size:succeed!Step4:Callsgx_qe_get_quote:succeed!cert_key_type=
0x5sgx_qe_cleanup_by_policy
is
valid
in
in-proc
mode
only.Clean
up
the
enclave
load
policy:succeed!5.
編譯挑戰(zhàn)方示例代碼QuoteVeri?cationSample進(jìn)入QuoteGenerationSample目錄編譯QuoteVeri?cationSamplemake生成簽名密鑰openssl
genrsa
-out
Enclave/Enclave_private_sample.pem
-3
3072對(duì)QuoteVeri?cationSample
Enclave進(jìn)行簽名/opt/intel/sgxsdk/bin/x64/sgx_sign
sign
-key
Enclave/Enclave_private_sample.pem
-enclaveenclave.so
-out
enclave.signed.so
-con?g
Enclave/Enclave.con?g.xml運(yùn)行編譯出的可執(zhí)行文件驗(yàn)證Quote./app預(yù)期的結(jié)果為:Info:ECDSAquotepath:
../QuoteGenerationSample/quote.datTrustedquote
veri?cation:Info:
get
target
info
successfully
returned.Info:sgx_qv_set_enclave_load_policysuccessfully
returned.Info:tee_get_quote_supplemental_data_version_and_sizesuccessfullyreturned.Info:
latest
supplemental
data
major
version:
3,
minor
version:
1,
size:
336Info:App:
tee_verify_quotesuccessfullyreturned.Info:
Ecall:
Verify
QvE
report
and
identity
successfully
returned.Info:
App:
Veri?cation
completed
successfully.Info:
Supplemental
data
Major
Version:
3Info:
Supplemental
data
Minor
Version:
1===========================================Untrustedquote
veri?cation:Info:tee_get_quote_supplemental_data_version_and_sizesuccessfullyreturned.Info:
latest
supplemental
data
major
version:
3,
minor
version:
1,
size:
336Intel
Homomorphic
Encryption:
Intel平臺(tái)同態(tài)加密加速框架項(xiàng)目位置鏈接IntelHEToolkit:
/intel/he-toolkitIntelHEXL:
/intel/hexlIntelPaillierCryptosystemLibrary(IPCL):
/intel/pailliercryptolibHEBench:
/hebench技術(shù)自身介紹背景同態(tài)加密是一種滿足同態(tài)運(yùn)算性質(zhì)的加密技術(shù),即在對(duì)密文進(jìn)行特定形式的代數(shù)運(yùn)算之后,得到的仍然是加密的結(jié)果,將其解密所得到的結(jié)果與對(duì)原始明文進(jìn)行運(yùn)算得出的結(jié)果一致。由于運(yùn)算完全在密文上進(jìn)行,同態(tài)加密可以提供極高的數(shù)據(jù)安全保證,其被廣泛地應(yīng)用于隱私保護(hù)計(jì)算、聯(lián)邦學(xué)習(xí)和區(qū)塊鏈等領(lǐng)域。問題&挑戰(zhàn)雖然同態(tài)加密技術(shù)發(fā)展了許多年,但由于其技術(shù)復(fù)雜度高,對(duì)計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)帶寬資源要求高等原因,面臨著開發(fā)、使用和部署門檻高的問題。為了解決上述問題,Intel提供了一系列工具套件和加速庫,包括IntelHE
Toolkit、Intel
HE
Acceleration
Library
(Intel
HEXL)和Intel
Paillier
CryptosystemLibrary(IPCL)。另一方面,同態(tài)加密技術(shù)正在經(jīng)歷標(biāo)準(zhǔn)化的過程,盡管涌現(xiàn)出了許許多多同態(tài)加密應(yīng)用,但是缺乏一個(gè)公認(rèn)的基準(zhǔn)評(píng)價(jià)體系,針對(duì)這個(gè)問題,Intel向開源社區(qū)貢獻(xiàn)了Homomorphic
Encryption
Benchmarking
Frame-work(
HEBench)。解決方案如下圖所示,Intel提供了對(duì)于同態(tài)加密技術(shù)的全棧式支持。在半同態(tài)加密方面,Intel提供了通過ISO認(rèn)證的Paillier算法庫IPCL,它使用了IntelIPP-Crypto庫提供的AVX512IFMA指令集加速的能力,在最新的Intel
Xeon平臺(tái)上有優(yōu)異的性能表現(xiàn)。在Leveled
HE方面,依托于Intel
Xeon平臺(tái)最新的指令集加速以及FPGA的硬件加速能力,Intel
HEXL封裝了底層硬件細(xì)節(jié),向上提供了加速的密碼學(xué)運(yùn)算接
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人借貸融資合同范本
- 前三季度物業(yè)合同范本
- 三年級(jí)口算題目練習(xí)1000道
- 入駐加盟合同范本
- 供菜協(xié)議合同范本
- 數(shù)據(jù)信托管理委托合同
- 農(nóng)戶原糧收購合同范本
- 單位窗簾合同范本
- 2025年河北省建筑安全員A證考試題庫
- 四維空間教學(xué)模型的TDR優(yōu)化?
- 2023年中國煤化工行業(yè)全景圖譜
- 2023年高中生物新教材人教版(2023年)必修二全冊(cè)教案
- 小學(xué)美術(shù) 四年級(jí) 人教版《造型?表現(xiàn)-色彩表現(xiàn)與創(chuàng)作》“色彩”單元美術(shù)作業(yè)設(shè)計(jì)《色彩的明與暗》《色彩的漸變》《色彩的情感》
- 中國心臟重癥鎮(zhèn)靜鎮(zhèn)痛專家共識(shí)專家講座
- 川教版七年級(jí)生命生態(tài)安全下冊(cè)第1課《森林草原火災(zāi)的危害》教案
- 護(hù)理人員心理健康
- 安全技術(shù)說明書粗苯
- 六年級(jí)上冊(cè)心理健康教育課件-健康上網(wǎng)快樂多 北師大版
- 單招面試技巧范文
- 情報(bào)信息收集報(bào)知
- 簡約國潮行業(yè)通用中國風(fēng)鎏金PPT模板
評(píng)論
0/150
提交評(píng)論