武 岳
(河南工業(yè)貿(mào)易職業(yè)學(xué)院信息工程學(xué)院,河南 新鄭 451191)
如今,由于互聯(lián)網(wǎng)的應(yīng)用,計(jì)算存儲(chǔ)機(jī)制發(fā)展迅速,用戶可以用最低的成本獲得所需的計(jì)算資源。因此,用戶可以通過互聯(lián)網(wǎng)將數(shù)據(jù)存儲(chǔ)在任何云的遠(yuǎn)程系統(tǒng)上。云服務(wù)提供商(CSP)提供各種云服務(wù),云計(jì)算分為部署模式和服務(wù)交付模式。部署模式分為:私有云、社區(qū)云、公共云、混合云;服務(wù)交付模式分為:軟件即服務(wù)(SaaS)、平臺(tái)即服務(wù)(PaaS)、基礎(chǔ)架構(gòu)即服務(wù)(IaaS)[1]。
云計(jì)算為企業(yè)或終端用戶提供了各種便捷,例如減少運(yùn)營(yíng)成本、易于訪問和遷移、具有靈活性。但是,由于安全和隱私問題,云計(jì)算解決方案的實(shí)施受到了限制,例如漏洞和來自內(nèi)部和外部用戶的威脅以及云風(fēng)險(xiǎn)。要確保云計(jì)算的安全,重要的是正確理解現(xiàn)有的安全策略。因此,本文的主要內(nèi)容是了解各種安全風(fēng)險(xiǎn)和現(xiàn)有的安全解決方案中使用的機(jī)制,并且通過理論支持為未來的研究提供知識(shí)基礎(chǔ)。
由于云計(jì)算通過互聯(lián)網(wǎng)向用戶提供服務(wù),如數(shù)據(jù)存儲(chǔ)、計(jì)算或多種資源,因此很容易對(duì)數(shù)據(jù)造成威脅或?qū)е聰?shù)據(jù)丟失、泄漏,從而引發(fā)更大的安全和隱私問題。主要有以下5種安全威脅。
1)數(shù)據(jù)泄露:惡意的和未經(jīng)授權(quán)的人通過技術(shù)手段進(jìn)入企業(yè)或公司網(wǎng)絡(luò),訪問或披露敏感、保密和受保護(hù)的數(shù)據(jù)。
2)數(shù)據(jù)丟失:數(shù)據(jù)的備份副本丟失、服務(wù)器崩潰、服務(wù)器內(nèi)的數(shù)據(jù)丟失,都將導(dǎo)致數(shù)據(jù)被破壞、刪除或無法被用戶或軟件讀取。
3)帳戶劫持:惡性入侵者竊取云服務(wù)的憑證信息,他們利用證書進(jìn)入用戶的網(wǎng)絡(luò),發(fā)布錯(cuò)誤信息,并將用戶引向惡意網(wǎng)站。
4)不安全的應(yīng)用程序接口(Application Programming Interface,API):應(yīng)用程序編程接口應(yīng)該是足夠安全的。如果出現(xiàn)了不安全的情況,則會(huì)造成一些嚴(yán)重的安全問題,例如數(shù)據(jù)威脅、無效的訪問控制等。
5)拒絕服務(wù):一些用戶可能需要24 h使用云服務(wù),對(duì)服務(wù)器的攻擊會(huì)造成用戶向服務(wù)器的訪問不能被正常應(yīng)答,拒絕正常授權(quán)用戶訪問數(shù)據(jù)。
大數(shù)據(jù)分析技術(shù)可以保護(hù)數(shù)據(jù),并防止入侵者訪問數(shù)據(jù)。大數(shù)據(jù)安全問題包括4個(gè)方面:一是保護(hù)大數(shù)據(jù);二是為大數(shù)據(jù)分配和取消分配磁盤存儲(chǔ)空間;三是維護(hù)公共云中大數(shù)據(jù)的日志文件;四是防止未經(jīng)授權(quán)用戶的訪問。
為了有效保護(hù)大數(shù)據(jù),云服務(wù)提供商在開發(fā)安全系統(tǒng)的過程中,需要維護(hù)數(shù)據(jù)的完整性、保密性和可用性。加密技術(shù)是云計(jì)算中常用的一種技術(shù),它可以保證數(shù)據(jù)的安全,保護(hù)數(shù)據(jù)的機(jī)密性,防止因授權(quán)和未授權(quán)數(shù)據(jù)計(jì)算而造成的數(shù)據(jù)丟失,并使授權(quán)用戶可以使用數(shù)據(jù)。
BlowFish加密算法是一種對(duì)稱的分組加密算法,每次加密一個(gè)64位分組,使用可變長(zhǎng)度密鑰,32~448位。數(shù)據(jù)加密標(biāo)準(zhǔn)(Data Encryption Standard,DES)的密鑰大小為164位,高級(jí)加密標(biāo)準(zhǔn)(Advanced Encryption Standard,AES)是用于大數(shù)據(jù)安全的基本加密方法,可變密鑰大小。云存儲(chǔ)采用非對(duì)稱密鑰加密技術(shù)有效保護(hù)大數(shù)據(jù),但計(jì)算時(shí)間較長(zhǎng)。RSA是一種引入公鑰加密技術(shù)的加密方法,為了實(shí)現(xiàn)高度保護(hù),該方法使用高達(dá)16 386的密鑰長(zhǎng)度。DH(Diffie-Hellman)密鑰交換方法引入了第一個(gè)公鑰協(xié)議,需要2 048位密鑰大小以有效保護(hù)大數(shù)據(jù)。還有錯(cuò)誤檢查和糾正(Error Correcting Code,ECC),是一種很好的、復(fù)雜的大數(shù)據(jù)保護(hù)技術(shù)。數(shù)據(jù)加密算法(Secure Hash Algorithm,SHA)-2系列(SHA-224,SHA-256,SHA-384,SHA-512,SHA-512/224,SHA-512/256)和SHA-3都是使用哈希值進(jìn)行加密的算法。大數(shù)據(jù)保護(hù)的一般流程見圖1。
圖1 云中大數(shù)據(jù)保護(hù)機(jī)制
保護(hù)大數(shù)據(jù)的方法有很多,基于屬性和同態(tài)加密是使用公鑰加密的先進(jìn)安全技術(shù)。格式保留加密是一類特殊的對(duì)稱性加密算法,它可以保證在加密過程前后都保留數(shù)據(jù)格式。例如,如果明文是一個(gè)客戶的ID,在加密完成后,密碼文本的格式也是客戶ID。在同態(tài)加密技術(shù)中,所有的計(jì)算都只在加密數(shù)據(jù)上進(jìn)行,即密碼文本,而不是明文。在完成所有計(jì)算后,對(duì)密碼文本進(jìn)行解密。與其他安全方法相比,完全同態(tài)的方法具有很高的效率,見圖2。
圖2 完整的同態(tài)加密方法
該方法使用加密技術(shù)來構(gòu)建加密云計(jì)算框架。云計(jì)算安全的一個(gè)有效方法是信息加密,該策略使用量子密鑰分發(fā)系統(tǒng),它是一種高效和非對(duì)稱的算法,用來生成一個(gè)離線密鑰,該算法為每個(gè)實(shí)體分配私鑰和公鑰,每個(gè)實(shí)體都有一個(gè)私鑰和一個(gè)公鑰密鑰生成器,能夠離線生成任何其他實(shí)體的公共密鑰。由于云服務(wù)中的所有終端元素都有自己的密鑰,因此可以避免劫持接收終端的行為,而且很容易通知準(zhǔn)確的數(shù)據(jù)丟失點(diǎn),從而保證了信息交換的安全性。
開發(fā)一個(gè)具有多層結(jié)構(gòu)的新框架,用于檢測(cè)、銷毀和隔離數(shù)據(jù)中心的數(shù)百億字節(jié)的數(shù)據(jù)。第一層為訪問控制和防火墻,它只允許擁有授權(quán)的受限用戶訪問數(shù)據(jù)。中間層的身份管理由兩個(gè)系統(tǒng)組成:入侵防御系統(tǒng)(Intrusion Prevention System,IPS)和入侵檢測(cè)系統(tǒng)(Intrusion Detection Systems,IDS)。該層的實(shí)施可以防止許多攻擊,如拒絕服務(wù)(DoS)、結(jié)構(gòu)化查詢語言(Structured Query Language,SQL)注入。在第三層中,采用了一種加密方法,與自上而下的基于策略的安全管理和身份管理一起使用。
第一層具有防御入侵功能,它將產(chǎn)生一個(gè)加密密鑰字符串,以保護(hù)數(shù)據(jù)免受惡意或未經(jīng)授權(quán)的攻擊。在生成加密密鑰后,配置保存在IPS中,創(chuàng)建IPS規(guī)則,配置IPS簽名存儲(chǔ)位置,最后通知IPS事件。
第二層包括3個(gè)角色:用戶、云計(jì)算應(yīng)用框架(Cloud Computing Adoption Framework,CCAF)服務(wù)器和安全管理器。用戶通過用自己的密鑰和區(qū)塊的組合生成每個(gè)密鑰來進(jìn)行加密。文件或數(shù)據(jù)塊使用用戶生成的密鑰進(jìn)行加密,對(duì)加密后的區(qū)塊進(jìn)行簽名,并請(qǐng)求存儲(chǔ)。該密鑰用于解密文件或數(shù)據(jù)塊,以在檢索時(shí)獲得原始文件。CCAF服務(wù)器只允許被授權(quán)的人、監(jiān)控訪問控制、數(shù)據(jù)加密和數(shù)據(jù)所有者之間的解密。
第三層采用融合加密(CoE)機(jī)制對(duì)所有節(jié)點(diǎn)進(jìn)行安全測(cè)試。在這一層,應(yīng)用哈希函數(shù)生成加密密鑰K,從節(jié)點(diǎn)A的信息中獲得節(jié)點(diǎn)A的加密密鑰。假設(shè)M是一個(gè)來自節(jié)點(diǎn)A的消息,H是一個(gè)加密哈希函數(shù),那么K=H(M)。節(jié)點(diǎn)A的消息是用這個(gè)生成的密鑰K加密的。
這種方法比單層結(jié)構(gòu)更有效地檢測(cè)和清除威脅,并避免重復(fù)數(shù)據(jù)刪除。通過選擇正確的算法,可以提供更好的安全解決方案。
為了保護(hù)云計(jì)算中的大數(shù)據(jù),提出了Meta-CloudDataStorage架構(gòu)[2]。根據(jù)大數(shù)據(jù)的重要性和生命周期,它們分布在多個(gè)數(shù)據(jù)中心。在這個(gè)體系架構(gòu)中,數(shù)據(jù)被分為3個(gè)級(jí)別:關(guān)鍵、敏感和正常。用戶請(qǐng)求通過MetaCloudDataStorage接口有效地轉(zhuǎn)發(fā)到相應(yīng)的數(shù)據(jù)中心。這個(gè)架構(gòu)使用AWS Cloud-Trail來處理和管理日志文件,使用AWS密鑰管理系統(tǒng)(KMS)負(fù)責(zé)日志文件的傳遞。其中,API調(diào)用時(shí)間、請(qǐng)求、響應(yīng)參數(shù)以及API調(diào)用的IP地址,都由AWS CloudTrail維護(hù)。在這種方法中。數(shù)據(jù)中心是由n個(gè)部分組成的序列,假設(shè)有m個(gè)數(shù)據(jù)提供商,P是存儲(chǔ)提供商,M是物理存儲(chǔ)介質(zhì),那么存儲(chǔ)路徑={數(shù)據(jù)((P1(M1,M2,…,Mr))(P2(M1,M2,…,Ms)),…,(Pn(M1,M2,…,Mt))}。該方法對(duì)大數(shù)據(jù)的存儲(chǔ)路徑進(jìn)行加密,加密后的值被稱為大數(shù)據(jù)的加密虛擬映射[3]。這種方法中使用的機(jī)制并不能保護(hù)大數(shù)據(jù),但這個(gè)架構(gòu)保留并保護(hù)了部分存儲(chǔ)在每個(gè)云存儲(chǔ)的信息。管理員將相同的數(shù)據(jù)存儲(chǔ)在不同的云存儲(chǔ)中,并維護(hù)每個(gè)存儲(chǔ)索引數(shù)據(jù)。如果任何數(shù)據(jù)部分出現(xiàn)問題,該架構(gòu)接口可以使用另一個(gè)可以使用的數(shù)據(jù)副本[4]。
采用數(shù)據(jù)分割技術(shù)對(duì)大數(shù)據(jù)進(jìn)行保護(hù)。為了保護(hù)敏感數(shù)據(jù),將整體的數(shù)據(jù)分割成若干可以獨(dú)立管理并以清晰的形式存儲(chǔ),而不需要引用存儲(chǔ)在不同位置的其他數(shù)據(jù)(見圖3)。在這種方法中,入侵者無法通過使用一個(gè)單一的片段識(shí)別相應(yīng)的主體,也就無法竊取隱私和重要數(shù)據(jù)。例如,如果入侵者竊取的片段包含一個(gè)用戶名稱的數(shù)據(jù)列表,但是他們不能通過這個(gè)列表了解任何關(guān)于用戶名稱的其他信息[5]。在保留隱私的數(shù)據(jù)分割方法中,敏感數(shù)據(jù)文件被轉(zhuǎn)換為字節(jié),這些字節(jié)被組合為一系列的部分內(nèi)容。根據(jù)數(shù)據(jù)隱私的優(yōu)先級(jí),使用不同的云來存儲(chǔ)部分?jǐn)?shù)據(jù)。
圖3 數(shù)據(jù)分割結(jié)構(gòu)
本文對(duì)云計(jì)算中大數(shù)據(jù)所涉及的所有安全挑戰(zhàn)進(jìn)行了描述,并列出了安全問題,主要有攻擊、威脅和其他安全問題,并討論了解決方案。本文還分析了現(xiàn)有安全機(jī)制的效率,本文的研究或分析結(jié)果可以為云安全知識(shí)提供理論支持和證據(jù)。云大數(shù)據(jù)安全和隱私問題是目前急需解決的問題,在不久的將來,可以通過安全的方法和架構(gòu)提高云大數(shù)據(jù)的安全性。