本發(fā)明涉及通信技術(shù)領(lǐng)域,特別是涉及一種文件處理方法和裝置。
背景技術(shù):
隨著網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,用戶可以將個人電腦、移動終端等設(shè)備中的本地數(shù)據(jù)上傳至云服務(wù)器,利用云服務(wù)器存儲個人數(shù)據(jù),用戶可以隨時隨地通過網(wǎng)絡(luò)對存儲在云服務(wù)器中的數(shù)據(jù)進(jìn)行瀏覽、下載、修改等操作,為用戶帶來極大的便利。
目前,某些非法用戶為了非法獲取云服務(wù)器中的數(shù)據(jù),對云服務(wù)器的接口進(jìn)行攻擊,而云服務(wù)器的接口一旦遭受攻擊將會導(dǎo)致云服務(wù)器中存儲的用戶數(shù)據(jù)泄露或者丟失。因此,為了保證用戶數(shù)據(jù)的保密性和安全性,云服務(wù)器會對用戶上傳的數(shù)據(jù)進(jìn)行加密存儲。
發(fā)明人在實施本發(fā)明的過程中發(fā)現(xiàn),現(xiàn)有的云服務(wù)器通常采用統(tǒng)一的加密算法對云服務(wù)器中的數(shù)據(jù)進(jìn)行加密存儲,一旦該統(tǒng)一的加密算法被破解,則云服務(wù)器中的所有數(shù)據(jù)都將面臨泄露或者丟失的風(fēng)險,為用戶數(shù)據(jù)帶來安全隱患。
技術(shù)實現(xiàn)要素:
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的一種文件處理方法和裝置。
依據(jù)本發(fā)明的一個方面,提供了一種文件處理方法,包括:
生成原始文件對應(yīng)的種子信息;
根據(jù)所述種子信息對所述原始文件進(jìn)行加密處理,得到所述原始文件對應(yīng)的加密文件;
將所述種子信息封裝在所述加密文件的報文頭中,存儲封裝后的加密文件。
可選地,所述根據(jù)所述種子信息對所述原始文件進(jìn)行加密處理,得到所述原始文件對應(yīng)的加密文件的步驟,包括:
根據(jù)所述種子信息生成所述原始文件對應(yīng)的加密秘鑰;
利用所述加密秘鑰,按照預(yù)置加密算法對所述原始文件進(jìn)行加密處理,得到加密文件。
可選地,所述根據(jù)所述種子信息生成所述原始文件對應(yīng)的加密秘鑰的步驟,包括:
對所述種子信息進(jìn)行加鹽處理;
對加鹽處理后的種子信息進(jìn)行消息摘要算法第五版MD5散列處理,得到對應(yīng)的散列值;
按照預(yù)置規(guī)則對所述散列值進(jìn)行移位運算和/或預(yù)置位替換處理,得到加密秘鑰。
可選地,所述方法還包括:
對所述加密文件進(jìn)行解析,得到所述加密文件對應(yīng)的種子信息;
根據(jù)所述種子信息對所述加密文件進(jìn)行解密處理,得到原始文件;
發(fā)送所述原始文件。
可選地,所述對所述加密文件進(jìn)行解析,得到所述加密文件對應(yīng)的種子信息的步驟,包括:
對所述加密文件進(jìn)行解析,得到所述加密文件的報文頭信息;
從所述報文頭信息中讀取所述加密文件的種子信息。
可選地,所述根據(jù)所述種子信息對所述加密文件進(jìn)行解密處理,得到原始文件的步驟,包括:
根據(jù)所述種子信息生成所述原始文件對應(yīng)的解密秘鑰;
利用所述解密秘鑰,按照預(yù)置解密算法對所述加密文件進(jìn)行解密處理,得到原始文件。
可選地,所述種子信息為通過隨機(jī)數(shù)生成算法生成的隨機(jī)數(shù)。
可選地,所述方法應(yīng)用于云代理服務(wù)器,所述方法還包括:
將封裝后的所述加密文件發(fā)送至云服務(wù)器。
根據(jù)本發(fā)明的另一方面,提供了一種文件處理裝置,包括:
種子生成模塊,用于生成原始文件對應(yīng)的種子信息;
文件加密模塊,用于根據(jù)所述種子信息對所述原始文件進(jìn)行加密處理,得到所述原始文件對應(yīng)的加密文件;
封裝存儲模塊,用于將所述種子信息封裝在所述加密文件的報文頭中,存儲封裝后的加密文件。
可選地,所述文件加密模塊,包括:
加密密鑰生成子模塊,用于根據(jù)所述種子信息生成所述原始文件對應(yīng)的加密秘鑰;
加密子模塊,用于利用所述加密秘鑰,按照預(yù)置加密算法對所述原始文件進(jìn)行加密處理,得到加密文件。
可選地,所述加密密鑰生成子模塊,包括:
加鹽處理單元,用于對所述種子信息進(jìn)行加鹽處理;
散列處理單元,用于對加鹽處理后的種子信息進(jìn)行消息摘要算法第五版MD5散列處理,得到對應(yīng)的散列值;
移位替換單元,用于按照預(yù)置規(guī)則對所述散列值進(jìn)行移位運算和/或預(yù)置位替換處理,得到加密秘鑰。
可選地,所述裝置還包括:
文件解析模塊,用于對所述加密文件進(jìn)行解析,得到所述加密文件對應(yīng)的種子信息;
文件解密模塊,用于根據(jù)所述種子信息對所述加密文件進(jìn)行解密處理,得到原始文件;
第一發(fā)送模塊,用于發(fā)送所述原始文件。
可選地,所述文件解析模塊,包括:
解析子模塊,用于對所述加密文件進(jìn)行解析,得到所述加密文件的報文頭信息;
讀取子模塊,用于從所述報文頭信息中讀取所述加密文件的種子信息。
可選地,所述文件解密模塊,包括:
解密密鑰生成子模塊,用于根據(jù)所述種子信息生成所述原始文件對應(yīng)的解密秘鑰;
解密子模塊,用于利用所述解密秘鑰,按照預(yù)置解密算法對所述加密文件進(jìn)行解密處理,得到原始文件。
可選地,所述種子信息為通過隨機(jī)數(shù)生成算法生成的隨機(jī)數(shù)。
可選地,所述裝置應(yīng)用于云代理服務(wù)器,所述裝置還包括:
第二發(fā)送模塊,用于將封裝后的所述加密文件發(fā)送至云服務(wù)器。
根據(jù)本發(fā)明實施例提供的一種文件處理方法和裝置,針對原始文件生成對應(yīng)的種子信息,根據(jù)所述種子信息對所述原始文件進(jìn)行加密處理,得到所述原始文件對應(yīng)的加密文件,由于不同的原始文件可以對應(yīng)不同的種子信息,因此,根據(jù)種子信息對原始文件進(jìn)行加密處理得到的加密文件具有獨立性,即使某一個加密文件被破解,也無法根據(jù)該加密文件的破解方式破解其他的加密文件,從而可以提高云服務(wù)器的信息安全。
此外,本發(fā)明實施例還可以根據(jù)種子信息,對加密文件進(jìn)行封裝并存儲,以建立加密文件與種子信息之間的對應(yīng)關(guān)系,從而可以便捷地對封裝后的加密文件進(jìn)行解析以及解密,以得到原始文件。
上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實施,并且為了讓本發(fā)明的上述和其他目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的具體實施方式。
附圖說明
通過閱讀下文可選實施方式的詳細(xì)描述,各種其他的優(yōu)點和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出可選實施方式的目的,而并不認(rèn)為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
圖1示出了根據(jù)本發(fā)明一個實施例的一種文件處理方法的步驟流程圖;
圖2示出了本發(fā)明的一種包括云代理服務(wù)器的網(wǎng)絡(luò)結(jié)構(gòu)示意圖;
圖3示出了根據(jù)本發(fā)明一個實施例的一種文件處理方法的步驟流程圖;
圖4示出了根據(jù)本發(fā)明一個實施例的一種文件處理方法的步驟流程圖;以及
圖5示出了根據(jù)本發(fā)明一個實施例的一種文件處理裝置的結(jié)構(gòu)框圖。
具體實施方式
下面將參照附圖更詳細(xì)地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應(yīng)當(dāng)理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
方法實施例一
參照圖1,示出了根據(jù)本發(fā)明一個實施例的一種文件處理方法的步驟流程圖,具體可以包括如下步驟:
步驟101、生成原始文件對應(yīng)的種子信息;
本發(fā)明實施例可應(yīng)用于云服務(wù)器的應(yīng)用場景,所述云服務(wù)器可接收用戶通過客戶端上傳的原始文件,并且對所述原始文件進(jìn)行加密并存儲;這樣,在接收到用戶針對云服務(wù)器中存儲的加密文件的訪問請求時,可以對所述加密文件進(jìn)行解密得到原始文件,并返回給用戶??梢岳斫猓鲜鲈品?wù)器的應(yīng)用場景只是作為應(yīng)用實例,實際上本發(fā)明實施例對于具體的應(yīng)用場景不加以限制。
所述原始文件可以包括任意類型的數(shù)據(jù)文件,例如圖片、視頻等。本發(fā)明實施例針對原始文件生成對應(yīng)的種子信息,根據(jù)所述種子信息對原始文件進(jìn)行加密處理,由于不同的原始文件對應(yīng)不同的種子信息,因此,根據(jù)種子信息對原始文件進(jìn)行加密處理得到的加密文件具有獨立性,即使某一個加密文件被破解,也無法根據(jù)該加密文件的破解方式破解其他的加密文件,故可以提高數(shù)據(jù)的安全性。
可選地,本發(fā)明實施例在對于上述種子信息所對應(yīng)原始文件的粒度不加以限制。例如,可以文件為粒度,對每個文件單獨生成一個種子信息,進(jìn)而對每個文件根據(jù)其對應(yīng)的種子信息單獨進(jìn)行加密處理?;蛘?,以目錄為粒度,對某個目錄下的所有文件生成一個種子信息,進(jìn)而對該目錄下的所有文件根據(jù)該種子信息統(tǒng)一進(jìn)行加密處理。
在本發(fā)明的一種可選實施例中,所述種子信息可以為通過隨機(jī)數(shù)生成算法生成的隨機(jī)數(shù),以保證不同原始文件對應(yīng)不同的種子信息。具體地,在接收到用戶上傳的原始文件后,可以按照預(yù)設(shè)的隨機(jī)數(shù)生成算法生成隨機(jī)數(shù)作為該原始文件對應(yīng)的種子信息。當(dāng)然,能夠保證種子信息具有隨機(jī)性和唯一性的任意種子生成算法均在本發(fā)明實施例的保護(hù)范圍之內(nèi)。
步驟102、根據(jù)所述種子信息對所述原始文件進(jìn)行加密處理,得到所述原始文件對應(yīng)的加密文件;
在本發(fā)明的一種可選實施例中,所述根據(jù)所述種子信息對所述原始文件進(jìn)行加密處理,得到所述原始文件對應(yīng)的加密文件的步驟,具體可以包括:
步驟S11、根據(jù)所述種子信息生成所述原始文件對應(yīng)的加密秘鑰;
本發(fā)明實施例根據(jù)種子信息生成所述原始文件對應(yīng)的加密秘鑰,使得不同的原始文件可以對應(yīng)不同的加密秘鑰,即使某一個加密秘鑰被破解,也不會影響其他的加密秘鑰,可以提高加密秘鑰破解的難度,進(jìn)而可以提高加密秘鑰的安全性。
在本發(fā)明的一種實施例中,可以直接對種子信息進(jìn)行MD5(Message Digest Algorithm,消息摘要算法第五版)處理得到散列值,并且將該散列值作為加密秘鑰,其中,MD5作為不可逆的加密方法,較為安全,但是如果單獨采用MD5算法,對于長度較短的種子信息仍然存在被彩虹表破解的風(fēng)險。
針對上述長度較短的種子信息存在的被彩虹表破解的風(fēng)險,在本發(fā)明的另一種可選實施例中,所述根據(jù)所述種子信息生成所述原始文件對應(yīng)的加密秘鑰的步驟,具體可以包括:
步驟S111、對所述種子信息進(jìn)行加鹽處理;
本發(fā)明實施例在對種子信息進(jìn)行MD5散列處理之前,先對種子信息進(jìn)行加鹽處理,也即,在種子信息較短的情況下,可以在該種子信息后加上一段較長的字符串,這段字符串可以稱為“鹽”,然后再對加鹽處理后的種子信息計算MD5對應(yīng)的散列值,將能增加種子信息的反推難度,進(jìn)而可以提高加密秘鑰的安全性。
步驟S112、對加鹽處理后的種子信息進(jìn)行消息摘要算法第五版MD5散列處理,得到對應(yīng)的散列值;
步驟S113、按照預(yù)置規(guī)則對所述散列值進(jìn)行移位運算和/或預(yù)置位替換處理,得到加密秘鑰。
通過對種子信息進(jìn)行加鹽處理以及MD5散列處理之后,得到的散列值可以作為加密秘鑰,該加密秘鑰已經(jīng)較為安全,即使非法用戶獲取該加密秘鑰,也難以反推出種子信息。然而,為了防止非法用戶對加密秘鑰通過暴力破解的方式獲取種子信息,本發(fā)明實施例對MD5散列處理后得到的散列值,進(jìn)一步執(zhí)行移位運算以及預(yù)置位替換處理,最終得到更為安全的加密秘鑰,也即,能夠進(jìn)一步提高加密密鑰的安全性,以及進(jìn)一步增加種子信息的反推難度。
其中,所述移位運算是指對所述散列值按二進(jìn)制形式把所有的數(shù)字向左或者向右移動對應(yīng)的位數(shù)。所述預(yù)置位替換指的是對所述散列值按二進(jìn)制形式把其中的某一位替換為預(yù)設(shè)的值,例如將二進(jìn)制的第二位替換為0??梢岳斫?,本發(fā)明實施例對所述散列值進(jìn)行移位運算和/或預(yù)置位替換處理的預(yù)置規(guī)則不加以限制。
在實際應(yīng)用中,本發(fā)明實施例可以先對所述散列值進(jìn)行移位運算后,再對移位運算后的散列值進(jìn)行預(yù)置位替換處理,得到加密秘鑰。或者,還可以選取移位運算和預(yù)置位替換處理中的任意一種對所述散列值進(jìn)行處理,得到加密秘鑰。由此,本發(fā)明實施例的加密秘鑰生成過程較為復(fù)雜,提高了加密秘鑰的安全性。
在本發(fā)明的一種可選實施例中,可以在云服務(wù)器或者云代理服務(wù)器的內(nèi)存中生成所述加密秘鑰,并且生成的加密秘鑰不存儲在磁盤中,以防止非法用戶通過讀取云服務(wù)器或者云代理服務(wù)器的磁盤獲取加密秘鑰,進(jìn)一步保證加密秘鑰的安全性。
步驟S12、利用所述加密秘鑰,按照預(yù)置加密算法對所述原始文件進(jìn)行加密處理,得到加密文件。
其中,所述預(yù)置加密算法可以為AES(Advanced Encryption Standard,高級加密標(biāo)準(zhǔn)),如AES-128。具體地,利用上述生成的加密秘鑰,對原始文件進(jìn)行AES-128加密,得到加密文件。可以理解,本發(fā)明實施例對于所述預(yù)置加密算法的具體種類不加以限制,例如還可以為DEA(Data Encryption Algorithm,數(shù)據(jù)加密算法)、RSA(非對稱加密算法)等。
步驟103、將所述種子信息封裝在所述加密文件的報文頭中,存儲封裝后的加密文件。
本發(fā)明實施例在對原始文件進(jìn)行加密處理得到對應(yīng)的加密文件之后,還可以對加密文件進(jìn)行封裝,具體地,可以對所述加密文件增加自定義的報文頭,將該加密文件對應(yīng)的種子信息封裝在加密文件的報文頭中,以在對該加密文件進(jìn)行解密時,可以獲取該加密文件對應(yīng)的種子信息,進(jìn)而對加密文件進(jìn)行解密得到對應(yīng)的原始文件。
綜上,本發(fā)明實施例對原始文件生成對應(yīng)的種子信息,根據(jù)所述種子信息對所述原始文件進(jìn)行加密處理,得到所述原始文件對應(yīng)的加密文件,由于不同的原始文件可以對應(yīng)不同的種子信息,因此,根據(jù)種子信息對原始文件進(jìn)行加密處理得到的加密文件具有獨立性,即使某一個加密文件被破解,也無法根據(jù)該加密文件的破解方式破解其他的加密文件,從而可以提高云服務(wù)器的信息安全。
此外,本發(fā)明實施例還可以根據(jù)種子信息,對加密文件進(jìn)行封裝并存儲,以建立加密文件與種子信息之間的對應(yīng)關(guān)系,從而可以便捷地對封裝后的加密文件進(jìn)行解析以及解密,以得到原始文件。
方法實施例二
為了進(jìn)一步提高云服務(wù)器的信息安全,本發(fā)明實施例還可以應(yīng)用于云代理服務(wù)器,如Nginx服務(wù)器等。參照圖2,示出了本發(fā)明的一種包括云代理服務(wù)器的網(wǎng)絡(luò)結(jié)構(gòu)示意圖,所述云代理服務(wù)器202連接在客戶端201和云服務(wù)器203之間。
參照圖3,示出了根據(jù)本發(fā)明一個實施例的一種文件處理方法的步驟流程圖,具體可以包括如下步驟:
步驟301、生成原始文件對應(yīng)的種子信息;
步驟302、根據(jù)所述種子信息對所述原始文件進(jìn)行加密處理,得到所述原始文件對應(yīng)的加密文件;
步驟303、將所述種子信息封裝在所述加密文件的報文頭中;
步驟304、將封裝后的所述加密文件發(fā)送至云服務(wù)器進(jìn)行存儲。
在本發(fā)明實施例中,所述云代理服務(wù)器可以接收用戶通過客戶端上傳的原始文件,并且利用本發(fā)明提供的文件處理方法對所述原始文件進(jìn)行加密以及封裝處理,得到封裝后的加密文件,最后將所述封裝后的加密文件發(fā)送至云服務(wù)器進(jìn)行存儲。
當(dāng)所述云代理服務(wù)器接收到用戶針對云服務(wù)器中的數(shù)據(jù)的訪問請求時,所述云代理服務(wù)器可以從云服務(wù)器中獲取該用戶請求的封裝后的加密文件,所述云代理服務(wù)器對所述封裝后的加密文件進(jìn)行解析以及解密處理,得到對應(yīng)的原始文件,再將該原始文件返回給用戶。
本發(fā)明實施例通過云代理服務(wù)器接收用戶上傳的原始文件,并且通過云代理服務(wù)器對所述原始文件進(jìn)行加密以及封裝,最后將封裝后的加密文件上傳至云服務(wù)器進(jìn)行存儲。雖然用戶數(shù)據(jù)仍然存儲在云服務(wù)器中,但是用戶只能通過云代理服務(wù)器間接訪問云服務(wù)器中存儲的數(shù)據(jù),而不能直接訪問云服務(wù)器,從而可以進(jìn)一步提高云服務(wù)器的信息安全。
方法實施例三
本實施例應(yīng)用于云代理服務(wù)器,并且將用戶上傳的原始文件進(jìn)行加密以及封裝處理后,保存在云代理服務(wù)器中,通過云代理服務(wù)器和用戶進(jìn)行數(shù)據(jù)交互。參照圖4,示出了根據(jù)本發(fā)明一個實施例的一種文件處理方法的步驟流程圖,具體可以包括如下步驟:
步驟401、生成原始文件對應(yīng)的種子信息;
步驟402、根據(jù)所述種子信息對所述原始文件進(jìn)行加密處理,得到所述原始文件對應(yīng)的加密文件;
步驟403、將所述種子信息封裝在所述加密文件的報文頭中,存儲封裝后的加密文件;
步驟404、對所述加密文件進(jìn)行解析,得到所述加密文件對應(yīng)的種子信息;
在本發(fā)明的一種可選實施例中,所述對所述加密文件進(jìn)行解析,得到所述加密文件對應(yīng)的種子信息的步驟,具體可以包括:
步驟S31、對所述加密文件進(jìn)行解析,得到所述加密文件的報文頭信息;
步驟S32、從所述報文頭信息中讀取所述加密文件的種子信息。
步驟405、根據(jù)所述種子信息對所述加密文件進(jìn)行解密處理,得到原始文件;
步驟406、發(fā)送所述原始文件。
在本發(fā)明的一種可選實施例中,所述根據(jù)所述種子信息對所述加密文件進(jìn)行解密處理,得到原始文件的步驟,具體可以包括:
步驟S41、根據(jù)所述種子信息生成所述原始文件對應(yīng)的解密秘鑰;
步驟S42、利用所述解密秘鑰,按照預(yù)置解密算法對所述加密文件進(jìn)行解密處理,得到原始文件。
在本發(fā)明實施例中,在對加密文件進(jìn)行解密的過程中,對解析得到的種子信息按照與生成加密秘鑰相同的算法進(jìn)行計算,以得到解密秘鑰,進(jìn)而可以根據(jù)所述解密秘鑰對加密文件進(jìn)行解密處理,得到原始文件,其中,所述預(yù)置解密算法與預(yù)置加密算法相同。
可選地,由于加密秘鑰和解密秘鑰的生成方法相同,因此,還可以直接利用加密秘鑰對所述加密文件進(jìn)行解密處理。為了保證解密的準(zhǔn)確性,本發(fā)明實施例根據(jù)所述種子信息生成所述原始文件對應(yīng)的解密秘鑰,并且對所述加密秘鑰和解密秘鑰進(jìn)行比較,若二者相同,則說明加密文件合法,可以對該加密文件進(jìn)行解密;否則,說明加密文件不合法,則拒絕對該加密文件進(jìn)行解密,以避免向用戶發(fā)送解密錯誤的文件。
綜上,本發(fā)明實施例可應(yīng)用于云代理服務(wù)器,并且將用戶上傳的原始文件進(jìn)行加密以及封裝處理后,保存在云代理服務(wù)器中,在所述云代理服務(wù)器接收到用戶針對數(shù)據(jù)的訪問請求時,云代理服務(wù)器可以直接對該用戶請求的封裝后的加密文件進(jìn)行解析以及解密,得到原始文件并發(fā)送給用戶,云代理服務(wù)器不用與云服務(wù)器進(jìn)行交互,從而可以提高數(shù)據(jù)傳輸?shù)男剩⑶覝p輕云服務(wù)器的負(fù)擔(dān)。
裝置實施例
參照圖5,示出了根據(jù)本發(fā)明一個實施例的一種文件處理裝置的結(jié)構(gòu)框圖,具體可以包括如下模塊:
種子生成模塊501,用于生成原始文件對應(yīng)的種子信息;
文件加密模塊502,用于根據(jù)所述種子信息對所述原始文件進(jìn)行加密處理,得到所述原始文件對應(yīng)的加密文件;
封裝存儲模塊503,用于將所述種子信息封裝在所述加密文件的報文頭中,存儲封裝后的加密文件。
在本發(fā)明的一種可選實施例中,所述文件加密模塊502,具體可以包括:
加密密鑰生成子模塊,用于根據(jù)所述種子信息生成所述原始文件對應(yīng)的加密秘鑰;
加密子模塊,用于利用所述加密秘鑰,按照預(yù)置加密算法對所述原始文件進(jìn)行加密處理,得到加密文件。
在本發(fā)明的另一種可選實施例中,所述加密密鑰生成子模塊,具體可以包括:
加鹽處理單元,用于對所述種子信息進(jìn)行加鹽處理;
散列處理單元,用于對加鹽處理后的種子信息進(jìn)行消息摘要算法第五版MD5散列處理,得到對應(yīng)的散列值;
移位替換單元,用于按照預(yù)置規(guī)則對所述散列值進(jìn)行移位運算和/或預(yù)置位替換處理,得到加密秘鑰。
在本發(fā)明的又一種可選實施例中,所述裝置還可以包括:
文件解析模塊,用于對所述加密文件進(jìn)行解析,得到所述加密文件對應(yīng)的種子信息;
文件解密模塊,用于根據(jù)所述種子信息對所述加密文件進(jìn)行解密處理,得到原始文件;
第一發(fā)送模塊,用于發(fā)送所述原始文件。
在本發(fā)明的再一種可選實施例中,所述文件解析模塊,具體可以包括:
解析子模塊,用于對所述加密文件進(jìn)行解析,得到所述加密文件的報文頭信息;
讀取子模塊,用于從所述報文頭信息中讀取所述加密文件的種子信息。
在本發(fā)明的再一種可選實施例中,所述文件解密模塊,具體可以包括:
解密密鑰生成子模塊,用于根據(jù)所述種子信息生成所述原始文件對應(yīng)的解密秘鑰;
解密子模塊,用于利用所述解密秘鑰,按照預(yù)置解密算法對所述加密文件進(jìn)行解密處理,得到原始文件。
在本發(fā)明的再一種可選實施例中,所述種子信息為通過隨機(jī)數(shù)生成算法生成的隨機(jī)數(shù)。
在本發(fā)明的再一種可選實施例中,所述裝置可應(yīng)用于云代理服務(wù)器,所述裝置還可以包括:
第二發(fā)送模塊,用于將封裝后的所述加密文件發(fā)送至云服務(wù)器。
對于裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
在此提供的算法和顯示不與任何特定計算機(jī)、虛擬系統(tǒng)或者其他設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種編程語言實現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實施方式。
在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細(xì)節(jié)的情況下實踐。在一些實例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對本說明書的理解。
類似地,應(yīng)當(dāng)理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循具體實施方式的權(quán)利要求書由此明確地并入該具體實施方式,其中每個權(quán)利要求本身都作為本發(fā)明的單獨實施例。
本領(lǐng)域那些技術(shù)人員可以理解,可以對實施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們設(shè)置在與該實施例不同的一個或多個設(shè)備中??梢园褜嵤├械哪K或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實施例包括其他實施例中所包括的某些特征而不是其他特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實施例的任意之一都可以以任意的組合方式來使用。
本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運行的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實踐中使用微處理器或者數(shù)字信號處理器(DSP)來實現(xiàn)根據(jù)本發(fā)明實施例的文件處理方法和裝置中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計算機(jī)程序和計算機(jī)程序產(chǎn)品)。這樣的實現(xiàn)本發(fā)明的程序可以存儲在計算機(jī)可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網(wǎng)平臺上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
應(yīng)該注意的是上述實施例對本發(fā)明進(jìn)行說明而不是對本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計出替換實施例。在權(quán)利要求中,不應(yīng)將位于括號之間的任何參考符號構(gòu)造成對權(quán)利要求的限制。單詞“包括”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計算機(jī)來實現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
本發(fā)明公開了A1、一種文件處理方法,包括:
生成原始文件對應(yīng)的種子信息;
根據(jù)所述種子信息對所述原始文件進(jìn)行加密處理,得到所述原始文件對應(yīng)的加密文件;
將所述種子信息封裝在所述加密文件的報文頭中,存儲封裝后的加密文件。
A2、如A1所述的方法,所述根據(jù)所述種子信息對所述原始文件進(jìn)行加密處理,得到所述原始文件對應(yīng)的加密文件的步驟,包括:
根據(jù)所述種子信息生成所述原始文件對應(yīng)的加密秘鑰;
利用所述加密秘鑰,按照預(yù)置加密算法對所述原始文件進(jìn)行加密處理,得到加密文件。
A3、如A2所述的方法,所述根據(jù)所述種子信息生成所述原始文件對應(yīng)的加密秘鑰的步驟,包括:
對所述種子信息進(jìn)行加鹽處理;
對加鹽處理后的種子信息進(jìn)行消息摘要算法第五版MD5散列處理,得到對應(yīng)的散列值;
按照預(yù)置規(guī)則對所述散列值進(jìn)行移位運算和/或預(yù)置位替換處理,得到加密秘鑰。
A4、如A1所述的方法,所述方法還包括:
對所述加密文件進(jìn)行解析,得到所述加密文件對應(yīng)的種子信息;
根據(jù)所述種子信息對所述加密文件進(jìn)行解密處理,得到原始文件;
發(fā)送所述原始文件。
A5、如A4所述的方法,所述對所述加密文件進(jìn)行解析,得到所述加密文件對應(yīng)的種子信息的步驟,包括:
對所述加密文件進(jìn)行解析,得到所述加密文件的報文頭信息;
從所述報文頭信息中讀取所述加密文件的種子信息。
A6、如A4所述的方法,所述根據(jù)所述種子信息對所述加密文件進(jìn)行解密處理,得到原始文件的步驟,包括:
根據(jù)所述種子信息生成所述原始文件對應(yīng)的解密秘鑰;
利用所述解密秘鑰,按照預(yù)置解密算法對所述加密文件進(jìn)行解密處理,得到原始文件。
A7、如A1至A6中任一所述的方法,所述種子信息為通過隨機(jī)數(shù)生成算法生成的隨機(jī)數(shù)。
A8、如A1所述的方法,所述方法應(yīng)用于云代理服務(wù)器,所述方法還包括:
將封裝后的所述加密文件發(fā)送至云服務(wù)器。
本發(fā)明公開了B9、一種文件處理裝置,包括:
種子生成模塊,用于生成原始文件對應(yīng)的種子信息;
文件加密模塊,用于根據(jù)所述種子信息對所述原始文件進(jìn)行加密處理,得到所述原始文件對應(yīng)的加密文件;
封裝存儲模塊,用于將所述種子信息封裝在所述加密文件的報文頭中,存儲封裝后的加密文件。
B10、如B9所述的裝置,所述文件加密模塊,包括:
加密密鑰生成子模塊,用于根據(jù)所述種子信息生成所述原始文件對應(yīng)的加密秘鑰;
加密子模塊,用于利用所述加密秘鑰,按照預(yù)置加密算法對所述原始文件進(jìn)行加密處理,得到加密文件。
B11、如B10所述的裝置,所述加密密鑰生成子模塊,包括:
加鹽處理單元,用于對所述種子信息進(jìn)行加鹽處理;
散列處理單元,用于對加鹽處理后的種子信息進(jìn)行消息摘要算法第五版MD5散列處理,得到對應(yīng)的散列值;
移位替換單元,用于按照預(yù)置規(guī)則對所述散列值進(jìn)行移位運算和/或預(yù)置位替換處理,得到加密秘鑰。
B12、如B9所述的裝置,所述裝置還包括:
文件解析模塊,用于對所述加密文件進(jìn)行解析,得到所述加密文件對應(yīng)的種子信息;
文件解密模塊,用于根據(jù)所述種子信息對所述加密文件進(jìn)行解密處理,得到原始文件;
第一發(fā)送模塊,用于發(fā)送所述原始文件。
B13、如B12所述的裝置,所述文件解析模塊,包括:
解析子模塊,用于對所述加密文件進(jìn)行解析,得到所述加密文件的報文頭信息;
讀取子模塊,用于從所述報文頭信息中讀取所述加密文件的種子信息。
B14、如B12所述的裝置,所述文件解密模塊,包括:
解密密鑰生成子模塊,用于根據(jù)所述種子信息生成所述原始文件對應(yīng)的解密秘鑰;
解密子模塊,用于利用所述解密秘鑰,按照預(yù)置解密算法對所述加密文件進(jìn)行解密處理,得到原始文件。
B15、如B9至B14中任一所述的裝置,所述種子信息為通過隨機(jī)數(shù)生成算法生成的隨機(jī)數(shù)。
B16、如B9所述的裝置,所述裝置應(yīng)用于云代理服務(wù)器,所述裝置還包括:
第二發(fā)送模塊,用于將封裝后的所述加密文件發(fā)送至云服務(wù)器。