專利名稱:一種加密文檔唯一標識的生成和更新的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機中各種文檔的加解密技術(shù)領(lǐng)域,具體涉及一種加密文檔唯一 標識的生成和更新的方法。
背景技術(shù):
隨著企業(yè)信息化應(yīng)用的深入,企業(yè)員工大部分工作都在計算機上完成,各類報告、 報表、設(shè)計圖紙等重要成果都以電子文件的形式存在,而電子文檔很容易通過郵件、移動存 儲設(shè)備等途徑泄露,給企業(yè)帶來了很大的安全隱患。為了防止機密文檔的泄漏,常用的方法 之一是對機密文檔進行加密,這樣即使文件外泄了,非授權(quán)的用戶也無法打開文檔。對于加密的文檔,如果要控制文檔的權(quán)限,指定某些人或某些群組可以訪問指定 的加密文檔,則每個文檔必須有一個唯一的標識信息,將文檔的唯一標識信息和文檔的授 權(quán)信息關(guān)聯(lián)起來,才能夠在打開文檔的時候判斷當前用戶是否有權(quán)限?,F(xiàn)有技術(shù)中每個文 檔的唯一標識一般是在創(chuàng)建加密文檔的時候分配的,這樣就存在一個缺陷,如果一個文檔 已經(jīng)授權(quán)并分發(fā)給其他人之后,文檔原作者或指定的有編輯權(quán)限的人又修改了這篇文檔, 則修改后的文檔的唯一標識和修改前文檔的唯一標識是一樣的,但文檔內(nèi)容可能已經(jīng)有很 大差別,也就是說可能存在標識相同但內(nèi)容不同的多篇文檔存在,這樣會造成文檔授權(quán)時 候的混亂,修改后的文檔如果希望使用新的授權(quán)信息,但因為文檔唯一標識沒有變化,會導(dǎo) 致修改前的文檔的授權(quán)方案也跟著變化。
發(fā)明內(nèi)容
本發(fā)明提供了一種加密文檔唯一標識的生成和更新的方法,解決了文件修改后造 成的多個文檔的標識相同但內(nèi)容不同的問題。所述方法應(yīng)用于文檔權(quán)限管理系統(tǒng),該文檔 權(quán)限管理系統(tǒng)包括終端計算機和權(quán)限控制服務(wù)器,該權(quán)限控制服務(wù)器用于存儲所有文檔的 唯一標識和對應(yīng)的授權(quán)信息,該終端計算機用于從權(quán)限控制服務(wù)器通信獲取文檔對應(yīng)的授 權(quán)信息,并根據(jù)授權(quán)信息決定對加密文檔操作權(quán)限,并進行權(quán)限的控制,其特征在于包括
A、在創(chuàng)建加密文檔時,終端計算機根據(jù)文檔內(nèi)容生成加密文檔的唯一標識,同時,對文 檔內(nèi)容進行分段并計算每一分段的哈希值,將該唯一標識和加密文檔每一分段的哈希值作 為附加信息存儲在該加密文檔中;
B、將生成得到的加密文檔的唯一標識以及創(chuàng)建加密文檔時生成的授權(quán)信息發(fā)送給權(quán) 限控制服務(wù)器保存;
C、當修改加密文檔后對加密文檔授權(quán)時,終端計算機讀取修改后的加密文檔的文檔 內(nèi)容、唯一標識以及修改前文檔每一分段的哈希值,對修改后的文檔內(nèi)容進行分段并計算 每一分段的哈希值,將修改后文檔每一分段的哈希值與讀取得到文檔每一分段的哈希值比 較,計算發(fā)生變化的哈希值的數(shù)量與總分段數(shù)的比例,判斷該比例是否大于預(yù)定閾值,如果 大于預(yù)定閾值執(zhí)行步驟D ;如果小于等于預(yù)定閾值執(zhí)行步驟E ;
D、根據(jù)修改后的文檔內(nèi)容計算新的文檔唯一標識,并將新的文檔唯一標識和新的分段哈希值作為附加信息保存在文檔中,將新的文檔唯一標識和授權(quán)信息發(fā)送給權(quán)限控制服務(wù) 器,執(zhí)行步驟F;
E、將原有文檔唯一標識和授權(quán)信息發(fā)送給權(quán)限控制服務(wù)器,執(zhí)行步驟F;
F、權(quán)限控制服務(wù)器保存唯一標識并判斷接收的文檔唯一標識是否變化,如果發(fā)生變化 則將其作為新文檔進行保存。其中,生成文檔的唯一標識為對文檔內(nèi)容計算MD5值,將該MD5值作為唯一標識。其中,計算文檔每一分段的哈希值為對文檔每一分段的分段內(nèi)容分別進行MD5計 算后取MD5值中的的幾位作為該分段的哈希值。其中,對加密文檔進行分段為按照長度對加密文檔進行分段。本發(fā)明通過對修改較大的文檔生成新的唯一標識,提高了加密去、文檔權(quán)限管理 的穩(wěn)定性,避免了同一文檔多個不同修干版本之間文檔授權(quán)的混亂。
圖1是本發(fā)明實施例標識生成和更新系統(tǒng)的系統(tǒng)框圖; 圖2是本發(fā)明實施例加密文檔生成和授權(quán)流程的流程圖; 圖3是本發(fā)明實施例加密文檔修改和授權(quán)流程的流程圖。
具體實施例方式以下結(jié)合附圖詳細說明本發(fā)明的具體實施方式
。本發(fā)明的文檔權(quán)限管理系統(tǒng)構(gòu)成如圖1所示。分為終端計算機和權(quán)限控制服務(wù)器 兩部分,權(quán)限控制服務(wù)器用于存儲所有文檔的唯一標識和對應(yīng)的授權(quán)信息,權(quán)限控制服務(wù) 器包括權(quán)限控制模塊和權(quán)限信息數(shù)據(jù)庫。終端計算機上有一個權(quán)限控制代理程序,負責(zé)和 權(quán)限控制服務(wù)器通信,獲取文檔對應(yīng)的授權(quán)信息,并根據(jù)授權(quán)信息決定該機算計是否有相 應(yīng)的權(quán)限操作加密文檔,并進行權(quán)限的控制。終端計算機在向權(quán)限服務(wù)器請求獲取一個文 檔的授權(quán)信息時候需要告訴權(quán)限服務(wù)器該文檔的唯一標識。文檔唯一標識一般在文檔生成并第一次授權(quán)時候生成并發(fā)送給服務(wù)器進行保存, 本發(fā)明中的文檔生成流程如附圖2所示
1)文檔作者創(chuàng)建加密文檔并通過權(quán)限控制代理給加密文檔授權(quán);
2)權(quán)限控制代理讀取文檔的內(nèi)容;
3)根據(jù)文檔內(nèi)容和信息生成文檔的唯一標識,文檔唯一標識的生成算法可以有多種方 式,但必須滿足的條件是通過文檔內(nèi)容可以計算出唯一標識、唯一標識的長度比較固定、且 不同內(nèi)容文檔的唯一標識相同的幾率比較低,常用的唯一標識生成算法是哈希算法,例如 對文檔內(nèi)容計算MD5值;
4)把文檔內(nèi)容按照長度分段并對每一段計算一個哈希值,將所有分段的哈希值和文檔 唯一標識作為附加信息存儲在文檔中,文檔的分段長度沒有限定,并且分段長度可以調(diào)整, 分段的哈希值是為了識別出對應(yīng)分段的內(nèi)容是否有變化,可以采用分段內(nèi)容進行MD5計算 后取其中的某幾位的方法來進行;
5)將文檔的唯一標識和授權(quán)信息發(fā)送給服務(wù)器;
6)服務(wù)器將唯一標識和授權(quán)信息保存在權(quán)限信息數(shù)據(jù)庫中。
文檔被修改并且重新授權(quán)時候的流程如圖3所示
1)文檔修改者修改加密文檔并通過權(quán)限控制代理給加密文檔授權(quán);
2)權(quán)限控制代理讀取文檔的內(nèi)容、保存的分段哈希值和唯一標識;
3)根據(jù)文檔內(nèi)容計算出新的分段哈希值,和保存的分段哈希值進行比較,計算出文檔 的修改比例,計算方法是變化的分段哈希值的數(shù)量除以總的分段數(shù),判斷如果文檔的修改 比例是否大于預(yù)定值,如果大于預(yù)定值則認為修改后的文檔和原文檔差別比較大,可以作 為一個新文檔來看待;
4)如果文檔的差別超過預(yù)定值,則按照修改后的文檔內(nèi)容計算出新的文檔唯一標識, 并將文檔唯一標識和新的分段哈希值作為附加信息保存在文檔中;
5)如果文檔差別超過預(yù)定值,則將文檔新的唯一標識和授權(quán)信息發(fā)送給服務(wù)器,否則 按照文檔沒有變化,將原有的唯一標識和授權(quán)信息發(fā)給服務(wù)器;
6)服務(wù)器將唯一標識和授權(quán)信息保存在權(quán)限信息數(shù)據(jù)庫中,如果唯一標識有變化,就 當作是新的文檔來保存。本發(fā)明的方法通過計算文檔的變化情況,在文檔變化比例超過預(yù)定值的時候?qū)⑿?改的文檔當作一個新文檔來看待,解決了文檔標識生成后不再變化,導(dǎo)致文檔被修改和重 新授權(quán)后會影響原文檔的授權(quán)信息的問題。以上所述僅為本發(fā)明的較佳實施例,并不用于限制本發(fā)明,凡在本發(fā)明精神和原 則之內(nèi)所做的任何修改、等同替換和改進等,均包含于本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種加密文檔唯一標識的生成和更新的方法,所述方法應(yīng)用于文檔權(quán)限管理系統(tǒng), 該文檔權(quán)限管理系統(tǒng)包括終端計算機和權(quán)限控制服務(wù)器,該權(quán)限控制服務(wù)器用于存儲所有 文檔的唯一標識和對應(yīng)的授權(quán)信息,該終端計算機用于從權(quán)限控制服務(wù)器通信獲取文檔對 應(yīng)的授權(quán)信息,并根據(jù)授權(quán)信息決定對加密文檔操作權(quán)限,并進行權(quán)限的控制,其特征在于 包括A、在創(chuàng)建加密文檔時,終端計算機根據(jù)文檔內(nèi)容生成加密文檔的唯一標識,同時,對文 檔內(nèi)容進行分段并計算每一分段的哈希值,將該唯一標識和加密文檔每一分段的哈希值作 為附加信息存儲在該加密文檔中;B、將生成得到的加密文檔的唯一標識以及創(chuàng)建加密文檔時生成的授權(quán)信息發(fā)送給權(quán) 限控制服務(wù)器保存;C、當修改加密文檔后對加密文檔授權(quán)時,終端計算機讀取修改后的加密文檔的文檔 內(nèi)容、唯一標識以及修改前文檔每一分段的哈希值,對修改后的文檔內(nèi)容進行分段并計算 每一分段的哈希值,將修改后文檔每一分段的哈希值與讀取得到文檔每一分段的哈希值比 較,判斷發(fā)生變化的哈希值數(shù)量與總分段數(shù)的比例是否大于預(yù)定閾值,如果大于預(yù)定閾值 執(zhí)行步驟D ;如果小于等于預(yù)定閾值執(zhí)行步驟E ;D、根據(jù)修改后的文檔內(nèi)容計算新的文檔唯一標識,并將新的文檔唯一標識和新的分段 哈希值作為附加信息保存在文檔中,將新的文檔唯一標識和授權(quán)信息發(fā)送給權(quán)限控制服務(wù) 器,執(zhí)行步驟F;E、將原有文檔唯一標識和授權(quán)信息發(fā)送給權(quán)限控制服務(wù)器,執(zhí)行步驟F;F、權(quán)限控制服務(wù)器保存唯一標識并判斷接收的文檔唯一標識是否變化,如果發(fā)生變化 則將其作為新文檔進行保存。
2.如權(quán)利要求1所述的方法,其特征在于生成文檔的唯一標識為對文檔內(nèi)容計算MD5 值,將該MD5值作為唯一標識。
3.如權(quán)利要求1所述的方法,其特征在于計算文檔每一分段的哈希值為對文檔每一 分段的分段內(nèi)容分別進行MD5計算后取MD5值中的的幾位作為該分段的哈希值。
4.如權(quán)利要求1所述的方法,其特征在于對加密文檔進行分段為按照長度對加密文 檔進行分段。
全文摘要
本發(fā)明涉及一種加密文檔唯一標識的生成和更新的方法,所述方法通過將文檔進行分段,并計算保存文檔每一分段對應(yīng)的哈希值,在文檔修改后再次對文檔進行分段,并計算文檔每一分段對應(yīng)的哈希值,通過比較修改前后的各分段的哈希值是否發(fā)生變化,獲得文檔的修改比例,根據(jù)該修改比例確定是否生成新的加密文檔唯一標識。該方法解決了文件修改后造成的多個文檔的標識相同但內(nèi)容不同的問題。
文檔編號G06F21/22GK102073824SQ20111000575
公開日2011年5月25日 申請日期2011年1月12日 優(yōu)先權(quán)日2011年1月12日
發(fā)明者劉永波 申請人:深圳昂楷科技有限公司