陳旭 王朝斌 廖彬宇 陸旭
摘要:在虛擬云服務(wù)器存儲時代,由于所有用戶都會訪問虛擬服務(wù)器中的資源,并且需要將用戶的數(shù)據(jù)安全地存儲在虛擬服務(wù)器中,因此云安全問題促進了很多安全性保障方法的產(chǎn)生.虛擬數(shù)據(jù)安全是云服務(wù)器中所有安全問題中最重要的部分,可以通過密碼算法來保證機密性,數(shù)據(jù)在發(fā)送到虛擬云服務(wù)器之前進行加密.而密碼算法是為了避免攻擊者并且保護數(shù)據(jù)而產(chǎn)生的,目前廣泛使用的是非對稱密碼術(shù),也稱為公鑰密碼術(shù),而RSA密碼是非對稱密碼中的著名算法之一.本文在傳統(tǒng)RSA算法的基礎(chǔ)上使用參數(shù)替換來隱藏公鑰,避免了黑客對密碼的直接攻擊,增加了破解難度,保障了虛擬服務(wù)器存儲的安全性.
關(guān)鍵詞:虛擬服務(wù)器;RSA算法;加密解密;參數(shù)替換
中圖分類號:TP309? 文獻標識碼:A? 文章編號:1673-260X(2019)01-0054-03
0 引言
虛擬云服務(wù)器存儲架構(gòu)是以分布式方式收集相互關(guān)聯(lián)信息的系統(tǒng),并提供諸如硬件、軟件、應(yīng)用程序、內(nèi)存、操作系統(tǒng)等共享資源.目前,在傳統(tǒng)的云服務(wù)器存儲模式中,用戶計算機的主要作用是計算、數(shù)據(jù)存儲和數(shù)據(jù)分析與處理.用戶的計算機與數(shù)據(jù)和所有軟件集成在一起,隨著數(shù)據(jù)大小和計算復(fù)雜度呈指數(shù)級增長,用戶系統(tǒng)的計算效率會受到損失.由于大多數(shù)互聯(lián)網(wǎng)用戶需要更多的存儲空間來存儲個人數(shù)據(jù),因此他們轉(zhuǎn)向使用云[1].安全性是云存儲的主要問題,數(shù)據(jù)安全和隱私,身份和訪問管理,災(zāi)難恢復(fù)/業(yè)務(wù)連續(xù)性規(guī)劃等是一些安全問題,這些問題在虛擬云服務(wù)器存儲環(huán)境中變得更加嚴重,因為數(shù)據(jù)分散在不同的機器和存儲設(shè)備中,包括服務(wù)器,PC和各種移動設(shè)備.此外,全球各行業(yè)的擴張需要在世界各地能夠共享數(shù)據(jù)庫,而虛擬云服務(wù)器存儲系統(tǒng)則可以有效解決該問題.虛擬云服務(wù)器存儲使軟件應(yīng)用程序,部署平臺甚至計算資源都可以使用按工作單位付費模式按需提供.這在近年來引起了人們對這個領(lǐng)域的極大關(guān)注,任何用戶都可以共享云中的資源,但其中有許多安全問題受到挑戰(zhàn),所以我們需要保障云系統(tǒng)的安全性.
1 云服務(wù)器的虛擬化
云服務(wù)器虛擬化:就是把一臺服務(wù)器其中的硬件資源按照邏輯結(jié)構(gòu)分成幾臺有著相互獨立功能的服務(wù)器,或是把若干臺服務(wù)器組合成一臺服務(wù)器來使用.云服務(wù)器的虛擬化實現(xiàn)了多個虛擬機在單個服務(wù)器上的運行,并且完成了對硬件資源的抽象.云服務(wù)器的虛擬化為虛擬機提供了安全措施與良好的運行環(huán)境,從而保證了在虛擬機下的數(shù)據(jù)傳輸和資源共享.
虛擬云服務(wù)器存儲以靈活和可擴展的方式為管理互聯(lián)網(wǎng)基礎(chǔ)架構(gòu)提供了經(jīng)濟高效的解決方案[2],而同時虛擬云服務(wù)器存儲中的數(shù)據(jù)安全性比傳統(tǒng)信息系統(tǒng)中的數(shù)據(jù)安全性更復(fù)雜.所以在云服務(wù)器虛擬化中,應(yīng)用密碼學(xué)是保障虛擬云服務(wù)器存儲中云計算安全性的最佳解決方案之一.
2 虛擬云服務(wù)器安全的影響因素
2.1 對物理設(shè)備的非法控制
在通信雙方發(fā)送消息的過程中,如果攻擊者通過對物理設(shè)備的遠程非法控制從而得到了對物理層設(shè)備的控制權(quán)限,那么攻擊者就可以隨意地對設(shè)備和虛擬服務(wù)器下的網(wǎng)絡(luò)環(huán)境進行操作,進而可能破壞整個網(wǎng)絡(luò)系統(tǒng).
2.2 對虛擬機遷移的威脅
在虛擬服務(wù)器下的網(wǎng)絡(luò)環(huán)境下,服務(wù)器中存在大量數(shù)據(jù),虛擬機的遷移可能會造成在各種復(fù)雜的網(wǎng)絡(luò)環(huán)境中,信息通信或數(shù)據(jù)傳輸易遭受中間人攻擊,造成虛擬機信息的泄露或篡改,導(dǎo)致大量的私密信息泄露,用戶的信息被竊取,網(wǎng)絡(luò)中的信息傳輸受到嚴重影響,極大地威脅了網(wǎng)絡(luò)環(huán)境,因此如何在虛擬機遷移過程中保護的服務(wù)器數(shù)據(jù)的安全性是一個急需解決的問題.
2.3 對虛擬管理的威脅
虛擬服務(wù)器的網(wǎng)絡(luò)環(huán)境中,中間攻擊者可能通過范圍虛擬管理通信信息的方式來改變虛擬服務(wù)器環(huán)境下的網(wǎng)絡(luò)拓撲結(jié)構(gòu),其中可以具體破壞虛擬網(wǎng)絡(luò)環(huán)境中的網(wǎng)絡(luò)設(shè)備端口以及VLAN之間的映射關(guān)系,進而威脅虛擬服務(wù)器.
3 虛擬網(wǎng)絡(luò)技術(shù)
在密碼學(xué)中,加密與解密也是安全通信的重要組成部分.密碼學(xué)中定義:加密是將純文本轉(zhuǎn)換為密文的過程,解密是加密的逆過程,即在另一端將密文轉(zhuǎn)換為純文本,這個過程稱為解密.于是也就有兩種類型的密碼算法,即對稱密碼學(xué)和非對稱密碼學(xué).最初未加密的數(shù)據(jù)被視為普通文本.對稱密碼學(xué)在加密和解密過程中使用的密鑰都是一致的,而非對稱密碼學(xué)則使用公鑰和私鑰.其中Rivest Shamir Adleman(RSA)是最著名的非對稱密碼體制[3].本文基于傳統(tǒng)RSA算法而提出改進方法來提升虛擬云服務(wù)器存儲云環(huán)境中數(shù)據(jù)的安全性.而同時虛擬網(wǎng)絡(luò)技術(shù)能夠保障網(wǎng)絡(luò)中的信息安全,其算法改進過程中主要用到以下2種:
3.1 加密技術(shù)
加密技術(shù)是一種不可獲取的技術(shù),它是虛擬網(wǎng)絡(luò)技術(shù)中非常重要的技術(shù)之一,加密技術(shù)能夠保護計算機,避免網(wǎng)絡(luò)中一些非法用戶的入侵,保護用戶的信息和數(shù)據(jù),防止不必要的損失.
3.2 解密技術(shù)
在消息發(fā)送方針對消息加密后,接收方接收到消息輸入加密后的密文,輸入解密密鑰,對密文進行解密,輸出解密后明文.
4 RSA算法的數(shù)學(xué)背景
云服務(wù)器虛擬化中,密碼學(xué)中的RSA算法是保障云計算安全性的最佳方法之一.密碼學(xué)中RSA算法由三部分組成:第一部分是用來作為密鑰加密和解密數(shù)據(jù)的密鑰生成部分,在這個階段會生成加密密鑰和解密密鑰,即公鑰和私鑰,公鑰被公開以供所有消息發(fā)送方加密信息,私鑰被消息接收方秘密保存,不對外公開;第二部分是加密部分,消息接收方把公鑰公開給消息發(fā)送方,然后消息發(fā)送方利用公鑰把明文轉(zhuǎn)換為密文;最后一部分是解密,消息接收方接收到密文后利用私鑰把密文轉(zhuǎn)換為純文本[4]:
4.1 密鑰生成算法
(1)首先隨機選取兩個互不相同的大素數(shù),假定其為p和q.
(2)然后計算模數(shù)n=p*q,歐拉函數(shù)?椎(n)=(p-1)*(q-1),歐拉函數(shù)為小于n且與n互質(zhì)的數(shù)的個數(shù).
(3)在范圍(1,?椎(n))之間選取一個隨機數(shù)e作為公鑰,并且e滿足gcd(e,?椎(n))=1.
(4)然后利用隨機數(shù)e和歐拉函數(shù)?椎(n)計算私鑰d,ed≡1mod(e,?椎(n)).
到此密鑰生成算法結(jié)束,然后把(e,n)公開作為公鑰,(d,n)作為私鑰,開始執(zhí)行加密和解密算法.
4.2 加密算法
假設(shè)消息發(fā)送方的明文為M,消息加密后的密文為C,利用公鑰對明文進行加密,那么密文C=Memod(n).
4.3 解密算法
消息接收方收到密文后使用私鑰,對收到的密文解密,M=Cemod(n).
5 改進的RSA算法
由于公鑰是用于加密的,并且公鑰是公開的,所以黑客可以使用強力方法來破解公鑰而獲得p和q,進而獲得歐拉函數(shù)?椎(n),最后計算出私鑰.又由于在虛擬云服務(wù)器中,云計算處于開放環(huán)境下工作,當我們在云服務(wù)器中上傳或存儲數(shù)據(jù)時,云服務(wù)器平臺中有許多用戶想要訪問文件或數(shù)據(jù),為了數(shù)據(jù)的安全性,只有授權(quán)用戶才能訪問文件.此外當用戶共享一個文件給客戶端或其他用戶時,暴力攻擊者可以破解該文件并且未經(jīng)授權(quán)的用戶也可以嘗試訪問文件.因此,當我們上傳下載和共享文件時,需要安全算法或加密技術(shù)來保障文件和數(shù)據(jù)的安全性.為了避免攻擊者對公鑰的直接攻擊,本文利用參數(shù)替換法隱藏公鑰,算法過程如下[5].
5.1 密鑰生成過程
(1)隨機選擇4個互不相同的大素數(shù),假定為p,q,r和s,計算模數(shù)n=p*q*r*s,再計算歐拉函數(shù)?漬(n)=(p-1)*(q-1)*(r-1)*(s-1);
(2)隨機選擇一個正整數(shù)e,并且e要滿足gcd(e,?漬(n))=1和1<e<?漬(n);
(3)利用正整數(shù)e和歐拉函數(shù)?漬(n)計算私鑰d,ed≡1mod?漬(n);
(4)此時需要生成一個新模數(shù)來隱藏原來的模數(shù),假定新的模數(shù)為y,替換原則如下:如果p>q,則y滿足n-p<y<n,gcd(y,n)=1;如果q>p,則y滿足n-q<y<n,gcd(y,n)=1.
(5)最后新模數(shù)y代替原來的模數(shù)n作為公鑰和私鑰,現(xiàn)在公鑰為(e,y),私鑰為(d,y);
5.2 加密過程
消息發(fā)送方收到消息接收方公開的公鑰之后,使用公鑰(e,y)對消息進行加密,C≡Memody.
5.3 解密過程
消息接收方收到消息發(fā)送方傳輸?shù)拿芪暮?,使用私鑰(d,y)對消息進行解密,M≡Cemody
5.4 安全性分析
虛擬云服務(wù)器中數(shù)據(jù)安全是重中之重,同時也是保障正常運行的基礎(chǔ)條件.目前的方法是利用RSA密碼對數(shù)據(jù)進行加密,而破解密碼所花的時間越多,則說明該密碼體制越安全.在文獻[5]中已通過實驗證明,對傳統(tǒng)RSA算法和改進RSA算法進行暴力攻擊,在10bit素數(shù)情況下,破解傳統(tǒng)RSA算法需要6.151s,破解改進的RSA算法需要35.204s,可以知道破解改進算法所花的時間大約是傳統(tǒng)算法的5.72倍[5],當素數(shù)比特位越大,改進算法和傳統(tǒng)算法的破解時間差距也會越大.
6 結(jié)論
本文介紹的算法表明,在公鑰密碼算法中使用參數(shù)替換可以提高安全性.在使用參數(shù)替換之后,可以避免攻擊者對密鑰的直接攻擊,同時黑客很難直接通過暴力攻擊來找出密鑰,增加了破解的難度,因此該算法比傳統(tǒng)的RSA算法更安全.將參數(shù)替換后的RSA算法應(yīng)用于雙方發(fā)送消息的過程中,只有通過身份驗證的用戶才能訪問文件或數(shù)據(jù),所以這種方法保障了數(shù)據(jù)在虛擬云服務(wù)器上傳和下載時的安全性.
參考文獻:
〔1〕Rajan S Jamgekar, Geeta Shantanu Joshi, “File Encryption and Decryption using Secure RSA”, International Journal of Emerging Science and Engineering (IJESE) ISSN: 2319–6378, Volume-1, Issue-4, February 2013.
〔2〕Gaurav R. Patel, Prof. Krunal Panchal, Sarthak R. Patel, “A Comprehensive Study on Various Modifications in RSA Algorithm”, International Journal of Engineering Development and Research. ISSN: 2321-9939.
〔3〕Pallav Sharma, Varsha Sharma, Sanjeev Sharma and Jitendra Agrawal, “Data Protection in Clouds using Two Stage Encryption”, International Journal of Grid Distribution Computing, 8, 269-276, 2015.
〔4〕Yunchuan Sun, Junsheng Zhang, Yongping Xiong, Guangyu Zhu, “Data Security and Privacy in Cloud Computing”,International Journal of Distributed Sensor Networks, doi.10.1155/2014/190903, 2014.
〔5〕周金治,高磊.基于多素數(shù)和參數(shù)替換的改進RSA算法研究[J].計算機應(yīng)用研究,2019(02):1-6[2018-05-16].
〔6〕Nandita Sengupta,’’Designing of Hybrid RSA Encryption Algorithm for Cloud Security”, International Journal of Innovative Research in Computer and Communication Engineering, 3, 4146-4152, 2015.
〔7〕M Ghazali Kamardan,N Aminudin,Norziha Che-Him,Suliadi Sufahani,Kamil Khalid,Rozaini Roslan. Modified Multi Prime RSA Cryptosystem[J]. Journal of Physics: Conference Series,2018,995(1).
〔8〕Panda P K, Chattopadhyay S, Panda P K, et al. A hybrid security algorithm for RSA cryptosystem[C]// International Conference on Advanced Computing and Communication Systems. 2017:1-6.
〔9〕Boneh D.Twenty Years of Attacks on the RSA Cryptosystem[J].Notices of the American Mathematical Society (AMS),1999,46(2):203-213.
〔10〕JIANG ZHONGPIN. A note on chaotic secure communication systems[J]. IEEE Transactions on Circuits System, 2002, 49(1):92- 96(in Chinese).
〔11〕陳春玲,齊年強,余瀚.RSA算法的研究和改進[J].計算機技術(shù)與發(fā)展,2016,26(8):48-51.