本申請涉及計算機,特別是涉及一種數(shù)據(jù)存儲、讀取方法及數(shù)據(jù)存儲、讀取裝置、設(shè)備、介質(zhì)。
背景技術(shù):
1、隨著云計算技術(shù)的成熟和廣泛應(yīng)用,云平臺提供的對象存儲服務(wù)因其高彈性、良好的可擴展性和低成本等優(yōu)勢,正被越來越多的用戶所采納。然而,伴隨云上數(shù)據(jù)量的爆炸式增長,用戶對于數(shù)據(jù)安全性的擔(dān)憂也日益加劇。除了基本的存儲可靠性和服務(wù)可用性,數(shù)據(jù)的機密性已成為用戶最關(guān)心的重點問題之一,即如何確保存儲在云端的私有數(shù)據(jù)不被未經(jīng)授權(quán)的第三方竊取或濫用。
2、在這種背景下,對對象存儲中的數(shù)據(jù)進行有效加密,成為保護數(shù)據(jù)機密性和用戶隱私的迫切需求。
技術(shù)實現(xiàn)思路
1、基于此,有必要針對上述技術(shù)問題,提供一種能夠提高數(shù)據(jù)存儲安全性的數(shù)據(jù)存儲、讀取方法及數(shù)據(jù)存儲、讀取裝置、設(shè)備、介質(zhì)。
2、第一方面,本申請?zhí)峁┝艘环N數(shù)據(jù)存儲方法,應(yīng)用于加密中間件,包括:
3、接收來自應(yīng)用程序的數(shù)據(jù)寫入請求;所述數(shù)據(jù)寫入請求包括目標(biāo)寫入地址和明文寫數(shù)據(jù);所述目標(biāo)寫入地址是所述加密中間件預(yù)先掛載于所述應(yīng)用節(jié)點內(nèi)的掛載地址的子地址;
4、基于所述數(shù)據(jù)寫入請求的所述明文寫數(shù)據(jù),確定所述數(shù)據(jù)寫入請求的待存儲數(shù)據(jù);所述待存儲數(shù)據(jù)包括所述明文寫數(shù)據(jù)經(jīng)加密后的密文寫數(shù)據(jù)和所述密文寫數(shù)據(jù)對應(yīng)的存儲標(biāo)識數(shù)據(jù);
5、向云存儲系統(tǒng)發(fā)送所述待存儲數(shù)據(jù),以使所述云存儲系統(tǒng)基于所述存儲標(biāo)識數(shù)據(jù)存儲所述密文寫數(shù)據(jù)。
6、在其中一個實施例中,所述基于所述數(shù)據(jù)寫入請求的所述明文寫數(shù)據(jù),確定所述數(shù)據(jù)寫入請求的待存儲數(shù)據(jù),包括:
7、基于預(yù)設(shè)的分塊策略對所述明文寫數(shù)據(jù)進行處理,得到多個明文寫數(shù)據(jù)塊;
8、采用多個加密線程分別對多個所述明文寫數(shù)據(jù)塊進行并行的加密處理,得到多個密文寫數(shù)據(jù)塊;
9、結(jié)合多個所述密文寫數(shù)據(jù)塊和多個所述密文寫數(shù)據(jù)塊分別對應(yīng)的多個存儲標(biāo)識數(shù)據(jù),確定所述待存儲數(shù)據(jù)。
10、在其中一個實施例中,所述數(shù)據(jù)寫入請求還包括身份標(biāo)識數(shù)據(jù);所述方法還包括:
11、向所述云存儲系統(tǒng)發(fā)送所述身份標(biāo)識數(shù)據(jù),以使所述云存儲系統(tǒng)在所述身份標(biāo)識數(shù)據(jù)滿足存儲權(quán)限的條件下,存儲所述待存儲數(shù)據(jù)至所述身份標(biāo)識數(shù)據(jù)對應(yīng)的目標(biāo)存儲區(qū)域;所述云存儲系統(tǒng)存儲有身份標(biāo)識和存儲區(qū)域之間的對應(yīng)關(guān)系。
12、第二方面,本申請還提供了一種數(shù)據(jù)讀取方法,應(yīng)用于加密中間件,所述方法包括:
13、響應(yīng)于來自應(yīng)用程序的數(shù)據(jù)讀取請求,獲取所述數(shù)據(jù)讀取請求對應(yīng)的存儲標(biāo)識數(shù)據(jù);所述數(shù)據(jù)讀取請求至少包括目標(biāo)讀取地址;所述目標(biāo)讀取地址是所述加密中間件預(yù)先掛載于所述應(yīng)用節(jié)點內(nèi)的掛載地址的子地址;所述加密中間件預(yù)先存儲有讀取地址和存儲標(biāo)識之間的映射關(guān)系;
14、基于所述存儲標(biāo)識數(shù)據(jù),從云存儲系統(tǒng)中獲取與所述存儲標(biāo)識數(shù)據(jù)匹配的密文讀數(shù)據(jù);
15、向所述應(yīng)用程序發(fā)送所述密文讀數(shù)據(jù)經(jīng)解密后的明文讀數(shù)據(jù)。
16、在其中一個實施例中,所述基于所述存儲標(biāo)識數(shù)據(jù),從云存儲系統(tǒng)中獲取與所述存儲標(biāo)識數(shù)據(jù)匹配的密文讀數(shù)據(jù),包括:
17、當(dāng)所述存儲標(biāo)識數(shù)據(jù)有多個時,從所述云存儲系統(tǒng)中獲取與多個所述存儲標(biāo)識數(shù)據(jù)匹配的多個密文數(shù)據(jù)塊;
18、根據(jù)多個所述密文數(shù)據(jù)塊,得到所述密文讀數(shù)據(jù)。
19、在其中一個實施例中,所述基于所述存儲標(biāo)識數(shù)據(jù),從云存儲系統(tǒng)中獲取與所述存儲標(biāo)識數(shù)據(jù)匹配的密文讀數(shù)據(jù)之后,包括:
20、采用多個解密線程分別對多個所述密文數(shù)據(jù)塊進行并行的解密處理,得到多個明文數(shù)據(jù)塊;
21、結(jié)合多個所述明文數(shù)據(jù)塊得到所述明文讀數(shù)據(jù)。
22、第三方面,本申請還提供了一種數(shù)據(jù)存儲裝置,包括:
23、存儲接收模塊,用于接收來自應(yīng)用程序的數(shù)據(jù)寫入請求;所述數(shù)據(jù)寫入請求包括目標(biāo)寫入地址和明文寫數(shù)據(jù);所述目標(biāo)寫入地址是所述加密中間件預(yù)先掛載于所述應(yīng)用節(jié)點內(nèi)的掛載地址的子地址;
24、存儲確定模塊,用于基于所述數(shù)據(jù)寫入請求的所述明文寫數(shù)據(jù),確定所述數(shù)據(jù)寫入請求的待存儲數(shù)據(jù);所述待存儲數(shù)據(jù)包括所述明文寫數(shù)據(jù)經(jīng)加密后的密文寫數(shù)據(jù)和所述密文寫數(shù)據(jù)對應(yīng)的存儲標(biāo)識數(shù)據(jù);
25、存儲發(fā)送模塊,用于向云存儲系統(tǒng)發(fā)送所述待存儲數(shù)據(jù),以使所述云存儲系統(tǒng)基于所述存儲標(biāo)識數(shù)據(jù)存儲所述密文寫數(shù)據(jù)。
26、第四方面,本申請還提供了一種數(shù)據(jù)讀取裝置,包括:
27、讀取獲取模塊,用于響應(yīng)于來自應(yīng)用程序的數(shù)據(jù)讀取請求,獲取所述數(shù)據(jù)讀取請求對應(yīng)的存儲標(biāo)識數(shù)據(jù);所述數(shù)據(jù)讀取請求至少包括目標(biāo)讀取地址;所述目標(biāo)讀取地址是所述加密中間件預(yù)先掛載于所述應(yīng)用節(jié)點內(nèi)的掛載地址的子地址;所述加密中間件預(yù)先存儲有讀取地址和存儲標(biāo)識之間的映射關(guān)系;
28、讀取密文模塊,用于基于所述存儲標(biāo)識數(shù)據(jù),從云存儲系統(tǒng)中獲取與所述存儲標(biāo)識數(shù)據(jù)匹配的密文讀數(shù)據(jù);
29、讀取發(fā)送模塊,用于向所述應(yīng)用程序發(fā)送所述密文讀數(shù)據(jù)經(jīng)解密后的明文讀數(shù)據(jù)。
30、第五方面,本申請還提供了一種計算機設(shè)備,包括存儲器和處理器,所述存儲器存儲有計算機程序,所述處理器執(zhí)行所述計算機程序時實現(xiàn)本申請第一方面提供的數(shù)據(jù)存儲方法的步驟或本申請第二方面提供的數(shù)據(jù)讀取方法的步驟。
31、第六方面,本申請還提供了一種計算機可讀存儲介質(zhì),其上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)本申請第一方面提供的數(shù)據(jù)存儲方法的步驟或本申請第二方面提供的數(shù)據(jù)讀取方法的步驟。
32、第七方面,本申請還提供了一種計算機程序產(chǎn)品,包括計算機程序,該計算機程序被處理器執(zhí)行時實現(xiàn)本申請第一方面提供的數(shù)據(jù)存儲方法的步驟或本申請第二方面提供的數(shù)據(jù)讀取方法的步驟。
33、上述數(shù)據(jù)存儲、讀取方法及數(shù)據(jù)存儲、讀取裝置、設(shè)備、介質(zhì),加密中間件預(yù)先將掛載地址掛載于應(yīng)用節(jié)點,當(dāng)應(yīng)用程序向該掛載地址的子地址請求寫入數(shù)據(jù)時,加密中間件接收來自應(yīng)用程序的數(shù)據(jù)寫入請求,基于所述數(shù)據(jù)寫入請求的所述明文寫數(shù)據(jù),確定所述數(shù)據(jù)寫入請求的待存儲數(shù)據(jù),該待存儲數(shù)據(jù)包括所述明文寫數(shù)據(jù)經(jīng)加密后的密文寫數(shù)據(jù)和所述密文寫數(shù)據(jù)對應(yīng)的存儲標(biāo)識數(shù)據(jù),加密中間件向云存儲系統(tǒng)發(fā)送所述待存儲數(shù)據(jù),以使所述云存儲系統(tǒng)基于所述存儲標(biāo)識數(shù)據(jù)存儲所述密文寫數(shù)據(jù)。本申請通過在應(yīng)用節(jié)點內(nèi)設(shè)置加密中間件,加密中間件通過掛載地址將對象存儲掛載為本地路徑,應(yīng)用程序可以通過明文向該本地路徑寫入數(shù)據(jù),加密中間件通過掛載地址接收應(yīng)用程序的數(shù)據(jù)寫入請求,并對明文寫數(shù)據(jù)進行加密后得到密文寫數(shù)據(jù),加密中間件將密文寫數(shù)據(jù)和密文寫數(shù)據(jù)對應(yīng)的存儲標(biāo)識數(shù)據(jù)發(fā)送至云存儲系統(tǒng)的對象存儲服務(wù),以使云存儲系統(tǒng)基于所述存儲標(biāo)識數(shù)據(jù)存儲所述密文寫數(shù)據(jù)。通過在應(yīng)用節(jié)點內(nèi)構(gòu)建加密保護中間件,在不侵入修改應(yīng)用程序的前提下,實現(xiàn)面向?qū)ο蟠鎯Φ募用鼙Wo功能,確保明文數(shù)據(jù)不出應(yīng)用節(jié)點,從而保護明文數(shù)據(jù)不被竊取、不被濫用。
1.一種數(shù)據(jù)存儲方法,其特征在于,應(yīng)用于加密中間件,所述加密中間件部署于應(yīng)用節(jié)點;所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于所述數(shù)據(jù)寫入請求的所述明文寫數(shù)據(jù),確定所述數(shù)據(jù)寫入請求的待存儲數(shù)據(jù),包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述數(shù)據(jù)寫入請求還包括身份標(biāo)識數(shù)據(jù);所述方法還包括:
4.一種數(shù)據(jù)讀取方法,其特征在于,應(yīng)用于加密中間件,所述加密中間件部署于應(yīng)用節(jié)點;所述方法包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述基于所述存儲標(biāo)識數(shù)據(jù),從云存儲系統(tǒng)中獲取與所述存儲標(biāo)識數(shù)據(jù)匹配的密文讀數(shù)據(jù),包括:
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述基于所述存儲標(biāo)識數(shù)據(jù),從云存儲系統(tǒng)中獲取與所述存儲標(biāo)識數(shù)據(jù)匹配的密文讀數(shù)據(jù)之后,包括:
7.一種數(shù)據(jù)存儲裝置,其特征在于,應(yīng)用于加密中間件,所述加密中間件部署于應(yīng)用節(jié)點;所述裝置包括:
8.一種數(shù)據(jù)讀取裝置,其特征在于,應(yīng)用于加密中間件,所述加密中間件部署于應(yīng)用節(jié)點;所述裝置包括:
9.一種計算機設(shè)備,包括存儲器和處理器,所述存儲器存儲有計算機程序,其特征在于,所述處理器執(zhí)行所述計算機程序時實現(xiàn)權(quán)利要求1至6中任一項所述的方法的步驟。
10.一種計算機可讀存儲介質(zhì),其上存儲有計算機程序,其特征在于,所述計算機程序被處理器執(zhí)行時實現(xiàn)權(quán)利要求1至6中任一項所述的方法的步驟。