CN103824006B - 一种手机应用软件自动生成水印的方法和系统 - Google Patents
一种手机应用软件自动生成水印的方法和系统 Download PDFInfo
- Publication number
- CN103824006B CN103824006B CN201410089718.2A CN201410089718A CN103824006B CN 103824006 B CN103824006 B CN 103824006B CN 201410089718 A CN201410089718 A CN 201410089718A CN 103824006 B CN103824006 B CN 103824006B
- Authority
- CN
- China
- Prior art keywords
- watermark
- code
- ascii character
- character picture
- mobile phone
- 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 39
- 230000011218 segmentation Effects 0.000 claims abstract description 15
- 238000003780 insertion Methods 0.000 claims abstract description 13
- 230000037431 insertion Effects 0.000 claims abstract description 13
- 238000000605 extraction Methods 0.000 claims abstract description 10
- 239000012634 fragment Substances 0.000 claims description 7
- 230000008569 process Effects 0.000 description 6
- 230000003068 static effect Effects 0.000 description 4
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000012966 insertion method Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000003860 storage Methods 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/106—Enforcing content protection by specific content processing
- G06F21/1063—Personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
本发明涉及一种手机应用软件自动生成水印的方法和系统,所述方法包括:水印产生步骤,给指定图片产生一个ASCII字符图片,模糊并分割该ASCII字符图片,将分割的每一部分ASCII字符图片映射为一段代码,形成水印代码;水印插入步骤,通过指定事件序列获取手机应用程序的执行路径,将执行路径中仅有一个入口点和一个出口点的程序序列作为基本块,选取仅执行一次的基本块,在该基本块的原始代码中随机插入水印代码;水印提取步骤:使用相同的事件序列运行手机应用程序,扫描手机应用程序的内存,并从内存中定位水印,再提取水印进行验证。本发明的水印构建方式独特,且不易被识别,能有效地识别重组软件,保护手机应用软件。
Description
技术领域
本发明涉及手机应用软件保护领域,特别是针对安卓应用软件和ios应用软件,涉及的一种手机应用软件自动生成水印的方法和系统。
背景技术
智能手机已经成为人们日常生活中很普遍的工具,很多传统计算机的应用也已经转移到智能手机上,例如社交网络,游戏等。因此,智能手机应用软件的安全也日益重要。
安卓应用软件和ios应用软件目前在智能手机应用软件中占有很大比例,其面临多种威胁,其中包括重组,即添加恶意负载或广告给合法的应用软件并形成新的重组软件。攻击者经常使用重组的方法,因为该方法需要修改的内容很少。当前的研究显示15%的安卓市场应用软件都是重组的软件。由于普通用户无法区分合法软件和重组的软件,因此攻击者重组软件后被查出的可能性很小。
现有的检测手机市场中重组软件的技术主要包括基于图的方法和基于哈希的方法。但是,当软件中存在模糊技术时,检测率是低的。模糊技术主要包括对控制流和数据流进行转换,使现有技术难于检测出重组的软件。因此,考虑新的方法,检测出非法的重组软件,保护软件版权及用户使用的安全性是非常有必要的。
在手机应用软件中加入水印可以有效解决这个问题。通过从应用软件中提取水印,可以识别出应用软件的拥有者,并对重组的软件进行有效判定。通常有两种水印方法:静态水印和动态水印。静态水印是将数据或变量插入到应用程序中,一旦水印被破坏,便不能从目标应用软件中提取正确的水印。动态水印使用运行信息作为水印,例如路径和内存状态,但是构建水印的动态信息容易被识别。
结合动态水印和静态水印的特点,本发明提出了一种新的手机应用软件自动生成水印方法。
发明内容
本发明所要解决的技术问题是提供一种手机应用软件自动生成水印方法,用于解决识别手机应用软件的重组软件的问题。
本发明解决上述技术问题的技术方案如下:一种手机应用软件自动生成水印的方法,包括:
水印产生步骤:给指定图片产生一个ASCII字符图片,模糊并分割该ASCII字符图片,将分割的每一部分ASCII字符图片映射为一段代码,将每段代码作为水印代码的一个片段,形成水印代码;
水印插入步骤:通过指定事件序列获取手机应用程序的执行路径,将执行路径中仅有一个入口点和一个出口点的程序序列作为基本块,选取仅执行一次的基本块,在该基本块的原始代码中随机插入水印代码;
水印提取步骤:使用与水印插入步骤相同的事件序列运行手机应用程序,扫描手机应用程序的内存,并从内存中定位水印,再提取水印进行验证。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,所述水印产生步骤还包括:在分割ASCII字符图片前,随机选择ASCII字符图片中的一部分字符,并将其随机放入分割成的各部分ASCII字符图片中。
进一步,模糊ASCII字符图片的方法具体包括:在不影响图片识别的情况下,在原始ASCII字符图片的空白区域加入若干与原始ASCII字符图片不相关的字符。
进一步,所述步骤2插入水印代码后,采用适用的常量对水印代码进行变形,且在变形后的水印代码中创建新的语句,使变形后的水印代码与原始水印代码间的语义不变。
进一步,所述步骤2插入水印代码后,采用运行时发生变化的变量对水印代码进行变形。
进一步,所述步骤1中,在水印代码的开始处插入标志位,该标志位用于表示水印的开始;所述步骤3中定位水印时,检查内存中所有对象,若对象中带有插入的标志位,则此对象为水印。
对应地,本发明的技术方案还包括一种手机应用程序自动生成水印的系统,包括依次连接的水印产生模块、水印插入模块和水印提取模块:
所述水印产生模块,用于给指定图片产生一个ASCII字符图片,模糊并分割该ASCII字符图片,将分割的每一部分ASCII字符图片映射为一段代码,将各段代码叠加,形成水印代码;
所述水印插入模块,用于通过指定事件序列获取手机应用程序的执行路径,将执行路径中仅有一个入口点和一个出口点的程序序列作为基本块,选取仅执行一次的基本块,在该基本块的原始代码中随机插入水印代码;
所述水印提取模块,用于使用与所述水印插入模块中相同的事件序列运行手机应用程序,扫描手机应用程序的内存,并从内存中定位水印,再提取水印进行验证。
进一步,所述水印产生模块还用于:在分割ASCII字符图片前,随机选择ASCII字符图片中的一部分字符,并将其随机放入分割后成的各部分ASCII字符图片中。
进一步,所述水印插入模块插入水印代码后,采用适用的常量对水印代码进行变形,且在变形后的水印代码中创建新的语句,使为变形后的水印代码与原始水印代码间的语义不变。
进一步,所述水印插入模块插入水印代码后,采用运行时发生变化的变量对水印代码进行变形。
本发明的有益效果是:本发明通过对图片的内在特征进行提取,形成ASCII格式图片,对其进行模糊与分割,并将图中的每一部分映射为一段代码,形成水印代码嵌入到原始代码中;在嵌入过程中,通过指定输入事件序列,选择必经执行路径上的基本块进行插入,并对代码中的常量与变量进行一定的变形,保证其不被恶意用户识别并替换;最后在水印验证过程中,可以通过特殊标识有效识别水印部分并进行比较,对软件进行保护。本发明在手机应用软件中加入了特殊构建的水印,水印构建方式独特,且不易被识别,能有效地识别重组软件,保护手机应用软件。
附图说明
图1为本发明普通图片和ASCII字符图片的示例图;
图2为本发明手机应用软件自动生成水印的流程示意图;
图3为本发明手机应用软件自动生成水印的系统的结构示意图
图4为本发明ASCII字符图片的模糊与分割示例图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
为了在手机应用软件中加入好的水印,需要满足如下条件:1)通过语义保留的变形,代码不容易被破坏。一般不需要考虑变形会破坏语义,因为攻击者也希望重组后的软件能正常运行。2)代码不能被轻易识别,即添加的代码没有特别之处。3)水印不容易被识别,否则攻击者会通过监控应用软件来去掉相应的水印。
针对上述条件,本实施例设计了一种手机应用软件自动生成水印的方法来满足上述要求,该方法是一种基于图片的水印方法。为了满足条件1),该方法不直接使用应用程序中的静态代码或数据作为水印;为了满足条件2),该方法尽量使用原来应用程序中的代码和数据结构,将这些代码与水印代码结合;为了满足条件3),该方法并不使用一般格式的图片,而是使用ASCII格式。如图1所示,给出了将普通图片转换成ASCII字符格式的图片的过程,ASCII字符格式的图片并非文件格式的图片,即使几个字符被篡改,两个图片仍是可比较的,从而将ASCII水印图片加入到原始应用中,不容易被识别出。
如图2所示,本实施例的主要流程分为水印产生步骤、水印插入步骤和水印提取步骤。
水印产生步骤:给指定图片产生一个ASCII字符图片,模糊并分割该ASCII字符图片,将分割的每一部分ASCII字符图片映射为一段代码,将每段代码作为水印代码的一个片段,形成水印代码。本实施例的水印使用图片,但是需要将图片原始格式进行转换,即产生一个ASCII字符图片轮廓,且为了使得水印更强健,还需将轮廓分成几部分,不同部分将共享一些冗余信息。通过这种方式,即使部分水印被篡改了,仍然可以判断应用程序中的水印是否与原作者提供的相同。另外,该方法可以自动产生一些代码,在内存中动态地画图,轮廓中的每一部分都对应于代码的一个片段。
水印插入步骤:通过指定输入事件序列获取手机应用程序的执行路径,将执行路径中仅有一个入口点和一个出口点的程序序列作为基本块,选取仅执行一次的基本块,在该基本块的原始代码中随机插入水印代码。在实际运用中,不能直接将代码和应用程序组合在一起,因为水印的代码可能会无法运行。因此,为了让水印代码正常运行,需要将其插入一定会运行的路径中,而在提取水印过程中,原始作者也可以使用自己秘密的“输入”来触发相应代码的运行。与运行在X86平台上的传统应用程序相比,手机应用程序多由事件驱动。本实施例随机产生一系列事件序列作为秘密“输入”,获取相应执行路径,然后依据输入将相应代码加入执行路径中。
水印提取步骤:使用指定输入事件序列运行手机应用程序,扫描手机应用程序的内存,并从内存中定位水印,再提取水印进行验证。需要验证应用程序的水印时,首先从应用程序中提取出来,即使用作者提供的秘密“输入”(如事件序列)来运行应用程序,然后扫描内存并获取水印。当提取出水印后,将其与作者提供的水印做比较,如果相同,则证明软件是被重组的。需要补充说明的是,本实施例中不需要两个水印完全相同。因此,即使图片的一些部分被损坏,通过人眼或文本比较工具对ASCII相似性进行比较,进而识别水印,来保护原始作者的版权。
对应地,如图3所示,本实施例也给出了一种手机应用程序自动生成水印的系统,包括依次连接的水印产生模块、水印插入模块和水印提取模块:
所述水印产生模块,用于给指定图片产生一个ASCII字符图片,模糊并分割该ASCII字符图片,将分割的每一部分ASCII字符图片映射为一段代码,将每段代码作为水印代码的一个片段,形成水印代码;
所述水印插入模块,用于通过指定事件序列获取手机应用程序的执行路径,将执行路径中仅有一个入口点和一个出口点的程序序列作为基本块,选取仅执行一次的基本块,在该基本块的原始代码中随机插入水印代码;
所述水印提取模块,用于使用与所述水印插入模块中相同的事件序列运行手机应用程序,扫描手机应用程序的内存,并从内存中定位水印,再提取水印进行验证。
基于上述基本原理,本实施例具体的实施过程如下。
一、水印产生过程
水印产生过程主要是通过给图片产生一个ASCII字符型“草图”,进而对草图进行模糊与分割,最后将草图的每一部分映射为一段代码产生水印,准备加入到软件中。
(1)首先,由于文件格式的图片容易被识别,因此直接使用ASCII字符来表示图片,产生的ASCII图片被称作“草图”。本实施例中主要通过使用TextaizerPro软件给指定图片产成不同类型的ASCII图片,同时可以通过修改一些参数来改变ASCII图片的大小。因此在操作过程中是可以控制草图的尺寸的,小的草图不容易被发现,但是当执行水印验证时,很难与原始图片进行比对。从而,在不同情况下选择不同大小的草图。
(2)其次,为了使得水印更强健,采用如下两种技术:
(a)草图模糊。图片有一个特殊的特征,如果两个图片并非具有完全相同的字符序列,但是可能表示相同的意义。因此,可以对草图进行模糊,通过在原始草图中加入一些字符,在不影响模糊的草图识别情况下,在草图的空白区域加入一些不相关的字符。图4显示了草图模糊的例子,以“secretwords”作为示例,左边最下图是原始图片草图模糊后的,与原始轮廓比较,模糊的草图包含更多的字符。
(b)草图分割。通过将草图划分为几个部分,每两部分有一些冗余的字符。即使划分的部分中一些被篡改,仍然可以将草图作为水印与原始图片进行比较。为了划分草图,可随机选择草图中的一部分字符,并将其放入不同部分。通过将分割的草图进行叠加,可以恢复水印。如图4所示,右边的图片即为进行草图分割后的三个部分,将其叠加可恢复水印。
(3)最后,通过将草图的每一部分映射到一段代码,然后将代码叠加到原始应用软件代码中,获取一个带水印的应用程序。该方法使用一维数组来描述每一部分,使用数组中每个元素(如一个字节)来描述此部分中的一个字符。但是这样数组可能很大,容易被攻击和发现。因此,可以将上面所述“草图分割”划分图片的一部分分为多个片段,并使用多个数组来描述这些部分,再移除数组中的回车符和换行符,因此,攻击者在不知道每一行中字符数量的情况下,很难重组水印图片。但是对于编程人员,因为知道数量,因此可以重建图片进行验证。
下面以例1进行说明。
例1:
上例中,水印是长度为500,并且定义了一个500字节的数组。在循环中,将一部分“Array1”放入水印中。“Array1”对应水印的一部分。通过获取Array1在原始水印的起始位置,当一部分代码被执行时,部分水印就构建了。当代码的所有部分被执行,就可以看到内存中的一个完整水印。
二、水印插入过程
将水印代码插入到原始应用程序过程中,需要保证所有的水印代码能被执行,否则无法提取内存中的水印进行比较。本实施例设计了一个基于事件的插入方法,该方法通过获取一个确保运行的执行路径,并将水印代码插入该路径。
(1)执行路径产生。与运行在X86平台上的传统应用程序不同,手机应用程序多由事件驱动。如果直接从手机应用程序的起点获取执行路径,路径的长度可能不足以插入水印。因此,通过随机产生一系列事件(如点击等),使用这个事件序列作为手机应用程序的输入,并获取执行路径。通过这种方式,无论在任何时间输入这个事件序列,应用程序的执行路径都是相同的。因此当提取水印时需要使用相同的事件序列。
(2)基本块选择。在一个执行路径中存在很多基本块。一个基本块指仅有一个入口点(第一条语句)和一个出口点(最后一条语句)的程序语句序列,但并非所有的基本块都适合加入水印代码,因为有些基本块在执行路径中执行多次,因此如果将水印加入这些基本块,则会执行多次。因此,需要将执行多于一次的基本块进行剔除,选择只执行一次的基本块。
(3)水印代码插入。在执行路径中选择合适的基本块之后,将水印随机插入选取的基本块的原始代码中。当应用程序执行一个指定的事件序列,水印将存入内存中并可以执行。
(4)水印代码的转换。由于传统水印代码与应用程序的代码没有任何关系,因此攻击者容易将其分离,水印不够健壮。本实施例通过分析原始应用程序中常量与变量,增加水印代码和原始代码的相关性。
(a)语义保存的变形。对于水印中的任一字节b和任一常量c,我们使用抵消语句来用c表达b。
下面以例2进行说明。
例2:
例2中,原始的水印代码如例1所示,将其进行变形。首先,改变Array1中的几个字节(举例中的第1,第2个字节)。然后在水印代码最后增加两个新的语句(pw.array[base]+=c和pw.array[base+1]-=c),其中c=0x30,可知变形后的Array1中前2个字节为;0x39+0x30=0x69,0xA3-0x30=0x73。由此可知,这两个新加的语句使得Array1与原始应用程序中的代码一致,从而通过创建了原始代码和水印代码的关系来保持水印代码的语义不变。当然,除了使用了加操作和减操作,也可以使用乘等。
(b)语义破坏的变形。如果仅采用适用常量来对水印代码进行变形,通过分析任何两个变量之间的依赖性和只用到常量的代码,攻击者还是能识别出。因此,需要使用运行时发生变化的变量来解决这个问题,即直接使用一个二维操作来混合水印中的一个字符和一个变量。例如,增加一个语句pw.array[base]+=v到原始代码中,其中v是一个原始应用程序中的变量。因此pw.array[base]不再是原始的值,使得水印发生了改变。但是水印是一个图片,仅改变几个字符并不会影响比较。与以前的方法不同,原始水印和提取的水印不需要完全相同,具体比较过程在水印提取过程中进行介绍。
三、水印提取过程
当怀疑一个应用软件是重组软件时,可以提取其中的水印并与原始作者提供的水印进行比较。由于本实施例提供的水印是一种动态水印验证,只有当应用程序运行指定事件序列为输入时,才能在在内存中读取并提取水印进行验证。
提取水印中的一个困难是定位包含水印的数组(例1中的“pw”)位置。如果一个应用程序没有改变可以识别在水印上的操作语句。因为应用程序可能被模糊,方法的指令和变量的名字被改变,因此不能直接定位水印,需要使用特殊的标志位。从而在水印产生过程中,在水印代码的开始处插入一个标志位,用于表示水印的开始,该标志位可以是应用程序中唯一的字符,例如可以使用0XFFEEFEF8作为标志位。当要定位水印时,列举所有的对象,并检查这些对象的最前面的几个字符。如果找到对象的标志位,此对象即为水印。注意不同的应用程序有不同的标志位。这些标志位最好是秘密的字符,否则攻击者可能定位水印并篡改它。
当然,原始作者也需要提供水印的一维信息,如一行中的字符数。否则,水印仅是一维的数组,不能直接转换到图片中。这也是攻击者即使获得数组,也不容易识别水印内容的原因。然后可以将提取的水印与原始作者提供的水印做比较。比较过程可以直接通过人眼或文本比较工具对ASCII相似性进行比较,进而识别水印,如果相似,确定是重组的应用程序,实现对软件版权的保护。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种手机应用软件自动生成水印的方法,其特征在于,包括:
水印产生步骤:给指定图片产生一个ASCII字符图片,模糊并分割该ASCII字符图片,将分割的每一部分ASCII字符图片映射为一段代码,将每段代码作为水印代码的一个片段,形成水印代码;
模糊ASCII字符图片的方法具体包括:在不影响图片识别的情况下,在原始ASCII字符图片的空白区域加入若干与原始ASCII字符图片不相关的字符;
在分割ASCII字符图片前,随机选择ASCII字符图片中的一部分字符,并将其随机放入分割成的各部分ASCII字符图片中;
水印插入步骤:通过指定事件序列获取手机应用程序的执行路径,将执行路径中仅有一个入口点和一个出口点的程序序列作为基本块,选取仅执行一次的基本块,在该基本块的原始代码中随机插入水印代码;
水印提取步骤:使用与水印插入步骤相同的事件序列运行手机应用程序,扫描手机应用程序的内存,并从内存中定位水印,再提取水印进行验证。
2.根据权利要求1所述的方法,其特征在于,所述水印插入步骤中插入水印代码后,采用适用的常量对水印代码进行变形,且在变形后的水印代码中创建新的语句,使变形后的水印代码与原始水印代码间的语义不变。
3.根据权利要求1所述的方法,其特征在于,所述水印插入步骤中插入水印代码后,采用运行时发生变化的变量对水印代码进行变形。
4.根据权利要求1所述的方法,其特征在于,所述水印产生步骤中,在水印代码的开始处插入标志位,该标志位用于表示水印的开始;所述水印提取步骤中定位水印时,检查内存中所有对象,若对象中带有插入的标志位,则此对象为水印。
5.一种手机应用程序自动生成水印的系统,其特征在于,包括依次连接的水印产生模块、水印插入模块和水印提取模块:
所述水印产生模块,用于给指定图片产生一个ASCII字符图片,模糊并分割该ASCII字符图片,将分割的每一部分ASCII字符图片映射为一段代码,将每段代码作为水印代码的一个片段,形成水印代码;
所述水印产生模块还用于:在分割ASCII字符图片前,随机选择ASCII字符图片中的一部分字符,并将其随机放入分割后成的各部分ASCII字符图片中;以及在不影响图片识别的情况下,在原始ASCII字符图片的空白区域加入若干与原始ASCII字符图片不相关的字符;
所述水印插入模块,用于通过指定事件序列获取手机应用程序的执行路径,将执行路径中仅有一个入口点和一个出口点的程序序列作为基本块,选取仅执行一次的基本块,在该基本块的原始代码中随机插入水印代码;
所述水印提取模块,用于使用与所述水印插入模块中相同的事件序列运行手机应用程序,扫描手机应用程序的内存,并从内存中定位水印,再提取水印进行验证。
6.根据权利要求5所述的系统,其特征在于,所述水印插入模块插入水印代码后,采用适用的常量对水印代码进行变形,且在变形后的水印代码中创建新的语句,使变形后的水印代码与原始水印代码间的语义不变。
7.根据权利要求6所述的系统,其特征在于,所述水印插入模块插入水印代码后,采用运行时发生变化的变量对水印代码进行变形。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410089718.2A CN103824006B (zh) | 2014-03-12 | 2014-03-12 | 一种手机应用软件自动生成水印的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410089718.2A CN103824006B (zh) | 2014-03-12 | 2014-03-12 | 一种手机应用软件自动生成水印的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103824006A CN103824006A (zh) | 2014-05-28 |
CN103824006B true CN103824006B (zh) | 2016-06-29 |
Family
ID=50759062
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410089718.2A Active CN103824006B (zh) | 2014-03-12 | 2014-03-12 | 一种手机应用软件自动生成水印的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103824006B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462884B (zh) * | 2014-12-22 | 2017-09-29 | 北京邮电大学 | 软件水印的嵌入和提取方法 |
CN109146759A (zh) * | 2018-07-23 | 2019-01-04 | 深圳市联软科技股份有限公司 | 一种图形水印的形成方法、装置、介质及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1282073A2 (en) * | 2001-07-12 | 2003-02-05 | Kowa Co., Ltd. | Technique of embedding and detecting digital watermark |
KR20030078517A (ko) * | 2002-03-30 | 2003-10-08 | 원치선 | 디지털 비디오의 인증 및 조작 위치 파악을 위한 워터마크삽입 및 검출 방법 |
CN1474282A (zh) * | 2003-06-19 | 2004-02-11 | 上海交通大学 | 小波域混沌半脆弱数字水印嵌入与提取方法 |
CN102044054A (zh) * | 2009-10-19 | 2011-05-04 | 北京大学 | 一种数字水印嵌入和提取方法及装置 |
-
2014
- 2014-03-12 CN CN201410089718.2A patent/CN103824006B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1282073A2 (en) * | 2001-07-12 | 2003-02-05 | Kowa Co., Ltd. | Technique of embedding and detecting digital watermark |
KR20030078517A (ko) * | 2002-03-30 | 2003-10-08 | 원치선 | 디지털 비디오의 인증 및 조작 위치 파악을 위한 워터마크삽입 및 검출 방법 |
CN1474282A (zh) * | 2003-06-19 | 2004-02-11 | 上海交通大学 | 小波域混沌半脆弱数字水印嵌入与提取方法 |
CN102044054A (zh) * | 2009-10-19 | 2011-05-04 | 北京大学 | 一种数字水印嵌入和提取方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103824006A (zh) | 2014-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Qin et al. | Coverless image steganography: a survey | |
CN107239713B (zh) | 一种敏感内容数据信息防护方法和系统 | |
CN103049682B (zh) | 一种基于字符间距编码的双重水印嵌入的文本水印方法 | |
CN102096787B (zh) | 一种基于word2007文本切分的信息隐藏方法及其装置 | |
CN103761459B (zh) | 一种文档多重数字水印嵌入、提取方法及装置 | |
CN112307520B (zh) | 电子印章添加和验证方法及系统 | |
Hanyurwimfura et al. | Text format based relational database watermarking for non-numeric data | |
US10706160B1 (en) | Methods, systems, and articles of manufacture for protecting data in an electronic document using steganography techniques | |
CN103544408A (zh) | 一种基于复合字体的pdf文档隐藏信息嵌入和提取方法 | |
US11531996B2 (en) | Method for anti-counterfeit inspection of QR code of agricultural product based on watermark library | |
Al-Wesabi | A smart English text zero-watermarking approach based on third-level order and word mechanism of Markov model | |
Alkhafaji et al. | Payload capacity scheme for quran text watermarking based on vowels with kashida | |
CN103824006B (zh) | 一种手机应用软件自动生成水印的方法和系统 | |
CN113810375B (zh) | webshell检测方法、装置、设备及可读存储介质 | |
WO2020237881A1 (zh) | 加注防伪信息的方法、装置、计算机设备及存储介质 | |
CN111382398B (zh) | 信息处理、隐藏信息解析和嵌入的方法、装置及设备 | |
CN114078071A (zh) | 图像溯源方法、装置及介质 | |
CN115982675A (zh) | 文档处理方法、装置、电子设备以及存储介质 | |
CN114511854A (zh) | 一种合同规范性的审核方法、装置、设备和介质 | |
CN116127419A (zh) | 数据处理方法、数据识别方法、字体文件生成方法及装置 | |
CN112818301A (zh) | Ofd版式电子文档的隐藏信息嵌入及提取方法、装置 | |
Singla et al. | A Hash Based Approach for secure image stegnograpgy using canny edge detection method | |
Xiu-Jian et al. | Deep Learning Based Image Forgery Detection Methods | |
CN107491423A (zh) | 一种基于数值‑字符串混合编码的中文文档基因量化与表征方法 | |
US8576049B2 (en) | Document authentication and identification |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |