欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

數(shù)據(jù)隱藏和抽取方法、系統(tǒng)和電路的制作方法

文檔序號:2395165閱讀:295來源:國知局
專利名稱:數(shù)據(jù)隱藏和抽取方法、系統(tǒng)和電路的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及在媒體數(shù)據(jù)中隱藏消息數(shù)據(jù)以及抽取隱藏?cái)?shù)據(jù)的方法、系統(tǒng)和電路。
背景技術(shù)
由于面向多媒體社會(huì)的發(fā)展,因此,在Internet或諸如CD-ROM、DVD-ROM(或DVD-RAM)、DVC等記錄介質(zhì)上分布有大量數(shù)字化的圖象和聲音信息。由于任何人都可以輕易地全面復(fù)制以上數(shù)字化信息(該信息不易降質(zhì)),所以其不正當(dāng)使用是個(gè)問題。為了防止他人不正當(dāng)?shù)貜?fù)制媒體數(shù)據(jù)(如圖象或聲音數(shù)據(jù)),隱藏技術(shù)正在受到關(guān)注,該技術(shù)在原始媒體數(shù)據(jù)中隱藏諸如作者標(biāo)志一類的信息。如果數(shù)字化的圖象數(shù)據(jù)被非法復(fù)制,通過檢查副本中隱藏的標(biāo)志就可以確定其來源,從而確定其是否被非法復(fù)制。該種技術(shù)被稱為“數(shù)據(jù)隱藏”。
圖1是一個(gè)半色調(diào)圖象,該圖象包括顯示器上顯示的數(shù)字化數(shù)據(jù)。如圖1(b)所示,將諸如“看護(hù)人”、“河”、“幼兒園學(xué)生”以及“鳥”這一類的照片說明(消息)隱藏在媒體數(shù)據(jù)(即圖1(a)中的數(shù)字化圖象)中。通過將照片中的圖象劃分為小點(diǎn),并確定各點(diǎn)的亮度值和顏色值,就可以得到媒體數(shù)據(jù)。此時(shí),故意改變圖象的原始數(shù)值。數(shù)值的細(xì)小變化不會(huì)顯著地扭曲圖象,用戶也不會(huì)注意到??梢岳靡陨咸匦栽谠紙D象中隱藏完全不同的信息(消息數(shù)據(jù))。隱藏在圖象中的消息數(shù)據(jù)可以包括任意信息,例如,可以為網(wǎng)格模式、尺狀圖形或圖象的制作人標(biāo)志。利用特定程序進(jìn)行處理,就可以抽取媒體數(shù)據(jù)中隱藏的消息數(shù)據(jù)。因此,根據(jù)抽取的消息數(shù)據(jù),就可以確定是否修改了原始媒體數(shù)據(jù)。
將圖1(b)所示的消息隱藏在該圖象上一個(gè)有意義的區(qū)域附近。例如,將消息“鳥”隱藏在該鳥在該圖象中出現(xiàn)的區(qū)域附近,并作為標(biāo)題。為了在圖象中隱藏諸如所有者信息一類的消息,最好將該消息散布在該圖象上。這是由于當(dāng)局部隱藏的消息較大時(shí),可能降低該區(qū)域的質(zhì)量。此外,如果剪去部分圖象,如果消息是散布在整個(gè)圖象上的,仍然可以抽取該消息。因此,如何確定在何處隱藏消息是很重要的。根據(jù)狀態(tài)序列S確定其位置。即,狀態(tài)序列中的各元素與各消息有關(guān),并且將該消息隱藏在根據(jù)該元素確定的相應(yīng)位置。
根據(jù)常規(guī)數(shù)據(jù)隱藏方法,利用隨機(jī)數(shù)序列確定狀態(tài)序列S。圖2利用示意圖說明根據(jù)常規(guī)方法散布在圖象上的消息數(shù)據(jù)的布局。將圖1(a)所示的圖象劃分為I個(gè)圖象區(qū)域,分別用0到9進(jìn)行編號。隨后,將消息數(shù)據(jù)表示為消息數(shù)組(m),一個(gè)數(shù)組元素被描述為一個(gè)數(shù)組值m[n](0≤n≤9)。各數(shù)組值與分劃消息數(shù)據(jù)有關(guān)。將各消息隱藏在圖象中的某個(gè)位置,其中該位置是根據(jù)狀態(tài)序列S中的元素確定的。以下等式確定位置p0,在位置p0隱藏第零個(gè)消息m

狀態(tài)值S0=初始值(常量)位置p0=S0mod I以上等式表示,在給定常量作為狀態(tài)值S0的初值之后,狀態(tài)值S0對I(圖象的區(qū)域數(shù)目)的余數(shù)就是p0。位置p0的值為0到(I-1)之間的任意整數(shù)。把整數(shù)值和圖象區(qū)域的順序聯(lián)系起來,將消息m
隱藏到第i個(gè)圖象區(qū)域。根據(jù)以下等式確定第一消息和后繼消息m[n]的位置pn。
Sn=Rnd(Sn-1)pn=Snmod I以上等式表示利用前一狀態(tài)值Sn-1作為隨機(jī)數(shù)啟動(dòng)源產(chǎn)生偽隨機(jī)數(shù)數(shù)組,利用該值作為下一狀態(tài)值Sn。狀態(tài)值Sn對I的余數(shù)就是位置pn。將消息m[n]隱藏到與該值相對應(yīng)的圖象區(qū)域。
只有知道狀態(tài)值S0(初值)的用戶,才能讀取隱藏消息。若抽取了該消息,就根據(jù)初值計(jì)算狀態(tài)S0之后的所有狀態(tài)值(S1,...,S9)。從而可以確定與狀態(tài)值相對應(yīng)的位置,并抽取隱藏在這些位置的消息。
正如在圖2所示,由于狀態(tài)值Sn(該值用于確定第n個(gè)消息m[n]在圖象上的位置)僅依賴于狀態(tài)值Sn-1,因此,當(dāng)確定了狀態(tài)值Sn-1之后,就可以確定狀態(tài)值Sn。同樣,狀態(tài)值Sn-1僅依賴于狀態(tài)值Sn-2。通過遞歸重復(fù)以上過程,就能確定狀態(tài)序列S中的所有元素(S0,S1,S2,...,S9)。因此,狀態(tài)序列S中的所有元素僅依賴于最初給定的作為初值的常量。所以,一旦確定了初值,就能確定狀態(tài)序列S,以便確定散布在圖象上的消息位置,抽取其隱藏內(nèi)容。
盡管努力保密其初值,如果公開了初值,或者他人知道了該初值,他人就可以利用該值輕易確定消息位置,刪除該消息數(shù)據(jù)或者在第一數(shù)據(jù)上寫入不同的消息數(shù)據(jù)。常規(guī)方法很難有效阻止他人為了使原始材料不被發(fā)現(xiàn)而刪除原始標(biāo)志,或者為了將他或她作為作者而在原始標(biāo)志上寫入不同標(biāo)志。

發(fā)明內(nèi)容
因此,本發(fā)明的目的在于提出一種新方法,該方法用于在媒體數(shù)據(jù)中散布并隱藏消息數(shù)據(jù)。本發(fā)明的另一目的在于提供一種數(shù)據(jù)隱藏方法,該方法能夠阻止他人修改消息數(shù)據(jù)。
本發(fā)明第一方面提供一種數(shù)據(jù)隱藏方法,該方法在消息數(shù)據(jù)中,隱藏有關(guān)所述消息數(shù)據(jù)的參考位置和所述媒體數(shù)據(jù)的信息,并且其中有關(guān)所述參考位置的信息被隱藏在所述消息數(shù)據(jù)中,使得即使部分所述消息數(shù)據(jù)作為部分消息數(shù)據(jù)被剪切,也可以檢測原始圖象數(shù)據(jù)的參考位置或基于所述參考位置的相對位置。
本發(fā)明第二方面提供一種用于在媒體數(shù)據(jù)中隱藏?cái)?shù)據(jù)的數(shù)據(jù)隱藏方法,該方法包括以下步驟(a)標(biāo)識(shí)其中隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)內(nèi)的一個(gè)數(shù)據(jù)塊;
(b)確定所述標(biāo)識(shí)數(shù)據(jù)塊的特征值;和(c)處理所述數(shù)據(jù)塊的特征值,以便依據(jù)轉(zhuǎn)換規(guī)則,隱藏該消息數(shù)據(jù),其中轉(zhuǎn)換規(guī)則把需要隱藏的數(shù)據(jù)的內(nèi)容同特征值的參考值與所述數(shù)據(jù)塊的特征值之間的差值聯(lián)系起來。
本發(fā)明第三方面提供一種用于在媒體數(shù)據(jù)中隱藏?cái)?shù)據(jù)的數(shù)據(jù)隱藏方法,該方法包括以下步驟(a)確定媒體數(shù)據(jù)內(nèi)的一對數(shù)據(jù)塊,該媒體數(shù)據(jù)包括第一數(shù)據(jù)塊和第二數(shù)據(jù)塊;(b)比較所述確定的特征值,處理構(gòu)成所述對的所述數(shù)據(jù)塊的特征值,以便隱藏該消息數(shù)據(jù);(c)比較所述確定的特征值之間的差值,并且依據(jù)轉(zhuǎn)換規(guī)則,處理構(gòu)成所述對的所述各數(shù)據(jù)塊的特征值,以便在消息數(shù)據(jù)中隱藏部分?jǐn)?shù)據(jù);(d)重復(fù)步驟(a)到步驟(c),直至隱藏了所有消息數(shù)據(jù)。
本發(fā)明第四方面提供一種用于在媒體數(shù)據(jù)中隱藏?cái)?shù)據(jù)的數(shù)據(jù)隱藏方法,該方法包括以下步驟(a)確定媒體數(shù)據(jù)內(nèi)的一對數(shù)據(jù)塊,該媒體數(shù)據(jù)包括第一數(shù)據(jù)塊和第二數(shù)據(jù)塊;和(b)確定構(gòu)成所述配對的所述各塊的特征值;(c)根據(jù)轉(zhuǎn)換規(guī)則,交換構(gòu)成所述配對的所述塊的特征值,以便隱藏消息數(shù)據(jù),其中轉(zhuǎn)換規(guī)則確定數(shù)據(jù)塊之間的特征值的差值。
本發(fā)明第五方面提供一種用于從隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)中抽取消息數(shù)據(jù)的數(shù)據(jù)抽取方法,該方法包括以下步驟(a)標(biāo)識(shí)其中隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)內(nèi)的數(shù)據(jù)塊中的一個(gè);(b)確定所述標(biāo)識(shí)數(shù)據(jù)塊的特征值;和(c)根據(jù)所述數(shù)據(jù)塊的特征值,依據(jù)轉(zhuǎn)換規(guī)則,抽取該消息數(shù)據(jù),其中轉(zhuǎn)換規(guī)則把需要抽取的數(shù)據(jù)的內(nèi)容同特征值的參考值與所述數(shù)據(jù)塊的特征值之間的差值聯(lián)系起來。
本發(fā)明第六方面提供一種用于從隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)中抽取消息數(shù)據(jù)的數(shù)據(jù)抽取方法,該方法包括以下步驟
(a)標(biāo)識(shí)其中隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)內(nèi)的一對數(shù)據(jù)塊;(b)確定構(gòu)成所述配對的所述數(shù)據(jù)塊的特征值;和(c)根據(jù)所述相關(guān)數(shù)據(jù)塊的特征值,依據(jù)轉(zhuǎn)換規(guī)則,抽取隱藏?cái)?shù)據(jù),其中轉(zhuǎn)換規(guī)則把需要抽取的數(shù)據(jù)的內(nèi)容同構(gòu)成所述配對的所述數(shù)據(jù)塊之間的特征值的差值聯(lián)系起來。
本發(fā)明第七方面提供一種用于從隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)中抽取消息數(shù)據(jù)的數(shù)據(jù)抽取系統(tǒng),該系統(tǒng)包括一個(gè)轉(zhuǎn)換裝置,該轉(zhuǎn)換器將由模擬信號構(gòu)成的包含隱藏消息數(shù)據(jù)的消息數(shù)據(jù)轉(zhuǎn)換為數(shù)字信號,隨后輸出該數(shù)字信號;一個(gè)確定裝置,該裝置確定隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)中的數(shù)據(jù)塊中的一個(gè);一個(gè)特征值計(jì)算裝置,該裝置決定由所述確定裝置確定的所述數(shù)據(jù)塊的特征值;一個(gè)存儲(chǔ)裝置,該裝置存儲(chǔ)轉(zhuǎn)換規(guī)則,轉(zhuǎn)換規(guī)則把需要抽取的數(shù)據(jù)內(nèi)容同特征值的參考值與所述數(shù)據(jù)塊的特征值之間的差值聯(lián)系起來;和一個(gè)抽取裝置,該裝置依據(jù)所述數(shù)據(jù)塊的特征值,參照轉(zhuǎn)換規(guī)則,抽取消息數(shù)據(jù)。
本發(fā)明第八方面提供一種用于從隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)中抽取消息數(shù)據(jù)的半導(dǎo)體集成電路,該電路包括用于確定由輸入信號構(gòu)成的媒體數(shù)據(jù)中某個(gè)數(shù)據(jù)塊的特征值的設(shè)備,其中已經(jīng)確定該數(shù)據(jù)塊中隱藏有消息數(shù)據(jù);和一個(gè)抽取裝置,該裝置根據(jù)所述數(shù)據(jù)塊的特征值,參照轉(zhuǎn)換規(guī)則,抽取隱藏的消息數(shù)據(jù),其中轉(zhuǎn)換規(guī)則把需要抽取的數(shù)據(jù)內(nèi)容同特征值的參考值與所述數(shù)據(jù)塊的特征值之間的差值聯(lián)系起來。


圖1是一半色調(diào)圖象,該圖象包括顯示器上顯示的數(shù)字化的數(shù)據(jù);圖2利用示意圖說明根據(jù)常規(guī)方法散布在圖象上的消息數(shù)據(jù)的布局;圖3說明一媒體數(shù)組和一消息數(shù)組;
圖4利用示意圖說明隱藏處理中采用的媒體數(shù)組值之間的關(guān)系;圖5是一示意圖,說明將要隱藏的對象;圖6是一流程圖,說明在媒體數(shù)據(jù)中隱藏消息數(shù)據(jù)的過程;圖7說明隱藏中狀態(tài)值Sj-1和Sj之間的關(guān)系;圖8是一流程圖,說明從隱藏?cái)?shù)據(jù)中抽取消息數(shù)據(jù)的過程;圖9說明抽取中狀態(tài)值Si和狀態(tài)值Sj-1之間的關(guān)系;圖10說明確定生成的消息數(shù)組值是否是消息的開始;圖11是一概念圖,說明由于修改而生成的錯(cuò)誤狀態(tài)序列S的狀態(tài);圖12說明采用PBC的數(shù)據(jù)隱藏和抽取方法;圖13說明采用單一象素作為象素塊,采用PBC的隱藏方法;圖14說明在原始圖象中隱藏消息和位置信息的方法;圖15說明采用同心圓弧作為位置信息的情況;圖16說明在采用同心圓弧作為位置信息的情況下,參考位置B的標(biāo)識(shí);圖17說明采用同心圓弧作為位置信息的隱藏和抽取方法;圖18是一廣播系統(tǒng)框圖;圖19是一框圖,說明Internet中的一發(fā)送器和一接收機(jī);圖20是一框圖,說明一服務(wù)器和一客戶;圖21是指紋和水印系統(tǒng)的框圖;圖22是一數(shù)據(jù)抽取系統(tǒng)的框圖;和圖23是在單片電路上設(shè)置數(shù)據(jù)抽取系統(tǒng)的半導(dǎo)體集成電路的框圖。
具體實(shí)施例方式
A.數(shù)據(jù)定義首先,定義以下數(shù)組和序列。(1)媒體數(shù)組M(2)消息數(shù)組m(3)狀態(tài)序列S(4)位置序列p(1)媒體數(shù)組M媒體數(shù)據(jù)包括圖象和聲音數(shù)據(jù)。利用媒體數(shù)組M定義媒體數(shù)據(jù)(其中嵌有消息數(shù)據(jù)),并且一個(gè)媒體數(shù)組元素M[i]為以下表示的媒體數(shù)組的一個(gè)數(shù)組元素。
M{M0,M1,...,Mi,..,MI-1}或M[i] 0≤i≤I-1 I媒體數(shù)據(jù)的長度例如,如果媒體數(shù)據(jù)為圖1(a)所示的圖象,則如圖3所示,將該圖象劃分為I個(gè)圖象區(qū)域,第一個(gè)區(qū)域具有第零個(gè)媒體數(shù)組值M
。第i個(gè)圖象區(qū)域具有媒體數(shù)組值M[i],最后一個(gè)圖象區(qū)域具有媒體數(shù)組值M[I-1]。各媒體數(shù)組值中的數(shù)據(jù)為其相應(yīng)圖象區(qū)域的圖象信息。對于單色屏幕而言,圖象信息為密度,而對于彩色屏幕而言,該信息為亮度。如果圖象區(qū)域的數(shù)目等于象素?cái)?shù)目,則媒體數(shù)組值M[i]為第i個(gè)象素的象素值。如果圖象區(qū)域包括多個(gè)象素(例如,3×3個(gè)象素),則圖象信息為相應(yīng)象素值。如果媒體數(shù)據(jù)為聲音,則可以將媒體數(shù)組值M[i]定義為在時(shí)刻(i)的振幅值。假設(shè)可以將各數(shù)組值M[i]中的數(shù)據(jù)表示為一個(gè)BM字節(jié)的整數(shù)。
(2)消息數(shù)組(m)例如,嵌入到媒體數(shù)據(jù)中的消息數(shù)據(jù)包括有關(guān)圖象制作人的信息,有關(guān)產(chǎn)品號、日期和地點(diǎn)的管理信息以及有關(guān)的復(fù)制許可信息。利用消息數(shù)組(m)定義消息數(shù)據(jù),并且一個(gè)消息數(shù)組值m[j]為如下表示的消息數(shù)組的一個(gè)數(shù)組元素[等式4]m{m0,m1,...,mi,...,mJ-1}或m[j] 0≤i≤J-1 J消息數(shù)據(jù)的長度例如,如果消息數(shù)據(jù)為圖3所示的包含10個(gè)字母數(shù)字字符“DATAHIDING”的消息數(shù)據(jù),則第j個(gè)字符與消息數(shù)組值m[j-1]有關(guān),因此,消息數(shù)組值m[j-1]中具有標(biāo)識(shí)相應(yīng)字符的數(shù)據(jù)。假設(shè)用Bm字節(jié)(l字節(jié)用于字母數(shù)字字符)的整數(shù)來表示各數(shù)組值m[j]中的數(shù)據(jù)。此時(shí),消息數(shù)據(jù)的長度J為10。
(3)狀態(tài)序列S定義狀態(tài)序列S,以便確定經(jīng)過隱藏處理的位置(媒體數(shù)組值),一個(gè)狀態(tài)值Sj為如下表示的序列的一個(gè)元素。
S{S0,S1,...,SJ}或Sj0≤j≤JJ消息數(shù)據(jù)的長度用于產(chǎn)生狀態(tài)序列S的算法是本實(shí)施方式的重要因素之一。應(yīng)該注意到狀態(tài)序列S的元素?cái)?shù)目J為(J+1),該值比消息數(shù)組(m)的元素?cái)?shù)目J大1。
(4)位置序列(p)借助以下等式,利用位置序列(p)確定經(jīng)過隱藏處理的位置。一個(gè)位置pj為如下表示的位置序列(p)的一個(gè)元素。
p{p0,p1,...,pJ}或pj0≤j≤JJ消息數(shù)據(jù)的長度pj=Sjmod I與狀態(tài)序列S一樣,位置序列(p)具有(J+1)元素。位置序列的元素的位置pj是如下定義的具有相同下標(biāo)值(j)的狀態(tài)值(即Sj)對I的余數(shù)。因此,位置pj的值為0到(I-1)之間的整數(shù),與該值對應(yīng)的圖象區(qū)域經(jīng)受隱藏處理。由于(I)為一常數(shù),即圖象區(qū)域數(shù),所以一旦建立了狀態(tài)值Sj,就可以唯一確定位置pj的值。因此,經(jīng)受隱藏處理的位置事實(shí)上是由狀態(tài)序列S確定的。
B.隱藏算法根據(jù)本發(fā)明的數(shù)據(jù)隱藏算法是與抽取隱藏?cái)?shù)據(jù)的算法緊密聯(lián)系的。即,如果企圖抽取隱藏?cái)?shù)據(jù)的第三方具有特定信息,則他或她就可以檢查以上消息。此時(shí),重要的是能夠有效阻止他人在抽取消息期間修改消息。鑒于以上考慮,本發(fā)明根據(jù)以下三特征隱藏?cái)?shù)據(jù)。(1)根據(jù)消息特征確定狀態(tài)值S0(2)根據(jù)消息和圖象數(shù)據(jù)確定狀態(tài)序列S(3)需要隱藏的數(shù)據(jù)
(1)根據(jù)消息特征確定狀態(tài)值S0狀態(tài)序列的第一元素的狀態(tài)值S0為初始函數(shù)fINI對消息數(shù)組所有元素(m
,m[1],...,m[9])的異或的輸出。根據(jù)該值利用以下等式確定狀態(tài)值S0和位置p0。
S0=fINI(m
XORm[1]XORm[2]XOR...XOR M[n-1])p0=S0mod I常規(guī)方法將初始狀態(tài)值S0作為一個(gè)特定常量,而并不考慮嵌入的消息內(nèi)容。然而,根據(jù)以上實(shí)施方式,該元素是根據(jù)消息內(nèi)容(即,所有的消息數(shù)組值)確定的。圖4利用示意圖說明了消息數(shù)據(jù)在圖象上的分布。如該圖所示,根據(jù)初始狀態(tài)值S0確定初始位置確定p0。
根據(jù)消息數(shù)組(m)的特征確定初始狀態(tài)值S0是本算法的特征之一。這不僅使得初始狀態(tài)值的確定更加復(fù)雜,而且能夠有效阻止他人在消息上非法寫入數(shù)據(jù)。同時(shí),將初始函數(shù)fINI用作抽取操作期間確定消息結(jié)束的函數(shù)。這樣阻止了他人寫入除原始消息之外的不同消息。
(2)根據(jù)消息和圖象數(shù)據(jù)確定狀態(tài)序列S根據(jù)狀態(tài)值S0確定下一狀態(tài)值S1。狀態(tài)值S1由以下等式表示。
S1=SK(S0XORm
XOR M[p0])即,下一狀態(tài)值S1為函數(shù)SK對以下輸入的輸出當(dāng)前狀態(tài)值S0、由狀態(tài)值S0指示的媒體數(shù)組值M[p0]以及消息數(shù)組值m
的異或。媒體數(shù)組值M[p0]是根據(jù)狀態(tài)值S0計(jì)算的位置p0處的圖象區(qū)域。以上結(jié)論,對狀態(tài)值S2和后繼狀態(tài)值同樣正確,可以利用以下等式概括表示以上關(guān)系。
Sj+1=SK(SjXORm[j]XOR M[pj])函數(shù)SK為一個(gè)用于確定下一狀態(tài)值的位置轉(zhuǎn)換函數(shù),接收以下輸入當(dāng)前狀態(tài)值、消息數(shù)組值和媒體數(shù)組值的異或。因此,通過遞歸執(zhí)行以上等式,順序確定狀態(tài)值。由于必須確定(J+1)個(gè)狀態(tài)值,所以最后一個(gè)狀態(tài)值為SJ。如果消息數(shù)組具有圖3所示的10個(gè)元素,則產(chǎn)生11個(gè)狀態(tài)值。通過利用以上方法確定狀態(tài)序列S,就可以標(biāo)識(shí)經(jīng)過隱藏處理的所有圖象區(qū)域。圖4說明經(jīng)過隱藏處理的媒體數(shù)組值之間的關(guān)系。
根據(jù)常規(guī)技術(shù)的位置序列僅僅依賴于初值,然而根據(jù)本算法的位置序列是通過一并考慮消息數(shù)組值和媒體數(shù)組值確定的。如果他人企圖在原始消息上寫入不同消息,則由于會(huì)產(chǎn)生不同的狀態(tài)序列,所以重寫是非常困難的。同樣,如果他人企圖修改圖象數(shù)據(jù),也是非常困難的。
(3)需要隱藏的數(shù)據(jù)圖5是一示意圖,說明將要隱藏的對象。假設(shè)已經(jīng)標(biāo)識(shí)了需要隱藏的位置序列(p)。首先,數(shù)據(jù)被隱藏在位置p1及其后繼位置,而在位置p0并不隱藏任何數(shù)據(jù)。具體而言,必須隱藏媒體數(shù)組值和消息數(shù)組值的異或結(jié)果。
首先,直接從位置p0取出媒體數(shù)組值M
。然后,確定消息數(shù)組值m
與得到的媒體數(shù)組值M
的異或,并將其結(jié)果隱藏在位置p1。該隱藏操作改變了媒體數(shù)組值M[p1]的內(nèi)容。此外,隨著在位置p2進(jìn)行的處理,確定由先前處理改變的內(nèi)容,即消息數(shù)組值m[1]與媒體數(shù)組值M[1]的異或,并將其結(jié)果隱藏在位置p2。
重復(fù)以上隱藏處理直至位置p10,就完成了數(shù)據(jù)隱藏。將先前處理改變的內(nèi)容,即消息數(shù)組值m[9]與媒體數(shù)組值M[9]的異或,隱藏在位置p10。由于并未在位置p0隱藏?cái)?shù)據(jù),所以狀態(tài)序列S和位置序列(p)中的元素?cái)?shù)目都大于消息數(shù)組中的元素?cái)?shù)目。
根據(jù)本算法,如果要抽取隱藏消息,就要以相反次序(從最后一個(gè)消息數(shù)組值m[9]開始),遞歸執(zhí)行抽取操作。根據(jù)本算法,消息數(shù)組和媒體數(shù)組的異或結(jié)果的隱藏是與消息抽取過程密切相關(guān)的。在“消息數(shù)據(jù)抽取”部分說明其細(xì)節(jié)。此外,實(shí)際上可以采用不同的算法隱藏?cái)?shù)據(jù)。在第二實(shí)施方式中,說明了采用PBC(象素塊編碼)作為隱藏?cái)?shù)據(jù)算法的示例。
C.第一實(shí)施方式結(jié)合圖6所示的過程,具體說明第一實(shí)施方式。圖6是一流程圖,說明在媒體數(shù)據(jù)中隱藏消息數(shù)據(jù)的過程。在以下說明中,請參看圖4或圖5中的相應(yīng)部分。
計(jì)算初始狀態(tài)值(步驟100)為了隱藏?cái)?shù)據(jù),必須確定位置序列(p)。為了確定位置序列,必須首先確定初始位置p
。利用初始函數(shù)fINI(該函數(shù)使用初始狀態(tài)值S0作為輸入)的輸出確定初始位置p
,并且利用以下等式確定變量S0。
S0=fINI(m
,m[1],m[2],...,M[J-1])=H1(m
//m[1]//m[2]//...//M[J-1])在以上等式中,H1為散列函數(shù)。此外,算符“//”表示將消息數(shù)組的所有元素連接起來。例如,具體運(yùn)算可以為數(shù)組元素內(nèi)數(shù)據(jù)的異或。然而,如果采用異或,則計(jì)算結(jié)果不能反映所有消息數(shù)組值的次序。即,圖3所示的消息“DATAHIDING”與消息“TADAHIDING”具有相同值。因此,采用稱為CRC(循環(huán)冗余校驗(yàn)法)的方法,以便反映次序關(guān)系。以上算法是計(jì)算校驗(yàn)和的算法之一,其產(chǎn)生的結(jié)果依賴于數(shù)據(jù)數(shù)組的內(nèi)容和次序。
對于字節(jié)長度為Bm字節(jié)(數(shù)組值m[i])的輸入,散列函數(shù)H1產(chǎn)生具有不同字節(jié)長度K(散列值)的輸出。由于該函數(shù)為單向函數(shù),因此,當(dāng)H(x)=y(tǒng)時(shí),實(shí)際上不可能從(y)推算出(x)。
利用K字節(jié)散列值作為數(shù)據(jù)隱藏的初始狀態(tài)值S0。由于該散列值被直接用作數(shù)據(jù)隱藏的初值,所以必須保證不同的輸出是由不同的輸入產(chǎn)生的。因此,散列值沒有其他特殊意義。重要的是,其運(yùn)算結(jié)果為標(biāo)識(shí)該數(shù)組特征的輸出值,即,根據(jù)所有的數(shù)組元素內(nèi)容唯一確定散列值,該值依賴于所有數(shù)組的內(nèi)容。
如果消息數(shù)據(jù)為圖3所示的“DATAHIDING”,則根據(jù)標(biāo)識(shí)所有字母數(shù)字字符數(shù)據(jù)(數(shù)組值m[i]中的數(shù)據(jù))的異或,散列函數(shù)H1的輸出就是狀態(tài)值S0。狀態(tài)值S0對I(圖象區(qū)域數(shù)目)的余數(shù)就是位置p0。這樣,就能得到狀態(tài)值S0和位置p0作為初始狀態(tài)值。
象素值抽取(步驟200)確定在步驟100得到的位置值p0所對應(yīng)的圖象區(qū)域內(nèi)的圖象信息。例如,如果p0=i,則該信息為媒體數(shù)組值M[i]。采用BM字節(jié)的整數(shù)表示該數(shù)據(jù)。
下一狀態(tài)計(jì)算(步驟300)除在步驟100確定的狀態(tài)值S0之外,根據(jù)媒體數(shù)組值M[p0]和狀態(tài)值S0標(biāo)識(shí)的消息數(shù)組值m
,確定下一狀態(tài)值S1??梢岳靡韵碌仁酱_定狀態(tài)值S1。
S1=SK(S0XORm
XOR M[p0])(XOR為異或運(yùn)算)即,確定狀態(tài)值S0、消息數(shù)組值m
以及媒體數(shù)組值M[p0]的異或,并將其結(jié)果輸入到函數(shù)SK。然后,函數(shù)SK的輸出就是狀態(tài)值S1。該函數(shù)SK被稱為位置轉(zhuǎn)換函數(shù),并且將在媒體數(shù)據(jù)中隱藏消息數(shù)據(jù)的位置轉(zhuǎn)換函數(shù)SK特別稱為隱藏位置轉(zhuǎn)換函數(shù)。由于位置轉(zhuǎn)換函數(shù)SK與抽取隱藏?cái)?shù)據(jù)的抽取位置轉(zhuǎn)換函數(shù)PK緊密聯(lián)系,所以在以下抽取位置轉(zhuǎn)換函數(shù)的說明中也詳細(xì)說明位置轉(zhuǎn)換函數(shù)SK。
通過執(zhí)行相似過程,確定狀態(tài)值S2及其后繼狀態(tài)值。概括地說,可以采用以下等式表示第j個(gè)狀態(tài)值Sj和位置pj。
Sj=SK(Sj-1XOR m[j-1]XOR M[pj-1])pj=Sjmod I(SK隱藏位置轉(zhuǎn)換函數(shù))應(yīng)該再次注意到位置pj依賴于消息數(shù)據(jù)和媒體數(shù)據(jù)的內(nèi)容,也依賴于先前狀態(tài)值Sj-1。
作為隱藏位置轉(zhuǎn)換函數(shù)SK的輸入的狀態(tài)值Sj-1、消息數(shù)組值m[j-1]以及媒體數(shù)組值M[pj-1]分別具有不同的字節(jié)長度K、Bm和BM。當(dāng)然可以計(jì)算具有不同字節(jié)長度的所有輸入的異或,但是,最好在將所有輸入轉(zhuǎn)換為相同字節(jié)長度之后,再計(jì)算其異或。以下兩個(gè)散列函數(shù)H2和H3用于轉(zhuǎn)換所有的輸入,以便使所有輸入的字節(jié)長度均為狀態(tài)值的K字節(jié)長度。
H2根據(jù)Bm字節(jié)的整數(shù),產(chǎn)生K字節(jié)散列值的散列函數(shù)H3根據(jù)BM字節(jié)的整數(shù),產(chǎn)生Bm字節(jié)散列值的散列函數(shù)即,對消息數(shù)組值m[j-1]而言,利用散列函數(shù)H2,根據(jù)數(shù)組值內(nèi)的Bm字節(jié)的整數(shù),產(chǎn)生一個(gè)K字節(jié)的散列值。此外,對于媒體數(shù)組值M[pj-1]而言,利用散列函數(shù)H3將位長為BM字節(jié)的整數(shù),轉(zhuǎn)換為Bm字節(jié)的整數(shù)。散列函數(shù)H2還用于產(chǎn)生一個(gè)K字節(jié)的散列值。上述等式7包括以該方式利用散列函數(shù)轉(zhuǎn)換輸入的情況。
消息嵌入(步驟400)確定消息數(shù)組值m[j-1]和媒體數(shù)組值M[pj-1]的異或,得到的數(shù)據(jù)就是隱藏?cái)?shù)組值Mm[j-1]。將隱藏?cái)?shù)組值Mm[j-1]中的數(shù)據(jù)隱藏在步驟300確定的位置pj中。隱藏?cái)?shù)組值Mm[j-1]為隱藏?cái)?shù)組Mm的一個(gè)數(shù)組元素。
Mm{Mm
,Mm[1],...,Mm[j],...,Mm[J-1]}Mm[j]=m[j]XOR M[pj]應(yīng)該理解的是以上隱藏?cái)?shù)據(jù)不是消息數(shù)組值m[j],而是由消息數(shù)組值m[j]與媒體數(shù)組值M[pj]的異或產(chǎn)生的隱藏?cái)?shù)組值Mm[j]。利用函數(shù)X,將隱藏?cái)?shù)組值Mm[j]隱藏到位置pj。這就改變了媒體數(shù)組值M[pj]中的數(shù)據(jù)。將其內(nèi)容改變的媒體數(shù)組值M[pj]稱為M′[pj]。即,對于函數(shù)X的特定內(nèi)容,該算法在其特定位置隱藏以上隱藏?cái)?shù)組,在第二實(shí)施方式中,以示例方式說明PBC。
確定(步驟500)確定(j)的值是否等于J(該值比消息數(shù)組中元素的數(shù)目大1)。如果j=J,則隱藏了所有的消息數(shù)組值。如果(j)小于J,則將(j)加1,并且返回到步驟200。隨后,遞歸執(zhí)行步驟200到步驟400,直至(j)等于J。該過程使得產(chǎn)生分別包含(J+1)個(gè)元素的狀態(tài)序列S和位置序列。
狀態(tài)序列S{S0,S1,S2,...,SJ}位置序列P{p0,p1,p2,...,pJ}由于數(shù)據(jù)隱藏,所以根據(jù)以下等式改變媒體數(shù)組M的所有元素。
(隱藏前的媒體數(shù)組)M{M
,...,M[p0],...,M[p1],...,M[pI-1]}(隱藏后的媒體數(shù)組)M′{M′
,...,M′[p0],...,M′[p1],...,M′[pI-1]={M
,...,M[p0],...,M′[p1],...,M′[pI-1]M′表示隱藏后的媒體數(shù)組,M′[i]表示該媒體數(shù)組值的內(nèi)容在隱藏之前已經(jīng)改變。即,媒體數(shù)組值M′表示僅僅改變了原始消息數(shù)組M(由狀態(tài)序列S標(biāo)識(shí))的J個(gè)數(shù)組元素。由于與狀態(tài)值S0相應(yīng)的數(shù)組元素M[p0]無需改變數(shù)據(jù),所以M′[p0]等于M[p0]。
圖7說明隱藏中狀態(tài)值Sj-1和狀態(tài)值Sj之間的關(guān)系。通過計(jì)算狀態(tài)值Sj-1和隱藏?cái)?shù)組Mm[j-1](M′[pj-1]XORm[j-1])的異或,并將該結(jié)果輸入到位置轉(zhuǎn)換函數(shù)SK,就可以確定狀態(tài)值Sj。在前一狀態(tài)的隱藏期間,就已經(jīng)改變了媒體數(shù)組值M′[pj-1]的內(nèi)容。此外,利用函數(shù)X,將隱藏?cái)?shù)組Mm[pj-1]隱藏在位置pj。這就改變了位置M[pj]的數(shù)據(jù)。
狀態(tài)值抽取(步驟600)通過抽取以下兩條消息,就完成了消息隱藏。
(1)隱藏后的媒體數(shù)組M′(2)最終狀態(tài)值SJ在步驟400,通過在媒體數(shù)據(jù)內(nèi)隱藏?cái)?shù)據(jù)最終得到媒體數(shù)組M′。最終狀態(tài)值SJ是最后計(jì)算的第J個(gè)狀態(tài)值。如下所述,當(dāng)抽取消息數(shù)據(jù)時(shí),需要以上信息。當(dāng)抽取隱藏消息時(shí),抽取人無需知道第(J-1)個(gè)狀態(tài)值之前的狀態(tài)值S0到SJ-1,他或她只要知道第J個(gè)狀態(tài)值即可。這是由于通過反向轉(zhuǎn)換最終狀態(tài)值,就可以確定以上狀態(tài)值。當(dāng)然,抽取人必須具備下述所需信息。
(消息數(shù)據(jù)抽取)為他人提供以下三條信息,以便抽取消息數(shù)據(jù)。
(1)隱藏后的媒體數(shù)組M′(2)最終狀態(tài)值SJ(3)抽取位置轉(zhuǎn)換函數(shù)PK信息(1)和信息(2)是嵌入消息數(shù)據(jù)期間最終產(chǎn)生的。以下結(jié)合隱藏位置轉(zhuǎn)換函數(shù),說明信息(3)中的抽取位置轉(zhuǎn)換函數(shù)PK。
a.隱藏位置轉(zhuǎn)換函數(shù)SK,抽取位置轉(zhuǎn)換函數(shù)PK如同在隱藏消息中定義產(chǎn)生下一狀態(tài)值的隱藏位置轉(zhuǎn)換函數(shù)SK一樣,在抽取消息中定義產(chǎn)生前一狀態(tài)值的抽取位置轉(zhuǎn)換函數(shù)PK。如以下等式所示,隱藏位置轉(zhuǎn)換函數(shù)SK和抽取位置轉(zhuǎn)換函數(shù)PK互為逆函數(shù)。
PK(SK(x))=xSK(PK(x))=x因此,通過利用隱藏位置轉(zhuǎn)換函數(shù)SK轉(zhuǎn)換消息數(shù)組(m),隨后利用其逆函數(shù)PK進(jìn)一步轉(zhuǎn)換該結(jié)果,就可以抽取原始消息數(shù)組(m)。
滿足以上等式的各種函數(shù)都是可能的。事實(shí)上,為了防止他人利用已配備的抽取位置轉(zhuǎn)換函數(shù)PK來復(fù)制隱藏位置轉(zhuǎn)換函數(shù)SK,最好采用公開加密法中的加密函數(shù)和解密函數(shù)。根據(jù)公開密鑰法,存在多種算法,可以選擇任一種算法。例如,以下說明的典型RSA方法。RSA方法的算法如下所述。
1.選擇兩個(gè)大素?cái)?shù)p和q,計(jì)算n=p×q。
2.計(jì)算r=lcm(p-1,q-1)并選擇(d),使得gcd(d,r)=1。
3.確定(e),其中(e)滿足e×d=l(mod r)和0<e<r。
4.公開(e)作為公開密鑰,同時(shí)公開(n)。保密(d)作為秘密密鑰。
5.為了加密消息(m),計(jì)算(c),使得me=c(mod n)。該(c)成為加密消息。
6.為了解密加密消息,計(jì)算(m),使得cd=m(mod n)。該(m)成為解密消息。
通過將以上算法應(yīng)用到本實(shí)施方式,就得到以下隱藏函數(shù)SK和抽取函數(shù)PK。
SK(m)=xd(mod n)PK(m)=xe(mod n)即,制作圖象的制作人具有密鑰(d),并利用該密鑰得到隱藏函數(shù)SK。為了嵌入消息數(shù)據(jù),利用函數(shù)SK產(chǎn)生位置狀態(tài)序列S,函數(shù)SK將數(shù)據(jù)嵌入到媒體數(shù)據(jù)中。具有以上分布數(shù)據(jù)的第三人,利用公開密鑰(e)得到抽取函數(shù)PK。為了讀取該消息,第三人利用函數(shù)PK產(chǎn)生位置狀態(tài)序列S。在公開密鑰方法中,向他人公開公開密鑰,但是只有制作圖象的作者才具有秘密密鑰,從而他人不能知道圖象的內(nèi)容。因此,他們不能知道隱藏位置轉(zhuǎn)換函數(shù)的內(nèi)容。由于從公開密鑰中計(jì)算出秘密密鑰需要大量計(jì)算,因此他人幾乎不可能知道隱藏位置轉(zhuǎn)換函數(shù)SK。以上方法能夠有效阻止他人修改原始數(shù)據(jù)。
以下簡要說明異或的重要性質(zhì),該性質(zhì)用于解釋消息抽取過程。異或運(yùn)算具有以下性質(zhì)。如果確定了A與B的異或,隨后又確定了該結(jié)果與B的異或,就能再現(xiàn)A。
(A XOR B)XOR B=A(抽取算法)圖8是一個(gè)流程圖,說明抽取嵌入消息數(shù)據(jù)的過程。
初始狀態(tài)值計(jì)算(步驟110)首先,根據(jù)以下等式,從最終狀態(tài)值SJ(已提供給了抽取人)中確定位置pJ,其中在位置pJ隱藏有消息數(shù)組值m[J-1]。
pJ=SJmod I隱藏值抽取(步驟120)媒體數(shù)組M′[pJ]具有隱藏?cái)?shù)組值Mm[J-1],該值被隱藏在位置pJ的原始圖象信息中。數(shù)組Mm[J-1]為媒體數(shù)組值M′[pJ-1]和消息數(shù)組值m[J-1]的異或。隨后定義函數(shù)X′,以便從媒體數(shù)組值M′[pJ]中抽取隱藏?cái)?shù)組值Mm[J-1]。在第二實(shí)施方式中,說明以下等式中函數(shù)X′特定內(nèi)容的示例。
Mm[J-1]=函數(shù)X′(M′[pJ])前一狀態(tài)計(jì)算(步驟130)接著,通過計(jì)算狀態(tài)值SJ和隱藏?cái)?shù)組值Mm[J-1](由函數(shù)X′確定)的異或,確定前一狀態(tài)值SJ-1。應(yīng)該注意到此時(shí)利用了以上異或運(yùn)算的數(shù)學(xué)性質(zhì)。
PK(SJ)XOR X′(M′[pJ])=(SJ-1XOR Mm[J-1])XOR Mm[J-1]=SJ-1即,由于抽取位置轉(zhuǎn)換函數(shù)PK是隱藏位置轉(zhuǎn)換函數(shù)SK的逆函數(shù),所以可以使用該函數(shù)從狀態(tài)值SJ、狀態(tài)值SH-1與隱藏?cái)?shù)組值Mm[J-1]的異或結(jié)果中進(jìn)行再現(xiàn)。確定了以上結(jié)果與隱藏?cái)?shù)組值Mm[J-1](在步驟120確定該值)的異或,就能確定前一狀態(tài)值SJ-1。
消息計(jì)算(步驟140)一旦確定了狀態(tài)SJ-1,就可以標(biāo)識(shí)相應(yīng)的媒體數(shù)組值M′[pJ-1]。隨后,可以利用以下等式抽取消息數(shù)組值m[J-1]。如果隱藏了圖3所示的消息,該步驟就可以抽取尾部字母“G”。
M′[pJ-1]XOR Mm[J-1]=M′[pJ-1]XOR(M′[pJ-1]XOR m[J-1])=m[J-1]利用下標(biāo)值(j)(1≤j≤J),可以將狀態(tài)值的抽取或消息數(shù)組值的抽取概括為以下等式。
Sj-1
PK(Sj)XOR X′(M′[pj])=(Sj-1XOR Mm[j-1])XOR Mm[j-1]=Sj-1m[j-1]M′[pj-1]XOR Mm[j-1]=M′[pj-1]XOR(M′[pj-1]XOR m[j-1])=m[j-1]圖9表示以上等式標(biāo)識(shí)的數(shù)據(jù)關(guān)系。該圖表示了抽取中狀態(tài)值Sj和狀態(tài)值Sj-1之間的關(guān)系。將該圖與圖7相比,顯示出抽取過程是隱藏過程的逆過程。
確定(步驟150)每當(dāng)產(chǎn)生消息數(shù)組值m[j]時(shí),就確定該值是否為消息數(shù)組的開始。如果是這樣的話,就抽取了消息數(shù)組(m)的所有元素。由于以相反次序(即從最后元素開始)抽取了該消息數(shù)組(m),所以對于圖3的示例而言,以次序“GNIDIHATAD”抽取該消息。在步驟160,顛倒以上消息次序,以便產(chǎn)生完整消息。如果消息數(shù)組值m[j]并不是消息數(shù)組的開始,就遞歸執(zhí)行步驟120到步驟140,直至步驟140的確定結(jié)果變?yōu)榭隙ā?br> 確定消息數(shù)組(m)的某個(gè)元素是否為該消息數(shù)組的開始等價(jià)于,確定產(chǎn)生的狀態(tài)值Sj是否滿足散列函數(shù)H1的輸出。將已經(jīng)產(chǎn)生的消息數(shù)組(m)的所有元素的異或輸入到散列函數(shù)H1。如果以相反次序產(chǎn)生的狀態(tài)值Sj與散列函數(shù)H1的輸出滿足以下等式所示的關(guān)系,則j的值為0(參見等式10)。
Sj=f(m[J-1]XOR m[J-2]XOR...XOR m[j]=S0僅當(dāng)j=0時(shí),以上等式才成立,而對于其他情況(j≠0),以上等式并不成立。每當(dāng)以相反次序產(chǎn)生最終狀態(tài)值Sj時(shí),就把該值與基于所有抽取消息數(shù)組值的散列函數(shù)的輸出進(jìn)行比較。圖10說明了確定生成的消息數(shù)組值是否為該消息的開始。首先,確定最終狀態(tài)值SJ的前一狀態(tài)值SJ-1,以及消息數(shù)組值mJ-1。輸入消息數(shù)組值mJ-1時(shí),得到的初始函數(shù)(f)的輸出F與狀態(tài)值SJ-1不匹配。如果確定了狀態(tài)值S0,則該值與初始函數(shù)的輸出匹配,并能夠確定該消息數(shù)組值就是消息的開始。因此,由于以下性質(zhì),本算法在防止他人修改消息方面是非常有用的。
(1)防止重寫不同信息根據(jù)常規(guī)技術(shù),所產(chǎn)生的位置序列S僅僅依賴于初始提供的常量值,而并不考慮該消息的內(nèi)容。僅僅知道該常量,他人就可以刪除該消息或者在原始消息上重寫不同消息。然而,根據(jù)本算法,狀態(tài)序列的產(chǎn)生還依賴于消息的內(nèi)容,不同的消息產(chǎn)生不同的位置序列。由于隱藏位置是基于該位置序列的,所以不可能將具有不同內(nèi)容的不同消息隱藏在存在原始消息的位置。這對媒體數(shù)據(jù)也是同樣正確的。
(2)防止隱藏不同信息本算法檢查等式24所示的條件,以便確定結(jié)束抽取。僅當(dāng)某個(gè)抽取消息的內(nèi)容與原始消息的內(nèi)容相同,并且該抽取消息的長度與消息數(shù)據(jù)(J)的長度相同時(shí),才滿足該條件。不滿足該要求,就沒有完成抽取。因此,如果企圖根據(jù)最終狀態(tài)值SJ,以相反次序隱藏除原始消息之外的數(shù)據(jù),則永遠(yuǎn)不會(huì)滿足等式24的要求,并且計(jì)算將會(huì)永久進(jìn)行下去。因此,由于沒有完成該計(jì)算,所以企圖在原始消息出現(xiàn)位置之外的位置隱藏消息是不可能的。
如圖10和圖11所示,如果他人修改了消息數(shù)組值,則根據(jù)修改消息將產(chǎn)生不同的狀態(tài)數(shù)組S′。這樣就能防止他人刪除或重寫位于狀態(tài)狀態(tài)序列S′標(biāo)識(shí)的位置以外位置的原始消息。圖11所示的通過修改產(chǎn)生的狀態(tài)序列S′永遠(yuǎn)不能確定已經(jīng)完成了抽取。事實(shí)上,由于可以防止寫入不同消息,所以能夠有效防止他人修改消息。
D.第二實(shí)施方式本節(jié)說明象素塊編碼(以下稱為“PBC”),象素塊編碼是在媒體數(shù)據(jù)中嵌入需要隱藏的數(shù)據(jù)和抽取隱藏?cái)?shù)據(jù)的一種方法。借助PBC,根據(jù)以下說明的轉(zhuǎn)換規(guī)則,就可以進(jìn)行數(shù)據(jù)隱藏和數(shù)據(jù)抽取。
(基本算法)通常,兩個(gè)相鄰象素的象素值的主要特征為較高的相關(guān)性。因此,即使在相鄰象素之間交換象素值,該圖象也不會(huì)明顯降質(zhì)??紤]到這一性質(zhì),本算法將至少具有一個(gè)象素的圖象區(qū)域定義為一個(gè)象素塊,并根據(jù)特定的轉(zhuǎn)換規(guī)則,通過有意交換相鄰象素塊的特征值來隱藏一比特?cái)?shù)據(jù)。即,通過交換相鄰象素塊的特征值來表示數(shù)據(jù)。此外,根據(jù)以上轉(zhuǎn)換規(guī)則確定的抽取規(guī)則,抽取數(shù)據(jù)。
根據(jù)以下轉(zhuǎn)換規(guī)則,通過交換兩個(gè)相鄰象素塊的特征值(例如,亮度)來表示位信息。
位接通<1>象素塊(PB1)特征值大于另一象素塊(PB2)的特征值位斷開<0>象素塊(PB1)特征值小于另一象素塊(PB2)的特征值此外,根據(jù)以下抽取規(guī)則,通過比較兩個(gè)相鄰象素塊的特征值(例如,亮度)來抽取位信息。
象素塊(PB1)特征值大于另一象素塊(PB2)的特征值位接通<1>
象素塊(PB1)特征值小于另一象素塊(PB2)的特征值位斷開<0>
圖12說明了利用PBC進(jìn)行數(shù)據(jù)隱藏和數(shù)據(jù)抽取??梢詫⑾笏貕KPB1和象素塊PB2定義為多個(gè)象素(例如,3×3象素)的集合,或者將一個(gè)象素定義為一個(gè)象素塊。由于相鄰的象素塊具有較高的相關(guān)性,所以交換其位置不會(huì)使該圖象明顯降質(zhì)(圖12a)。
假設(shè)原始圖象中的象素塊的位置為圖12(b)所示的位置。同時(shí)假設(shè)兩個(gè)象素塊的特征值的比較結(jié)果為PB1的特征值大于PB2的特征值。如果在原始圖象中隱藏有數(shù)據(jù)“1”,則象素塊的特征值就滿足轉(zhuǎn)換規(guī)則中數(shù)據(jù)“1”的條件,因此,無需交換象素塊的特征值。當(dāng)抽取數(shù)據(jù)時(shí),抽取數(shù)據(jù)“1”(這是由于抽取規(guī)則確定如果PB1的特征值較大就抽取數(shù)據(jù)“1”)。
另一方面,如果在原始圖象中隱藏有數(shù)據(jù)“0”,就交換原始圖象中象素塊的特征值(這是由于這些特征值之間的關(guān)系并不滿足數(shù)據(jù)“0”的條件)。然而,并不能明顯辨別以上交換。在抽取期間,根據(jù)這些象素塊的特征值之間的關(guān)系,抽取數(shù)據(jù)“0”。
這樣,PBC從圖象中選擇足夠的象素塊,以便隱藏需要隱藏的信息。隨后,將某個(gè)所選象素塊和相鄰象素塊配對,以便產(chǎn)生一個(gè)配對數(shù)組。從該數(shù)組的開始著手,順序隱藏以上配對。
可以把該數(shù)組和第一實(shí)施方式中的狀態(tài)序列S聯(lián)系起來。例如,把一個(gè)象素塊和第一實(shí)施方式中媒體數(shù)組M的數(shù)組元素(m)聯(lián)系起來。將隱藏期間順序產(chǎn)生的每個(gè)數(shù)組元素(狀態(tài)值Sj)和相鄰媒體數(shù)組值進(jìn)行配對。隨后,對得到的配對進(jìn)行以上處理。同樣可以根據(jù)特定隨機(jī)數(shù)啟動(dòng)源產(chǎn)生的偽隨機(jī)數(shù)序列進(jìn)行確定。
在抽取期間,掃描與隱藏塊數(shù)組相同的塊數(shù)組。根據(jù)抽取規(guī)則(通過確定各對是表示“位接通”還是表示“位斷開”),通過1比特接1比特收集,就能抽取全部圖象。如果配對象素塊的特征值相同,就跳過該配對(如同隱藏操作一樣)。通過保密以上塊數(shù)組或數(shù)組產(chǎn)生方法,就可以對他人隱藏以上隱藏信息。
在PBC中,最好根據(jù)圖象質(zhì)量和抽取精度確定嵌入位置。即,如果配對象素塊之間的特征值差別較大,則交換操作將會(huì)降低圖象質(zhì)量。為了遏止圖象質(zhì)量的下降,最好提供第一閾值(一上限值),這樣,如果特征值之差大于等于該閾值,就不在該配對中嵌入任何比特(位)。
此外,如果特征值之差足夠小,則交換操作基本上不會(huì)降低圖象的質(zhì)量。然而,此時(shí),噪聲可能顛倒特征值的幅度,因此,不能抽取嵌入位。因此,為了遏止抽取精度下降,最好提供第二閾值(一下限值),這樣,如果特征值之差小于等于該閾值,就不在該配對中嵌入任何比特。
跳過與以上情況對應(yīng)的配對,而不進(jìn)行任何處理。隨后將需要隱藏的位信息傳送到下一配對。
(塊特征值)象素塊的主要特征值和次要特征值被用作特征值。主要特征值是直接象素值參數(shù),如象素塊的亮度和色度。次要特征值為表示統(tǒng)計(jì)特性的值,如以上參數(shù)的平均值和方差,并且通過分析主要特征值得到。另外,該特征值可以為某一數(shù)組(該主組包含多個(gè)象素值)與一特定數(shù)組(掩碼)或一特定元素值(通過頻率轉(zhuǎn)換得到)的運(yùn)算結(jié)果。兩個(gè)相鄰象素塊之間的主要特征值具有較高的相關(guān)性。然而,兩個(gè)互不相鄰的獨(dú)立的象素塊之間的次要特征值具有較高的相關(guān)性。因此,應(yīng)該注意到無需限制進(jìn)行PBC處理的象素塊為相鄰象素塊。以下把亮度值(即主要特征值)和方差值(即次要特征值)稱作象素塊特征值的示例。
首先,說明采用亮度值作為象素塊的特征值。如果一個(gè)單象素與一象素塊有關(guān),就可以直接使用該象素的亮度值作為該塊的特征值。在自然圖象中,相鄰象素通常具有較高的相關(guān)性,因此,即使交換象素,圖象質(zhì)量也不會(huì)明顯下降。圖13說明當(dāng)象素塊僅包含單象素時(shí),執(zhí)行PBC后的隱藏處理。
接著,說明采用方差值作為象素塊的特征值。當(dāng)象素塊包含n×m個(gè)象素時(shí),如果在象素塊之間交換象素的亮度值,就會(huì)明顯降低圖象的質(zhì)量,例如,圖象中會(huì)出現(xiàn)條紋圖。因此,最好不要直接把象素值作為象素塊的特征值。從而,想到利用象素亮度的方差值作為特征值。
眾所周知,當(dāng)把象素塊的亮度值特性劃分為平均值(h)和方差值(d)時(shí),如果交換相鄰象素塊的方差值(d)而保留其平均值(h),并不會(huì)明顯降低圖象的質(zhì)量。因此,根據(jù)以上性質(zhì),采用方差值(d)作為象素塊的特征值,并且根據(jù)轉(zhuǎn)換規(guī)則交換相鄰象素塊的特征值,就可以隱藏?cái)?shù)據(jù)。
如圖12(c)所示,假設(shè)象素塊PB1的平均值為h1,方差值為d1,而象素塊PB2的平均值為h2,方差值為d2。如果位“1”被隱藏,由于d1<d2,所以并不滿足該位的條件。因此,僅僅交換兩個(gè)象素塊的方差值(d)。這等價(jià)于在兩個(gè)象素塊之間交換分布的峰值,而保持其平均值(h)。
(可以隱藏的信息量)在PBC中,利用圖象的尺寸和象素塊的尺寸,可以隱藏的信息量的上限定義如下。
(圖象尺寸)/(象素塊尺寸)/2[比特]例如,如果把1×1的象素塊應(yīng)用于384×256的圖象,則可以隱藏的信息量的上限為6KB。然而,由于并非所有象素塊都可用于隱藏(例如,在相鄰象素塊具有相同特征值的情況下),所以實(shí)際上限要小一些。此外,盡管存在隱藏的可能性,由于為了防止降低圖象的質(zhì)量往往要取消交換處理,所以該值還會(huì)進(jìn)一步減少。
(圖象保存和降質(zhì))眾所周知,圖象上的兩個(gè)相鄰象素(其中該圖象的邊緣部分在該象素之間延伸)具有大不相同的亮度值。因此,交換這樣兩個(gè)象素將斷開以上邊緣,導(dǎo)致圖象質(zhì)量的明顯下降。因此,為了防止圖象質(zhì)量下降,為需要交換的亮度值設(shè)置某一閾值。事實(shí)上,如果超過了該閾值,就跳過該配對而并不交換其特征值??梢愿鶕?jù)從該圖象數(shù)據(jù)計(jì)算出的方差值或該象素塊周圍的局部方差值,確定以上閾值。
如果把某個(gè)象素塊的方差值(該方差值接近0)與另一個(gè)象素塊的方差值(該方差值遠(yuǎn)大于0)進(jìn)行互換,就會(huì)明顯改變小象素塊,導(dǎo)致圖象質(zhì)量的明顯下降。因此,將較小的方差值與以上閾值進(jìn)行比較,如果該方差值小于閾值,就取消交換操作。
(PBC的強(qiáng)度)由于比較了相鄰象素塊的特征值,并且隱藏了與特征值交換有關(guān)的數(shù)據(jù),所以只要保留象素塊之間的相對關(guān)系,就能夠正確檢索隱藏信息。因此,根據(jù)特征值之差,即使進(jìn)行色度調(diào)整或色度校正,也應(yīng)該能夠保留隱藏信息。此外,在上述方差值交換方法中,如果象素塊的尺寸為8×8,即使經(jīng)過JPEG壓縮處理,也能夠正確抽取隱藏信息。實(shí)驗(yàn)證明即使執(zhí)行“有損壓縮”以便將文件尺寸降至5%,也能夠保留90%的信息。即使經(jīng)過D/A和A/D轉(zhuǎn)換(如打印/掃描操作),以上方差值交換方法也能有效保留隱藏信息。
(PBC的擴(kuò)充)應(yīng)該注意到以上PBC方法僅僅是示意性的,還可以想到許多其他方法。正如在上述實(shí)施方式中明顯看到的那樣,在數(shù)據(jù)嵌入和數(shù)據(jù)抽取中,根據(jù)有關(guān)特征值之差的規(guī)則處理象素塊的特征值是非常重要的。從這個(gè)意義上講,除了按上述方式交換特征值之外,可以對某一特征值增加一特定值或者從另一特征值中減去該特定值(或者同時(shí)執(zhí)行兩種處理)。此時(shí),該特定值可以為一常量,也可以根據(jù)需要處理的象素塊的條件進(jìn)行改變。此外,作為PBC的擴(kuò)充,可以定義一條用于聯(lián)系特征值符號和二進(jìn)制信息的規(guī)則,以便根據(jù)該規(guī)則嵌入或抽取數(shù)據(jù)。
本發(fā)明的實(shí)質(zhì)在于根據(jù)一條有意義的規(guī)則,利用某個(gè)參考值(例如,圖象數(shù)據(jù)中的一個(gè)相鄰象素塊)來處理另一象素塊。即,通過引用轉(zhuǎn)換規(guī)則處理相鄰象素塊之一的特征值實(shí)現(xiàn)數(shù)據(jù)隱藏,其中該轉(zhuǎn)換規(guī)則把隱藏?cái)?shù)據(jù)的內(nèi)容和特征值的參考值與該象素塊的特征值之間的差值聯(lián)系起來。從這種意義上講,根據(jù)本發(fā)明,只要該參考值明確并且能夠處理特征值即可,而并不要求該參考值為圖象數(shù)據(jù)中的一個(gè)特定區(qū)域(一個(gè)象素塊)。因此,可以從除圖象數(shù)據(jù)之外的數(shù)據(jù)中獲得該參考值。例如,將具有特定值(參考值)的固定掩碼模式用作特征值處理的參考值,其中固定掩碼模式的尺寸與象素塊的尺寸相同。此時(shí),在隱藏操作期間,以掩碼模式中的參考值為基準(zhǔn),處理特定象素塊的特征值,而在抽取操作期間,根據(jù)與參考值的差值,抽取數(shù)據(jù)。
E.第三實(shí)施方式本節(jié)說明在參考位置隱藏信息的方法。以上數(shù)據(jù)隱藏技術(shù)選擇原始圖象中的象素塊進(jìn)行處理,并從經(jīng)過處理的象素塊中抽取消息。因此,對于抽取消息而言,有關(guān)象素塊的位置信息是必不可少的。利用圖象中的某個(gè)區(qū)域(在第一實(shí)施方式中,原始圖象的左上角)作為基準(zhǔn),相對確定象素塊的位置。然而,如果他人修改該圖象(例如,剪切部分圖象),就不能夠確定該圖象的參考位置,從而不能抽取消息。再次參照圖3,如果剪切了部分原始圖象(該圖中虛線所圍區(qū)域),就不能根據(jù)剩余的屏幕圖象確定原始參考位置(消息數(shù)組中第0個(gè)數(shù)組元素的位置M
)。
數(shù)據(jù)隱藏的重要要求為他人不能夠輕易刪除隱藏信息、即使該數(shù)據(jù)被他人蓄意修改或者該數(shù)據(jù)經(jīng)過有損圖象壓縮處理(如JPEG)也能夠正確抽取隱藏信息。因此,如圖14所示,除消息之外,最好也將用于確定參考位置的信息隱藏在原始圖象中。隱藏這種位置信息使得從修改圖象或壓縮圖象中正確抽取消息成為可能。因此,也將用于確定媒體數(shù)據(jù)參考位置的信息隱藏在消息數(shù)據(jù)中。以上有關(guān)參考位置的信息被隱藏在整個(gè)消息數(shù)據(jù)中。如果剪切掉部分消息數(shù)據(jù),則以上信息使得從被剪切的部分消息數(shù)據(jù)中,檢測該消息數(shù)據(jù)的參考位置或者檢測相對于該參考位置的任一位置成為可能。例如,如下所述,可以將圍繞參考位置的同心圓弧隱藏在整個(gè)圖象中。
(采用同心圓弧作為位置信息)將圖15所示的同心圓弧用作位置信息。該同心圓弧是以原始圖象的左上角(參考位置)為基礎(chǔ),以特定間隔繪制的。為了從已剪切的部分圖象中正確抽取參考位置,假設(shè)被剪切的部分圖象至少包含有一條圓弧。因此,假設(shè)以上條件,設(shè)置同心圓弧之間的間隔。
利用圓的性質(zhì)(即,如果采用另一個(gè)圓周上的一點(diǎn)作為圓心,以該圓周的半徑作為半徑繪制一個(gè)圓,則所繪制的圓周將通過第二個(gè)圓的圓心),就能夠確定以上參考位置。圖16說明在使用同心圓弧作為位置信息的情況下,參考位置B的確定。首先,確定被剪切的部分圖象內(nèi)的任意三點(diǎn)(a1,a2,a3),其中(a1,a2,a3)分別出現(xiàn)在三條同心圓弧(c1,c2,c3)上。然后,從各點(diǎn)繪制具有不同半徑(r1,r2,r3,r4,...)的圓。此時(shí),圓弧相交數(shù)最大的圓弧交點(diǎn)就是參考位置B。在數(shù)字圖象中,由于象素是以網(wǎng)格形式分散排列的,因此,通過按上述方法繪制圓弧,就能夠非常精確地確定參考位置。
對于遠(yuǎn)離左上角(參考位置)的圓弧(該圓弧具有較大直徑)而言,以該部分圖象包含兩個(gè)或兩個(gè)以上圓弧的方式,降低圓弧之間的間隔。隨著圓弧的直徑越來越大,該圓弧將包含越來越多線性元素,引起參考位置計(jì)算值中的較大差別。降低間隔就能夠降低該差別,這是由于該部分圖象包含許多圓弧。此外,通過在左上角和右上角設(shè)置參考位置(即,同心圓弧的圓心),就可以根據(jù)兩個(gè)圓心來確定原始圖象的尺寸。
(利用同心圓弧進(jìn)行隱藏)圖17說明了采用同心圓弧作為參考位置的隱藏和抽取方法。在圖17(a)中,采用第二實(shí)施方式中說明的方法在原始圖象中隱藏消息,隨后在該點(diǎn)隱藏同心圓弧作為位置信息。例如,將位于同心圓弧上的象素的LBP設(shè)置為“1”。采用LBP是由于改變該值幾乎不會(huì)在該圖象中引起明顯視覺變化。此外,在圖17(b)中,在原始圖象中隱藏位置信息,隨后在該點(diǎn)隱藏消息。
(利用同心圓弧進(jìn)行抽取)創(chuàng)建一個(gè)二維表決數(shù)組T。通過綜合可能剪切的部分圖象的最大尺寸確定該數(shù)組的大小。例如,如果該數(shù)組的寬度為(2m-1),則該數(shù)組能夠處理的部分圖象最大為原始圖象的1/m。表決數(shù)組T中的各個(gè)元素表示參考位置B內(nèi)的一個(gè)候選項(xiàng),該元素的值表示該候選項(xiàng)的表決數(shù)。兩個(gè)坐標(biāo)按以下方式關(guān)聯(lián)部分圖象位于表決數(shù)組的中心。
掃描以上部分圖象,一旦遇到LBP為“1”的點(diǎn),就以該點(diǎn)為基準(zhǔn),繪制表決數(shù)組中所有已知半徑的圓弧。隨后,將表決數(shù)組T的各元素的表決數(shù)加1。此時(shí),如果該點(diǎn)為隱藏各元素相對應(yīng)點(diǎn)的圓周上的點(diǎn),則至少一條繪制圓弧通過原始圓心。
對部分圖象交替進(jìn)行垂直掃描和水平掃描,并且一旦遇到LBP為“1”的點(diǎn),就執(zhí)行以上過程。這樣,對應(yīng)最大表決數(shù)元素的位置就是參考位置B。最大表決數(shù)集中在對應(yīng)參考位置的表決數(shù)組的數(shù)組元素上。因此,盡管存在噪聲影響,本算法也能夠正確確定參考位置。
由于圖17(a)所示的方法利用隱藏的消息改變圖象數(shù)據(jù),于是根據(jù)所確定的參考位置從部分圖象中適當(dāng)?shù)爻槿∠ⅰR虼?,如果不采用能夠抵抗隨機(jī)噪聲的數(shù)據(jù)隱藏方法,信息抽取就不會(huì)成功。然而,圖17(b)所示的方法在抽取隱藏消息之前,并不改變該隱藏消息,所以該方法比圖17(a)所示的方法更能抵抗噪聲。因此,本算法允許采用多種數(shù)據(jù)隱藏方法。然而,應(yīng)該注意到根據(jù)本發(fā)明,可能破壞有關(guān)參考位置的部分信息。
F.特定應(yīng)用具體而言,可以在以下系統(tǒng)中應(yīng)用采用上述算法的數(shù)據(jù)隱藏和數(shù)據(jù)抽取方法。
(電視圖象CM事件計(jì)數(shù))對于已預(yù)定了廣播的人員而言,是否將其商業(yè)廣告節(jié)目廣播所請求的次數(shù)是重要的??梢圆捎帽舅惴▉順?gòu)造圖18所示的系統(tǒng),以便自動(dòng)計(jì)算廣播次數(shù)。該廣播站具有一個(gè)存儲(chǔ)裝置、一個(gè)編碼器和一個(gè)廣播裝置。存儲(chǔ)裝置存儲(chǔ)商業(yè)廣告節(jié)目圖象,編碼器在商業(yè)廣告節(jié)目圖象中隱藏用于計(jì)算廣播次數(shù)的信息。廣播裝置廣播其中隱藏有以上信息的商業(yè)廣告節(jié)目圖象。該系統(tǒng)利用上述數(shù)據(jù)隱藏方法編碼商業(yè)廣告節(jié)目圖象。根據(jù)計(jì)數(shù)信息中的數(shù)據(jù)(該數(shù)據(jù)被分散隱藏到商業(yè)廣告節(jié)目圖象中)進(jìn)行編碼。此外,接收站具有一個(gè)接收器、一個(gè)譯碼器和一個(gè)計(jì)數(shù)器。接收器接收其中隱藏有計(jì)數(shù)信息的商業(yè)廣告節(jié)目圖象。譯碼器從商業(yè)廣告節(jié)目圖象中抽取計(jì)數(shù)信息。根據(jù)抽取的計(jì)數(shù)信息,計(jì)數(shù)器計(jì)算廣播次數(shù)。該接收系統(tǒng)根據(jù)上述數(shù)據(jù)抽取方法抽取計(jì)數(shù)信息。根據(jù)計(jì)數(shù)信息中的數(shù)據(jù),通過確定計(jì)數(shù)信息在該商業(yè)廣告節(jié)目圖象上的排列位置,并從該位置抽取數(shù)據(jù)進(jìn)行譯碼。
廣播站廣播具有隱藏計(jì)數(shù)信息的商業(yè)廣告節(jié)目圖象,計(jì)數(shù)信息使得接收站可以根據(jù)隱藏算法來計(jì)算廣播次數(shù)。因此,通過抽取計(jì)數(shù)信息,接收站就能夠計(jì)算廣播次數(shù)。
(防火墻審查)拓?fù)?如防火墻)內(nèi)外的所有HTTP傳輸都要經(jīng)過位于該拓?fù)渖系拇矸?wù)器??梢岳靡陨闲再|(zhì)來審查該代理服務(wù)器上的圖象數(shù)據(jù)和聲音數(shù)據(jù)。如果檢測到其中隱藏有水印的媒體數(shù)據(jù),就將其留在日志中。這樣,就能夠檢測非法分布數(shù)據(jù)。圖19是該系統(tǒng)的框圖。服務(wù)器具有一個(gè)存儲(chǔ)裝置和一個(gè)編碼器,存儲(chǔ)裝置存儲(chǔ)媒體數(shù)據(jù),而編碼器用于在該媒體數(shù)據(jù)中隱藏消息數(shù)據(jù)。服務(wù)器控制編碼器,以便在該媒體數(shù)據(jù)(該數(shù)據(jù)是從存儲(chǔ)裝置中讀取的)中隱藏消息數(shù)據(jù),同時(shí),該服務(wù)器把輸出數(shù)據(jù)傳送到Internet。因此,可以根據(jù)消息數(shù)據(jù)的內(nèi)容,利用上述隱藏方法在媒體數(shù)據(jù)中分散隱藏消息數(shù)據(jù)。接收站具有一個(gè)代理服務(wù)器和一個(gè)譯碼器,其中代理服務(wù)器從Internet接收媒體數(shù)據(jù)(已經(jīng)在傳輸站對該媒體數(shù)據(jù)進(jìn)行了隱藏處理),而譯碼器從接收數(shù)據(jù)中抽取消息數(shù)據(jù)。根據(jù)消息數(shù)據(jù)的內(nèi)容,通過利用上述數(shù)據(jù)抽取方法確定分布消息數(shù)據(jù)的位置,進(jìn)行抽取操作。
(應(yīng)用于旅行社服務(wù)器)WWW服務(wù)器(由旅行社控制)上顯示的旅游場所照片中隱藏有附加信息(如旅游場所的說明或地圖、URL點(diǎn)信息)。通過采用WWW瀏覽器對該照片進(jìn)行網(wǎng)絡(luò)復(fù)制,隨后就可以從該照片中抽取地圖,以便檢查說明、交通和路線。如圖20所示,即使該客戶已經(jīng)與WWW服務(wù)器斷開連接,也能夠抽取附加信息。與從照片數(shù)據(jù)文件中分離附加信息文件的方法相比,利用隱藏方法就能夠保存照片數(shù)據(jù)和附加信息之間的密切關(guān)系,因此,可以輕而易舉地保存數(shù)據(jù)。
(指紋和水印)指紋是指發(fā)布給他人的媒體數(shù)據(jù)中的隱藏標(biāo)記,該標(biāo)記使得媒體數(shù)據(jù)的發(fā)行者能夠確定他人的身份。如果有人從事了非法活動(dòng)(如非法拷貝),則利用該指紋就能確定活動(dòng)源。因此,如果該人正在非法發(fā)布拷貝,則他或她將對該非法拷貝負(fù)責(zé)。
另一方面,水印是指發(fā)布給他人的媒體數(shù)據(jù)中的隱藏標(biāo)記,該標(biāo)記使得媒體數(shù)據(jù)的發(fā)行者能夠確定他或她的身份。這樣,就能夠確保在發(fā)布期間該數(shù)據(jù)不會(huì)被修改,即,該數(shù)據(jù)是由合法發(fā)行者發(fā)行的,并在發(fā)布期間未作修改。
為了隱藏以上標(biāo)記,可以構(gòu)造圖21所示的系統(tǒng)。當(dāng)向他人發(fā)布數(shù)據(jù)時(shí),該數(shù)據(jù)內(nèi)隱藏有一個(gè)水印??梢詮乃四抢锏玫降臄?shù)據(jù)中抽取該標(biāo)記,以便檢查。
除以上系統(tǒng)之外,可以將本發(fā)明應(yīng)用于采用電纜、衛(wèi)星通信或DVD-ROM(DVD-RAM)存儲(chǔ)介質(zhì)的系統(tǒng)。具體而言,如果采用DVD-ROM(DVD-RAM)發(fā)布數(shù)據(jù),則該數(shù)據(jù)中包含有關(guān)復(fù)制許可的隱藏信息,即,是允許復(fù)制還是禁止復(fù)制。終端用戶用來復(fù)制數(shù)據(jù)的DVD播放器具有限制復(fù)制功能。因此,如果復(fù)制播放器發(fā)現(xiàn)從其介質(zhì)中抽取的復(fù)制許可狀態(tài)為禁止復(fù)制的話,就啟動(dòng)禁止復(fù)制。
G.數(shù)據(jù)抽取系統(tǒng)和實(shí)現(xiàn)該系統(tǒng)的半導(dǎo)體集成電路具體而言,可以在具有以下結(jié)構(gòu)的系統(tǒng)中實(shí)現(xiàn)上述數(shù)據(jù)抽取方法。此外,可以在一塊芯片(如半導(dǎo)體集成電路)上提供以上系統(tǒng)的大部分功能。為了避免重復(fù),省略了該系統(tǒng)和半導(dǎo)體集成電路特性的詳細(xì)說明,但是,在數(shù)據(jù)抽取方法中說明的術(shù)語、其擴(kuò)充以及其變更同樣適用于這些系統(tǒng)。根據(jù)以上方法的詳細(xì)說明,對于本領(lǐng)域熟練的技術(shù)人員而言,以下術(shù)語的細(xì)節(jié)是顯而易見的。
具體而言,如圖22所示,用于從媒體數(shù)據(jù)中抽取消息數(shù)據(jù)的系統(tǒng)具有一個(gè)轉(zhuǎn)換裝置、一個(gè)確定裝置、一個(gè)特征值計(jì)算裝置、一個(gè)存儲(chǔ)裝置和一個(gè)抽取裝置。轉(zhuǎn)換裝置為一個(gè)A/D轉(zhuǎn)換器,該轉(zhuǎn)換器將由模擬信號構(gòu)成的媒體數(shù)據(jù)(其中隱藏有消息數(shù)據(jù))轉(zhuǎn)換為數(shù)字信號,隨后轉(zhuǎn)換器輸出該數(shù)字信號。確定裝置確定由轉(zhuǎn)換裝置輸出的媒體數(shù)據(jù)中隱藏有消息數(shù)據(jù)的一個(gè)數(shù)據(jù)塊。特征值計(jì)算裝置決定由確定裝置確定的數(shù)據(jù)塊的特征值。存儲(chǔ)裝置存儲(chǔ)轉(zhuǎn)換規(guī)則,該規(guī)則把需要抽取的數(shù)據(jù)內(nèi)容同特征值的參考值與該數(shù)據(jù)塊的特征值之間的差值聯(lián)系起來。抽取裝置依據(jù)該數(shù)據(jù)塊的特征值,參照轉(zhuǎn)換規(guī)則,抽取隱藏的消息數(shù)據(jù)。
參考值為媒體數(shù)據(jù)中出現(xiàn)的不同于第一數(shù)據(jù)塊的第二數(shù)據(jù)塊的特征值。存儲(chǔ)在存儲(chǔ)裝置內(nèi)的轉(zhuǎn)換規(guī)則規(guī)定如果第一塊的特征值大于第二塊的特征值,則抽取該位中的一位;反之,如果第一塊的特征值小于第二塊的特征值,就選擇另一位。
此外,如圖23所示,由安裝有上述系統(tǒng)的芯片構(gòu)成的半導(dǎo)體集成電路至少具有一個(gè)計(jì)算裝置和一個(gè)抽取裝置。計(jì)算裝置決定媒體數(shù)據(jù)(由輸入信號構(gòu)成)中已經(jīng)被確定為隱藏有消息數(shù)據(jù)的數(shù)據(jù)塊的特征值。抽取裝置根據(jù)該數(shù)據(jù)塊的特征值,參照轉(zhuǎn)換規(guī)則,抽取隱藏消息,其中轉(zhuǎn)換規(guī)則把需要抽取的數(shù)據(jù)內(nèi)容同特征值的參考值與該數(shù)據(jù)塊的特征值之間的差值聯(lián)系起來。
如上所述,如果在媒體數(shù)據(jù)(如圖象或聲音)中分散隱藏消息數(shù)據(jù),則本發(fā)明根據(jù)媒體數(shù)據(jù)和消息數(shù)據(jù)的內(nèi)容確定該消息的隱藏位置。因此,本發(fā)明使得數(shù)據(jù)隱藏處理能夠防止他人輕易修改消息。
權(quán)利要求
1.用于在媒體數(shù)據(jù)中隱藏?cái)?shù)據(jù)的數(shù)據(jù)隱藏方法,其中在消息數(shù)據(jù)中,隱藏有關(guān)所述消息數(shù)據(jù)的參考位置和所述媒體數(shù)據(jù)的信息,并且其中有關(guān)所述參考位置的信息被隱藏在所述消息數(shù)據(jù)中,使得即使部分所述消息數(shù)據(jù)作為部分消息數(shù)據(jù)被剪切,也可以檢測原始圖象數(shù)據(jù)的參考位置或基于所述參考位置的相對位置。
2.根據(jù)權(quán)利要求1的用于在媒體數(shù)據(jù)中隱藏?cái)?shù)據(jù)的數(shù)據(jù)隱藏方法,其中有關(guān)所述參考位置的信息為圍繞所述參考位置繪制的同心圓弧。
3.用于在媒體數(shù)據(jù)中隱藏?cái)?shù)據(jù)的數(shù)據(jù)隱藏方法,該方法包括以下步驟(a)標(biāo)識(shí)其中隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)內(nèi)的一個(gè)數(shù)據(jù)塊;(b)確定所述標(biāo)識(shí)數(shù)據(jù)塊的特征值;和(c)處理所述數(shù)據(jù)塊的特征值,以便依據(jù)轉(zhuǎn)換規(guī)則,隱藏該消息數(shù)據(jù),其中轉(zhuǎn)換規(guī)則把需要隱藏的數(shù)據(jù)的內(nèi)容同特征值的參考值與所述數(shù)據(jù)塊的特征值之間的差值聯(lián)系起來。
4.根據(jù)權(quán)利要求3的用于在媒體數(shù)據(jù)中隱藏?cái)?shù)據(jù)的數(shù)據(jù)隱藏方法,其中根據(jù)媒體中出現(xiàn)的不同數(shù)據(jù)塊的特征值,提供所述參考值。
5.用于在媒體數(shù)據(jù)中隱藏?cái)?shù)據(jù)的數(shù)據(jù)隱藏方法,該方法包括以下步驟(a)確定媒體數(shù)據(jù)內(nèi)的一對數(shù)據(jù)塊,該媒體數(shù)據(jù)包括第一數(shù)據(jù)塊和第二數(shù)據(jù)塊;(b)比較所述確定的特征值,處理構(gòu)成所述對的所述數(shù)據(jù)塊的特征值,以便隱藏該消息數(shù)據(jù);(c)比較所述確定的特征值之間的差值,并且依據(jù)轉(zhuǎn)換規(guī)則,處理構(gòu)成所述對的所述各數(shù)據(jù)塊的特征值,以便在消息數(shù)據(jù)中隱藏部分?jǐn)?shù)據(jù);(d)重復(fù)步驟(a)到步驟(c),直至隱藏了所有消息數(shù)據(jù)。
6.用于在媒體數(shù)據(jù)中隱藏?cái)?shù)據(jù)的數(shù)據(jù)隱藏方法,該方法包括以下步驟(a)確定媒體數(shù)據(jù)內(nèi)的一對數(shù)據(jù)塊,該媒體數(shù)據(jù)包括第一數(shù)據(jù)塊和第二數(shù)據(jù)塊;和(b)確定構(gòu)成所述配對的所述各塊的特征值;(c)根據(jù)轉(zhuǎn)換規(guī)則,交換構(gòu)成所述配對的所述塊的特征值,以便隱藏消息數(shù)據(jù),其中轉(zhuǎn)換規(guī)則確定數(shù)據(jù)塊之間的特征值的差值。
7.根據(jù)權(quán)利要求4、5或6的數(shù)據(jù)隱藏方法,其中所述第二數(shù)據(jù)塊與所述第一數(shù)據(jù)塊相鄰,第一數(shù)據(jù)塊和第二數(shù)據(jù)塊構(gòu)成一對。
8.根據(jù)權(quán)利要求4、5或6的數(shù)據(jù)隱藏方法,其中轉(zhuǎn)換規(guī)則規(guī)定如果所述第一數(shù)據(jù)塊的特征值大于第二數(shù)據(jù)塊的特征值,就隱藏該位中的一位,反之,如果所述第一數(shù)據(jù)塊的特征值小于第二數(shù)據(jù)塊的特征值,就隱藏另一位。
9.根據(jù)權(quán)利要求4、5或6的數(shù)據(jù)隱藏方法,其中該方法還包括以下步驟如果所述第一數(shù)據(jù)塊和所述第二數(shù)據(jù)塊之間的特征值的差大于第一閾值,就禁止執(zhí)行所述步驟(c),從而防止了媒體數(shù)據(jù)降質(zhì)。
10.根據(jù)權(quán)利要求4、5或6的數(shù)據(jù)隱藏方法,其中該方法還包括以下步驟如果所述第一數(shù)據(jù)塊和所述第二數(shù)據(jù)塊之間的特征值的差小于第二閾值,就禁止執(zhí)行所述步驟(c),從而防止了在抽取消息數(shù)據(jù)中精度的下降。
11.根據(jù)權(quán)利要求4、5或6的數(shù)據(jù)隱藏方法,其中所述數(shù)據(jù)塊為一象素塊,并且所述特征值為所述象素塊的亮度值。
12.根據(jù)權(quán)利要求3、5或6的數(shù)據(jù)隱藏方法,其中所述數(shù)據(jù)塊為一象素塊,并且所述特征值為所述象素塊的方差值。
13.用于從隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)中抽取消息數(shù)據(jù)的數(shù)據(jù)抽取方法,該方法包括以下步驟(a)標(biāo)識(shí)其中隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)內(nèi)的數(shù)據(jù)塊中的一個(gè);(b)確定所述標(biāo)識(shí)數(shù)據(jù)塊的特征值;和(c)根據(jù)所述數(shù)據(jù)塊的特征值,依據(jù)轉(zhuǎn)換規(guī)則,抽取該消息數(shù)據(jù),其中轉(zhuǎn)換規(guī)則把需要抽取的數(shù)據(jù)的內(nèi)容同特征值的參考值與所述數(shù)據(jù)塊的特征值之間的差值聯(lián)系起來。
14.根據(jù)權(quán)利要求13的數(shù)據(jù)抽取方法,其中所述參考值存在于媒體數(shù)據(jù)中,并且該值為不同于所述數(shù)據(jù)塊的數(shù)據(jù)塊的特征值。
15.用于從隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)中抽取消息數(shù)據(jù)的數(shù)據(jù)抽取方法,該方法包括以下步驟(a)標(biāo)識(shí)其中隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)內(nèi)的一對數(shù)據(jù)塊;(b)確定構(gòu)成所述配對的所述數(shù)據(jù)塊的特征值;和(c)根據(jù)所述相關(guān)數(shù)據(jù)塊的特征值,依據(jù)轉(zhuǎn)換規(guī)則,抽取隱藏?cái)?shù)據(jù),其中轉(zhuǎn)換規(guī)則把需要抽取的數(shù)據(jù)的內(nèi)容同構(gòu)成所述配對的所述數(shù)據(jù)塊之間的特征值的差值聯(lián)系起來。
16.根據(jù)權(quán)利要求14或15的數(shù)據(jù)抽取方法,其中所述第二數(shù)據(jù)塊與第一數(shù)據(jù)塊相鄰,第一數(shù)據(jù)塊和第二數(shù)據(jù)塊構(gòu)成一對。
17.根據(jù)權(quán)利要求14或15的數(shù)據(jù)抽取方法,其中所述轉(zhuǎn)換規(guī)則規(guī)定如果所述第一數(shù)據(jù)塊的特征值大于第二數(shù)據(jù)塊的特征值,就抽取該位中的一位,反之,如果所述第一數(shù)據(jù)塊的特征值小于第二數(shù)據(jù)塊的特征值,就抽取另一位。
18.根據(jù)權(quán)利要求4或5的數(shù)據(jù)抽取方法,其中,如果構(gòu)成配對的第一數(shù)據(jù)塊和第二數(shù)據(jù)塊之間的特征值的差值小于特定閾值,則所述轉(zhuǎn)換規(guī)則就確定該配對數(shù)據(jù)塊中未隱藏媒體數(shù)據(jù)。
19.根據(jù)權(quán)利要求13或15的數(shù)據(jù)抽取方法,其中所述數(shù)據(jù)塊為象素塊,并且其中所述特征值為所述象素塊的亮度值。
20.根據(jù)權(quán)利要求13或15的數(shù)據(jù)抽取方法,其中所述數(shù)據(jù)塊為象素塊,并且其中所述特征值為所述象素塊的方差值。
21.用于從隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)中抽取消息數(shù)據(jù)的數(shù)據(jù)抽取系統(tǒng),該系統(tǒng)包括一個(gè)轉(zhuǎn)換裝置,該轉(zhuǎn)換器將由模擬信號構(gòu)成的包含隱藏消息數(shù)據(jù)的消息數(shù)據(jù)轉(zhuǎn)換為數(shù)字信號,隨后輸出該數(shù)字信號;一個(gè)確定裝置,該裝置確定隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)中的數(shù)據(jù)塊中的一個(gè);一個(gè)特征值計(jì)算裝置,該裝置決定由所述確定裝置確定的所述數(shù)據(jù)塊的特征值;一個(gè)存儲(chǔ)裝置,該裝置存儲(chǔ)轉(zhuǎn)換規(guī)則,轉(zhuǎn)換規(guī)則把需要抽取的數(shù)據(jù)內(nèi)容同特征值的參考值與所述數(shù)據(jù)塊的特征值之間的差值聯(lián)系起來;和一個(gè)抽取裝置,該裝置依據(jù)所述數(shù)據(jù)塊的特征值,參照轉(zhuǎn)換規(guī)則,抽取消息數(shù)據(jù)。
22.根據(jù)權(quán)利要求21的一種數(shù)據(jù)抽取系統(tǒng),其中所述參考值存在于該媒體數(shù)據(jù)中,并且為不同于所述數(shù)據(jù)塊的數(shù)據(jù)塊的特征值。
23.根據(jù)權(quán)利要求21的一種數(shù)據(jù)抽取系統(tǒng),其中所述轉(zhuǎn)換規(guī)則規(guī)定如果所述第一數(shù)據(jù)塊的特征值大于第二數(shù)據(jù)塊的特征值,就抽取該位中的一位,反之,如果所述第一數(shù)據(jù)塊的特征值小于第二數(shù)據(jù)塊的特征值,就抽取另一位。
24.用于從隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)中抽取消息數(shù)據(jù)的半導(dǎo)體集成電路,該電路包括用于確定由輸入信號構(gòu)成的媒體數(shù)據(jù)中某個(gè)數(shù)據(jù)塊的特征值的設(shè)備,其中已經(jīng)確定該數(shù)據(jù)塊中隱藏有消息數(shù)據(jù);和一個(gè)抽取裝置,該裝置根據(jù)所述數(shù)據(jù)塊的特征值,參照轉(zhuǎn)換規(guī)則,抽取隱藏的消息數(shù)據(jù),其中轉(zhuǎn)換規(guī)則把需要抽取的數(shù)據(jù)內(nèi)容同特征值的參考值與所述數(shù)據(jù)塊的特征值之間的差值聯(lián)系起來。
25.根據(jù)權(quán)利要求24的半導(dǎo)體集成電路,其中所述參考值存在于該媒體數(shù)據(jù)中,并且為不同于所述數(shù)據(jù)塊的數(shù)據(jù)塊的特征值。
26.根據(jù)權(quán)利要求25的半導(dǎo)體集成電路,其中所述轉(zhuǎn)換規(guī)則規(guī)定如果所述第一數(shù)據(jù)塊的特征值大于第二數(shù)據(jù)塊的特征值,就抽取該位中的一位,反之,如果所述第一數(shù)據(jù)塊的特征值小于第二數(shù)據(jù)塊的特征值,就抽取另一位。
全文摘要
本發(fā)明涉及一種用于在媒體數(shù)據(jù)中隱藏?cái)?shù)據(jù)的數(shù)據(jù)隱藏方法、系統(tǒng)、和集成電路,該方法包括以下步驟(a)標(biāo)識(shí)其中隱藏有消息數(shù)據(jù)的媒體數(shù)據(jù)內(nèi)的一個(gè)數(shù)據(jù)塊;(b)確定所述標(biāo)識(shí)數(shù)據(jù)塊的特征值;和(c)處理所述數(shù)據(jù)塊的特征值,以便依據(jù)轉(zhuǎn)換規(guī)則,隱藏該消息數(shù)據(jù),其中轉(zhuǎn)換規(guī)則把需要隱藏的數(shù)據(jù)的內(nèi)容同特征值的參考值與所述數(shù)據(jù)塊的特征值之間的差值聯(lián)系起來。
文檔編號G09C5/00GK1474591SQ0215717
公開日2004年2月11日 申請日期1997年2月13日 優(yōu)先權(quán)日1996年6月20日
發(fā)明者沼尾雅之, 清水周一, 森本典繁, 小林明, 一, 繁 申請人:國際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
乌兰察布市| 平江县| 海兴县| 鄂伦春自治旗| 崇文区| 天全县| 婺源县| 思南县| 民乐县| 葵青区| 许昌市| 武平县| 寻甸| 海南省| 金平| 陇西县| 沁源县| 台安县| 花垣县| 贞丰县| 保康县| 镶黄旗| 农安县| 九台市| 景谷| 临沭县| 宁国市| 砀山县| 隆林| 马山县| 新余市| 开鲁县| 德保县| 拉萨市| 黎川县| 晴隆县| 资溪县| 淮北市| 通州市| 高碑店市| 康保县|