CN1207894C - 数据隐藏和抽取方法、系统和电路 - Google Patents

数据隐藏和抽取方法、系统和电路 Download PDF

Info

Publication number
CN1207894C
CN1207894C CNB021571724A CN02157172A CN1207894C CN 1207894 C CN1207894 C CN 1207894C CN B021571724 A CNB021571724 A CN B021571724A CN 02157172 A CN02157172 A CN 02157172A CN 1207894 C CN1207894 C CN 1207894C
Authority
CN
China
Prior art keywords
data
message
value
characteristic value
block
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.)
Expired - Lifetime
Application number
CNB021571724A
Other languages
English (en)
Other versions
CN1474591A (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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1474591A publication Critical patent/CN1474591A/zh
Application granted granted Critical
Publication of CN1207894C publication Critical patent/CN1207894C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • 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
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32203Spatial or amplitude domain methods
    • 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/387Composing, repositioning or otherwise geometrically modifying originals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C5/00Ciphering apparatus or methods not provided for in the preceding groups, e.g. involving the concealment or deformation of graphic data such as designs, written or printed messages
    • 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
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32203Spatial or amplitude domain methods
    • H04N1/32208Spatial or amplitude domain methods involving changing the magnitude of selected pixels, e.g. overlay of information or super-imposition
    • 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
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32203Spatial or amplitude domain methods
    • H04N1/32251Spatial or amplitude domain methods in multilevel data, e.g. greyscale or continuous tone data
    • 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
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32309Methods relating to embedding, encoding, decoding, detection or retrieval operations in colour image data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • H04N21/23892Multiplex stream processing, e.g. multiplex stream encrypting involving embedding information at multiplex stream level, e.g. embedding a watermark at packet level
    • 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/0051Embedding of the watermark in the spatial domain
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0061Embedding of the watermark in each block of the image, e.g. segmented watermarking
    • 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
    • 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

Abstract

本发明涉及一种用于在媒体数据中隐藏数据的数据隐藏方法、系统和集成电路,该方法包括以下步骤:(a)标识其中隐藏有消息数据的媒体数据内的一个数据块;(b)确定所述标识数据块的特征值;和(c)处理所述数据块的特征值,以便依据转换规则,隐藏该消息数据,其中转换规则把需要隐藏的数据的内容同特征值的参考值与所述数据块的特征值之间的差值联系起来。

Description

数据隐藏和抽取方法、系统和电路
本申请是在1997年2月13日在中国专利局递交的97190937.7号专利的分案申请。
技术领域
本发明涉及在媒体数据中隐藏消息数据以及抽取隐藏数据的方法、系统和电路。
背景技术
由于面向多媒体社会的发展,因此,在Internet或诸如CD-ROM、DVD-ROM(或DVD-RAM)、DVC等记录介质上分布有大量数字化的图象和声音信息。由于任何人都可以轻易地全面复制以上数字化信息(该信息不易降质),所以其不正当使用是个问题。为了防止他人不正当地复制媒体数据(如图象或声音数据),隐藏技术正在受到关注,该技术在原始媒体数据中隐藏诸如作者标志一类的信息。如果数字化的图象数据被非法复制,通过检查副本中隐藏的标志就可以确定其来源,从而确定其是否被非法复制。该种技术被称为“数据隐藏”。
图1是一个半色调图象,该图象包括显示器上显示的数字化数据。如图1(b)所示,将诸如“看护人”、“河”、“幼儿园学生”以及“鸟”这一类的照片说明(消息)隐藏在媒体数据(即图1(a)中的数字化图象)中。通过将照片中的图象划分为小点,并确定各点的亮度值和颜色值,就可以得到媒体数据。此时,故意改变图象的原始数值。数值的细小变化不会显著地扭曲图象,用户也不会注意到。可以利用以上特性在原始图象中隐藏完全不同的信息(消息数据)。隐藏在图象中的消息数据可以包括任意信息,例如,可以为网格模式、尺状图形或图象的制作人标志。利用特定程序进行处理,就可以抽取媒体数据中隐藏的消息数据。因此,根据抽取的消息数据,就可以确定是否修改了原始媒体数据。
将图1(b)所示的消息隐藏在该图象上一个有意义的区域附近。例如,将消息“鸟”隐藏在该鸟在该图象中出现的区域附近,并作为标题。为了在图象中隐藏诸如所有者信息一类的消息,最好将该消息散布在该图象上。这是由于当局部隐藏的消息较大时,可能降低该区域的质量。此外,如果剪去部分图象,如果消息是散布在整个图象上的,仍然可以抽取该消息。因此,如何确定在何处隐藏消息是很重要的。根据状态序列S确定其位置。即,状态序列中的各元素与各消息有关,并且将该消息隐藏在根据该元素确定的相应位置。
根据常规数据隐藏方法,利用随机数序列确定状态序列S。图2利用示意图说明根据常规方法散布在图象上的消息数据的布局。将图1(a)所示的图象划分为I个图象区域,分别用0到9进行编号。随后,将消息数据表示为消息数组(m),一个数组元素被描述为一个数组值m[n](0≤n≤9)。各数组值与分划消息数据有关。将各消息隐藏在图象中的某个位置,其中该位置是根据状态序列S中的元素确定的。以下等式确定位置p0,在位置p0隐藏第零个消息m[0]。
[等式1]
状态值S0=初始值(常量)
位置p0=S0 mod I
以上等式表示,在给定常量作为状态值S0的初值之后,状态值S0对I(图象的区域数目)的余数就是p0。位置p0的值为0到(I-1)之间的任意整数。把整数值和图象区域的顺序联系起来,将消息m[0]隐藏到第i个图象区域。根据以下等式确定第一消息和后继消息m[n]的位置pn
[等式2]
Sn=Rnd(Sn-1)
pn=Sn mod I
以上等式表示利用前一状态值Sn-1作为随机数启动源产生伪随机数数组,利用该值作为下一状态值Sn。状态值Sn对I的余数就是位置pn。将消息m[n]隐藏到与该值相对应的图象区域。
只有知道状态值S0(初值)的用户,才能读取隐藏消息。若抽取了该消息,就根据初值计算状态S0之后的所有状态值(S1,...,S9)。从而可以确定与状态值相对应的位置,并抽取隐藏在这些位置的消息。
正如在图2所示,由于状态值Sn(该值用于确定第n个消息m[n]在图象上的位置)仅依赖于状态值Sn-1,因此,当确定了状态值Sn-1之后,就可以确定状态值Sn。同样,状态值Sn-1仅依赖于状态值Sn-2。通过递归重复以上过程,就能确定状态序列S中的所有元素(S0,S1,S2,...,S9)。因此,状态序列S中的所有元素仅依赖于最初给定的作为初值的常量。所以,一旦确定了初值,就能确定状态序列S,以便确定散布在图象上的消息位置,抽取其隐藏内容。
尽管努力保密其初值,如果公开了初值,或者他人知道了该初值,他人就可以利用该值轻易确定消息位置,删除该消息数据或者在第一数据上写入不同的消息数据。常规方法很难有效阻止他人为了使原始材料不被发现而删除原始标志,或者为了将他或她作为作者而在原始标志上写入不同标志。
发明内容
因此,本发明的目的在于提出一种新方法,该方法用于在媒体数据中散布并隐藏消息数据。本发明的另一目的在于提供一种数据隐藏方法,该方法能够阻止他人修改消息数据。
本发明第一方面提供一种数据隐藏方法,该方法在消息数据中,隐藏有关所述消息数据的参考位置和所述媒体数据的信息,并且其中有关所述参考位置的信息被隐藏在所述消息数据中,使得即使部分所述消息数据作为部分消息数据被剪切,也可以检测原始图象数据的参考位置或基于所述参考位置的相对位置。
本发明第二方面提供一种用于在媒体数据中隐藏数据的数据隐藏方法,该方法包括以下步骤:
(a)标识其中隐藏有消息数据的媒体数据内的一个数据块;
(b)确定所述标识数据块的特征值;和
(c)处理所述数据块的特征值,以便依据转换规则,隐藏该消息数据,其中转换规则把需要隐藏的数据的内容同特征值的参考值与所述数据块的特征值之间的差值联系起来。
本发明第三方面提供一种用于在媒体数据中隐藏数据的数据隐藏方法,该方法包括以下步骤:
(a)确定媒体数据内的一对数据块,该媒体数据包括第一数据块和第二数据块;
(b)比较所述确定的特征值,处理构成所述对的所述数据块的特征值,以便隐藏该消息数据;
(c)比较所述确定的特征值之间的差值,并且依据转换规则,处理构成所述对的所述各数据块的特征值,以便在消息数据中隐藏部分数据;
(d)重复步骤(a)到步骤(c),直至隐藏了所有消息数据。
本发明第四方面提供一种用于在媒体数据中隐藏数据的数据隐藏方法,该方法包括以下步骤:
(a)确定媒体数据内的一对数据块,该媒体数据包括第一数据块和第二数据块;和
(b)确定构成所述配对的所述各块的特征值;
(c)根据转换规则,交换构成所述配对的所述块的特征值,以便隐藏消息数据,其中转换规则确定数据块之间的特征值的差值。
本发明第五方面提供一种用于从隐藏有消息数据的媒体数据中抽取消息数据的数据抽取方法,该方法包括以下步骤:
(a)标识其中隐藏有消息数据的媒体数据内的数据块中的一个;
(b)确定所述标识数据块的特征值;和
(c)根据所述数据块的特征值,依据转换规则,抽取该消息数据,其中转换规则把需要抽取的数据的内容同特征值的参考值与所述数据块的特征值之间的差值联系起来。
本发明第六方面提供一种用于从隐藏有消息数据的媒体数据中抽取消息数据的数据抽取方法,该方法包括以下步骤:
(a)标识其中隐藏有消息数据的媒体数据内的一对数据块;
(b)确定构成所述配对的所述数据块的特征值;和
(c)根据所述相关数据块的特征值,依据转换规则,抽取隐藏数据,其中转换规则把需要抽取的数据的内容同构成所述配对的所述数据块之间的特征值的差值联系起来。
本发明第七方面提供一种用于从隐藏有消息数据的媒体数据中抽取消息数据的数据抽取系统,该系统包括:
一个转换装置,该转换器将由模拟信号构成的包含隐藏消息数据的消息数据转换为数字信号,随后输出该数字信号;
一个确定装置,该装置确定隐藏有消息数据的媒体数据中的数据块中的一个;
一个特征值计算装置,该装置决定由所述确定装置确定的所述数据块的特征值;
一个存储装置,该装置存储转换规则,转换规则把需要抽取的数据内容同特征值的参考值与所述数据块的特征值之间的差值联系起来;和
一个抽取装置,该装置依据所述数据块的特征值,参照转换规则,抽取消息数据。
本发明第八方面提供一种用于从隐藏有消息数据的媒体数据中抽取消息数据的半导体集成电路,该电路包括:
用于确定由输入信号构成的媒体数据中某个数据块的特征值的设备,其中已经确定该数据块中隐藏有消息数据;和
一个抽取装置,该装置根据所述数据块的特征值,参照转换规则,抽取隐藏的消息数据,其中转换规则把需要抽取的数据内容同特征值的参考值与所述数据块的特征值之间的差值联系起来。
附图说明
图1是一半色调图象,该图象包括显示器上显示的数字化的数据;
图2利用示意图说明根据常规方法散布在图象上的消息数据的布局;
图3说明一媒体数组和一消息数组;
图4利用示意图说明隐藏处理中采用的媒体数组值之间的关系;
图5是一示意图,说明将要隐藏的对象;
图6是一流程图,说明在媒体数据中隐藏消息数据的过程;
图7说明隐藏中状态值Sj-1和Sj之间的关系;
图8是一流程图,说明从隐藏数据中抽取消息数据的过程;
图9说明抽取中状态值Sj和状态值Sj-1之间的关系;
图10说明确定生成的消息数组值是否是消息的开始;
图11是一概念图,说明由于修改而生成的错误状态序列S的状态;
图12说明采用PBC的数据隐藏和抽取方法;
图13说明采用单一象素作为象素块,采用PBC的隐藏方法;
图14说明在原始图象中隐藏消息和位置信息的方法;
图15说明采用同心圆弧作为位置信息的情况;
图16说明在采用同心圆弧作为位置信息的情况下,参考位置B的标识;
图17说明采用同心圆弧作为位置信息的隐藏和抽取方法;
图18是一广播系统框图;
图19是一框图,说明Internet中的一发送器和一接收机;
图20是一框图,说明一服务器和一客户;
图21是指纹和水印系统的框图;
图22是一数据抽取系统的框图;和
图23是在单片电路上设置数据抽取系统的半导体集成电路的框图。
具体实施方式
A.数据定义
首先,定义以下数组和序列。
(1)媒体数组:M
(2)消息数组:m
(3)状态序列:S
(4)位置序列:p
(1)媒体数组:M
媒体数据包括图象和声音数据。利用媒体数组M定义媒体数据(其中嵌有消息数据),并且一个媒体数组元素M[i]为以下表示的媒体数组的一个数组元素。
[等式3]
M:{M0,M1,...,Mi,...,MI-1}或M[i] 0≤i≤I-1 I:媒体数据的长度
例如,如果媒体数据为图1(a)所示的图象,则如图3所示,将该图象划分为I个图象区域,第一个区域具有第零个媒体数组值M[0]。第i个图象区域具有媒体数组值M[i],最后一个图象区域具有媒体数组值M[I-1]。各媒体数组值中的数据为其相应图象区域的图象信息。对于单色屏幕而言,图象信息为密度,而对于彩色屏幕而言,该信息为亮度。如果图象区域的数目等于象素数目,则媒体数组值M[i]为第i个象素的象素值。如果图象区域包括多个象素(例如,3×3个象素),则图象信息为相应象素值。如果媒体数据为声音,则可以将媒体数组值M[i]定义为在时刻(i)的振幅值。假设可以将各数组值M[i]中的数据表示为一个BM字节的整数。
(2)消息数组(m)
例如,嵌入到媒体数据中的消息数据包括:有关图象制作人的信息,有关产品号、日期和地点的管理信息以及有关的复制许可信息。利用消息数组(m)定义消息数据,并且一个消息数组值m[j]为如下表示的消息数组的一个数组元素:
[等式4]
m:{m0,m1,...,mi,...,mJ-1}或m[j]    0≤i≤J-1 J:消息数据的长度
例如,如果消息数据为图3所示的包含10个字母数字字符“DATAHIDING”的消息数据,则第j个字符与消息数组值m[j-1]有关,因此,消息数组值m[j-1]中具有标识相应字符的数据。假设用Bm字节(1字节用于字母数字字符)的整数来表示各数组值m[j]中的数据。此时,消息数据的长度J为10。
(3)状态序列S
定义状态序列S,以便确定经过隐藏处理的位置(媒体数组值),一个状态值Sj为如下表示的序列的一个元素。
[等式5]
S:{S0,S1,...,SJ}或Sj   0≤j≤J   J:消息数据的长度
用于产生状态序列S的算法是本实施方式的重要因素之一。应该注意到:状态序列S的元素数目J为(J+1),该值比消息数组(m)的元素数目J大1。
(4)位置序列(p)
借助以下等式,利用位置序列(p)确定经过隐藏处理的位置。一个位置pj为如下表示的位置序列(p)的一个元素。
[等式6]
p:{p0,p1,...,pJ}或pj   0≤j≤J   J:消息数据的长度
pj=Sj mod I
与状态序列S一样,位置序列(p)具有(J+1)元素。位置序列的元素的位置pj是如下定义的:具有相同下标值(j)的状态值(即Sj)对I的余数。因此,位置pj的值为0到(I-1)之间的整数,与该值对应的图象区域经受隐藏处理。由于(I)为一常数,即图象区域数,所以一旦建立了状态值Sj,就可以唯一确定位置pj的值。因此,经受隐藏处理的位置事实上是由状态序列S确定的。
B.隐藏算法
根据本发明的数据隐藏算法是与抽取隐藏数据的算法紧密联系的。即,如果企图抽取隐藏数据的第三方具有特定信息,则他或她就可以检查以上消息。此时,重要的是能够有效阻止他人在抽取消息期间修改消息。鉴于以上考虑,本发明根据以下三特征隐藏数据。
(1)根据消息特征确定状态值S0
(2)根据消息和图象数据确定状态序列S
(3)需要隐藏的数据
(1)根据消息特征确定状态值S0
状态序列的第一元素的状态值S0为:初始函数fINI对消息数组所有元素(m[0],m[1],...,m[9])的异或的输出。根据该值利用以下等式确定状态值S0和位置p0
[等式7]
S0=fINI(m[0]XOR m[1]XOR m[2]XOR...XOR M[n-1])
p0=S0 mod I
常规方法将初始状态值S0作为一个特定常量,而并不考虑嵌入的消息内容。然而,根据以上实施方式,该元素是根据消息内容(即,所有的消息数组值)确定的。图4利用示意图说明了消息数据在图象上的分布。如该图所示,根据初始状态值S0确定初始位置确定p0
根据消息数组(m)的特征确定初始状态值S0是本算法的特征之一。这不仅使得初始状态值的确定更加复杂,而且能够有效阻止他人在消息上非法写入数据。同时,将初始函数fINI用作抽取操作期间确定消息结束的函数。这样阻止了他人写入除原始消息之外的不同消息。
(2)根据消息和图象数据确定状态序列S
根据状态值S0确定下一状态值S1。状态值S1由以下等式表示。
[等式8]
S1=SK(S0 XOR m[0]XOR M[p0])
即,下一状态值S1为函数SK对以下输入的输出:当前状态值S0、由状态值S0指示的媒体数组值M[p0]以及消息数组值m[0]的异或。媒体数组值M[p0]是根据状态值S0计算的位置p0处的图象区域。以上结论,对状态值S2和后继状态值同样正确,可以利用以下等式概括表示以上关系。
[等式9]
Sj+1=SK(Sj XOR m[j]XOR M[pj])
函数SK为一个用于确定下一状态值的位置转换函数,接收以下输入:当前状态值、消息数组值和媒体数组值的异或。因此,通过递归执行以上等式,顺序确定状态值。由于必须确定(J+1)个状态值,所以最后一个状态值为SJ。如果消息数组具有图3所示的10个元素,则产生11个状态值。通过利用以上方法确定状态序列S,就可以标识经过隐藏处理的所有图象区域。图4说明经过隐藏处理的媒体数组值之间的关系。
根据常规技术的位置序列仅仅依赖于初值,然而根据本算法的位置序列是通过一并考虑消息数组值和媒体数组值确定的。如果他人企图在原始消息上写入不同消息,则由于会产生不同的状态序列,所以重写是非常困难的。同样,如果他人企图修改图象数据,也是非常困难的。
(3)需要隐藏的数据
图5是一示意图,说明将要隐藏的对象。假设已经标识了需要隐藏的位置序列(p)。首先,数据被隐藏在位置p1及其后继位置,而在位置p0并不隐藏任何数据。具体而言,必须隐藏媒体数组值和消息数组值的异或结果。
首先,直接从位置p0取出媒体数组值M[0]。然后,确定消息数组值m[0]与得到的媒体数组值M[0]的异或,并将其结果隐藏在位置p1。该隐藏操作改变了媒体数组值M[p1]的内容。此外,随着在位置p2进行的处理,确定由先前处理改变的内容,即消息数组值m[1]与媒体数组值M[1]的异或,并将其结果隐藏在位置p2
重复以上隐藏处理直至位置p10,就完成了数据隐藏。将先前处理改变的内容,即消息数组值m[9]与媒体数组值M[9]的异或,隐藏在位置p10。由于并未在位置p0隐藏数据,所以状态序列S和位置序列(p)中的元素数目都大于消息数组中的元素数目。
根据本算法,如果要抽取隐藏消息,就要以相反次序(从最后一个消息数组值m[9]开始),递归执行抽取操作。根据本算法,消息数组和媒体数组的异或结果的隐藏是与消息抽取过程密切相关的。在“消息数据抽取”部分说明其细节。此外,实际上可以采用不同的算法隐藏数据。在第二实施方式中,说明了采用PBC(象素块编码)作为隐藏数据算法的示例。
C.第一实施方式
结合图6所示的过程,具体说明第一实施方式。图6是一流程图,说明在媒体数据中隐藏消息数据的过程。在以下说明中,请参看图4或图5中的相应部分。
计算初始状态值(步骤100)
为了隐藏数据,必须确定位置序列(p)。为了确定位置序列,必须首先确定初始位置p[0]。利用初始函数fINI(该函数使用初始状态值S0作为输入)的输出确定初始位置p[0],并且利用以下等式确定变量S0
[等式10]
S0=fINI(m[0],m[1],m[2],...,M[J-1])
  =H1(m[0]//m[1]//m[2]//...//M[J-1])
在以上等式中,H1为散列函数。此外,算符“//”表示将消息数组的所有元素连接起来。例如,具体运算可以为数组元素内数据的异或。然而,如果采用异或,则计算结果不能反映所有消息数组值的次序。即,图3所示的消息“DATAHIDING”与消息“TADAHIDING”具有相同值。因此,采用称为CRC(循环冗余校验法)的方法,以便反映次序关系。以上算法是计算校验和的算法之一,其产生的结果依赖于数据数组的内容和次序。
对于字节长度为Bm字节(数组值m[i])的输入,散列函数H1产生具有不同字节长度K(散列值)的输出。由于该函数为单向函数,因此,当H(x)=y时,实际上不可能从(y)推算出(x)。
利用K字节散列值作为数据隐藏的初始状态值S0。由于该散列值被直接用作数据隐藏的初值,所以必须保证不同的输出是由不同的输入产生的。因此,散列值没有其他特殊意义。重要的是,其运算结果为标识该数组特征的输出值,即,根据所有的数组元素内容唯一确定散列值,该值依赖于所有数组的内容。
如果消息数据为图3所示的“DATAHIDING”,则根据标识所有字母数字字符数据(数组值m[i]中的数据)的异或,散列函数H1的输出就是状态值S0。状态值S0对I(图象区域数目)的余数就是位置p0。这样,就能得到状态值S0和位置p0作为初始状态值。
象素值抽取(步骤200)
确定在步骤100得到的位置值p0所对应的图象区域内的图象信息。例如,如果p0=i,则该信息为媒体数组值M[i]。采用BM字节的整数表示该数据。
下一状态计算(步骤300)
除在步骤100确定的状态值S0之外,根据媒体数组值M[p0]和状态值S0标识的消息数组值m[0],确定下一状态值S1。可以利用以下等式确定状态值S1
[等式11]
S1=SK(S0 XOR m[0]XOR M[p0])
(XOR为异或运算)
即,确定状态值S0、消息数组值m[0]以及媒体数组值M[p0]的异或,并将其结果输入到函数SK。然后,函数SK的输出就是状态值S1。该函数SK被称为位置转换函数,并且将在媒体数据中隐藏消息数据的位置转换函数SK特别称为隐藏位置转换函数。由于位置转换函数SK与抽取隐藏数据的抽取位置转换函数PK紧密联系,所以在以下抽取位置转换函数的说明中也详细说明位置转换函数SK。
通过执行相似过程,确定状态值S2及其后继状态值。概括地说,可以采用以下等式表示第j个状态值Sj和位置pj
[等式12]
Sj=SK(Sj-1 XOR m[j-1]XOR M[pj-1])
pj=Sj mod I
(SK:隐藏位置转换函数)
应该再次注意到:位置pj依赖于消息数据和媒体数据的内容,也依赖于先前状态值Sj-1
作为隐藏位置转换函数SK的输入的状态值Sj-1、消息数组值m[j-1]以及媒体数组值M[pj-1]分别具有不同的字节长度:K、Bm和BM。当然可以计算具有不同字节长度的所有输入的异或,但是,最好在将所有输入转换为相同字节长度之后,再计算其异或。以下两个散列函数H2和H3用于转换所有的输入,以便使所有输入的字节长度均为状态值的K字节长度。
H2:根据Bm字节的整数,产生K字节散列值的散列函数
H3:根据BM字节的整数,产生Bm字节散列值的散列函数
即,对消息数组值m[j-1]而言,利用散列函数H2,根据数组值内的Bm字节的整数,产生一个K字节的散列值。此外,对于媒体数组值M[pj-1]而言,利用散列函数H3将位长为BM字节的整数,转换为Bm字节的整数。散列函数H2还用于产生一个K字节的散列值。上述等式7包括以该方式利用散列函数转换输入的情况。
消息嵌入(步骤400)
确定消息数组值m[j-1]和媒体数组值M[pj-1]的异或,得到的数据就是隐藏数组值Mm[j-1]。将隐藏数组值Mm[j-1]中的数据隐藏在步骤300确定的位置pj中。隐藏数组值Mm[j-1]为隐藏数组Mm的一个数组元素。
[等式13]
Mm:{Mm[0],Mm [1],...,Mm[j],...,Mm[J-1]}
Mm[j]=m[j]  XOR M[pj]
应该理解的是:以上隐藏数据不是消息数组值m[j],而是由消息数组值m[j]与媒体数组值M[pj]的异或产生的隐藏数组值Mm[j]。利用函数X,将隐藏数组值Mm[j]隐藏到位置pj。这就改变了媒体数组值M[pj]中的数据。将其内容改变的媒体数组值M[pj]称为M′[pj]。即,对于函数X的特定内容,该算法在其特定位置隐藏以上隐藏数组,在第二实施方式中,以示例方式说明PBC。
确定(步骤500)
确定(j)的值是否等于J(该值比消息数组中元素的数目大1)。如果j=J,则隐藏了所有的消息数组值。如果(j)小于J,则将(j)加1,并且返回到步骤200。随后,递归执行步骤200到步骤400,直至(j)等于J。该过程使得产生分别包含(J+1)个元素的状态序列S和位置序列。
[等式14]
状态序列S:{S0,S1,S2,...,SJ}
位置序列P:{p0,p1,p2,...,pJ}
由于数据隐藏,所以根据以下等式改变媒体数组M的所有元素。
[等式15]
(隐藏前的媒体数组)
M:{M[0],...,M[p0],...,M[p1],...,M[pI-1]}
(隐藏后的媒体数组)
M′:{M′[0],...,M′[p0],...,M′[p1],...,M′[pI-1]={M[0],...,M[p0],...,M′[p1],...,M′[pI-1]
M′表示隐藏后的媒体数组,M′[i]表示该媒体数组值的内容在隐藏之前已经改变。即,媒体数组值M′表示仅仅改变了原始消息数组M(由状态序列S标识)的J个数组元素。由于与状态值S0相应的数组元素M[p0]无需改变数据,所以M′[p0]等于M[p0]。
图7说明隐藏中状态值Sj-1和状态值Sj之间的关系。通过计算状态值Sj-1和隐藏数组Mm[j-1](M′[pj-1]XOR m[j-1])的异或,并将该结果输入到位置转换函数SK,就可以确定状态值Sj。在前一状态的隐藏期间,就已经改变了媒体数组值M′[pj-1]的内容。此外,利用函数X,将隐藏数组Mm[pj-1]隐藏在位置pj。这就改变了位置M[pj]的数据。
状态值抽取(步骤600)
通过抽取以下两条消息,就完成了消息隐藏。
(1)隐藏后的媒体数组M′
(2)最终状态值SJ
在步骤400,通过在媒体数据内隐藏数据最终得到媒体数组M′。最终状态值SJ是最后计算的第J个状态值。如下所述,当抽取消息数据时,需要以上信息。当抽取隐藏消息时,抽取人无需知道第(J-1)个状态值之前的状态值S0到SJ-1,他或她只要知道第J个状态值即可。这是由于通过反向转换最终状态值,就可以确定以上状态值。当然,抽取人必须具备下述所需信息。
(消息数据抽取)
为他人提供以下三条信息,以便抽取消息数据。
(1)隐藏后的媒体数组M′
(2)最终状态值SJ
(3)抽取位置转换函数PK
信息(1)和信息(2)是嵌入消息数据期间最终产生的。以下结合隐藏位置转换函数,说明信息(3)中的抽取位置转换函数PK。
a.隐藏位置转换函数SK,抽取位置转换函数PK
如同在隐藏消息中定义产生下一状态值的隐藏位置转换函数SK一样,在抽取消息中定义产生前一状态值的抽取位置转换函数PK。如以下等式所示,隐藏位置转换函数SK和抽取位置转换函数PK互为逆函数。
[等式16]
PK(SK(x))=x
SK(PK(x))=x
因此,通过利用隐藏位置转换函数SK转换消息数组(m),随后利用其逆函数PK进一步转换该结果,就可以抽取原始消息数组(m)。
满足以上等式的各种函数都是可能的。事实上,为了防止他人利用已配备的抽取位置转换函数PK来复制隐藏位置转换函数SK,最好采用公开加密法中的加密函数和解密函数。根据公开密钥法,存在多种算法,可以选择任一种算法。例如,以下说明的典型RSA方法。RSA方法的算法如下所述。
1.选择两个大素数p和q,计算n=p×q。
2.计算r=lcm(p-1,q-1)并选择(d),使得gcd(d,r)=1。
3.确定(e),其中(e)满足e×d=l(mod r)和0<e<r。
4.公开(e)作为公开密钥,同时公开(n)。保密(d)作为秘密密钥。
5.为了加密消息(m),计算(c),使得me=c(mod n)。该(c)成为加密消息。
6.为了解密加密消息,计算(m),使得cd=m(mod n)。该(m)成为解密消息。
通过将以上算法应用到本实施方式,就得到以下隐藏函数SK和抽取函数PK。
[等式17]
SK(m)=xd(mod n)
PK(m)=xe(mod n)
即,制作图象的制作人具有密钥(d),并利用该密钥得到隐藏函数SK。为了嵌入消息数据,利用函数SK产生位置状态序列S,函数SK将数据嵌入到媒体数据中。具有以上分布数据的第三人,利用公开密钥(e)得到抽取函数PK。为了读取该消息,第三人利用函数PK产生位置状态序列S。在公开密钥方法中,向他人公开公开密钥,但是只有制作图象的作者才具有秘密密钥,从而他人不能知道图象的内容。因此,他们不能知道隐藏位置转换函数的内容。由于从公开密钥中计算出秘密密钥需要大量计算,因此他人几乎不可能知道隐藏位置转换函数SK。以上方法能够有效阻止他人修改原始数据。
以下简要说明异或的重要性质,该性质用于解释消息抽取过程。异或运算具有以下性质。如果确定了A与B的异或,随后又确定了该结果与B的异或,就能再现A。
[等式18]
(A XOR B)XOR B=A
(抽取算法)
图8是一个流程图,说明抽取嵌入消息数据的过程。
初始状态值计算(步骤110)
首先,根据以下等式,从最终状态值SJ(已提供给了抽取人)中确定位置pJ,其中在位置pJ隐藏有消息数组值m[J-1]。
[等式19]
pJ=SJ mod I
隐藏值抽取(步骤120)
媒体数组M′[pJ]具有隐藏数组值Mm[J-1],该值被隐藏在位置pJ的原始图象信息中。数组Mm[J-1]为媒体数组值M′[pJ-1]和消息数组值m[J-1]的异或。随后定义函数X′,以便从媒体数组值M′[pJ]中抽取隐藏数组值Mm[J-1]。在第二实施方式中,说明以下等式中函数X′特定内容的示例。
[等式20]
Mm[J-1]=函数X′(M′[pJ])
前一状态计算(步骤130)
接着,通过计算状态值SJ和隐藏数组值Mm[J-1](由函数X′确定)的异或,确定前一状态值SJ-1。应该注意到:此时利用了以上异或运算的数学性质。
[等式21]
PK(SJ)XOR X′(M′[pJ])
=(SJ-1 XOR Mm[J-1])XOR Mm[J-1]
=SJ-1
即,由于抽取位置转换函数PK是隐藏位置转换函数SK的逆函数,所以可以使用该函数从状态值SJ、状态值SJ-1与隐藏数组值Mm[J-1]的异或结果中进行再现。确定了以上结果与隐藏数组值Mm[J-1](在步骤120确定该值)的异或,就能确定前一状态值SJ-1
消息计算(步骤140)
一旦确定了状态SJ-1,就可以标识相应的媒体数组值M′[pJ-1]。随后,可以利用以下等式抽取消息数组值m[J-1]。如果隐藏了图3所示的消息,该步骤就可以抽取尾部字母“G”。
[等式22]
M′[pJ-1]XOR Mm[J-1]
=M′[pJ-1]XOR(M′[pJ-1]XOR m[J-1])
=m[J-1]
利用下标值(j)(1≤j≤J),可以将状态值的抽取或消息数组值的抽取概括为以下等式。
[等式23]
Sj-1
PK(Sj)XOR X′(M′[pj])
=(Sj-1 XOR Mm[j-1])XOR Mm[j-1]
=Sj-1
m[j-1]:
M′[pj-1] XOR Mm[j-1]
=M′[pj-1]XOR(M′[pj-1]XOR m[j-1])
=m[j-1]
图9表示以上等式标识的数据关系。该图表示了抽取中状态值Sj和状态值Sj-1之间的关系。将该图与图7相比,显示出抽取过程是隐藏过程的逆过程。
确定(步骤150)
每当产生消息数组值m[j]时,就确定该值是否为消息数组的开始。如果是这样的话,就抽取了消息数组(m)的所有元素。由于以相反次序(即从最后元素开始)抽取了该消息数组(m),所以对于图3的示例而言,以次序“GNIDIHATAD”抽取该消息。在步骤160,颠倒以上消息次序,以便产生完整消息。如果消息数组值m[j]并不是消息数组的开始,就递归执行步骤120到步骤140,直至步骤140的确定结果变为肯定。
确定消息数组(m)的某个元素是否为该消息数组的开始等价于,确定产生的状态值Sj是否满足散列函数H1的输出。将已经产生的消息数组(m)的所有元素的异或输入到散列函数H1。如果以相反次序产生的状态值Sj与散列函数H1的输出满足以下等式所示的关系,则j的值为0(参见等式10)。
[等式24]
Sj=f(m[J-1]XOR m[J-2]XOR...XOR m[j]=S0
仅当j=0时,以上等式才成立,而对于其他情况(j≠0),以上等式并不成立。每当以相反次序产生最终状态值Sj时,就把该值与基于所有抽取消息数组值的散列函数的输出进行比较。图10说明了确定生成的消息数组值是否为该消息的开始。首先,确定最终状态值SJ的前一状态值SJ-1,以及消息数组值mJ-1。输入消息数组值mJ-1时,得到的初始函数(f)的输出F与状态值SJ-1不匹配。如果确定了状态值S0,则该值与初始函数的输出匹配,并能够确定该消息数组值就是消息的开始。因此,由于以下性质,本算法在防止他人修改消息方面是非常有用的。
(1)防止重写不同信息
根据常规技术,所产生的位置序列S仅仅依赖于初始提供的常量值,而并不考虑该消息的内容。仅仅知道该常量,他人就可以删除该消息或者在原始消息上重写不同消息。然而,根据本算法,状态序列的产生还依赖于消息的内容,不同的消息产生不同的位置序列。由于隐藏位置是基于该位置序列的,所以不可能将具有不同内容的不同消息隐藏在存在原始消息的位置。这对媒体数据也是同样正确的。
(2)防止隐藏不同信息
本算法检查等式24所示的条件,以便确定结束抽取。仅当某个抽取消息的内容与原始消息的内容相同,并且该抽取消息的长度与消息数据(J)的长度相同时,才满足该条件。不满足该要求,就没有完成抽取。因此,如果企图根据最终状态值SJ,以相反次序隐藏除原始消息之外的数据,则永远不会满足等式24的要求,并且计算将会永久进行下去。因此,由于没有完成该计算,所以企图在原始消息出现位置之外的位置隐藏消息是不可能的。
如图10和图11所示,如果他人修改了消息数组值,则根据修改消息将产生不同的状态数组S′。这样就能防止他人删除或重写位于状态状态序列S′标识的位置以外位置的原始消息。图11所示的通过修改产生的状态序列S′永远不能确定已经完成了抽取。事实上,由于可以防止写入不同消息,所以能够有效防止他人修改消息。
D.第二实施方式
本节说明象素块编码(以下称为“PBC”),象素块编码是在媒体数据中嵌入需要隐藏的数据和抽取隐藏数据的一种方法。借助PBC,根据以下说明的转换规则,就可以进行数据隐藏和数据抽取。
(基本算法)
通常,两个相邻象素的象素值的主要特征为较高的相关性。因此,即使在相邻象素之间交换象素值,该图象也不会明显降质。考虑到这一性质,本算法将至少具有一个象素的图象区域定义为一个象素块,并根据特定的转换规则,通过有意交换相邻象素块的特征值来隐藏一比特数据。即,通过交换相邻象素块的特征值来表示数据。此外,根据以上转换规则确定的抽取规则,抽取数据。
根据以下转换规则,通过交换两个相邻象素块的特征值(例如,亮度)来表示位信息。
位接通<1>:象素块(PB1)特征值大于另一象素块(PB2)的特征值
位断开<0>:象素块(PB1)特征值小于另一象素块(PB2)的特征值
此外,根据以下抽取规则,通过比较两个相邻象素块的特征值(例如,亮度)来抽取位信息。
象素块(PB1)特征值大于另一象素块(PB2)的特征值:位接通<1>
象素块(PB1)特征值小于另一象素块(PB2)的特征值:位断开<0>
图12说明了利用PBC进行数据隐藏和数据抽取。可以将象素块PB1和象素块PB2定义为多个象素(例如,3×3象素)的集合,或者将一个象素定义为一个象素块。由于相邻的象素块具有较高的相关性,所以交换其位置不会使该图象明显降质(图12a)。
假设原始图象中的象素块的位置为图12(b)所示的位置。同时假设两个象素块的特征值的比较结果为:PB1的特征值大于PB2的特征值。如果在原始图象中隐藏有数据“1”,则象素块的特征值就满足转换规则申数据“1”的条件,因此,无需交换象素块的特征值。当抽取数据时,抽取数据“1”(这是由于抽取规则确定如果PB1的特征值较大就抽取数据“1”)。
另一方面,如果在原始图象中隐藏有数据“0”,就交换原始图象中象素块的特征值(这是由于这些特征值之间的关系并不满足数据“0”的条件)。然而,并不能明显辨别以上交换。在抽取期间,根据这些象素块的特征值之间的关系,抽取数据“0”。
这样,PBC从图象中选择足够的象素块,以便隐藏需要隐藏的信息。随后,将某个所选象素块和相邻象素块配对,以便产生一个配对数组。从该数组的开始着手,顺序隐藏以上配对。
可以把该数组和第一实施方式中的状态序列S联系起来。例如,把一个象素块和第一实施方式中媒体数组M的数组元素(m)联系起来。将隐藏期间顺序产生的每个数组元素(状态值Sj)和相邻媒体数组值进行配对。随后,对得到的配对进行以上处理。同样可以根据特定随机数启动源产生的伪随机数序列进行确定。
在抽取期间,扫描与隐藏块数组相同的块数组。根据抽取规则(通过确定各对是表示“位接通”还是表示“位断开”),通过1比特接1比特收集,就能抽取全部图象。如果配对象素块的特征值相同,就跳过该配对(如同隐藏操作一样)。通过保密以上块数组或数组产生方法,就可以对他人隐藏以上隐藏信息。
在PBC中,最好根据图象质量和抽取精度确定嵌入位置。即,如果配对象素块之间的特征值差别较大,则交换操作将会降低图象质量。为了遏止图象质量的下降,最好提供第一阈值(一上限值),这样,如果特征值之差大于等于该阈值,就不在该配对中嵌入任何比特(位)。
此外,如果特征值之差足够小,则交换操作基本上不会降低图象的质量。然而,此时,噪声可能颠倒特征值的幅度,因此,不能抽取嵌入位。因此,为了遏止抽取精度下降,最好提供第二阈值(一下限值),这样,如果特征值之差小于等于该阈值,就不在该配对中嵌入任何比特。
跳过与以上情况对应的配对,而不进行任何处理。随后将需要隐藏的位信息传送到下一配对。
(块特征值)
象素块的主要特征值和次要特征值被用作特征值。主要特征值是直接象素值参数,如象素块的亮度和色度。次要特征值为表示统计特性的值,如以上参数的平均值和方差,并且通过分析主要特征值得到。另外,该特征值可以为某一数组(该主组包含多个象素值)与一特定数组(掩码)或一特定元素值(通过频率转换得到)的运算结果。两个相邻象素块之间的主要特征值具有较高的相关性。然而,两个互不相邻的独立的象素块之间的次要特征值具有较高的相关性。因此,应该注意到:无需限制进行PBC处理的象素块为相邻象素块。以下把亮度值(即主要特征值)和方差值(即次要特征值)称作象素块特征值的示例。
首先,说明采用亮度值作为象素块的特征值。如果一个单象素与一象素块有关,就可以直接使用该象素的亮度值作为该块的特征值。在自然图象中,相邻象素通常具有较高的相关性,因此,即使交换象素,图象质量也不会明显下降。图13说明当象素块仅包含单象素时,执行PBC后的隐藏处理。
接着,说明采用方差值作为象素块的特征值。当象素块包含n×m个象素时,如果在象素块之间交换象素的亮度值,就会明显降低图象的质量,例如,图象中会出现条纹图。因此,最好不要直接把象素值作为象素块的特征值。从而,想到利用象素亮度的方差值作为特征值。
众所周知,当把象素块的亮度值特性划分为平均值(h)和方差值(d)时,如果交换相邻象素块的方差值(d)而保留其平均值(h),并不会明显降低图象的质量。因此,根据以上性质,采用方差值(d)作为象素块的特征值,并且根据转换规则交换相邻象素块的特征值,就可以隐藏数据。
如图12(c)所示,假设象素块PB1的平均值为h1,方差值为d1,而象素块PB2的平均值为h2,方差值为d2。如果位“1”被隐藏,由于d1<d2,所以并不满足该位的条件。因此,仅仅交换两个象素块的方差值(d)。这等价于在两个象素块之间交换分布的峰值,而保持其平均值(h)。
(可以隐藏的信息量)
在PBC中,利用图象的尺寸和象素块的尺寸,可以隐藏的信息量的上限定义如下。
(图象尺寸)/(象素块尺寸)/2[比特]
例如,如果把1×1的象素块应用于384×256的图象,则可以隐藏的信息量的上限为6KB。然而,由于并非所有象素块都可用于隐藏(例如,在相邻象素块具有相同特征值的情况下),所以实际上限要小一些。此外,尽管存在隐藏的可能性,由于为了防止降低图象的质量往往要取消交换处理,所以该值还会进一步减少。
(图象保存和降质)
众所周知,图象上的两个相邻象素(其中该图象的边缘部分在该象素之间延伸)具有大不相同的亮度值。因此,交换这样两个象素将断开以上边缘,导致图象质量的明显下降。因此,为了防止图象质量下降,为需要交换的亮度值设置某一阈值。事实上,如果超过了该阈值,就跳过该配对而并不交换其特征值。可以根据从该图象数据计算出的方差值或该象素块周围的局部方差值,确定以上阈值。
如果把某个象素块的方差值(该方差值接近0)与另一个象素块的方差值(该方差值远大于0)进行互换,就会明显改变小象素块,导致图象质量的明显下降。因此,将较小的方差值与以上阈值进行比较,如果该方差值小于阈值,就取消交换操作。
(PBC的强度)
由于比较了相邻象素块的特征值,并且隐藏了与特征值交换有关的数据,所以只要保留象素块之间的相对关系,就能够正确检索隐藏信息。因此,根据特征值之差,即使进行色度调整或色度校正,也应该能够保留隐藏信息。此外,在上述方差值交换方法中,如果象素块的尺寸为8×8,即使经过JPEG压缩处理,也能够正确抽取隐藏信息。实验证明:即使执行“有损压缩”以便将文件尺寸降至5%,也能够保留90%的信息。即使经过D/A和A/D转换(如打印/扫描操作),以上方差值交换方法也能有效保留隐藏信息。
(PBC的扩充)
应该注意到:以上PBC方法仅仅是示意性的,还可以想到许多其他方法。正如在上述实施方式中明显看到的那样,在数据嵌入和数据抽取中,根据有关特征值之差的规则处理象素块的特征值是非常重要的。从这个意义上讲,除了按上述方式交换特征值之外,可以对某一特征值增加一特定值或者从另一特征值中减去该特定值(或者同时执行两种处理)。此时,该特定值可以为一常量,也可以根据需要处理的象素块的条件进行改变。此外,作为PBC的扩充,可以定义一条用于联系特征值符号和二进制信息的规则,以便根据该规则嵌入或抽取数据。
本发明的实质在于:根据一条有意义的规则,利用某个参考值(例如,图象数据中的一个相邻象素块)来处理另一象素块。即,通过引用转换规则处理相邻象素块之一的特征值实现数据隐藏,其中该转换规则把隐藏数据的内容和特征值的参考值与该象素块的特征值之间的差值联系起来。从这种意义上讲,根据本发明,只要该参考值明确并且能够处理特征值即可,而并不要求该参考值为图象数据中的一个特定区域(一个象素块)。因此,可以从除图象数据之外的数据中获得该参考值。例如,将具有特定值(参考值)的固定掩码模式用作特征值处理的参考值,其中固定掩码模式的尺寸与象素块的尺寸相同。此时,在隐藏操作期间,以掩码模式中的参考值为基准,处理特定象素块的特征值,而在抽取操作期间,根据与参考值的差值,抽取数据。
E.第三实施方式
本节说明在参考位置隐藏信息的方法。以上数据隐藏技术选择原始图象中的象素块进行处理,并从经过处理的象素块中抽取消息。因此,对于抽取消息而言,有关象素块的位置信息是必不可少的。利用图象中的某个区域(在第一实施方式中,原始图象的左上角)作为基准,相对确定象素块的位置。然而,如果他人修改该图象(例如,剪切部分图象),就不能够确定该图象的参考位置,从而不能抽取消息。再次参照图3,如果剪切了部分原始图象(该图中虚线所围区域),就不能根据剩余的屏幕图象确定原始参考位置(消息数组中第0个数组元素的位置M[0])。
数据隐藏的重要要求为:他人不能够轻易删除隐藏信息、即使该数据被他人蓄意修改或者该数据经过有损图象压缩处理(如JPEG)也能够正确抽取隐藏信息。因此,如图14所示,除消息之外,最好也将用于确定参考位置的信息隐藏在原始图象中。隐藏这种位置信息使得从修改图象或压缩图象中正确抽取消息成为可能。因此,也将用于确定媒体数据参考位置的信息隐藏在消息数据中。以上有关参考位置的信息被隐藏在整个消息数据中。如果剪切掉部分消息数据,则以上信息使得从被剪切的部分消息数据中,检测该消息数据的参考位置或者检测相对于该参考位置的任一位置成为可能。例如,如下所述,可以将围绕参考位置的同心圆弧隐藏在整个图象中。
(采用同心圆弧作为位置信息)
将图15所示的同心圆弧用作位置信息。该同心圆弧是以原始图象的左上角(参考位置)为基础,以特定间隔绘制的。为了从已剪切的部分图象中正确抽取参考位置,假设被剪切的部分图象至少包含有一条圆弧。因此,假设以上条件,设置同心圆弧之间的间隔。
利用圆的性质(即,如果采用另一个圆周上的一点作为圆心,以该圆周的半径作为半径绘制一个圆,则所绘制的圆周将通过第二个圆的圆心),就能够确定以上参考位置。图16说明在使用同心圆弧作为位置信息的情况下,参考位置B的确定。首先,确定被剪切的部分图象内的任意三点(a1,a2,a3),其中(a1,a2,a3)分别出现在三条同心圆弧(c1,c2,c3)上。然后,从各点绘制具有不同半径(r1,r2,r3,r4,...)的圆。此时,圆弧相交数最大的圆弧交点就是参考位置B。在数字图象中,由于象素是以网格形式分散排列的,因此,通过按上述方法绘制圆弧,就能够非常精确地确定参考位置。
对于远离左上角(参考位置)的圆弧(该圆弧具有较大直径)而言,以该部分图象包含两个或两个以上圆弧的方式,降低圆弧之间的间隔。随着圆弧的直径越来越大,该圆弧将包含越来越多线性元素,引起参考位置计算值中的较大差别。降低间隔就能够降低该差别,这是由于该部分图象包含许多圆弧。此外,通过在左上角和右上角设置参考位置(即,同心圆弧的圆心),就可以根据两个圆心来确定原始图象的尺寸。
(利用同心圆弧进行隐藏)
图17说明了采用同心圆弧作为参考位置的隐藏和抽取方法。在图17(a)中,采用第二实施方式中说明的方法在原始图象中隐藏消息,随后在该点隐藏同心圆弧作为位置信息。例如,将位于同心圆弧上的象素的LBP设置为“1”。采用LBP是由于改变该值几乎不会在该图象中引起明显视觉变化。此外,在图17(b)中,在原始图象中隐藏位置信息,随后在该点隐藏消息。
(利用同心圆弧进行抽取)
创建一个二维表决数组T。通过综合可能剪切的部分图象的最大尺寸确定该数组的大小。例如,如果该数组的宽度为(2m-1),则该数组能够处理的部分图象最大为原始图象的1/m。表决数组T中的各个元素表示参考位置B内的一个候选项,该元素的值表示该候选项的表决数。两个坐标按以下方式关联:部分图象位于表决数组的中心。
扫描以上部分图象,一旦遇到LBP为“1”的点,就以该点为基准,绘制表决数组中所有已知半径的圆弧。随后,将表决数组T的各元素的表决数加1。此时,如果该点为隐藏各元素相对应点的圆周上的点,则至少一条绘制圆弧通过原始圆心。
对部分图象交替进行垂直扫描和水平扫描,并且一旦遇到LBP为“1”的点,就执行以上过程。这样,对应最大表决数元素的位置就是参考位置B。最大表决数集中在对应参考位置的表决数组的数组元素上。因此,尽管存在噪声影响,本算法也能够正确确定参考位置。
由于图17(a)所示的方法利用隐藏的消息改变图象数据,于是根据所确定的参考位置从部分图象中适当地抽取消息。因此,如果不采用能够抵抗随机噪声的数据隐藏方法,信息抽取就不会成功。然而,图17(b)所示的方法在抽取隐藏消息之前,并不改变该隐藏消息,所以该方法比图17(a)所示的方法更能抵抗噪声。因此,本算法允许采用多种数据隐藏方法。然而,应该注意到:根据本发明,可能破坏有关参考位置的部分信息。
F.特定应用
具体而言,可以在以下系统中应用采用上述算法的数据隐藏和数据抽取方法。
(电视图象CM事件计数)
对于已预定了广播的人员而言,是否将其商业广告节目广播所请求的次数是重要的。可以采用本算法来构造图18所示的系统,以便自动计算广播次数。该广播站具有一个存储装置、一个编码器和一个广播装置。存储装置存储商业广告节目图象,编码器在商业广告节目图象中隐藏用于计算广播次数的信息。广播装置广播其中隐藏有以上信息的商业广告节目图象。该系统利用上述数据隐藏方法编码商业广告节目图象。根据计数信息中的数据(该数据被分散隐藏到商业广告节目图象中)进行编码。此外,接收站具有一个接收器、一个译码器和一个计数器。接收器接收其中隐藏有计数信息的商业广告节目图象。译码器从商业广告节目图象中抽取计数信息。根据抽取的计数信息,计数器计算广播次数。该接收系统根据上述数据抽取方法抽取计数信息。根据计数信息中的数据,通过确定计数信息在该商业广告节目图象上的排列位置,并从该位置抽取数据进行译码。
广播站广播具有隐藏计数信息的商业广告节目图象,计数信息使得接收站可以根据隐藏算法来计算广播次数。因此,通过抽取计数信息,接收站就能够计算广播次数。
(防火墙审查)
拓扑(如防火墙)内外的所有HTTP传输都要经过位于该拓扑上的代理服务器。可以利用以上性质来审查该代理服务器上的图象数据和声音数据。如果检测到其中隐藏有水印的媒体数据,就将其留在日志中。这样,就能够检测非法分布数据。图19是该系统的框图。服务器具有一个存储装置和一个编码器,存储装置存储媒体数据,而编码器用于在该媒体数据中隐藏消息数据。服务器控制编码器,以便在该媒体数据(该数据是从存储装置中读取的)中隐藏消息数据,同时,该服务器把输出数据传送到Internet。因此,可以根据消息数据的内容,利用上述隐藏方法在媒体数据中分散隐藏消息数据。接收站具有一个代理服务器和一个译码器,其中代理服务器从Internet接收媒体数据(已经在传输站对该媒体数据进行了隐藏处理),而译码器从接收数据中抽取消息数据。根据消息数据的内容,通过利用上述数据抽取方法确定分布消息数据的位置,进行抽取操作。
(应用于旅行社服务器)
WWW服务器(由旅行社控制)上显示的旅游场所照片中隐藏有附加信息(如旅游场所的说明或地图、URL点信息)。通过采用WWW浏览器对该照片进行网络复制,随后就可以从该照片中抽取地图,以便检查说明、交通和路线。如图20所示,即使该客户已经与WWW服务器断开连接,也能够抽取附加信息。与从照片数据文件中分离附加信息文件的方法相比,利用隐藏方法就能够保存照片数据和附加信息之间的密切关系,因此,可以轻而易举地保存数据。
(指纹和水印)
指纹是指发布给他人的媒体数据中的隐藏标记,该标记使得媒体数据的发行者能够确定他人的身份。如果有人从事了非法活动(如非法拷贝),则利用该指纹就能确定活动源。因此,如果该人正在非法发布拷贝,则他或她将对该非法拷贝负责。
另一方面,水印是指发布给他人的媒体数据中的隐藏标记,该标记使得媒体数据的发行者能够确定他或她的身份。这样,就能够确保在发布期间该数据不会被修改,即,该数据是由合法发行者发行的,并在发布期间未作修改。
为了隐藏以上标记,可以构造图21所示的系统。当向他人发布数据时,该数据内隐藏有一个水印。可以从他人那里得到的数据中抽取该标记,以便检查。
除以上系统之外,可以将本发明应用于采用电缆、卫星通信或DVD-ROM(DVD-RAM)存储介质的系统。具体而言,如果采用DVD-ROM(DVD-RAM)发布数据,则该数据中包含有关复制许可的隐藏信息,即,是允许复制还是禁止复制。终端用户用来复制数据的DVD播放器具有限制复制功能。因此,如果复制播放器发现从其介质中抽取的复制许可状态为禁止复制的话,就启动禁止复制。
G.数据抽取系统和实现该系统的半导体集成电路
具体而言,可以在具有以下结构的系统中实现上述数据抽取方法。此外,可以在一块芯片(如半导体集成电路)上提供以上系统的大部分功能。为了避免重复,省略了该系统和半导体集成电路特性的详细说明,但是,在数据抽取方法中说明的术语、其扩充以及其变更同样适用于这些系统。根据以上方法的详细说明,对于本领域熟练的技术人员而言,以下术语的细节是显而易见的。
具体而言,如图22所示,用于从媒体数据中抽取消息数据的系统具有一个转换装置、一个确定装置、一个特征值计算装置、一个存储装置和一个抽取装置。转换装置为一个A/D转换器,该转换器将由模拟信号构成的媒体数据(其中隐藏有消息数据)转换为数字信号,随后转换器输出该数字信号。确定装置确定由转换装置输出的媒体数据中隐藏有消息数据的一个数据块。特征值计算装置决定由确定装置确定的数据块的特征值。存储装置存储转换规则,该规则把需要抽取的数据内容同特征值的参考值与该数据块的特征值之间的差值联系起来。抽取装置依据该数据块的特征值,参照转换规则,抽取隐藏的消息数据。
参考值为媒体数据中出现的不同于第一数据块的第二数据块的特征值。存储在存储装置内的转换规则规定:如果第一块的特征值大于第二块的特征值,则抽取该位中的一位;反之,如果第一块的特征值小于第二块的特征值,就选择另一位。
此外,如图23所示,由安装有上述系统的芯片构成的半导体集成电路至少具有一个计算装置和一个抽取装置。计算装置决定媒体数据(由输入信号构成)中已经被确定为隐藏有消息数据的数据块的特征值。抽取装置根据该数据块的特征值,参照转换规则,抽取隐藏消息,其中转换规则把需要抽取的数据内容同特征值的参考值与该数据块的特征值之间的差值联系起来。
如上所述,如果在媒体数据(如图象或声音)中分散隐藏消息数据,则本发明根据媒体数据和消息数据的内容确定该消息的隐藏位置。因此,本发明使得数据隐藏处理能够防止他人轻易修改消息。

Claims (31)

1.用于在媒体数据中隐藏数据的数据隐藏方法,该方法包括以下步骤:
(a)标识其中隐藏有消息数据的媒体数据内的一个数据块;
(b)确定所述标识数据块的特征值;和
(c)处理所述数据块的特征值,以便依据转换规则,隐藏该消息数据,其中转换规则把需要隐藏的数据的内容同特征值的参考值与所述数据块的特征值之间的差值联系起来。
2.根据权利要求1的数据隐藏方法,其中根据媒体中出现的不同数据块的特征值,提供所述参考值。
3.根据权利要求1的数据隐藏方法,其中:
在消息数据中,隐藏有关所述消息数据的参考位置和所述媒体数据的信息,并且其中
有关所述参考位置的信息被隐藏在所述消息数据中,使得即使部分所述消息数据作为部分消息数据被剪切,也可以检测原始图象数据的参考位置或基于所述参考位置的相对位置。
4.根据权利要求3的数据隐藏方法,其中有关所述参考位置的信息为:围绕所述参考位置绘制的同心圆弧。
5.根据权利要求2的数据隐藏方法,其中所述数据块为一象素块,并且所述特征值为所述象素块的亮度值。
6.根据权利要求1的数据隐藏方法,其中所述数据块为一象素块,并且所述特征值为所述象素块的方差值。
7.用于在媒体数据中隐藏数据的数据隐藏方法,该方法包括以下步骤:
(a)确定媒体数据内包括第一数据块和第二数据块的一对数据块;
(b)确定所述第一和第二数据块的特征值,处理构成所述对的所述数据块的特征值,以便隐藏消息数据;
(c)比较所述确定的特征值之间的差值,并且依据转换规则,处理构成所述对的所述各数据块的特征值,以便隐藏消息数据中部分数据;
(d)重复步骤(a)到步骤(c),直至隐藏了所有消息数据。
8.根据权利要求7的数据隐藏方法,其中所述第二数据块与所述第一数据块相邻,第一数据块和第二数据块构成一对。
9.根据权利要求7的数据隐藏方法,其中该方法还包括以下步骤:如果所述第一数据块和所述第二数据块之间的特征值的差大于第一阈值,就禁止执行所述步骤(c),从而防止了媒体数据降质。
10.根据权利要求7的数据隐藏方法,其中该方法还包括以下步骤:如果所述第一数据块和所述第二数据块之间的特征值的差小于第二阈值,就禁止执行所述步骤(c),从而防止了在抽取消息数据中精度的下降。
11.用于在媒体数据中隐藏数据的数据隐藏方法,该方法包括以下步骤:
(a)确定媒体数据内的一对数据块,该媒体数据包括第一数据块和第二数据块;和
(b)确定构成所述配对的所述各块的特征值;
(c)根据转换规则,交换构成所述配对的所述块的特征值,以便隐藏消息数据,其中转换规则确定数据块之间的特征值的差值。
12.根据权利要求11的数据隐藏方法,其中所述第二数据块与所述第一数据块相邻,第一数据块和第二数据块构成一对。
13.根据权利要求11的数据隐藏方法,其中该方法还包括以下步骤:如果所述第一数据块和所述第二数据块之间的特征值的差大于第一阈值,就禁止执行所述步骤(c),从而防止了媒体数据降质。
14.根据权利要求11的数据隐藏方法,其中该方法还包括以下步骤:如果所述第一数据块和所述第二数据块之间的特征值的差小于第二阈值,就禁止执行所述步骤(c),从而防止了在抽取消息数据中精度的下降。
15.根据权利要求11的数据隐藏方法,其中所述数据块为一象素块,并且所述特征值为所述象素块的亮度值。
16.根据权利要求11的数据隐藏方法,其中所述数据块为一象素块,并且所述特征值为所述象素块的方差值。
17.用于从隐藏有消息数据的媒体数据中抽取消息数据的数据抽取方法,该方法包括以下步骤:
(a)标识其中隐藏有消息数据的媒体数据内的数据块中的一个;
(b)确定所述标识数据块的特征值;和
(c)根据所述数据块的特征值,依据转换规则,抽取该消息数据,其中转换规则把需要抽取的数据的内容同特征值的参考值与所述数据块的特征值之间的差值联系起来。
18.根据权利要求17的数据抽取方法,其中所述参考值存在于媒体数据中,并且该值为不同于所述数据块的数据块的特征值。
19.根据权利要求17的数据抽取方法,其中所述数据块为象素块,并且其中所述特征值为所述象素块的亮度值。
20.根据权利要求17的数据抽取方法,其中所述数据块为象素块,并且其中所述特征值为所述象素块的方差值。
21.根据权利要求18的数据抽取方法,其中所述第二数据块与第一数据块相邻,第一数据块和第二数据块构成一对。
22.根据权利要求18的数据抽取方法,其中,如果构成配对的第一数据块和第二数据块之间的特征值的差值小于特定阈值,则所述转换规则就确定该配对数据块中未隐藏媒体数据。
23.用于从隐藏有消息数据的媒体数据中抽取消息数据的数据抽取方法,该方法包括以下步骤:
(a)标识其中隐藏有消息数据的媒体数据内的一对数据块;
(b)确定构成所述配对的所述数据块的特征值;和
(c)根据所述相关数据块的特征值,依据转换规则,抽取隐藏数据,其中转换规则把需要抽取的数据的内容同构成所述配对的所述数据块之间的特征值的差值联系起来。
24.根据权利要求23的数据抽取方法,其中所述第二数据块与第一数据块相邻,第一数据块和第二数据块构成一对。
25.根据权利要求23的数据抽取方法,其中,如果构成配对的第一数据块和第二数据块之间的特征值的差值小于特定阈值,则所述转换规则就确定该配对数据块中未隐藏媒体数据。
26.根据权利要求23的数据抽取方法,其中所述数据块为象素块,并且其中所述特征值为所述象素块的亮度值。
27.根据权利要求23的数据抽取方法,其中所述数据块为象素块,并且其中所述特征值为所述象素块的方差值。
28.用于从隐藏有消息数据的媒体数据中抽取消息数据的数据抽取系统,该系统包括:
一个转换装置,该转换器将由模拟信号构成的包含隐藏消息数据的消息数据转换为数字信号,随后输出该数字信号;
一个确定装置,该装置确定隐藏有消息数据的媒体数据中的数据块中的一个;
一个特征值计算装置,该装置决定由所述确定装置确定的所述数据块的特征值;
一个存储装置,该装置存储转换规则,转换规则把需要抽取的数据内容同特征值的参考值与所述数据块的特征值之间的差值联系起来;和
一个抽取装置,该装置依据所述数据块的特征值,参照转换规则,抽取消息数据。
29.根据权利要求28的数据抽取系统,其中所述参考值存在于该媒体数据中,并且为不同于所述数据块的数据块的特征值。
30.用于从隐藏有消息数据的媒体数据中抽取消息数据的半导体集成电路,该电路包括:
用于确定由输入信号构成的媒体数据中某个数据块的特征值的设备,其中已经确定该数据块中隐藏有消息数据;和
一个抽取装置,该装置根据所述数据块的特征值,参照转换规则,抽取隐藏的消息数据,其中转换规则把需要抽取的数据内容同特征值的参考值与所述数据块的特征值之间的差值联系起来。
31.根据权利要求30的半导体集成电路,其中所述参考值存在于该媒体数据中,并且为不同于所述数据块的数据块的特征值。
CNB021571724A 1996-06-20 1997-02-13 数据隐藏和抽取方法、系统和电路 Expired - Lifetime CN1207894C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP15933096 1996-06-20
JP159330/1996 1996-06-20

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN97190937A Division CN1128535C (zh) 1996-06-20 1997-02-13 数据隐藏和抽取方法以及向网络传送和接受数据的系统

Publications (2)

Publication Number Publication Date
CN1474591A CN1474591A (zh) 2004-02-11
CN1207894C true CN1207894C (zh) 2005-06-22

Family

ID=15691471

Family Applications (2)

Application Number Title Priority Date Filing Date
CNB021571724A Expired - Lifetime CN1207894C (zh) 1996-06-20 1997-02-13 数据隐藏和抽取方法、系统和电路
CN97190937A Expired - Lifetime CN1128535C (zh) 1996-06-20 1997-02-13 数据隐藏和抽取方法以及向网络传送和接受数据的系统

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN97190937A Expired - Lifetime CN1128535C (zh) 1996-06-20 1997-02-13 数据隐藏和抽取方法以及向网络传送和接受数据的系统

Country Status (11)

Country Link
US (2) US6055321A (zh)
EP (1) EP0852441B1 (zh)
JP (1) JP3251594B2 (zh)
KR (1) KR100295007B1 (zh)
CN (2) CN1207894C (zh)
CA (1) CA2230071A1 (zh)
DE (1) DE69739969D1 (zh)
HK (1) HK1015595A1 (zh)
MY (1) MY125067A (zh)
TW (1) TW347506B (zh)
WO (1) WO1997049235A1 (zh)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
US6614914B1 (en) * 1995-05-08 2003-09-02 Digimarc Corporation Watermark embedder and reader
US6993152B2 (en) * 1994-03-17 2006-01-31 Digimarc Corporation Hiding geo-location data through arrangement of objects
US7006661B2 (en) 1995-07-27 2006-02-28 Digimarc Corp Digital watermarking systems and methods
US6411725B1 (en) * 1995-07-27 2002-06-25 Digimarc Corporation Watermark enabled video objects
JP3172475B2 (ja) * 1996-12-26 2001-06-04 日本アイ・ビー・エム株式会社 統計検定を用いたデータ・ハイディング方法及びデータ抽出方法
GB9700854D0 (en) 1997-01-16 1997-03-05 Scient Generics Ltd Sub-audible acoustic data transmission mechanism
JP3560441B2 (ja) 1997-04-07 2004-09-02 日本アイ・ビー・エム株式会社 複数フレーム・データ・ハイディング方法及び検出方法
JP4313873B2 (ja) * 1998-01-30 2009-08-12 キヤノン株式会社 電子機器及びデータ処理方法
JP4182603B2 (ja) * 1998-10-07 2008-11-19 ソニー株式会社 符号化装置および符号化方法、復号装置および復号方法、記録媒体、並びにデータ処理装置
US6965697B1 (en) 1998-07-15 2005-11-15 Sony Corporation Coding apparatus and method, decoding apparatus and method, data processing system, storage medium, and signal
JP4822304B2 (ja) * 1998-08-06 2011-11-24 ソニー株式会社 画像処理装置および画像処理方法、並びに記録媒体
US6456393B1 (en) * 1998-08-18 2002-09-24 Seiko Epson Corporation Information embedding in document copies
JP2000155798A (ja) * 1998-11-18 2000-06-06 Toshiba Corp 機器制御方法および機器制御システム
GB2345602A (en) * 1999-01-07 2000-07-12 Hewlett Packard Co Applying digital watermarks to selected sections of data files
EP1157499A4 (en) * 1999-03-10 2003-07-09 Digimarc Corp PROCESS FOR SIGNAL PROCESSING, DEVICES AND APPLICATIONS FOR THE MANAGEMENT OF DIGITAL RIGHTS
JP3098513B1 (ja) 1999-04-14 2000-10-16 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 改変判定装置およびその方法
US7224995B2 (en) * 1999-11-03 2007-05-29 Digimarc Corporation Data entry method and system
JP3986226B2 (ja) * 1999-11-29 2007-10-03 株式会社日立製作所 データ埋め込み装置,データ抽出装置およびそれらの方法ならびに該方法を記録した記録媒体
JP4099951B2 (ja) * 2000-03-30 2008-06-11 コニカミノルタビジネステクノロジーズ株式会社 画像データに付加情報を埋め込むための画像処理装置、画像形成装置、情報埋込方法およびプログラム
WO2002013094A1 (en) * 2000-08-03 2002-02-14 Digimarc Corporation Linking from paper invoices and statements to on-line resources
US6978371B1 (en) * 2000-11-07 2005-12-20 Matsushita Electric Industrial Co., Ltd. Data hiding in digital multimedia
US6707928B2 (en) * 2000-11-29 2004-03-16 Intel Corporation Method for block-based digital image watermarking
ATE411658T1 (de) 2000-11-30 2008-10-15 Intrasonics Ltd Vorrichtung und system zum verwenden eines in einem akustischen signal integrierten datensignals
US7174030B2 (en) * 2001-02-06 2007-02-06 Victor Company Of Japan, Ltd. Method and apparatus for embedding and reproducing watermark into and from contents data
US7042470B2 (en) * 2001-03-05 2006-05-09 Digimarc Corporation Using embedded steganographic identifiers in segmented areas of geographic images and characteristics corresponding to imagery data derived from aerial platforms
US7249257B2 (en) * 2001-03-05 2007-07-24 Digimarc Corporation Digitally watermarked maps and signs and related navigational tools
US7254249B2 (en) * 2001-03-05 2007-08-07 Digimarc Corporation Embedding location data in video
US7061510B2 (en) * 2001-03-05 2006-06-13 Digimarc Corporation Geo-referencing of aerial imagery using embedded image identifiers and cross-referenced data sets
US6950519B2 (en) 2001-03-05 2005-09-27 Digimarc Corporation Geographically watermarked imagery and methods
US9363409B2 (en) * 2001-03-05 2016-06-07 Digimarc Corporation Image management system and methods using digital watermarks
US7197160B2 (en) * 2001-03-05 2007-03-27 Digimarc Corporation Geographic information systems using digital watermarks
US7113612B2 (en) * 2001-03-22 2006-09-26 Victor Company Of Japan, Ltd. Apparatus for embedding and reproducing watermark into and from contents data
US7181017B1 (en) 2001-03-23 2007-02-20 David Felsher System and method for secure three-party communications
FR2823630B1 (fr) * 2001-04-12 2003-07-18 Canon Kk Association d'informations de segmentation a un signal numerique
US20020169962A1 (en) * 2001-05-10 2002-11-14 Brundage Trent J. Digital watermarks used in automation equipment
US7340076B2 (en) * 2001-05-10 2008-03-04 Digimarc Corporation Digital watermarks for unmanned vehicle navigation
EP1407344A4 (en) * 2001-06-25 2004-12-08 Jp Morgan Chase Bank ELECTRONIC COUPONS AND SYSTEM AND METHOD FOR TRANSMITTING SAME
WO2003034227A2 (en) * 2001-10-12 2003-04-24 Koninklijke Philips Electronics N.V. Apparatus and method for reading or writing user data
US7006656B2 (en) * 2001-10-15 2006-02-28 The Research Foundation Of Suny Lossless embedding of data in digital objects
US8204929B2 (en) * 2001-10-25 2012-06-19 International Business Machines Corporation Hiding sensitive information
DK1464172T3 (da) 2001-12-24 2013-06-24 Intrasonics Sarl System til undertekstning
US6954541B2 (en) 2002-05-29 2005-10-11 Xerox Corporation Method of detecting changes occurring in image editing using watermarks
US20050271246A1 (en) * 2002-07-10 2005-12-08 Sharma Ravi K Watermark payload encryption methods and systems
JP3922369B2 (ja) * 2003-01-21 2007-05-30 日本ビクター株式会社 埋め込み情報の記録装置及び再生装置並びに記録用プログラム及び再生用プログラム
US9818136B1 (en) * 2003-02-05 2017-11-14 Steven M. Hoffberg System and method for determining contingent relevance
US7194106B2 (en) 2003-04-03 2007-03-20 Digimarc Corporation Creating electronic forms through digital watermarking
WO2004107120A2 (en) * 2003-05-22 2004-12-09 Sony Electronics Inc. Methods and apparatuses for sequestering content
US7116374B2 (en) * 2003-08-26 2006-10-03 Koplar Interactive Systems International, L.L.C. Method and system for enhanced modulation of video signals
KR20050078767A (ko) * 2004-02-02 2005-08-08 삼성전자주식회사 디지털 영상 워터마킹 장치 및 그 방법
WO2005076985A2 (en) 2004-02-04 2005-08-25 Digimarc Corporation Digital watermarking image signals on-chip and photographic travel logs through digital watermarking
US7664175B1 (en) * 2004-06-16 2010-02-16 Koplar Interactive Systems International, L.L.C. Mark-based content modulation and detection
US20060282884A1 (en) * 2005-06-09 2006-12-14 Ori Pomerantz Method and apparatus for using a proxy to manage confidential information
US8874477B2 (en) 2005-10-04 2014-10-28 Steven Mark Hoffberg Multifactorial optimization system and method
US7860903B2 (en) * 2005-12-23 2010-12-28 Teradata Us, Inc. Techniques for generic data extraction
US8792826B2 (en) * 2006-04-03 2014-07-29 Eckey Corporation Methods for determining proximity between radio frequency devices and controlling switches
US8150097B2 (en) * 2007-01-24 2012-04-03 Sony Corporation Concealed metadata transmission system
US20080307233A1 (en) * 2007-06-09 2008-12-11 Bank Of America Corporation Encoded Data Security Mechanism
US8650402B2 (en) * 2007-08-17 2014-02-11 Wong Technologies L.L.C. General data hiding framework using parity for minimal switching
US8798133B2 (en) * 2007-11-29 2014-08-05 Koplar Interactive Systems International L.L.C. Dual channel encoding and detection
NZ564196A (en) * 2007-12-10 2010-08-27 Resonance Holdings Ltd Electronic lock for security system and key on a wireless device including methods of encoding data
KR100965604B1 (ko) * 2008-03-17 2010-06-23 경기대학교 산학협력단 이미지를 이용한 메시지 제공 방법 및 그 장치
CN101577619B (zh) * 2008-05-08 2013-05-01 吴志军 基于信息隐藏的实时语音保密通信系统
GB2460306B (en) 2008-05-29 2013-02-13 Intrasonics Sarl Data embedding system
US10943030B2 (en) * 2008-12-15 2021-03-09 Ibailbonding.Com Securable independent electronic document
US8706083B2 (en) 2009-01-07 2014-04-22 Eckey Corporation Bluetooth authentication system and method
WO2011111191A1 (ja) * 2010-03-10 2011-09-15 富士通株式会社 画像復号装置、画像復号方法及び画像復号用コンピュータプログラム
US9015494B2 (en) * 2011-07-11 2015-04-21 Salesforce.Com, Inc. Methods and apparatus for digital steganography
CN102663668B (zh) * 2012-04-06 2014-04-16 王涛 一种基于连续矢量图形的数字水印系统及实现方法
CN105160694B (zh) * 2015-10-15 2017-05-03 深圳大学 一种数据隐藏方法及隐藏系统
US10212306B1 (en) * 2016-03-23 2019-02-19 Amazon Technologies, Inc. Steganographic camera communication
CN110516775B (zh) * 2019-07-11 2023-07-25 西安邮电大学 基于qr码用户秘密信息隐藏方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2640939B2 (ja) * 1987-03-02 1997-08-13 東洋通信機株式会社 画像へのデータ合成方法
US4969041A (en) * 1988-09-23 1990-11-06 Dubner Computer Systems, Inc. Embedment of data in a video signal
US5319453A (en) * 1989-06-22 1994-06-07 Airtrax Method and apparatus for video signal encoding, decoding and monitoring
US5987127A (en) * 1992-06-30 1999-11-16 Minolta Co., Ltd. Image forming apparatus and copy management system
JP3598331B2 (ja) * 1992-06-30 2004-12-08 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置
US5721788A (en) * 1992-07-31 1998-02-24 Corbis Corporation Method and system for digital image signatures
US5379345A (en) * 1993-01-29 1995-01-03 Radio Audit Systems, Inc. Method and apparatus for the processing of encoded data in conjunction with an audio broadcast
JP3599795B2 (ja) * 1993-09-03 2004-12-08 株式会社東芝 画像処理装置
US5652626A (en) * 1993-09-03 1997-07-29 Kabushiki Kaisha Toshiba Image processing apparatus using pattern generating circuits to process a color image
US5748783A (en) * 1995-05-08 1998-05-05 Digimarc Corporation Method and apparatus for robust information coding
US5659726A (en) * 1995-02-23 1997-08-19 Sandford, Ii; Maxwell T. Data embedding
DE19520232C1 (de) * 1995-06-01 1996-08-14 Siemens Ag Verfahren zur Verschlüsselung von Folgen, die aus zahlenkodierten Informationseinheiten bestehen
US5689587A (en) * 1996-02-09 1997-11-18 Massachusetts Institute Of Technology Method and apparatus for data hiding in images

Also Published As

Publication number Publication date
WO1997049235A8 (fr) 2001-07-26
DE69739969D1 (de) 2010-10-07
US6055321A (en) 2000-04-25
MY125067A (en) 2006-07-31
HK1015595A1 (en) 1999-10-15
WO1997049235A1 (fr) 1997-12-24
CN1128535C (zh) 2003-11-19
EP0852441B1 (en) 2010-08-25
TW347506B (en) 1998-12-11
EP0852441A4 (en) 2003-01-15
KR19990044042A (ko) 1999-06-25
CN1474591A (zh) 2004-02-11
CN1198284A (zh) 1998-11-04
CA2230071A1 (en) 1997-12-24
US6512835B1 (en) 2003-01-28
EP0852441A1 (en) 1998-07-08
JP3251594B2 (ja) 2002-01-28
KR100295007B1 (ko) 2001-10-26

Similar Documents

Publication Publication Date Title
CN1207894C (zh) 数据隐藏和抽取方法、系统和电路
CN100346354C (zh) 图像处理方法和图像处理装置
CN1305296C (zh) 信息处理装置及其控制方法、计算机程序和存储介质
CN1222893C (zh) 电子水印方法和系统
CN1168010C (zh) 信息处理设备和方法
CN1274107C (zh) 加密数据分发系统
CN1310462C (zh) 通过对数据加密来保护数据的数据保护系统
CN1125407C (zh) 信息处理装置,信息处理方法,信息处理系统
CN1249982C (zh) 图像处理装置及方法
CN1276364C (zh) 数据管理设备,数据管理方法以及计算机程序
CN101053200A (zh) 信息处理设备、信息存储媒体、内容管理系统、数据处理方法、以及计算机程序
CN1930625A (zh) 内容播放设备
CN1396568A (zh) 数字作品保护系统、记录媒体装置、发送装置和重放装置
CN1892564A (zh) 标签信息显示控制设备及方法、信息处理设备和显示设备
CN101056392A (zh) 一种数字水印嵌入方法及其装置
CN1882026A (zh) 信息埋入网屏编码的生成方法
CN1886734A (zh) 认证系统
CN1620094A (zh) 用于将图像转换为预定格式的图像处理设备及方法
CN1708971A (zh) 将信息从服务提供商“推”到包括存储卡的通信终端的系统与方法
CN1767036A (zh) 信息管理方法、信息播放装置和信息管理装置
CN1515117A (zh) 修改比特流
CN1957356A (zh) 非授权设备检测设备、非授权设备检测系统、非授权设备检测方法、程序、记录介质、及设备信息更新方法
CN1893607A (zh) 编码、解码设备和方法,图像处理系统和方法及记录介质
CN1625206A (zh) 图像处理装置及其控制方法
CN1846396A (zh) 密钥信息处理方法及其设备和程序

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20050622