矢量圖形版權(quán)字符的嵌入和提取方法
【專利摘要】本發(fā)明涉及一種矢量圖形版權(quán)字符的嵌入和提取方法。目前的版權(quán)字符嵌入方法,難以抵抗平移、旋轉(zhuǎn)、縮放及其組合的幾何攻擊,更難以抵抗針對圖元的添加、修改、刪除機(jī)器組合的干擾攻擊。本發(fā)明按句柄值對矢量圖形做復(fù)數(shù)比例,將版權(quán)字符嵌入到復(fù)數(shù)比例中,保證版權(quán)字符對幾何攻擊的抵抗,嵌入到矢量圖形的版權(quán)字符具有多組,使得本發(fā)明對干擾攻擊具有魯棒性。
【專利說明】矢量圖形版權(quán)字符的嵌入和提取方法
[0001]
【技術(shù)領(lǐng)域】
[0002]本發(fā)明涉及矢量圖形的版權(quán)加密保護(hù)技術(shù),尤其涉及一種矢量圖形版權(quán)字符的嵌入和提取方法。本發(fā)明方法能將代表版權(quán)信息的版權(quán)字符以不可見的方式嵌入到矢量圖形文件中,并能以特定的方式提取出版權(quán)字符,以佐證圖形版權(quán)的所有者。
【背景技術(shù)】
[0003]矢量圖形是指利用諸如點(diǎn)、線、曲線、多邊形等基于數(shù)學(xué)表達(dá)的幾何圖元來表示計(jì)算機(jī)圖形。不同于位圖,由于矢量圖形是以數(shù)學(xué)特征描繪的,其縮放后不會出現(xiàn)位圖式的馬賽克特征。矢量圖形由于其不失真的縮放特性和精確性被廣泛應(yīng)用于建筑、機(jī)械、紡織、電氣、土木、藝術(shù)創(chuàng)作等領(lǐng)域。正是其廣泛運(yùn)用的需要,矢量圖形作為智慧的結(jié)晶,創(chuàng)作人的心血,更是所有人資產(chǎn)的體現(xiàn),其版權(quán)的保護(hù)課題一直備受關(guān)注。
[0004]密碼或數(shù)字證書的方式由于其所具有的不便利性,難以廣泛推廣。近年來,受多媒體文件嵌入不可見版權(quán)信息技術(shù)的影響,采取嵌入不可見版權(quán)字符的方式來保護(hù)矢量圖形的技術(shù)正真越來越受到人們的關(guān)注。一方面,嵌入的版權(quán)字符不可見,文件的接收者或者擴(kuò)散者不易察覺;另一方面,所有者發(fā)送給接收者的最終文件也不必要做額外的加密處理,閱讀圖形不需要經(jīng)過解密步驟,由于這種版權(quán)保護(hù)技術(shù)帶來的隱蔽性和閱讀的便利性,使所有者和接受者都容易接受,越來越受歡迎。
[0005]但是,版權(quán)字符嵌入技術(shù)的現(xiàn)狀不容樂觀,能很輕易被“涂抹”,難以起到佐證版權(quán)的作用。現(xiàn)有的矢量圖形版權(quán)版權(quán)字符嵌入技術(shù)根據(jù)版權(quán)字符嵌入方法工作域的不同,可以分為變換域方法和空間域方法。
[0006]在變換域里,主要借助小波變換、傅里葉變換等技術(shù)實(shí)現(xiàn),該變換能夠抵抗全局的縮放、平移和旋轉(zhuǎn)等幾何操作,但不能抵抗增加、刪除和修改的攻擊。例如,對比文件I [康菁菁等.二維工程圖中基于分?jǐn)?shù)傅里葉變換的盲水印算法.計(jì)算機(jī)應(yīng)用.2009 (6)]提出一種基于分?jǐn)?shù)傅里葉變換的水印算法,該方法提取矢量圖形中線段的相對坐標(biāo)向量,構(gòu)造一維復(fù)數(shù)信號,通過分?jǐn)?shù)傅里葉變換得到復(fù)數(shù)信號的變換系數(shù),對變換系數(shù)的幅值進(jìn)行調(diào)整來嵌入水印,卻無法抵抗添加、刪除、修改等干擾攻擊。
[0007]在空間域中,主要借助于圖元的頂點(diǎn)坐標(biāo)、半徑和角度等屬性嵌入版權(quán)字符,根據(jù)依賴的圖元,主要分為兩類:第一類,提取工程圖中的直線(工程圖中一般含較多的直線),修改直線的頂點(diǎn)坐標(biāo)或?qū)⒅本€變換為多段線實(shí)現(xiàn)版權(quán)字符的嵌入,但該方法并不能抵抗縮放的攻擊,更無法抵抗增加、刪除或修改等攻擊;第二類,提取工程圖中實(shí)體的所有頂點(diǎn),借助于頂點(diǎn)間距離比例的修改嵌入版權(quán)字符碎片,卻無法抵抗增加和刪除圖元實(shí)體的攻擊,或進(jìn)行極坐標(biāo)變換得到幅值和相位抵抗旋轉(zhuǎn)和縮放攻擊,但不能抵抗多種幾何變換的組合攻擊。例如,對比文件2 [汪亞順等.基于二維工程圖的數(shù)字水印比例算法.南昌大學(xué)學(xué)報(bào)(工科版).2003 (4)]提出了一種通過修改工程圖中各實(shí)體頂點(diǎn)間距離的比例來嵌入水印的算法,但在增加或刪除圖元實(shí)體時(shí),卻無法提取準(zhǔn)確的水印序列,不能佐證版權(quán)所有者。
[0008]正如上述,目前的矢量圖形版權(quán)字符嵌入技術(shù)難以抵抗對針對整個(gè)圖形的平移、旋轉(zhuǎn)、縮放的幾何攻擊,更難以抵抗增加或刪除圖元的干擾攻擊。究其原因,主要是因?yàn)槭噶繄D形的固有特性決定的,這些特性包括:
(1)矢量圖形文件所占用的字節(jié)數(shù)少;
(2)沒有一個(gè)相對穩(wěn)定的變換域可供嵌入版權(quán)字符使用;
(3)易于進(jìn)行幾何操作而導(dǎo)致丟失版權(quán)字符碎片;
因此,在矢量圖形中嵌入版權(quán)字符比在諸如位圖、視頻、音頻、網(wǎng)格等文件中嵌入版權(quán)字符要困難得多,尤其是特性(3)加劇了版權(quán)字符抵抗攻擊的難度的。
[0009]有鑒于此,本發(fā)明提出一種矢量圖形版權(quán)版權(quán)字符的嵌入和提取方法,以彌補(bǔ)現(xiàn)有技術(shù)的不足。
【發(fā)明內(nèi)容】
[0010]本發(fā)明的第一個(gè)目的在于:提供一種矢量圖形版權(quán)字符的嵌入方法,該方法能夠抵抗幾何攻擊,對干擾攻擊具有魯棒性。
[0011]本發(fā)明的第二個(gè)目的在于:提供一種矢量圖形版權(quán)字符的提取方法,該方法能夠從遭受干擾攻擊的矢量圖形文件中提取出版權(quán)字符。
[0012]為了達(dá)成上述目的,本發(fā)明的技術(shù)方案如下:
矢量圖形版權(quán)字符的嵌入和提取方法,包括以嵌入步驟和提取步驟,嵌入步驟包括:步驟1.1,構(gòu)造版權(quán)字符序列,將表示版權(quán)信息的字符對象分割為連續(xù)的片段,稱為“字符碎片”,字符碎片的個(gè)數(shù)即是字符序列的長度,欲嵌入矢量圖形內(nèi)包含的圖元個(gè)數(shù)即是該矢量圖形的長度,字符碎片的長度短于矢量圖形的長度;
步驟1.2,為矢量圖形包含的圖元構(gòu)建復(fù)數(shù)矢量算子;
步驟1.3,按照圖元的生成次序(句柄值)比較相鄰次序圖元對的復(fù)數(shù)矢量算子,獲得圖元對復(fù)數(shù)比例,本步驟比較結(jié)果稱為“前復(fù)數(shù)比例”;
步驟1.4,用字符碎片替換步驟1.3的前復(fù)數(shù)比例中的一部分,獲得嵌入字符碎片的新復(fù)數(shù)比例,稱為“中復(fù)數(shù)比例”;
步驟1.5,根據(jù)步驟1.4獲得的中復(fù)數(shù)比例修改圖元對,修改后該圖元對的復(fù)數(shù)比例稱為“后復(fù)數(shù)比例”,修改結(jié)果應(yīng)使后復(fù)數(shù)比例等于中復(fù)數(shù)比例。
[0013]步驟1.6,依照圖元的生成次序(句柄值)遍歷步驟1.1至步驟1.5,將字符碎片逐個(gè)嵌入到遍歷到的圖元對中;
提取步驟包括以下步驟:
步驟2.1,為矢量圖形包含的圖元構(gòu)建復(fù)數(shù)矢量算子;
步驟2.2,按照圖元的生成次序(句柄值)比較相鄰次序圖元的復(fù)數(shù)矢量算子,獲得圖元對復(fù)數(shù)比例,稱作“提取復(fù)數(shù)比例”,從提取復(fù)數(shù)比例中讀取字符碎片,;
步驟2.3,依照圖元對生成次序(句柄值)遍歷步驟2.1至步驟2.2,獲得字符碎片組成的樣本;
步驟2.4,分析樣本,確定正確的字符碎片和錯誤字符碎片;
步驟2.5,將正確的字符碎片還原成字符。
[0014]針對嵌入步驟,優(yōu)選地,矢量圖形的長度和字符序列的長度之比大于等于2。
[0015]針對嵌入步驟,優(yōu)選地,前復(fù)數(shù)比例和中復(fù)數(shù)比例以及后復(fù)數(shù)比例存儲為雙精度浮點(diǎn)數(shù)。
[0016]針對嵌入步驟,優(yōu)選地,版權(quán)字符或字符碎片在嵌入之前做加密處理。
[0017]針對嵌入步驟,優(yōu)選地,版權(quán)字符替換前復(fù)數(shù)比例中的特定部位。
[0018]針對嵌入步驟,優(yōu)選地,修改圖元對時(shí),只修改圖元對中次序在先的圖元。
[0019]針對嵌入步驟,優(yōu)選地,修改圖元對時(shí),只修改圖元對中次序在后的圖元。
[0020]針對提取步驟,優(yōu)選地,提取的遍歷方向和嵌入的遍歷方向相反。
[0021]針對提取步驟,優(yōu)選地,分析樣本中各個(gè)字符碎片出現(xiàn)的頻次,用閾值過濾錯誤字符碎片,保留正確字符碎片。
[0022]針對提取步驟,優(yōu)選地,將樣本與正確的字符碎片進(jìn)行比較,將比較結(jié)果一致的字符碎片作為正確字符碎片。
[0023]本發(fā)明將字符碎片嵌入到圖元對的復(fù)數(shù)比例中,而不是直接嵌入到圖元的數(shù)據(jù)結(jié)構(gòu)中,通過修改圖元對的復(fù)數(shù)比例,使修改后的圖元對復(fù)數(shù)比例等于后復(fù)數(shù)比例,實(shí)現(xiàn)版權(quán)字符碎片的嵌入。由于圖元對復(fù)數(shù)比例是矢量算子之間的比值,不隨縮放、平移、旋轉(zhuǎn)或者其組合的幾何變換而改變;確保本發(fā)明具有能夠抵抗幾何攻擊的有益效果。
[0024]本發(fā)明利用圖元的生成次序(句柄值)作為比較步驟的依據(jù),是具有抵抗修改、添力口、刪除之類的干擾攻擊的基礎(chǔ)。在創(chuàng)作矢量圖形的過程中,創(chuàng)作程序按照圖元創(chuàng)作的時(shí)間順序分配的句柄值具有唯一性和不可修改性,利用句柄值的生成次序作為字符碎片添加和提取的遍歷參考,能保證遍歷的方向性。發(fā)生干擾攻擊時(shí),破壞的是干擾點(diǎn)所處位置一定范圍內(nèi)的圖元對的前后次序,不影響其它圖元對的次序,使本發(fā)明具備一定的抵抗干擾攻擊的有益效果。
[0025]如上所述,采用本發(fā)明的技術(shù)方案后,添加進(jìn)矢量圖形的字符碎片能夠完全抵抗幾何攻擊;對干擾攻擊具有魯棒性。下面將結(jié)合附圖以實(shí)施例的方式對本發(fā)明做進(jìn)一步闡述。
【專利附圖】
【附圖說明】
[0026]圖1是矢量圖形數(shù)據(jù)存組織構(gòu)示意圖;
圖2是線段型圖元構(gòu)建復(fù)數(shù)矢量算子示意圖;
圖3是多段線型圖元構(gòu)建復(fù)數(shù)矢量算子示意圖;
圖4是樣條曲線型圖元構(gòu)建復(fù)數(shù)矢量算子示意圖;
圖5是圓弧型圖元構(gòu)建復(fù)數(shù)矢量算子示意圖;
圖6是字符碎片嵌入到雙精度浮點(diǎn)數(shù)據(jù)結(jié)構(gòu)中的示意圖;
圖7是修改樣條曲線圖元示意圖;
圖8是修改弧形圖元示意圖;
圖9是實(shí)施例一擬用矢量圖形修改前后對比示意圖;
圖10是實(shí)施例二擬用矢量圖形修改前后對比示意圖。
【具體實(shí)施方式】
[0027]由于字節(jié)的長度因計(jì)算機(jī)的作業(yè)平臺和硬件條件而可能不同,其長度根據(jù)具體的狀況可做調(diào)整,以下舉例涉及到數(shù)據(jù)長度的表述不能用于限制本發(fā)明之精神。
[0028]正如前述,矢量圖形是指利用諸如點(diǎn)、線、曲線、多邊形等基于數(shù)學(xué)表達(dá)的幾何圖元來表示計(jì)算機(jī)圖形。其具體的數(shù)據(jù)組織結(jié)構(gòu)因?yàn)椴煌L圖程序而異,但不脫離圖1所示的組織要素。圖1示意之組織結(jié)構(gòu)是以dwg格式的通用存儲結(jié)構(gòu)為原型,下面選用此原型作為闡述之實(shí)例,不能以dwg格式限制本發(fā)明之精神,dwg格式外的其它矢量圖形格式之實(shí)施例,參照本實(shí)施例即可實(shí)現(xiàn)。
[0029]實(shí)施例一
一、嵌入步驟1.1
本實(shí)施例中,欲嵌入版權(quán)字符的矢量圖形包含N個(gè)圖元,其長度即為N。以字符串“#xmhd”表示版權(quán)所有者。為了防止字符串被非法識別,對字符串“#xmhd”做加密處理,優(yōu)選現(xiàn)有加密算法將字符串“#xmhd”作為輸入,得加密字符串。本實(shí)施例中,加密字符串的長度不變,即5個(gè)字節(jié)。將加密后的字符串等分為L個(gè)連續(xù)的數(shù)位片段,即字符碎片e ,獲得包含的字符序列E ,字符碎片e的位數(shù)即是其長度t。出于安全考量,字符碎片e還可作進(jìn)一步的加密處理,本實(shí)施例中略去。計(jì)算矢量圖形的長度N與字符序列長度L的比值,并向下取整得
LiV/£j = G ;
本實(shí)施例中,G ? 2 ,M表示本實(shí)施例中能有效嵌入G組字符序列。
[0030]步驟1.2
悉知,矢量圖形的本質(zhì)是數(shù)學(xué)函數(shù)圖象,不論是線段、多段線、樣條曲線、圓弧等等圖元,都是用必要的參數(shù)繪制而成的函數(shù)圖象,所以從函數(shù)的角度看,圖元類型可理解為函數(shù)類型,圖元的幾何特征可理解為函數(shù)參數(shù)。
[0031]如圖1所示,句柄值由繪圖程序根據(jù)圖元生成的時(shí)間順序給定,按時(shí)間順序排列,具有唯一性,圖元屬性標(biāo)記了該段數(shù)據(jù)所載圖元的類型(即函數(shù)類型),包括但不限于線段、多段線、樣條曲線、圓弧、多邊形、橢圓、云線等等。
[0032]如圖1中,圖元信息部分記載了對應(yīng)圖元(函數(shù)類型)的幾何特征(函數(shù)參數(shù)),針對不同的圖元類型,圖元信息部分記載了該類型函數(shù)所固有的必要參數(shù),例如起點(diǎn)、終點(diǎn)、中間點(diǎn)、節(jié)點(diǎn)、圓心、起始角度、終止角度、半徑、節(jié)點(diǎn)向量等等。
[0033]如圖1中,其它信息部分記載了對應(yīng)圖元的線型、線寬、顏色、圖層等等非矢量函數(shù)幾何特征的信息。
[0034]根據(jù)本發(fā)明的之精神,應(yīng)對每一圖元構(gòu)建復(fù)數(shù)矢量算子?,F(xiàn)以圖2至圖5所示之圖元闡述矢量算子的構(gòu)建實(shí)例。
[0035]如圖2所示,對于線段ab,取其起點(diǎn)a和終點(diǎn)b的坐標(biāo)構(gòu)建表征矢量‘如下,
=(文0-yj,
A是a點(diǎn)指向b點(diǎn)的向量,為了便于讀圖,圖2特意將斗移出。
[0036]如圖3所示,對于多段線cdefgh,忽略中間點(diǎn)僅取其起點(diǎn)c和終點(diǎn)h坐標(biāo)構(gòu)建表征矢量如下,
A2 = (fc-xh,3*c - Jj ,
4是從c點(diǎn)指向h點(diǎn)的向量。
[0037]如圖4所示,對于樣條曲線ijklmno忽略中間點(diǎn)僅取起點(diǎn)i和終點(diǎn)ο構(gòu)建表征矢量4如下,
A3 = (X-XorVi ~ VJ,
鳥是從i點(diǎn)指向O點(diǎn)的向量。
[0038]如圖5所示,對于圓弧pqr,忽略圓心僅取起始角&、終止角§2、半徑R構(gòu)建表征矢量A4如下,
j44 = (B cos^.^ , R sin,
&是從圓心P點(diǎn)指向外,且相位角為¥的向量。
[0039]對于圓,可以將其視為起始角為O,終止角為211的特殊圓弧,其表征矢量的構(gòu)建參照圓弧。
[0040]如上所述,表征矢量可以用下面兩個(gè)通式表達(dá)
^£ ? ?—..%τ%ι —Τι ■.<■■..<■.■ 5 t -■
\Akl xk2f>kZ/W ,
Ak = cos —-.—,Rk sin —;..-..-.-..^ *..*****..(2) ,
公式CD適用于僅取坐標(biāo)點(diǎn)構(gòu)建表征矢量的情況,公式d)適用于提取角度和半徑構(gòu)建表征矢量的情況,至于利用其它幾何特征(函數(shù)參數(shù))構(gòu)建表征矢量的情況在此無需枚舉,本領(lǐng)域普通技術(shù)人員能夠從上述公示中引申而得。
[0041]上述公式(D和公式(I)可以合寫為
4 = (?* )?)…….…(D,
由公式(I)可作其復(fù)數(shù)形式 Cfe = % +I* Vfc *""***"?,
公式(D即是復(fù)數(shù)矢量算子。如此,有
Cjsr = rk(cmIk +I?sinIif) = rkem^ _*_.** (D ,
公式:D是復(fù)數(shù)矢量算子的歐拉形式,其中,
模長
rk = ,
相位角
= Srctan(VkZxjc)。
[0042]在此,將一對相鄰次序的圖元稱之為“圖元對”。
[0043]步驟1.3 根據(jù)本發(fā)明之精神,應(yīng)當(dāng)按照圖元的生成次序(句柄值)比較相鄰次序圖元對的復(fù)數(shù)矢量算子,可以按照句柄值從小到大的順序比較,也可以按照句柄值從大到小的順序。其比較的方式可以采取作差、作商等運(yùn)算,本實(shí)施例以復(fù)數(shù)矢量算子作商的方式為實(shí)例作說明。將相鄰次序的復(fù)數(shù)矢量算子作商得
即模長比值為
相位差為
紙=4+1 一 Qk,
7,和44統(tǒng)稱為前復(fù)數(shù)比例λ ,至于是取\或是取Alfe參與后續(xù)的運(yùn)算取決于意圖;例如,可按前復(fù)數(shù)比例I的特殊結(jié)果選取,即當(dāng)= O時(shí),選取Vfc作為添加字符碎片的前復(fù)數(shù)比例人,當(dāng)4§&爹O時(shí),選取作為添加字符碎片的前復(fù)數(shù)比例λ ;還比如,可按前復(fù)數(shù)比例λ的大小選取,即當(dāng)Vfe ? &4時(shí),選取Vfc作為添加字符碎片的前復(fù)數(shù)比例λ ,反之亦然。
本實(shí)施例將按照前復(fù)數(shù)比例λ的大小來選取Vfc或Δ4參與后續(xù)運(yùn)算。
[0044]由于計(jì)算機(jī)資源之局限,運(yùn)算結(jié)果只能以有限的位數(shù)表示,決定其精度之有限。為了盡量提高計(jì)算之精度,宜選用高精度之?dāng)?shù)據(jù)類型存儲計(jì)算因子。常用的雙精度浮點(diǎn)數(shù)是一種高精度的數(shù)據(jù)類型,如圖6所示,ΙΕΕΕ-754標(biāo)準(zhǔn)定義的雙精度浮點(diǎn)數(shù),其高63位是符號位S,62?52位是指數(shù)位Ε,低O?51位是尾數(shù)位M。依本發(fā)明之精神,本實(shí)施例中,前復(fù)數(shù)比例、中復(fù)數(shù)比例以及后復(fù)數(shù)比例和提取復(fù)數(shù)比例都將儲存為雙精度浮點(diǎn)數(shù)據(jù)。
[0045]步驟1.4
依照本發(fā)明之精神,將字符碎片e嵌入到前復(fù)數(shù)比例I后可獲得新復(fù)數(shù)比例,稱之為中復(fù)數(shù)比例λ5'具體的嵌入方式有多種,包括第一種參照物來決定將字符碎片e嵌入到I尾數(shù)位M中的位置,如選取圖元類型作為參照,不同的圖元類型嵌入到不同的位置;包括第二種可以采用固定位置的方式將字符碎片e嵌入到λ尾數(shù)位M中。本實(shí)施例將采用第二中方式來說明實(shí)例。如圖6所示,λ尾數(shù)位M中選取W位到W-1位之間的?位區(qū)間作為字符碎片嵌入?yún)^(qū)間Τ,字符碎片嵌入?yún)^(qū)間T位置的選取以不過份破壞λ的精度為宜以,即以嵌入字符碎片e后的矢量圖形不過分失真導(dǎo)致讀圖誤差為考量,盡可能不改變λ的原值,保證標(biāo)注圖元的尺寸數(shù)值不變?yōu)榈拙€。
[0046]步驟1.5
依據(jù)本發(fā)明之精神,應(yīng)當(dāng)根據(jù)》¥修改圖元對,使修改后的圖元對復(fù)數(shù)比例即后復(fù)數(shù)比例?5等于中復(fù)數(shù)比例?嚴(yán);同時(shí)本發(fā)明指出可以優(yōu)選地只修改圖元對中次序在先的圖元,本實(shí)施例采用修改圖元對中次序在先的圖元方案。
[0047]如圖7所示,某圖元對由圖元20和圖元30組成,從句柄值看,假設(shè)圖元20是次序在先的圖元,現(xiàn)將某個(gè)字符碎片6嵌入圖元20中。如前所述,計(jì)算圖元30和圖元20的復(fù)數(shù)矢量算子之比C3(3/CM ,得νΜ_2?)和AS3e2e。假設(shè)V3e_2<3 ? Δ§30-20 ,?。榍皬?fù)數(shù)比例λ30_20,用字符碎片^替換λ32尾數(shù)位M中的字符嵌入?yún)^(qū)間T,得嗌。接著,保持圖元20各點(diǎn)不變,僅修改終點(diǎn)ο為Ow點(diǎn),將表征矢量修改為AJ0,使得AJ0和43<)滿足CwZG0
—^30-20 — ^30-20 ,
完成字符碎片A的嵌入。
[0048]如圖8所示,某圖元對由圖元40和圖元50組成,從句柄值看,假設(shè)圖元40是次序在先的圖元,現(xiàn)將某個(gè)字符碎片士嵌入圖元40中。如前所述,計(jì)算圖元50和圖元40的復(fù)數(shù)矢量算子之比C50ZC4iJ,得vse_M和ΔΙ5(>_4£>。假設(shè)? vm-4Q ,取A§sej_4£5為前復(fù)數(shù)比例,用字符碎片%替換尾數(shù)位M中的字符嵌入?yún)^(qū)間了,得λ|β_Μ。接著,保持圓心P、半徑R、起始角不變,僅修改r點(diǎn)、為Tw點(diǎn),將表征矢量A4tj修改為Aftj,使得必和‘滿足
P /r* — ? N一 iw
lSg/L40 — aSC-40 — aSO-40 ,
完成字符碎片%的嵌入。
[0049]步驟1.6
依據(jù)發(fā)明之精神,按照前述圖7和圖8嵌入字符碎片的闡述,只要按句柄值的順序遍歷所有圖元對,將字符碎片序列E所包含各個(gè)碎片)逐個(gè)嵌入到相應(yīng)的圖元中,首次嵌入完最后一個(gè)字符碎片I后,再從第一個(gè)字符碎片0!開始,接續(xù)所在句柄位置繼續(xù)嵌入,如此循環(huán),直到所有W個(gè)圖元都嵌入了字符碎片e為止,完成嵌入步驟。
[0050]本實(shí)施例所述所有~個(gè)圖元是為泛指,難以通過圖形舉例表達(dá),為了展示嵌入前后圖元之變化,現(xiàn)擬用圖9的12個(gè)圖元作數(shù)為W,并夸張嵌入前后之改變以形象示之。
[0051]圖9中,D是待添加字符碎片的矢量圖形,Dwr是已添加字符碎片的矢量圖形,矢量圖形D的所有圖元都嵌入了字符碎片e ,獲得包含字符碎片的矢量圖形IT。標(biāo)號01?12標(biāo)識的圖元分別是:線段01,樣條曲線02,線段03,線段04,圓弧05,圓06,線段07,線段08,線段09,線段10,多段線11,多段線12。標(biāo)號01?12組合成矢量圖形D ,用粗實(shí)線表示;
帶“W”上標(biāo)的圖元組合成矢量圖形Dw ,用粗虛線表示。
[0052]二、提取
步驟2.1至步驟2.3
依據(jù)本發(fā)明之精神,提取字符碎片應(yīng)當(dāng)為每一圖元構(gòu)建復(fù)數(shù)矢量算子。本實(shí)施例在添加字符時(shí)采用的是只修改次序在先的圖元,當(dāng)下(正在操作的)圖元對中次序在先的圖元k即是前一步圖元中對次序在后的圖元,對當(dāng)下圖元對中次序在先的圖元k嵌入字符碎片e得€【的同時(shí)即改變前一步CJC1^1中的qit,導(dǎo)致在提取時(shí)若按照同嵌入時(shí)相同的遍歷順序遍歷,計(jì)算出的是CjJVCi^,而不是cyc^。所以,本實(shí)施例提取字符碎片的遍歷順序應(yīng)當(dāng)和嵌入字符的遍歷次序相反(即提取的起點(diǎn)是嵌入的終點(diǎn)),并反算出4。
[0053]以圖9為例,嵌入是遍歷到的最后一個(gè)圖元對是圖元11-圖元12,由于多段線12在嵌入時(shí)處于最后遍歷到的圖元對中次序在后的圖元,其值不受嵌入操作影響,提取遍歷當(dāng)從圖元12和圖元I開始,先計(jì)算出C12ZCJ41 = = A51v^11,獲得AH11即可從其字符嵌入?yún)^(qū)間T中讀出最后字符碎片。
[0054]提取遍歷到第二個(gè)圖元對時(shí),應(yīng)先由Ct1 X算SC1115首先,抹去^^—。中的字符嵌入?yún)^(qū)間T,得到抹去字符碎片的新復(fù)數(shù)比例稱之為“反算復(fù)數(shù)比例”;其次,修改多段線U1",其被修改的函數(shù)參數(shù)(本實(shí)施例是終點(diǎn))和嵌入修改函數(shù)參數(shù)相同,修改后反算出多段線11氣并且令多段線if滿足
C12ZCjd1 二,
反算結(jié)束。
[0055]由于是AH11中抹去字符嵌入?yún)^(qū)間T而獲得,Afp11半A51v^11,其必然的結(jié)果是多段線Ilrf與多段線11不重合,即成.C11。其誤差A(yù)d11 = C^1 — C11稱之為“自然失真”,
自然失真不可避免但卻可控。字符If片e的長度?越小,涂抹后自然失真Ad就越小,字符嵌入?yún)^(qū)間T所處在的位置越低(越靠近最低位),涂抹后對原值的影響就越??;所以,控制字符碎片e分割的細(xì)化程度和字符嵌入?yún)^(qū)間T的位置,能控制自然失真Ad的大小。
[0056]算得后,將圖元視作圖元11,計(jì)算CfJCT0 =入》-10。由于M11甚小,即 λ》-10?-10 ’
即使
但是不意味著它們的字符嵌入?yún)^(qū)間T不相等。針對具體的字符嵌入?yún)^(qū)間T的位置和字符碎片分割的細(xì)化程度,^id11在一個(gè)容許的范圍內(nèi)時(shí),Autf-1e的字符嵌入?yún)^(qū)間T是可信的,讀出即完成對本圖元對的字符碎片em-1的提取。
[0057]自提取遍歷到第三個(gè)圖元對開始后,參照提取遍歷到第二個(gè)圖元對的操作。假設(shè)當(dāng)下遍歷到第η個(gè)圖元和第η—I個(gè)圖元組成的圖元對,上一提取圖元對由第η+I圖元和第;?圖元組成,在上一提取操作中已經(jīng)計(jì)算出巧,對于當(dāng)下提取操作,僅需涂抹去的字符碎片嵌入?yún)^(qū)間了,即獲得當(dāng)下的反算復(fù)數(shù)比例<n+1yi_(n)。修改當(dāng)下圖元η,得修改后的圖元nd ,并令圖元nd和圖元(n 4 I)d滿足
再將圖元滬視作圖元η,計(jì)算入(n)rf-(n-l) -,
中讀取字符碎片^。
[0058]如前所述,提取遍歷到每一圖元對時(shí)都會受上一圖元對Ad的影響,隨著提取遍歷的進(jìn)行,每一圖元對產(chǎn)生的Ad都會向下傳導(dǎo),使Δ?不斷放大。當(dāng)Ad被放大到一定程度時(shí),至此以后將影響到;^1?5的字符嵌入?yún)^(qū)間了的可信度,將字符嵌入?yún)^(qū)間T第一次不可信時(shí)所處的遍歷定義為“失信遍歷(V)”,由第一次提取遍歷到失信遍歷之前(包括端點(diǎn))的所有遍歷數(shù)目稱之為“可信遍歷數(shù)目(NV)”。
[0059]本實(shí)施例矢量圖形泛指N個(gè)圖元,合計(jì)完成N-1次嵌入,嵌入至少G個(gè)完整的字符序列E (G是向下取整而得),為了保證?的字符嵌入?yún)^(qū)間T總是可信,字符序列£之長度L和可信遍歷數(shù)目(NV)之間必須滿足
L< (Ν¥),
每完成一次L個(gè)提取,下一個(gè)提取的即是完整字符序列E的最末尾字符碎片。由于%在一組嵌入中處于最末尾,提取到h時(shí)無需反算可直接提取,提取方式參見前述最后一個(gè)字符碎片提取。提取到字符碎片Gp1直至到字符碎片01;都必須采用反算提取,其提取方式參見前述。
[0060]本實(shí)施例矢量圖形泛指N個(gè)圖元,第G組的最末尾字符碎片I到整個(gè)嵌入步驟的最后一個(gè)字符碎片eM之間的圖元個(gè)數(shù)介于:1)丨個(gè)之間,難以確定從提取遍歷起點(diǎn)開始,要提取幾次才提取到第G組的最末尾字符碎片%,所以應(yīng)做L次完整的提取遍歷;每一次遍歷相比于上一次遍歷,從遍歷起點(diǎn)到假定的第G組最末尾字符碎片之間等差一次提??;以保證在L個(gè)完整的提取遍歷中,必有一個(gè)遍歷對第G組的最末尾字符碎片e£.的確定是正確的,把該遍歷稱之為“提取正遍歷”。理論上說,提取正遍能得到數(shù)目最多的正確字符碎片;Ad在一定范圍內(nèi),其它提取遍歷得到的正確字符碎片數(shù)不一定少于提取正遍歷所的到的正確字符碎片數(shù)。L次遍歷獲得的字符碎片的總數(shù)構(gòu)成樣本。
[0061]步驟2.4
分析樣本,將各個(gè)字符碎片和正確的字符序列比較,能在字符序列中匹配到,即是正確的字符碎片,予以保留;不能匹配到的不予保留。統(tǒng)計(jì)保留到的字符碎片頻次,若有字符碎片的頻次為零,說明遭受的干擾攻擊過重,提取失敗,若所有字符碎片的頻次都不為零,可以正確還原出版權(quán)字符。
[0062]步驟2.5
將各個(gè)字符碎片串好,通過解密處理,還原出版權(quán)字符“#xmhd”。
[0063]實(shí)施例二
一、嵌入
本實(shí)施例相比于實(shí)施例一,步驟1.1?步驟1.4相同;從步驟1.5開始,不同的是,實(shí)施例一是修改圖元對中次序在先的圖元,本實(shí)施例則是修改圖元對中,次序在后的圖元,并由此之不同,本實(shí)施例的提取步驟而有不同。本實(shí)施例嵌入遍歷時(shí),亦按照字符序列E逐個(gè)嵌入,嵌入完一組字符數(shù)列E后繼續(xù)嵌入遍歷點(diǎn)繼續(xù)嵌入新一組字符序列E ,同實(shí)施例一,本實(shí)施例嵌入完成后,整個(gè)矢量圖形中包含G個(gè)完整的字符序列E。
[0064]本實(shí)施擬用圖10的12個(gè)圖元以夸張之,示意圖元在嵌入前后之改變。本實(shí)施例修改的是圖元對中次序在后的圖元,相比于實(shí)施例一的圖9,本實(shí)施例少了 O ?ιν ,多了Owr ;
二、提取
因?yàn)楸緦?shí)施例選擇了修改圖元對中次序在后的圖元,與實(shí)施例一相比,本實(shí)施例完成嵌入后,直接計(jì)算圖元對的復(fù)數(shù)比例即可提取字符碎片,無需反算提取,提取遍歷之順序和嵌入遍歷順序相同(提取遍歷的起點(diǎn)即是嵌入遍歷的起點(diǎn)),并且不必要做L次遍歷。
[0065]獲得本實(shí)施的樣本后,一般僅需要統(tǒng)計(jì)各個(gè)字符碎片出現(xiàn)的頻次,用閾值過濾掉錯誤的字符碎片,保留正確的字符碎片并組串。若嵌入時(shí)做了了加密處理,解密后即還原出版權(quán)字符“#xmhd”,若未做加密處理即直接獲得版權(quán)字符“#xmhd” ;
實(shí)施例三
本實(shí)施例不在于例舉嵌入和提取,本實(shí)施例主要闡述本發(fā)明如何能夠抵抗幾何攻擊,對干擾攻擊為何具有魯棒性;
一、幾何攻擊的抵抗
幾何攻擊是指對整個(gè)矢量圖形做全局性的縮放、旋轉(zhuǎn)、平移或者上述組合操作,以修改圖元函數(shù)參數(shù)后而意圖破壞嵌入到函數(shù)參數(shù)中的字符碎片;由于全局性的縮放、旋轉(zhuǎn)、平移或者其組合操作后,圖元函數(shù)參數(shù)雖然改變,但是圖形整體不變,對閱讀不造成影響,故該方法是攻擊者之首選;
本發(fā)明構(gòu)建復(fù)數(shù)矢量算子,計(jì)算圖元對之復(fù)數(shù)比例,并將字符碎片嵌入到后復(fù)數(shù)比例中,只要各個(gè)圖元的表征矢量的模長和相位角不變,其后復(fù)數(shù)比例中的字符碎片不變??s放、旋轉(zhuǎn)、平移或者其組合之操作,皆屬于線性變換,變換前后同一圖元對的復(fù)數(shù)比例不變,即變換前后后復(fù)數(shù)比例不變,字符碎片不受變換之影響,能夠完全抵抗幾何攻擊;
前述實(shí)施例一和實(shí)施例二作為闡述本發(fā)明之例舉,都能完全抵抗幾何攻擊;
二、干擾攻擊的魯棒性
干擾攻擊是指對添加、刪除或修改圖元,及其組合操作;以破壞圖元的方式,將基于圖元的計(jì)算切斷,而造成提取混亂,干擾提取結(jié)果。實(shí)施干擾攻擊者,還會考量干擾對原圖之破環(huán)性,例如添加圖元,應(yīng)考慮到添加進(jìn)的圖元是否會影響閱讀,若影響閱讀導(dǎo)致圖形之價(jià)值難以體現(xiàn),其攻擊之意義亦蕩然無存。同樣,修改或刪除圖元亦應(yīng)考量攻擊結(jié)果是否會造成圖形之變換而偏離原有設(shè)計(jì)意圖,若造成原有設(shè)計(jì)意圖之丟失,不僅喪失攻擊之意義,更可能引進(jìn)設(shè)計(jì)變動所導(dǎo)致的惡果。由此可見,干擾攻擊強(qiáng)度過大即使造成字符碎片無法提取,也往往因?yàn)楣舯旧矶斐蓤D形價(jià)值無存,當(dāng)圖形價(jià)值無存甚至是引入用途風(fēng)險(xiǎn)后,對圖形的所有者而言,其版權(quán)保護(hù)亦失去意義。所以說,有意義的干擾攻擊才是本發(fā)明魯棒性的意義所在,而那些無意的干擾攻擊,本發(fā)明即使對其攻擊不具備魯棒性,亦不意味著版權(quán)之保護(hù)將受攻擊影響。
[0066]假設(shè)對實(shí)施例一實(shí)施添加攻擊。由于添加進(jìn)的圖兀晚于實(shí)施例一圖兀而生成,其句柄值排在實(shí)施例一圖元之后。實(shí)施例一在提取時(shí)做I次完整的提取遍歷,不論添加攻擊添加了多少個(gè)圖元,在L次完整的提取遍歷中,提取正遍歷必然存在,至于提取正遍歷是L次完整提取遍歷中的哪一個(gè),和添加的圖元數(shù)目有關(guān)。依據(jù)實(shí)施例一之樣本分析方法,必能正確還原出版權(quán)字符“#xmhd”,添加攻擊本完全抵擋。
[0067]假設(shè)對實(shí)施例一實(shí)施修改攻擊。由于具有至少G組完整的字符數(shù)列,每一完整的字符序列在提?。r(shí)不依賴前一字符序列6:的反算,而具有組間獨(dú)立性。修改攻擊僅僅會導(dǎo)致修改圖元所在點(diǎn)的那組中在后的圖元失去反算基礎(chǔ),制造錯誤的字符碎片,修改圖元所在組之外的圖元則不受影響。G組中只要有一組不受遭受修改攻擊,在L次遍歷中,必有一次提取正遍歷,依據(jù)實(shí)施例一之樣本分析方法,必能正確還原出版權(quán)字符“#xmhd”。若修改攻擊實(shí)施范圍廣,或者說G不夠大,將不能抵抗修改攻擊,故在一定條件下實(shí)施例一能抵抗修改攻擊,即對修改攻擊具有魯棒性。
[0068]假設(shè)對實(shí)施例一實(shí)施刪除攻擊。同刪除攻擊一樣,刪除攻擊僅僅會導(dǎo)致刪除圖元所在點(diǎn)的那組中在后的圖元失去反算基礎(chǔ),制造錯誤的字符碎片,刪除圖元所在組之外的圖元則不受影響。G組中只要有一組不受遭受刪除攻擊,在L次遍歷中,必有一次提取正遍歷,依據(jù)實(shí)施例一之樣本分析方法,必能正確還原出版權(quán)字符“#xmhd”。若刪除攻擊實(shí)施范圍廣,或者說G不夠大,將不能抵抗刪除攻擊,故在一定條件下實(shí)施例一能抵抗刪除攻擊,即對刪除攻擊具有魯棒性。
[0069]假設(shè)對實(shí)施例二實(shí)施添加攻擊。由于實(shí)施例二在提取過程中不需要經(jīng)過反算即可直接計(jì)算圖元對復(fù)數(shù)比例而獲得字符碎片,又由于添加攻擊的圖元按句柄將排列在后,添加U個(gè)圖元只制造出U-1個(gè)錯誤的字符碎片。依據(jù)實(shí)施例二之樣本分析方法,只要閾值大于U — I,添加攻擊制造出的錯誤子符碎片將被完成過濾,添加攻擊可以被完全抵抗,必能正確還原出版權(quán)字符“#xmhd”。當(dāng)添加攻擊過于劇烈時(shí),即添加進(jìn)的圖元數(shù)目甚至超出原矢量圖形的長度N,用實(shí)施例二的樣本分析方法將失效;此時(shí),改用實(shí)施例一樣本分析中的匹配方法,還能正確還原出版權(quán)字符“#xmhd”,添加攻擊被完全抵抗。
[0070]假設(shè)對實(shí)施例二實(shí)施修改攻擊。由于實(shí)施例二在提取過程中不需要經(jīng)過反算即可直接計(jì)算圖元對復(fù)數(shù)比例而獲得字符碎片,修改攻擊僅僅會造成修改點(diǎn)所在圖元對出現(xiàn)錯誤的字符碎片,至于修改點(diǎn)之外不受影響。由于修改攻擊是以減少正確字符碎片數(shù)目而造成錯誤字符碎片數(shù)目的增加,當(dāng)修改攻擊過于劇烈時(shí),正確的字符碎片的頻次可能達(dá)不到閾值的保留條件,導(dǎo)致還原版權(quán)字符“#xmhd”失敗。假設(shè)修改攻擊改變了實(shí)施例二每一組字符序列E的第一個(gè)圖元對,將導(dǎo)致失去提取運(yùn)算之基礎(chǔ);但是,G組中只要有一組不受遭受修改攻擊,依據(jù)實(shí)施例一之樣本分析方法,必能匹配出正確的字符碎片,成功還原版權(quán)字符“#xmhd”。實(shí)施例二只能在一定條件下抵抗修改攻擊,對修改攻擊具有魯棒性。
[0071]假設(shè)對實(shí)施例二實(shí)施刪除攻擊。刪除攻擊僅僅會造成刪除點(diǎn)所在圖元對出現(xiàn)錯誤的字符碎片,至于刪除點(diǎn)之外不受影響。由于刪除攻擊是以減少正確字符碎片數(shù)目而造成錯誤字符碎片數(shù)目的增加,當(dāng)刪除攻擊過于劇烈時(shí),正確的字符碎片的頻次可能達(dá)不到閾值的保留條件,導(dǎo)致還原版權(quán)字符“#xmhd”失敗。假設(shè)刪除攻擊改變了實(shí)施例二每一組字符序列E的第一個(gè)圖元對,將導(dǎo)致失去提取運(yùn)算之基礎(chǔ);但是,G組中只要有一組不受遭受刪除攻擊,依據(jù)實(shí)施例一之樣本分析方法,必能匹配出正確的字符碎片,成功還原版權(quán)字符“#xmhd”。實(shí)施例二只能在一定條件下抵抗刪除攻擊,對刪除攻擊具有魯棒性。
[0072]假設(shè)對實(shí)施添加、修改、刪除的組合攻擊,如前所述,實(shí)施例一和實(shí)施例二對單獨(dú)的干擾攻擊都具有魯棒性,對組合攻擊而言,只要G組中有一組不遭受攻擊,樣本分析時(shí)必能匹配出完整的字符序列,對組合攻擊固有魯棒性。
[0073]通過上述實(shí)施例之闡述,本發(fā)明已經(jīng)清楚,公開充分翔實(shí),本領(lǐng)域普通技術(shù)人員實(shí)施本發(fā)明即得到本發(fā)明之又有效果。任何本領(lǐng)域的普通技術(shù)人員,對本發(fā)明作出的顯而易見的修改都應(yīng)當(dāng)視作不脫離本發(fā)明之范疇,本發(fā)明的保護(hù)范圍以權(quán)利要求書為準(zhǔn)。
【權(quán)利要求】
1.矢量圖形版權(quán)字符的嵌入和提取方法,其特征在于包括以嵌入步驟和提取步驟,嵌入步驟包括: 步驟1.1,構(gòu)造版權(quán)字符序列,將表示版權(quán)信息的字符對象分割為連續(xù)的片段,稱為“字符碎片”,字符碎片的個(gè)數(shù)即是字符序列的長度,欲嵌入矢量圖形內(nèi)包含的圖元個(gè)數(shù)即是該矢量圖形的長度,字符碎片的長度短于矢量圖形的長度; 步驟1.2,為矢量圖形包含的圖元構(gòu)建復(fù)數(shù)矢量算子; 步驟1.3,按照圖元的生成次序(句柄值)比較相鄰次序圖元對的復(fù)數(shù)矢量算子,獲得圖元對復(fù)數(shù)比例,本步驟比較結(jié)果稱為“前復(fù)數(shù)比例”; 步驟1.4,用字符碎片替換步驟1.3的前復(fù)數(shù)比例中的一部分,獲得嵌入字符碎片的新復(fù)數(shù)比例,稱為“中復(fù)數(shù)比例”; 步驟1.5,根據(jù)步驟1.4獲得的中復(fù)數(shù)比例修改圖元對,修改后該圖元對的復(fù)數(shù)比例稱為“后復(fù)數(shù)比例”,修改結(jié)果應(yīng)使后復(fù)數(shù)比例等于中復(fù)數(shù)比例; 步驟1.6,依照圖元的生成次序(句柄值)遍歷步驟1.1至步驟1.5,將字符碎片逐個(gè)嵌入到遍歷到的圖元對中; 提取步驟包括以下步驟: 步驟2.1,為矢量圖形包含的圖元構(gòu)建復(fù)數(shù)矢量算子; 步驟2.2,按照圖元的生成次序(句柄值)比較相鄰次序圖元的復(fù)數(shù)矢量算子,獲得圖元對復(fù)數(shù)比例,稱作“提取復(fù)數(shù)比例”,從提取復(fù)數(shù)比例中讀取字符碎片,; 步驟2.3,依照圖元對生成次序(句柄值)遍歷步驟2.1至步驟2.2,獲得字符碎片組成的樣本; 步驟2.4,分析樣本,確定正確的字符碎片和錯誤字符碎片; 步驟2.5,將正確的字符碎片還原成字符。
2.權(quán)利要求1的方法,其特征在于嵌入步驟中版權(quán)字符或字符碎片在嵌入之前做加密處理。
3.權(quán)利要求1的方法,其特征在于嵌入步驟中版權(quán)字符替換前復(fù)數(shù)比例中的特定部位。
4.權(quán)利要求1的方法,其特征在于嵌入步驟中修改圖元對時(shí),只修改圖元對中次序在先的圖元。
5.權(quán)利要求1的方法,其特征在于嵌入步驟中修改圖元對時(shí),只修改圖元對中次序在后的圖兀。
6.權(quán)利要求1至5任一項(xiàng)的方法,其特征在于嵌入步驟中矢量圖形的長度和字符序列的長度之比大于等于2。
7.權(quán)利要求6的方法,其特征在于嵌入步驟中前復(fù)數(shù)比例和中復(fù)數(shù)比例以及后復(fù)數(shù)比例存儲為雙精度浮點(diǎn)數(shù)。
8.權(quán)利要求1的方法,其特征在于提取步驟中提取的遍歷方向和嵌入的遍歷方向相反。
9.權(quán)利要求1或8的方法,其特征在于提取步驟中分析樣本中各個(gè)字符碎片出現(xiàn)的頻次,用閾值過濾錯誤字符碎片,保留正確字符碎片。
10.權(quán)利要求1或8的方法,其特征在于提取步驟中將樣本與正確的字符碎片進(jìn)行比 較,將比較結(jié)果一致的字符碎片作為正確字符碎片。
【文檔編號】G06T1/00GK104166956SQ201410258892
【公開日】2014年11月26日 申請日期:2014年6月12日 優(yōu)先權(quán)日:2014年6月12日
【發(fā)明者】杜偉軍 申請人:廈門合道工程設(shè)計(jì)集團(tuán)有限公司