国产91免费_国产精品电影一区_日本s色大片在线观看_中文在线免费看视频

CNTXJ.NET | 通信界-中國通信門戶 | 通信圈 | 通信家 | 下載吧 | 說吧 | 人物 | 前瞻 | 智慧(區(qū)塊鏈 | AI
 國際新聞 | 國內(nèi)新聞 | 運營動態(tài) | 市場動態(tài) | 信息安全 | 通信電源 | 網(wǎng)絡(luò)融合 | 通信測試 | 通信終端 | 通信政策
 專網(wǎng)通信 | 交換技術(shù) | 視頻通信 | 接入技術(shù) | 無線通信 | 通信線纜 | 互聯(lián)網(wǎng)絡(luò) | 數(shù)據(jù)通信 | 通信視界 | 通信前沿
 智能電網(wǎng) | 虛擬現(xiàn)實 | 人工智能 | 自動化 | 光通信 | IT | 6G | 烽火 | FTTH | IPTV | NGN | 知本院 | 通信會展
您現(xiàn)在的位置: 通信界 >> 互聯(lián)網(wǎng)絡(luò) >> 技術(shù)正文
 
基于隱私計算的數(shù)據(jù)庫全生命周期保護(hù)方法
[ 通信界 | 戴偉濤 俞錦浩 田文生 范佳峰 王澤東 陸一凡 嚴(yán)志超 唐攀攀 | www.6611o.com | 2023/7/31 22:18:50 ]
 

(南湖實驗室大數(shù)據(jù)研究中心,嘉興 314000)

0 引言

在數(shù)字時代,數(shù)據(jù)已經(jīng)成為了基本生產(chǎn)要素,因此數(shù)據(jù)安全共享必將是未來發(fā)展趨勢之一[1]。數(shù)據(jù)的整個生命周期包含存儲、流轉(zhuǎn)、使用三個狀態(tài)。在敏感數(shù)據(jù)存儲、流轉(zhuǎn)方面,業(yè)界已經(jīng)有著成熟完善的技術(shù)支撐,例如各類加密算法(對稱加密、非對稱加密、哈希算法等)、傳輸層安全性協(xié)議等。而敏感數(shù)據(jù)在使用層大多以明文形式存在,極易遭受內(nèi)存層面的攻擊。如何對敏感數(shù)據(jù)安全處理成了待解決的難題。隱私計算的興起,為這個難題提供了一個解決方法。

隱私計算中主流技術(shù)有聯(lián)邦學(xué)習(xí)、多方安全計算和可信執(zhí)行環(huán)境(Trusted Execution Environment,TEE)[2-3]。其中,聯(lián)邦學(xué)習(xí)與多方安全計算基于密碼學(xué)進(jìn)行軟件級的保護(hù),分別側(cè)重于多方數(shù)據(jù)的聯(lián)合計算、機(jī)器學(xué)習(xí)的模型訓(xùn)練等。而TEE為芯片層級的隱私計算技術(shù),由芯片直接形成可信的執(zhí)行環(huán)境來保護(hù)數(shù)據(jù)不被泄露。目前,主流的TEE解決方案包括基于X86指令集架構(gòu)的Intel SGX和基于ARM指令集架構(gòu)的TrustZone[4]。Intel SGX[5]的出現(xiàn)推動了基于芯片級別隱私計算的發(fā)展,與傳統(tǒng)的TEE不同,Intel SGX支持遠(yuǎn)程認(rèn)證技術(shù),使得在遠(yuǎn)端運行應(yīng)用的執(zhí)行環(huán)境的可信性可以驗證,而不只局限于單機(jī)黑盒。得益于基于芯片的硬件特性,在應(yīng)用程序?qū)用媾c底層邏輯解耦,應(yīng)用程序無需修改自身代碼,直接調(diào)用底層邏輯,可在不改變已部署應(yīng)用的原有架構(gòu)的前提下,實現(xiàn)隱私計算來保護(hù)數(shù)據(jù)。Intel SGX比較多地運用在保護(hù)Linux容器[6]和云[7]。RSIC-V是基于精簡指令集(RSIC)[8]原則的開源指令集架構(gòu)(ISA)。國內(nèi)的許多家廠商也開發(fā)了基于國產(chǎn)芯片的安全擴(kuò)展,目前處于領(lǐng)先地位的是海光和飛騰。海光基于海光CPU推出了安全虛擬技術(shù)CSV[9],飛騰基于飛騰CPU推出了飛騰PSPA(Phytium Security Platform Architecture)。

2022年,YANNICK等[10]為了使Fabric運行在安全的執(zhí)行環(huán)境,結(jié)合Intel SGX,提出了E-Fabric。E-Fabric擁有更好的安全保障,增加了8%的延時,降低了4%的吞吐,整個網(wǎng)絡(luò)的性能下降了6%。2019年,王冠等[11]提出了基于Intel SGX的Hadoop KMS安全增強(qiáng)方案,安全增強(qiáng)帶來的性能損耗為10.08%。工業(yè)物聯(lián)網(wǎng)也在快速向Intel SGX靠攏。2021年,王冠等[12]提出了基于Intel SGX的Kerberos安全增強(qiáng)方案,保證密鑰保存和運行在Enclave中。2021年,劉忻等[13]提出了基于Intel SGX的IIoT身份認(rèn)證協(xié)議。2020年,羅杭光等[14]提出的無線傳感器網(wǎng)絡(luò)中實時數(shù)據(jù)接入的輕量級三因素方案相比,性能方面有小的損失,但是有更加強(qiáng)大和有效的安全性。

目前,數(shù)據(jù)安全的問題日益突出,特別是數(shù)據(jù)庫的安全。數(shù)據(jù)庫是當(dāng)今社會中重要的存儲軟件之一。語義安全加密可以為存儲的數(shù)據(jù)和傳輸?shù)臄?shù)據(jù)提供強(qiáng)大而且有效的保護(hù)。但是,數(shù)據(jù)在進(jìn)行處理的時候,是以明文的方式存儲在內(nèi)存中。2016年,Poddar R等[15]基于語義安全加密提出了Arx的數(shù)據(jù)庫框架,使用了ArxRange和ArxEq。ArxRange實現(xiàn)范圍查詢和限制順序查詢;ArxEq實現(xiàn)等式查詢。CryptDB[16]、Monomi[17]和Seabed[18]使用屬性保護(hù)的方式進(jìn)行加密,在加密的情況下能夠?qū)?shù)據(jù)進(jìn)行查詢處理。微軟的Always Encrypted[19]和谷歌的Encrypted Bigque Client[20]都使用了這種加密方式。但是這種加密的方式會產(chǎn)生信息泄露的問題[21-23]。于是,Christian、Priebe等[24]基于Intel SGX實現(xiàn)了新的數(shù)據(jù)庫EnclaveDB,有較低的開銷(TPC-C高達(dá)40%)卻有強(qiáng)大的安全性。

本文將芯片級的隱私計算和數(shù)據(jù)庫結(jié)合,保證數(shù)據(jù)庫擁有安全運行環(huán)境。數(shù)據(jù)庫增加30%左右開銷的同時,保證了數(shù)據(jù)庫的安全。本文的主要貢獻(xiàn)表現(xiàn)在以下兩個方面。

(1)提出了一種基于隱私計算的數(shù)據(jù)庫全生命周期保護(hù)方法,在Intel SGX的Enclave安全容器中進(jìn)行敏感操作,不依靠第三方服務(wù)。

(2)實現(xiàn)Intel SGX兼容MySQL和SQLCipher。MySQL在Intel SGX的環(huán)境中運行;SQLCipher在Intel SGX安全環(huán)境中進(jìn)行加解密和數(shù)據(jù)庫操作。

1 背景知識

1.1 海光CSV

海光CSV是基于海光CPU自主研發(fā)的安全虛擬化技術(shù),并且采用了國密算法實現(xiàn)。龍蜥8.4操作系統(tǒng)已經(jīng)支持了CSV。CSV虛擬機(jī)通過海光CPU對內(nèi)存進(jìn)行加解密。CSV虛擬機(jī)具有以下幾個特點。

(1)計算資源的隔離。對于每一臺CSV虛擬機(jī),都有各自獨立的內(nèi)存和密鑰。同時使用海光芯片中的安全管理模塊,保證CSV虛擬機(jī)之間資源互不干涉。

(2)啟動過程可度量。 海光CPU的安全模塊能將虛擬文件和度量值進(jìn)行對比,保證虛擬文件的安全,防止篡改。

(3)虛擬機(jī)身份的認(rèn)可。每一顆海光CPU中都有唯一的芯片密鑰,在制作芯片的時候已經(jīng)燒錄了。用戶可以使用芯片密鑰對芯片和CSV虛擬機(jī)的合法性進(jìn)行評估。

1.2 飛騰PSPA

飛騰公司推出了基于飛騰芯片的飛騰PSPA處理器安全架構(gòu)標(biāo)準(zhǔn)。飛騰PSPA標(biāo)準(zhǔn)分為10個模塊:密碼加速引擎;密鑰管理;可信啟動;可信執(zhí)行環(huán)境;安全存儲;固件管理;量產(chǎn)注入;生命周期管理;抗物理攻擊;硬件漏洞免疫,涉及到了硬件軟件,支持各種算法運用,各方面的安全都能進(jìn)行防護(hù)。

1.3 Intel SGX

Intel(R) Software Guard Extensions(Intel(R) SGX)是Intel架構(gòu)新的擴(kuò)展, 在原有架構(gòu)上增加了一組新的指令集和內(nèi)存訪問機(jī)制。Intel SGX使用擴(kuò)展的指令,調(diào)用應(yīng)用程序,實現(xiàn)一個名為Enclave的容器。Enclave容器所在的內(nèi)存空間的地址是被保護(hù)的。整個被保護(hù)的地址空間是由Intel芯片進(jìn)行管理,操作系統(tǒng)沒有權(quán)限訪問這些地址空間。所以,Enclave容器能夠為數(shù)據(jù)和代碼提供一個安全的環(huán)境,即使是超級管理員也無法進(jìn)行訪問。Enclave容器在保護(hù)數(shù)據(jù)和代碼機(jī)密性的同時,也會進(jìn)行度量操作,保證應(yīng)用完整性。Intel SGX關(guān)鍵技術(shù)如下。

(1)認(rèn)證

Intel SGX在進(jìn)行初始化的時候,會自動啟動兩個由Intel自己編寫的Enclave,即SGX Launch和SGX Quoting Enclave。SGX Launch和SGX Quoting Enclave主要通過使用EINIT 和 EREPORT兩個指令對在同一個環(huán)境下其他Enclave容器的身份認(rèn)證。Enclave容器之間可以通過本地認(rèn)證和遠(yuǎn)程認(rèn)證確認(rèn)信任的關(guān)系。在同一臺物理機(jī)上,使用本地認(rèn)證;在不同的物理機(jī)上,使用遠(yuǎn)程認(rèn)證。

一個Enclave通過圖1中所示的EREPORT指令向另一個目標(biāo)Enclave證明其身份。SGX指令生成一個認(rèn)證報告(REPORT),該報告加密地將Enclave提供的信息與Enclave基于度量和基于證書的身份綁定。加密綁定是通過一個MAC標(biāo)簽來完成的,該標(biāo)簽使用的對稱密鑰只在目標(biāo)飛地和SGX實現(xiàn)之間共享。EREPORT指令從當(dāng)前Enclave的SECS中讀取當(dāng)前身份信息,并使用它來填充報表結(jié)構(gòu)。

圖1 DCAP認(rèn)證形式

就認(rèn)證本身而言,遠(yuǎn)程證明僅是向用戶保證遠(yuǎn)程執(zhí)行的Enclave是可信的。除了這種保證之外,用戶還需要創(chuàng)建一個安全通道,以便與遠(yuǎn)程 Enclave進(jìn)行可信通信,用于透明地將密鑰或其他敏感信息提供給遠(yuǎn)端的Enclave。Intel SGX中的遠(yuǎn)程認(rèn)證有兩種形式,分別為EPID和DCAP。EPID適用于客戶端機(jī)器,而DCAP適用于數(shù)據(jù)中心環(huán)境。EPID大多數(shù)的活動部件都是固定的,與Intel提供的服務(wù)強(qiáng)相關(guān),而DCAP是一種在不依賴Intel基礎(chǔ)架構(gòu)的情況下啟動Enclave的方法,且適用于服務(wù)器環(huán)境。

如圖1所示,第一步在Enclave中的應(yīng)用程序打開文件/dev/attestation/user_report_data來寫入;第二步后臺軟件調(diào)用硬件指令EREPORT來生成SGX報告;第三步在生成SGX報告后,應(yīng)用程序讀取另一個特殊文件/dev/attestation/quote;第四步,后臺軟件與引用飛地進(jìn)行通信來接受SGX引用;第五步,引用飛地與供應(yīng)認(rèn)證飛地(Provisioning Certification Enclave,PCE)通信;第六步,PCE使用另一個稱為Intel 供應(yīng)認(rèn)證服務(wù)(PCS)的Intel服務(wù)來獲取身份證明的信息:SGX機(jī)器的證明證書和證書撤銷列表。此外,每次新的SGX引用到達(dá)時,最終用戶都不需要咨詢Intel的Web服務(wù)。相反,最終用戶會定期獲取DCAP 證明證書并將它們緩存在本地機(jī)器上(步驟 0)。當(dāng)SGX的Quote到達(dá)時,用戶將Quote 中嵌入的證書與這些緩存的證書進(jìn)行比較(步驟9)[25]。

(2)數(shù)據(jù)密封

Intel SGX是一項為了保護(hù)數(shù)據(jù)安全而誕生的新技術(shù)。當(dāng)Enclave進(jìn)行實例化之后,所有的數(shù)據(jù)會運行在內(nèi)存之中。當(dāng)Encalve實例關(guān)閉的時候,因為只是運行在內(nèi)存中,所以會被清除,導(dǎo)致數(shù)據(jù)丟失。Intel官方為了能夠?qū)?shù)據(jù)庫保存下來,推出了數(shù)據(jù)密封技術(shù)(Sealing)。每一個Enclave中都有唯一的密鑰,Intel SGX使用這個密鑰對Enclave中的數(shù)據(jù)進(jìn)行加密的操作,加密完成后的數(shù)據(jù)會存放在磁盤上,數(shù)據(jù)就不會因為Enclave實例關(guān)閉導(dǎo)致數(shù)據(jù)丟失。Intel將這些加密和解密操作分別稱為密封和解封。數(shù)據(jù)密封是將Enclave實例中的數(shù)據(jù)加密保存下來。數(shù)據(jù)解密是將已經(jīng)加密的數(shù)據(jù)放在同一個Enclave實例中解密或者是同一平臺下的Enclave實例中解密。這兩種解密的方式分別對應(yīng)了兩種密封的方式: Enclave Identity(安全區(qū)認(rèn)證)和Signing Identity(簽名認(rèn)證)。

Enclave Identity由 MREnclave的值表示,它是 Enclave日志(測量值)的加密哈希。每一個Enclave構(gòu)建和初始化都不相同。所以每一個MREnclave都能唯一地標(biāo)識一個Enclave。由Enclave Identity密封的數(shù)據(jù),只能由同一個Enclave解封。相同的Enclave不同版本,構(gòu)建和初始化Enclave的過程是不一樣的,所以MREnclave的值也是不一樣的。Enclave Identity密封的數(shù)據(jù)不能在同一個Enclave不同版本下進(jìn)行解封。Signing Identity 密封的數(shù)據(jù)能夠在同一個Enclave不同版本下進(jìn)行解封。如果數(shù)據(jù)是處于同一個平臺,由Signing Identity 密封的數(shù)據(jù)都能夠進(jìn)行解封。

1.4 SQLCipher數(shù)據(jù)庫

SQLite是一個輕量級的數(shù)據(jù)庫,廣泛運用于嵌入式的領(lǐng)域。SQLCipher是SQLite數(shù)據(jù)庫的擴(kuò)展,能夠讓使用者更加方便地使用加密數(shù)據(jù)庫。SQLCipher加密使用SQLite內(nèi)部的256 bit AES進(jìn)行加密。SQLite編解碼器使用回調(diào)的方法保證在數(shù)據(jù)寫入和讀取存儲之前進(jìn)行加密的操作。因此,SQLCipher的加密是非常安全的。SQLCipher中的頁面分成不同的塊。每次進(jìn)行加密或者是解密的時候,只是對相對應(yīng)的塊進(jìn)行操作,不會對所有的塊全部進(jìn)行操作,這樣使SQLCipher的加解密效率大幅度提升[26]。

1.5 MySQL數(shù)據(jù)庫

MySQL數(shù)據(jù)庫是一個免費的開源關(guān)系型數(shù)據(jù)庫。與其他的大型數(shù)據(jù)庫(如Oracle、DB2、SQL Server等)相比,MySQL略有不足。但是MySQL的性能能夠滿足中小型企業(yè)的使用。MySQL是開源的數(shù)據(jù)庫,企業(yè)能夠通過修改源碼,優(yōu)化MySQL,得到適合企業(yè)的數(shù)據(jù)庫。

1.6 Gramine

Gramine[25]是一個輕量級庫操作系統(tǒng),旨在以最低的主機(jī)要求運行單個應(yīng)用程序。Gramine可以在隔離的環(huán)境中運行應(yīng)用程序,其優(yōu)勢可與在虛擬機(jī)中運行完整的操作系統(tǒng)相媲美——包括應(yīng)用程序定制、易于移植到不同的操作系統(tǒng)以及進(jìn)程遷移。

Gramine在任何平臺上都支持原生的、未經(jīng)修改的Linux二進(jìn)制文件。目前,Gramine在Linux和Linux平臺上的Intel SGX Enclave上運行。

在不受信任的云和邊緣部署中,用戶希望將整個應(yīng)用程序與基礎(chǔ)設(shè)施的其余部分隔離開來。Gramine支持這種應(yīng)用程序的運行方式。Gramine通過Intel SGX將未經(jīng)修改的應(yīng)用程序引入機(jī)密計算。Gramine可以通過最少的移植工作來保護(hù)應(yīng)用程序免受惡意入侵。

Intel通過Gramine實現(xiàn)了一些使用Intel SGX的例子,在提升安全的同時,小幅度增加開銷。

2 系統(tǒng)設(shè)計

2.1 加密數(shù)據(jù)庫

加密數(shù)據(jù)庫(Encrypted SQL)意味著數(shù)據(jù)庫能夠?qū)?shù)據(jù)庫中保存的數(shù)據(jù)進(jìn)行加密操作。本文提到的MySQL和SQLCipher就是加密數(shù)據(jù)庫(Encrypted SQL)。SQLCipher通過一段密鑰對數(shù)據(jù)庫進(jìn)行加密解密,保證數(shù)據(jù)安全保存,依靠賬號密碼對數(shù)據(jù)庫訪問進(jìn)行限制。MySQL通過賬號密碼限制數(shù)據(jù)庫的訪問,用事務(wù)的特性保證數(shù)據(jù)正確,不同的數(shù)據(jù)庫引擎適應(yīng)不同的使用環(huán)境。

2.2 密鑰管理服務(wù)器

密鑰管理服務(wù)器(Key Manager Server,KMS)服務(wù)用于對Secret Key的存儲和管理,通過遠(yuǎn)程認(rèn)證,為目標(biāo)APP配置Secret Key,并提供接口用于對Key的維護(hù)、升級、重置等操作。KMS主要包含的部分如圖2所示。

2.2.1 加密數(shù)據(jù)庫SQLCipher

SQLCipher基于SQLite,可以將其看作SQLite的一個分支,它繼承了SQLite輕量、高性能的特點,同時提供加密擴(kuò)展,為存儲數(shù)據(jù)提供可靠的加密層保護(hù)。參考官方介紹,其中幾個特點適合當(dāng)前KMS。

圖2 總體結(jié)構(gòu)

(1)快速性能,在許多操作中加密的開銷僅為5%~15%。對加密數(shù)據(jù)進(jìn)行操作之后,加密算法會對數(shù)據(jù)庫進(jìn)行加密,加密開銷占整個操作開銷很小的一部分。

(2)數(shù)據(jù)庫文件中的數(shù)據(jù)100%加密。所有存儲在數(shù)據(jù)庫的數(shù)據(jù)都是處于加密的狀態(tài)。

(3)良好安全實踐(CBC模式、HMAC、密鑰派生)。各種安全的方案,使用戶得到很好的體驗。

(4)零配置和應(yīng)用程序級加密。SQLCipher不需要復(fù)雜的配置就能使用。整個程序在運行的過程中是加密的。

(5)由同行評審的OpenSSL加密庫提供的算法。所有的加密算法都通過實踐的檢驗。

(6)可配置加密程序。加密的程序并不是固定的,可以通過配置的方式進(jìn)行更改。

2.2.2 KMS遠(yuǎn)程認(rèn)證

遠(yuǎn)程認(rèn)證的證書鏈如圖3所示。

KMS接收來自客戶端或者數(shù)據(jù)庫服務(wù)端申請Secret Key請求,對于認(rèn)證合法的客戶端或者是數(shù)據(jù)庫服務(wù)端,將向其發(fā)送Secret Key。具體的工作流如圖4所示。

(1)客戶端或者數(shù)據(jù)庫服務(wù)端生成密鑰對,并將公鑰通過控制臺頁面提交到KMS。

(2)KMS根據(jù)上傳公鑰生成客戶端證書,客戶端或者數(shù)據(jù)庫服務(wù)端下載該證書,同時下載服務(wù)器根證書。

(3)將服務(wù)器根證書和客戶端證書導(dǎo)入到客戶端或者數(shù)據(jù)庫服務(wù)端。

(4)客戶端或者數(shù)據(jù)庫服務(wù)端(通過有權(quán)限的管理人員)在控制臺頁面請求KMS,生成Token,該Token由KMS簽發(fā),用于進(jìn)一步驗證和訪問控制。

圖3 證書鏈

(5)將Token導(dǎo)入到客戶端或者數(shù)據(jù)庫服務(wù)端。

(6)啟動客戶端或者數(shù)據(jù)庫服務(wù)端,在初始階段向KMS發(fā)起Https請求,雙方各自對對方證書進(jìn)行驗證(雙向驗證)。

(7)第6步驗證成功后,KMS對Token進(jìn)行驗證,驗證成功后,向客戶端或者數(shù)據(jù)庫服務(wù)端發(fā)送Secret Key。

2.3 系統(tǒng)介紹

本文使用SQLCipher數(shù)據(jù)庫和MySQL數(shù)據(jù)庫作為實例實現(xiàn)整個系統(tǒng)。本方案中將加密數(shù)據(jù)庫對外共享定義為兩種形式:第一種,在可信機(jī)器上部署數(shù)據(jù)庫服務(wù)器,通過遠(yuǎn)程連接訪問;第二種,數(shù)據(jù)庫以加密文件的形式存儲在本地機(jī)器當(dāng)中,共享時分享整個或部分加密數(shù)據(jù)庫文件。

本方案的系統(tǒng)模型如圖5所示,由兩個實體(數(shù)據(jù)提供方和數(shù)據(jù)使用方)、三個部分(加密數(shù)據(jù)庫(Encrypted SQL)、密鑰管理服務(wù)器(Key Manager Server,KMS)、搭載含有SGX功能的機(jī)器(SGX Worker)模型定義)組成。

第一步,將加密數(shù)據(jù)庫運行在Enclave中。

第二步,讓運行在Enclave中的應(yīng)用去訪問加密數(shù)據(jù)庫。

圖4 工作流程

圖5 系統(tǒng)的運行流程

3 運行過程與分析

系統(tǒng)的運行流程主要可以分為系統(tǒng)初始化、密鑰生成和管理以及數(shù)據(jù)流轉(zhuǎn)三個階段。

3.1 Intel SGX啟動SQLCipher

Gramine是Intel公司的一個軟件擴(kuò)展,主要是為了簡化Intel SGX的使用。本文以SQLite作為模板進(jìn)行SQLCipher的編寫。Gramine實例的編寫主要的文件有兩個Makefile和manifest.template。首先將Makefile中的SQLite改為SQLCipher,然后將manifest.template中程序的入口改為SQLCipher。使用Intel SGX進(jìn)行編譯完成之后,在SQL文件中添加解密的代碼。SQLCipher基于Intel SGX運行SQL文件的時候,在安全區(qū)里面完成數(shù)據(jù)庫的解密并進(jìn)行數(shù)據(jù)庫的操作。

3.2 Intel SGX啟動MySQl

與Intel SGX啟動SQLCipher的流程相差不大,將Makefile和manifest.template兩個文件進(jìn)行修改,保證Intel SGX啟動MySQL時,將MySQL的運行進(jìn)程運行在Intel SGX的安全環(huán)境中。同時,將MySQL的文件作為信任的文件,保證數(shù)據(jù)的交互能夠正常進(jìn)行。

3.3 試驗分析

3.3.1 試驗環(huán)境的描述

試驗的操作系統(tǒng)是Ubuntu20.04, CPU是Intel(R) Xeon(R) Gold 6330N CPU @ 2.20 GHz,總內(nèi)存是377G,剩余的內(nèi)存是243G。在試驗中使用的各個軟件的版本SQLCipher 3.39.2、SQLite 3.31.1、MySQL 8.0.29-0ubuntu0、Python 3.8.10、Intel SGX和Gramine 1.2。所有的試驗數(shù)據(jù)由Python生成,通過命令行進(jìn)行操作。

3.3.2 SQLCipher對比試驗

在整個系統(tǒng)中,為了保證數(shù)據(jù)庫的數(shù)據(jù)安全,SQLCipher會放入Intel SGX的安全區(qū)中。對于正常的系統(tǒng)環(huán)境中,在CPU環(huán)境中使用SQLCipher進(jìn)行數(shù)據(jù)庫的存儲,不放入Intel SGX中。所以兩個系統(tǒng)環(huán)境中,主要的差距是在數(shù)據(jù)庫運行環(huán)境。因此,本文做了在Intel SGX安全區(qū)中的SQLCipher和普通環(huán)境下的SQLCipher的對比試驗。在兩個數(shù)據(jù)庫中插入相同的數(shù)據(jù),對比所消耗的時間。本次試驗使用的數(shù)據(jù)量分別是50 萬、100 萬、150 萬和200 萬。基于Intel SGX的SQLCipher數(shù)據(jù)如表1所示。

表1 基于Intel SGX的SQLCipher

不基于Intel SGX的SQLCipher數(shù)據(jù)如表2所示。

表2 不基于Intel SGX的SQLCipher

兩方對比的折線圖參見圖6。

圖6 SQLCipher兩方數(shù)據(jù)的對比

從圖6可以看出,在使用相同的數(shù)據(jù)進(jìn)行插入操作的時候,基于Intel SGX的SQLCipher和不基于Intel SGX的SQLCipher的各類操作消耗的時間相差在8 s左右。數(shù)據(jù)操作的規(guī)模越大,由Intel SGX產(chǎn)生的性能損失比例越小。

3.3.3 MySQL對比試驗

MySQL在Intel SGX中運行與普通的環(huán)境下運行進(jìn)行對比,不基于Intel SGX的SQLCipher如表3所示。

表3 不基于Intel SGX的MySQL

基于Intel SGX的MySQL的數(shù)據(jù)如表4所示。

表4 基于Intel SGX的MySQL

本文從SELECT、UPDATE和INSERT三個方面進(jìn)行數(shù)據(jù)對比(見圖7、圖8、圖9)。

圖7 MySQL SELECT的數(shù)據(jù)對比

圖8 MySQL UPDATE的數(shù)據(jù)對比

圖9 MySQL INSERT的數(shù)據(jù)對比

從圖7、圖8、圖9可以看出,基于Intel SGX的MySQL比不基于Intel SGX的MySQL多消耗30%左右的時間。Christian Priebe等[24]提出EnclaveDB,消耗40%性能換取數(shù)據(jù)庫在安全的環(huán)境中運行�;贗ntel SGX的MySQL更優(yōu)于基于Intel SGX的EnclaveDB 。

3.3.4 試驗總結(jié)

從試驗可以看出,基于Intel SGX的數(shù)據(jù)庫與正常環(huán)境下的數(shù)據(jù)庫相比,損耗的性能和數(shù)據(jù)庫的類型有關(guān)系�;贗ntel SGX的SQLCipher性能損耗主要原因是每次對數(shù)據(jù)庫進(jìn)行操作的時候,都需要啟動Intel SGX;基于Intel SGX的MySQL的性能損耗主要原因是Intel SGX對數(shù)據(jù)庫的IO限制。兩種數(shù)據(jù)庫在Intel SGX的環(huán)境下,性能損失在可接受的范圍內(nèi)�;贗ntel SGX的數(shù)據(jù)庫環(huán)境能夠支持對于數(shù)據(jù)庫操作量不大的項目使用。

4 結(jié)束語

本文提出了一種基于隱私計算的數(shù)據(jù)庫全生命周期保護(hù)方法,能夠在沒有第三方服務(wù)器的情況下完成各個數(shù)據(jù)庫服務(wù)器的認(rèn)證,保證數(shù)據(jù)在應(yīng)用端和服務(wù)端之間進(jìn)行存儲、流轉(zhuǎn)、使用的安全性�,F(xiàn)有的Intel SGX應(yīng)用方案在進(jìn)行遠(yuǎn)程認(rèn)證的時候,需要Intel公司的服務(wù)器進(jìn)行第三方認(rèn)證,但是本文提出的基于隱私計算的數(shù)據(jù)庫全生命周期保護(hù)方法,在沒有聯(lián)網(wǎng)的情況下,同樣可以保證數(shù)據(jù)的安全性。本文通過試驗驗證了Intel SGX能夠適配MySQL數(shù)據(jù)庫和SQLCipher數(shù)據(jù)庫,損耗也在應(yīng)用可以接受的范圍內(nèi)。本文提出的基于隱私計算的數(shù)據(jù)庫全生命周期保護(hù)方法目前基于Intel SGX硬件實現(xiàn),未來將擴(kuò)展到ARM TrustZone、AMD SEV、海光CSV等平臺,并與基于Intel SGX的實現(xiàn)進(jìn)行對比驗證。

 

11203作者:戴偉濤 俞錦浩 田文生 范佳峰 王澤東 陸一凡 嚴(yán)志超 唐攀攀 來源:信息通信技術(shù)與政策 編輯:顧北

 

聲明:①凡本網(wǎng)注明“來源:通信界”的內(nèi)容,版權(quán)均屬于通信界,未經(jīng)允許禁止轉(zhuǎn)載、摘編,違者必究。經(jīng)授權(quán)可轉(zhuǎn)載,須保持轉(zhuǎn)載文章、圖像、音視頻的完整性,并完整標(biāo)注作者信息并注明“來源:通信界”。②凡本網(wǎng)注明“來源:XXX(非通信界)”的內(nèi)容,均轉(zhuǎn)載自其它媒體,轉(zhuǎn)載目的在于傳遞更多行業(yè)信息,僅代表作者本人觀點,與本網(wǎng)無關(guān)。本網(wǎng)對文中陳述、觀點判斷保持中立,不對所包含內(nèi)容的準(zhǔn)確性、可靠性或完整性提供任何明示或暗示的保證。請讀者僅作參考,并請自行承擔(dān)全部責(zé)任。③如因內(nèi)容涉及版權(quán)和其它問題,請自發(fā)布之日起30日內(nèi)與本網(wǎng)聯(lián)系,我們將在第一時間刪除內(nèi)容。 
熱點動態(tài)
普通新聞 中信科智聯(lián)亮相2023中國移動全球合作伙伴大會
普通新聞 全球首個基于Data Channel的新通話商用網(wǎng)絡(luò)呼叫成功撥通
普通新聞 中國聯(lián)通:以優(yōu)質(zhì)通信服務(wù) 助力“一帶一路”共建繁華
普通新聞 楊杰:未來五年,智算規(guī)模復(fù)合增長率將超過50%
普通新聞 長沙電信大樓火災(zāi)調(diào)查報告發(fā)布:系未熄滅煙頭引燃,20余人被問責(zé)
普通新聞 鄔賀銓:生態(tài)短板掣肘5G潛能發(fā)揮,AI有望成“破局之劍”
普通新聞 工信部:加大對民營企業(yè)參與移動通信轉(zhuǎn)售等業(yè)務(wù)和服務(wù)創(chuàng)新的支持力
普通新聞 摩爾線程亮相2023中國移動全球合作伙伴大會,全功能GPU加速云電腦體
普通新聞 看齊微軟!谷歌表示將保護(hù)用戶免受人工智能版權(quán)訴訟
普通新聞 聯(lián)想王傳東:AI能力已成為推動產(chǎn)業(yè)升級和生產(chǎn)力躍遷的利刃
普通新聞 APUS李濤:中國的AI應(yīng)用 只能生長在中國的大模型之上
普通新聞 外媒:在電池競賽中,中國如何將世界遠(yuǎn)遠(yuǎn)甩在后面
普通新聞 三星電子預(yù)計其盈利能力將再次下降
普通新聞 報告稱華為5G專利全球第1 蘋果排名第12
普通新聞 黨中央、國務(wù)院批準(zhǔn),工信部職責(zé)、機(jī)構(gòu)、編制調(diào)整
普通新聞 榮耀Magic Vs2系列正式發(fā)布,刷新橫向大內(nèi)折手機(jī)輕薄紀(jì)錄
普通新聞 GSMA首席技術(shù)官:全球連接數(shù)超15億,5G推動全行業(yè)數(shù)字化轉(zhuǎn)型
普通新聞 北京聯(lián)通完成全球首個F5G-A“單纖百T”現(xiàn)網(wǎng)驗證,助力北京邁向萬兆
普通新聞 中科曙光亮相2023中國移動全球合作伙伴大會
普通新聞 最高補(bǔ)貼500萬元!哈爾濱市制定工業(yè)互聯(lián)網(wǎng)專項資金使用細(xì)則
通信視界
鄔賀銓:移動通信開啟5G-A新周期,云網(wǎng)融合/算
普通對話 中興通訊徐子陽:強(qiáng)基慧智,共建數(shù)智熱帶雨
普通對話 鄔賀銓:移動通信開啟5G-A新周期,云網(wǎng)融合
普通對話 華為輪值董事長胡厚崑:我們正努力將5G-A帶
普通對話 高通中國區(qū)董事長孟樸:5G與AI結(jié)合,助力提
普通對話 雷軍發(fā)布小米年度演講:堅持做高端,擁抱大
普通對話 聞庫:算網(wǎng)融合正值挑戰(zhàn)與機(jī)遇并存的關(guān)鍵階
普通對話 工信部副部長張云明:我國算力總規(guī)模已居世
普通對話 鄔賀銓:我國互聯(lián)網(wǎng)平臺企業(yè)發(fā)展的新一輪機(jī)
普通對話 張志成:繼續(xù)加強(qiáng)海外知識產(chǎn)權(quán)保護(hù)工作 為助
普通對話 吳春波:華為如何突破美國6次打壓的逆境?
通信前瞻
亨通光電實踐數(shù)字化工廠,“5G+光纖”助力新一
普通對話 亨通光電實踐數(shù)字化工廠,“5G+光纖”助力新
普通對話 中科院錢德沛:計算與網(wǎng)絡(luò)基礎(chǔ)設(shè)施的全面部
普通對話 工信部趙志國:我國算力總規(guī)模居全球第二 保
普通對話 鄔賀銓院士解讀ChatGPT等數(shù)字技術(shù)熱點
普通對話 我國北方海區(qū)運用北斗三號短報文通信服務(wù)開
普通對話 華為云Stack智能進(jìn)化,三大舉措賦能政企深度
普通對話 孟晚舟:“三大聚力”迎接數(shù)字化、智能化、
普通對話 物聯(lián)網(wǎng)設(shè)備在智能工作場所技術(shù)中的作用
普通對話 軟銀研發(fā)出以無人機(jī)探測災(zāi)害被埋者手機(jī)信號
普通對話 AI材料可自我學(xué)習(xí)并形成“肌肉記憶”
普通對話 北斗三號衛(wèi)星低能離子能譜儀載荷研制成功
普通對話 為什么Wi-Fi6將成為未來物聯(lián)網(wǎng)的關(guān)鍵?
普通對話 馬斯克出現(xiàn)在推特總部 收購應(yīng)該沒有懸念了
普通對話 臺積電澄清:未強(qiáng)迫員工休假或有任何無薪假
普通對話 新一代載人運載火箭發(fā)動機(jī)研制獲重大突破
推薦閱讀
Copyright @ Cntxj.Net All Right Reserved 通信界 版權(quán)所有
未經(jīng)書面許可,禁止轉(zhuǎn)載、摘編、復(fù)制、鏡像