電子文件加密解密方法、裝置和系統與流程
2023-12-08 22:47:31 2
本申請涉及數據處理
技術領域:
,尤其涉及一種電子文件加密解密方法、裝置和系統。
背景技術:
:隨著信息化技術的普及,越來越多的文件資料以電子數據形式(簡稱電子文件)存儲於電子設備之中,這為文件資料的管理帶來很大的便捷。但是,由於計算機環境下存在大量病毒、木馬以及各種惡意攻擊行為,電子文件很容易被竊取或洩密。因此,用於保護電子文件的文件加解密系統應運而生。現有技術中的文件加密系統利用密碼學原理,利用密鑰將電子文件進行加密,只有擁有正確的密鑰才能解密並訪問到加密的電子文件內容。具體地,一種常見的文件加解密方式可以是這樣的:先由客戶端(客戶端程序)向伺服器端發起電子文件加密或解密請求,伺服器端在驗證客戶端權限後將密鑰發送給客戶端,客戶端使用該密鑰對電子文件進行加解密操作,以此確保電子文件的安全。然而,當客戶端均使用一個密鑰對電子文件進行加密的情況下,如果不同電子文件針對的使用對象不同或者要求的安全級別存在差異時,那麼由於使用相同的密鑰,不同的使用對象可以使用相同的密鑰解密本不屬於其範圍內的電子文件。比如,某一部門客戶端的用戶利用一個密鑰對某電子文件進行加密,雖然不希望其它部門進行解密,但也無法阻住其它部門客戶端的解密行為。所以,現有技術針對所有客戶端均使用一個密鑰對電子文件進行加密的方式,導致電子文件的安全性較低。技術實現要素:為解決上述技術問題,本發明實施例提供一種電子文件加密解密方法、裝置和系統,用於提高電子文件的安全性。一種電子文件加密方法,包括:客戶端向伺服器發送電子文件加密請求,所述伺服器存儲有多個密鑰和與每個密鑰一一對應的密鑰標識數據;客戶端接收伺服器發送的密鑰以及與所述發送的密鑰對應的密鑰標識數據,所述發送的密鑰由伺服器從所述多個密鑰中選出;客戶端利用接收到的密鑰加密所述電子文件,並建立加密的電子文件與接收到的密鑰標識數據之間的映射關係。優選地,客戶端向伺服器發送電子文件加密請求之後,所述方法還包括:伺服器判斷客戶端是否具有獲取所述多個密鑰中一個或多個密鑰的權限,其中,所述伺服器存儲有所述多個密鑰中每一個密鑰被允許獲取的權限信息;如果判斷結果為是,則伺服器從所述多個密鑰中選取密鑰。優選地,所述密鑰標識數據由與密鑰標識數據對應的密鑰、密鑰編號以及隨機數按照預設規則計算得出。一種電子文件解密方法,包括:客戶端根據加密的電子文件與密鑰標識數據之間的映射關係獲取密鑰標識數據;客戶端向伺服器發送包含有獲取到的密鑰標識數據的解密請求,所述伺服器存儲有多個密鑰和與每個密鑰一一對應的密鑰標識數據;伺服器根據接收到的密鑰標識數據從所述多個密鑰中選取與所述接收到的密鑰標識數據對應的密鑰,並發送給客戶端;客戶端使用伺服器發送的密鑰對所述加密的電子文件進行解密。優選地,伺服器根據接收到的密鑰標識數據從所述多個密鑰中選取與所述接收到的密鑰標識數據對應的密鑰之後,所述方法還包括:伺服器判斷客戶端是否有獲取選取到的密鑰的權限,其中,所述伺服器存儲有所述多個密鑰中每一個密鑰被允許獲取的權限信息;如果判斷結果為是,則伺服器執行發送密鑰的步驟。優選地,如果判斷結果為否,所述方法還包括:再判斷客戶端是否有獲取第一密鑰的權限,其中所述第一密鑰權限兼容所述選取到的密鑰的權限;如果判斷結果為是,則伺服器向客戶端發送所述第一密鑰,以便客戶端利用所述第一密鑰對所述加密的電子文件進行解密。優選地,所述密鑰標識數據由與密鑰標識數據對應的密鑰、密鑰的編號和隨機數按照預設規則計算得出。一種電子文件加密裝置,包括:第一發送模塊,用於發送電子文件加密請求;第一接收模塊,用於接收第二發送模塊發送的密鑰和密鑰標識數據;加密處理模塊,用於利用第一接收模塊接收到的密鑰加密電子文件,並建立加密的電子文件與接收到的密鑰標識數據之間的映射關係;存儲模塊,用於存儲多個密鑰和與每個密鑰一一對應的密鑰標識數據;選取模塊,用於從存儲模塊的多個密鑰中選出密鑰;第二接收模塊,用於接收第一發送模塊發送的電子文件加密請求;第二發送模塊,用於發送選取模塊選取到的密鑰和與選取到的密鑰對應的密鑰標識數據。優選地,所述電子文件加密裝置還包括:存儲子模塊,用於存儲多個密鑰中每一個密鑰被允許獲取的權限信息;鑑權模塊,用於根據存儲子模塊的存儲信息對第二接收模塊接收到的信息進行鑑權;如果鑑權通過時,則觸發選取模塊。一種電子文件解密裝置,包括:讀取模塊,用於根據加密的電子文件與密鑰標識數據之間的映射關係獲取密鑰標識數據;第三發送模塊,用於發送包含有獲取到的密鑰標識數據的解密請求;接收解密模塊,用於接收第二發送模塊發送的密鑰,並對加密的電子文件進行解密;存儲模塊,用於存儲多個密鑰和與每個密鑰一一對應的密鑰標識數據;選取模塊,用於根據第二接收模塊接收到的密鑰標識數據,從存儲模塊的多個密鑰中選取與所述接收到的密鑰標識數據對應的密鑰;第二接收模塊,用於接收第三發送模塊發送解密請求;第二發送模塊,用於發送選取模塊選出的密鑰。優選地,所述電子文件解密裝置還包括:存儲子模塊,用於存儲多個密鑰中每一個密鑰被允許獲取的權限信息;鑑權模塊,用於根據存儲子模塊的存儲信息對第二接收模塊接收到的信息進行鑑權;如果鑑權通過時,則觸發第二發送模塊。一種電子文件加密解密系統,包括:伺服器和與伺服器相連的客戶端,所述伺服器包括:存儲模塊,第二接收模塊,選取模塊,第二發送模塊;所述客戶端包括:第一發送模塊、第一接收模塊、加密處理模塊,和/或,讀取模塊、第三發送模塊、接收解密模塊;其中,存儲模塊,用於存儲多個密鑰和與每個密鑰一一對應的密鑰標識數據;第二接收模塊,用於接收第一發送模塊發送的電子文件加密請求,和/或,接收第三發送模塊發送的解密請求;第二發送模塊,用於發送選取模塊選取到的密鑰和與選取到的密鑰對應的密鑰標識數據,和/或,發送選取模塊選出的密鑰;選取模塊,用於從存儲模塊的多個密鑰中選出密鑰,和/或,用於根據第二接收模塊接收到的密鑰標識數據,從存儲模塊的多個密鑰中選取與所述接收到 的密鑰標識數據對應的密鑰;第一發送模塊,用於發送電子文件加密請求;第一接收模塊,用於接收第二發送模塊發送的密鑰和密鑰標識數據;加密處理模塊,用於利用第一接收模塊接收到的密鑰加密電子文件,並建立加密的電子文件與接收到的密鑰標識數據之間的映射關係;讀取模塊,用於根據加密的電子文件與密鑰標識數據之間的映射關係獲取密鑰標識數據;第三發送模塊,用於發送包含有獲取到的密鑰標識數據的解密請求;接收解密模塊,用於接收第二發送模塊發送的密鑰,並對加密的電子文件進行解密。優選地,所述系統還包括:存儲子模塊,用於存儲多個密鑰中每一個密鑰被允許獲取的權限信息;鑑權模塊,用於根據存儲子模塊的存儲信息對第二接收模塊接收到的信息進行鑑權;如果鑑權通過時,則觸發選取模塊;或,觸發第二發送模塊。本申請實施例採用的上述至少一個技術方案能夠達到以下有益效果:由於伺服器存儲有多個密鑰,因此,客戶端可以使用多個不同的密鑰分別加密不同的電子文件,使多個客戶端之間的電子文件相互保密,提高了電子文件的安全性。根據與加密的電子文件呈映射關係的密鑰標識數據,伺服器可以識別出加密文件的密鑰,從而調用相應的密鑰分發給客戶端,以便客戶端解密、訪問加密的電子文件,使多個客戶端之間的電子文件相互保密,提高了電子文件的安全性。附圖說明此處所說明的附圖用來提供對本申請的進一步理解,構成本申請的一部分, 本申請的示意性實施例及其說明用於解釋本申請,並不構成對本申請的不當限定。在附圖中:圖1為本申請實施例1提供的一種電子文件加密方法的流程示意圖;圖2為本申請實施例1提供的加密的電子文件結構示意圖;圖3為本申請實施例1提供的密鑰標識數據的生成示意圖;圖4為本申請實施例2提供的一種電子文件解密方法的流程示意圖;圖5為本申請實施例3提供的一種電子文件加密裝置的結構框圖;圖6為本申請實施例4提供的一種電子文件解密裝置的結構框圖;圖7為本申請實施例5提供的一種電子文件加密解密系統結構框圖。具體實施方式為使本申請的目的、技術方案和優點更加清楚,下面將結合本申請具體實施例及相應的附圖對本申請技術方案進行清楚、完整地描述。顯然,所描述的實施例僅是本申請一部分實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本申請保護的範圍。在本申請各實施例中,電子文件可以為在數字設備及環境中生成,以電子數據形式存儲在磁帶、磁碟、光碟等載體中,依靠計算機等電子設備上的客戶端進行閱讀、處理,並可在通信網絡上傳送,客戶端(程序)則一般為與伺服器相對應的、為客戶提供本地服務的程序,一般與服務端互相配合運行。接下來還會提到「多個客戶端」,「多個客戶端」可以理解為多個不同的客戶端,也可以理解為同一客戶端的不同用戶。當多個客戶端為多個不同的客戶端時,例如,一個公司中A、B、C三個員工,A員工利用的是xx文件管理系統,B員工利用的是xxx安全系統,這裡將xx文件管理系統和xxx安全系統稱為多個客戶端,只要能夠保證這裡的「多個客戶端」均與同一個伺服器交互即可。當多個客戶端為同一客戶端的不同用戶時,例如,一個公司中A、B、C三個員 工,在每個人的電腦上都安裝有公司的xx文件管理系統,將這裡的xx文件管理系統稱為客戶端,為區分清楚,可以把xx文件管理系統中A員工的操作,和xx文件管理系統中B員工的操作,以及xx文件管理系統中C員工的操作稱為多個客戶端的操作,伺服器可以根據A、B、C三個員工的不同帳號標識進行區分。為保證電子文件的安全,通常電子文件需要被加密,然而客戶端只使用一個密鑰對所有的電子文件加密,如果不同電子文件針對的使用對象不同或者要求的安全級別存在差異,那麼由於使用相同的密鑰,不同的對象可以使用相同的密鑰解密本不屬於其範圍內的電子文件,從而將不能有效的確保電子文件的安全。當然,還可以使用多套系統,每個系統使用一個密鑰對電子文件進行加密,這樣雖然能夠達到阻止其它使用對象的解密行為,但是這種使用多套系統的方式將不同系統之間的電子文件完全分隔開來,不利於電子文件的統一管理,在具體使用時,有時甚至還要引入文件流轉系統進行輔助管理。實施例1為解決上述問題,本申請實施例1提供的一種電子文件加密方法,用於提高電子文件的安全性。具體見圖1,包括以下步驟:步驟11:客戶端向伺服器發送電子文件加密請求,所述伺服器存儲有多個密鑰和與每個密鑰一一對應的密鑰標識數據。當客戶端需要對某個電子文件進行加密時,可以利用密鑰來進行加密,而密鑰一般是預先存儲在伺服器中,因此,客戶端首先要向伺服器發出電子文件加密請求,以便從伺服器端獲取到密鑰。在這裡,伺服器存儲有多個密鑰,並且對於每一個密鑰,伺服器都存儲有與其呈一一對應關係的密鑰標識數據。步驟12:客戶端接收伺服器發送的密鑰以及與所述發送的密鑰對應的密鑰標識數據,所述發送的密鑰由伺服器從所述多個密鑰中選出。伺服器接收到客戶端發送的電子文件加密請求之後,即從預先存儲的多個密鑰中選取一個發送給客戶端,同時給客戶端發送與選取的密鑰對應的密鑰標識數據。需要說明的是,伺服器從多個密鑰中選取一個密鑰時,可以是隨機選取,也可以按預設規則選取,比如伺服器預先建立不同的群組,用於存儲不同的密鑰,根據客戶端加密請求中帶有的標識從不同群組中選取密鑰,比如,密鑰群組A中存儲很多密鑰,可以給標識為a1、a2……an的客戶端提供密鑰,當伺服器接收到帶有標識為a1的客戶端發送的加密請求時,可以從密鑰群組A中選取一個密鑰發送給客戶端。步驟13:客戶端利用接收到的密鑰加密所述電子文件,並建立加密的電子文件與接收到的密鑰標識數據之間的映射關係。客戶端接收到伺服器發送的密鑰後,即可利用該密鑰對電子文件進行加密,生成加密的電子文件。如前文所述,伺服器存儲有多個密鑰和多個密鑰標識數據,每個密鑰與每個密鑰標識數據是一一對應的,所以在生成加密的電子文件後,客戶端還可以建立加密的電子文件與接收到的密鑰標識數據之間的映射關係,例如密鑰A與密鑰標識數據A一一對應,客戶端用密鑰A加密電子文件生成加密的電子文件A之後,還可以建立加密的電子文件A與密鑰標識數據A之間的映射關係。密鑰標識數據主要起到標識性作用,客戶端建立映射關係時,可以將密鑰標識數據寫入到加密的電子文件的頭部信息中以便形成映射關係,也可以將密鑰標識數據與上述密文分別存儲並建立兩者的映射關係。例如,一種建立映射關係的可實施方式為:客戶端將密鑰標識數據寫入到加密的電子文件頭部信息中的預設欄位中,上述預設欄位形成密鑰標識數據與加密的電子文件之間的映射關係,寫入密鑰標識數據後的加密的電子文件結構如圖2所示。在實際應用的過程中,為了加強對電子文件的安全管理,客戶端向伺服器發送電子文件加密請求之後,伺服器還可以對客戶端擁有的權限進行鑑定,在 進行權限鑑定時,對於伺服器存儲的多個密鑰,伺服器還需要預先存儲每一個密鑰被允許獲取的權限信息,這樣即可進行明確的權限劃分。對於上述「伺服器存儲每一個密鑰被允許獲取的權限信息」,這裡示意性的給出了兩種不同的存儲方式,第一種存儲方式可以參見表1:表1設置不同的密鑰密鑰密鑰標識數據密鑰被允許獲取的權限信息密鑰1密鑰標識數據1A部門密鑰2密鑰標識數據2B部門密鑰3密鑰標識數據3C部門………………經過表1的存儲設置,A部門的員工用密鑰1加密的電子文件則只能A部門的用戶解密訪問,同樣B部門的員工用密鑰2加密的電子文件則只能B部門的用戶解密訪問,這樣就使不同的工作團隊的文件信息相互保密。第二種示意性的存儲方式參見表2:表2設置不同的權限經過表2的存儲設置,A部門的用戶用密鑰1加密的電子文件則A部門和B部門的用戶都可以解密訪問,同樣B部門的用戶用密鑰2加密的電子文件則 B部門和C部門的用戶都可以解密訪問,C部門的用戶用密鑰3加密的電子文件則只有C部門的用戶才能夠解密訪問。這樣就更容易控制不通的工作團隊之間是否可以進行文件互訪,既通過加密電子文件保證了電子文件內容的信息安全,同時也方便對電子文件的分級安全管理。需要說明的是,這裡所說的A部門,B部門等可以為同一客戶端的不同用戶,也可以分別為多個客戶端,伺服器只要可以識別出不同用戶的不同權限即可。上述只是伺服器內部的存儲示例,客戶端向伺服器發送電子文件加密請求之後,伺服器對客戶端擁有的權限進行鑑定時,如果客戶端對於存儲的多個密鑰的任意一個都沒有獲取的權限,那麼伺服器可以拒絕向客戶端發送密鑰,同時還可以給客戶端發送無權限信息。對於伺服器存儲的多個密鑰,如果客戶端對於其中的多個密鑰都有獲取的權限,此時,伺服器可以從多個有權限的密鑰中選取一個,並連同與選取到的密鑰對應的密鑰標識數據發送給客戶端。對於本申請中的其他一些實施例,客戶端向伺服器發送電子文件加密請求時,甚至還可以將密鑰標識附帶在上述電子文件加密請求中。例如,伺服器將存儲的多個密鑰每個都分配不同的編號,而客戶端是可以獲取這些編號的,這樣,客戶端可以將附帶有利用xx號密鑰加密的請求發送給伺服器。這樣,伺服器只需利用xx號密鑰被允許獲取的權限信息對客戶端的權限進行鑑定即可,如果客戶端有獲取xx號密鑰的權限即發送xx號密鑰;如果沒有權限則可以發送無權限信息。本申請技術方案中提到的密鑰標識數據,具體的,密鑰標識數據由與其對應的密鑰、與其對應的密鑰的編號和隨機數按照預設規則計算得出,圖3示意性的給出了一種密鑰標識數據的生成過程:密鑰+密鑰編號+隨機數經過哈希算法生成。由於伺服器中存儲有多個不同的密鑰,為區分伺服器中不同的密鑰,可以給不同的密鑰添加密鑰編號,例如第一個密鑰的密鑰編號為1,第二個密 鑰的密鑰編號為2,當然密鑰編號也可以為其他的形式,例如第一個密鑰的密鑰編號為A,第二個密鑰的密鑰編號為B,最終目的是便於區分出不同的密鑰。這裡的隨機數可由隨機數生成器生成,位數可以為10位,20位等。這樣,經過預設規則計算得出的密鑰標識數據具有唯一標識的作用,每一個密鑰與其生成的密鑰標識數據是一一對應的,不會重複,伺服器根據密鑰標識數據即可找到與其對應的密鑰,同樣,根據密鑰即可找出與其對應的密鑰標識數據。採用本申請實施例1提供的方法,由於伺服器存儲有多個密鑰,因此,客戶端可以使用多個不同的密鑰分別加密不同的電子文件,使多個客戶端之間的電子文件相互保密,提高電子文件的安全性。另外,通過對客戶端設置是否允許獲取密鑰的權限,來限制客戶端對電子文件的加密權限,使針對電子文件的安全管理更加方便。實施例2基於相同的發明構思,實施例2提供了一種電子文件解密方法,用於提高電子文件的安全性。如圖4所示,包括以下步驟:步驟21:客戶端根據加密的電子文件與密鑰標識數據之間的映射關係獲取密鑰標識數據。客戶端要訪問加密的電子文件時,首先可以根據加密的電子文件與密鑰標識數據之間的映射關係獲取密鑰標識數據,在這裡,如實施例1中的步驟11所描述的,每一個加密的電子文件都有一個與其呈映射關係的密鑰標識數據。如果密鑰標識數據是在加密的電子文件頭部信息中,則客戶端可以先讀取加密的電子文件的頭部信息以獲取密鑰標識數據。步驟22:客戶端向伺服器發送包含有獲取到的密鑰標識數據的解密請求,所述伺服器存儲有多個密鑰和與每個密鑰一一對應的密鑰標識數據。當客戶端獲取到密鑰標識數據之後,即可將包含有獲取到的密鑰標識數據的解密請求發送給伺服器,其中,伺服器存儲有多個密鑰,並且對於每一個密 鑰,伺服器都存儲有與其呈一一對應關係的密鑰標識數據。步驟23:伺服器根據接收到的密鑰標識數據從所述多個密鑰中選取與所述接收到的密鑰標識數據對應的密鑰,並發送給客戶端。伺服器存儲的每個密鑰都有與其一一對應的密鑰標識數據,伺服器根據接收到的密鑰標識數據即可選出與接收到的密鑰標識數據對應的密鑰,並將選出的密鑰發送給客戶端。步驟24:客戶端使用伺服器發送的密鑰對所述加密的電子文件進行解密。客戶端接收到伺服器發送的密鑰之後,便可使用該密鑰對加密的電子文件進行解密訪問操作。在實際應用的過程中,為了加強對電子文件的安全管理,客戶端向伺服器發送包含有密鑰標識數據的解密請求之後,伺服器還需要對客戶端的權限進行鑑定,因此,對於伺服器存儲的多個密鑰,伺服器還需要預先存儲每一個密鑰被允許獲取的權限信息。伺服器根據接收到的密鑰標識數據與密鑰對應關係選取密鑰,再根據密鑰被允許獲取的權限信息對客戶端的權限進行鑑定,這樣即可進行明確的權限劃分。這裡提到的「每一個密鑰被允許獲取的權限信息」,還可以參照表1和表2所示的存儲方式。如果客戶端有權限,則伺服器向客戶端發送選取到的密鑰;如果客戶端無權限,伺服器可以向客戶端發送無權限消息。上述提到的權限鑑定,在本申請另一些實施例中還可能存在著這種情況:客戶端沒有獲取伺服器選取到密鑰的權限,但客戶端有獲取第一密鑰的權限,其中第一密鑰的權限兼容選取到密鑰的權限,這時,伺服器同樣向客戶端發送第一密鑰,客戶端即可利用第一密鑰解密訪問上述加密的電子文件。本申請實施例2提供的方法,由於伺服器存儲有多個密鑰,根據與加密的電子文件呈映射關係的密鑰標識數據,伺服器可以識別出加密電子文件的密鑰,從而調用該密鑰分發給客戶端,以便客戶端解密、訪問加密的電子文件,使多個客戶端之間的電子文件相互保密,以此來提高電子文件的安全性。另外,通過對客戶端設置是否允許獲取密鑰的權限,來限制不同電子文件的訪問權,使 針對電子文件的安全管理更加方便。實施例3上述幾個實施例皆為本申請的方法實施例,相應地,本發明實施例3提供了一種電子文件加密裝置,用於提高電子文件的安全性。具體見圖5,包括:第一發送模塊101,可以用於發送電子文件加密請求;第一接收模塊102,可以用於接收第二發送模塊107發送的密鑰和密鑰標識數據;加密處理模塊103,可以用於利用第一接收模塊102接收到的密鑰加密電子文件,並建立加密的電子文件與接收到的密鑰標識數據之間的映射關係;存儲模塊104,可以用於存儲多個密鑰和與每個密鑰一一對應的密鑰標識數據;第二接收模塊105,可以用於接收第一發送模塊101發送的電子文件加密請求;選取模塊106,可以用於從存儲模塊104的多個密鑰中選出密鑰;第二發送模塊107,可以用於發送選取模塊106選取到的密鑰和與選取到的密鑰對應的密鑰標識數據。本裝置實施例的工作過程為:第二接收模塊105接收第一發送模塊101發送的電子文件加密請求;選取模塊106從存儲模塊104的多個密鑰中選出密鑰;第一接收模塊102接收第二發送模塊107發送的密鑰和密鑰標識數據;加密處理模塊103利用接收到的密鑰加密電子文件,並建立加密的電子文件與接收到的密鑰標識數據之間的映射關係。本裝置實施例在實際應用中還可以包括存儲子模塊和鑑權模塊,其中,存儲子模塊可以用於存儲多個密鑰中每一個密鑰被允許獲取的權限信息;鑑權模塊可以用於根據存儲子模塊的存儲信息對第二接收模塊105接收到的信息進行鑑權,如果鑑權通過時,則觸發選取模塊106。採用本申請實施例3提供的裝置,可以應用在客戶端和伺服器中,由於伺服器存儲有多個密鑰,因此,客戶端可以使用多個不同的密鑰分別加密不同的電子文件,使多個客戶端之間的文件信息相互保密,以此來提高電子文件的安全性。另外,通過對客戶端設置是否允許獲取密鑰的權限,來限制客戶端對電子文件的加密權限,使針對電子文件的安全管理更加方便。實施例4基於相同的發明構思,實施例4提供了一種電子文件解密裝置,用於提高電子文件的安全性。如圖6所示,包括:讀取模塊201,可以用於根據加密的電子文件與密鑰標識數據之間的映射關係獲取密鑰標識數據;第三發送模塊202,可以用於發送包含有獲取到的密鑰標識數據的解密請求;接收解密模塊203,可以用於接收第二發送模塊207發送的密鑰,並對加密的電子文件進行解密;存儲模塊204,可以用於存儲多個密鑰和與每個密鑰一一對應的密鑰標識數據;第二接收模塊205,可以用於接收第三發送模塊202發送的解密請求;選取模塊206,可以用於根據第二接收模塊205接收到的密鑰標識數據,從存儲模塊204的多個密鑰中選取與所述接收到的密鑰標識數據對應的密鑰;第二發送模塊207,可以用於發送選取模塊206選出的密鑰。本裝置實施例的工作過程為:讀取模塊201根據加密的電子文件與密鑰標識數據之間的映射關係獲取密鑰標識數據;第二接收模塊205接收第三發送模塊202發送的包含有密鑰標識數據的解密請求;選取模塊206根據接收到的密鑰標識數據,從多個密鑰中選取與接收到的密鑰標識數據對應的密鑰,其中,存儲模塊204存儲有多個密鑰和與每個密鑰一一對應的密鑰標識數據,且第三 發送模塊202發送的密鑰標識數據與讀取模塊206讀取到的密鑰相對應;接收解密模塊203接收第二發送模塊207發送的密鑰,並對加密的電子文件進行解密。本裝置實施例在實際應用中還可以包括存儲子模塊和鑑權模塊,其中,存儲子模塊可以用於存儲多個密鑰中每一個密鑰被允許獲取的權限信息;鑑權模塊,可以用於根據存儲子模塊的存儲信息對第二接收模塊205接收到的信息進行鑑權,如果鑑權通過時,則觸發第二發送模塊207。本申請實施例4提供的裝置,可以應用在客戶端和伺服器中,由於伺服器存儲有多個密鑰,根據與加密的電子文件呈映射關係的密鑰標識數據,伺服器可以識別出加密電子文件的密鑰,從而調用該密鑰分發給客戶端,以便客戶端解密、訪問加密的電子文件,使多個客戶端之間的文件信息相互保密,以此來提高電子文件的安全性。另外,通過對客戶端設置是否允許獲取密鑰的權限,來限制不同電子文件的訪問權,使針對電子文件的安全管理更加簡單方便。實施例5基於相同的發明構思,本申請實施例5提供了一種電子文件加密解密系統,用於提高電子文件的安全性。如圖7所示,包括:伺服器100和與伺服器相連的客戶端200,伺服器100包括:存儲模塊,第二接收模塊,選取模塊,第二發送模塊;客戶端200包括:第一發送模塊、第一接收模塊、加密處理模塊,和/或,讀取模塊、第三發送模塊、接收解密模塊;其中,存儲模塊,可以用於存儲多個密鑰和與每個密鑰一一對應的密鑰標識數據;第二接收模塊,可以用於接收第一發送模塊發送的電子文件加密請求,和/或,接收第三發送模塊發送的包含有密鑰標識數據的解密請求;選取模塊,可以用於從存儲模塊的多個密鑰中選出密鑰,和/或,用於根據第二接收模塊接收到的密鑰標識數據,從存儲模塊的多個密鑰中選取與接收到的密鑰標識數據對應的密鑰;第二發送模塊,可以用於發送選取模塊選取到的密鑰和與選取到的密鑰對應的密鑰標識數據,和/或,發送選取模塊選出的密鑰;第一發送模塊,可以用於發送電子文件加密請求;第一接收模塊,可以用於接收第二發送模塊發送的密鑰和密鑰標識數據;加密處理模塊,可以用於利用第一接收模塊接收到的密鑰加密電子文件,並建立加密的電子文件與接收到的密鑰標識數據之間的映射關係;讀取模塊,可以用於根據加密的電子文件與密鑰標識數據之間的映射關係獲取密鑰標識數據;第三發送模塊,可以用於發送包含有獲取到的密鑰標識數據的解密請求;接收解密模塊,可以用於接收第二發送模塊發送的密鑰,並對加密的電子文件進行解密。本系統實施例的工作過程為:第二接收模塊接收第一發送模塊發送的電子文件加密請求;選取模塊從存儲模塊的多個密鑰中選出密鑰;第一接收模塊接收第二發送模塊發送的密鑰和密鑰標識數據;加密處理模塊利用接收到的密鑰加密電子文件,並建立加密的電子文件與接收到的密鑰標識數據之間的映射關係;和/或,讀取模塊根據加密的電子文件與密鑰標識數據之間的映射關係獲取密鑰標識數據;第二接收模塊接收第三發送模塊發送的包含有密鑰標識數據的解密請求;選取模塊根據接收到的密鑰標識數據,從多個密鑰中選取與接收到的密鑰標識數據對應的密鑰,其中,存儲模塊存儲有多個密鑰和與每個密鑰一一對應的密鑰標識數據,且第三發送模塊發送的密鑰標識數據與讀取模塊讀取到的密鑰相對應;接收解密模塊接收第二發送模塊發送的密鑰,並對加密的電子文件進行解密。本系統實施例在實際應用中還可以包括存儲子模塊和鑑權模塊,其中,存儲子模塊可以用於存儲多個密鑰中每一個密鑰被允許獲取的權限信息;鑑權模 塊,可以用於根據存儲子模塊的存儲信息對第二接收模塊接收到的信息進行鑑權;如果鑑權通過時,則觸發選取模塊;或,觸發第二發送模塊。採用本申請實施例5提供的系統,由於伺服器存儲有多個密鑰,因此,客戶端可以使用多個不同的密鑰分別加密不同的電子文件,根據與加密的電子文件呈映射關係的密鑰標識數據,伺服器可以識別出加密電子文件的密鑰,從而調用相應的密鑰分發給客戶端,以便客戶端解密、訪問加密的電子文件,使多個客戶端之間的電子文件相互保密,以此來提高電子文件的安全性。另外,通過對客戶端設置是否允許獲取密鑰的權限,來限制不同電子文件的訪問權,使針對電子文件的安全管理更加方便。本領域內的技術人員應明白,本申請的實施例可提供為方法、系統、或電腦程式產品。因此,本申請可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本申請可採用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限於磁碟存儲器、CD-ROM、光學存儲器等)上實施的電腦程式產品的形式。本申請是參照根據本申請實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方框圖來描述的。應理解可由電腦程式指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些電腦程式指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。這些電腦程式指令也可存儲在能引導計算機或其他可編程數據處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。這些電腦程式指令也可裝載到計算機或其他可編程數據處理設備上,使得在計算機或其他可編程設備上執行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出接口、網絡接口和內存。內存可能包括計算機可讀介質中的非永久性存儲器,隨機存取存儲器(RAM)和/或非易失性內存等形式,如只讀存儲器(ROM)或快閃記憶體(flashRAM)。內存是計算機可讀介質的示例。計算機可讀介質包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現信息存儲。信息可以是計算機可讀指令、數據結構、程序的模塊或其他數據。計算機的存儲介質的例子包括,但不限於相變內存(PRAM)、靜態隨機存取存儲器(SRAM)、動態隨機存取存儲器(DRAM)、其他類型的隨機存取存儲器(RAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPROM)、快閃記憶體或其他內存技術、只讀光碟只讀存儲器(CD-ROM)、數字多功能光碟(DVD)或其他光學存儲、磁盒式磁帶,磁帶磁磁碟存儲或其他磁性存儲設備或任何其他非傳輸介質,可用於存儲可以被計算設備訪問的信息。按照本文中的界定,計算機可讀介質不包括暫存電腦可讀媒體(transitorymedia),如調製的數據信號和載波。還需要說明的是,術語「包括」、「包含」或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設備所固有的要素。在沒有更多限制的情況下,由語句「包括一個……」限定的要素,並不排除在包括要素的過程、方法、商品或者設備中還存在另外的相同要素。本領域技術人員應明白,本申請的實施例可提供為方法、系統或計算機程 序產品。因此,本申請可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體方面的實施例的形式。而且,本申請可採用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限於磁碟存儲器、CD-ROM、光學存儲器等)上實施的電腦程式產品的形式。單詞第一、第二、以及第二等的使用不表示任何順序。可將這些單詞解釋為名稱。以上僅為本申請的實施例而已,並不用於限制本申請。對於本領域技術人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原理之內所作的任何修改、等同替換、改進等,均應包含在本申請的權利要求範圍之內。當前第1頁1 2 3