一种匿名化的数字水印嵌入和提取方法

文档序号:9751177阅读:500来源:国知局
一种匿名化的数字水印嵌入和提取方法
【技术领域】
[0001] 本发明涉及数据库安全技术和数据匿名化,具体涉及一种匿名化的数字水印嵌入 和提取方法。
【背景技术】
[0002] 近年来,人们一直见证着数据爆炸,对大数据的分析和挖掘在极大程度上方便了 我们的生活,然而,这些被分析的数据当中,大部分是专有的,并且包含许多个人或商业敏 感信息,敏感数据的示例包括患者记录、特殊房屋信息,税务记录、客户购买记录、移动呼叫 详细记录(CDR)等。这样的数据集非常敏感的性质禁止它们被直接公开。需要采用适当的隐 私保护技术进行处理后发布。
[0003] 数字水印技术是网络环境下实现多媒体信息版权保护的一种有效手段。随着关系 型数据库的广泛使用,人们越来越关注数据库的版权保护,特别是提供信息服务的公司,如 气象服务、人才市场信息、股票交易信息等,其主要资产是存储于数据库里的大量数据。通 过在关系数据库中嵌入代表所有权的水印信息,可以有效防止有价值的数据被非法盗用, 实现数据库的版权保护。因此,关系型数据库水印技术的研究和发展具有较大的理论价值 和实际意义。
[0004] 用于匿名化的具体操作包括用于以较高级别的概念来替代数据的泛化 (generalization)、用于抑制数据的抑制、用于分割表并且减弱标识信息与秘密信息关联 的剖析(anatomization) 〇
[0005] 数据的匿名化发布在大数据时代显得尤为重要,关于数据的匿名化算法和匿名化 理论以及相应的去匿名化攻击的研究也日益丰富。然而,当前领域的关注重点在于匿名话 机制及算法。对于数据版权保护在数据匿名化发布中的研究较少。
[0006] 使数据匿名化依赖删除或修改包含在数据集中的多个标识变量,也称为个人可标 识信息。通常,标识变量是描述个人特征的变量,个人特征可观察、被注册(标识号,如社会 保险号,身份证号,员工ID等)或者通常为其他人所知。标识号需要做匿名化处理以保护被 引用人隐私,同时需要关注与数据提取人员的需要。
[0007] 同时,标识变量是链接不同数据源内相关记录的关键,对于关系挖掘,行为提取有 着积极的意义,匿名化将防止数据提取人员标识在数据集中引用的用户。

【发明内容】

[0008] 本发明的目的在于提供一种匿名化的数字水印嵌入和提取方法,解决现有的水印 技术无法做到将数据数字匿名化的问题。
[0009] 为解决上述的技术问题,本发明采用以下技术方案:
[0010] -种匿名化的数字水印嵌入方法,包括以下步骤:
[0011] 步骤一,对所需要嵌入的水印信息进行水印字符串生成处理,根据水印字符串大 小随机生成散列所需要的盐,对水印字符串进行加盐处理得到;
[0012] 步骤二,对水印字符串中需要匿名的数据逐行依次进行散列处理,得到匿名标识 符;
[0013] 步骤三,利用散列值进行带盐散列计算;
[0014] 步骤四,水印索引计算;
[0015] 步骤五,水印嵌入;
[0016] 步骤六,判断是否最后一行数据,如果继续重复步骤二至步骤六;
[0017] 步骤七,若为最后一行数据则得到带有版权标记的匿名化数据集。
[0018] 进一步的,所述步骤一中,对水印字符串进行加盐处理的方法是将水印字符串与 盐字符串进行连接。
[0019]进一步的,所述步骤三中,带盐散列计算的散列函数是MD5、SHA或MAC。
[0020] 进一步的,所述步骤五中,水印嵌入的位置是匿名标识符任意位或多位二进制位, 所述多位二进制位的位数在3位以内。
[0021] 进一步的,所述步骤五中,水印嵌入的方法是提取除水印嵌入位外所有位进行运 算,确定水印嵌入索引值,根据水印索引值从数据库的水印信息二进制串Wb[]中取出对应 位的值,并根据该值完成对水印嵌入位的修改和确定。
[0022] -种匿名化的数字水印提取方法,包括以下步骤:
[0023]步骤一,读取匿名化数据集;
[0024]步骤二,对匿名化数据集中每一行数据进行水印索引计算,得到水印嵌入索引值; [0025]步骤三,水印提取并验证;
[0026] 步骤四,水印提取后,判断当前计算的数据是否为匿名化数据集的最后一行数据, 如果不是最后一行数据则继续重复步骤二对下一行数据进行计算;
[0027] 步骤五,提取完匿名化数据集中所有行的数据后,采用投票机制还原水印信息; [0028]步骤六,输出所提取的水印信息。
[0029] 进一步的,所述步骤三中,水印提取的方法是:构建二进制序列水印数组,所述水 印数组的位数与水印信息二进制串Wb[]的位数相同。
[0030] 进一步的,所述步骤三中,水印的验证方法是:将所得水印数组与数据库中的水印 信息二进制串Wb[]相比较,若二者的相似度不小于使用者设定的相似度阈值,则认为所得 水印数组与数据库中的水印信息二进制串Wb[]相同。
[0031] 进一步的,所述步骤五中,所述投票机制的数据是采用数组统计所提取出的水印 信息。
[0032] 进一步的,所述原出水印信息方法如下:所述步骤五中,采用投票机制还原水印信 息的方式是,对于水印数组中每一项,执行计算,若为负数或〇,则赋值为〇,若为正数,则赋 值为1,得到水印数组的水印信息。
[0033] 与现有技术相比,本发明的有益效果是:实现了在对数据匿名化的同时嵌入数字 水印信息,具有良好的隐蔽性,在保证隐私数据不被泄露的同时保障了数据发布者的权益。 支持动态发布数据,支持多数据源数据发布。具有如下特性:
[0034] 对数据的匿名化操作具有单向性,无法通过匿名标识符反向计算得到源标识符, 同时,统一的匿名化计算使得不同数据源的同一个标识符所计算出的匿名化标识符一致, 不破坏数据之间的关系,保留了对数据关联分析的价值。
[0035] 具有抗列重排序和行重排序的特性,水印的计算与行列顺序无关,只与标识符的 值有关,所以对行列数据的重排序对本水印机制不会造成影响。
[0036] 本发明支持动态发布匿名数据,仅需要对新产生的数据进行匿名化数字水印运算 即可完成动态发布,不需要对之前已发布的数据进行操作。
【附图说明】
[0037] 图1为本发明一种匿名化的数字水印嵌入方法流程示意图。
[0038] 图2为本发明一种匿名化的数字水印提取方法流程示意图。
【具体实施方式】
[0039]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并 不用于限定本发明。
[0040] 首先根据需要被保护的唯一、标志性数据就是所需要嵌入的水印信息。如,用户的 身份证号、时间等。
[0041] 图1示出了本发明一种匿名化的数字水印嵌入方法的一个实施例:一种匿名化的 数字水印嵌入方法,包括以下步骤:
[0042]步骤一,对所需要嵌入的水印信息进行水印字符串生成处理,根据水印字符串大 小随机生成散列所需要的盐,对水印字符串进行加盐处理得到;
[0043]步骤二,对水印字符串中需要匿名的数据逐行依次进行散列处理,得到匿名标识 符;
[0044] 步骤三,利用散列值进行带盐散列计算;
[0045] 步骤四,水印索引计算;
[0046] 步骤五,水印嵌入;
[0047] 步骤六,判断是否最后一行数据,如果继续重复步骤二至步骤六;
[0048] 步骤七,若为最后一行数据则得到带有版权标记的匿名化数据集。
[0049] 根据本发明一种匿名化的数字水印嵌入方法的另一个实施例,所述步骤一中,对 水印字符串进行加盐处理的方法是将水印字符串与盐字符串进行连接,加盐的目的是为了 防止对散列算法的字典攻击。
[0050] 根据本发明一种匿名化的数字水印嵌入方法的另一个实施例,所述步骤三中,带 盐散列计算的散列函数是MD5(Message Digest Algorithm 5)、SHA(Secure Hash Algorithm)或MAC(Message Authentication Code)。
[0051] 根据本发明一种匿名化的数字水印嵌入方法的一个优选实施
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1