CN1291041A - 代码生成方法、检测方法及其设备、水印嵌入器和检测器 - Google Patents

代码生成方法、检测方法及其设备、水印嵌入器和检测器 Download PDF

Info

Publication number
CN1291041A
CN1291041A CN00129087A CN00129087A CN1291041A CN 1291041 A CN1291041 A CN 1291041A CN 00129087 A CN00129087 A CN 00129087A CN 00129087 A CN00129087 A CN 00129087A CN 1291041 A CN1291041 A CN 1291041A
Authority
CN
China
Prior art keywords
user
code
conspirator
identification number
remainder
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN00129087A
Other languages
English (en)
Other versions
CN1160940C (zh
Inventor
村谷博文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Publication of CN1291041A publication Critical patent/CN1291041A/zh
Application granted granted Critical
Publication of CN1160940C publication Critical patent/CN1160940C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/28Arrangements for simultaneous broadcast of plural pieces of information
    • H04H20/30Arrangements for simultaneous broadcast of plural pieces of information by a single channel
    • H04H20/31Arrangements for simultaneous broadcast of plural pieces of information by a single channel using in-band signals, e.g. subsonic or cue signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8358Generation of protective data, e.g. certificates involving watermark
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0063Image watermarking in relation to collusion attacks, e.g. collusion attack resistant
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/018Audio watermarking, i.e. embedding inaudible data in the audio signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H2201/00Aspects of broadcast communication
    • H04H2201/50Aspects of broadcast communication characterised by the use of watermarks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3225Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document
    • H04N2201/3226Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document of identification information or the like, e.g. ID code, index, title, part of an image, reduced-size image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3225Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document
    • H04N2201/3233Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document of authentication information, e.g. digital signature, watermark
    • H04N2201/3236Details of authentication information generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3225Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document
    • H04N2201/3233Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document of authentication information, e.g. digital signature, watermark
    • H04N2201/324Selecting a particular authentication information from amongst a plurality of different authentication information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3269Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of machine readable codes or marks, e.g. bar codes or glyphs
    • H04N2201/327Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of machine readable codes or marks, e.g. bar codes or glyphs which are undetectable to the naked eye, e.g. embedded codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Television Systems (AREA)
  • Storage Device Security (AREA)

Abstract

采用多个整数作为模数,余数计算部分分别得到相对于使用者ID的余数。所述多个整数被存储在模数存储部分中,并且互为素数。根据这些余数和编码参数部分中存储的参数,分量代码生成部分分别生成利用预定的二进制位为一个单元,由1和0的连续序列构成的分量代码。这些分量代码由连接部分连接在一起,从而获得构成水印信息的要嵌入代码。

Description

代码生成方法、检测方法及其设备、水印嵌入器和检测器
本申请以在先日本专利申请No.11-280652,申请日1999年9月30日,No.2000-016285,申请日2000年1月25日,和No.2000-263872,申请日2000年8月31日为基础,并要求优先权,上述专利申请的整个内容作为参考包括于此。
本发明涉及把水印信息嵌入诸如音频内容,音乐,电影,照片之类的内容中,以及被数字化为数据的类似物中的电子水印设备,和从具有嵌入的水印信息的内容中检测水印消息的电子水印检测器。
数字水印标记是一种把关于内容的版权持有者或使用者的识别信息,版权持有者的权利信息,内容的使用条件,当使用内容时要求的保密信息,复制控制信息之类信息(这些被称为水印信息)嵌入诸如音频内容,音乐,电影,照片之类的内容中,以及被数字化为数据的类似物中,以致该信息不易于被发现的技术。随后,如果必要的话,通过检测内容中的水印信息,可限制内容的使用,或者可实现包括复制控制在内的版权保护。这样,借助这种技术,促进了二次使用。
[数字水印标记的要求]
为了防止非法使用,数字水印技术必须提供水印信息不会被各种操作或有意攻击消除或改变的特征(坚固性),这种有意攻击通常被认为是作用在取得数字版权的材料上。例如,照片和电影经常受到分别称为称为JPEG(联合摄影编码专家组)编码和MPEG(运动图象专家组)编码的不可逆压缩。于是,要求数据水印技术对于这些类型的不可逆压缩具有坚固性是很重要的。
[数字水印的分类]
用于图象的常规数字水印标记方法可粗略地划分为象素域利用类型和频域利用类型。在象素域利用类型的数字水印标记方法中,通过改变象素值,水印信息被直接嵌入。同时,在频域利用类型的数字水印标记方法中,利用正交变换,把象素域转移到到频域,随后被嵌入频域。之后,借助反向正交变换,频域被转移到象素域。水印信息以波的形式被嵌入。
[频域利用类型的数字水印标记方法]
在,例如参考文献[1],Cox,I.J.,Kilian,J.,Leighton,T.和Shamoon,T.的“多媒体的保密扩展频谱水印标记”,NEC ResearchInstitute,Technical Report 95-10,1995(下面称为Cox等的方法)中,描述了频域利用类型的数字水印标记方法。在该方法中,作为被嵌入目标的频率分量被设定在低频到中频的范围内,在该频率范围内,不可逆压缩的影响较小。用这种方式,实现了相对于不可逆压缩的坚固性。
[基于扩展频谱的数字水印标记]
存在一种通过采用扩展频谱的原理,提高对于不可逆压缩的坚固性的方法。扩展频谱意指在比要借助通信传输的信号所必需的频带更宽的频带内广泛扩展地传送信息的通信方法(参考文献[2]:YamauchiYukimichi,“扩频通信”,Tokyo-Denki-Daigaku Shuppankyoku,1994)。在对传送通路上的噪声的耐受性方面,该方法极好。通过把原始内容看作是载波,把水印信息看作是所需的波,并把来自不可逆压缩的影响看作是干扰波(噪声),把扩频原理应用于数字水印标记技术。频域内的扩展(参见参考文献[1])已被建议为以扩频为基础的数字水印标记方法。
[频域中的扩展(微扰法)]
在上面所述的根据参考文献[1]的方法中,通过对象素值进行正交变换,嵌入水印信息,水印信息扩展,并被嵌入频域中。通过按照随机数序列,改变频域中的多个频率分量实现扩展。在扩展之后,进行反相正交变换。为了检测水印信息,对象素域进行正交变换,并测定嵌入水印信息处的频率分量的值和用于嵌入水印信息的随机数据序列之间的相关值。嵌入的水印信息在象素域内的整个图象(块)内扩展,以致就各种操作而论,水印信息是坚固的。如果嵌入水印信息处的频率分量在低/中频域内,则难以利用低频滤波器消除水印信息。
[指纹标记]
在数字水印标记方法中,已考虑把使用者ID(使用者标识符)作为水印信息嵌入内容中,以便嵌入指定内容的使用者的信息的应用。该应用被称为“指纹标记”,预期可限制非法复制器,例如盗印版的再散布。
[共谋攻击的问题]
但是,当存在分别具有不同地嵌入水印信息项的多个相同内容时,可存在利用所述多个内容改变或消除水印信息项的行为。该行为被称为“共谋攻击”。例如,在共谋攻击中,在所述多个内容之间,均分象素值,以伪造新的内容,或者通过随意地或按照多数/少数决定原则改变象素值,改变所述多个内容之间象素值或频率分量值不同的部分。
[防范共谋攻击的常规对抗措施]
作为处理共谋攻击的常规方法,已提出了基于扩展频谱的方法(上述参考文献[1]和参考文献[3]:Tetsuya Yamamoto,Sou Watanabe和Tadao Kasa,“能够确定所有共谋攻击使用者的数字水印标记方法”,SCIS’98,10.2.B,1998),和代码-逻辑方法(参考文献[4]:Boneh,Dan和Shaw,James,“数字数据的共谋-保密指纹标记”,CRYPTO’95,452-465,1955,参考文献[5]:Masahiro Suzuoki,SouWatanabe,Tadao Kasa,“防范共谋攻击的数字水印标记方法”,SCIS’97,31B,1997,和参考文献[6]:Jun Yosida,Keiichi Iwamura和Hideki Imai,“图象质量损坏较小,并且防范共谋攻击的数字水印标记方法”,SCIS’98,10.2.A,1998)。
根据参考文献[1],对每个使用者赋予一个按照N(0,1)的不同的实际随机数序列。假定在两个不同的实际随机数序列之间不存在相关性。以均分象素值的操作的形式采取共谋攻击。由于共谋攻击的缘故,检测时的相关值降低。
在参考文献[1]中,借助规定的用于代替相关值的相似性检测共谋者。相似性被定义为用检测的水印信息的范数(norm)除相关值得到的结果。由于因共谋攻击而导致水印信息的范数降低,即使相关值降低,相似性不会过多降低。这样,可检测所有的共谋者。但是,该方法的问题在于它需要原始图象作为嵌入对象,并且确定共谋者需要较长的时间。
参考文献[3]提出了一种确定共谋者的方法,该方法对比地利用当发生共谋攻击时,由于取平均值引起的相关值的衰减特征。由于当其它水印减弱时,共谋者共有的水印不减弱,可根据经过共谋攻击后,保留在嵌入时水平的一组水印,确定一组共谋者。这里n是所有使用者的数目,c是假定的最大共谋者数目,可依据具有(c+1)(c-1)logc+1n数量级的长度的嵌入代码确定共谋者。但是,该方法利用了扩频方法所特有的特征,于是不能应用于所有数字水印标记方法。
上面提及的参考文献[4]提出一种利用了这样的特征的方法,该特征是共谋者不能在表示水印信息的代码中观察到具有所有共谋者共有的值的位。如果这种无法观察到的位保持不变,则产生作为嵌入代码字的代码(称为c-结构证明(frameproof)代码),并作为水印信息被嵌入内容中,不管其它位如何变化,该代码不能产生除共谋者之外的其它用户的代码字。
就这种方法而论,有可能以嵌入代码字的形式产生不属于任何人的代码字。但是,如果使用者重新散布使用者自己的内容(天赋(native)重新散布),他不能够否定该重新散布是以来自另一人的共谋攻击为基础的。
对共谋者的总数不作任何限制的n-结构证明(frameproof)代码的代码长度为n。其中共谋者的总数至多为c的c-结构证明代码的代码长度为16c2logn(这里c是共谋者的数目,n是所有使用者的数目)。
此外,参考文献[4]还表示如果存在两组共谋者,并且这两组共谋者的共有部分为空集,可借助每组中的共谋攻击产生的代码字组(可行的组)所共有的共有部分也是空集,则不存在任何代码(完全地c-保密代码)。即,该参考文献表示绝对不存在在共谋攻击情况下,不能产生不属于任一共谋者的代码字的任何代码。
因此,在参考文献[4]中,具有ε或更小概率的代码(具有ε误差的c-保密代码)被构造为嵌入代码,在共谋者数目为c或更小的情况下,错误地指出不正确的共谋者(无辜有使用者)的概率为ε或更小。首先,构造具有ε误差的n-保密代码Г(n,2n2log(2n/ε))。其代码长度为2n2(n-1)log(2n/ε)。
此外,通过把上述代码与叛逆者跟踪方案(Traitor TracingScheme)(参考文献[7]:Chor,B.,Fiat,A.和Naor,M.,“跟踪叛逆者”,Proceedings of CRYPTO’94,257-270,1994)相结合,构造具有ε误差的c-保密代码。该代码的代码长度为O(c4log(n/ε)log(1/ε))。
[Chernoff界限(bound)]
在参考文献[7]中,由叛逆者跟踪方案确定使用者所特有的密钥的数目,它是利用Chernoff界限确定共谋者所必需的。在前面描述的参考文献[4]中,该方法被恰当地用于构造具有ε误差的n-保密代码和c-保密代码。当存在独立的n个概率变量Xi∈{0,1},其平均值为p时,Chernoff界限给出关于变量之和偏离该平均值的概率的范围。依据下述公式分别得到上边界和下边界。
此外,存在下述公式,作为宽松的界限。 pr &lsqb; | &Sigma; i = 1 n x i - np | > n&delta; &rsqb; < 2 &CenterDot; exp { - &delta; 2 n / ( 2 p ( l - p ) ) }
在0≤δ<p(1-p)的情况下,则得到下面的公式: Pr &lsqb; &Sigma; i = l n X i - np < - n&delta; &rsqb; < exp { - &delta; 2 n / ( 2 p 2 ) }
[只指出共谋者之二的方法]
设计参考文献[4]中提出的具有ε误差的n-保密代码和c-保密代码,以便尽可能多地指出共谋者。把使用者看作是排序的集合,Г0(n,d)代码可用作指定共谋者组中的最上和的最下的两个共谋者的代码。这种情况下,可构造代码长度小得多的Г0(n,d)代码。
Г0(n,d)代码是以d个二进制位作为一个单元,由1和0的连续序列构造的代码。布置1和0的d个二进制位序列,以便单元的数目等于代码字数目n减1。因此,在该代码中,1和0被连续地布置,并以d个二进制位为一个单元。不会单独存在少于d个二进制位的1或0的序列。
例如,令d=3和n=5,Г0(5,3)代码变成如下所示:
111 111 111 111
000 111 111 111
000 000 111 111
000 000 000 111
000 000 000 000
参考文献[5]提出一种n-保密代码,其中按升顺和降顺成层的两个代码被用于指定一组共谋者中的两个共谋者。该代码的代码长度为2nlog4(2/ε)=n log2(2/ε)。参考文献[6]表示了如下所述的一种类似方法。即,由Г0(n,d)代码获得满足0<加权(x|Bs)的最小S(Smin)和满足加权(x|Bs)<d的最大S(Smax)。由指出Smin和Smax+1是共谋者的算法指定共谋者之二。在这种代码的情况下,具有ε误差的n-保密代码的代码长度为(n-1)log2(2/ε)。
[具有ε误差的2-保密代码]
如果共谋者的总数较小,则嵌入代码的代码长度可以较小。上面描述的参考文献[6]表示了在总的共谋者为2的情况下,指出这两个共谋者的代码,该代码的代码长度为(3n1/2-1)log2(6/ε)。
[防共谋性的限制]
参考文献[9](Ergun,Funde,Joe Kilian和Ravi Kumar,“关于防共谋性水印标记的限制的笔记”,EUROCRYPT’99,140-149,1999)在不依赖于数字水印标记方法的细节的情况下,从理论上证明了抗共谋攻击性的限制。他们的结论认为提高指出正确共谋者的概率的努力会导致错误地指出被误认为共谋者的无辜使用者的概率(假的正比率)的增大。
参考文献[9]中假定的共谋攻击是若干内容(例如内容1,2和3)如图1中所示那样被均化,之后加入随机干扰,在所述若干内容中,分别嵌入不同的水印信息项。根据Ergun等的观点,现在重新考虑先前在参考文献[4]中进行的讨论。在参考文献[4]中的讨论中,Г0(n,d)代码被用作随机的c-保密代码的一个元素。通过直接使编码乘以n倍获得该Г0(n,d)代码,该编码采用如图2(d=3)中所示的在(1,1,1)和(-1,-1,-1)处的代码字。
如果把参考文献[9]中假定的共谋攻击作用于该Г0(n,d)代码,所获得的均化内容的质心存在于连接(1,1,1)和(-1,-1,-1)的连线上。这种情况下,如果共谋攻击后的内容在(1,1,1)或(-1,-1,-1)的附近,则确定该内容未被共谋攻击改变。否则,如果共谋攻击后的内容在原点附近,则确定该内容已被共谋攻击改变。
在该Г0(n,d)代码处,如果共谋者中具有代码(1,1,1)的人数和具有代码(-1,-1,-1)的人数之间存在较大的偏差,则由于均化的结果,质心位于非常接近(1,1,1,)或(-1,-1,-1)的地方。由于之后加入随机干扰,指定共谋者的算法可能错误地确定或者该内容已从(1,1,1)或(-1,-1,-1)偏移该干扰值,或者在可忽略的概率内已从质心偏移干扰值。即,由于Ergun等认为他们的结论适用于几乎所有的数字水印算法,Boneh等的编码不能避免Ergun等的限制。
同时,就Г0(n,d)代码而论,两个代码字之间的最大距离为nd,并且两个代码字之间的最小距离为d(参见图3)。这是由于因为Г0(n,d)代码被设计成具有对于防共谋攻击性的重要性,代码字被稀疏地提供在接收信号的空间中的缘故。
数字水印标记算法必须嵌入具有代码字之间的最大距离的代码字,以便不会影响内容的质量。如果数字水印标记算法在内容空间中嵌入Г0(n,d)代码的代码字,并且该嵌入具有代码字之间的距离近似正比于嵌入代码字的内容之间的距离的特性,则原始内容和嵌入水印消息之后的内容之间的最大距离为nd/2或更大。于是,如果nd较大,对内容的质量的影响也较大(图4中的嵌入1)。
如果借助不保持被嵌入内容和内容空间中原始内容之间的关系的嵌入,数字水印标记算法把所有代码字设置在距离原始内容的距离基本相同的位置处,则Г0(n,d)代码最初具有的,用于抵抗共谋攻击的基础被丢失(图4中的嵌入2)。
即,考虑到Ergun等的限制,希望借助适当地实现良好地防范共谋攻击和较少地影响内容质量的编码,实现数字水印标记方法。
(借助扩展频谱,水印对共谋攻击的防范性)
同时,在基于扩展频谱的数字水印标记方法中,设定嵌入强度,以便嵌入不会对内容质量产生较大的影响。基于此,用于嵌入的伪随机数序列对应于代码字。
样本值空间和频率空间之间的正变变换是线性映射。于是,Ergun等的共谋攻击均化伪随机数序列,并且此外还给出干扰,而不管被攻击的数字水印标记方法是基于空间域,还是基于频域。
在基于扩展频谱的数字水印标记方法中,通常选择作为代码字的伪随机数序列,以便交互相关性基本为零。于是,对于通过求k个内容的平均值而得到的内容来说,认为对应于共谋者的相关性降低为1/k。如果伪随机数序列之间的交互相关性足够小,并且如果k不是很大的话,在数字水印的检测中,相关值可超过预定的门限值,从而可检测共谋者。
按照参考文献[1]的方法以在检测中使用原始内容的先决条件为基础,并且通过利用代替相关值的称为相似性的数值,进行检测。通过使从检测对象内容中减去原始内容得到的差值和用于嵌入的伪随机数序列之间的交互相关值,除以该差值的自相关值的平方根,获得该相似性。
在利用相似性的检测中,借助共谋攻击中的求平均值,分子的相关值降低到1/k,而分母的差值的范数也降低到1/k。于是,预计相似性不会减弱。但是,如果加入除平均化之外的其它噪声,则源于噪声的影响被归一化进一步放大。
在参考文献[10](Kilian,Joe,F.Thomas Leighton,Lesley R.Matheson,Talal G.Shamoon,Robert E.Tarjan和Francis Zane,“数字水印的防共谋攻击性”,技术报告TR-585-98,普林斯顿大学,计算机科学系,1998)中,借助统计讨论,对根据参考文献[1]的数字水印标记方法可证明对多少共谋者的共谋攻击的防范性的主题进行了理论研究。伪随机数序列被假定为高斯噪声,并且假定通过根据共谋者拥有的内容,统计估计原始内容,实现共谋攻击。从而得出借助实际参数设定,可实现防范几个到十几个共谋者的共谋攻击的结论。
根据数字水印的应用类型,存在不能实现利用原始内容的检测,并且只能根据作为检测对象的内容进行检测的情况。这种情况下,不能进行基于相似性的检测。这样,容许的共谋者数目就很小。
参考文献[1]和[10]中的所有讨论都以作为代码字的伪随机数序列之间的交互相关性足够小的先决条件为基础。但是,随着伪随机数序列的数目的增大,即使伪随机数序列是任意选择的,偶然出现具有较大的交互相关值的一对伪随机数序列的概率通常也增大。
但是,在多少伪随机数序列可降低任意一对伪随机数序列之间的交互相关值,如何选择具有这种特性的伪随机数序列,以及通过把选择的伪随机数序列用作代码字,应实现哪种数字水印标记方法,以实现防范共谋攻击的方法方面仍然存在未解决的问题。
在了解了先前在关于防共谋攻击性的文章中描述的,按照参考文献[9]的限制之后,该问题被认为是如何能够实现基于编码的数字水印标记方法方面的问题之一,该编码恰当地实现良好地防范共谋攻击,以及较少地影响内容质量。
利用M-序列的方法被认为是用于产生交互相关性较小的二进制伪随机位序列的方法。以线性反馈移位寄存器(LFSR)的输出的形式产生M-序列,只要LFSR具有对应于GF(2)的扩展域的一次多项式的系数的分支(tap)。如果用+1和-1分别代替M-序列中的1和0,得到PN-序列。在M-序列中,0的出现频率基本上和1的出现频率相同(虽然在一段时期内,1的出现次数比0的出现次数少1),并且互相关函数在0处具有为1的值,否则具有为-1/L的值。L=2n-1,这里L是该序列的周期,n是寄存器的级数。
如果通过对从M-序列得到的PN序列进行循环移位获得的序列被用作代码字,则得到具有较小交互相关性的代码字。当嵌入数字水印时,这些代码字可用作伪随机数序列。该随机数序列可用于基于空间域和频域两者中的扩展频谱的数字水印。
在以频域的扩展频谱为基础的数字水印标记方法中,按照N(0,1)的高斯噪声被用作代码字。为了构造多个具有较小交互相关性的代码字,采用了下述方法。即,一个接一个地生成随机数序列,并检查和先前生成的所有随机序列的相关性较小的每个随机数序列。如果任意随机数序列都具有较大的交互相关值,则该随机数序列不被采用为代码字。
但是,在该方法中,不能确保新生成的伪随机数序列和以前产生的随机数序列的交互相关性较小。于是,在某些情况下,新生成的随机数序列可能被舍弃,从而这种处理是不经济的。特别地,如果随机数序列的数目增大到一定程度,这种概率也将增大。
如上所述,就常规的数字水印标记技术来说,存在即使当通过共谋攻击,消除或伪造水印信息,进行非法再散布时,也不能确定非法使用者的风险。
同样,就实现防范共谋攻击的常规提议来说,必须借助非常冗长的方式嵌入水印消息。于是,其缺陷是不能假定很大的使用者或共谋者总数。即使可假定较大的使用者或共谋者总数,由于嵌入代码长度较长的代码字作为水印信息,会导致内容质量的降低。
此外,必须在正确估计当确定或指定共谋者时的检测误差之后,构造水印消息(或嵌入的代码字)。但是,在这方面,常规的数字水印标记技术没有充分考虑它们的有效性。特别地,常规技术不能提供足够实用的防范三个或更多共谋者参与窜改的情况的防范措施。另外,对于预期的检测误差来说,作为水印信息的嵌入代码字的代码长度可能不必要地过大了。
本发明的一个目的是提供能够防范共谋攻击,并且能够嵌入水印信息,同时即使使用者或共谋者的总数较大,也可尽可能地限制内容质量的降低的水印嵌入器和水印检测器。
本发明的另一目的是提供一种水印嵌入器和一种水印检测器,该水印嵌入器能够防范共谋攻击,并且即使三个或更多的共谋者参与窜改,也能够基于误差率的正确估计,生成足够并且恰当的要嵌入代码字,该水印检测器能够正确地检测和译解嵌入代码字。
为了实现上述目的,根据本发明的第一代码生成器包括:采用互为素数的多个整数作为模数,相对于使用该内容的使用者的使用者标识号,计算多个余数的余数计算装置;生成分别表示由余数计算装置得到的余数的分量代码的多个代码字的分量代码生成装置,分量代码字的每个代码字为表示由余数计算装置得到的代码的代码字,并通过利用预定数目的二进制位作为一个单元,由1和0的连续序列构成;以及连接由分量代码生成装置产生的分量代码的代码字,从而产生要嵌入的代码字的连接装置。
对应于第一代码嵌入装置,根据本发明的第一代码检测装置包括:把连接分量代码的多个代码字的嵌入代码字分离成分量代码的代码字的代码分离装置,通过利用预定数目的二进制位为一个单元,由1和0的连续序列构成所述分量代码;通过采用多个预定的并且互为素数的整数作为模数,译解分离的分量代码的每个代码字,从而得到多个余数对,每个余数对包括两个余数的分量代码译解装置;以及根据所述多对余数对,计算对内容进行共谋攻击的共谋者的使用者标识号的共谋者编号计算装置。
另外,该设备还包括用于根据所述多对余数,确定是否存在共谋攻击的共谋确定装置,其中如果共谋者确定装置确定存在共谋攻击,则共谋者标识号计算装置计算共谋者的使用者标识号。
共谋者编号计算装置包括:从输入的k’个余数对的每一对中选择一个余数,从而生成一组k’个余数(R1,R2,…,Rk,)的余数选择部分;根据从由余数选择部分生成的该组k’个余数中选出的k个余数(S1,S2,…,Sk),计算共谋者的使用者标识号u的候选者的中国余数定理部分;以及一致性检验部分,它用于从由余数选择部分产生的该组k’个余数中选出k个余数,把该k个余数提供给中国余数定理部分,根据中国余数定理部分计算得到的共谋者的使用者标识号u的候选者,确定共谋者的使用者标识号,并输出共谋者的使用者标识号,其中一致性检验部分具有从由余数选择部分生成的k’个余数中选择k个余数的选择处理功能,确定在由中国余数定理部分计算得到的共谋者的使用者标识号u的候选者和剩余的(k’-k)个余数内的预定数目(l)个余数之间,是否存在Ri=u mod pi(i=i1,i2,…,il)的关系的确定处理功能,以及如果由于确定处理的结果,确定存在该关系,则把该候选者作为共谋者的使用者标识号输出的输出处理功能,如果不存在该关系,则从余数选择部分生成的该组k’个余数中选择k个余数(S1,S2,…,Sk)的新组合,从而执行确定处理功能,并且如果对于k个余数(S1,S2,…,Sk)的所有组合都不存在该关系,则向余数选择部分请求一组新的k’个余数,并且重复选择处理和确定处理,直到存在该关系时为止。
根据本发明的第二代码生成器包括:计算和输入的使用者标识号一致的一组多个整数元素的计算装置;生成分别和整数因数一致的分量代码的代码字,以便在能够表示由计算装置相对于预定数目的使用者标识号计算得到的所有各组整数元素的k’个分量代码内,k’个分量代码的k个组合能够唯一地表示使用者标识号的分量代码生成装置;以及连接分量代码生成装置产生的分量代码的代码字,从而产生要嵌入的代码字的连接装置,其中k’被确定为c(k+l)/q或更大,这里c是为3或更大的整数,l是为1或更大的正整数,q是当检测嵌入的代码字时,可从每个代码字中检测出的整数元素的数目。更具体地说,这里pi(i=1,2,…,k’)是相对于预定数目的使用者标识号,由计算装置计算的每个整数元素所能采用的值的数目,ε是当检测要被嵌入的代码字时,假定的检测误差率,确定k’以便满足下述条件:
Figure 0012908700211
计算装置计算一组整数元素,该组整数元素是利用素数pi(i=1,2,…,k’)作为模数,对应于输入的使用者标识号的一组余数,或者对应于输入的使用者标识号,计算属于由平行变换确定的等价类别的一组多个元素作为该组整数元素,这里pi(i=1,2,…,k’)是一个相同的正整数p。在后一情况下,下述条件被进一步满足: k &prime; = c 2 ( k + l ) &le; p k - 1 p - 1
对应于第二代码生成器的,根据本发明的第二代码检测器包括:用于从嵌入嵌入代码字的目标内容中抽取嵌入代码的代码抽取装置,嵌入代码字连接对应于输入的使用者标识号分别生成的分量代码的代码字,并且是这样的,以致在能够表示相对于预定数目的使用者标识号计算得到的所有各组整数元素的k’个分量代码内,k’个分量代码的k个组合能够唯一地表示使用者标识号;分离抽取的分量代码的代码分离装置;译解分离后的每个分量代码的分量代码译解装置;以及根据每个分量代码的译解结果,计算共谋者的使用者标识号的共谋者编号计算装置,其中k’被确定为c(k+l)/q或更大,这里c是为3或更大的整数,l是正整数,q是当检测嵌入的代码时,可从每个分量代码中检测出的整数元素的数目。
该组整数元素是利用互为素数的许多整数作为模数,对应于使用者标识号计算得到的一组余数,或者是对应于使用者标识号计算得到的,并且属于由平行变换确定的等价类别的一组多个元素。在后一情况下,除了条件(1)之外,条件(2)也被满足,这里pi(i=1,2,…,k’)是一个相同的正整数p。
根据本发明的第三代码检测器包括:用于从嵌入嵌入代码字的目标内容中抽取嵌入代码字的代码抽取装置,嵌入代码字连接对应于输入的使用者标识号分别生成的分量代码的代码字,并且是这样的,以致在能够表示相对于预定数目的使用者标识号计算得到的所有各组整数元素的k’个分量代码内,k’个分量代码的k个组合能够唯一地表示使用者标识号;把抽取的代码字分离为分量代码的代码字的代码分离装置;译解分离后的每个分量代码的分量代码译解装置;以及根据每个分量代码的译解结果,计算共谋者的使用者标识号的共谋者编号计算装置,其中分量代码译解装置包括把每个分量代码分离成块的块分离部分,计数每个块中,为“1”的二进制位的数目的计数部分,确定计数部分得到的计数值是否超过第一门限值的第一确定部分,确定计数值是否小于第二门限值的第二确定部分,选择由第一确定部分确定为超过第一门限值的最小块的最小位置选择部分,以及选择被确定为小于第二门限值的最大块的最大位置选择部分,从而输出最小和最大位置选择部分的选择结果,作为译解结果。
此外,根据本发明,提供了把由第一或第二代码生成器产生的代码字作为水印信息嵌入嵌入目标内容中的水印嵌入器。
根据本发明的另一种水印嵌入器是把含有使用者标识号的信息的水印信息嵌入作为嵌入目标的内容中的水印嵌入器,并且包括:对应于输入的使用者标识号,输出从构成单一代码的多个代码字中选择的一个代码字的装置;把输出的代码字作为水印信息嵌入作为嵌入目标的内容中的装置。
根据本发明的另一种水印检测品是用于从输入的内容中检测包含使用者标识号的信息的水印信息的水印检测器,并且包括:对应于输入的使用者标识号,输出从构成单一代码的多个代码字中选择的一个代码字的装置;获得输出的代码字和内容之间的相关值的装置;以及根据相关值,确定是否存在对应于内容中的输入的使用者标识号的代码字的装置。
就如上所述的根据本发明的代码生成器,代码检测器,水印嵌入器和水印检测器来说,即使使用者和共谋者的总数较大,也能在不过多增大作为水印信息的嵌入代码的代码长度的情况下,获得对共谋攻击的防范性。
另外,通过满足条件k′≥c(k+l)/q和条件(1)及(2),可实现当检测要嵌入的代码时,基于误差率的正确估计,能够产生足够的并且恰当的要嵌入代码的代码生成器,以及即使三个或更多的共谋者参与了窜改,也能产生嵌入的代码的代码译解器。
如上所述,根据本发明,在根据指纹标记系统的一部分的水印嵌入器和水印检测器中,即使使用者和共谋者的总数较大,通过嵌入代码长度较小的水印信息,也能够在不降低内容质量的情况下,保持对共谋攻击的防范性。另外,还可获得对诸如不可逆压缩之类的其它攻击的坚固性。
另外,当借助根据本发明的水印嵌入器和水印检测器,把诸如复制控制信息,重放控制信息或者使用控制信息嵌入使用内容的控制装置中时,如果在同一内容中嵌入了不同的装置控制信息项,通过比较控制信息项,能够构造具有对窜改控制信息的攻击的防范性的内容使用系统。
此外,根据本发明,提供了一种具有防共谋攻击性,并且能够基于误差率的正确估计,生成足够并且恰当的要嵌入代码的代码生成器,和一种即使三个或更多的共谋者参与窜改,也能够正确地检测和译解嵌入代码的水印检测器。
本发明的其它目的和优点将在下面的说明中陈述,根据下面的说明,部分目的和优点将是显而易见的,或者可通过本发明的实践认识到。借助下文中特别指出的手段和组合,可实现和获得本发明的目的和优点。
包含在说明书中,并构成说明书的一部分的附图,举例说明了本发明的当前优选实施例,并且和上面给出的一般描述以及下面给出的优选实施例的详细说明一起,用于说明本发明的原理。
图1说明了对水印的共谋攻击;
图2说明了Г0(n,d)代码和对其的共谋攻击;
图3说明了Г0(n,d)代码的两个代码之间的最大和最小距离;
图4说明了利用Г0(n,d)的常规数字水印算法方面的问题;
图5表示了采用根据本发明的水印嵌入器和水印检测器的指纹标记系统的示意结构;
图6A和6B是表示根据本发明第一实施例的水印嵌入器和水印检测器的结构的方框图;
图7是表示图6中的代码生成部分的结构的方框图;
图8是表示图7中的分量代码生成部分的结构的方框图;
图9表示了分量代码(共谋攻击前的分量代码)的值;
图10是表示图6B中的代码检测部分的结构的方框图;
图11是表示图10中的共谋者ID计算部分的结构的方框图;
图12是表示图11中的一致性检验部分的结构的方框图;
图13是表示第一实施例中的共谋者确定算法的流程图;
图14是表示图10中的中国余数定理事的处理流程的流程图;
图15是表示根据本发明的第二实施例,代码生成部分中的处理流程的流程图;
图16是表示根据本发明的第二实施例的代码生成部分的结构的方框图;
图17是表示图16中的使用者ID分配部分的结构的方框图;
图18是表示图17中使用者ID分配部分中的处理流程的流程图;
图19是表示图17中的候选使用者ID识别部分中的处理流程的流程图;
图20是表示根据第二实施例的代码检测部分的结构的方框图;
图21是表示图20中的共谋者ID计算部分的结构的方框图;
图22是表示图21中的共谋者ID计算部分和候选共谋者ID生成部分中的处理流程的流程图;
图23是表示图21中的候选共谋者ID识别部分中的处理流程的流程图;
图24表示了相对于实际共谋者ID检测的共谋者ID,满足的全等式的数目(x)和非弱ID(1)或弱ID(0)之间的对应关系,这里共谋者的数目为32;
图25表示了相对于实际共谋者ID检测的共谋者ID,满足的全等式的数目(x)和非弱ID(1)或弱ID(0)之间的对应关系,这里共谋者的数目为64;
图26是表示根据本发明第三实施例的代码生成部分的结构的方框图;
图27是表示根据第三实施例的代码检测部分的结构的方框图;
图28是表示根据本发明第四实施例的代码生成部分的结构的方框图;
图29是表示基于图28中的等价类别的分量代码生成部分的结构的方框图;
图30表示了根据第四实施例,可由基于平行变换的等价类别确定的一组系数;
图31表示了根据第四实施例的,基于平行变换的等价类别的例子;
图32表示了根据第四实施例,已知k=3的等价类别的例子;
图33是表示根据第四实施例的代码检测部分的结构的方框图;
图34是表示基于图33中的等价类别的分量代码生成部分的结构的方框图;
图35说明了基于图34中所示的等价类别的分量代码生成部分;
图36是表示图33中的共谋者ID计算部分的结构的方框图;
图37是表示根据本发明的第五实施例的水印嵌入器的结构的方框图;
图38说明了在本发明的第五和第六实施例中使用的单一代码;
图39是表示根据第五实施例的水印检测器的结构的方框图;
图40是表示根据本发明第六实施例的具有共谋者确定功能的水印检测器的结构的方框图;
图41是表示在本发明的第五和第六实施例中的单一代码生成部分的另一例子的方框图。
图5是表示作为根据本发明的水印嵌入器1和水印检测器2构成的系统的例子的指纹标记系统的原理图。
把作为目标内容的内容,例如图象,电影或音频,和使用者标识号(下面将称为使用者ID)输入水印嵌入器1,由此得到的嵌入代码的内容通过发行路线3发行,发行路线可包括存储内容的存储介质,可以是通信网络。
对发行路线上的嵌入代码的内容进行前面所述的共谋攻击。为了抵御这种共谋攻击,基于本发明的水印检测器2产生指示是否存在共谋攻击的共谋攻击确定信号,共谋者ID(共谋者的使用者ID),以及在没有产生任何共谋攻击情况下正确的使用者ID。
下面,将说明水印嵌入器和水印检测器的实施例。
实施例1
下面将说明作为本发明第一实施例的水印嵌入器和水印检测器,其中代码长度小于常规例子的,具有ε误差的c-保密代码被用作嵌入代码。
图6A和6B表示了根据本发明第一实施例的水印嵌入器和水印检测器的示意结构。图6A中所示的水印嵌入器包括代码生成装置11和代码嵌入部分12,代码生成部分11用于生成要嵌入的使用者ID的代码,这是要嵌入的水印信息,代码嵌入部分12用于把生成的代码嵌入目标内容中,从而得到嵌入代码的内容。同时,图6B中所示的水印检测器包括嵌入代码抽取部分13和嵌入代码检测部分14,嵌入代码抽取部分13用于从目标内容(例如,嵌入代码的内容)中抽取嵌入的代码,嵌入代码检测部分14用于检测并译解抽取的嵌入代码。
图7表示了代码生成部分11的结构。代码生成部分11包括分量代码生成部分24-1,24-2,…,24-k’的余数计算部分22-1,22-2,…22-k’的k’个模数存储部分21-1,21-2,…21-k’,代码参数存储部分23和代码连接部分25。
互为素数的整数被存储在模数存储部分21-1,21-2,…21-k’中。在本例中,存储k’个不同的素数pi(i=1,2,…,k’)。这些素数pi作为模数被提供给余数计算部分22-1,22-2,…22-k’。余数计算部分22-1,22-2,…22-k’分别获得相对于使用者IDu的余数ui=u模pi(i=1,2,…,k’)。即,利用余数计算部分22-1,22-2,…22-k’,以对应于输入的使用者ID的一组多个整数元素的形式计算余数ui=u模pi(i=1,2,…,k’)。
分量代码生成部分24-1,24-2,…,24-k’分别生成由上面描述的Г0(n,d)代码组成的分量代码Г0(pi,t),它按照代码参数存储部分23中保存的代码参数d,表示余数计算部分22-1,22-2,…22-k’获得的余数ui=(i=1,2,…,k’)。即,在分量代码生成部分24-1,24-2,…,24-k’中,k’个分量代码间的k个组合中的每个组合产生相对于每个余数,能够唯一地表示使用者ID的分量代码Г0(pi,t),所述k’个分量代码可表示余数计算部分22-1,22-2,…22-k’根据使用者ID的预定数目(n)计算的所有各组余数ui=(i=1,2,…,k’)。
代码连接部分25连接由分量代码生成部分24-1,24-2,…,24-k’产生的分量代码Γ0(pi,t),从而产生要作为水印信息嵌入的代码。
图8表示了分量代码生成部分24-1,24-2,…,24-k’之一的结构。这里代码参数为t,余数为ui,模数为pi,借助减法部分31得到pi-ui-1。“0”序列生成部分32根据代码参数t和余数ui,产生由连续的t×ui位组成的“0”序列。“1”序列生成部分33根据代码参数d和来自于减法部分31的输出pi-ui-1,产生连续的t×(pi-ui-1)位“1”序列。此外,这些“0”和“1”序列由连接部分34连接,从而以由Г0(n,d)代码构成的分量代码Г0(pi,t)的形式,产生t×(pi-1)位的位序列。
图9表示了这样生成的分量代码的一个例子。B(9),…,B(n-2)块“0”序列的分量代码被分配给从0到n-1的n个使用者ID。
图10表示了图6B中的嵌入代码检测部分14的结构。嵌入代码检测部分14包括代码分离部分41,分量代码译解部分42-1,42-2,…,42-k’,使用者ID计算部分43,共谋识别部分44-1,44-2,…,44-k’,共谋识别OR部分45,和共谋者ID计算部分46。
由嵌入代码抽取部分13从目标内容中抽出的作为水印信息的嵌入代码,由代码分离部分41分成分量代码,之后由分量代码译解部分42-1,42-2,…,42-k’译解分量代码,从而产生对应于使用者ID的余数对。
使用者ID计算部分43根据这样产生的每个余数对的一个余数,计算使用者ID。另外,共谋识别部分44-1,44-2,…,44-k’根据余数对分别确定是否存在共谋攻击。根据共谋识别部分44-1,44-2,…,44-k’得出的确定,计算逻辑和(OR),从而确定是否已存在共谋攻击。此外,如果确定存在共谋攻击,则共谋者ID计算部分46根据每个余数对计算共谋者ID,从而确定共谋者。
图11表示了共谋者ID计算部分46的详细结构。共谋者ID计算部分46包括用于从k’个余数对的每对中选择一个余数的余数选择部分51,从选择的k’个余数中选出k个余数的一致性检验部分52,把中国余数定理应用于一致性检验部分52选择的k个余数,从而获得共谋者ID候选者的中国余数定理部分53。
图12表示了图11中所示的一致性检验部分52的内部结构。中国余数定理部分53得到的共谋者ID候选者被反馈给一致性检验部分52,并相对于k’个余数中的其它(k’-k)个余数执行一致性检验,从而最终得到共谋者ID。图12中所示的一致性检验部分52包括生成(k+1)组余数的生成部分521,和用于一组余数1和共谋者ID候选者的一致性检验部分522。它们的操作将在后面说明。
根据本实施例中的水印嵌入器和水印检测器,即使使用者或共谋者的总数较大,也能够在内容质量降低较小的情况下,实现水印标记。
假定n是使用者的总数,c是共谋者总数的最大值。同时,当从在图7中所示的存储部分21-1,21-2,…21-k’中准备的k’个素数p1,p2,…,pk中选出任意的k个元素时,假定这k’个素数中的任意k个素数的乘积为n或更大。例如,该乘积为n≤p1×p2×…×pk
在代码生成部分12中,相对于素数pi(i=1,2,…,k’),由分量代码生成部分24-1,24-2,…,24-k’生成分量代码Г0(pi,t)。这些分量代码Г0(pi,t)由代码连接部分25连接,从而产生新的代码Г0(p1,p2,…pk’∶n,t)。
如果假定每个使用者的使用者ID为u,连接的代码Г(p1,p2,…pk’∶n,t)的代码字是表示余数计算部分22-1,22-2,…,22-k’计算的余数u模pi的代码字,其中每个分量代码Г0(pi,t)取对应于其使用者ID u的素数pi作为模数。该代码字作为水印信息(或者嵌入代码)被嵌入目标内容中。
如果已对这样获得的代码嵌入内容进行了共谋攻击,则由代码分离部分41分离的分量代码Г0(pi,t)分别由图10中所示的水印检测器中的分量代码译解部分42-1,42-2,…,42-k’译解,从而得到关于c个使用者中的两个给定使用者ID的pi的一对余数。这将被称为关于pi的余数对。
同样,如果关于pi的余数对中的某一余数是保持某一使用者ID u的共谋者的余数,则将认为该余数由被赋予该使用者ID u的共谋者引起。此时,就具有和该共谋者的余数值相同的余数值的使用者,包括该共谋者而论,将认为存在该余数可由该使用者的使用者ID引起的可能性。
(中国余数定理)
令z为一组所有整数,如果对于每个i(i=1,2,…,k),已知ui∈z/piz,这里已知不同的k个素数p1,p2,…pk,则可唯一地确定满足ui≡u模pi的ui∈(z/p1z)×(z/p2z)×…×(z/pkz),从而可归纳地进行计算。这是中国余数定理。
如果采用中国余数定理,并且如果对应于k’个素数中的k个素数的余数被提供给如图11中所示的中国余数定理部分53,则可由此唯一地确定使用者ID。但是,所有的余数并是总是由同一共谋者的使用者ID引起。于是,获得的使用者ID不能始终正确地确定共谋者。
因此,准备了另一个余数,并检验(k+l)个余数之间的一致性,从而验证获得的使用者ID的正确性。换句话说,检验(k+l)个联立全等方程的解是否存在。例如,通过使根据k个余数得到的使用者ID除以对应于其它余数rk+1,…,rk+1的整数pk+1,…,pk+1,得到余数。可根据余数是否分别等于余数rk+1,…,rk+1,确定共谋者。
即,在图11中所示的一致性检验部分52中,把由图11中所示的余数选择部分51从k’个余数对中分别选出的k’=c(k+l)/2个余数,输入如图12中所示的(k+l)-元组余数组的生成部分521中。从这些k’个余数中,选出k个余数,并将其提供给中国余数定理部分53。此外,由一致性检验部分522检验一组余数和共谋者ID候选者之间的一致性,从而输出共谋者ID(即,共谋者的使用者ID)。
在共谋者的总数为2的情况下,可相当容易地实现本方法(例如,日本专利申请No.10-108039和10-122108)。这里被扩展到普通共谋者的数目。
假定n是使用者的总数,c是共谋者的最大数目。在先前描述的参考文献[13]中引入的具有ε误差的n-保密代码(具有ε误差的立方长度(cubic length)n-保密代码)被定义为如下所示。
(定义1)
((n-1)d,n)代码Г0(n,d)被定义为其字W(0),…,W(n-1)满足下一条件的代码。
Figure 0012908700301
在该等式中, W ( i ) | B j 把代码字W(i)限制为一组Bj个二进制位位置。一组Bi(这里i=0,…,n-2)被称为块,并由d个二进制位位置构成。不同的块不具有相同的部分(对于i≠j来说,Bi∩Bj=φ)。
假定序列号之类的排序可被分配给所有使用者。并假定代码字W(i)被分配给第i个使用者。此外还假定未向使用者通知分配给他们的序列号。
已在参考文献[12]和[14]中引入的具有ε误差的线性长度n-保密代码和定义1规定的代码相同,只是具有不同的检测算法。该代码能够指定两个共谋者,其中一个具有最大序列号,另一个具有最小序列号。该代码的代码长度为Θ(n)。
(定理1)
假定把下面的检测算法1应用于代码Г0(n,d)。如果已知d=log2(2/ε),则该代码是具有ε误差的n-保密代码。
(检测算法1)
(1)输入检测的代码 x &Element; { 0 , 1 } l 。 假定已知l=(n-1)d和d=log(2/ε)。
(2)从s=0到n-2,执行下述操作。
(2-1)如果 X | Bs &NotEqual; { 0 } d , 停止。
(3)从t=n-1到s,执行下述操作。
(3-1)如果 X | B t - 1 &NotEqual; { 0 } d 中断。
(4)输出s和t。
下面将说明本发明所特有的算法部分。
假定k,k’和l是满足k’=c(k+l)/2的正整数。并假定p1,…,pk’是互为素数的整数。另外还假定p是p1,…,pk’中的最小一个。还假定选自p1,…,pk’的k个最小整数的乘积为n或更大。下面将把这些整数p1,…,pk’称为因数。该组整数将被称为因数库。
假定这些因数的平均值为pave(pave=(p1+…+pk’)/k’)。对应于每个pi(i=1,…k’),以分量代码的形式准备按照参考文献[13]的n-保密代码Г0(pi,t)。
(定义2)
((pave-1)k’t,n)代码Г(p1…,pk;n,t)被定义为其中其代码字W(1),…W(n)被如下构造的代码。
w ( u ) | Ci = w ( u mod p i ) &Element; &Gamma; 0 ( p i , t )
这里,Ci是对应于代码Г0(pi,t)的一组二进制位位置。该代码被分配给第u个使用者。
用于生成嵌入代码的编码算法如下所示。
(编码算法)
(1)输入使用者ID u∈{0,…,n-1}。
(2)从i=1到k’执行下述操作
(2-1)计算umodpi,并生成代码字w(umodpi)∈Γ0(pi,t)。
(3)连接生成的代码字,产生一个代码字W(u)
(定义3)
通过把检测算法1应用于Г0(p1…,pk’,n,t),至多获得两个整数,ri (-),ri (+)∈zpi。在本定义中,已知0≤ri (-)≤ri (+)≤pi-1。
整数ri (-),ri (+)∈zpi被称为Г0(pi,t)的余数。一组{ri (-),ri (+)被称为Г0(pi,t)的余数对。
(定义4)
假定r是Г0(pi,t)的余数。如果在一组共谋者中存在满足r≡umodpi的共谋者,余数r被称为起因于u的r。如果不管使用者是否是共谋者,r都满足r≡umodpi,则该余数r被称为可能起因于u的r。
(定义5)
如果当把中国余数定量应用于对应于m个素数的该组余数(m-元组余数)中的任意k个余数时,该组m个余数的所有余数都给出同一使用者ID,则把这种余数组称为是一致的。
此外,如果一组一致的余数中的所有余数起源于得到的共谋者的使用者ID,则把该组余数称为是真一致的。否则,把该组余数称为伪一致的。
(检测算法2)
(1)输入检测的代码x∈{0,1}L。假定L=(pave-1)k’t
(2)把x分解为k’限制的x|Ci,i=1,…,k’。
(3)从i=1到k’执行下述操作。
(3-1)对x|Ci应用检测算法。
(4)对于一组余数的所有m-元组执行下述操作。
(4-1)如果该组m-元组余数是一致的,执行下述操作。
(4-2)输出其解答作为共谋者,并停止。
(5)产生表示没有检测到任何共谋者的输出。
(定理2)
假定t≥log2(4k′/ε)。如果下述等式被满足,则代码Г(p1…,pk’;n,t)是具有ε误差的c-保密代码。
Figure 0012908700331
这时,代码长度由L=(pave-1)k’t给出。
(引理1)
在代码Г(p1…,pk’;n,t)的k’余数对中,至少存在一个引起2k’/c个余数的共谋者。
(引理1的证明)
存在包含在Г(p1…,pk’;n,t)的k’个余数对中的2k’个余数。当求平均值时,每个共谋者引起2k’/c个余数。因此,至少一个共谋者引起2k’/c或更多的余数。
(引理1的广义化)
引理1表示了可从每个分量代码检测出的整数(余数)的数目q被设定为q=2的例子。通过如下所述利用q,可产生该引理。
(广义引理1的证明)
包含在k’个代码Г0(p1…,pk’;n,t)的q个余数对(为了方便,这里将其称为余数对,不过它们不是严格意义上的余数对)中的余数为qk’件。当均化时,每个共谋者引起qk’/c个余数。因此,至少一个共谋者产生qk’/c个或更多个余数。
由于共谋者ID(共谋者的使用者ID)的重建和检查需要(k+l)个余数,根据产生的引理1,必须存在qk′/c≥k+l。把不等式左侧的系数q/c移动到不等式的右侧,得到k′≥c(k+l)/q的条件。实际上,由于k’是整数,k′≥[c(k+l)/q]。
(引理2)
假定t≥log2(2k′/ε)。当把上面说明的检测算法1应用于代码Г0(p1…,pk’;n,t)时,k’个余数对的许可误差率(不是起因于任意共谋者的余数被包含在k’个余数对中的概率)为ε或更小。
(引理2的证明)
当把检测算法应用于元素Г0(pi,t)时,如果根据定理1已知t≥log2(2k′/ε),则余数对的检测误差率为ε/k’或者更小。由于存在总共k’个元素,对于所有余数对来说,检测误差率为ε或更小。
(引理3)
当把一组一致的m个余数(m-元组余数)和源于对应于另一因数p的一个余数对的余数相加,以构造一组(m+1)个余数时,该组(m+1)个余数是伪一致的概率为1-(1-1/p)c或更小。
(引理3的证明)
每个余数对由对于所有共谋者的使用者ID,采用p作为模数的余数中的最大值和最小值构成。由于使用者不知道他们自己的使用者ID,可料到当进行共谋攻击时,使用者ID属于共谋者的概率被认为是相同的,和使用者ID无关。因此,共谋者的余数采用某一值的概率一样为1/p。
当c个共谋者的余数都被均匀地分配时,最大余数采用某一值c∈z/pz的概率pr[x]如下所示。
(引理4)
当下述条件被满足时,存在一组伪一致的(k+l)个余数的概率为ε或更小,如下式所示。
(引理4的证明)
可选自k’个余数对的一组(k+l)个余数可产生k’Ck+l×2k+l组合。根据引理14,该组(k+l)个余数是伪一致的概率为(1-(1-1/p)c)l。因此,对于在所有组合中出现至少一组伪一致的(k+l)个余数的概率,给出下面所述的上限。
Figure 0012908700343
当存在引理1的条件等式时,概率PF为ε或更小。(定理2的证明)
把错误检测的无辜使用者当作共谋者的原因有两点。一个原因是余数对的检测误差,另一原因是一组伪一致余数的选择。如果这两种原因的概率均为ε/2或更小,检测误差率为ε或更小。根据引理2和4,得到该上限的等式。
代替使用一个最小因数作为下限来限制一组伪一致余数被排斥的概率,从最小的一组参数中选出的l个因数被用于限制该下限。随后,代替等式(4),可获得具有如下一等式(8)中所示的代码长度的更小的上限。
Figure 0012908700351
这里,p1,…,pl是选自p1,…,pk,(这里p1<p2<…<pk)的l个最小参数。可按照从最小一个参数,按照顺序从从第(k+1)个最小参数一直到第(k+l)个最小参数的最小参数中选出的一个参数的顺序选择这l个参数,或者可按照从最小一个参数一直到第(k+l)个最小参数的顺序选择这l个参数。另外,pi(i=1,…k’)是由余数计算部分相对于c使用者ID计算的每个余数可采用的值。在本实施例中,pi(i=1,…k’)是由前面说明的模数存储部分21-1,21-2,…21-k’准备的k’个因数。
下面将说明不等式(8)的意义。首先,不等式(8)的左侧给出检测正确地确定共谋者ID的概率的下限。即,附于不等式左侧中括号右上方的“幂”例举了从k’个余数对中选出(k+l)个余数的例子。不等式的整个右侧意味着对于每个选择,是否形成正确与否的共谋者ID的概率的适中(moderation)。
下面详细说明不等式(8)的左侧中括号的内容。在上面说明的每种选择中,由额外的l个余数证明共谋者ID是否是正确的。括号中依赖于Π的乘积部分给出不正确的共谋者ID被所有1个证明误认为是正确的的概率的上限。这是因为每个证明确定不正确的共谋者ID是正确的共谋者ID的概率的下限,由通过对于引理3中的给定概率1-(1-1/p)c,用对应于可从每个分量代码中检测出的整数(余数)的因数代替这些余数的数目,得到的结果给出。
对应于用于一个证明的余数的l个因数是这样一种组合,在由最小的因数所组成的该组合是p1,p2,…,p1的情况下,该组合使由其进行的不正确证明的概率的下限最大。于是,基于Π的乘积部分给出所有1个证明把错误的共谋者ID误认为正确的共谋者ID的概率的上限。于是,在不等式(8)中,左侧中表示的,正确的共谋者ID被检测的概率的下限意味着满足右侧中表示的1-ε/2或更大的条件。
这样,根据本实施例,规定分量代码的数目k’,以便由上面说明的广义引理1给出条件等式k′≥(k+l)/q,并且最好以便满足等式(8)。从而,如果保持对共谋攻击的防范性,并且三个或更多的共谋者参与窜改,则根据误差率的正确估计,可产生足够的并且恰当的嵌入代码,并且该嵌入代码可被正确地译解。
下面将参考图13中的流程图,说明在本实施例中,确定共谋者的算法。
串谋者ID计算部分46输入从分量代码译解部分42-1,42-2,…,42-k’输出的k’个余数对。这些余数对首先被输入余数选择部分51。余数选择部分51(步骤S1)从每个余数对中选出一个余数,产生一组k个余数(R1,R2…,Rk,)(步骤S2)。
该组k’个余数被输入一致性检验部分52。一致性检验部分52选择不同的余数(S1,S2,…,Sk)(步骤S3),并将它们提供给中国余数定理部分53。
中国余数定理部分53根据中国余数定理计算共谋者ID u(步骤S4)。按照图14的流程图中所示的处理流程执行利用中国余数定理的计算。计算得到的共谋者ID u被返回给一致性检验部分52。
一致性检验部分52确定在其它剩余的(k’-k)个余数内的预定数目(l)个余数之间,是否存在关系式Ri=u模pi(i=i1,i2,…il)被满足的情况(步骤S5)。如果该关系式被满足,则一致性检验部分52输出u作为共谋者ID(步骤S6)。如果该关系式不被满足,则从在步骤S3中输入的一组k’个余数中选出k个新的不同余数(S1,S2,…,Sk),并将其提供给中国余数定理部分53,直到该关系式被满足时为止。
如果在步骤S7中确定一组k个余数(S1,S2,…,Sk)是最后一组候选者,则一致性检验部分52向余数选择部分51要求一组新的k’个余数(步骤S8)。直到在步骤S5中,关系式Ri=u模pi(i=i1,i2,…i1)被满足时为止,重复步骤S3,S4和S7的处理。如果不存在一组新的k个余数(S1,S2,…,Sk),则认为处理已不能确定共谋者(步骤S9)。
最后,参考图15中所示的流程图,下面将说明本实施例中的嵌入代码检测部分14中进行的处理流程。
输入检测目标内容(例如嵌入代码的内容)(步骤S11),并从该检测目标内容中抽出嵌入的代码(步骤S12)。随后,共谋识别部分44-1,44-2,…,44-k’根据通过代码分离部分41和分量代码译解部分42-1,42-2,…,42-k’得到的分量代码,确定是否存在共谋(步骤S13)。
如果任一共谋识别部分44-1,44-2,…,44-k’都没有确定共谋的存在,则使用者ID计算部分43计算使用者ID(步骤S14),并输出该使用者ID(步骤S15)。
否则,如果至少一个共谋识别部分44-1,44-2,…,44-k’确定共谋攻击的存在,则通过共谋识别部分45输出共谋存在信号(步骤S16),共谋者ID计算部分46计算共谋者ID(步骤S17)。输出该共谋者ID(步骤S18)。
这种情况下,就步骤S13中共谋攻击的存在与否的确定,以及步骤S14中使用者ID的计算而论,可在高速下容易地实现处理。相反,步骤S17中共谋者ID的计算花费较长的时间,不过通过首先确定共谋攻击的存在与否,并且只有在确定存在共谋攻击的情况下,才执行共谋者ID的计算,可省略浪费的计算。
如果根据本发明的水印检测器被应用于使用者装置,可控制该水印检测器的使用,例如只对共谋攻击的存在与否进行确定,并且根据确定结果,停止水印检测器的使用。于是,并不总是必须执行共谋者的计算(确定)。
这样,根据本实施例,在使用者或共谋者的总数较大,同时限制要嵌入的代码长度的情况下,仍可保持对共谋攻击的坚固性。
(实施例2)
图16表示了根据本发明的第二实施例的代码生成部分11的结构。在根据本实施例的代码生成部分11中,图7中所示的结构被加入使用者ID分配部分26和使用者确定-数据/使用者-ID对应表27,使用者ID分配部分26把使用者ID分配给确定内容的使用者的使用者确定数据,使用者确定-数据/使用者-ID对应表27存储使用者确定数据和由使用者ID分配部分26分配的使用者ID,同时保持它们之间的对应性。
在使用者ID分配部分26中,使用者ID被分配给输入的使用者确定数据,后面将说明。分配的使用者ID被输入给余数计算部分22-1~22-k’。另外,使用者确定-数据/使用者-ID对应表27存储使用者确定数据和分配的使用者ID。
如图17中所示,使用者ID分配部分26包括候选使用者ID生成部分261,候选使用者ID识别部分262和使用者ID确定部分263。参考图18中所示的流程图,说明使用者ID分配部分26的处理程序。
首先,输入使用者确定数据(步骤S21)。使用者确定数据为每个单个使用者所独有的,并且例如,使用者的姓名被用作为使用者确定数据。对应于使用者确定数据,使用者ID候选者生成部分261一个接一个地生成候选使用者ID(步骤S22)。还未被分配(或使用)的ID被用作为候选使用者ID。
接下来,候选使用者ID识别部分262根据使用者ID,顺序地识别候选使用者ID是否是弱ID(步骤S23)。弱ID是这样一种使用者ID,即,虽然该使用者ID不是多个使用者ID候选者中的共谋者ID,即,虽然该使用者ID是无辜使用者(他不是共谋者)的使用者ID,但是该使用者ID可被错误地检测为共谋者ID的概率很高。根据该使用者ID对抗错误检测的能力很弱的含意,把这种使用者ID称为弱ID。如果由于步骤S23中的识别的结果,候选使用者ID被识别为弱ID,则处理程序返回步骤S22,生成下一个候选使用者ID,随后在步骤S23中再次进行识别。
如果由于步骤S23中的识别的结果,候选使用者ID不是弱ID,即,如果候选使用者ID是被错误检测为共谋者ID的概率较低的使用者ID(根据其对抗错误检测的能力不弱的含义,这种使用者ID被称为非弱ID),则候选使用者ID确定部分263,把该候选使用者ID确定为要被分配给通过步骤S21输入的使用者确定数据的使用者ID(步骤S24)。
参考图19中所示的流程图,说明识别候选使用者ID是弱ID还是非弱ID的步骤S23中的识别处理的具体程序。
首先,一个接一个地顺序输入在步骤S22中生成的候选使用者ID(步骤S31),并估计每个候选使用者ID被错误地检测为共谋者ID的概率(检测误差率)(步骤S32)。例如,利用参数pi,k,k’和c,如下所示地执行检测误差率的估计。首先,定义下述等式。接下来,定义下式: Q &lsqb; x ; p , c &rsqb; = Pr &lsqb; x ; p , c &rsqb; + Pr &lsqb; p - 1 - x ; p , c &rsqb;
下面的估计值EEF被计算为大体上表示使用者ID(设为u)被错误地检测为共谋者ID的概率的数值。
Figure 0012908700393
令up≡umodp,并且up∈z/pz。如果除了上面提及的估计值,存在近似于对于使用者ID的检测误差率的另一估计值,则可使用该检测误差率代替等式(11)中的EEP。例如,有可能使用由下述等式(12)表示的估计值EEP。
Figure 0012908700394
接下来,检查步骤S32中估计的检测误差率(例如等式(11)或(12)中的EEP)是否超过预定的门限值(步骤S33)。如果超过门限值,则候选使用者ID被确定为弱ID(步骤S34)。否则,如果检测误差率等于或小于门限值,则候选使用者ID被确定为非弱ID(步骤S35)。
这样,在图16中所示的使用者ID分配部分26中,几乎不会被错误地检测为多个候选使用者ID内的共谋者ID的ID(非弱ID)作为使用者ID被分配给输入的使用者确定数据。之后,类似于实施例1,余数计算部分22-1~22-k’和分量代码生成部分24-1~24-k’顺序处理使用者ID分配部分26分配的使用者ID。从而生成要嵌入的代码。
换句话说,使用者ID分配部分26被安排成不会把易于错误地检测为多个候选使用者ID中的共谋者ID的弱ID,作为使用者ID分配给输入的使用者确定数据。这样,可把错误检测的概率降到很小。还可这样安排,以便如果弱ID应被检测为共谋者ID,则该弱ID不会被看作共谋者ID。
同时,弱ID对嵌入代码的代码长度的确定产生较大的影响。假定在水印检测器中检测一个使用者ID。即使该使用者ID是一个弱ID,为了把检测误差率降低到容许的概率以下,也必须准备由相当大量的因数(例如存储在模数存储部分21-1,21-2,…,21-k’中,并且互为素数的整数,例如k’个不同的素数pi(i=1,2,…k’))组成的因数库。但是,如果在不排除弱ID的情况下,嵌入的代码具有一定的检测误差概率,则通过从使用者ID中排除弱ID,可由具有由少得多的因数组成的因数库的嵌入代码实现相同的检测误差率。
这可如下进行解释。这里给定的使用者ID是u,检测u的事件被表示为detect(u),u为弱ID的事件被表示为weak(u),u为共谋者ID的事件被表示为collude(u)。这时,存在下式:
Figure 0012908700401
于是,给出下式:
Figure 0012908700411
在这些等式中,等式(14)右侧中的第二项和第四项对检测误差率有影响。为了缩短代码长度,最好采用在不降低检测误差率的情况下,可借用数目少得多的因素(k’个因素)证明候选共谋者ID的方法。在借助较少数目的因素简单地证明候选共谋者ID的情况下,等式(14)右侧上的第四项不会发生较大变化,但是第二项的概率极大地增大,从而检测误差率被增大。
但是,如果预先排除弱ID,以致弱ID不被分配为使用者ID,则等式(14)右侧中的第二项不包含在检测误差率中。如果在后面将说明的嵌入代码检测部分14中准备候选共谋者ID的使用者ID名单,并且把预选排除的弱ID从检测的使用者ID名单中排除,则剩余的非弱ID是正确的共谋者ID的概率变大。于是,通过确定非弱ID为共谋者ID,其结果是可获得代码长度较短的嵌入代码。
图20表示了根据实施例2的嵌入代码检测部分14的结构。在本实施例中,类似于实施例1,把参考图10说明的,通过分量代码分离部分41,由分量代码译解部分42-1,42-2,…,42-k’获得的对应于使用者ID的k’个余数对输入共谋者ID计算部分47。
把共谋者ID计算部分47计算的共谋者ID输入共谋者确定数据生成部分48,共谋者确定数据生成部分48产生共谋者确定数据,参见参考图16说明的使用者确定数据/使用者ID对应表27。和图10中所示的共谋者ID计算部分46不同,共谋者ID计算部分47按照下述方式计算使用者ID。
如图21中所示,共谋者ID计算部分47包括候选共谋者ID生成部分471,候选共谋者ID识别部分472和共谋者ID确定部分473。下面将参考图22中所示的流程图,说明图21中所示的共谋者ID计算部分47中的处理程序。
首先,说明候选共谋者ID生成部分471的过程。
首先输入由分量代码译解部分42-1,42-2,…,42-k’获得k’元组余数(步骤S41)。其次,把所有已被使用的使用者ID看作为j(j=0~n-1),并且首先设定j=0(步骤S42)。随后,确定当前的j是否超过使用者ID的范围,即j>n-1还是j<n-1(步骤S43)。如果j超出使用者ID的范围,则结束共谋者ID的计算。
另一方面,如果j没有超出共谋者ID的范围,相对于使用者ID(j),得到在图22中所示步骤S41中输入的所有k’个余数对的余数ri(+)或ri (-),和采用pi作为模数的余数ri (+)modpi或ri (-)modpi之间,满足全等式j≡ri (±)modpi的i的数目x(步骤S51)。数目x被称为“满足的全等式的数目”。随后,检查全等式满足数目(x)是否是预定的门限值y或更大(步骤S45)。如果要求较小的检测误差,可设定较大的门限值y,如果允许较大的检测误差,可设定较小的门限值。如果如后面所述那样确定候选共谋者ID是否是弱ID,则即使y被设定为小于k+z,检测误差也可能为ε或更小。但是,如果没有进行这样的确定,检测误差不可能为ε或更小,除非y被设定为k+z或更大。
如果全等式满足数目(x)为该门限值y或更大,则确定j为候选共谋者ID(步骤S46)。
另一方面,如果x小于门限值y,则过程前进到后面将说明的步骤S49。从候选共谋者ID生成部分471输出这样生成的候选共谋者ID。
现在将说明候选共谋者ID识别部分472的过程。
由候选共谋者ID生成部分471产生的候选共谋者ID可能是弱ID,并不是真实的共谋者ID。于是,候选共谋者ID识别部分472识别生成的候选共谋者IDj是否是弱ID(步骤S47)。
如前所述,弱ID是可能以较高的概率被错误地检测为共谋者ID的使用者ID,虽然它实际上并不是共谋者ID。另一方面,可能以较低的概率被错误地检测为共谋者ID的使用者ID被称为非弱ID。下面将说明共谋者ID确定部分473的过程。
如果候选共谋者ID不是弱ID,即是被错误地检测为共谋者ID的概率较低的使用者ID,由于步骤S47中候选共谋者ID识别部分472的识别的结果,共谋者ID确定部分473确定该候选共谋者ID为共谋者ID(步骤S48)。
另一方面,如果候选共谋者ID是弱ID,由于步骤S47中的识别的结果,过程前进到步骤S49。
上面的步骤构成对于单个j值进行的过程。在步骤S49中,对下一j值进行类似的过程,j值被加1。之后,过程返回步骤S43,重复类似的过程。因此,对于所有使用者ID,预期图18中所示的候选共谋者ID生成过程能够获得作为候选共谋者ID的所有满足x≥y的j。
下面将参考图23中所示的流程图,说明图22中所示的步骤S47中的识别步骤,该步骤用于识别如上所述生成的每个候选共谋者ID是弱ID还是非弱ID。
除了用候选共谋者ID代替作为识别目标的候选使用者ID之外,该识别处理和图17所示的候选使用者ID识别部分262执行的图19中所示的识别处理基本相同,候选使用者ID识别部分262在图16中所示的代码连接部分11中的使用者ID分配部分26中。
即,一个接一个地顺序输入图22中步骤S46中确定的候选共谋者ID(步骤S61),并估计这些候选共谋者ID被错误地检测为共谋者ID的概率(检测误差率)(步骤S62)。例如,通过定义前面说明的等式(9)和(10),并把等式(11)或(12)的估计值EEP计算为基本上表示给定使用者ID(u)被错误地检测为共谋者ID的概率的数值,估计该检测误差率。接下来,检查步骤S62中估计的检测误差率(例如,等式(11)或(12)的EEP)是否超过预定的门限值(步骤S63)。如果超过该门限值,则确定该候选共谋者ID是弱ID(步骤S64)。否则,如果检测误差率等于或小于该门限值,则确定该候选共谋者是非弱ID(步骤S65)。
图24表示了在设定参数,以便满足L=7.34×106,c=32,EEF=0.000001,k=2,p0=512,l=11,k’=208,n=2.63×105的情况下,相对于实际的共谋者ID检测到的共谋者ID,满足的全等式的数目(x),以及或者正确或者不正确的检测结果(1代表正确的检测,0代表不正确的检测)。
在该例中,已知k+l=13,于是,在第一实施例中,实际的ID中只有ID=47824被检测为共谋者ID。相反,根据本实施例,实际的共谋者ID内,为非弱ID,并且具有相当大数目x的满足全等式的ID被正确地检测为共谋者ID。在图24的例子中,例如,如果三个或更多的数字被假定为非弱ID,在这些非弱ID中,满足全等式的数目x为10或更大的那些ID都被检测为共谋者ID。
图25表示了除了参数c被设定为64之外,其它参数L,EEP,k,p0,l,k’和n被设定为和图24中的相同的情况下,相对于实际的共谋者ID检测到的共谋者ID,满足的全等式的数目(x),以及或者正确或者不正确的检测结果(1代表正确的检测,0代表不正确的检测)。由于共谋者数目c是图24中共谋者数目的两倍,不能用第一实施例的方式检测共谋者ID。相反,在图25的例子中,如果假定非弱ID大于10000,并且门限值y为6,则这些非弱ID中的满足的全等式的数目x为6或更大的那些非弱ID都被检测为共谋者ID。
这样,根据本发明,可获得下述优点。
(1)对于数目很大的共谋者,可确定共谋者的数目。换句话说,如果假定共谋者的最大数目相同,和第一实施例相比,可实现代码长度短得多的嵌入代码。
(2)可确定多个共谋者ID。
(3)即使当对嵌入代码施加不同于共谋攻击的噪声(例如,随机噪声)时,也可确定共谋者。
优点(1)和(2)刚好与上面说明的完全相同。下面将补充说明优点(3)。例如,如果在整个内容内向嵌入代码(水印信息)加入随机噪声,则当译解分量代码时,可能产生输出错误余数的代码。如果由该随机噪声引起的误差率落在某一范围内,正确的余数对比错误的余数对多得多。因此,和不正确的候选共谋者ID相比,正确的候选共谋者ID具有数目更多的满足全等式,从而共谋者ID的检测误差率较小。
(实施例3)
图26表示了根据本发明的第三实施例的代码生成部分11的结构。在根据本实施例的代码生成部分11中,图7中所示的结构被加入了数据库查阅部分28和非弱ID数据库29。
非弱ID数据库29存储所有候选使用者ID中的非弱ID。以类似于根据第二实施例的候选使用者ID识别部分262中的识别方法的方法,例如以相对于所有候选使用者ID,参考图19说明的算法识别弱ID或非弱ID的方法,获得存储在该非弱ID数据库29中的非弱ID。
当输入使用者确定数据时,数据库查阅部分28对应于该使用者确定数据,分配存储在非弱ID数据库29中的一个非弱ID作为使用者ID,并输出该非弱ID(使用者ID)。类似于第一和第二实施例,余数计算部分22-1~22-k’,分量代码生成部分24-1~24-k’,和代码连接部分25顺序对使用者ID进行处理,从而生成要嵌入的代码。
指出哪个非弱ID被数据库查阅部分28分配给哪个使用者确定数据的信息一起被存储在非弱ID数据库29中。即,相对于非弱ID数据库29中存储的非弱ID内,已作为使用者ID被分配给使用者确定数据的那些非弱ID,存储对应的使用者确定数据项,保持它们与那些非弱ID的对应性。以这种方式,已被分配给任意使用者确定数据的那些非弱ID不会被分配给后来输入的使用者确定数据项。
这样,根据本实施例的代码生成部分11,非弱ID,即所用使用者ID内,可能以较高的概率被错误地检测为共谋者ID的那些使用者ID被预先获得,并被存入非弱ID数据库29中。查阅非弱ID数据库29,使用者ID被分配给使用者确定数据。于是,可在处理量较小的情况下,在短时间内实现和实施例2完全相同的使用者ID的分配。
图27表示了根据本实施例的嵌入代码检测部分14的结构。根据本实施例的嵌入代码检测部分14加入了非弱ID数据库29和数据库查阅部分49,代替图20中所示的使用者确定数据/使用者ID对应表27。
非弱ID数据库29和参考图26说明的非弱ID数据库完全相同。存储非弱ID和使用者确定数据项,保持它们之间的对应性。当输入候选共谋者ID时,存储在非弱ID数据库29中的非弱ID中的,对应于任意候选共谋者ID的一个非弱ID被数据库查阅部分49确定为共谋者ID。从非弱ID数据库29中读出对应于该非弱ID的使用者确定数据,并将其作为共谋者确定数据输出。
根据本实施例的嵌入代码检测部分14,非弱ID,即所用使用者ID内,可能以较高的概率被错误地检测为共谋者ID的那些使用者ID被预先获得,并被存入非弱ID数据库29中。查阅非弱ID数据库29,计算共谋者ID,并计算对应于该共谋者ID的使用者确定数据。于是,可在处理量较小的情况下,在短时间内实现和实施例2完全相同的共谋者ID的计算过程。
在本实施例中,实现了非弱ID数据库19。但是,可利用电路或程序区别非弱ID和弱ID。特别地,如果已知共谋者ID,并且可借助不同于本发明的手段确定该共谋者,则只需排除弱ID即可。
(实施例4)
下面,将说明实施例4的,以和实施例2相比,代码长度较短的c-保密代码为基础的水印嵌入器和水印检测器,该实施例可在某一条件下实现。
图28是表示根据本实施例的代码生成部分的结构的方框图。代码生成部分包括分量代码生成部分61-1,61-2,…,61-k’和代码连接部分62,分量代码生成部分61-1,61-2,…,61-k’被输入使用者ID,并生成基于等价类别的分量代码,代码连接部分62把这些分量代码连接成一个代码,从而产生作为要嵌入的水印数据的代码。
图29表示了分量代码生成部分61-1,61-2,…,61-k’内的一个部分61-i的结构。分量代码生成部分61-i由(z/pz)k内对应点计算部分611,等价类别元素编号计算部分612和分量代码生成部分613构成。
(z/pz)k内对应点计算部分611被输入使用者ID,并输出(z/pz)k内的对应点。使用者ID(u)和(z/pz)k内的点(u0,u1,u2,…,up-1)之间的对应性由,例如u=u0+u1p+…+uk-1pk-1给出。如果在一组因数U之间存在等价关系R,则分别等价于给定因数u的一组所有因数被称为该因数u的等价类别。和该组U的等价关系R相关的整个一组等价类别被表示为U/R,并被称为和R相关的U的等价类别。借助(z/pz)k个因数之间的平行变换T,可定义等价关系RT。此外,可定义和该等价关系RT相关的等价类别。
可把从0~pk-1的数字(它被称为等价类别元素编号)分配给属于同一等价类别的元素。等价类别元素编号计算部分612计算等价类别元素编号,并将其输出作为分量ID。即,在本实施例中,等价类别元素编号计算部分612对于输入的使用者ID,计算等价类别元素编号,作为一组整数元素。分量代码生成部分613根据等价类别元素编号计算部分612计算得到的分量ID,产生分量代码。
图30表示了基于平行变换的等价类别的一个例子。该图表示了已知p=7和k=2的例子。显然平行变换(1,6)和(3,4)确定由斜线表示了的网格部分构成的一个相同的等价类别。
图31表示了当图30中所示的p×p网格被周期性重复时,是如何表示等价类别的。可发现这种由基于平行变换的等价关系确定的,并包括网格部分(0,0)的等价类别位于具有一定斜度的直线上。图32表示了图30被扩展到k=3的例子。按照类似的方式,对于任意的正整数k,可由基于平行变换的等价关系确定等价类别。
一个等价类别中所含的元素的数目为p。序号(等价类别元素编号)被赋予这p个元素。
同时,一组系数的元素的数目(等价类别的数目)为pk/p=pk-1。于是,如果确定一个序号,则确定pk-1个元素。借助分量代码,该序号被编码为分量ID。
下面将说明在等价类别数目计算部分612中分配等价类别元素数目(分量ID)的分配方法。下述两种方法被看作为分配方法。
(分配方法1)
本方法把等价类别数目用作被分配给和等价关系RA相关的等价类别的数字。从0~pk-1的数字被分配。
(分配方法2)
本方法使用分配给等价类别的元素的数字。从0~p-1的数字被分配。
在上述两种方法中,分配方法2更可取。如果采用分配方法2,可得出对于实施例2作出的相同讨论,于是,给出前面说明的等式(6)。即,只须采用满足等式(2)和后面将说明的等式(22)的代码。下面引用了分配方法2的一个例子。在基于平行变换的一个等价类别Ai=(ai,0’ai,1’…,ai,k-1)的情况下,下述等式作为等价类别元素编号(分量ID)被分配给u=(u0,…,uk-1)。 &Sigma; j = 0 k - 1 u j a i , j mod p
图33表示了根据本实施例的水印检测器中的代码检测部分的结构。该代码检测部分包括代码分离部分71,分量代码译解部分72-1,72-2,…,72-k’和共谋者ID计算部分73。
借助图中未表示出的嵌入代码抽取部分,从作为检测目标的输入内容(代码嵌入内容)中抽出水印信息(嵌入的代码)。作为抽取的水印信息的嵌入代码由代码分离部分71分离成分量代码。之后,由基于等价类别的分量代码译解部分72-1,72-2,…,72-k’译解分量代码,从而产生多对对于应使用者ID的等价类别元素编号。根据这样产生的每对等价类别元素编号,由共谋者ID计算部分73计算共谋者ID,从而确定共谋者。
类似于第一和第二实施例,该结构可被布置成如下所示。使用者ID计算部分根据每对等价类别元素编号之一获得使用者ID。根据每对等价类别元素编号,确定共谋的存在与否。根据共谋识别部分的结果,共谋识别OR部分得到逻辑和。最后确定是否存在共谋。如果确定存在共谋,则共谋者ID计算部分73计算共谋者ID。
图34表示了分量代码生成部分72-1,72-2,…,72-k’之一的分量代码生成部分(72-i)的结构。基于等价类别的分量代码译解部分72-i以检测算法3为基础,该算法允许后面将说明的随机误差。分量代码生成部分72-1包括块分离部分720,“1”位计算部分721,“>t0”识别部分722,“d-t0”识别部分723,最小位置选择部分724和最大位置选择部分725。
块分离部分720把输入的分量代码分成有限的块,并把分离结果分别输出给“1”位计算部分721。一个“1”位计算部分721计算表示“1”的二进制位的数目,并把计算值输出给“>t0”识别部分722和“d-t0”识别部分723。
“>t0”识别部分722确定输入值是否大于第一门限值t0。如果确定结果为真,则“>t0”识别部分722输出1,如果确定结果为假,则“>t0”识别部分722输出0。“d-t0”识别部分723确定该输入值是否小于第二门限值d-t0。如果确定结果为真,则输出1,否则输出0。
最小位置选择部分724输出从“>t0”识别部分722输入的一组二进制位中,表示1的二进制位的最小二进制位编号。最大位置选择部分725输出从“d-t0”识别部分723输入的一组二进制位中,表示1的二进制位的最大二进制位编号。
下面说明的是当译解作为嵌入代码的水印信息时,在水印检测器中存在发生错误的可能性的情况。如果当译解嵌入代码时出现错误,则使用者会被错误地认定为共谋者。有两种方法可防止这种错误。
(方法1)
在水印嵌入器中,在对要嵌入的代码进行纠错编码之后,嵌入要嵌入的代码。此外,对水印检测器中检测的代码进行纠错解码。
(方法2)
使分量代码生成部分72-1,72-2,…,72-k’具有允许错误的特性。
本实施例采用方法2。假定抽取的嵌入代码被以随机的概率加入误差。通过利用检测算法3可允许这种随机误差,检测算法3是通过修改先前在section实施例中说明的算法1而得到的。
(检测算法3)
(1)输入检测的代码x∈{0,1}l。现在假定已知l=(n-1)d。
(2)从s=0到n-2执行下述操作。
(2-1)如果加权(x|Bs)>t0被满足,则停止。
(3)从t=n-1到s执行下述操作。
(3-1)如果加权(x|Bt-1)<d-t0被满足,则中断。
(4)输出s和t。
在本算法中,t0是表示检测算法对于误差的容许性的参数。
下面将说明以门限值的形式加入新参数的意义,该门限值用于确定共谋攻击已对嵌入的代码进行了窜改。
如果对于嵌入代码内的还未被共谋攻击窜改的块来说,由于共谋攻击外的任意其它原因产生随机误差,借助下式可得到t0+1位或更多位发生反演的概率。 &epsiv; 1 = &Sigma; d i = t 0 + 1 d C i ( 1 - &epsiv; 0 ) d - i &epsiv; 0 i < e ( t 0 - d&epsiv; 0 ) 2 d - - - - - ( 16 )
同时,如果由于不同于共谋攻击的原因,向已被共谋攻击的块额外增加随机误差,则t0位或更少位的反演概率小于下式。 &epsiv; 2 = &Sigma; d i = 0 t 0 C i ( 1 / 2 ) d < e ( d 2 - t 0 ) 2 d - - - - - ( 17 )
由于随机误差的原因,嵌入代码被错误检测的概率至少等于或小于在一个块中进行错误检测的概率。该概率由下式表示。 &epsiv; 3 = 1 - ( 1 - &epsiv; 1 ) n - 1 ( 1 - &epsiv; 2 ) 2 < ( n - 1 ) &epsiv; 1 + 2 &epsiv; 2
通过如图35中所示那样恰当地选择t0,即使额外地增加了随机误差,也可把检测误差调整到较小。
图34中所示的分量代码译解部分72-i执行基于检测算法3的处理,检测算法3如上所述防止随机误差。
图36表示了共谋者ID计算部分74的结构。共谋者ID计算部分包括等价类别选择部分81,一致性检验部分82和候选ID计算部分83。
等价类别元素选择部分81从k’对等价类别元素编号的每一对中选择一个等价类别元素编号,并将其输送给一致性检验部分82。当等价类别元素选择部分81从一致性检测部分82收到对下一候选者的请求时,等价类别元素选择部分81选择一组新的等价类别元素编号。
一致性检验部分82从一组k’个元素中选择一组(k+l)个元素,并检查该组等价类别元素编号是否真正一致。通过向候选ID计算部分83提供(k+l)个编号内的k个等价类别元素编号,并确定返回的候选ID是否同剩余的等价类别元素编号相抵触,执行该检查。如果确定对于剩余的所有等价类别元素编号都不抵触,则该候选ID被输出为共谋者ID。否则,向一致性检验部分82请求下一候选者。
下面将说明在图36中所示的候选ID计算部分83中根据k个等价类别元素编号重构共谋者ID的方法。例如,如果对等价类别元素编号r0,…,rk-1进行k个平行变换Ai(0),…,Ai(k-1),则存在下述同时全等式。 &Sigma; j = 0 k - 1 u j a i ( v ) , j &equiv; r v mod p - - - - ( 18 )
如果k维矩形矩阵(ai(v),j)是正则的,则存在逆矩阵(a-1 j,i(v))。这样,由下式得到使用者ID。 u j &equiv; &Sigma; v = 0 k - 1 a - 1 j , i ( v ) r v mod p - - - - ( 19 )
一般来说,不是总能满足正则性。如果正则性不被满足,不能唯一地确定使用者ID,而是获得包括共谋者ID在内的一组使用者ID。该组的大小为p的幂。由于不满足正则性的各组分量代码预先已知,可对它们进行安排,以便不被选择用于计算候选共谋者ID。
图36中的一致性检验部分82验证这样获得的候选共谋者ID(即,包括候选共谋者ID在内的一组使用者ID)和另一等价类别元素编号rk,…,rk+l-1之间的一致性。这可通过相对于v=0,…,l-1,证实下一等式被满足来实现。 &Sigma; j = 0 k - 1 u j a j ( k + v ) , j &equiv; r k + v mod p - - - - - - - - ( 20 )
根据本发明,类似于实施例1和2,可获得对共谋攻击的防范性。同样,基于正确的误差率估计,能够产生足够的并且恰当的要嵌入代码,并且即使三个或更多的共谋者参与了共谋攻击,也可正确地译解该代码。下面将对此进行更详细的说明。
首先,假定p是正整数。即,在本实施例中,等同于实施例2中的pi(i=1,2,…,k’)(相对于预定数目n的使用者ID计算的余数值)的(相对于预定数目n的使用者ID计算的整数元素)数目被设定为相同的正整数p。此外,按照u=u0+u1p+…uk-1pk-1,使用者ID u由(u0,u1,…,uk-1)∈(z/pz)k表示。另外设定k’=c(k+1)/2和pk≥n。
如下定义和空间(z/pz)k的平行变换A≡(a0,a1,…,ak-1)相关的等价关系RA
RA((u0,u1,…,uk-1),((u0′,u1′,…,uk-1′))
←→u0′≡u0+a0modp
u1′≡u1+a1modp…,
uk-1′≡uk-1+ak-1modp
这里已知jA-(ja0modp,ja1modp,…,jak-1modp),如果j满足gcd(j,p)=1,则RA和RjA构成等价关系。
可由和U=(z/pz)k的等价关系RA相关的一组系数U/RA定义该组所有使用者。该组系数的单个元素被称为一个等价类别,并且是相互识别的一组元素。通过向包含在所有等价类别中的元素提供序号,通过指定某一序号,可从每个等价类别中选出一个元素。
如果准备k’个(k≥k)平行变换A0,…,AK’-1,则分别为这些平行变换定义系数组Qi=U/RAi(i=0,…,k’-1)。分别为系数组确定如上所述的序号。
接下来,为了构造通过为k’个系数组内的任意k个系数组分别确定序号,可唯一地指定使用者的系数组,假定下述条件。
(条件1)
假定系数组具有相同的大小。假定对于所有Ai=(ai,0,…,ai,k-1)(i=0,…,k’-1)中的所有ai,m(m=0,…,k-1),gcd(ai,m,p)=1或ai,m=0被满足。这样,满足jAi=(0modp,…,0modp)的最小正整数j为p。
(条件2)
对于两个平行变换Ai,Ai’,不存在满足jAi=j’Ai’的任意正整数j<p,j’<p。
如果p是素数,则可如下计数满足上述条件的平行变换的数目。
首先,根据条件1,每个平行变换的分量的值和p互为素数的情况数目由φ(p)=p-1表示。这里,φ是欧拉函数。向其加入为0的情况。随后,每个分量可采取的值的情况数目为p。因此,许可的平行变换的情况的数目为(pk-1)。在该等式中,由于(0,0,…,0)被排除,因此减1。但是在这些值中,每个值具有为其自身的整数倍(1倍,2倍,…(p-1)倍)的那(p-1)个值。于是,(pk-1)/(p-1)是独立作为分别确定不同的系数组的平行变换的那些平行变换的数目。
对于条件2,假定给定的两个平行变换Ai,Ai,不受条件2的限制。即对于正整数j<p,j’<p,假定jAi=j’Ai,被满足。如果p是素数,则意味着它们可被表示为彼此的倍数。因此,根据条件1计数的独立平行变换直接满足条件2。
可如下所述构造该组平行变换。
对于p不是素数的情况来说,可通过选择平行变换,以便满足条件1和2,可实现和上面相同的构造。
通过如上所述借助平行变换构造系数组,并通过为每个系数组的等价类别的元素规定序号,能够构造类似于基于中国余数定理构造的代码的代码。为了使该代码是具有ε误差的c-保密代码,除了定理2之外,还必须满足下述条件。 k &prime; = c 2 ( k + l ) &le; p k - 1 p - 1 - - - - - - - - - - - - - - ( 22 )
这种情况下,所有因数是具有相同大小的p。于是,得到pave=p。
这样,根据本实施例,由等式(21)所示的平行变换确定的代码被生成为分量代码。连接这些分量代码,从而产生要嵌入的代码,该代码是以代码长度短于实施例1和2的代码长度的c-保密代码为基础。在检测该嵌入代码的情况下,除了在实施例2中规定的条件等式k′≥c(k+l)/q和等式(8)的条件之外,等式(22)的条件也被满足。这样,可保持对共谋攻击的防范性。另外,即使三个或更多的共谋者参与窜改,根据误差率的正确估计,也可生成足够的并且恰当的要嵌入代码,并且可正确地译解嵌入代码。
(实施例5)
下面将说明本发明实施例5的水印嵌入器和水印检测器,其中和常规装置相比,将进行更多的恰当编码,以便降低对嵌入有代码的内容的影响。
图37表示了根据本实施例的水印嵌入器的结构。该水印嵌入器包括单一代码生成部分91,代码字选择部分92和水印嵌入部分93。
单一代码是代码字之间具有-1/(n-1)的互相关性的代码,这里代码长度为n-1,代码字的数目为n。可以以n-维Hadamard矩阵为基础构造该代码。即,单一代码是具有在(n-1)维Euclidian空间中,被布置在(n-1)-维单元的顶点的代码字的代码。例如,在三维Euclidian空间的情况下,如图38中所示,位于由(-1,-1,1),(1,-1,-1)和(-1,1,-1)表示的顶点上的代码构成单一代码。
单一代码生成部分91产生这种类型的单一代码的代码字。单一代码生成部分91可以是含有以前产生的代码字的存储器。代码字选择部分92把序号分配给生成的单一代码,并选择和输出对应于给定使用者ID的代码字。单一代码字生成部分91和代码字选择部分可被布置成这样,以便在输入使用者ID之后,产生并输出对应于该使用者ID的单一代码的代码字。
水印嵌入部分93把从代码选择部分92接收的代码字作为水印信息嵌入作为嵌入目标的内容中。在扩展频谱的基础上进行嵌入。
图39表示了根据本实施例的,对应于图37中所示的水印嵌入器的水印检测器的结构。该水印检测器包括单一代码生成部分101,代码字选择部分102,相关性计算部分103和相关性识别部分104。单一代码生成部分101和代码字选择部分102与参考图37说明的水印嵌入器的单一代码生成部分和代码字选择部分完全相同。因此,省略对它们的说明。
相关性计算部分103根据输入的代码嵌入内容和输入的使用者ID,计算相对于由代码字选择部分102选择的代码字的相关值。相关性识别部分104根据相关性计算部分103计算的相关值是否超过某一门限值,确定来自于代码字选择部分102的代码字是否被嵌入代码嵌入内容中。相关性识别部分104输出检测/非检测信号。
这样,在根据本实施例的水印嵌入/检测器中,降低任意一对间的互相关值的单一代码的代码字被用作伪随机数系统,并作为水印信息被嵌入。于是,能够极大地降低错误地确定对应于不同使用者ID的代码字作为水印信息被嵌入的概率。
(实施例6)
下面,将说明本发明第六实施例的水印嵌入器,通过应用根据实施例5的水印嵌入器,该设备配有防范共谋攻击的共谋者确定功能。图40表示了根据本实施例,和共谋者确定功能相关的部分的结构。
为了提供共谋者确定功能,该水印嵌入器包括单一代码生成部分111,代码字选择部分112,相关性计算部分113,使用者ID生成部分114,相关矢量范数计算部分115,水印识别部分116和共谋者确定部分117。单一代码生成部分111,代码字选择部分112和相关性计算部分113和图39中所示的水印嵌入器的单一代码生成部分,代码字选择部分和相关性计算部分基本相同。
使用者ID生成部分114产生以前注册的所有使用者ID。代码字选择部分112选择对应于所有使用者ID的单一代码的代码字,并由相关性计算部分113计算这些代码字和未表示出的代码嵌入内容之间的相关值。
相关矢量范数计算部分115把相对于所有使用者ID计算得到的相关值看作矢量,并计算其范数。相关矢量范数是所有相关值之和。
水印识别部分116根据,例如范数是否已超过了某一门限值,确定水印信息是否已被嵌入。如果由于识别的结果,确定水印信息已被嵌入,共谋者识别部分117确定具有在相关矢量内,表现出最大值的使用者ID的使用者为共谋者。
除了这种类型的方法之外,共谋者确定部分117可获得(n-1)维单元的分量单元内,哪个分量单元具有这样的质心,相关矢量穿过该质心。通过确定具有对应于该分量单元的顶点的使用者ID的使用者为共谋者,可确定多个共谋者。
在第五到第六实施例中,如果N(0,1)的高斯噪声被采用为用作水印信息的伪随机数系统,则借助用于随意旋转坐标的部分122,可随意旋转由单一代码生成部分121生成的单一代码,从而获得代码字。
此外,根据本发明的代码生成器不仅可用于生成要作为水印嵌入数字数据之类的嵌入目标内容中的代码,类似于水印嵌入器,而且还可生成要通过化学方法嵌入由化学材料制成的合成材料中的代码。例如,相对于从实际使用的观点来看,其中的材料结构可被改变的多个部分来说,根据本发明的代码字的位可与之对应,以便结构的这种变化被设定为“1”,结构未发生变化被设定为“0”
对于本领域中的技术人员来说,其它优点和修改将是显而易见的。于是,本发明并不限于这里表示和说明的具体细节和代表性实施例。因此,在不脱离由附加的权利要求和它们的等同物限定的一般性发明原理的精神和范围的情况下,可作出各种修改。

Claims (32)

1.一种用于产生要被嵌入预定内容中的代码的方法,包括下述步骤:
相对于使用该内容的使用者的使用者标识号,采用互为素数的多个整数作为模数,计算多个余数;
产生分别表示在余数计算步骤中得到的余数的多个分量代码;和
连接在分量代码生成步骤中产生的分量代码,从而产生要被嵌入的代码。
2.一种用于产生要被嵌入预定内容中的代码的设备,包括:
相对于使用该内容的使用者的使用者标识号,采用互为素数的多个整数作为模数,计算多个余数的余数计算装置;
产生分别表示在余数计算装置中得到的余数的多个分量代码的分量代码生成装置;和
连接由分量代码生成装置产生的分量代码,从而产生要被嵌入的代码的连接装置。
3.按照权利要求2所述的设备,其中通过采用预定数目的二进制位为一个单元,分量代码生成装置产生均由1和0的连续序列构成的代码作为多个分量代码。
4.一种用于检测被嵌入预定内容中,并连接多个分量代码的嵌入代码的方法,包括下述步骤:
把嵌入的代码分离成多个分量代码;
通过采用预先确定的,并且互为素数的多个整数作为模数,译解分离的每个分量代码,从而获得均包括两个余数的多个余数对;和
根据所述多个余数对,计算对该内容进行共谋攻击的共谋者的使用者标识号,其中
所述多个分量代码是可能具有译解相对于共谋者的使用者标识号的至少一个余数的方法的分量代码。
5.一种用于检测被嵌入预定内容中,并连接多个分量代码的嵌入代码的设备,包括:
把嵌入的代码分离成多个分量代码的代码分离装置;
通过采用预先确定的,并且互为素数的多个整数作为模数,译解分离的每个分量代码,从而获得均包括两个余数的多个余数对的分量代码译解装置;和
根据所述多个余数对,计算对该内容进行共谋攻击的共谋者的使用者标识号的共谋者编号计算装置,其中
所述多个分量代码是可能具有译解相对于共谋者的使用者标识号的至少一个余数的方法的分量代码。
6.按照权利要求5所述的设备,其中通过采用预定数目的二进制位为一个单元,所述多个分量代码均由1和0的连续序列构成。
7.按照权利要求5所述的设备,还包括根据所述多对余数,确定是否存在共谋攻击的共谋确定装置,其中如果共谋者确定装置确定存在共谋攻击,则共谋者标识号计算装置计算共谋者的使用者标识号。
8.按照权利要求5所述的设备,其中共谋者编号计算装置包括:
从输入的k’个余数对的每对中选择一个余数,从而生成一组k’个余数(R1,R2,…,Rk,)的余数选择部分;
按照中国余数定理,根据从由余数选择部分生成的该组k’个余数中选出的互不相同的k个余数(S1,S2,…,Sk),计算共谋者的使用者标识号u的候选者的中国余数定理部分;和
一致性检验部分,它用于从由余数选择部分产生的该组k’个余数中选出k个余数,把该k个余数提供给中国余数定理部分,根据中国余数定理部分计算得到的共谋者的使用者标识号u的候选者,确定共谋者的使用者标识号,并输出共谋者的使用者标识号,其中
一致性检验部分具有从由余数选择部分生成的该组k’个余数中选择k个余数的选择处理功能,确定在由中国余数定理部分计算得到的共谋者的使用者标识号u的候选者和剩余的(k’-k)个余数内的预定数目(1)个余数之间,是否存在Ri=u mod pi(i=i1,i2,…,il)的关系的确定处理功能,以及如果由于确定处理的结果,确定存在该关系,则把该候选者作为共谋者的使用者标识号输出的输出处理功能,
如果不存在该关系,则从余数选择部分生成的该组k’个余数中选择k个余数(S1,S2,…,Sk)的新组合,从而执行确定处理功能,并且如果对于k个余数(S1,S2,…,Sk)的所有组合都不存在该关系,则向余数选择部分请求一组新的k’个余数,并且重复选择处理和确定处理,直到存在该关系时为止。
9.一种用于生成要嵌入的代码的设备,包括:
计算和输入的使用者标识号一致的一组多个整数元素的计算装置;
生成分别对应于整数因数的分量代码,以便在能够表示由计算装置相对于预定数目的使用者标识号计算得到的所有各组整数元素的k’个分量代码内,k’个分量代码的k个组合能够唯一地表示使用者标识号的分量代码生成装置;以及
连接分量代码生成装置产生的分量代码,从而产生要嵌入的代码字的连接装置,其中
k’被确定为c(k+l)/q或更大,这里c是为3或更大的整数,l是正整数,q是当检测嵌入的代码字时,可从每个分量代码中检测出的整数元素的数目。
10.按照权利要求9所述的设备,其中这里pi(i=1,2,…,k’)是相对于预定数目的使用者标识号,由计算装置计算的每个整数因数所能采用的值的数目,ε是当检测要被嵌入的代码时,假定的检测误差率,确定k’以便满足下述条件:
Figure 0012908700041
11.按照权利要求9所述的设备,其中计算装置利用互为素数的多个整数作为模数,计算对应于输入的使用者标识号的一组余数作为该组整数元素。
12.按照权利要求9所述的设备,其中计算装置计算一组多个元素作为对应于输入的使用者标识号的该组整数元素,该组元素属于由平行变换确定的等价类别。
13.按照权利要求9所述的设备,其中计算装置计算一组多个元素作为对应于输入的使用者标识号的该组整数元素,该组元素属于由平行变换确定的等价类别,并且
这里pi(i=1,2,…,k’)是一个相同的正整数p,下述条件被进一步满足: k &prime; = c 2 ( k + l ) &le; p k - 1 p - 1
14.一种用于检测嵌入代码的设备,包括:
用于从嵌入嵌入代码的目标内容中抽取嵌入代码的代码抽取装置,嵌入代码连接对应于输入的使用者标识号分别生成的分量代码,并且是这样的,以致在能够表示相对于预定数目的使用者标识号计算得到的所有各组整数元素的k’个分量代码内,k’个分量代码的k个组合能够唯一地表示使用者标识号;
把抽取的代码分离为分量代码的代码分离装置;
译解分离后的每个分量代码的分量代码译解装置;以及
根据每个分量代码的译解结果,计算共谋者的使用者标识号的共谋者编号计算装置,其中
k’被确定为c(k+l)/q或更大,这里c是为3或更大的整数,l是正整数,q是当检测嵌入的代码时,可从每个分量代码中检测出的整数元素的数目。
15.按照权利要求14所述的设备,这里pi(i=1,2,…,k’)是相对于预定数目的使用者标识号,由计算装置计算的每个整数因数所能采用的值的数目,ε是当检测要被嵌入的代码时,假定的检测误差率,确定k’以便满足下述条件:
Figure 0012908700052
16.按照权利要求14所述的设备,其中该组整数元素是利用互为素数的许多整数作为模数,对应于使用者标识号计算得到的一组余数。
17.按照权利要求14所述的设备,其中该组整数元素是对应于使用者标识号计算得到的,并且属于由平行变换确定的等价类别的一组多个元素。
18.按照权利要求14所述的设备,其中该组整数元素是对应于使用者标识号计算得到的,并且属于由平行变换确定的等价类别的一组多个元素,并且
这里pi(i=1,2,…,k’)是一个相同的正整数p,条件: k &prime; = c 2 ( k + l ) &le; p k - 1 p - 1
被进一步满足。
19.一种用于检测嵌入代码的设备,包括:
用于从嵌入嵌入代码的目标内容中抽取嵌入代码的代码抽取装置,嵌入代码连接对应于输入的使用者标识号分别生成的分量代码,并且是这样的,以致在能够表示相对于预定数目的使用者标识号计算得到的所有各组整数元素的k’个分量代码内,k’个分量代码的k个组合能够唯一地表示使用者标识号;
把抽取的代码分离为分量代码的代码分离装置;
译解分离后的每个分量代码的分量代码译解装置;以及
根据每个分量代码的译解结果,计算共谋者的使用者标识号的共谋者编号计算装置,其中
分量代码译解装置包括把每个分量代码分离成块的块分离部分,计数每个块中,为“1”的二进制位的数目的计数部分,确定计数部分得到的计数值是否超过第一门限值的第一确定部分,确定计数值是否小于第二门限值的第二确定部分,选择由第一确定部分确定为超过第一门限值的最小块的最小位置选择部分,以及选择被确定为小于第二门限值的最大块的最大位置选择部分,从而输出最小和最大位置选择部分的选择结果,作为译解结果。
20.按照权利要求2所述的设备,还包括响应关于使用者标识号的分配请求,从多个候选使用者标识号中,选择被错误检测为共谋者的使用者标识号的概率最小的一个候选使用者标识号,并把选择的使用者标识号分配给确定该使用者的使用者确定数据的使用者标识号分配装置。
21.按照权利要求20所述的设备,其中使用者标识号分配装置一个接一个地顺序输入多个候选使用者标识号,确定每个候选使用者标识号被错误地检测为共谋者的使用者标识号的概率是高还是低,并且当确定输入的候选使用者标识号被错误检测为共谋者的使用者标识号的概率低时,把该候选使用者标识号分配给使用者确定数据。
22.按照权利要求20所述的设备,其中使用者标识号分配装置包括存储被错误检测为共谋者的使用者标识号的概率较低的多个使用者标识号的存储装置,并从存储在该存储装置中的使用者标识号中选择和读取要分配给使用者确定数据的使用者标识号。
23.按照权利要求5所述的设备,其中共谋者编号计算装置根据所述多对余数,产生至少一个有可能是共谋者的使用者标识号的候选使用者标识号,在候选使用者标识号内,选择被错误检测为共谋者的使用者标识号的概率较小的至少一个使用者标识号,并确定选择的使用者标识号为共谋者的使用者标识号。
24.按照权利要求5所述的设备,其中共谋者编号计算装置根据所述多对余数,产生有可能为共谋者的使用者标识号的多个候选使用者标识号,并确定这些候选使用者标识号被错误检测为共谋者的使用者标识号的概率是高还是低,并确定被错误检测为共谋者的使用者标识号的概率低的所有使用者标识号为共谋者的使用者标识号。
25.按照权利要求23所述的设备,其中共谋者编号计算装置在所有余数对内获得满足对于所有使用者标识号,采用多个整数作为模数的余数的全等式的多个余数,并产生使该数目等于或大于预定门限值的使用者标识号作为共谋者的候选使用者标识号。
26.按照权利要求24所述的设备,其中共谋者编号计算装置在所有余数对内获得满足对于所有使用者标识号,采用多个整数作为模数的余数的全等式的多个余数,并产生使该数目等于或大于预定门限值的使用者标识号作为共谋者的候选使用者标识号。
27.按照权利要求5所述的设备,其中共谋者编号计算装置包括存储被错误检测为共谋者的使用者标识号的概率较低的多个使用者标识号的存储装置,并在该存储装置中存储的使用者标识号内,确定和根据所述多对余数产生的,有可能为共谋者的使用者标识号的至少一个候选使用者标识号相一致的使用者标识号。
28.一种把由按照权利要求2所述的设备产生的要嵌入代码作为水印信息嵌入内容中的水印嵌入设备。
29.一种把含有使用者标识号信息的水印信息嵌入预定内容中的水印嵌入设备,包括:
对应于输入的使用者标识号,输出从构成单一代码的多个代码字中选择的一个代码字的装置;
把输出的代码字作为水印信息嵌入作为嵌入目标的内容中的装置。
30.一种从预定内容中检测含有使用者标识号信息的水印信息的水印检测设备,包括:
对应于输入的使用者标识号,输出从构成单一代码的多个代码字中选择的一个代码字的装置;
获得输出的代码字和内容之间的相关值的装置;以及
根据相关值,确定是否存在对应于内容中的输入的使用者标识号的代码字的装置。
31.一种从预定内容中检测含有使用者标识号信息的水印信息的水印检测设备,包括:
输出多个代码字的装置,所述多个代码字分别对应于先前注册的多个使用者标识号,并构成单一代码;
获得每个输出代码字和内容之间的相关值的装置;以及
把获得的每个相关值看作矢量,根据计算的范数,确定是否存在水印信息,并且如果确定存在水印信息,则根据相关值确定共谋者的装置。
32.一种存储内容的存储介质,由按照权利要求2所述的设备产生的要嵌入代码被嵌入该内容中。
CNB001290878A 1999-09-30 2000-09-29 代码生成方法、检测方法及其设备、水印嵌入器和检测器 Expired - Fee Related CN1160940C (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP280652/1999 1999-09-30
JP28065299 1999-09-30
JP016285/2000 2000-01-25
JP2000016285 2000-01-25
JP263872/2000 2000-08-31
JP2000263872A JP3735521B2 (ja) 1999-09-30 2000-08-31 埋め込み符号生成方法及び装置、埋め込み符号検出方法及び装置並びに電子透かし埋め込み装置

Publications (2)

Publication Number Publication Date
CN1291041A true CN1291041A (zh) 2001-04-11
CN1160940C CN1160940C (zh) 2004-08-04

Family

ID=27336759

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB001290878A Expired - Fee Related CN1160940C (zh) 1999-09-30 2000-09-29 代码生成方法、检测方法及其设备、水印嵌入器和检测器

Country Status (6)

Country Link
US (3) US6901515B1 (zh)
EP (3) EP1619872A3 (zh)
JP (1) JP3735521B2 (zh)
KR (1) KR100356903B1 (zh)
CN (1) CN1160940C (zh)
TW (1) TW494671B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100384119C (zh) * 2003-03-31 2008-04-23 索尼英国有限公司 数字音频处理
CN1835591B (zh) * 2005-03-18 2010-09-08 汤姆森许可贸易公司 编码和解码载有净荷数据的符号的方法和设备
CN102227745A (zh) * 2008-09-26 2011-10-26 汤姆森特许公司 对水印加注的数字内容的反共谋鉴别码构建内部码的方法
CN102301390A (zh) * 2008-09-26 2011-12-28 汤姆森特许公司 抗共谋的水印生成方法
CN103891282A (zh) * 2011-03-29 2014-06-25 耶德托公司 加水印的内容分段
CN106991423A (zh) * 2016-01-21 2017-07-28 腾讯科技(深圳)有限公司 识别规格图片中是否包含水印的方法及装置
CN112147419A (zh) * 2016-03-16 2020-12-29 英特尔公司 验证用于互连测量的解嵌器的技术

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754364B1 (en) * 1999-10-28 2004-06-22 Microsoft Corporation Methods and systems for fingerprinting digital data
US6859217B2 (en) * 2000-07-19 2005-02-22 Microsoft Corporation System and method to display and manage data within hierarchies and polyarchies of information
US6957230B2 (en) * 2000-11-30 2005-10-18 Microsoft Corporation Dynamically generating multiple hierarchies of inter-object relationships based on object attribute values
KR100375822B1 (ko) * 2000-12-18 2003-03-15 한국전자통신연구원 디지털 오디오의 워터마크 삽입/추출 장치 및 방법
UY26500A1 (es) * 2000-12-22 2001-01-31 Carlos Manuel Lopez Vazquez Método para insertar datos ocultos en archivos digitales con poligonales y procedimientos de detección
US9520993B2 (en) 2001-01-26 2016-12-13 International Business Machines Corporation Renewable traitor tracing
JP2002232685A (ja) * 2001-01-31 2002-08-16 Canon Inc 電子透かし処理装置、情報処理装置、ディジタルコンテンツ配布システム、電子透かし挿入方法、及び記憶媒体
US7047413B2 (en) * 2001-04-23 2006-05-16 Microsoft Corporation Collusion-resistant watermarking and fingerprinting
KR20030027062A (ko) 2001-06-21 2003-04-03 코닌클리케 필립스 일렉트로닉스 엔.브이. 모션 이미지 신호에서 워터마크의 삽입 및 검출
US20040247119A1 (en) * 2001-10-17 2004-12-09 Lemma Aweke Negash System for encoding auxiliary information within a signal
US6944626B2 (en) * 2001-11-26 2005-09-13 Microsoft Corp. Dynamically generated schema representing multiple hierarchies of inter-object relationships
US6952704B2 (en) 2001-11-26 2005-10-04 Microsoft Corporation Extending a directory schema independent of schema modification
US7389335B2 (en) 2001-11-26 2008-06-17 Microsoft Corporation Workflow management based on an integrated view of resource identity
GB2383218A (en) * 2001-12-13 2003-06-18 Sony Uk Ltd Watermarking using cyclic shifting of code words
JP3822501B2 (ja) * 2002-01-28 2006-09-20 株式会社東芝 識別情報復号装置及び識別情報復号方法、識別情報埋込装置及び識別情報埋込方法、並びにプログラム
JP3782369B2 (ja) * 2002-04-05 2006-06-07 株式会社日立製作所 ストレージ装置、コンテンツ配信システム及びコンテンツの配信方法
US7389421B2 (en) * 2002-04-18 2008-06-17 Microsoft Corporation Countermeasure against estimation-based attacks of spread-spectrum watermarks
JP3754403B2 (ja) * 2002-07-26 2006-03-15 株式会社東芝 電子透かし検出方法及び装置
JP3976183B2 (ja) * 2002-08-14 2007-09-12 インターナショナル・ビジネス・マシーンズ・コーポレーション コンテンツ受信装置、ネットワークシステム及びプログラム
JP3749884B2 (ja) 2002-08-28 2006-03-01 株式会社東芝 電子透かし埋め込み装置、電子透かし解析装置、電子透かし埋め込み方法、電子透かし解析方法及びプログラム
US7702125B2 (en) * 2003-02-05 2010-04-20 Digimarc Corporation Watermarking systems and methods
US8812852B2 (en) * 2003-03-19 2014-08-19 Sony Corporation Method and system for marking digital content
JP2006524956A (ja) * 2003-03-28 2006-11-02 トムソン ライセンシング メタデータを用いてスレートを自動生成するシステムおよび方法
JP3873047B2 (ja) * 2003-09-30 2007-01-24 株式会社東芝 識別情報埋込装置、識別情報解析装置、識別情報埋込方法、識別情報解析方法及びプログラム
US7643637B2 (en) * 2004-02-10 2010-01-05 Microsoft Corporation Efficient code constructions via cryptographic assumptions
US7382905B2 (en) * 2004-02-11 2008-06-03 Microsoft Corporation Desynchronized fingerprinting method and system for digital multimedia data
KR100611989B1 (ko) * 2004-08-31 2006-08-11 삼성전자주식회사 핑거프린트 코드 생성 방법 및 장치
KR100652009B1 (ko) * 2004-11-24 2006-12-01 한국전자통신연구원 핑거 프린팅 코드를 이용한 공모 구매자 식별 방법
JP4519678B2 (ja) * 2005-02-21 2010-08-04 株式会社東芝 電子透かし検出方法及び装置、電子透かし埋め込み方法及び装置
JP4118279B2 (ja) * 2005-03-11 2008-07-16 株式会社東芝 電子透かし検出装置及びその方法
JP4124783B2 (ja) * 2005-08-30 2008-07-23 富士通株式会社 情報埋め込み装置および情報埋め込みプログラム
US7630497B2 (en) * 2005-09-19 2009-12-08 International Business Machines Corporation System and method for assigning sequence keys to a media player to enable hybrid traitor tracing
US7711114B2 (en) * 2005-09-19 2010-05-04 International Business Machines Corporation System and method for assigning sequence keys to a media player to enable flexible traitor tracing
US8176568B2 (en) 2005-12-30 2012-05-08 International Business Machines Corporation Tracing traitor coalitions and preventing piracy of digital content in a broadcast encryption system
US7739323B2 (en) * 2006-06-20 2010-06-15 International Business Machines Corporation Systems, methods and computer program products for providing a combined moduli-9 and 3 residue generator
JP2008171131A (ja) * 2007-01-10 2008-07-24 Nippon Hoso Kyokai <Nhk> フィンガープリント検出装置及びそのプログラム
US8788848B2 (en) 2007-03-22 2014-07-22 Microsoft Corporation Optical DNA
US8837721B2 (en) * 2007-03-22 2014-09-16 Microsoft Corporation Optical DNA based on non-deterministic errors
BRPI0721733A2 (pt) * 2007-06-14 2013-02-13 Thomson Licensing mÉtodo e aparelho para definir um limite de detecÇço dada uma probabilidade falsa desejada
US7975313B2 (en) * 2007-08-14 2011-07-05 International Business Machines Corporation System and method for tracing Tardos fingerprint codes
US9729316B2 (en) * 2008-02-27 2017-08-08 International Business Machines Corporation Unified broadcast encryption system
US8122501B2 (en) * 2008-06-20 2012-02-21 International Business Machines Corporation Traitor detection for multilevel assignment
US8108928B2 (en) * 2008-06-20 2012-01-31 International Business Machines Corporation Adaptive traitor tracing
US8422684B2 (en) * 2008-08-15 2013-04-16 International Business Machines Corporation Security classes in a media key block
US8571209B2 (en) 2009-01-19 2013-10-29 International Business Machines Recording keys in a broadcast-encryption-based system
US9135948B2 (en) * 2009-07-03 2015-09-15 Microsoft Technology Licensing, Llc Optical medium with added descriptor to reduce counterfeiting
US9195810B2 (en) * 2010-12-28 2015-11-24 Microsoft Technology Licensing, Llc Identifying factorable code
JP5793865B2 (ja) * 2010-12-28 2015-10-14 富士通株式会社 電子透かし埋め込み装置、電子透かし埋め込み用コンピュータプログラム及び電子透かし検出装置ならびに電子透かし検出用コンピュータプログラム
US9578030B2 (en) 2011-02-07 2017-02-21 Tufin Software Technologies Ltd. Method and system for analyzing security ruleset by generating a logically equivalent security rule-set
US8806569B2 (en) * 2011-02-07 2014-08-12 Tufin Software Technologies Ltd. Method and system for analyzing security ruleset by generating a logically equivalent security rule-set
CN102522089B (zh) * 2011-12-02 2013-03-27 华中科技大学 用于g.723.1语音编码器的信息嵌入和提取方法
US9042554B2 (en) 2012-11-30 2015-05-26 The Nielsen Company (Us), Llc Methods, apparatus, and articles of manufacture to encode auxilary data into text data and methods, apparatus, and articles of manufacture to obtain encoded data from text data
US9087459B2 (en) 2012-11-30 2015-07-21 The Nielsen Company (Us), Llc Methods, apparatus, and articles of manufacture to encode auxilary data into text data and methods, apparatus, and articles of manufacture to obtain encoded data from text data
US9990478B2 (en) * 2012-11-30 2018-06-05 The Nielsen Company (Us), Llc Methods, apparatus, and articles of manufacture to encode auxiliary data into relational database keys and methods, apparatus, and articles of manufacture to obtain encoded data from relational database keys
US9137010B2 (en) 2014-01-13 2015-09-15 Cisco Technology Inc. Watermark with data integrity verification
US9208352B2 (en) 2014-02-10 2015-12-08 Cisco Technology Inc. LFSR watermark system
US10700862B2 (en) * 2017-09-08 2020-06-30 Fujitsu Limited Reduced data set digest
US11599605B1 (en) * 2021-11-09 2023-03-07 Hidden Pixels, LLC System and method for dynamic data injection
CN115187443B (zh) * 2022-07-05 2023-04-07 海南大学 基于空域残差特征融合的水印嵌入、检测方法及装置
CN117473470B (zh) * 2023-12-28 2024-05-07 深圳昂楷科技有限公司 动态水印生成方法及系统、水印溯源方法
CN117495711B (zh) * 2023-12-29 2024-03-29 深圳智能思创科技有限公司 图像标记去除方法、装置、设备及存储介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2700430B1 (fr) * 1992-12-30 1995-02-10 Jacques Stern Procédé d'authentification d'au moins un dispositif d'identification par un dispositif de vérification et dispositif pour sa mise en Óoeuvre.
JP3493522B2 (ja) * 1993-10-20 2004-02-03 ミノルタ株式会社 画像処理装置
EP0766468B1 (en) 1995-09-28 2006-05-03 Nec Corporation Method and system for inserting a spread spectrum watermark into multimedia data
US5664018A (en) 1996-03-12 1997-09-02 Leighton; Frank Thomson Watermarking process resilient to collusion attacks
WO1997034391A1 (en) 1996-03-12 1997-09-18 Frank Thomson Leighton Watermarking process resilient to collusion attacks
US5949796A (en) * 1996-06-19 1999-09-07 Kumar; Derek D. In-band on-channel digital broadcasting method and system
US5915027A (en) 1996-11-05 1999-06-22 Nec Research Institute Digital watermarking
US6005727A (en) * 1997-01-28 1999-12-21 Cirrus Logic, Inc. Servo decoder for decoding an error correcting servo code recorded on a disc storage medium
JPH11288217A (ja) 1998-04-02 1999-10-19 Canon Inc 電子透かしの符号生成方法、符号復元方法、およびその装置、ディジタル情報配付システム、記録媒体
JP2000003129A (ja) 1998-04-17 2000-01-07 Digital Vision Laboratories:Kk 電子透かし埋め込み装置
JP3102417B2 (ja) * 1998-10-30 2000-10-23 富士ゼロックス株式会社 画像処理装置および画像処理方法
US6834344B1 (en) * 1999-09-17 2004-12-21 International Business Machines Corporation Semi-fragile watermarks

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100384119C (zh) * 2003-03-31 2008-04-23 索尼英国有限公司 数字音频处理
CN1835591B (zh) * 2005-03-18 2010-09-08 汤姆森许可贸易公司 编码和解码载有净荷数据的符号的方法和设备
CN102227745A (zh) * 2008-09-26 2011-10-26 汤姆森特许公司 对水印加注的数字内容的反共谋鉴别码构建内部码的方法
CN102301390A (zh) * 2008-09-26 2011-12-28 汤姆森特许公司 抗共谋的水印生成方法
CN102227745B (zh) * 2008-09-26 2014-05-28 汤姆森特许公司 对水印加注的数字内容的反共谋鉴别码构建内部码的方法
CN103891282A (zh) * 2011-03-29 2014-06-25 耶德托公司 加水印的内容分段
CN103891282B (zh) * 2011-03-29 2017-05-17 爱迪德技术有限公司 加水印的内容分段
CN106991423A (zh) * 2016-01-21 2017-07-28 腾讯科技(深圳)有限公司 识别规格图片中是否包含水印的方法及装置
US10504202B2 (en) 2016-01-21 2019-12-10 Tencent Technology (Shenzhen) Company Limited Method and device for identifying whether standard picture contains watermark
CN112147419A (zh) * 2016-03-16 2020-12-29 英特尔公司 验证用于互连测量的解嵌器的技术
CN112147419B (zh) * 2016-03-16 2024-04-23 英特尔公司 验证用于互连测量的解嵌器的技术

Also Published As

Publication number Publication date
JP3735521B2 (ja) 2006-01-18
TW494671B (en) 2002-07-11
KR20010050788A (ko) 2001-06-25
US20040153941A1 (en) 2004-08-05
US7082537B2 (en) 2006-07-25
US6901515B1 (en) 2005-05-31
EP1624359A3 (en) 2006-03-01
KR100356903B1 (ko) 2002-10-18
EP1089550A3 (en) 2003-04-16
EP1089550A2 (en) 2001-04-04
EP1624359A2 (en) 2006-02-08
JP2001285623A (ja) 2001-10-12
US7624273B2 (en) 2009-11-24
CN1160940C (zh) 2004-08-04
EP1619872A2 (en) 2006-01-25
EP1619872A3 (en) 2006-03-15
US20040143742A1 (en) 2004-07-22

Similar Documents

Publication Publication Date Title
CN1160940C (zh) 代码生成方法、检测方法及其设备、水印嵌入器和检测器
CN1207894C (zh) 数据隐藏和抽取方法、系统和电路
CN1305296C (zh) 信息处理装置及其控制方法、计算机程序和存储介质
CN1222893C (zh) 电子水印方法和系统
CN1194317C (zh) 通信装置和通信方法
CN1269126C (zh) 数据处理装置及数据记录媒体
CN1753356A (zh) 信息处理方法、解密方法、信息处理装置和计算机程序
CN1118768C (zh) 埋入和提取数字信息的装置和方法
CN101053200A (zh) 信息处理设备、信息存储媒体、内容管理系统、数据处理方法、以及计算机程序
CN1159912C (zh) 电子信息分发系统
CN101056392A (zh) 一种数字水印嵌入方法及其装置
CN1665185A (zh) 内容提供系统、用户系统、跟踪系统、装置及方法
CN1774886A (zh) 信息处理方法,解密处理方法,信息处理设备和计算机程序
CN1977250A (zh) 进行加密或解密的计算机系统和计算机程序
CN1285191C (zh) 公共密钥签字的方法和系统
CN1726669A (zh) 数据分割方法和使用异或运算的装置
CN1303065A (zh) 数据库管理装置和加密/解密系统
CN1620756A (zh) 滤波装置、接收装置、发送装置、扩频调制装置、伪随机数序列的输出装置、滤波方法、接收方法、发送方法、扩频调制方法、伪随机数序列的输出方法及程序
CN1447567A (zh) 图像传输装置、图像传输系统以及通信装置
CN1959770A (zh) 加密方法、密文解码方法、加密器、密文解码器和通信系统
CN1930625A (zh) 内容播放设备
CN1645937A (zh) 给数字视频加水印的方案
CN1606351A (zh) 用于数字视频加水印的色彩选择方案
CN1910850A (zh) 事件顺序证明方法
CN101080725A (zh) 管理服务器装置、内容再现装置及记录介质

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20040804

Termination date: 20091029