基于错误纠正编码数据结构的数据隐藏方法

文档序号:9375402阅读:214来源:国知局
基于错误纠正编码数据结构的数据隐藏方法
【技术领域】
[0001] 本发明涉及一种数据隐藏方法,尤其涉及一种基于错误纠正编码(Error Correcting Code,简称ECC)数据结构的数据隐藏方法。
【背景技术】
[0002] 在安全意识和隐私意识日益提高的今天,信息的保密逐渐受到人们的重视,另外, 在大量信息或数据传输的过程中,对信息或数据来源可靠性的识别也是非常重要的研究课 题。现有技术中通常都是通过加密来对信息进行处理,然而,这类处理方式通常都需要复杂 的加密算法。

【发明内容】

[0003] 综上所述,确有必要提供一种简单且可以有效对数据进行隐藏的数据隐藏方法。
[0004] 一种基于ECC数据结构的数据隐藏方法,包括以下步骤:
[0005] 提供一原始ECC数据矩阵,该原始ECC数据矩阵具有多个存储数据,该原始ECC数 据矩阵具有数据纠错能力,且具有行最大纠错字节数以及列最大纠错字节数,以及
[0006] 将部分所述存储数据替换为需要隐藏的隐藏数据,从而构成一新ECC数据矩阵, 所述隐藏数据在该新ECC数据矩阵中所在的行数小于所述列最大纠错字节数或所述隐藏 数据在该新ECC数据矩阵中所在的列数小于所述行最大纠错字节数。
[0007] 相对于现有技术,本发明实施例提供的基于ECC数据结构的数据隐藏方法利用该 ECC数据结构本身具有纠错能力的特性,从而在不影响正常原始数据输出的情况下达到了 数据隐藏的目的,该方法简单可操作性强。。
【具体实施方式】
[0008] 以下将结合附图详细说明本发明提供的基于错误纠正编码(ECC)数据结构的数 据隐藏方法。
[0009] 本发明实施例提供一种基于ECC数据结构的数据隐藏方法,包括以下步骤:
[0010] S1,提供一原始ECC数据矩阵,该原始ECC数据矩阵具有多个存储数据,该原始ECC 数据矩阵具有数据纠错能力,且具有行最大纠错字节数以及列最大纠错字节数,以及
[0011] S2,将部分所述存储数据替换为需要隐藏的隐藏数据,从而构成一新ECC数据矩 阵,所述隐藏数据在该新ECC数据矩阵中所在的行数小于所述列最大纠错字节数或所述隐 藏数据在该新ECC数据矩阵中所在的列数小于所述行最大纠错字节数。
[0012] 在上述步骤Sl中,所述存储数据包括原始数据以及纠错码。所述原始ECC数据矩 阵以及新ECC数据矩阵均为一个或多个ECC数据块,该ECC数据块具有数据错误纠正能力, 包括要存储的原始数据以及纠错码。通常数据在信道传输的过程中会受到如噪声等的干 扰,从而在接收端可能会接收到错误的数据,所述纠错码的任务是通过增加信息冗余度的 办法消除在如噪声信道下传输数据所带来的干扰,从而使接收端能纠正错误的数据,正确 译码以获得正确的原始存储数据。所述存储数据可存储在存储介质上,所述存储介质优选 可以为光存储介质。
[0013] 所述原始ECC数据矩阵为由所述原始数据以及纠错码构成的二维矩阵。该二维矩 阵包括M行以及N列。所述M以及N均小于255。该二维矩阵的容量大小可根据存储介质 或标准的不同来确定。所述存储介质可以为但不限于DVD或BD。本发明实施例中,所述原 始ECC数据矩阵为基于DVD的ECC数据矩阵。该基于DVD的ECC数据矩阵为208 X 182个 字节的ECC数据块。
[0014] 所述原始数据面向正常用户且为正常用户可通过解码获得的信息,例如但不限于 图像、视频、音频以及文字中的至少一种。所述原始数据包括多个字节,每个字节存储在所 述原始ECC数据矩阵的一个矩阵单元中。所述纠错码包括行纠错码和列纠错码。所述行纠 错码用于对所在行的所述原始数据进行纠错。所述列纠错码用于对所在列的所述原始数据 进行纠错。每行所述行纠错码以及每列所述列纠错码的数量为偶数个。所述纠错码的数量 越多,则纠错能力越强。本发明实施例中每行所述行纠错码的数量为10个字节,每行所述 列纠错码的数量为16个字节。所述行最大纠错字节数以及列最大纠错字节数跟每行所述 行纠错码以及每列所述列纠错码的数量有关。通常地,所述行最大纠错字节数为所述每行 所述行纠错码的数量的一半,同样地,所述列最大纠错字节数为所述每列所述列纠错码的 数量的一半。定义所述行最大纠错字节数为a,所述列最大纠错字节数为b。本发明实施例 中 a = 5, b = 8〇
[0015] 在上述步骤S2中,将所述隐藏数据替换部分所述存储数据的方式不限,只要满足 如下其中一个条件即可:(1)所述隐藏数据在该新ECC数据矩阵中所在的行的个数小于所 述列最大纠错字节数;(2)所述隐藏数据在该新ECC数据矩阵中所在的列的个数小于所述 行最大纠错字节数。
[0016] 所述隐藏数据既可以替换所述原始数据也可同时替换所述纠错码。只要满足上述 条件即可。可选地,所述隐藏数据可替换该原始ECC数据矩阵中连续位置的存储数据,也可 以替换该原始ECC数据矩阵中离散位置的存储数据。如,所述隐藏数据可替换该原始ECC 数据矩阵中一行或多行的整行的存储数据。此时,该被替换的行则无法实现纠错,从而成为 纠删行(无法纠错的行),此时,就需要列仍然在纠错能力范围内。
[0017] 所述存储数据可被替换的数量和所述隐藏数据的数量大小与所述原始ECC数据 矩阵的容量大小以及该ECC数据矩阵的纠错能力大小有关。具体地,设定数据替换量阈值 为 K,则 K 彡 MXa+NXb-aXb。
[0018] 此外,数据传输过程中,测试信道的误码可能也会造成ECC纠删行,设定 所述测试信道的误码造成的ECC纠删行数为P。则优选地,所述数据替换量阈值 K < MXa+NXb-aXb-PXNo
[0019] 在上述步骤S2中,由于该ECC数据矩阵具有数据纠错能力,因此,即使将所述隐藏 数据替换部分所述存储数据,只要在该ECC数据矩阵纠错能力范围内,在数据接收端接收 数据之前,所述隐藏数据被当作错误数据被ECC纠正,因此,正常用户在数据接收端接收到 的仍然是所述原始数据,而无法察觉到所述隐藏数据的存在,从而实现了隐藏数据的隐藏。 而隐藏数据的使用者由于事先获知所述隐藏数据的隐藏位置,从而可根据该隐藏数据的数 据结构,选择对应的解码器独自或隐秘读取所述隐藏数据。具体地,隐藏数据解码器截取原 始数据解码器输出的字节数据流,当输出到所述隐藏数据位置时,所述隐藏数据解码器开 始提取隐藏数据,从而获得所述隐藏数据。
[0020] 另外,在对于需要原始数据可靠性辨别的情形中,用户可根据隐藏数据的识别方 法来验证所述原始数据的可靠性。具体地,所述数据隐藏方法进一步包括一从存储介质输 出端识别所述隐藏数据以判断所述存储数据来源可靠性的步骤。当识别出所述隐藏数据 时,即表明所述存储数据来源可靠,当没有识别出所述隐藏数据时,表明所述存储数据来源 不可靠。
[0021] 实施例1
[0022] 以下将以基于DVD的ECC数据块为例对本发明的数据隐藏的方法进行说明。
[0023] 请参阅表1,本发明实施例基于DVD的ECC数据块为208X182的二维矩阵。其中, D (0, 0)到D (191,171)为原始数据,标记为PI的为行纠错码,标记为PO的为列纠错码。
[0024] 表 1
[0025]
[0026] 请参阅表2,本发明实施例用两行隐藏数据M(0,0)至M(0,181)、M(1,0)至 M(l,181)替换表1中的两行存储数据。
[0027] 表 2
[0028]

[0030] 在数据接收端接收到该表2的ECC数据时,ECC纠错算法就会计算此两行隐藏 数据作为错误数据,并通过列纠错码(PO码)进行纠错,还原成原始的数据:D(13,0)至 D (13, 181)、D (14, 0)至D (14, 181)。从而达到了数据隐藏的目的。
[0031] 隐藏数据设置这可根据隐藏数据的结构选择对应的解码器来识别隐藏数据,从而 实现对其提取。
[0032] 与现有技术相比较,本发明实施例提供的基于ECC数据结构的数据隐藏方法利用 该ECC数据结构本身具有纠错能力的特性,从而在不影响正常原始数据输出的情况下达到 了数据隐藏的目的,该方法简单可操作性强。
[0033] 另外,本领域技术人员还可在本发明精神内作其它变化,当然这些依据本发明精 神所作的变化,都应包含在本发明所要求保护的范围内。
【主权项】
1. 一种基于错误纠正编码数据结构的数据隐藏方法,包括以下步骤: 提供一原始ECC数据矩阵,该原始ECC数据矩阵具有多个存储数据,该原始ECC数据矩 阵具有数据纠错能力,且具有行最大纠错字节数以及列最大纠错字节数,以及 将部分所述存储数据替换为需要隐藏的隐藏数据,从而构成一新ECC数据矩阵,所述 隐藏数据在该新ECC数据矩阵中所在的行数小于所述列最大纠错字节数或所述隐藏数据 在该新ECC数据矩阵中所在的列数小于所述行最大纠错字节数。2. 如权利要求1所述基于错误纠正编码数据结构的数据隐藏方法,其特征在于,所述 隐藏数据替换该原始ECC数据矩阵中连续位置的存储数据。3. 如权利要求1所述基于错误纠正编码数据结构的数据隐藏方法,其特征在于,所述 隐藏数据替换该原始ECC数据矩阵中离散位置的存储数据。4. 如权利要求1所述的基于错误纠正编码数据结构的数据隐藏方法,其特征在于,所 述原始ECC数据矩阵为M行、N列的二维矩阵,所述存储数据可被替换的数量定义为数据替 换量阈值K,则该数据替换量阈值K满足:K彡MXa+NXb-aXb,其中,a为所述行最大纠错 字节数,b为所述列最大纠错字节数。5. 如权利要求4所述的基于错误纠正编码数据结构的数据隐藏方法,其特 征在于,测试信道误码造成的ECC纠删行数为P,则所述数据替换量阈值满足: K < MXa+NXb-aXb-PXN〇6. 如权利要求1所述的基于错误纠正编码数据结构的数据隐藏方法,其特征在于,所 述原始ECC数据矩阵为基于DVD或BD的ECC数据块。7. 如权利要求1所述的基于错误纠正编码数据结构的数据隐藏方法,其特征在于,所 述存储数据包括原始数据以及纠错码,所述纠错码包括行纠错码以及列纠错码,所述行纠 错码或列纠错码的字节数为偶数。8. 如权利要求1所述的基于错误纠正编码数据结构的数据隐藏方法,其特征在于,所 述新ECC数据矩阵存储在一存储介质上,所述数据隐藏方法进一步包括一从从存储介质输 出端识别所述隐藏数据以判断所述存储数据来源可靠性的步骤,当获取出所述隐藏数据 时,即表明所述存储数据来源可靠,当没有获取出所述隐藏数据时,表明所述存储数据来源 不可靠。
【专利摘要】本发明提供一种基于ECC数据结构的数据隐藏方法,包括以下步骤:提供一原始ECC数据矩阵,该原始ECC数据矩阵具有多个存储数据,该原始ECC数据矩阵具有数据纠错能力,且具有行最大纠错字节数以及列最大纠错字节数,以及将部分所述存储数据替换为需要隐藏的隐藏数据,从而构成一新ECC数据矩阵,所述隐藏数据在该新ECC数据矩阵中所在的行数小于所述列最大纠错字节数或所述隐藏数据在该新ECC数据矩阵中所在的列数小于所述行最大纠错字节数。
【IPC分类】G06F11/10
【公开号】CN105095014
【申请号】CN201510380056
【发明人】裴京, 徐海峥, 杨波
【申请人】清华大学, 中国新闻出版研究院
【公开日】2015年11月25日
【申请日】2015年7月1日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1