一种水印关系数据库管理的方法

文档序号:6421290阅读:131来源:国知局
专利名称:一种水印关系数据库管理的方法
技术领域
本发明涉及一种水印关系数据库管理的方法,属于数据库版权管理
背景技术
“水印”原指的是在造纸的过程中,通过一些特殊的方法改变纸浆纤维的密度,制成有明暗纹理的图标或者是文字,以标明造纸生产的版权。而数字水印则是将代表著作权人身份的特定信息,以水印方式预先植入被保护的信息中,通过相应的检测算法提取出原始数字水印,或是基于统计原理的检验结果,证明数字产品版权的归属的技术。它是一种继密码术之后对数据版权提供有效保护的又一有效措施。
世界著名企业IBM公司阿尔马登研究中心的Agrawal等人在2002年8月的VLDB大会上发表了第一篇题为“Watermarking Relational Databases”文献,描述了如何在关系数据中嵌入和提取数字水印。之后Agrawal等人又发表了一篇题为“A SystemFor Watermarking Relational Databases”的文章,展示了他们所提出的水印算法在数据库客户端的应用,仅完成水印嵌入原始数据,提取水印信息的工作,其水印信息不能随着关系数据动态地增加、删除、修改而同步改变。水印关系数据库管理的方法使得关系数据库管理系统有了对关系数据嵌入水印,提取水印,管理水印的能力。
根据数字水印与关系数据库管理系统的特点,对水印关系数据库管理的方法有比较特殊的要求。①关系数据库中的关系数据允许有一定的修改而不影响其正常的使用。对用户来说,对这类数据的正确性有一定的容忍度,牺牲数据的一点正确性来换取原始数据信息的版权保护是值得的。②关系数据库需要进行关系运算,那么在进行一系列的关系运算过程之后,水印仍然要附着于原始数据之上。③数据拥有者对带有水印的关系数据库进行更新时,水印信息应该随着数据的更新而加入,且更新数据的水印信息与原关系数据库水印信息需保持一致,这是水印关系数据库研究的难点之一。④水印检测时,既不需要原来的水印信息,也不需要原始数据就可以从水印数据中还原出水印,实现水印的盲提取。⑤带有水印的数据形成的数字产品,转移到带有水印管理功能的或者兼容的数据库管理系统中仍然能够运行,水印可以随之迁移,不会轻易丢失。⑥水印关系数据库管理系统必须具有较高的安全保密性,原始数据与水印信息不能被轻易拆分。⑦水印关系数据与水印关系数据库管理系统有本质区别。水印关系数据是指版权人将原始数据嵌入水印信息后发布与他人使用的数据;而水印关系数据库管理系统则是能够对关系数据实施水印嵌入、提取、检测和管理的系统。版权人通过密钥对自己的水印关系数据库进行管理,而且水印的嵌入、检测对没有被授权的第三方保密。根据这些特殊要求,对水印关系数据库的管理不仅要保证嵌入、提取水印流程的合理性,还要保证对水印关系数据实施最有效的管理,运算、更新及迁移。
综上所述,水印关系数据库管理不仅需要对关系数据进行水印添加、提取、检测工作,还需要兼顾对水印关系数据库实施有效的管理,比如像水印系统的安全性,数据与水印的同步更新等诸多方面的问题。

发明内容
本发明的目的是提出水印关系数据库管理的方法,该方法能够创建,管理水印关系数据库,并对关系数据进行水印嵌入,提取、检测和有效的管理,最终达到对原始数据版权保护的目的。
本发明提出的水印关系数据库管理的方法,包括以下各步骤(1)用户输入嵌入、提取水印流程管理信息,以建立一个水印管理注册表;(2)用户根据关系数据库中的数据类型,从步骤(1)的注册表中选择相应的嵌入、提取水印流程;(3)在关系数据库中建立一个水印信息映射表,其中包括上述步骤(2)选定的嵌入水印流程的标识符号、提取水印流程的标识符号及相应的水印嵌入流程所需的水印信息参数名,需嵌入水印的关系数据表的表名,并输入水印信息参数值;(4)在向需嵌入水印的关系数据表中输入新的数据时,启动步骤(2)中选定的嵌入水印流程;从步骤(3)的映射表中读取水印参数值,向输入的数据中嵌入水印,并将该水印数据存入关系数据表中;(5)在更新水印关系数据表中的数据时,根据关系数据表的表名,从步骤(3)的映射表中检索相应的嵌入水印流程标识符号,并从步骤(2)的注册表中检索该嵌入水印流程的位置,启动该流程,向更新的数据中嵌入水印;(6)从水印关系数据表中提取水印时,根据步骤(2)中选定的提取水印流程的标识符号,从步骤(1)的注册表中检索提取水印流程的位置,根据提取水印流程所需的参数名输入相应的参数值,启动提取水印流程,提取水印,得到版权人信息。
上述方法中的管理信息包括用以标识嵌入水印流程的符号、嵌入水印流程所在的位置、嵌入水印流程所需的水印参数名及类型、用以标识提取水印流程的符号、提取水印流程所在的位置、提取水印流程所需的参数名及类型。
上述方法中的数据类型包括数值型数据、文本数据、图像数据、音频数据或多媒体数据中的任何一种。
本发明提出的另一种水印关系数据库管理的方法,包括以下各步骤(1)用户输入嵌入、提取水印流程管理信息,以建立一个水印管理注册表;(2)用户根据关系数据库中的数据类型,从步骤(1)的注册表中选定相应的嵌入、提取水印流程,并在关系数据库中建立一个水印信息映射表,其中包括选定的嵌入水印流程的标识符号、提取水印流程的标识符号及相应的水印嵌入流程所需的水印信息参数名,需嵌入水印的关系数据表的表名,并输入水印信息参数值;(3)从需嵌入水印的关系数据表中读取数据,启动步骤(2)中选定的嵌入水印流程,从映射表中读取水印参数值,向数据中嵌入水印,并将该水印数据存入关系数据表中;
(4)重复上述步骤,直至关系数据表被全部嵌入水印;(5)从水印关系数据表中提取水印时,根据步骤(2)中选定的提取水印流程的标识符号,从步骤(1)的注册表中检索提取水印流程的位置,根据提取水印流程所需的参数名输入相应的参数值,启动提取水印流程,提取水印,得到版权人信息。
上述方法中的管理信息包括用以标识嵌入水印流程的符号、嵌入水印流程所在的位置、嵌入水印流程所需的水印参数名及类型、用以标识提取水印流程的符号、提取水印流程所在的位置、提取水印流程所需的参数名及类型。
上述方法中的数据类型包括数值型数据、文本数据、图像数据、音频数据或多媒体数据中的任何一种。
上述方法中,当关系数据表被全部嵌入水印后,向另一关系数据表嵌入水印的步骤还包括用户根据该关系数据表中的数据类型,从水印管理注册表中选定相应的嵌入、提取水印流程,并将选定的嵌入水印流程的标识符号、提取水印流程的标识符号及相应的水印嵌入流程所需的水印信息参数名,需嵌入水印的关系数据表的表名复制到已建立的水印信息映射表中,并向映射表中输入水印信息参数值。
本发明提出的水印关系数据库管理的方法,是一种能够根据版权人不同的需求,即不同的数据类型,选择相应的嵌入或提取水印流程,对数据嵌入水印或提取水印,实现对水印关系数据库管理。通过对水印关系数据库实施有效的管理,提高关系数据库管理系统的安全性和可操作性。被嵌入的水印具有较强的隐匿性和鲁棒性,能进行正常的关系运算和数据迁移等。通过本发明的方法,使得关系数据库管理系统既能够对新插入的数据逐条嵌入水印,在水印数据被修改时动态地修改水印信息,保持更新前后水印的一致性,还能分别对水印关系数据与普通关系数据实施不同的数据操作和管理,根据版权人的需要将普通关系数据库转变为水印关系数据库。在水印关系数据库管理系统中,嵌入的水印信息,密钥等对版权人来说是透明的,将版权人、水印关系数据库的信息记录在特定的注册表和映射表中,使得关系数据库管理系统对关系数据是否嵌有水印有了判断能力。


图1是本发明方法的流程框图。
图2是本发明提出的另一种方法的流程框图。
具体实施例方式
下面结合附图对本发明作进一步的详细描述。
系统启动时,创建嵌入水印流程、提取水印流程管理注册表,其结构包括嵌入水印流程的唯标识符号,嵌入水印流程所处的位置,嵌入水印流程所需要输入的水印信息参数名及类型,提取水印流程的标识符号,提取水印流程所处的位置,提取水印流程所需要输入的提取水印的参数名及类型。
用户通过本发明方法提出的注册机制,将不同的嵌入水印流程,提取水印流程输入到注册表中。注册时,用户向系统输入嵌入水印流程、提取水印流程的标识符号,嵌入水印流程、提取水印流程的所在位置,嵌入水印流程、提取水印流程所需的参数名字和类型等信息后,将这些信息记录于注册表中。
用户在建立水印关系数据表时,水印关系数据库管理系统建立一张与嵌入水印流程、提取水印流程注册表相对应的水印信息映射表,其中包括上述注册表中的嵌入、提取水印流程的标识符号,嵌入水印流程所需的水印信息参数名字,嵌入水印流程所需水印参数值和水印关系数据表表名。用户根据数据类型选择嵌入水印流程,水印关系数据库管理系统自动将注册表中的水印嵌入流程的标识符号、水印嵌入流程所需的水印信息参数名以及水印关系数据表表名等复制到水印信息映射表中。提示用户输入这些水印嵌入流程水印参数名的数值,将其存储在水印信息映射表的相应位置。
当用户向水印关系数据表中输入一条新的数据时,水印关系数据库管理系统首先读取水印信息映射表中的水印信息参数值,启动嵌入水印流程,将这些参数和新输入的数据作为水印嵌入流程的输入参数,运行水印嵌入流程,得到水印关系数据后存入水印关系数据表中。重复以上新数据的输入过程,可以得到水印关系数据表,而重复建立关系数据表则得到一个水印关系数据库。
当用户需要更新某个水印数据时,关系数据库管理系统根据数据所在水印关系数据表的表名,在水印信息映射表中读出相应的水印信息参数值,将这些参数和更新后的数据作为嵌入水印流程的输入参数,启动水印嵌入流程,向更新的数据嵌入水印。这样就保证了嵌入水印的整体一致性。
本发明方法还可向已经存在于关系数据库中的普通关系数据嵌入水印。首先判断关系数据库中是否存在水印信息映射表。若存在,则用户根据该关系数据表中的数据类型,从水印管理注册表中选定相应的嵌入水印流程,并将选定的嵌入水印流程的标识符号、提取水印流程的标识符号及相应的水印嵌入流程所需的水印信息参数名,需嵌入水印的关系数据表的表名复制到水印信息映射表中,并向映射表中输入水印信息参数值。若不存在,则先创建这张水印信息映射表,再进行上述操作。
读取水印信息映射表中的水印参数后启动嵌入水印流程,读取关系数据表中的一条数据,与水印信息参数一起作为嵌入水印流程的输入参数,运行水印嵌入流程向这条数据中嵌入水印。读取下一条数据,重复上述过程,直到最后一条数据嵌入完毕。
在提取水印时,首先根据水印关系数据表的表名从水印信息映射表中检索提取水印流程的标识符号,再根据这个标识符号从注册表中检索提取水印流程参数名和提取水印流程所在的位置,提示用户输入提取水印流程参数值,启动提取水印流程,提取嵌入的水印,得到版权人信息。
以下为本发明的一个实施例当系统启动时,首先创建一张嵌入和提取水印流程的注册表。现假定以下的实例中所用到的数据的类型为数值型数据,在注册表中仅仅注册一种已有的云水印嵌入、提取流程。用户向系统输入嵌入的标识符号分别为嵌入水印流程1。嵌入水印流程所在的位置D\WaterMarking\WMIN.exe。水印信息参数名共四个,分别为版权人图像信息、密钥、可以嵌入水印的数值型属性个数、嵌入比例,类型分别为图像、整型、整型、浮点型。用户向系统输入提取水印流程的标识符号为提取水印流程1。提取水印流程所在的位置D\WaterMarking\WMOUT.exe。提取水印的参数名共三个密钥、嵌入水印的数值型属性个数、嵌入比例。类型分别为整型、整型、浮点型。水印关系数据库管理系统将这些信息存储到注册表中,如下图所示

使用CREATE WMTABLE命令创建水印关系数据表,水印关系数据库管理系统自动建立一张水印信息映射表,用户根据水印关系数据表中预输入的数据类型,从注册表中选择相应的嵌入水印流程。于是,嵌入水印流程的标识符号嵌入水印流程1,提取水印流程的标识符号提取水印流程1及相应的水印嵌入流程所需的水印信息参数名——版权人图像信息、密钥、嵌入水印的数值型属性个数、嵌入比例,需嵌入水印的关系数据表的表名被复制到水印信息映射表中。用户向上述表的对应位置输入水印信息参数值,它们分别是版权人图像1,密钥为11,嵌入水印的数值型属性个数为6,嵌入比例为0.2。如下图所示

当用户向上述的水印关系数据表中插入一条新的记录时,系统读取水印信息映射表中的水印信息参数值版权人图像1、密钥11、6个可以嵌入水印的数值型属性、嵌入比例0.2。根据嵌入水印流程标识符号嵌入水印流程1从注册表中检索嵌入水印流程所在位置D\WaterMarking\WMIN.exe后启动嵌入水印流程。嵌入水印流程对新数据嵌入水印的过程是这样的(1)接收水印参数值版权人图像1、密钥11、6个可以嵌入水印的数值型属性、嵌入比例0.2;(2)接收一条新的数据;(3)将版权人图像1转换成云特征信息;(4)生成一个云滴值;(5)根据密钥、数据主键值、嵌入水印的数值型属性个数,嵌入比例判断这条数据记录是否符合水印嵌入条件;(6)如果步骤(5)中的判断为真,则将步骤(4)中的云滴值嵌入到新数据中相应的一个属性值上,并将嵌入云滴水印的数据存入水印关系数据表中;(7)如果步骤(5)中的判断为假,直接将新数据存入水印关系数据表中;(8)重复步骤(1)至(7),插入下一条新的水印数据。
在修改上述水印关系数据表中的某一条数据时,水印关系数据库管理系统是这样处理的。读取水印信息映射表表中的水印信息参数值,它们分别是版权人图像1、密钥11、6个可以嵌入水印的数值型属性、嵌入比例0.2。根据嵌入水印流程标识符号嵌入水印流程1从注册表中检索嵌入水印流程所在位置D\WaterMarking\WMIN.exe后启动嵌入水印流程。嵌入水印流程对更新的数据嵌入水印的步骤是这样的(1)接收水印参数值版权人图像1、密钥11、6个可以嵌入水印的数值型属性、嵌入比例0.2;(2)接收一条更新的数据;(3)将版权人图像1转换成云特征信息;(4)生成一个云滴值;(5)根据密钥、更新数据主键值、嵌入水印的数值型属性个数,嵌入比例判断这条元组是否符合水印嵌入条件;(6)如果步骤(5)中的判断为真,将步骤(4)中的云滴值嵌入到更新数据中相应的一个属性值上;(7)如果步骤(5)中的判断为假,跳过该数据,不做任何操作;(8)重复步骤(1)至(7),更新下一条新的水印数据。
若用户需要将普通关系数据表转变为水印关系数据表,以便对其中数据实施版权保护,其过程为,首先,用户在关系数据库中使用命令ALTER WM_TABLEDATA(WM_TABLEDATA为已经建立的普通关系数据表表名),水印关系数据库管理系统先判断库中是否存在水印信息映射表,若有,并且已经存有水印关系表1的水印信息,则直接提示用户选择所需的嵌入水印流程和提取水印流程。这里也以上述系统中已经存在的云水印嵌入流程和提取流程为例。将注册表中的嵌入、提取水印流程的标识符号嵌入水印流程1和提取水印流程1,嵌入水印流程的输入参数名字版权人图像信息、密钥、嵌入水印的数值型属性个数、嵌入比例复制到水印信息映射表中。用户向表中的对应位置输入水印信息参数值,它们分别是版权人图像2、密钥为0、嵌入水印的数值型属性个数为11、嵌入比例为0.25。输入完毕后系统将这些值和普通关系数据表表名水印关系表2复制到水印信息映射表中。如下图所示

若没有水印系信息映射表则先建立这张表,选择云水印嵌入水印流程、提取水印流程,将注册表中的嵌入、提取水印流程的标识符号嵌入水印流程1和提取水印流程1,嵌入水印流程的输入参数名字版权人图像信息、密钥、嵌入水印的数值型属性个数、嵌入比例复制到水印信息映射表中。输入水印信息参数值版权人图像2、密钥为0、嵌入水印的数值型属性个数为11、嵌入比例为0.25。如下图所示

建立水印信息映射表之后,水印关系数据库管理系统读取表中水印信息参数值,它们分别是版权人图像2、密钥为0、嵌入水印的数值型属性个数为11、嵌入比例为0.25。根据嵌入水印流程标识符号嵌入水印流程1从注册表中检索嵌入水印流程所在位置D\WaterMarking\WMIN.exe后启动嵌入水印流程。嵌入水印流程对数据嵌入水印的过程是这样的(1)接收水印信息参数值版权人图像2、密钥为0、嵌入水印的数值型属性个数为11、嵌入比例为0.25;(2)从关系表中读取一条数据;(3)将版权人图像2转换成云特征信息;(4)根据步骤(3)的云特征信息生成一个云滴值;(5)根据密钥、数据主键值、嵌入水印的数值型属性个数,嵌入比例判断这条数据是否符合水印嵌入条件;(6)如果步骤(5)中的判断为真,则将步骤(4)中的云滴值嵌入到数据中相应的一个属性值上;(7)如果步骤(5)中的判断为假,跳过该数据,不做任何操作;(8)重复步骤(2)至(7),直到整张关系数据表的数据嵌入所需水印。
对水印关系数据表水印关系表1提取数字水印时,首先在水印信息映射表中检索提取水印流程的标识符号嵌入水印流程1,根据这个标识符号在注册表中检索到提取水印流程所在位置D\WaterMarking\WMOUT.exe和提取水印流程的提取水印参数名字密钥,嵌入水印的数值型属性个数,嵌入水印比例中的。用户向水印关系数据库管理系统输入水印提取的参数值为密钥为11;嵌入水印的数值型属性个数为6;嵌入比例为0.2,启动提取水印流程。其提取水印的具体步骤是这样的(1)接收水印参数值密钥为11;嵌入水印的数值型属性个数为6;嵌入比例为0.2;(2)从关系表中读取一条数据;(3)根据密钥、数据主键值、嵌入水印的数值型属性个数,嵌入比例判断这条数据是否符合水印嵌入条件;(4)如果步骤(3)中的判断为真,则得到已经嵌入云滴水印的属性值,将云滴值从数据中取出并保存;(5)如果步骤(3)中的判断为假,跳过该数据,不做任何操作;(6)重复步骤(2)至(5),得到所有的云滴水印。
最后,通过还原提取到的云滴水印,就可以得到嵌入的版权人图片信息。
权利要求
1.一种水印关系数据库管理的方法,其特征在于该方法包括以下各步骤(1)用户输入嵌入、提取水印流程管理信息,以建立一个水印管理注册表;(2)用户根据关系数据库中的数据类型,从步骤(1)的注册表中选择相应的嵌入、提取水印流程;(3)在关系数据库中建立一个水印信息映射表,其中包括上述步骤(2)选定的嵌入水印流程的标识符号、提取水印流程的标识符号及相应的水印嵌入流程所需的水印信息参数名,需嵌入水印的关系数据表的表名,并输入水印信息参数值;(4)在向需嵌入水印的关系数据表中输入新的数据时,启动步骤(2)中选定的嵌入水印流程;从步骤(3)的映射表中读取水印参数值,向输入的数据中嵌入水印,并将该水印数据存入关系数据表中;(5)在更新水印关系数据表中的数据时,根据关系数据表的表名,从步骤(3)的映射表中检索相应的嵌入水印流程标识符号,并从步骤(2)的注册表中检索该嵌入水印流程的位置,启动该流程,向更新的数据中嵌入水印;(6)从水印关系数据表中提取水印时,根据步骤(2)中选定的提取水印流程的标识符号,从步骤(1)的注册表中检索提取水印流程的位置,根据提取水印流程所需的参数名输入相应的参数值,启动提取水印流程,提取水印,得到版权人信息。
2.如权利要求1所述的方法,其特征在于步骤(1)中所述的管理信息包括用以标识嵌入水印流程的符号、嵌入水印流程所在的位置、嵌入水印流程所需的水印参数名及类型、用以标识提取水印流程的符号、提取水印流程所在的位置、提取水印流程所需的参数名及类型。
3.如权利要求1所述的方法,其特征在于步骤(2)中的数据类型包括数值型数据、文本数据、图像数据、音频数据或多媒体数据中的任何一种。
4.一种水印关系数据库管理的方法,其特征在于该方法包括以下各步骤(1)用户输入嵌入、提取水印流程管理信息,以建立一个水印管理注册表;(2)用户根据关系数据库中的数据类型,从步骤(1)的注册表中选定相应的嵌入、提取水印流程,并在关系数据库中建立一个水印信息映射表,其中包括选定的嵌入水印流程的标识符号、提取水印流程的标识符号及相应的水印嵌入流程所需的水印信息参数名,需嵌入水印的关系数据表的表名,并输入水印信息参数值;(3)从需嵌入水印的关系数据表中读取数据,启动步骤(2)中选定的嵌入水印流程,从映射表中读取水印参数值,向数据中嵌入水印,并将该水印数据存入关系数据表中;(4)重复上述步骤,直至关系数据表被全部嵌入水印;(5)从水印关系数据表中提取水印时,根据步骤(2)中选定的提取水印流程的标识符号,从步骤(1)的注册表中检索提取水印流程的位置,根据提取水印流程所需的参数名输入相应的参数值,启动提取水印流程,提取水印,得到版权人信息。
5.如权利要求4所述的方法,其特征在于步骤(1)中所述的管理信息包括用以标识嵌入水印流程的符号、嵌入水印流程所在的位置、嵌入水印流程所需的水印参数名及类型、用以标识提取水印流程的符号、提取水印流程所在的位置、提取水印流程所需的参数名及类型。
6.如权利要求4所述的方法,其特征在于步骤(2)中的数据类型包括数值型数据、文本数据、图像数据、音频数据或多媒体数据中的任何一种。
7.如权利要求4所述的方法,其特征在于当关系数据表被全部嵌入水印后,向另一关系数据表嵌入水印的步骤还包括用户根据该关系数据表中的数据类型,从水印管理注册表中选定相应的嵌入、提取水印流程,并将选定的嵌入水印流程的标识符号、提取水印流程的标识符号及相应的水印嵌入流程所需的水印信息参数名,将需嵌入水印的关系数据表的表名复制到已建立的水印信息映射表中,并向映射表中输入水印信息参数值。
全文摘要
本发明涉及一种水印关系数据库管理的方法,属于数据库版权管理技术领域。首先,用户输入嵌入、提取水印流程管理信息,以建立一个水印管理注册表;用户根据数据类型,从注册表中选择相应的嵌入、提取水印流程;在关系数据库中建立一个水印信息映射表,在向需嵌入水印的关系数据表中输入新的数据、更新水印关系数据表中的数据以及从水印关系数据表中提取水印时,根据水印管理注册表和水印信息映射表中提供的信息,实现对水印关系数据库的管理。利用本发明的方法,分别对水印关系数据与普通关系数据实施不同的数据操作和管理,根据版权人的需要将普通关系数据库转变为水印关系数据库,提高关系数据库管理系统的版权保护能力。
文档编号G06K9/00GK1555021SQ200310122488
公开日2004年12月15日 申请日期2003年12月26日 优先权日2003年12月26日
发明者李德毅, 王建民, 张指浩, 张勇, 靳晓明 申请人:中国人民解放军总参谋部第六十一研究所, 清华大学, 中国人民解放军总参谋部第六十一研究
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1