專利名稱:一種向關(guān)系數(shù)據(jù)庫嵌入和提取數(shù)字水印的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種向關(guān)系數(shù)據(jù)庫嵌入和提取數(shù)字水印的方法,屬于信息隱藏技術(shù)領(lǐng)域。
背景技術(shù):
目前,數(shù)字水印技術(shù)作為解決數(shù)字產(chǎn)品版權(quán)保護(hù)問題的一種有效手段,日益成為人們研究的焦點(diǎn)。數(shù)字水印技術(shù)的研究大多集中于對圖像、音頻、視頻、軟件和一般電子文檔的版權(quán)保護(hù)。而隨著因特網(wǎng)技術(shù)的飛速發(fā)展,在因特網(wǎng)上允許授權(quán)用戶遠(yuǎn)程查詢和訪問數(shù)據(jù)庫已成為普遍要求,但是數(shù)據(jù)提供者擔(dān)心數(shù)據(jù)被竊取、非法拷貝,版權(quán)得不到有效保護(hù)。因此要有一種機(jī)制來表明數(shù)據(jù)庫數(shù)據(jù)的侵權(quán)拷貝??梢酝ㄟ^向關(guān)系數(shù)據(jù)庫數(shù)據(jù)上添加水印來解決這種問題。通過水印對關(guān)系數(shù)據(jù)庫數(shù)據(jù)版權(quán)進(jìn)行管理,已經(jīng)成為數(shù)據(jù)庫管理系統(tǒng)研究和研制的一個(gè)嶄新課題,但目前還沒有受到普遍重視。
關(guān)系數(shù)據(jù)庫數(shù)字水印技術(shù)的研究較少,IBM阿爾馬登研究中心的Agrawal等人提出的通過水印標(biāo)記匹配判斷的關(guān)系數(shù)據(jù)庫水印技術(shù)只能夠檢測到有沒有水印標(biāo)記,而不能夠嵌入或提取到有意義的水印信息;美國普渡大學(xué)的R.Sion博士提出的一種基于元組劃分集合的方式嵌入數(shù)字水印技術(shù)方案,始終沒有完全公開他的方法,并且其方法中元組所劃分集合大小的確定和元組的排序始終沒有給出明確的說法。
關(guān)系數(shù)據(jù)庫數(shù)據(jù)與圖像、音頻、視頻等多媒體數(shù)據(jù)存在著許多不同。它們之間的不同主要有①圖像是由大量的位組成的,并且許多位都是可有可無的,即冗余信息,水印容易隱藏其中;而關(guān)系屬數(shù)據(jù)庫數(shù)據(jù)是由元組組成,每個(gè)元組表示一個(gè)單獨(dú)的對象,水印需要遍布這些單獨(dú)的對象;②圖像中各個(gè)像素點(diǎn)的相對位置不能變化;而關(guān)系數(shù)據(jù)庫中的元組是由集合組成,它們之間沒有一定的順序,并且每個(gè)元組中的不同屬性之間也是無序的;③圖像的各個(gè)部分不可能隨意的刪除或替換;而關(guān)系數(shù)據(jù)庫中的元組卻可以隨意的用其他元組代替或刪除;④圖像一般都是不需要更改的;而關(guān)系數(shù)據(jù)庫數(shù)據(jù)卻是需要經(jīng)常刷新的。這些不同決定了關(guān)系數(shù)據(jù)庫數(shù)據(jù)的數(shù)字水印技術(shù)不可能采用也不可能同于現(xiàn)有的任何多媒體數(shù)字水印技術(shù)。
發(fā)明內(nèi)容
本發(fā)明的目的是提出一種向關(guān)系數(shù)據(jù)庫嵌入和提取數(shù)字水印的方法,采用云模型將版權(quán)人圖像信息轉(zhuǎn)換成云特征信息,然后生成多個(gè)水印云滴嵌入到關(guān)系數(shù)據(jù)庫中,實(shí)現(xiàn)向關(guān)系數(shù)據(jù)庫中嵌入和提取版權(quán)人圖像信息,并使嵌入的水印云滴具有一定的隱匿性和魯棒性,且對關(guān)系數(shù)據(jù)庫進(jìn)行水印嵌入后其數(shù)據(jù)不影響正常使用。
本發(fā)明提出的向關(guān)系數(shù)據(jù)庫嵌入數(shù)字水印的方法,包括以下步驟
(1)將待嵌入關(guān)系數(shù)據(jù)庫中的版權(quán)人圖像信息轉(zhuǎn)換成云特征信息,然后根據(jù)云特征信息生成多個(gè)水印云滴;(2)從關(guān)系數(shù)據(jù)庫中選擇待嵌入水印云滴的元組及其屬性;(3)將上述第(1)步中的一個(gè)水印云滴嵌入到上述第2步確定的元組屬性中;(4)重復(fù)步驟(2)和(3)直至掃描完整個(gè)關(guān)系數(shù)據(jù)庫。
上述方法中,將版權(quán)人圖像信息轉(zhuǎn)換成云特征信息并生成多個(gè)水印云滴的方法包括如下步驟(1)根據(jù)關(guān)系數(shù)據(jù)庫中元組的個(gè)數(shù)N確定需要生成的水印云滴個(gè)數(shù)為N;(2)根據(jù)版權(quán)人圖像信息確定該圖像的每個(gè)像素點(diǎn)的灰度值;(3)將步驟(2)得到的灰度值進(jìn)行歸一化處理,得到一組歸一化后的灰度值;(4)計(jì)算步驟(3)的歸一化后灰度值的期望值Ex;(5)計(jì)算步驟(3)的歸一化后灰度值的方差值En;(6)將步驟(3)的歸一化后的灰度值與步驟(4)的期望值Ex相減后取絕對值,得到一組減去期望值Ex的灰度值;(7)計(jì)算步驟(6)得到的減去期望值Ex后灰度值的方差值He;(8)以步驟(5)的方差值En為期望,以步驟(7)的方差值He為標(biāo)準(zhǔn)差,生成一個(gè)正態(tài)隨機(jī)數(shù)En’;(9)以步驟(4)的期望值Ex為期望,以步驟(8)的正態(tài)隨機(jī)數(shù)En’為標(biāo)準(zhǔn)差,生成一個(gè)正態(tài)隨機(jī)數(shù)x,x即為一個(gè)水印云滴;(10)重復(fù)步驟(8)和步驟(9),直至產(chǎn)生N個(gè)水印云滴。
上述方法中選擇待嵌入水印云滴的元組及其屬性的方法,包括如下步驟(1)確定整個(gè)關(guān)系數(shù)據(jù)庫中可以嵌入水印云滴的數(shù)值型屬性及數(shù)值型屬性個(gè)數(shù)An;(2)將用戶給定的密鑰和關(guān)系數(shù)據(jù)庫中一個(gè)待嵌入水印云滴的元組的主鍵值連接成一個(gè)字符串,通過單向哈希函數(shù)將字符串轉(zhuǎn)換成一個(gè)128位的比特位序列;(3)將步驟(2)的比特位序列轉(zhuǎn)換成一個(gè)正整數(shù);(4)根據(jù)用戶輸入的嵌入比例將步驟(3)的正整數(shù)取模,根據(jù)得到的余數(shù)判斷需要嵌入水印的元組,若為需要,則進(jìn)入步驟(5),若不需要,則掃描關(guān)系數(shù)據(jù)庫的下一個(gè)元組,并進(jìn)行步驟(2);(5)根據(jù)步驟(1)的數(shù)值型屬性個(gè)數(shù)An,將步驟(3)的正整數(shù)取模,根據(jù)得到的余數(shù)確定需要嵌入水印的元組屬性。
本發(fā)明方法提出的從關(guān)系數(shù)據(jù)庫提取數(shù)字水印的方法,包括以下步驟(1)從關(guān)系數(shù)據(jù)庫中選擇嵌入了水印云滴的元組及其屬性;(2)將水印云滴從上述選擇的元組屬性中提取出來,并將其存儲;(3)重復(fù)步驟(1)和(2),提取關(guān)系數(shù)據(jù)庫中所有水印云滴,并將水印云滴還原成云特征信息eEx、eEn和eHe;
(4)將上述第(3)步還原的云特征信息eEx、eEn和eHe與由版權(quán)人圖像信息生成的云特征信息進(jìn)行相似性比較,若相似度大于給定閾值,則認(rèn)為提取的水印云滴為版權(quán)人圖像信息,否則認(rèn)為關(guān)系數(shù)據(jù)庫中沒有版權(quán)人圖像信息。
上述方法中將水印云滴還原成云特征信息的方法,包括如下步驟(1)計(jì)算提取的水印云滴的均值M,得到水印云滴的云特征信息eEx;(2)根據(jù)步驟(1)的云特征信息eEx,計(jì)算水印云滴的一階矩M1,得到水印云滴的云特征信息eEn;(3)根據(jù)步驟(1)的云特征信息eEx,計(jì)算水印云滴的二階矩M2,再根據(jù)步驟(2)的云特征信息eEn,得到水印云滴的云特征信息eHe。
上述方法中將還原的云特征信息與由版權(quán)人圖像信息生成的云特征信息進(jìn)行相似性比較的過程,包括以下步驟(1)以云特征信息eEn為期望,以云特征信息eHe為標(biāo)準(zhǔn)差生成一個(gè)正態(tài)隨機(jī)數(shù)eEn’;(2)以云特征信息eEx為期望,以上述正態(tài)隨機(jī)數(shù)eEn’為標(biāo)準(zhǔn)差生成一個(gè)正態(tài)隨機(jī)數(shù)y,y即為一個(gè)水印云滴;(3)重復(fù)步驟(1)和步驟(2),直至產(chǎn)生n個(gè)水印云滴y(i),n為大于10000的自然數(shù),i=1~n;(4)將版權(quán)人圖像信息轉(zhuǎn)換成n個(gè)水印云滴x(i);(5)將步驟(3)和步驟(4)產(chǎn)生的水印云滴y(i)和x(i)從小到大進(jìn)行冒泡排序;(6)依次計(jì)算水印云滴x(i)和y(i)的對應(yīng)差值并取絕對值,得到d(i);(7)計(jì)算步驟(6)的d(i)的均值,求其倒數(shù),得到相似度。
本發(fā)明提出的向關(guān)系數(shù)據(jù)庫嵌入和提取數(shù)字水印的方法,其優(yōu)點(diǎn)是嵌入關(guān)系數(shù)據(jù)庫中的數(shù)字水印具有一定的隱匿性,嵌入的數(shù)字水印不會影響嵌入數(shù)字水印后數(shù)據(jù)的使用;嵌入的數(shù)字水印有一定的魯棒性,對于某些方式的惡意攻擊,如子集更新、子集增加和子集刪除等,數(shù)字水印依然存在;由于在選擇元組及其屬性時(shí)運(yùn)用了單向哈希函數(shù),加入了密鑰,因而非授權(quán)人不可能輕易將原始數(shù)據(jù)和數(shù)字水印分離開來,因此通過該方法可有效地保護(hù)關(guān)系數(shù)據(jù)庫版權(quán)人的合法權(quán)益。
圖1是本發(fā)明方法中向關(guān)系數(shù)據(jù)庫中嵌入版權(quán)人圖像信息的流程框圖。
圖2是將版權(quán)人圖像信息轉(zhuǎn)換成水印云滴的流程框圖。
圖3是向關(guān)系數(shù)據(jù)庫中選擇待嵌入水印云滴元組屬性的流程框圖。
圖4是本發(fā)明方法中從關(guān)系數(shù)據(jù)庫中提取版權(quán)人圖像信息的流程框圖。
圖5是將提取的水印云滴還原成云特征信息的流程框圖。
圖6是將提取的水印云滴還原的云特征信息與由版權(quán)人圖像信息生成的云特征信息進(jìn)行相似性比較的流程框圖。
具體實(shí)施例方式
本發(fā)明提出的向關(guān)系數(shù)據(jù)庫嵌入數(shù)字水印的方法,其流程如圖1所示,首先將待嵌入關(guān)系數(shù)據(jù)庫中的版權(quán)人圖像信息轉(zhuǎn)換成云特征信息,然后根據(jù)云特征信息生成多個(gè)水印云滴;從關(guān)系數(shù)據(jù)庫中選擇待嵌入水印云滴的元組及其屬性;將一個(gè)水印云滴嵌入到元組屬性中,重復(fù)上述過程直至掃描完整個(gè)關(guān)系數(shù)據(jù)庫,最后就得到了水印關(guān)系數(shù)據(jù)庫。
上述方法中的將版權(quán)人圖像信息轉(zhuǎn)換成云特征信息并生成多個(gè)水印云滴的方法,其流程如圖2所示,首先根據(jù)關(guān)系數(shù)據(jù)庫中元組的個(gè)數(shù)N確定需要生成的水印云滴個(gè)數(shù)為N;根據(jù)版權(quán)人圖像信息確定該圖像的每個(gè)像素點(diǎn)的灰度值;將灰度值進(jìn)行歸一化處理,得到一組歸一化后的灰度值;計(jì)算歸一化后灰度值的期望值Ex、方差值En,將歸一化后的灰度值與灰度期望值相減后取絕對值,得到一組減去期望值Ex的灰度值,并計(jì)算其方差值He;以方差值En為期望,以方差值He為標(biāo)準(zhǔn)差,生成一個(gè)正態(tài)隨機(jī)數(shù)En’;以Ex為期望,以En’為標(biāo)準(zhǔn)差,生成一個(gè)正態(tài)隨機(jī)數(shù)x,x即為一個(gè)水印云滴;重復(fù)上述過程,直至產(chǎn)生N個(gè)水印云滴。
上述方法中的選擇待嵌入水印云滴的元組及其屬性的方法,其流程如圖3所示,首先確定整個(gè)關(guān)系數(shù)據(jù)庫中可以嵌入水印云滴的數(shù)值型屬性及其個(gè)數(shù)An;將用戶給定的密鑰和關(guān)系數(shù)據(jù)庫中一個(gè)待嵌入水印云滴的元組的主鍵值連接成一個(gè)字符串,通過單向哈希函數(shù)將字符串轉(zhuǎn)換成一個(gè)128位的比特位序列;將比特位序列轉(zhuǎn)換成一個(gè)正整數(shù);根據(jù)用戶輸入的嵌入比例將該正整數(shù)取模,根據(jù)得到的余數(shù)判斷需要嵌入水印的元組,若不需要,則掃描關(guān)系數(shù)據(jù)庫中的下一個(gè)元組,若為需要,根據(jù)確定的An將該正整數(shù)取模,根據(jù)得到的余數(shù)確定需要嵌入水印的元組屬性。
本發(fā)明提出的從關(guān)系數(shù)據(jù)庫中提取數(shù)字水印的方法,其流程如圖4所示,從關(guān)系數(shù)據(jù)庫中選擇嵌入了水印云滴的元組屬性;將水印云滴從上述元組屬性中提取出來,并將其存儲;重復(fù)上述步驟,提取出關(guān)系數(shù)據(jù)庫中所有水印云滴,并將水印云滴還原成云特征信息;將還原的云特征信息與由版權(quán)人圖像信息生成的云特征信息進(jìn)行相似性比較,相似度大于給定閾值時(shí),則認(rèn)為提取的水印云滴信息為版權(quán)人圖像信息,否則認(rèn)為關(guān)系數(shù)據(jù)庫中沒有版權(quán)人圖像信息。
上述方法中將還原的云特征信息與由版權(quán)人圖像信息生成的云特征信息進(jìn)行相似性比較的過程,其流程如圖5和圖6所示,首先計(jì)算提取的水印云滴的均值M,得到水印云滴的云特征信息eEx;根據(jù)云特征信息eEx,計(jì)算水印云滴的一階矩M1,得到水印云滴的云特征信息eEn;根據(jù)云特征信息eEx,計(jì)算水印云滴的二階矩M2,再根據(jù)云特征信息eEn,得到水印云滴的云特征信息eHe;以云特征信息eEn為期望,以云特征信息eHe為標(biāo)準(zhǔn)差生成一個(gè)正態(tài)隨機(jī)數(shù)eEn’;以云特征信息eEx為期望,以正態(tài)隨機(jī)數(shù)eEn’為標(biāo)準(zhǔn)差生成一個(gè)正態(tài)隨機(jī)數(shù)y,y即為一個(gè)水印云滴;重復(fù)上述步驟直至產(chǎn)生n個(gè)水印云滴y(i),n為大于10000的自然數(shù),i=1~n;將版權(quán)人圖像信息轉(zhuǎn)換成n個(gè)水印云滴x(i);對產(chǎn)生的水印云滴x(i)和y(i)從小到大進(jìn)行冒泡排序;依次計(jì)算水印云滴x(i)和y(i)的對應(yīng)差值并取絕對值得d(i),計(jì)算d(i)的均值,求其倒數(shù),得到相似度。
以下為本發(fā)明的一個(gè)實(shí)施例向關(guān)系數(shù)據(jù)庫中嵌入數(shù)字水印前,首先需要將版權(quán)人圖像信息轉(zhuǎn)換成云特征信息并生成多個(gè)水印云滴,關(guān)系數(shù)據(jù)庫中元組的個(gè)數(shù)決定生成的水印云滴的個(gè)數(shù)(假設(shè)為N個(gè))。用(x,y,g)表示m×n大小的圖像中每個(gè)像素點(diǎn)的灰度,其中x,y分別表示像素點(diǎn)的位置(x=1,2,...,m,y=1,2,...,n),g表示(x,y)處的灰度值(0~255),將灰度值g歸一化到(0~1),這樣就得到一組歸一化后的灰度值gi(i=1...m×n),則可計(jì)算gi的均值得期望值Ex,即Ex=Σi=1m×ngi/(m×n),]]>計(jì)算gi的方差值En,即En=Σi=1m×ngi2/(m×n)-(Ex)2,]]>再將歸一化后的灰度值gi分別減去Ex并求其絕對值得ggi,即ggi=|gi-Ex|,再按照前面兩個(gè)公式計(jì)算ggi的方差值He。這樣就可通過以下步驟生成N個(gè)水印云滴。具體生成的步驟是這樣的(1)產(chǎn)生期望為En,標(biāo)準(zhǔn)差為He的正態(tài)隨機(jī)數(shù)En’;(2)產(chǎn)生期望為Ex,標(biāo)準(zhǔn)差為En’的正態(tài)隨機(jī)數(shù)x;(3)重復(fù)步驟(1)和(2),直至產(chǎn)生N個(gè)x,記作x(i),i=1,2,...,N。
然后確定關(guān)系數(shù)據(jù)庫中用來嵌入水印云滴的元組屬性,從關(guān)系數(shù)據(jù)庫的第一個(gè)元組開始進(jìn)行掃描,假定關(guān)系數(shù)據(jù)庫中可以嵌入水印的數(shù)值型屬性個(gè)數(shù)為An(并將其進(jìn)行編號,依次為0,1...An-1),嵌入比例是1/Scale(Scale為整數(shù),由用戶輸入),則將輸入的密鑰和關(guān)系數(shù)據(jù)庫元組的主鍵值連接成一個(gè)字符串,作為單向哈希函數(shù)(如MD5函數(shù))的輸入?yún)?shù),這樣就可得出一個(gè)128位的比特位序列,將該比特位序列轉(zhuǎn)換成正整數(shù),然后將該正整數(shù)對Scale取模,如果余數(shù)不為0則跳轉(zhuǎn)出去掃描關(guān)系數(shù)據(jù)庫下一個(gè)元組,如果余數(shù)為0的就判定該元組需要嵌入水印云滴,再將該正整數(shù)對An取模,根據(jù)得到的余數(shù)確定將一個(gè)水印云滴嵌入到該余數(shù)編號對應(yīng)的屬性尾數(shù)上,這樣就嵌入了一個(gè)水印云滴。繼續(xù)掃描關(guān)系數(shù)據(jù)庫的下一個(gè)元組,直至掃描完整個(gè)關(guān)系數(shù)據(jù)庫數(shù)據(jù)。這樣就將有版權(quán)人圖像信息生成的水印云滴嵌入到關(guān)系數(shù)據(jù)庫數(shù)值型數(shù)據(jù)中了,即該關(guān)系數(shù)據(jù)庫嵌入了版權(quán)人圖像信息。
從關(guān)系數(shù)據(jù)庫中提取版權(quán)人圖像信息的過程是這樣的,首先掃描關(guān)系數(shù)據(jù)庫的第一個(gè)元組,根據(jù)用戶輸入的密鑰,關(guān)系數(shù)據(jù)庫元組的主鍵值以及用戶輸入的嵌入比例1/Scale(Scale為整數(shù))確定可能嵌入水印的元組及其屬性(確定的方法同上),然后提取該元組屬性值的尾數(shù)作為一個(gè)水印云滴y。接著掃描關(guān)系數(shù)據(jù)庫的下一個(gè)元組,直至掃描完整個(gè)關(guān)系數(shù)據(jù)庫。這樣就從關(guān)系數(shù)據(jù)庫數(shù)值型數(shù)據(jù)中提取到多個(gè)(假設(shè)為n個(gè))水印云滴y(i)(i=1...n)。接著對這些提取到的n個(gè)水印云滴y(i)進(jìn)行逆向還原得到其云特征信息。具體步驟是這樣的(1)計(jì)算n個(gè)水印云滴y(i)(i=1,2,...,)的均值M,M=Σi=1ny(i)/n,]]>則有云特征信息eEx=M;(2)計(jì)算n個(gè)水印云滴y(i)(i=1,2,...,n)的一階矩M1,M1=Σi=1n|y(i)-eEx|/n,]]>則有云特征信息eEn=π2×M1;]]>(3)計(jì)算n個(gè)水印云滴y(i)(i=1,2,...,n)的二階矩M2,M2=Σi=1n(y(i)-eEx)2/(n-1),]]>則有云特征信息eHe=|(M2-eEn2|.]]>然后對版權(quán)人圖像信息進(jìn)行轉(zhuǎn)換,首先將其轉(zhuǎn)換成云特征信息。用(x,y,g)表示m×n大小的圖像中每個(gè)像素點(diǎn)的灰度,其中x,y分別表示像素點(diǎn)的位置(x=1,2,...,m,y=1,2,...,n),g表示(x,y)處的灰度值(0~255),將灰度值g歸一化到(0~1),這樣就得到一組歸一化后的灰度值gi(i=1,2,...,m×n),則可計(jì)算gi的均值得期望值Ex,即Ex=Σi=1m×ngi/(m×n),]]>計(jì)算gi的方差值En,即En=Σi=1m×ngi2/(m×n)-(Ex)2,]]>再將歸一化后的灰度值gi分別減去Ex并求其絕對值得ggi,即ggi=|gi-Ex|,再按照前面兩個(gè)公式計(jì)算ggi的方差值He。這樣就得到版權(quán)人圖像信息的云特征信息Ex,En,He。接著將提取到的多個(gè)水印云滴的云特征信息eEx,eEn,eHe和版權(quán)人圖像信息的云特征信息Ex,En,He進(jìn)行相似性比較,判斷關(guān)系數(shù)據(jù)庫中是否有版權(quán)人圖像信息。具體步驟是這樣的(這里的n為大于10000的自然數(shù))(1)產(chǎn)生期望為En,標(biāo)準(zhǔn)差為He的一個(gè)正態(tài)隨機(jī)數(shù)En’;(2)產(chǎn)生期望為Ex,標(biāo)準(zhǔn)差為En’的一個(gè)正態(tài)隨機(jī)數(shù)x;(3)重復(fù)步驟(1)和(2),直至產(chǎn)生n個(gè)x,記作x(i),(i=1,2...n);(4)產(chǎn)生期望為eEn,標(biāo)準(zhǔn)差為eHe的一個(gè)正態(tài)隨機(jī)數(shù)eEn’;(5)產(chǎn)生期望為eEx,標(biāo)準(zhǔn)差為eEn’的一個(gè)正態(tài)隨機(jī)數(shù)y;(6)重復(fù)步驟(4)和(5),直至產(chǎn)生n個(gè)y,記作y(i),(i=1,2...n);(7)對x(i)和y(i)從小到大進(jìn)行冒泡排序;(8)依次計(jì)算云滴x(i)和云滴y(i)的對應(yīng)差值的絕對值得到d(i),即d(i)=|x(i)-y(i)|,(i=1,2...n);(9)計(jì)算d(i)的均值,求其倒數(shù),得到相似度;(10)如果相似度>1/(3×En+30/n),則說明從關(guān)系數(shù)據(jù)庫中提取出了嵌入的版權(quán)人圖像信息;否則說明關(guān)系數(shù)據(jù)庫中沒有嵌入版權(quán)人圖像信息。
權(quán)利要求
1.一種向關(guān)系數(shù)據(jù)庫嵌入數(shù)字水印的方法,其特征在于該方法包括以下步驟(1)將待嵌入關(guān)系數(shù)據(jù)庫中的版權(quán)人圖像信息轉(zhuǎn)換成云特征信息,然后根據(jù)云特征信息生成多個(gè)水印云滴;(2)從關(guān)系數(shù)據(jù)庫中選擇待嵌入水印云滴的元組及其屬性;(3)將上述第(1)步中的一個(gè)水印云滴嵌入到上述第2步確定的元組屬性中;(4)重復(fù)步驟(2)和(3)直至掃描完整個(gè)關(guān)系數(shù)據(jù)庫。
2.如權(quán)利要求1所述的方法,其特征在于其中所述的將版權(quán)人圖像信息轉(zhuǎn)換成云特征信息并生成多個(gè)水印云滴的方法包括如下步驟(1)根據(jù)關(guān)系數(shù)據(jù)庫中元組的個(gè)數(shù)N確定需要生成的水印云滴個(gè)數(shù)為N;(2)根據(jù)版權(quán)人圖像信息確定該圖像的每個(gè)像素點(diǎn)的灰度值;(3)將步驟(2)得到的灰度值進(jìn)行歸一化處理,得到一組歸一化后的灰度值;(4)計(jì)算步驟(3)的歸一化后灰度值的期望值Ex;(5)計(jì)算步驟(3)的歸一化后灰度值的方差值En;(6)將步驟(3)的歸一化后的灰度值與步驟(4)的期望值Ex相減后取絕對值,得到一組減去期望值Ex的灰度值;(7)計(jì)算步驟(6)得到的減去期望值Ex后灰度值的方差值He;(8)以步驟(5)的方差值En為期望,以步驟(7)的方差值He為標(biāo)準(zhǔn)差,生成一個(gè)正態(tài)隨機(jī)數(shù)En’;(9)以步驟(4)的期望值Ex為期望,以步驟(8)的正態(tài)隨機(jī)數(shù)En’為標(biāo)準(zhǔn)差,生成一個(gè)正態(tài)隨機(jī)數(shù)x,x即為一個(gè)水印云滴;(10)重復(fù)步驟(8)和步驟(9),直至產(chǎn)生N個(gè)水印云滴。
3.如權(quán)利要求1所述的方法,其特征在于其中所述的選擇待嵌入水印云滴的元組及其屬性的方法包括如下步驟(1)確定整個(gè)關(guān)系數(shù)據(jù)庫中可以嵌入水印云滴的數(shù)值型屬性及數(shù)值型屬性個(gè)數(shù)An;(2)將用戶給定的密鑰和關(guān)系數(shù)據(jù)庫中一個(gè)待嵌入水印云滴的元組的主鍵值連接成一個(gè)字符串,通過單向哈希函數(shù)將字符串轉(zhuǎn)換成一個(gè)128位的比特位序列;(3)將步驟(2)的比特位序列轉(zhuǎn)換成一個(gè)正整數(shù);(4)根據(jù)用戶輸入的嵌入比例將步驟(3)的正整數(shù)取模,根據(jù)得到的余數(shù)判斷需要嵌入水印的元組,若為需要,則進(jìn)入步驟(5),若不需要,則掃描關(guān)系數(shù)據(jù)庫的下一個(gè)元組,并進(jìn)行步驟(2);(5)根據(jù)步驟(1)的數(shù)值型屬性個(gè)數(shù)An,將步驟(3)的正整數(shù)取模,根據(jù)得到的余數(shù)確定需要嵌入水印的元組屬性。
4.一種從關(guān)系數(shù)據(jù)庫提取數(shù)字水印的方法,其特征在于該方法包括以下步驟(1)從關(guān)系數(shù)據(jù)庫中選擇嵌入了水印云滴的元組及其屬性;(2)將水印云滴從上述選擇的元組屬性中提取出來,并將其存儲;(3)重復(fù)步驟(1)和(2),提取關(guān)系數(shù)據(jù)庫中所有水印云滴,并將水印云滴還原成云特征信息eEx、eEn和eHe;(4)將上述第(3)步還原的云特征信息eEx、eEn和eHe與由版權(quán)人圖像信息生成的云特征信息進(jìn)行相似性比較,若相似度大于給定閾值,則認(rèn)為提取的水印云滴為版權(quán)人圖像信息,否則認(rèn)為關(guān)系數(shù)據(jù)庫中沒有版權(quán)人圖像信息。
5.如權(quán)利要求4所述的方法,其特征在于步驟(3)中將水印云滴還原成云特征信息的方法,包括如下步驟(1)計(jì)算提取的水印云滴的均值M,得到水印云滴的云特征信息eEx;(2)根據(jù)步驟(1)的云特征信息eEx,計(jì)算水印云滴的一階矩M1,得到水印云滴的云特征信息eEn;(3)根據(jù)步驟(1)的云特征信息eEx,計(jì)算水印云滴的二階矩M2,再根據(jù)步驟(2)的云特征信息eEn,得到水印云滴的云特征信息eHe。
6.如權(quán)利要求4所述的方法,其特征在于步驟(4)中將還原的云特征信息與由版權(quán)人圖像信息生成的云特征信息進(jìn)行相似性比較的過程,包括以下步驟(1)以云特征信息eEn為期望,以云特征信息eHe為標(biāo)準(zhǔn)差生成一個(gè)正態(tài)隨機(jī)數(shù)eEn’;(2)以云特征信息eEx為期望,以上述正態(tài)隨機(jī)數(shù)eEn’為標(biāo)準(zhǔn)差生成一個(gè)正態(tài)隨機(jī)數(shù)y,y即為一個(gè)水印云滴;(3)重復(fù)步驟(1)和步驟(2),直至產(chǎn)生n個(gè)水印云滴y(i),n為大于10000的自然數(shù),i=1~n;(4)將版權(quán)人圖像信息轉(zhuǎn)換成n個(gè)水印云滴x(i);(5)將步驟(3)和步驟(4)產(chǎn)生的水印云滴y(i)和x(i)從小到大進(jìn)行冒泡排序;(6)依次計(jì)算水印云滴x(i)和y(i)的對應(yīng)差值并取絕對值,得到d(i);(7)計(jì)算步驟(6)的d(i)的均值,求其倒數(shù),得到相似度。
全文摘要
本發(fā)明涉及一種向關(guān)系數(shù)據(jù)庫嵌入和提取數(shù)字水印的方法,屬于信息隱藏技術(shù)領(lǐng)域。嵌入數(shù)字水印的方法為首先將待嵌入的版權(quán)人圖像信息轉(zhuǎn)換成水印云滴;選擇待嵌入水印云滴的元組及其屬性;將水印云滴嵌入到確定的元組屬性中。提取數(shù)字水印的方法為,首先選擇嵌入了水印云滴的元組屬性;將水印云滴提取出來,并將其存儲;提取所有水印云滴,并將水印云滴還原成云特征信息,再將其與由版權(quán)人圖像信息生成的云特征信息進(jìn)行相似性比較,以確定版權(quán)人圖像信息。利用本發(fā)明方法嵌入的數(shù)字水印具有一定的隱匿性,不影響嵌入水印后數(shù)據(jù)的使用;嵌入的數(shù)字水印有一定的魯棒性,在惡意攻擊后數(shù)字水印依然存在;非授權(quán)人無法把原始數(shù)據(jù)和數(shù)字水印分離。
文檔編號G06F17/30GK1547138SQ200310117358
公開日2004年11月17日 申請日期2003年12月12日 優(yōu)先權(quán)日2003年12月12日
發(fā)明者李德毅, 張勇, 王建民, 趙東寧 申請人:中國人民解放軍總參謀部第六十一研究所, 清華大學(xué), 中國人民解放軍總參謀部第六十一研究