CN104850765A - 一种水印处理方法、装置及系统 - Google Patents
一种水印处理方法、装置及系统 Download PDFInfo
- Publication number
- CN104850765A CN104850765A CN201410056294.XA CN201410056294A CN104850765A CN 104850765 A CN104850765 A CN 104850765A CN 201410056294 A CN201410056294 A CN 201410056294A CN 104850765 A CN104850765 A CN 104850765A
- Authority
- CN
- China
- Prior art keywords
- watermark
- information
- record
- hide
- identification code
- 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.)
- Pending
Links
Landscapes
- Editing Of Facsimile Originals (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种水印处理方法,包括:获取文本文档及水印要素信息;根据所述水印要素信息获取待嵌入的水印信息;将所述待嵌入的水印信息嵌入所述文本文档中。本发明还相应地公开了一种水印处理装置及系统。本发明实施例所述的技术方案不需要基于字符样式进行数字水印的嵌入及提取,从而能够应用于没有字符样式的文本文档,如txt文本文档,扩大了数字水印技术应用范围,提高了数据安全性。
Description
技术领域
本发明涉及信息安全管理技术领域,尤其涉及一种水印处理方法、装置及系统。
背景技术
随着社会信息化的不断发展,信息量与日俱增,信息价值不断提升,重要的数据信息一旦泄漏,将给企业甚至国家带来不可估量的损失,如近年来电信、银行等行业所暴露出来的信息泄漏所带来的经济损失及负面社会影响。因此,如何更加有效的控制信息传播的风险,保护重要信息的安全,具有非常重要的现实价值。
传统的安全控制集中在“事前”的权限控制,以及“事中”的加密方式,但加密方法对信息内容的保护只局限在加密通信的信道中,或其他加密状态下,一旦解密,则毫无保护可言,也无法控制有意的信息传播。“事后”的数据追踪提供了一种新的保护途径,确保信息即使在被解密或传播的状态下,也能识别信息身份,圈定信息传播来源的范围,威慑信息传播者,使信息传播者不敢随意泄漏数据信息。数字水印便是一种将与信息内容相关或不相关的一些标示信息直接嵌入信息内容当中,但不影响原信息价值的技术。通过该技术可追踪信息内容来源,进而结合数据追踪技术确认内容创建者或者购买者身份,对数据信息的传播者起到有效的威慑作用,全面保障了重要数据信息的安全。
现有的数字水印技术主要应用于图像和视频领域,在电子文档方面的应用比较少,有的也只是针对特殊电子文档格式的应用,具体可利用文档的字符冗余编码等来进行数字水印的处理,但是,上述处理方法只能应用于word、pdf等具有字符样式的文档,不适用于没有字符样式的文本文档,如txt文本文档,然而,社会信息化的过程中,txt文本文档等没有字符样式的文本文档被广泛应用,有多数重要的数据信息是以txt文本文档等为介质来存放,所以需要有一整套完善的可应用于没有字符样式的文本文档的数字水印技术解决方案,以便有效识别文本文档的身份,跟踪文本文档的数据来源,保障文本文档的数据安全,但是,目前尚未提出可应用于没有字符样式的文本文档的数字水印处理技术。
发明内容
有鉴于此,本发明实施例的主要目的在于提供一种水印处理方法、装置及系统,能够应用于没有字符样式的文本文档,扩大数字水印技术应用范围,提高数据安全性。
为达到上述目的,本发明的技术方案是这样实现的:
一种水印处理方法,包括:
获取文本文档及水印要素信息;
根据所述水印要素信息获取待嵌入的水印信息;
将所述待嵌入的水印信息嵌入所述文本文档中。
所述根据所述水印要素信息获取待嵌入的水印信息,包括:
根据所述水印要素信息生成水印识别码,所述水印要素信息与所述水印识别码一一对应;
对所述水印识别码进行加密处理,生成水印信息安全串;
将所述水印信息安全串转换成待嵌入的水印信息,所述待嵌入的水印信息为隐藏的水印信息。
所述将待嵌入的水印信息嵌入所述文本文档中,包括:
将所述待嵌入的水印信息拆分成第一隐藏记录、第二隐藏记录、……、第n隐藏记录,所述n为正整数,且1<n<m,所述m为所述文本文档的记录行数;
将所述第一隐藏记录、第二隐藏记录、……、第n隐藏记录分别嵌入第一隐藏记录行、第二隐藏记录行、……、第n隐藏记录行的尾部,所述第一隐藏记录行、第二隐藏记录行、……、第n隐藏记录行为所述文本文档的不同记录行;
生成水印位置码,并将所述水印位置码嵌入所述文本文档的末尾。
所述水印信息安全串包括水印前缀、水印识别码加密串、水印后缀和水印校验码,其中,
所述水印前缀、水印后缀由空格键和/或tab键组成,
所述水印识别码加密串由水印识别码进行可逆的加密运算得到,
所述水印校验码由水印识别码长度和水印识别码的可逆加密串组成。
所述水印位置码为“第一隐藏记录位置行号+tab键+第一隐藏记录在该行的位置偏移索引号+tab键+第二隐藏记录位置行号+tab键+第二隐藏记录在该行的位置偏移索引号+tab键+第三隐藏记录位置行号+tab键+第三隐藏记录在该行的位置偏移索引号+tab键+……+第n隐藏记录位置行号+tab键+第n隐藏记录在该行的位置偏移索引号”。
所述水印要素信息包括以下一项或多项:用户编号、用户名、组织机构、联系电话、地址、ip地址、mac地址、数据访问时间。
一种水印处理方法,包括:
提取文本文档中嵌入的水印信息,所述水印信息为隐藏的水印信息;
根据所述水印信息获取相应的水印要素信息。
所述提取文本文档中嵌入的水印信息,包括:
从所述文本文档的末尾获取水印位置码;
根据所述水印位置码确定所述文本文档中嵌入的水印信息的位置,之后从所述文本文档中相应的位置提取水印信息。
所述根据所述水印信息获取相应的水印要素信息,包括:
根据所述水印信息获取水印信息安全串;
对所述水印信息安全串进行完整性及有效性检测;
检测通过后,从所述水印信息安全串中提取水印识别码;
根据所述水印识别码确定对应的水印要素信息。
所述水印位置码为“第一隐藏记录位置行号+tab键+第一隐藏记录在该行的位置偏移索引号+tab键+第二隐藏记录位置行号+tab键+第二隐藏记录在该行的位置偏移索引号+tab键+第三隐藏记录位置行号+tab键+第三隐藏记录在该行的位置偏移索引号+tab键+……+第n隐藏记录位置行号+tab键+第n隐藏记录在该行的位置偏移索引号”。
所述水印信息安全串包括水印前缀、水印识别码加密串、水印后缀和水印校验码,其中,
所述水印前缀、水印后缀由空格键和/或tab键组成,
所述水印识别码加密串由水印识别码进行可逆的加密运算得到,
所述水印校验码由水印识别码长度和水印识别码的可逆加密串组成。
一种水印处理装置,包括:第一获取模块、第二获取模块和嵌入模块;其中,
所述第一获取模块,用于获取文本文档及水印要素信息;
所述第二获取模块,用于根据所述第一获取模块获取的水印要素信息获取待嵌入的水印信息;
所述嵌入模块,用于将所述第二获取模块获取的所述待嵌入的水印信息嵌入所述文本文档中。
所述第二获取模块具体包括:水印识别码生成子模块、加密处理子模块、转换子模块;其中,
所述水印识别码生成子模块,用于根据所述水印要素信息生成水印识别码,所述水印要素信息与所述水印识别码一一对应;
所述加密处理子模块,用于对所述水印识别码进行加密处理,生成水印信息安全串;
所述转换子模块,用于将所述水印信息安全串转换成待嵌入的水印信息,所述待嵌入的水印信息为隐藏的水印信息。
所述嵌入模块具体包括:拆分子模块、水印信息嵌入子模块和水印位置码嵌入子模块;其中,
所述拆分子模块,用于将所述待嵌入的水印信息拆分成第一隐藏记录、第二隐藏记录、……、第n隐藏记录,所述n为正整数,且1<n<m,所述m为所述文本文档的记录行数;
所述水印信息嵌入子模块,用于将所述第一隐藏记录、第二隐藏记录、……、第n隐藏记录分别嵌入第一隐藏记录行、第二隐藏记录行、……、第n隐藏记录行的尾部,所述第一隐藏记录行、第二隐藏记录行、……、第n隐藏记录行为所述文本文档的不同记录行;
所述水印位置码嵌入子模块,用于生成水印位置码,并将所述水印位置码嵌入所述文本文档的末尾。
一种水印处理装置,包括:水印信息提取模块和水印要素信息获取模块;其中,
所述水印信息提取模块,用于提取文本文档中嵌入的水印信息,所述水印信息为隐藏的水印信息;
所述水印要素信息获取模块,用于根据所述水印信息获取相应的水印要素信息。
所述水印信息提取模块具体包括:水印位置码获取子模块、水印信息提取子模块;其中,
所述水印位置码获取子模块,用于从所述文本文档的末尾获取水印位置码;
所述水印信息提取子模块,用于根据所述水印位置码确定所述文本文档中嵌入的水印信息的位置,之后从所述文本文档中相应的位置提取水印信息。
所述水印要素信息获取模块具体包括:水印信息安全串获取子模块、检测子模块、水印识别码提取子模块和水印要素信息确定子模块;其中,
所述水印信息安全串获取子模块,用于根据所述水印信息获取水印信息安全串;
所述检测子模块,用于对所述水印信息安全串进行完整性及有效性检测;
所述水印识别码提取子模块,用于在检测子模块检测通过后,从所述水印信息安全串中提取水印识别码;
所述水印要素信息确定子模块,用于根据所述水印识别码确定对应的水印要素信息。
一种水印处理系统,包括上述的水印嵌入装置和水印提取装置。
本发明实施例提供了一种水印处理方法、装置及系统,获取文本文档及水印要素信息;根据所述水印要素信息获取待嵌入的水印信息;将所述待嵌入的水印信息嵌入所述文本文档中。本发明实施例所述的技术方案不需要基于字符样式进行数字水印的嵌入及提取,从而能够应用于没有字符样式的文本文档,如txt文本文档,扩大了数字水印技术应用范围,提高了数据安全性。
附图说明
图1为本发明一实施例所述的水印处理方法流程示意图;
图2为本发明一实施例中根据水印要素信息获取待嵌入的水印信息的流程示意图;
图3为本发明一实施例中将待嵌入的水印信息嵌入文本文档的流程示意图;
图4为本发明另一实施例所述的水印处理方法流程示意图;
图5为本发明一实施例中提取文本文档中嵌入的水印信息的流程示意图;
图6为本发明一实施例中根据水印信息获取相应的水印要素信息的流程示意图;
图7为本发明一实施例所述的水印处理装置结构示意图;
图8为本发明一实施例中第二获取模块的结构示意图;
图9为本发明一实施例中嵌入模块的结构示意图;
图10为本发明另一实施例所述的水印处理装置结构示意图;
图11为本发明一实施例中水印信息提取模块的结构示意图;
图12为本发明一实施例中水印要素信息获取模块的结构示意图;
图13为本发明实施例1所述的水印生成流程示意图;
图14为本发明实施例1中水印信息安全串在txt文本文档中对应的16进制码示意图;
图15为本发明实施例1中txt文本文档的记录示意图;
图16为本发明实施例1中水印位置码隐藏记录对应的16进制码示意图;
图17为本发明实施例1中隐藏水印信息嵌入到txt文本文档后的结果示意图;
图18为本发明实施例1中散布后的水印信息内容示意图;
图19为本发明实施例2所述的水印提取流程示意图;
图20为本发明实施例2中隐藏的水印信息安全串在txt文本文档中对应的16进制码示意图。
具体实施方式
本发明的基本思想是:获取文本文档及水印要素信息;根据所述水印要素信息获取待嵌入的水印信息;将所述待嵌入的水印信息嵌入所述文本文档中。
本发明实施例提出了一种水印处理方法,如图1所示,该方法包括:
步骤101:获取文本文档及水印要素信息;
步骤102:根据所述水印要素信息获取待嵌入的水印信息;
步骤103:将所述待嵌入的水印信息嵌入所述文本文档中。
可选的,如图2所示,步骤102所述根据所述水印要素信息获取待嵌入的水印信息,包括:
步骤1021:根据所述水印要素信息生成水印识别码,所述水印要素信息与所述水印识别码一一对应;
步骤1022:对所述水印识别码进行加密处理,生成水印信息安全串;
步骤1023:将所述水印信息安全串转换成待嵌入的水印信息,所述待嵌入的水印信息为隐藏的水印信息。
可选的,如图3所示,步骤103所述将待嵌入的水印信息嵌入所述文本文档中,包括:
步骤1031:将所述待嵌入的水印信息拆分成第一隐藏记录、第二隐藏记录、……、第n隐藏记录,所述n为正整数,且1<n<m,所述m为所述文本文档的记录行数;
步骤1032:将所述第一隐藏记录、第二隐藏记录、……、第n隐藏记录分别嵌入第一隐藏记录行、第二隐藏记录行、……、第n隐藏记录行的尾部,所述第一隐藏记录行、第二隐藏记录行、……、第n隐藏记录行为所述文本文档的不同记录行;
步骤1033:生成水印位置码,并将所述水印位置码嵌入所述文本文档的末尾。
可选的,本发明实施例中所述水印信息安全串包括水印前缀、水印识别码加密串、水印后缀和水印校验码,其中,
所述水印前缀、水印后缀由空格键和/或tab键组成,
所述水印识别码加密串由水印识别码进行可逆的加密运算得到,
所述水印校验码由水印识别码长度和水印识别码的可逆加密串组成。
可选的,本发明实施例中所述水印位置码为“第一隐藏记录位置行号+tab键+第一隐藏记录在该行的位置偏移索引号+tab键+第二隐藏记录位置行号+tab键+第二隐藏记录在该行的位置偏移索引号+tab键+第三隐藏记录位置行号+tab键+第三隐藏记录在该行的位置偏移索引号+tab键+……+第n隐藏记录位置行号+tab键+第n隐藏记录在该行的位置偏移索引号”。
可选的,本发明实施例中所述水印要素信息包括以下一项或多项:用户编号、用户名、组织机构、联系电话、地址、ip地址、mac地址、数据访问时间。
本发明实施例还相应地提出了一种水印处理方法,如图4所示,该方法包括:
步骤401:提取文本文档中嵌入的水印信息,所述水印信息为隐藏的水印信息;
步骤402:根据所述水印信息获取相应的水印要素信息。
可选的,如图5所述,步骤401所述提取文本文档中嵌入的水印信息,包括:
步骤4011:从所述文本文档的末尾获取水印位置码;
步骤4012:根据所述水印位置码确定所述文本文档中嵌入的水印信息的位置,之后从所述文本文档中相应的位置提取水印信息。
可选的,如图6所示,步骤402所述根据所述水印信息获取相应的水印要素信息,包括:
步骤4021:根据所述水印信息获取水印信息安全串;
步骤4022:对所述水印信息安全串进行完整性及有效性检测;
步骤4023:检测通过后,从所述水印信息安全串中提取水印识别码;
步骤4024:根据所述水印识别码确定对应的水印要素信息。
可选的,本发明实施例中,所述水印位置码为“第一隐藏记录位置行号+tab键+第一隐藏记录在该行的位置偏移索引号+tab键+第二隐藏记录位置行号+tab键+第二隐藏记录在该行的位置偏移索引号+tab键+第三隐藏记录位置行号+tab键+第三隐藏记录在该行的位置偏移索引号+tab键+……+第n隐藏记录位置行号+tab键+第n隐藏记录在该行的位置偏移索引号”。
可选的,本发明实施例中所述水印信息安全串包括水印前缀、水印识别码加密串、水印后缀和水印校验码,其中,
所述水印前缀、水印后缀由空格键和/或tab键组成,
所述水印识别码加密串由水印识别码进行可逆的加密运算得到,
所述水印校验码由水印识别码长度和水印识别码的可逆加密串组成。
本发明实施例还相应地提出了一种水印处理装置,如图7所示,该装置包括:第一获取模块701、第二获取模块703和嵌入模块703;其中,
第一获取模块701,用于获取文本文档及水印要素信息;具体的,第一获取模块需要具备对文本文档的处理能力,文本文档的处理主要采用文件流的方式,包括文件的打开、关闭、文件游标的定位,文件数据的读取、写入和删除等功能。可选的,第一获取模块701用于管理水印处理装置的接入,主要包括HTTP和标准WebService SOAP服务方式的接入,以及水印处理装置提供的API调用方式的接入。应用系统通过接入管理的接口,将要进行水印嵌入的文本文档,以及用于形成水印的相关要素信息传递给第一获取模块701。
第二获取模块702,用于根据第一获取模块701获取的水印要素信息获取待嵌入的水印信息;
嵌入模块703,用于将所述第二获取模块702获取的所述待嵌入的水印信息嵌入所述文本文档中。
可选的,如图8所示,第二获取模块702具体包括:水印识别码生成子模块7021、加密处理子模块7022、转换子模块7023;其中,
水印识别码生成子模块7021,用于根据所述水印要素信息生成水印识别码,所述水印要素信息与所述水印识别码一一对应;水印识别码将用来嵌入到文本文档中,这样便可以通过嵌入的水印识别码进行文本文档的身份识别和文档来源的跟踪,即确定文本文档是由谁,在什么时间点下载或者导出的,来自哪台电脑。
加密处理子模块7022,用于对所述水印识别码进行加密处理,生成水印信息安全串;
转换子模块7023,用于将所述水印信息安全串转换成待嵌入的水印信息,所述待嵌入的水印信息为隐藏的水印信息。
可选的,嵌入模块703负责将隐藏的水印信息随机散布于一个或多个记录行的尾部,形成不可见的水印信息,如图9所示,嵌入模块703具体包括:拆分子模块7031、水印信息嵌入子模块7032和水印位置码嵌入子模块7033;其中,
拆分子模块7031,用于将所述待嵌入的水印信息拆分成第一隐藏记录、第二隐藏记录、……、第n隐藏记录,所述n为正整数,且1<n<m,所述m为所述文本文档的记录行数;
水印信息嵌入子模块7032,用于将所述第一隐藏记录、第二隐藏记录、……、第n隐藏记录分别嵌入第一隐藏记录行、第二隐藏记录行、……、第n隐藏记录行的尾部,所述第一隐藏记录行、第二隐藏记录行、……、第n隐藏记录行为所述文本文档的不同记录行;
水印位置码嵌入子模块7033,用于生成水印位置码,并将所述水印位置码嵌入所述文本文档的末尾。
可选的,水印处理装置还用于进行水印要素信息的持久化管理,包括增加、查询水印要素信息,和建立水印识别码与水印要素信息的映射关系等功能。其中用于形成水印的相关要素信息主要由应用系统通过接入接口提供。
本发明实施例还相应地提出了一种水印处理装置,如图10所示,该装置包括:水印信息提取模块1001和水印要素信息获取模块1002;其中,
水印信息提取模块1001,用于提取文本文档中嵌入的水印信息,所述水印信息为隐藏的水印信息;
水印要素信息获取模块1002,用于根据所述水印信息获取相应的水印要素信息。
可选的,如图11所示,水印信息提取模块1001具体包括:水印位置码获取子模块10011、水印信息提取子模块10012;其中,
水印位置码获取子模块10011,用于从所述文本文档的末尾获取水印位置码;
水印信息提取子模块10012,用于根据所述水印位置码确定所述文本文档中嵌入的水印信息的位置,之后从所述文本文档中相应的位置提取水印信息。
可选的,如图12所示,水印要素信息获取模块1002具体包括:水印信息安全串获取子模块10021、检测子模块10022、水印识别码提取子模块10023和水印要素信息确定子模块10024;其中,
水印信息安全串获取子模块10021,用于根据所述水印信息获取水印信息安全串;
检测子模块10022,用于对所述水印信息安全串进行完整性及有效性检测;
水印识别码提取子模块10023,用于在检测子模块检测通过后,从所述水印信息安全串中提取水印识别码;
水印要素信息确定子模块10024,用于根据所述水印识别码确定对应的水印要素信息。
本发明实施例还相应地提出了一种水印处理系统,该系统包括:水印嵌入装置和水印提取装置;其中,
所述水印嵌入装置为图7至图9任一所述的装置;
所述水印提取装置为图10至图12任一所述的装置。
下面通过具体实施例对本发明的技术方案作进一步详细说明。
实施例1
本实施例描述txt文本文档的水印生成过程。图13为本发明实施例1所述的水印生成流程示意图,如图13所示,该方法包括:
步骤1301:应用层的txt数字水印应用程序,通过服务请求或者API请求来接入水印处理装置,进行txt文本文档的水印生成处理,接入过程中主要需传入txt文本文档,以及需要嵌入的水印要素信息如:“用户编号、用户名、组织机构、联系电话、地址、ip地址、mac地址、数据访问时间”。
步骤1302:水印处理装置接收应用程序的水印生成请求。
步骤1303:水印处理装置根据水印要素信息生成唯一的水印识别码,即与水印要素信息对应的序列号。
步骤1304:水印处理装置进行水印要素信息的存储,同时建立水印识别码与水印要素信息的映射关系。
本实施例中,水印识别码与水印要素信息映射关系的存储记录如表1所示:
表1
步骤1305:水印处理装置对水印识别码进行水印的加密控制,形成由“水印前缀+水印识别码加密串+水印后缀+水印校验码”组成的水印信息安全串。
本实施例中,加密后的水印信息安全串主要由:水印前缀+水印识别码加密串+水印后缀+水印校验码,几个部分组成。具体每个部分的说明如下:
水印前缀和水印后缀:都由“空格键+tab键+tab键+空格键”组成;
水印识别码加密串:由原始水印识别码进行可逆加密后得到,如:由原始水印识别码*2+1组成,即假设水印识别码为91,则加密串为“183”;
水印校验码:由水印识别码长度和原始水印识别码的可逆加密串组成,如:由两位的水印识别码长度(不足两位补零)+(原始水印识别码*3+2)组成,即假设水印识别码为91,则水印校验码为02275。
例如,本实施例中,水印识别码为“91”,则加密后的水印信息安全串为“空格键+tab键+tab键+空格键+183+空格键+tab键+tab键+空格键+02275”,即“183 02275”。
水印信息提取后,需进行安全检测,即将校验码和水印识别码加密串分别解码后进行比对,看是否一致,同时比对解码后的水印识别码长度和校验码中指定的长度值,如果都一致证明水印没有被破坏。
步骤1306:水印处理装置采用txt水印生成算法的隐藏记录生成功能,将水印信息安全串转换成隐藏的水印信息。
本实施例中,txt隐藏记录生成算法主要通过隐藏类型的字符编码,如Tab键字符、空格键字符等,经过一定的组合算法合成,并通过txt不可见水印处理算法将隐藏编码随机散布于一个或多个记录行的尾部,最终构成txt文本文档的隐藏记录。具体隐藏记录的组合算法说明如下:
假设水印识别码是“1001”,则其对应的隐藏记录为“2个空格键+tab键+1个空格键+tab键+一个空格键+tab键+2个空格键”,在txt文本文档中对应的16进制码为202009200920092020。即将水印识别码拆分成单个数字,每个数字由空格键字符的组合来替代,而数字跟数字之间用tab键字符隔开,具体映射关系可以如表2所示:
数字 | 映射的空格字符组合 |
0 | 1个空格键字符 |
1 | 2个空格键字符 |
2 | 3个空格键字符 |
3 | 4个空格键字符 |
4 | 5个空格键字符 |
5 | 6个空格键字符 |
6 | 7个空格键字符 |
7 | 8个空格键字符 |
8 | 9个空格键字符 |
9 | 10个空格键字符 |
表2
本实施例中,水印信息安全串“183 02275”转换后的隐藏水印信息安全串为“
”,在txt文本文档中对应的16进制码如图14所示。
步骤1307:水印处理装置根据不可见水印处理算法,调用txt文档处理引擎将隐藏的水印信息随机散布于txt文本文档中一个或多个记录行的尾部,最终完成水印信息的嵌入。
具体的,随机散布算法可以为:将隐藏水印信息平均拆分成<=5份(没法平均分配时,多出的归给最后一份),即当txt文本文档的记录行数>=5时,则都拆分成5份,而txt文本文档的记录行数如果<5时,则拆分成相应的txt记录行数,如记录行3就拆分成3份。接着每份隐藏记录分别随机选择一行尚未嵌入的txt记录行的尾部来嵌入。最后在txt文本文档的末尾(最后一行新的记录行),嵌入“水印位置码”来记录每一份隐藏记录的嵌入位置(水印位置码嵌入前也需转换为隐藏记录)。“水印位置码”的编码规则为:“第一隐藏记录位置行号+tab键+第一隐藏记录在该行的位置偏移索引号(索引从0开始)+tab键+第二隐藏记录位置行号+tab键+第二隐藏记录在该行的位置偏移索引号+tab键+第三隐藏记录位置行号+tab键+第三隐藏记录在该行的位置偏移索引号+tab键…”,以此类推,最多到第五隐藏记录。
假设txt文本文档有6行记录,如图15所示,则随机散布算法将该隐藏水印信息安全串拆分成5份,每份对应的16进制码分别为:
第一份隐藏记录:200909202009202020;
第二份隐藏记录:202020202020092020;
第三份隐藏记录:202020090920200920;
第四份隐藏记录:202009202020092020;
第五份隐藏记录:20202020202009202020202020。
接着随机将第一份嵌入“记录行1”的尾部,将第二份嵌入“记录行3”的尾部,将第三份嵌入“记录行2”的尾部,将第四份嵌入“记录行4”的尾部,将第五份嵌入“记录行5”的尾部。同时生成水印位置码为“1+tab键+7+tab键+3+tab键+7+tab键+2+tab键+7+tab键+4+tab键+7+tab键+5+tab键+7”,即“17 3 7 2 7 4 7 5 7”,相应转换后的水印位置码隐藏记录对应的16进制码如图16所示,,最后将该隐藏的水印位置码也嵌入到文本文档的末尾(最后一行新的记录行)。最终完整的隐藏水印信息嵌入到txt文本文档后的结果如图17所示,图中,肉眼根本看不到水印信息,但水印信息其实已嵌入到txt文本文档中,通过16进制的方式可看到散布后的水印信息内容如图18所示。
实施例2
本实施例描述txt文本文档的水印提取过程。图19为本发明实施例2所述的水印提取流程示意图,如图19所示,该方法包括:
步骤1901:水印处理装置接收应用程序的水印提取请求。
应用层的txt数字水印应用程序,通过服务请求或者API请求来接入水印处理装置,进行txt文本文档的数字水印提取,接入过程中需传入txt文本文档。
步骤1902:水印处理装置通过txt水印生成算法的不可见水印处理功能调用txt文档处理引擎,读取txt文本文档最后一行隐藏的水印位置码。
例如,读取的水印位置码为“1 7 3 7 2 7 4 7 5 7”,根据该水印位置码可知散布到txt文本文档中的水印信息安全串的各个部分的位置如下:
第一份隐藏记录位置:第1行第7索引位;
第二份隐藏记录位置:第3行第7索引位;
第三份隐藏记录位置:第2行第7索引位;
第四份隐藏记录位置:第4行第7索引位;
第五份隐藏记录位置:第5行第7索引位。
步骤1903:水印处理装置根据水印位置码记录的信息,拼装出隐藏的水印信息安全串,在txt文本文档中对应的16进制码如图20所示。
步骤1904:水印处理装置通过隐藏记录生成算法将隐藏的水印信息安全串转换为可见信息,如“183 02275”。
步骤1905:水印处理装置对水印信息安全串进行解密提取。
例如,对“183 02275”提取后的明文信息为“910291”。
步骤1906:水印处理装置对解密后的水印信息安全串进行完整性检测。
如判断水印校验码部分的91长度是否为2,是则检测成功。
步骤1907:水印处理装置对解密后的水印信息安全串进行有效性检测,如判断水印识别码部分的91是否等于水印校验码部分中的91,是则检测成功。
步骤1908:水印处理装置根据水印识别码,从水印识别码与水印要素信息映射关系的存储记录中,查询水印要素信息,从而完成txt数字水印信息的提取。
如查询出水印识别码“91”对应的水印要素信息为“1002021,张三,福州分公司,13599090988,福州东街口33号,10.7.8.9,F0-DE-F2-23-26-D6,20130705112806”。并可以确定该txt文本文档是由“福州分公司的张三在2013年7月5日11点28分6秒的时候,从ip地址为10.7.8.9和mac地址为F0-DE-F2-23-26-D6的电脑中下载下来的”。
本发明实施例提出的水印处理方法、装置及系统,可以成功的对txt文本文档等没有字符样式的文本文档进行不可见水印信息的嵌入和/或提取,同时由于这些水印信息是隐藏的肉眼看不到,且做了加密,所以具有抗破坏、防篡改,鲁棒性高等特征,可以有效的保证文本文档身份的识别和文件来源的追踪,对文档的传播者起到有效的威慑作用,进一步保障了txt文本文档的数据安全。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (18)
1.一种水印处理方法,其特征在于,该方法包括:
获取文本文档及水印要素信息;
根据所述水印要素信息获取待嵌入的水印信息;
将所述待嵌入的水印信息嵌入所述文本文档中。
2.根据权利要求1所述的方法,其特征在于,所述根据所述水印要素信息获取待嵌入的水印信息,包括:
根据所述水印要素信息生成水印识别码,所述水印要素信息与所述水印识别码一一对应;
对所述水印识别码进行加密处理,生成水印信息安全串;
将所述水印信息安全串转换成待嵌入的水印信息,所述待嵌入的水印信息为隐藏的水印信息。
3.根据权利要求1所述的方法,其特征在于,所述将待嵌入的水印信息嵌入所述文本文档中,包括:
将所述待嵌入的水印信息拆分成第一隐藏记录、第二隐藏记录、……、第n隐藏记录,所述n为正整数,且1<n<m,所述m为所述文本文档的记录行数;
将所述第一隐藏记录、第二隐藏记录、……、第n隐藏记录分别嵌入第一隐藏记录行、第二隐藏记录行、……、第n隐藏记录行的尾部,所述第一隐藏记录行、第二隐藏记录行、……、第n隐藏记录行为所述文本文档的不同记录行;
生成水印位置码,并将所述水印位置码嵌入所述文本文档的末尾。
4.根据权利要求2所述的方法,其特征在于,所述水印信息安全串包括水印前缀、水印识别码加密串、水印后缀和水印校验码,其中,
所述水印前缀、水印后缀由空格键和/或tab键组成,
所述水印识别码加密串由水印识别码进行可逆的加密运算得到,
所述水印校验码由水印识别码长度和水印识别码的可逆加密串组成。
5.根据权利要求3所述的方法,其特征在于,所述水印位置码为“第一隐藏记录位置行号+tab键+第一隐藏记录在该行的位置偏移索引号+tab键+第二隐藏记录位置行号+tab键+第二隐藏记录在该行的位置偏移索引号+tab键+第三隐藏记录位置行号+tab键+第三隐藏记录在该行的位置偏移索引号+tab键+……+第n隐藏记录位置行号+tab键+第n隐藏记录在该行的位置偏移索引号”。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述水印要素信息包括以下一项或多项:用户编号、用户名、组织机构、联系电话、地址、ip地址、mac地址、数据访问时间。
7.一种水印处理方法,其特征在于,该方法包括:
提取文本文档中嵌入的水印信息,所述水印信息为隐藏的水印信息;
根据所述水印信息获取相应的水印要素信息。
8.根据权利要求7所述的方法,其特征在于,所述提取文本文档中嵌入的水印信息,包括:
从所述文本文档的末尾获取水印位置码;
根据所述水印位置码确定所述文本文档中嵌入的水印信息的位置,之后从所述文本文档中相应的位置提取水印信息。
9.根据权利要求7所述的方法,其特征在于,所述根据所述水印信息获取相应的水印要素信息,包括:
根据所述水印信息获取水印信息安全串;
对所述水印信息安全串进行完整性及有效性检测;
检测通过后,从所述水印信息安全串中提取水印识别码;
根据所述水印识别码确定对应的水印要素信息。
10.根据权利要求8所述的方法,其特征在于,所述水印位置码为“第一隐藏记录位置行号+tab键+第一隐藏记录在该行的位置偏移索引号+tab键+第二隐藏记录位置行号+tab键+第二隐藏记录在该行的位置偏移索引号+tab键+第三隐藏记录位置行号+tab键+第三隐藏记录在该行的位置偏移索引号+tab键+……+第n隐藏记录位置行号+tab键+第n隐藏记录在该行的位置偏移索引号”。
11.根据权利要求9所述的方法,其特征在于,所述水印信息安全串包括水印前缀、水印识别码加密串、水印后缀和水印校验码,其中,
所述水印前缀、水印后缀由空格键和/或tab键组成,
所述水印识别码加密串由水印识别码进行可逆的加密运算得到,
所述水印校验码由水印识别码长度和水印识别码的可逆加密串组成。
12.一种水印处理装置,其特征在于,该装置包括:第一获取模块、第二获取模块和嵌入模块;其中,
所述第一获取模块,用于获取文本文档及水印要素信息;
所述第二获取模块,用于根据所述第一获取模块获取的水印要素信息获取待嵌入的水印信息;
所述嵌入模块,用于将所述第二获取模块获取的所述待嵌入的水印信息嵌入所述文本文档中。
13.根据权利要求12所述的装置,其特征在于,所述第二获取模块具体包括:水印识别码生成子模块、加密处理子模块、转换子模块;其中,
所述水印识别码生成子模块,用于根据所述水印要素信息生成水印识别码,所述水印要素信息与所述水印识别码一一对应;
所述加密处理子模块,用于对所述水印识别码进行加密处理,生成水印信息安全串;
所述转换子模块,用于将所述水印信息安全串转换成待嵌入的水印信息,所述待嵌入的水印信息为隐藏的水印信息。
14.根据权利要求12所述的装置,其特征在于,所述嵌入模块具体包括:拆分子模块、水印信息嵌入子模块和水印位置码嵌入子模块;其中,
所述拆分子模块,用于将所述待嵌入的水印信息拆分成第一隐藏记录、第二隐藏记录、……、第n隐藏记录,所述n为正整数,且1<n<m,所述m为所述文本文档的记录行数;
所述水印信息嵌入子模块,用于将所述第一隐藏记录、第二隐藏记录、……、第n隐藏记录分别嵌入第一隐藏记录行、第二隐藏记录行、……、第n隐藏记录行的尾部,所述第一隐藏记录行、第二隐藏记录行、……、第n隐藏记录行为所述文本文档的不同记录行;
所述水印位置码嵌入子模块,用于生成水印位置码,并将所述水印位置码嵌入所述文本文档的末尾。
15.一种水印处理装置,其特征在于,该装置包括:水印信息提取模块和水印要素信息获取模块;其中,
所述水印信息提取模块,用于提取文本文档中嵌入的水印信息,所述水印信息为隐藏的水印信息;
所述水印要素信息获取模块,用于根据所述水印信息获取相应的水印要素信息。
16.根据权利要求15所述的装置,其特征在于,所述水印信息提取模块具体包括:水印位置码获取子模块、水印信息提取子模块;其中,
所述水印位置码获取子模块,用于从所述文本文档的末尾获取水印位置码;
所述水印信息提取子模块,用于根据所述水印位置码确定所述文本文档中嵌入的水印信息的位置,之后从所述文本文档中相应的位置提取水印信息。
17.根据权利要求15所述的装置,其特征在于,所述水印要素信息获取模块具体包括:水印信息安全串获取子模块、检测子模块、水印识别码提取子模块和水印要素信息确定子模块;其中,
所述水印信息安全串获取子模块,用于根据所述水印信息获取水印信息安全串;
所述检测子模块,用于对所述水印信息安全串进行完整性及有效性检测;
所述水印识别码提取子模块,用于在检测子模块检测通过后,从所述水印信息安全串中提取水印识别码;
所述水印要素信息确定子模块,用于根据所述水印识别码确定对应的水印要素信息。
18.一种水印处理系统,其特征在于,该系统包括:水印嵌入装置和水印提取装置;其中,
所述水印嵌入装置为权利要求12至14任一项所述的装置;
所述水印提取装置为权利要求15至17任一项所述的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410056294.XA CN104850765A (zh) | 2014-02-19 | 2014-02-19 | 一种水印处理方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410056294.XA CN104850765A (zh) | 2014-02-19 | 2014-02-19 | 一种水印处理方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104850765A true CN104850765A (zh) | 2015-08-19 |
Family
ID=53850405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410056294.XA Pending CN104850765A (zh) | 2014-02-19 | 2014-02-19 | 一种水印处理方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104850765A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106023059A (zh) * | 2016-05-26 | 2016-10-12 | 北京启迪思创科技有限公司 | 一种水印信息生成方法及装置 |
CN106126982A (zh) * | 2016-06-24 | 2016-11-16 | 南京信息工程大学 | 一种基于数字指纹的pdf文档版权保护方法 |
CN106803042A (zh) * | 2015-11-25 | 2017-06-06 | 中国电信股份有限公司 | 基于身份标识的数据处理方法、装置和系统 |
CN106919813A (zh) * | 2015-12-25 | 2017-07-04 | 中国电信股份有限公司 | 大数据水印管理方法和系统 |
CN108665403A (zh) * | 2017-03-29 | 2018-10-16 | 腾讯科技(深圳)有限公司 | 数字水印嵌入方法、提取方法、装置及数字水印系统 |
CN109522684A (zh) * | 2018-11-27 | 2019-03-26 | 中国联合网络通信集团有限公司 | 数据处理方法、设备及存储介质 |
CN109670281A (zh) * | 2017-10-16 | 2019-04-23 | 北京大学 | 电子文档的处理方法和装置 |
CN110222479A (zh) * | 2019-05-24 | 2019-09-10 | 杭州世平信息科技有限公司 | 一种对文本型数据进行溯源的方法 |
CN111199746A (zh) * | 2020-01-08 | 2020-05-26 | 中信银行股份有限公司 | 信息隐藏方法以及隐藏信息提取方法 |
CN111680273A (zh) * | 2020-05-21 | 2020-09-18 | 北京北信源软件股份有限公司 | 水印嵌入方法、装置、电子设备及可读存储介质 |
CN116150716A (zh) * | 2023-04-24 | 2023-05-23 | 中国科学技术大学 | 数据库水印嵌入方法、提取方法、存储介质及电子设备 |
CN117708779A (zh) * | 2024-02-05 | 2024-03-15 | 广东鸿数科技有限公司 | 一种数据水印处理方法和溯源方法、存储介质 |
CN117708779B (zh) * | 2024-02-05 | 2024-06-07 | 广东鸿数科技有限公司 | 一种数据水印处理方法和溯源方法、存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030062463A (ko) * | 2002-01-17 | 2003-07-28 | 주식회사 마크애니 | 텍스트 문서로/로부터 워터마크를 삽입 및 추출하는방법과 그 장치 |
CN101645061A (zh) * | 2009-09-03 | 2010-02-10 | 张�浩 | 一种以文本信息为载体的信息隐藏方法 |
JP2010272920A (ja) * | 2009-05-19 | 2010-12-02 | Mitsubishi Electric Corp | 電子透かし埋め込み装置及び電子透かし埋め込み方法及び電子透かし埋め込みプログラム |
CN101957810A (zh) * | 2009-07-16 | 2011-01-26 | 西安腾惟科技有限公司 | 利用计算机系统在文档中嵌入及检测水印的方法和装置 |
CN103310130A (zh) * | 2013-06-25 | 2013-09-18 | 西安科技大学 | 文本文档数字水印的嵌入和提取方法 |
-
2014
- 2014-02-19 CN CN201410056294.XA patent/CN104850765A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030062463A (ko) * | 2002-01-17 | 2003-07-28 | 주식회사 마크애니 | 텍스트 문서로/로부터 워터마크를 삽입 및 추출하는방법과 그 장치 |
JP2010272920A (ja) * | 2009-05-19 | 2010-12-02 | Mitsubishi Electric Corp | 電子透かし埋め込み装置及び電子透かし埋め込み方法及び電子透かし埋め込みプログラム |
CN101957810A (zh) * | 2009-07-16 | 2011-01-26 | 西安腾惟科技有限公司 | 利用计算机系统在文档中嵌入及检测水印的方法和装置 |
CN101645061A (zh) * | 2009-09-03 | 2010-02-10 | 张�浩 | 一种以文本信息为载体的信息隐藏方法 |
CN103310130A (zh) * | 2013-06-25 | 2013-09-18 | 西安科技大学 | 文本文档数字水印的嵌入和提取方法 |
Non-Patent Citations (1)
Title |
---|
蔡智佑: "TXT文本文档数字水印技术的研究和实现", 《数字化用户》 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106803042A (zh) * | 2015-11-25 | 2017-06-06 | 中国电信股份有限公司 | 基于身份标识的数据处理方法、装置和系统 |
CN106919813A (zh) * | 2015-12-25 | 2017-07-04 | 中国电信股份有限公司 | 大数据水印管理方法和系统 |
CN106023059A (zh) * | 2016-05-26 | 2016-10-12 | 北京启迪思创科技有限公司 | 一种水印信息生成方法及装置 |
CN106126982A (zh) * | 2016-06-24 | 2016-11-16 | 南京信息工程大学 | 一种基于数字指纹的pdf文档版权保护方法 |
CN106126982B (zh) * | 2016-06-24 | 2018-09-14 | 南京信息工程大学 | 一种基于数字指纹的pdf文档版权保护方法 |
US10977761B2 (en) | 2017-03-29 | 2021-04-13 | Tencent Technology (Shenzhen) Company Limited | Digital watermark embedding method and extraction method, digital watermark embedding apparatus and extraction apparatus, and digital watermark system |
CN108665403A (zh) * | 2017-03-29 | 2018-10-16 | 腾讯科技(深圳)有限公司 | 数字水印嵌入方法、提取方法、装置及数字水印系统 |
CN108665403B (zh) * | 2017-03-29 | 2022-06-24 | 腾讯科技(深圳)有限公司 | 数字水印嵌入方法、提取方法、装置及数字水印系统 |
CN109670281A (zh) * | 2017-10-16 | 2019-04-23 | 北京大学 | 电子文档的处理方法和装置 |
CN109522684A (zh) * | 2018-11-27 | 2019-03-26 | 中国联合网络通信集团有限公司 | 数据处理方法、设备及存储介质 |
CN109522684B (zh) * | 2018-11-27 | 2020-07-28 | 中国联合网络通信集团有限公司 | 数据处理方法、设备及存储介质 |
CN110222479A (zh) * | 2019-05-24 | 2019-09-10 | 杭州世平信息科技有限公司 | 一种对文本型数据进行溯源的方法 |
CN111199746A (zh) * | 2020-01-08 | 2020-05-26 | 中信银行股份有限公司 | 信息隐藏方法以及隐藏信息提取方法 |
CN111199746B (zh) * | 2020-01-08 | 2022-09-06 | 中信银行股份有限公司 | 信息隐藏方法以及隐藏信息提取方法 |
CN111680273A (zh) * | 2020-05-21 | 2020-09-18 | 北京北信源软件股份有限公司 | 水印嵌入方法、装置、电子设备及可读存储介质 |
CN116150716A (zh) * | 2023-04-24 | 2023-05-23 | 中国科学技术大学 | 数据库水印嵌入方法、提取方法、存储介质及电子设备 |
CN117708779A (zh) * | 2024-02-05 | 2024-03-15 | 广东鸿数科技有限公司 | 一种数据水印处理方法和溯源方法、存储介质 |
CN117708779B (zh) * | 2024-02-05 | 2024-06-07 | 广东鸿数科技有限公司 | 一种数据水印处理方法和溯源方法、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104850765A (zh) | 一种水印处理方法、装置及系统 | |
Altaay et al. | An introduction to image steganography techniques | |
Agarwal | Text steganographic approaches: a comparison | |
CN103310407B (zh) | 基于qr码的矢量地理空间数据全盲水印方法 | |
CN110457873B (zh) | 一种水印嵌入与检测方法及装置 | |
US11361397B2 (en) | Method and apparatus for watermark embedding and extracting | |
Zhang | Commutative reversible data hiding and encryption | |
CN109740316B (zh) | 一种动态水印嵌入、验证方法及系统和动态水印处理系统 | |
CN103778590A (zh) | 利用数字图像存储和传输信息的方法和装置 | |
Moon et al. | Data security using data hiding | |
CN104063731A (zh) | 一种采用数字水印技术的二维码防伪印刷及验证方法 | |
CN106022011A (zh) | 基于图像的保密信息传播方法、装置和系统 | |
CN111010490A (zh) | 水印添加方法、装置、电子设备及计算机可读存储介质 | |
CN110288504A (zh) | 一种面向区块链数字教育平台的自动加水印方法 | |
Yari et al. | An overview and computer forensic challenges in image steganography | |
CN102842053B (zh) | 一种防伪图码标签及其制造方法 | |
Saraswat et al. | A review of digital image steganography | |
CN113536247B (zh) | 一种可溯源信息的具有md5特征手机号码隐式数据水印方法 | |
Khanduja et al. | Identification and Proof of Ownership by WatermarkingRelational Databases | |
CN104376236A (zh) | 基于伪装学的方案自适应数字水印嵌入方法及提取方法 | |
Jaiswal et al. | Implementation of a new technique for web document protection using unicode | |
Goyal et al. | A robust method for integrity protection of digital data in text document watermarking | |
Lin et al. | A copyright protection scheme based on PDF | |
CN101226578B (zh) | 一种文件信息隐藏与识别追踪的方法及装置 | |
CN114091080A (zh) | 一种字幕文件加密解密方法、系统、存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150819 |