高智賢 張業(yè)宏
新鄉(xiāng)醫(yī)學(xué)院 河南新鄉(xiāng) 453003
基于語音權(quán)重的關(guān)系數(shù)據(jù)庫水印算法研究
高智賢 張業(yè)宏
新鄉(xiāng)醫(yī)學(xué)院 河南新鄉(xiāng) 453003
闡述了水印關(guān)系數(shù)據(jù)庫在數(shù)據(jù)阻盜版中的需要,明確了對水印技術(shù)提出挑戰(zhàn)的關(guān)系型數(shù)據(jù)的特點。創(chuàng)造性地提出了一個新型的方法,為關(guān)系型數(shù)據(jù)庫產(chǎn)生水印,根據(jù)分配的權(quán)重不同,把語音信號嵌入到數(shù)據(jù)庫中作為水印。實驗結(jié)果表明在各種不同的攻擊下該方案是健壯的。該方法更加直接,并支持簡單的水印識別。
水印關(guān)系數(shù)據(jù)庫;版權(quán)保護;信息隱藏
水印技術(shù)作為一個所有權(quán)保護的手段被廣泛應(yīng)用在多媒體技術(shù)中。關(guān)系數(shù)據(jù)庫越來越廣泛地應(yīng)用產(chǎn)生了一種對于這種技術(shù)的類似需求,將數(shù)據(jù)庫和這些數(shù)據(jù)庫的所有者關(guān)聯(lián)起來。水印的主要思路是引入微小的錯誤作為水印。我們可以通過在關(guān)系型數(shù)據(jù)庫中嵌入數(shù)字水印解決這個問題,但目前與此相關(guān)的研究并不多。水印關(guān)系數(shù)據(jù)庫在數(shù)據(jù)庫和信息隱藏兩個領(lǐng)域中都變成了重要課題。
我們?yōu)殛P(guān)系型數(shù)據(jù)庫提出一種新方案,以音頻信號作為水印源信號。用混沌信號加密的音頻信號根據(jù)不同權(quán)重作為版權(quán)信息嵌入數(shù)值中。作為生物識別特征,語音是固有的,并且不隨時間而改變。我們可以利用語音特征和含義得出版權(quán)信息。
水印的主要思路是給數(shù)據(jù)引入微小的冗余。設(shè)計一個特殊的算法機制保護相關(guān)數(shù)據(jù)是有必要的。假定數(shù)據(jù)庫的關(guān)系可以通過某些屬性做標(biāo)記,這些改變不會影響其他應(yīng)用。我們知道在數(shù)據(jù)庫(特別是大型數(shù)據(jù)庫中)具有很多屬性,針對不同的應(yīng)用目的這些屬性的重要性不盡相同。為了保證數(shù)據(jù)集的一致,一個屬性越是重要,它就越不能被改動。所以我們提出了一種技術(shù),根據(jù)不同的可能權(quán)重為某一個屬性加水印。
我們的技術(shù)目標(biāo)是根據(jù)權(quán)值標(biāo)記數(shù)值大小。水印相關(guān)型數(shù)據(jù)庫的模型描述如下,如果R是一個關(guān)系,用P來表示它的關(guān)鍵屬性,A0,…,Ai-1來表示它的其他屬性。我們?yōu)槊恳粋€數(shù)據(jù)庫的所有者賦一個權(quán)值,表示為W0,W1,…,Wi-1(Σwi=1, i∈[0,i-1]).在關(guān)系R中元組t的屬性A被標(biāo)記為t.A,用符號t.A[i]可以訪問t.A的第i個元素。關(guān)系R包括η個元組,還有一個關(guān)系因子ω=1/α,可以用來做水印。假設(shè)允許在一個小數(shù)值(1/α)中改變最低ξ位中的一個。數(shù)據(jù)所有者負(fù)責(zé)決策哪個屬性適用于加水印,并且給出每一個可標(biāo)記屬性。同時也要幫著去決定兩個重要的參數(shù)ξ和γ,它們是用來描述對一個數(shù)據(jù)庫的修改權(quán)限的。
我們將嵌入版權(quán)信息在一些實數(shù)屬性中。使用加密的特征語音激發(fā)水印產(chǎn)生算法器產(chǎn)生水印,然后進行相關(guān)的插入和檢測算法。因為每一個人的語音都具有與其他人相比很獨特且長期不會改變的特征,所以我們選擇語音信號作為水印。
過程包括3部分:壓縮語音信號,增強語音信號,使用混沌信號加密水印。
水印信號的產(chǎn)生過程如下:(1)記錄下數(shù)據(jù)庫所有者語音信號片段,我們在不影響應(yīng)用目的的前提下引入微小的錯誤信號(這個標(biāo)記不能影響數(shù)據(jù)的應(yīng)用,因此水印信號必須很小)。于是,由于信息量的龐大,語音信號需要壓縮。我們使用小波來實驗壓縮。(2)語音信號增強。我們使用頻譜去噪來實現(xiàn)這個目的。這種技術(shù)執(zhí)行在頻域并且假定輸入信號的頻譜可以表示為語音信號和噪音信號的和。過程包括兩個難點:評估背景噪音信號的頻譜;從語音信號中減掉噪聲的頻率。(3)加密水印。我們把信號轉(zhuǎn)變?yōu)?位A律信號。在我們的機制中,使用Logistic混沌系統(tǒng)加密所有者的語音信號序列?;煦缒P屯ㄟ^單向散列函數(shù)來加密一些屬性。因此,通過使用混沌模型,水印系統(tǒng)的安全性可以加強。作為隨機序列產(chǎn)生器,Logistic方程為:Xn+1=μXn(1-Xn){μ∈[1,4] n=0,1,2,…},設(shè)算式中μ=4。我們選擇一個閾值Q值變化的混沌序列的二進制序列P(I),所有者的語音信號加密為E(i) =W(i)⊕P(i),i=1,2,…,n.⊕=XOR。Logistic的混沌系統(tǒng)重復(fù)這個過程直到B={B1,B2,…,BN×N}中的每一個元素都被加密。當(dāng)每一個元素都被加密時,我們設(shè)定加密后集合為E={E1,E2,…,EN×N}。
把有意義的水印M(平面水印)轉(zhuǎn)變成具有一定長度的比特流E(EMC,加密標(biāo)記代碼)。單向散列函數(shù)(例如MD5)的H在我們的算法里至關(guān)重要。我們使用單向散列函數(shù)來決定哪些元組要標(biāo)記。同樣的方法用來決定哪一位是要標(biāo)記的。至于屬性,我們使用一個權(quán)值越大標(biāo)記值越大的算法為每一個元組標(biāo)記權(quán)限。由于散列結(jié)果預(yù)計要均勻分布,我們可以將其劃分成不同的組,各組大小類似,從而得到L組。水印的第i位將被插入到第i組。I升序的范圍從0到mark_length-1水印順序自然保留。這在檢測階段很有用。水印插入算法如下:
// 加權(quán)水印算法,返回標(biāo)記R
// Hi 是單向散列函數(shù), L是EMC的長度
// 參數(shù) k, L, α, ξ和ν私有
1 E[L]=H(k concatenate M) // 計算L-bit EMC
2 for each tuple r∈R do
3 t= H1( k concatenate r.P)
4 if ( t mod γ equals 0) then // 標(biāo)記這個元組
5 i = select_attribute() // mark i-th attribute
6 j = t mod ξ // mark j th bit
7 k= t mod L //use the k-th bit of EMC
8 m=Ek XOR (k mod 2) // value of marked bit
9 set the j-th LSB of r.Ai to m
10 return R
11 procedure select_attribute()
12 u= H2( k concatenate r.P)
13 d=Σ(1/ Wi) i∈[0,i-1]
14 if (u mod d) ∈(Σ(1/ Wi-1),Σ(1/ Wi]
15 then return i // W-1=0
由于同分布的哈希函數(shù),當(dāng)由相同密鑰進行種子生成時,插入算法中各組被選擇的元組序列相同。對于同一順序每個標(biāo)記位,我們把它的值的計數(shù)為0或者為1,然后一個多數(shù)表決機制將決定這一位最終的值。檢測到的結(jié)果是一個二進制序列,其中包括DataSet的版權(quán)信息。我們的二進制序列可以轉(zhuǎn)換回語音信號,因此,版權(quán)所有者可以利用語音的特征來證明版權(quán)。水印檢測算法如下:
1 for s=0 to L-1 do
2 DM[s]=’’ // initialize detected mark code
3 count[s][0]=0, count[s][1]=0 // initialize counter
許多學(xué)生能說出“膜的主要成份是磷脂和蛋白質(zhì)”,但對于不同的細(xì)胞功能與其膜上載體、糖蛋白特點沒能建立起聯(lián)系,知識是點狀,碎片化的,缺乏系統(tǒng)觀。
4 foreach tuple r∈R do
5 t= H1( k concatenate r.P)
6 if ( t mod γ equals 0) then // select this tuple
7 i = select_attribute() // mark i-th attribute
8 j = t mod ξ // select j-th bit
9 k= t mod L // mark the k-th bit of EMC
11 count[k][m]=count[k][m]+1 // add the counter
12 for s=0 to L-1 // get the watermark
13 if (count[s][0]>=count[s][1]) // majority voting
14 then DM[s]=0 else DM[s]=1 //the f nal bit value
15 return DM[ ]
為了檢驗該算法的有效性和魯棒性,我們在2.4GHz CPU,512MB的RAM的Windows XP計算機上執(zhí)行程序進行實驗。由于我們的算法是面向?qū)傩缘?,因而測試方法也面向?qū)傩浴K惴ㄊ褂肑ava的Eclipse平臺版本3.0,使用ODBC連接訪問Microsoft off ce access 2003數(shù)據(jù)庫。應(yīng)用我們的算法生成的數(shù)據(jù),具有5個屬性,權(quán)值分別為0.4,0.3,0.2,0.05和0.05。生成的記錄大小為24000。我們選擇MD5作為單向散列函數(shù)。子集選擇攻擊算法,攻擊者試圖細(xì)分元組或者屬性來破壞水印。我們選擇不同比例的原始數(shù)據(jù)來模擬這種攻擊,該標(biāo)記的長度是64位,頻率分子(ω/L)為5。圖1給出了水印檢測率攻擊發(fā)生時,子集選擇。
圖1 子集攻擊選擇結(jié)果
子集附加攻擊:在這一部分,攻擊者隨機選擇了被標(biāo)記水印的關(guān)系部分,將他們和相似不帶水印的元組混合形成新的關(guān)系,新關(guān)系尺寸和原來的尺寸大致相同。結(jié)果如圖2所示。
圖2 子集附加攻擊的結(jié)果
亞群的變化攻擊:在這一部分,攻擊者修改了一些顯著的關(guān)系元組擦除水印?;蛘呤侵刂妹總€攻擊位為相反位或者是隨機重置每個攻擊位。與非加權(quán)算法的比較,亞群攻擊的變化如圖3所示。
圖3 亞群的變化攻擊
隨著數(shù)據(jù)庫安全的升級,迫切需要解決關(guān)系數(shù)據(jù)庫的版權(quán)問題。我們提出了一個新穎的關(guān)系型數(shù)據(jù)庫的數(shù)字水印產(chǎn)生方法,使用語音信號根據(jù)屬性的權(quán)重將水印嵌入數(shù)據(jù)庫。此外,我們提出了安全性分析,以顯示我們的技術(shù)應(yīng)對各種攻擊的健壯性。通過實驗,結(jié)果表明,使用圖像特征給關(guān)系數(shù)據(jù)庫增加水印的方法是正確的,可行的。這也意味著我們方法的安全性優(yōu)于以前的算法。
我們利用語音信號保護關(guān)系型數(shù)據(jù)庫版權(quán)的方法僅研究了數(shù)值屬性,今后,要將研究擴展到非數(shù)值屬性領(lǐng)域。由于關(guān)系數(shù)據(jù)的特殊性,在水印關(guān)系數(shù)據(jù)庫中進行深入研究有一些困難。但是,關(guān)系數(shù)據(jù)庫管理與水印著作權(quán)將會是數(shù)據(jù)庫研究的重要課題。本研究方向?qū)@得越來越多的密切關(guān)注。
[1] R.Agrawal, J.Kieman. Watermarking Relational Databases[C]. Proceedings of the 28th VLDB Conference. Hong Kong, China,2002
[2] Radu, S., Mikhail, A., Sunil, P.: Rights Protection for Relational Data [C].Proceedings of ACM SIGMOD,2003
[3] N.Xiamu, Z.Liang, H.Wenjun, "Watermarking Relational Databases for Ownership rotection" [J]. Chinese of Journal Electronics,2003
[4] Z.Zhi-Hao, J.XiaoMing, W.JianMing, "Watermarking relational database using image" [C]. Proceedings of the 3rd International Conference on Machine Learning and Cybernetics. Shanghai,2004
[5] H.Zhongyan, C.Zaihui, S.Jianhua. "An image based algorithm for watermarking relational databases"[C]. 2009 International Conference on Measuring Technology and Mechatronics Automation,2009
[6] S.Jianhua, C.Zaihui, H.Zhongyan. "Multiple Watermarking Relational Databases Using Image"[C]. 2008 International Conference on MultiMedia and Information Technology. Hong Kong, China
[7] C.Xinchun, Q.Xialin, G.Zhijin. "Weighted algorithm for fingerprinting relational database"[J]. Transactions of Nanjing University of Aeronautics & Astronautics,2009
[8] L.S.Wang, S. Deng, R. Shao, A Block Oriented Fingerprinting Scheme in Relational Database[C]. Proc. Seventh Ann. Int’l Conf. Information Security and Cryptology (ICISC2004) (2004),p455
Speech algorithm for watermarking relational databases based on weighted
Gao Zhixian, Zhang Yehong
Xinxiang medical university, Xinxiang, 453003, China
We enunciate the need for watermarking database relations to deter data piracy, identify the characteristics of relational data that pose unique challenges for watermarking. This paper creatively proposes a novel method for watermarking relational database, which uses speech signal as watermark embed into database according to the weight of attributes. Experimental results show that the proposed scheme is robust against various forms of attacks. Our approach is more intuitive, and it support easy watermark identif cation.
watermarking relational databases; copyright protection; information hiding
2011-03-30 稿件編號:1103211
高智賢,本科,助教。張業(yè)宏,本科,助教。