CN111400670B - 一种水印添加方法、装置、设备及存储介质 - Google Patents
一种水印添加方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111400670B CN111400670B CN202010150543.7A CN202010150543A CN111400670B CN 111400670 B CN111400670 B CN 111400670B CN 202010150543 A CN202010150543 A CN 202010150543A CN 111400670 B CN111400670 B CN 111400670B
- Authority
- CN
- China
- Prior art keywords
- value
- digit
- data
- determining
- numerical value
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000012795 verification Methods 0.000 claims abstract description 15
- 238000013507 mapping Methods 0.000 claims description 37
- 238000006243 chemical reaction Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000005336 cracking Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/16—Program or content traceability, e.g. by watermarking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Editing Of Facsimile Originals (AREA)
- Image Processing (AREA)
Abstract
本发明适用于计算机技术领域,提供了一种水印添加方法、装置、设备及存储介质,所述水印添加方法包括:根据秘钥中各位数字的数值与位置值,确定各位数字的校验值;根据各位数字的数值、位置值与校验值确定与各位数字对应的三位字符串集合;将所述三位字符串集合中的三位字符串替换目标数据中部分数据的三位字符串,生成添加了水印的数据。本发明实施例提供的一种水印添加方法,水印信息是作为数据的一部分插入到待添加水印的数据中的,隐秘性强,且利用校验值可以快速溯源出秘钥。
Description
技术领域
本发明属于计算机技术领域,尤其涉及一种水印添加方法、装置、设备及存储介质。
背景技术
随着业务支撑系统的发展,其业务运营数据的安全保护也越发重要,因此数据的水印添加也成为当前安全工作的重中之重。
目前的水印方法为在一些word,pdf或者网页上打上水印信息,这些水印信息里会包含用户信息,一旦相关信息泄露,就可以从水印信息里清晰的看出是谁泄露的。然而现有添加的水印大多数都是明水印,水印信息都是可以直接看到的,并且容易处理掉,例如word的水印信息,可以通过相应软件直接关闭,网页的水印信息,可以F12打开开发者模式,直接去掉水印图层。而一旦水印信息被处理掉,就丧失了溯源的能力。
可见,现有的水印添加技术所添加的水印稳定性不强,容易被破坏。
发明内容
本发明实施例的目的在于提供一种水印添加方法,旨在解决现有的水印添加技术所添加的水印还存在的稳定性不强,容易被破坏的技术问题。
本发明实施例是这样实现的,一种水印添加方法,包括:
根据秘钥中各位数字的数值与位置值,按照预设的校验值确定规则确定所述各位数字的校验值;
根据所述各位数字的数值、位置值与校验值以及预设的值-字母映射表确定与所述各位数字对应的三位字符串集合;
按照预设的水印添加规则,将所述三位字符串集合中的三位字符串替换目标数据中部分数据的三位字符串,生成添加了水印信息的数据。
本发明实施例的另一目的在于提供一种水印添加装置,包括:
校验值确定模块,用于根据秘钥中各位数字的数值与位置值,按照预设的校验值确定规则确定所述各位数字的校验值;
字符串确定模块,用于根据所述各位数字的数值、位置值与校验值以及预设的值-字母映射表确定与所述各位数字对应的三位字符串集合;
水印添加模块,用于按照预设的水印添加规则,将所述三位字符串集合中的三位字符串替换目标数据中部分数据的三位字符串,生成添加了水印信息的数据。
本发明实施例的另一目的在于提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上述所述的水印添加方法的步骤。
本发明实施例的另一目的在于提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述所述的水印添加方法的步骤。
本发明实施例提供的一种水印添加方法,通过将秘钥中的各位数字转化为由数值、位置值以及校验值组成的三位数字,并映射为三位字符串,然后分别替换掉目标数据中部分数据的三位字符串,通过上述方式,一方面,秘钥信息也就是水印信息是作为数据的一部分插入到数据中的,隐秘性强,另一方面,秘钥信息拆成为多份分别添加到不同的数据中,即使部分添加了秘钥信息的数据被破坏了,通过剩余数据依旧可以溯源出原始秘钥信息,抗干扰能力强。
附图说明
图1为本发明实施例提供的一种水印添加方法的步骤流程图;
图2为本发明实施例提供的另一种水印添加方法的步骤流程图;
图3为本发明实施例提供的又一种水印添加方法的步骤流程图;
图4为本发明实施例提供的再一种水印添加方法的步骤流程图;
图5为本发明实施例提供的还一种水印添加方法的步骤流程图;
图6为本发明实施例提供的还一种水印添加方法的步骤流程图;
图7为本发明实施例提供的一种从添加了水印信息的数据中提取秘钥的方法的步骤流程图;
图8为本发明实施例提供的另一种从添加了水印信息的数据中提取秘钥的方法的步骤流程图;
图9为本发明实施例提供的一种水印添加装置的结构示意图;
图10为本发明实施例提供的一种可用于实现水印添加方法的计算机设备的内部结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明为解决现有的水印添加技术所添加的水印稳定性不强,容易被破坏的技术问题,通过将与水印信息对应的秘钥的各位数字转化为数值、位置值与校验值的三位数字,然后进一步转化为三位字符串并插入到目标数据中,隐秘性强,不便于被破坏,此外,秘钥的各位数字是拆成多份添加到不同数据中,即使部分添加了水印信息的数据被破坏了,能可以通过剩余的数据溯源,稳定性强。当需要对数据进行溯源时,首先将各数据对应转化为数值、位置值与校验值的三位数字,利用校验值可以判断出该数据是否为可能加了水印的数据,当该数据判断是加了水印的数据时,进一步利用数值以及位置值确定秘钥的一位数字信息,每一个水印数据都可以溯源出一份秘钥信息(即一位数字信息),将所有数据溯源后,我们能得到许多份秘钥信息,我们将这些秘钥信息拼装,即可复原得到原始秘钥信息。
如图1所示,为本发明实施例提供的一种水印添加方法的步骤流程图,具体包括以下步骤:
步骤S102,根据秘钥中各位数字的数值与位置值,按照预设的校验值确定规则确定所述各位数字的校验值。
在本发明实施例中,确定校验值是为了在数据添加水印之后需要对秘钥信息进行复原时,利用校验值可以确定出那些数据附带了水印信息,也就是说校验值与数值和位置值存在某种预设的关系式,当溯源时,根据各数据所反推出来的校验值、数值、位置值满足上述预设的关系式时,表明该数据附加了水印信息,可以进一步根据位置值以及数值确定秘钥的一位数字信息。
步骤S104,根据所述各位数字的数值、位置值与校验值以及预设的值-字母映射表确定与所述各位数字对应的三位字符串集合。
在本发明实施例中,考虑到计算机中所用到的数据通常为字符型数据,因此,需要将校验值、数值、位置值转化为相应的字符串,因此,需要预先准备一个值-字母映射表,该映射表中记载了值与字母的映射关系,基于该值-字母映射表能够将校验值、数值、位置值转化为相应的字符串,进一步的在溯源过程中,利用该映射表能够从数据中反推出校验值、数值以及位置值。
步骤S106,按照预设的水印添加规则,将所述三位字符串集合中的三位字符串替换目标数据中部分数据的三位字符串,生成添加了水印信息的数据。
在本发明实施例中,由于水印算法会改变原有数据,不能每一条数据都加水印信息,这样会导致所有数据都无法使用,通过设置一定的水印比例,并按照预设的水印添加规则决定该如何添加水印信息,例如替换哪些数据的哪三位字符串(通常是替换后三位,便于溯源)。此时,秘钥被分割插入到不同的数据当中,隐秘性较好。
在本发明实施例中,所述目标数据即为待添加水印的数据,具体可以是文档、图片、表格等等等。
本发明实施例提供的一种水印添加方法,通过将秘钥中的各位数字转化为由数值、位置值以及校验值组成的三位数字,并映射为三位字符串,然后分别替换掉目标数据中部分数据的三位字符串,通过上述方式,一方面,秘钥信息是作为数据的一部分插入到数据中的,隐秘性强,另一方面,秘钥信息拆成为多份分别添加到不同的数据中,即使部分添加了秘钥信息的数据被破坏了,通过剩余数据依旧可以溯源出原始秘钥信息,抗干扰能力强。
如图2所示,为本发明实施例提供的另一种水印添加方法的步骤流程图,详述如下。
在本发明实施例中,与图1示出的一种水印添加方法的步骤流程图的区别在于,所述步骤S102具体包括:
步骤S202,对秘钥中各位数字的数值进行随机转化处理,生成转化后数值。
在本发明实施例中,所述转化后数值与随机转化处理前的数值的奇偶性相同。由于计算机中通常是二进制数存储数据,也即是说秘钥通常也是若干位的二进制数。此时,秘钥中各位数字的数值通常只会取0或1,对应的字母取值也只有两种可能,容易被破解,需要对数值转化,使其可以变成更多的数值,对应更多的字母,但同时考虑到转化之后的数值容易溯源,基于此,选择利用0或1的奇偶性进行转化。也就是说当秘钥中某一位数字为0时,此时转化后的数值为偶数,当某一位数字为1时,此时转化后的数值为奇数。此时,在溯源过程中,可以根据数据对应的数值的奇偶性判断秘钥中对应位置的数值为0或者1。
在本发明实施例中,一种可行的对数值进行转化的过程具体请参阅图3及其解释说明。
步骤S204,根据秘钥中各位数字的转化后数值与位置值,按照预设的校验值确定规则确定所述各位数字的校验值。
在本发明实施例中,一种可行的确定校验值的过程具体请参阅图4及其解释说明。
本发明实施例提供的另一种水印添加方法,考虑到现有秘钥通常是二进制数,各位数字的取值仅仅只有0或1两种结果,对应的字母较少,添加水印后容易被破解,利用0和1的奇偶性,对各位数字的取值进行随机转化处理,生成与原数值奇偶性相同的转化后数值,在便于溯源的同时,扩充了数值的取值,可以对应更多字母,提高了水印被破译的难度。
如图3所示,为本发明实施例提供的又一种水印添加方法的步骤流程图,详述如下。
在本发明实施例中,与图2示出的一种水印添加方法的步骤流程图的区别在于,所述步骤S202具体包括:
步骤S302,将秘钥中各位数字的数值分别加上随机偶数后,对所述值-字母映射表包含的字母个数取余,生成与所述各位数字分别对应的转化后数值。
在本发明实施例中,由于转化后的数值不能大于值-字母映射表的最大值,因此可以通过对值-字母映射表包含的字母个数取余,考虑到不能破坏转化数值的奇偶性,此时值-字母映射表包含的字母个数应当为偶数。即转化后数值n′与原始值n以及值-字母映射表包含的字母个数l的关系式为:n′=(n+2a)%l。a为随机数,2a即为随机偶数,%为取余处理。
本发明实施例提供了一种具体的转化规则,利用上述转化规则,可以将秘钥中各位数字的数值0或1转化为不同的数值,可以对应更多的字母,且利用转化后数值的奇偶性可以较为简单的推算出数字的原始数值为0或1。
如图4所示,为本发明实施例提供的再一种水印添加方法的步骤流程图,详述如下。
在本发明实施例中,与图3示出的一种水印添加方法的步骤流程图的区别在于,所述步骤S204具体包括:
步骤S402,将所述各位数据的转化后数值与位置值分别相乘后,对所述值-字母映射表包含的字母个数取余,生成与所述各位数字分别对应的校验值。
在本发明实施例中,如果不添加校验值,此时对添加水印的数据进行秘钥溯源时,任何一个数据都可以转化为数值以及位置值,从而无法筛选出那些数据是添加的秘钥信息,那些数据是真实原始数据,而通过增设与转化后数值以及位置值相关的校验值,在溯源时,通过判断转化出的校验值是否满足预设的校验值确定规则,能够将满足预设的校验值确定规则的数据也就是更可能是添加了秘钥信息的数据筛选出来,从而更为准确的对秘钥进行溯源。
在本发明实施例中,校验值c与转化后数值n′、位置值b以及字典映射表长度l的关系式为:c=(n′*b)%l。
在本发明实施例中,需要说明的是,虽然未添加秘钥信息的数据也可能会存在转化出的校验值、数值以及位置值满足上述关系式,但该数据量较少,未添加秘钥信息的数据而满足上述关系式的概率约为为1/l,因此,l通常选取较大的偶数,可以有效降低误差。
如图5所示,为本发明实施例提供的还一种水印添加方法的步骤流程图,详述如下。
在本发明实施例中,与图3示出的一种水印添加方法的步骤流程图的区别在于,在所述步骤S202前,还包括:
步骤S502,随机生成若干位的二进制数。
在本发明实施例中,所述二进制数即为秘钥,通常为随机生成。
步骤S504,利用随机算法不重复地生成偶数个字母组成字母序列,并根据字母序列中各序列值与相应序列字母的对应关系生成值-字母映射表。
在本发明实施例中,所述值-字母映射表也未随机生成,对于该字母序列中第X位上的字母,可以建立该字母与值X的对应关系,该对应关系即为值-字母映射表。
如图6所示,为本发明实施例提供的还一种水印添加方法的步骤流程图,详述如下.
在本发明实施例中,与图2示出的一种水印添加方法的步骤流程图的区别在于,在所述步骤S206后,还包括:
步骤S602,从所述添加了水印信息的数据中提取出秘钥。
在本发明实施例中,为了描述本发明所使用的水印添加方法能够实现本发明所实现的效果,下面结合附图7对本发明从一份添加了水印信息的数据中提取秘钥的方法进行解释说明。
如图7所示,为本发明实施例提供的一种从添加了水印信息的数据中提取秘钥的方法的步骤流程图,具体包括以下步骤:
步骤S702,根据所述添加了水印信息的数据的替换位置的三位字母分别确定数据对应的位置值、数值以及校验值,并筛选出水印数据。
在本发明实施例中,所述水印数据是指对应的位置值、数值以及校验值满足所述校验值确定规则的数据。所述替换位置与所述水印添加规则相关,具体的,例如在前述的水印添加规则中,是利用三位字符串集合中的三位字符串替换目标数据中部分数据的最后三位字符串时,此时,根据添加了水印信息的多个数据中最后三位的字符串可以确定与所述多个数据对应的位置值、数值以及校验值,进一步利用这三个值计算是否满足前述的校验值确定规则,当满足前述的校验值确定规则,表明该数据极有可能是携带有秘钥信息,也就是是被替换了三位字符串的数据。
步骤S704,根据所述水印数据对应的位置值以及对应的数值的奇偶性确定秘钥。
在本发明实施例中,每一个水印数据对应的位置值以及对应的数值的奇偶性就可以表示秘钥的一位数字,对秘钥的各个数字进行组装即可得到原始秘钥。
如图8所示,为本发明实施例提供的另一种从添加了水印信息的数据中提取秘钥的方法的步骤流程图,详述如下。
在本发明实施例中,与图7示出的一种提取秘钥的方法的步骤流程图的区别在于,所述步骤S704具体包括:
步骤S802,根据所述水印数据对应的位置值以及对应的数值的奇偶性确定秘钥在所述位置值处的数值。
步骤S804,当秘钥在所述位置值处对应多个数值时,将次数最多的数值确定为所述位置值处的数值。
在本发明实施例中,考虑到误差的存在,例如部分未添加水印信息的数据所转化出的位置值、数值以及校验值刚好符合上述校验值确定规则,此时该数据为伪数据,所确定出的秘钥信息为伪,为了避免伪秘钥信息的干扰,将每一位数字对应的字符串插入到多份数据中,并将次数最多的数值确定为所述位置值处的数值。此外,将每一位数字对应的字符串插入到多份数据,即使部分数据被破坏,仍可以完整的对整个秘钥进行溯源。
如图9所示,为本发明实施例提供的一种水印添加装置的结构示意图,详述如下。
在本发明实施例中,所述在水印添加装置具体包括校验值确定模块910、字符串确定模块920以及水印添加模块930。
所述校验值确定模块910,用于根据秘钥中各位数字的数值与位置值,按照预设的校验值确定规则确定所述各位数字的校验值。
在本发明实施例中,确定校验值是为了在数据添加水印之后需要对秘钥信息进行复原时,利用校验值可以确定出那些数据附带了水印信息,也就是说校验值与数值和位置值存在某种预设的关系式,当溯源时,根据各数据所反推出来的校验值、数值、位置值满足上述预设的关系式时,表明该数据附加了水印信息,可以进一步根据位置值以及数值确定秘钥的一位数字信息。
所述字符串确定模块920,用于根据所述各位数字的数值、位置值与校验值以及预设的值-字母映射表确定与所述各位数字对应的三位字符串集合。
在本发明实施例中,考虑到计算机中所用到的数据通常为字符型数据,因此,需要将校验值、数值、位置值转化为相应的字符串,因此,需要预先准备一个值-字母映射表,该映射表中记载了值与字母的映射关系,基于该值-字母映射表能够将校验值、数值、位置值转化为相应的字符串,进一步的在溯源过程中,利用该映射表能够从数据中反推出校验值、数值以及位置值。
所述水印添加模块930,用于按照预设的水印添加规则,将所述三位字符串集合中的三位字符串替换目标数据中部分数据的三位字符串,生成添加了水印信息的数据。
在本发明实施例中,由于水印算法会改变原有数据,不能每一条数据都加水印信息,这样会导致所有数据都无法使用,通过设置一定的水印比例,并按照预设的水印添加规则决定该如何添加水印信息,例如替换哪些数据的哪三位字符串(通常是替换后三位,便于溯源)。此时,秘钥被分割插入到不同的数据当中,隐秘性较好。
在本发明实施例中,所述目标数据即为待添加水印的数据,具体可以是文档、图片、表格等等等。
本发明实施例提供的一种水印添加装置,通过将秘钥中的各位数字转化为由数值、位置值以及校验值组成的三位数字,并映射为三位字符串,然后分别替换掉目标数据中部分数据的三位字符串,通过上述方式,一方面,秘钥信息是作为数据的一部分插入到数据中的,隐秘性强,另一方面,秘钥信息拆成为多份分别添加到不同的数据中,即使部分添加了秘钥信息的数据被破坏了,通过剩余数据依旧可以溯源出原始秘钥信息,抗干扰能力强。
图10示出了一个实施例中计算机设备的内部结构图。如图10所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现水印添加方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行水印添加方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的在水印添加装置可以实现为一种计算机程序的形式,计算机程序可在如图10所示的计算机设备上运行。计算机设备的存储器中可存储组成该在数据中添加水印的装置的各个程序模块,比如,图9所示的校验值确定模块910、字符串确定模块920以及水印添加模块930。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的水印添加方法中的步骤。
例如,图10所示的计算机设备可以通过如图9所示的在数据中添加水印的装置中的校验值确定模块910执行步骤S102;可通过字符串确定模块920执行步骤S104;可通过水印添加模块930执行步骤S106。
在一个实施例中,提出了一种计算机设备,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
根据秘钥中各位数字的数值与位置值,按照预设的校验值确定规则确定所述各位数字的校验值;
根据所述各位数字的数值、位置值与校验值以及预设的值-字母映射表确定与所述各位数字对应的三位字符串集合;
按照预设的水印添加规则,将所述三位字符串集合中的三位字符串替换目标数据中部分数据的三位字符串,生成添加了水印信息的数据。
在一个实施例中,提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:根据秘钥中各位数字的数值与位置值,按照预设的校验值确定规则确定所述各位数字的校验值;
根据所述各位数字的数值、位置值与校验值以及预设的值-字母映射表确定与所述各位数字对应的三位字符串集合;
按照预设的水印添加规则,将所述三位字符串集合中的三位字符串替换目标数据中部分数据的三位字符串,生成添加了水印信息的数据。
应该理解的是,虽然本发明各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种水印添加方法,其特征在于,包括:
根据秘钥中各位数字的数值与位置值,按照预设的校验值确定规则确定所述各位数字的校验值;
根据所述各位数字的数值、位置值与校验值以及预设的值-字母映射表确定与所述各位数字对应的三位字符串集合;
按照预设的水印添加规则,将所述三位字符串集合中的三位字符串替换目标数据中部分数据的三位字符串,生成添加了水印信息的数据;
所述秘钥是若干位的二进制数;所述根据秘钥中各位数字的数值与位置值,并按照预设的校验值确定规则分别确定各位数字的校验值的步骤,具体包括:
对秘钥中各位数字的数值进行随机转化处理,生成转化后数值;所述转化后数值与随机转化处理前的数值的奇偶性相同;
根据秘钥中各位数字的转化后数值与位置值,按照预设的校验值确定规则确定所述各位数字的校验值;
所述根据所述各位数字的数值、位置值与校验值以及预设的值-字母映射表确定与所述各位数字对应的三位字符串集合的步骤具体为:
根据所述各位数字的转化后数值、位置值与校验值以及预设的值-字母映射表确定与所述各位数字对应的三位字符串集合;
所述值-字母映射表由偶数个字母排列组成;所述对秘钥中各位数字的数值进行随机转化处理,生成转化后数值的步骤,具体包括:
将秘钥中各位数字的数值分别加上随机偶数后,对所述值-字母映射表包含的字母个数取余,生成与所述各位数字分别对应的转化后数值;
所述根据秘钥中各位数字的转化后数值与位置值,按照预设的校验值确定规则分别确定各位数字的校验值的步骤,具体包括:
将所述各位数据的转化后数值与位置值分别相乘后,对所述值-字母映射表包含的字母个数取余,生成与所述各位数字分别对应的校验值。
2.根据权利要求1所述的水印添加方法,其特征在于,在所述对秘钥中各位数字的数值进行随机转化处理,生成转化后数值的步骤之前,还包括:
随机生成若干位的二进制数;
利用随机算法不重复地生成若干个字母组成字母序列,并根据字母序列中各序列值与相应序列字母的对应关系生成值-字母映射表。
3.根据权利要求1所述的水印添加方法,其特征在于,所述方法还包括:从所述添加了水印的数据中提取出秘钥;
所述从所述添加了水印信息的数据中提取出秘钥的步骤,具体包括:
根据所述添加了水印信息的数据的替换位置的三位字母分别确定数据对应的位置值、数值以及校验值,并筛选出水印数据;所述水印数据是指对应的位置值、数值以及校验值满足所述校验值确定规则的数据;所述替换位置与所述水印添加规则相关;
根据所述水印数据对应的位置值以及对应的数值的奇偶性确定秘钥。
4.根据权利要求3所述的水印添加方法,其特征在于,所述根据所述水印数据对应的位置值以及对应的数值的奇偶性确定秘钥的步骤,具体包括:
根据所述水印数据对应的位置值以及对应的数值的奇偶性确定秘钥在所述位置值处的数值;
当秘钥在所述位置值处对应多个数值时,将次数最多的数值确定为所述位置值处的数值。
5.一种水印添加装置,其特征在于,包括:
校验值确定模块,用于根据秘钥中各位数字的数值与位置值,按照预设的校验值确定规则确定所述各位数字的校验值;
对秘钥中各位数字的数值进行随机转化处理,生成转化后数值;所述转化后数值与随机转化处理前的数值的奇偶性相同;
根据秘钥中各位数字的转化后数值与位置值,按照预设的校验值确定规则确定所述各位数字的校验值;
字符串确定模块,用于根据所述各位数字的数值、位置值与校验值以及预设的值-字母映射表确定与所述各位数字对应的三位字符串集合;所述值-字母映射表由偶数个字母排列组成;将秘钥中各位数字的数值分别加上随机偶数后,对所述值-字母映射表包含的字母个数取余,生成与所述各位数字分别对应的转化后数值;
将所述各位数据的转化后数值与位置值分别相乘后,对所述值-字母映射表包含的字母个数取余,生成与所述各位数字分别对应的校验值;
水印添加模块,用于按照预设的水印添加规则,将所述三位字符串集合中的三位字符串替换目标数据中部分数据的三位字符串,生成添加了水印信息的数据。
6.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1至4中任一项权利要求所述的水印添加方法的步骤。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1至4中任一项权利要求的水印添加方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010150543.7A CN111400670B (zh) | 2020-03-06 | 2020-03-06 | 一种水印添加方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010150543.7A CN111400670B (zh) | 2020-03-06 | 2020-03-06 | 一种水印添加方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111400670A CN111400670A (zh) | 2020-07-10 |
CN111400670B true CN111400670B (zh) | 2023-12-15 |
Family
ID=71428577
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010150543.7A Active CN111400670B (zh) | 2020-03-06 | 2020-03-06 | 一种水印添加方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111400670B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115795418B (zh) * | 2023-01-17 | 2023-04-14 | 泉州艾奇科技有限公司 | 水印嵌入方法、装置、计算机、存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106780280A (zh) * | 2016-11-30 | 2017-05-31 | 深圳Tcl数字技术有限公司 | 数字水印加密方法及装置 |
WO2017093736A1 (en) * | 2015-12-01 | 2017-06-08 | Privitar Limited | Digital watermarking without significant information loss in anonymized datasets |
CN108763880A (zh) * | 2018-06-06 | 2018-11-06 | 广西英腾教育科技股份有限公司 | 文件水印的生成、检测方法以及装置 |
CN109670281A (zh) * | 2017-10-16 | 2019-04-23 | 北京大学 | 电子文档的处理方法和装置 |
CN110046524A (zh) * | 2019-04-16 | 2019-07-23 | 昆山丘钛微电子科技有限公司 | 一种数据的处理方法、装置、电子设备及介质 |
CN110322386A (zh) * | 2018-03-30 | 2019-10-11 | 中移(苏州)软件技术有限公司 | 一种数字文本水印嵌入及检测方法和装置 |
WO2019196866A1 (zh) * | 2018-04-11 | 2019-10-17 | 华为技术有限公司 | 匿名化处理方法、装置、设备及存储介质 |
-
2020
- 2020-03-06 CN CN202010150543.7A patent/CN111400670B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017093736A1 (en) * | 2015-12-01 | 2017-06-08 | Privitar Limited | Digital watermarking without significant information loss in anonymized datasets |
CN108604264A (zh) * | 2015-12-01 | 2018-09-28 | 普威达有限公司 | 在匿名化数据集中没有较大信息丢失的数字加水印 |
CN106780280A (zh) * | 2016-11-30 | 2017-05-31 | 深圳Tcl数字技术有限公司 | 数字水印加密方法及装置 |
CN109670281A (zh) * | 2017-10-16 | 2019-04-23 | 北京大学 | 电子文档的处理方法和装置 |
CN110322386A (zh) * | 2018-03-30 | 2019-10-11 | 中移(苏州)软件技术有限公司 | 一种数字文本水印嵌入及检测方法和装置 |
WO2019196866A1 (zh) * | 2018-04-11 | 2019-10-17 | 华为技术有限公司 | 匿名化处理方法、装置、设备及存储介质 |
CN110365468A (zh) * | 2018-04-11 | 2019-10-22 | 华为技术有限公司 | 匿名化处理方法、装置、设备及存储介质 |
CN108763880A (zh) * | 2018-06-06 | 2018-11-06 | 广西英腾教育科技股份有限公司 | 文件水印的生成、检测方法以及装置 |
CN110046524A (zh) * | 2019-04-16 | 2019-07-23 | 昆山丘钛微电子科技有限公司 | 一种数据的处理方法、装置、电子设备及介质 |
Non-Patent Citations (3)
Title |
---|
彭沛夫 ; 林亚平 ; 张桂芳 ; 胡斌 ; .基于有效位数的数据库数字水印.计算机工程与应用.2006,(第11期),全文. * |
王振 ; 李建民 ; 周南润 ; 林振荣 ; .基于分存分组的关系数据库数字水印算法.通信技术.2009,(第04期),全文. * |
薛媛媛 ; .一种利用数据库字段有效位数实现的数字水印技术.青海大学学报(自然科学版).2014,(第01期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111400670A (zh) | 2020-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180210827A1 (en) | Apparatus, a system, a method and a computer program for erasing data stored on a storage device using a sequence of uncompressible data | |
CN110245469B (zh) | 网页的水印生成方法、水印解析方法、装置及存储介质 | |
US20030128863A1 (en) | Information processing device and method for processing picture data and digital watermark information | |
JPWO2016113886A1 (ja) | 乱数拡大装置、乱数拡大方法及び乱数拡大プログラム | |
CN111008923A (zh) | 水印嵌入和水印提取方法、装置和设备 | |
CN110968847A (zh) | 一种文件水印隐藏、解析方法、装置、设备及存储介质 | |
US11409845B2 (en) | Method for determining if a machine learning model has been copied | |
Hamdan et al. | AH4S: an algorithm of text in text steganography using the structure of omega network | |
CN111192622B (zh) | 闪存控制器及其中的编码电路与解码电路 | |
CN113486406B (zh) | 一种电子签名保护还原方法、系统、电子设备及存储介质 | |
Gort et al. | HQR-scheme: A high quality and resilient virtual primary key generation approach for watermarking relational data | |
CN111400670B (zh) | 一种水印添加方法、装置、设备及存储介质 | |
Alkhafaji et al. | Payload capacity scheme for quran text watermarking based on vowels with kashida | |
CN110956195A (zh) | 图像匹配方法、装置、计算机设备及存储介质 | |
CN117093964A (zh) | 一种源代码的加密方法、装置、存储介质及电子设备 | |
CN110852098B (zh) | 一种数据修正方法及电子设备和存储介质 | |
CN116702103A (zh) | 数据库水印处理方法、数据库水印溯源方法及装置 | |
US11669601B2 (en) | Digital watermarking for textual data | |
US11699209B2 (en) | Method and apparatus for embedding and extracting digital watermarking for numerical data | |
CN111415288B (zh) | 数字水印嵌入、检测方法和装置 | |
CN109446055B (zh) | 打印程序测试方法、装置、计算机设备和存储介质 | |
CN113377351B (zh) | 用于大规模政务业务的模型构建工作系统 | |
Niu et al. | Reference Sharing Mechanism‐Based Self‐Embedding Watermarking Scheme with Deterministic Content Reconstruction | |
CN111563238A (zh) | 一种合同文本的防伪pdf自动生成系统及方法 | |
CN112419054B (zh) | 一种基于区块链技术的金融信息验证方法与装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |