Google將機密運算服務,變成了N2D通用型虛擬機器的一項預設功能,只需要開啟就能支援,老舊應用程式或大型應用程式,不用任何客製化修改,只要部署到這個VM中就能使用。(圖片來源/Google)

「機密運算(Confidential Computing)會成為新的雲端運算類型,將改變企業在雲端處理資料的模式,而且會像Email一樣,成為了改變遊戲規則的關鍵服務。」網際網路之父也是Google副總裁Vint Cert強調。

他觀察,雲端運算的發展重心,將從公開的雲端服務,轉向私有的加密服務,要讓使用雲端服務的企業,不用擔心供應商或內部人員會取得自己的資料。而機密運算正是用來實現資料保護生命周期最後一哩的關鍵,不只靜止的儲存狀態或是傳輸移動過程,現在連CPU處理中的資料都能加密來保護。

Google不是最早提出機密運算服務的雲端供應商,早在2017年9月,微軟技術長Mark Russinovich就在自家部落格上,發表了Azure機密運算服務,採用了Intel處理器內建的硬體晶片加密技術SGX(Software Guard Extension),微軟自己還打造了一個機密運算開發套件Open Enclave,可供企業修改自家程式碼,來使用機密運算的處理。

去年,微軟更和英特爾、Google、IBM聯手,成立了機密運算聯盟(Confidential Computing Consortium),要來建立一套可以通吃資料中心、雲端和邊緣運算的安全信賴環境標準和規範,也就是透過硬體來建立一個處理加密資料的安全區環境,可以避免這些資料暴露在系統外面。

以Intel SGX技術所實現的機密運算服務,可說是第一代的機密運算技術,可以將特定區域的記憶體加密後,只允許獲得授權的可信賴程式碼能解密來進行處理運算。但是因為這種機密運算服務,必須修改這段程式碼,來進行授權驗證和記憶體解密,因此需要花一番功夫客製原有的程式碼才能支援機密運算的使用環境。不只微軟,Google自己也有一套支援SGX技術的機密運算框架Asylo,或像紅帽則有Enarx框架。

但是,Google這次推出的機密運算VM,採用了AMD第二代EPYC處理器,利用安全加密虛擬化SEV(Secure Encrypted Virtualization),實現了截然不同於Intel SGX的加密運作架構,甚至可以說是第二代的機密運算服務。

不論是Intel SGX或AMD SEV,都同樣是靠硬體加密記憶體的安全技術。但是,不同的是各自實作出來的安全信賴環境架構,卻很不一樣。

Intel SGX技術所實作的第一代機密運算,是針對一段應用程式,來建立可信任的安全環境,每一支程式碼,要個別取得授權才能解開遭加密記憶體上的資料來進行處理,因此需要針對每一支程式碼進行修改。

而AMD SEV技術的第二代機密運算,則是透過虛擬層來建立一個安全的虛擬機器,只要是在這個受信賴的VM內執行的任何程式,都可以取得金鑰來解開遭加密記憶體上的資料,進行處理。因為VM所用的加密金鑰,是處理器內建的硬體加密機制隨機亂數產生,而且每一個VM都不一樣,因為在VM外部,無法取得這個金鑰來解開記憶體內處理中的資料,就達到了阻絕外部瀏覽的保護效果。

因為實作信賴安全環境作法的差異,第二代機密運算從VM層來建立加密保護的優點是,應用程式不用修改,只要能放入這個VM環境來執行,就可以具有機密運算的作用。但是,第一代機密運算需要修改才能支援,尤其是老舊系統更是得大幅重構才能支援。但是,第一代技術的好處是,適合用於各種微服務或微型工作量,可以運用在行動裝置等運算能力較低的環境中。

Google更是直接將第二代機密運算服務,變成了N2D通用型虛擬機器的一項預設功能,只需要開啟就能支援,可以讓老舊應用程式或大型應用程式,不用任何客製化修改,都能使用機密運算環境。而微軟推出的雲端機密運算服務,則是提供了一個支援Intel SGX技術的虛擬機器,再加上一套機密運算工具包,企業還得花一番客製化開發,才能實現機密運算的效果。


Advertisement

更多 iThome相關內容