本發(fā)明屬于云存儲技術領域,尤其涉及一種Android平臺下支持文件加密的安全云存儲方法。
背景技術:
如今,網(wǎng)絡技術迅速普及,進入千家萬戶;與此同時,網(wǎng)絡空間安全問題變得日益迫切,逐漸被人們所重視。如何保證自己的資料,兩方互通的重要文件不被非法第三方所竊取,一直是人們研究的課題。加密技術在眾多安防措施中首當其沖。好的加密算法,可以使得數(shù)據(jù)固若金湯。RSA算法是目前最有影響力的公鑰加密算法,是當前最著名、應用最廣泛的公鑰系統(tǒng)。早在1978年,就被由美國麻省理工學院(MIT)的Rivest、Shamir和Adleman在題為《獲得數(shù)字簽名和公開鑰密碼系統(tǒng)的方法》論文中提出,是一個基于數(shù)論的非對稱(公開鑰)密碼體制,是一種分組密碼體制。其名稱來自于三個發(fā)明者的姓名首字母。已被ISO推薦為公鑰加密標準。只要其鑰匙的長度足夠長,用RSA加密的信息實際上是不能被解破的;目前,RSA可根據(jù)密鑰長度分為1024比特與2048比特兩種。RSA算法基于大數(shù)分解:將兩個大素數(shù)相乘十分容易,但是對其乘積進行因式分解卻極其困難,因此可以將乘積公開作為加密密鑰。RSA算法的優(yōu)點有:1.能同時用于加密和數(shù)字簽名的算法;2.易于理解和操作;3.該算法的加密密鑰和加密算法分開,使得密鑰分配更為方便;4.特別適用于網(wǎng)絡環(huán)境,對于網(wǎng)絡上的大量用戶,可以將加密密鑰以公鑰目錄的方式給出。DES算法為密碼體制中的對稱密碼體制,是1972年美國IBM公司研制的對稱密碼體制加密算法。明文按64位進行分組,密鑰長64位,密鑰事實上是56位參與DES運算,分組后的明文組和56位的密鑰按位替代或交換的方法形成密文組的加密方法。然而,在人們?nèi)粘I钪形募褂玫倪^程中,卻面臨著來自惡意軟件等方面的威脅,世界著名安全廠商賽門鐵克發(fā)表了一份報告,稱在所有安卓應用中,有百分之17都是惡意應用,每不到6個安卓App中就存在一個惡意軟件,其泛濫程度可見一斑。統(tǒng)計還稱,在2013年一年中,安卓平臺上約有70萬個惡意App;而到了2014年,安卓惡意App數(shù)量已經(jīng)增長到了100萬個。這些惡意軟件會盜取用戶隱私信息,誘使用戶開通付費服務等等。惡意軟件的其中一個重要的目標就是——盜取用戶的私密文件。另外,云存儲作為時代的新寵,以其權限高度集中化管理,不占用用戶本地存儲空間等優(yōu)勢,被用戶所親睞。
然而,云存儲在帶給人們便捷的同時,也暴露了很多安全問題。早在2014年,就有icloud艷照門被披露,數(shù)位好萊塢明星的私密照片慘遭泄露。云存儲文件的安全性,又一次受到了人們的質疑。
技術實現(xiàn)要素:
本發(fā)明的目的在于提供一種Android平臺下支持文件加密的安全云存儲方法,旨在解決現(xiàn)有的云存儲安全性較低的問題。
本發(fā)明是這樣實現(xiàn)的,一種Android平臺下支持文件加密的安全云存儲方法,所述Android平臺下支持文件加密的安全云存儲方法包括以下步驟:
步驟一,用戶注冊SafeCloud賬號,用戶獲得云存儲服務;
步驟二,用戶提交個人身份信息申請文件給注冊機構審核,注冊機構審核通過之后,將申請文件提交給CA中心,CA中心根據(jù)此申請文件簽發(fā)個人數(shù)字證書和對應私鑰;CA中心通過U盤將生成的個人數(shù)字證書和對應私鑰交給用戶,進而用戶獲得個人的數(shù)字證書和對應的私鑰;
步驟三,用戶上傳文件明文或者密文,對好友分享明文或者密文;
步驟四,用戶自身下載加密文件或者取用對方分享的密文,輸入口令對源文件進行解密。
進一步,所述文件數(shù)據(jù)加密方法采用混合體制加密方法,文件數(shù)據(jù)的加密采用對稱加密算法DES,所使用的對稱加密密鑰利用RSA公鑰加密算法進行加密。對于系統(tǒng)中比較大的文件來說,先采用DES對稱密鑰加密,再利用RSA公鑰加密該DES對稱密鑰,這樣便提高系統(tǒng)中文件的加解密效率。
進一步,所述文件加密方法具體包括:
取時間值與內(nèi)存狀態(tài)值信息為隨機數(shù)種子,對種子進行Hash操作(Hash函數(shù)的功能和作用在密碼領域已做了深入的研究),生成初始化密鑰種子;
將密鑰種子輸入函數(shù),函數(shù)是MD5對稱密鑰生成算法,進而生成初始化會話密鑰;
將該會話密鑰作為DES加密算法的輸入,加密明文信息生成密文;同時,再利用用戶個人數(shù)字證書中的公鑰對該DES會話密鑰進行加密,將加密后的128bit密鑰與原文件一同拼接成一個大的文件,將此生成的文件上傳至云服務器。
進一步,所述輸入口令用于保護私鑰。
本發(fā)明的另一目的在于提供一種所述的Android平臺下支持文件加密方法的安全云存儲系統(tǒng),所述安全云存儲系統(tǒng)包括:
認證服務器,用于認證登錄用戶的合法身份,;
文件服務器,與認證服務器連接,用于存儲用戶上傳的文件,同時對用戶提交的查詢請求作出對應的響應,返回相應的查詢請求結果;
CA服務器,用于接收、審核新用戶的個人數(shù)字證書請求、為審核通過的用戶頒發(fā)個人數(shù)字證書、撤銷和更新失效的個人數(shù)字證書;
客戶端,與認證服務器、文件服務器、CA服務器連接,用于合法用戶的登錄、已登錄用戶上傳或下載個人文件和新用戶申請個人數(shù)字證書。
本發(fā)明提供的基于混合加密體制的文件云存儲加密方法,實用性強,開發(fā)成本低,能耗少,加密采用MD5算法生成的對稱密鑰,只會在一次加解密過程中使用;適用于現(xiàn)實環(huán)境中,一對多,多對一的通信錄式通信環(huán)境;通過公鑰加密體制的特性,用戶可以將多個公鑰對應于多個用戶,然后根據(jù)公鑰對每個通信的實體文件進行加密,同時也可選擇將同一個公鑰對應于一個通信組,滿足于多人通信中對于組間用戶的內(nèi)容上的訪問控制;用戶不需要過硬的密碼學背景便可對軟件熟練使用,用戶體驗相對好,本地化的界面,使得用戶操作云端文件與操作本地文件無異;本發(fā)明的系統(tǒng)體積小巧,安裝包僅僅不到3M,耗內(nèi)存低,峰值運行速度僅為30M,可支持將私鑰存于移動設備,便于對文件進行解密操作。
附圖說明
圖1是本發(fā)明實施例提供的Android平臺下支持文件加密的安全云存儲系統(tǒng)流程圖。
圖2是本發(fā)明實施例提供的Android平臺下支持文件加密的安全云存儲系統(tǒng)結構示意圖;
圖中:1、認證服務器;2、文件服務器;3、CA服務器;4、客戶端。
具體實施方式
為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明借助CA服務器頒發(fā)的證書,既可以滿足用戶本身存儲文件的安全性,又可以使得文件在兩個用戶間互相傳遞的過程中,不被第三方所竊?。蝗魏沃虚g人為的竊聽,惡意軟件的盜取,都不能窺探文件本身的內(nèi)容。
下面結合附圖對本發(fā)明的應用原理作詳細的描述。
如圖1所示,本發(fā)明實施例的基于混合加密體制的文件云存儲加密方法包括以下步驟:
S101:用戶注冊SafeCloud賬號,用戶擁有云存儲服務;
S102:用戶通過遞交申請,CA服務器批準后,獲得個人的數(shù)字證書(包括根證書)和對應的私鑰;
S103:用戶根據(jù)自己需求上傳文件明文或者密文,享受安全的云存儲服務,同時用戶可依據(jù)自身的需求,對自己的好友分享明文或者密文;
S104:用戶自身下載加密文件,或者取用對方分享過來的密文的時候,需要輸入口令對源文件進行解密。
如圖2所示,本發(fā)明實施例的基于混合加密體制的文件云存儲加密系統(tǒng)包括:認證服務器1、文件服務器2、CA服務器3和客戶端4。
認證服務器1,用于認證登錄用戶的合法身份,只有通過該認證服務器認證過的合法用戶才能登錄進文件服務器系統(tǒng)。
文件服務器2,與認證服務器1連接,用于存儲用戶上傳的文件,同時對用戶提交的查詢請求作出對應的響應,返回相應的查詢請求結果。
CA服務器3,用于接收、審核新用戶的個人數(shù)字證書請求、為審核通過的用戶頒發(fā)個人數(shù)字證書、撤銷和更新失效的個人數(shù)字證書。
客戶端4,與認證服務器1、文件服務器2、CA服務器3連接,用于合法用戶的登錄、用于已登錄用戶上傳或下載個人文件、用于新用戶申請個人數(shù)字證書等功能。
下面結合具體實施例對本發(fā)明的應用原理作進一步的描述。
本發(fā)明實施例的基于混合加密體制的文件云存儲加密系統(tǒng)的使用包括以下幾個步驟:
步驟一,用戶注冊SafeCloud賬號,用戶獲得云存儲服務,在注冊過程中,可根據(jù)用戶需求,設立存儲配額,交由管理員審批方能使用。
云存儲底層采用的是Hadoop存儲架構,該存儲系統(tǒng)支持分布式存儲,并且支持門限存儲:即n臺機子作為存儲節(jié)點,只要有n/2臺以上的機器正常運轉,文件就可恢復。
步驟二,用戶通過遞交申請,CA批準后,獲得個人的數(shù)字證書(包括根證書)和對應的私鑰。
用戶可將證書與私鑰放于指定位置,即可實現(xiàn)后續(xù)對文件的加密解密操作。也可點擊打開證書、私鑰,實現(xiàn)對證書、私鑰的安裝。
步驟三,用戶根據(jù)自己需求上傳文件明文或者密文,享受安全的云存儲服務。同時用戶可依據(jù)自身的需求,對自己的好友分享明文或者密文。
用戶可以對云端的文件或者文件夾進行刪除,重命名,復制,剪切,查看屬性等操作。
用戶可對本地的文件或者文件夾可進行刪除,重命名,加密,分享,上傳,壓縮解壓,屬性查看等操作。
在文件加密時,首先,取時間值與內(nèi)存狀態(tài)值信息為隨機數(shù)種子,對該種子進行Hash操作,生成初始化密鑰種子,將該密鑰種子輸入函數(shù),生成初始化會話密鑰。用該密鑰進行DES加密。加密后再用用戶自身證書中的公鑰對DES會話密鑰進行加密,將加密后的128bit密鑰與原文件一同拼接成一個大的文件,將此生成的文件上傳至云服務器。
在文件加密中,會話密鑰需要用證書進行加密,在加密的過程中,需要驗證證書鏈的可靠性。
在分享文件時,明文分享與郵件添加聯(lián)系人文件分享機制相同,在分享文件的時候會在對方的云存儲根目錄下建立一個SHAREFILES的文件夾,該文件夾下,有一個與自身用戶名對應的目錄,該目錄存放的是用戶分享給對方的文件。下面將該文件夾叫做目標文件夾。
首先,取時間值與內(nèi)存狀態(tài)值信息為隨機數(shù)種子,對該種子進行Hash操作,生成初始化密鑰種子,將該密鑰種子輸入函數(shù),生成初始化會話密鑰。用該密鑰進行DES加密。加密后再用用戶對方證書中的公鑰對DES會話密鑰進行加密,將加密后的128bit密鑰與原文件一同拼接成一個大的文件,刪除源文件。完成加密操作。將該文件投至目標文件夾下。
步驟四,用戶自身下載加密文件,或者取用對方分享過來的密文的時候,需要輸入口令對源文件進行解密。
為了保證私鑰的安全性,本發(fā)明采用了以下機制:
1.私鑰受口令保護。
2.口令有輸入限制,輸入錯誤連續(xù)3次則永久銷毀私鑰。
3.私鑰可存放于OTG移動設備中,實現(xiàn)了私鑰與設備分離,當需要解密文件時候,在手機上插入U盤,可自動檢索私鑰位置,輸入口令后,完成解密操作。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。