CN101604369A - 信息隐藏方法以及信息隐藏装置 - Google Patents
信息隐藏方法以及信息隐藏装置 Download PDFInfo
- Publication number
- CN101604369A CN101604369A CNA2009101437096A CN200910143709A CN101604369A CN 101604369 A CN101604369 A CN 101604369A CN A2009101437096 A CNA2009101437096 A CN A2009101437096A CN 200910143709 A CN200910143709 A CN 200910143709A CN 101604369 A CN101604369 A CN 101604369A
- Authority
- CN
- China
- Prior art keywords
- section
- information
- encrypted
- control table
- encryption
- 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
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000011218 segmentation Effects 0.000 claims abstract description 19
- 238000005520 cutting process Methods 0.000 claims description 58
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000009434 installation Methods 0.000 description 101
- 239000000047 product Substances 0.000 description 29
- 238000003860 storage Methods 0.000 description 21
- 238000004590 computer program Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 238000004513 sizing Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Images
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/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供信息隐藏方法以及信息隐藏装置。信息隐藏方法通过按照预定的规则加密信息来隐藏信息,并包括:按照预定的规则将信息分割成应加密的加密区段和不应加密的非加密区段的分割工序;对所述加密区段进行加密的加密工序;生成控制表的控制表生成工序,所述控制表示出所述信息上的所述加密区段的位置或所述非加密区段的位置;以及将所述加密区段被加密了的所述信息与所述控制表结合起来或关联起来的编辑工序。
Description
技术领域
本发明涉及通过按照预定的规则加密信息来实现信息隐藏的信息隐藏方法以及信息隐藏装置。
背景技术
目前,计算机设备通过将软件安装在该计算机设备中,能够进行功能的更新或添加等。
软件由计算机程序、数据等信息构成。构成软件的信息以被记录在光盘等记录介质上的形式从制造/销售商流通到消费者那里。此外,构成软件的信息有时也通过互联网等计算机网络以原形式流通。
多数情况下,构成在市场中流通的软件的信息通过加密而被隐藏。当将软件拿到市场中流通时,通过对构成软件的信息进行加密来实现信息的隐藏,这对于防止非法复制和仿冒很重要。
发明内容
构成在市场中流通的软件的信息由于该信息全部被加密,因此当向计算机设备安装该软件时存在解密耗费时间的问题。即,当构成软件的信息的量大时,加密后的信息的量变大,所以用于解密的运算量也变大。其结果是,解密很耗费时间。此外,当将软件拿到市场中流通时,由于对构成软件的全部信息进行加密,因此存在进行加密的运算量变大从而加密耗费时间的问题。
本发明在于,提供一种能够减少构成软件等的信息的加密或解密的运算量、保证该信息的隐藏性、并能够提高对该信息进行加密或解密时的操作性或便利性的信息隐藏方法以及信息隐藏装置。
为了解决上述问题,本发明的信息隐藏方法是一种通过按照预定的规则加密信息来隐藏信息的信息隐藏方法,其中包括:按照预定的规则将信息分割成应加密的加密区段和不应加密的非加密区段的分割工序;对所述加密区段进行加密的加密工序;生成控制表的控制表生成工序,所述控制表示出所述信息上的所述加密区段的位置或所述非加密区段的位置;以及将所述加密区段被加密了的所述信息与所述控制表结合起来或关联起来的编辑工序。
此外,本发明的信息隐藏装置,包括:按照预定的规则将信息分割成应加密的加密区段和不应加密的非加密区段的分割单元;对所述加密区段进行加密的加密单元;生成控制表的控制表生成单元,所述控制表示出所述信息上的所述加密区段的位置或所述非加密区段的位置;以及将所述加密区段被加密了的所述信息与所述控制表结合起来或关联起来的编辑单元。
附图说明
图1是示出包含有通过本发明第一实施方式的信息隐藏方法实现了隐藏的安装包的产品包的说明图;
图2是示出被包含在图1中的产品包中的控制表的说明图;
图3是示出本发明的信息隐藏装置的第一实施方式的框图;
图4是示出由本发明的信息隐藏装置的第一实施方式执行的隐藏处理的流程图;
图5是示出执行本发明第一实施方式的隐藏处理中的分割工序时的安装顺序的说明图;
图6是示出紧接执行本发明第一实施方式的隐藏处理中的分割工序之后的安装顺序的说明图;
图7是示出紧接执行本发明第一实施方式的隐藏处理中的加密工序之后的安装顺序的说明图;
图8是示出紧接执行本发明第一实施方式的隐藏处理中的编辑工序之后的安装顺序的说明图;
图9是示出紧接执行由信息隐藏装置执行的隐藏处理中的加密工序之后的安装顺序的说明图,其中信息隐藏装置是本发明的第三实施方式;
图10是示出紧接执行由信息隐藏装置执行的隐藏处理中的加密工序之后的安装顺序的说明图,其中信息隐藏装置是本发明的第四实施方式。
参考标号说明
1 产品包
2 安装包(信息)
5 控制表
6 加密区段
7 非加密区段
8 位模式
10 信息隐藏装置
21 分割处理部(分割单元)
22 加密处理部(加密单元)
23 运算处理部(散列值生成单元)
24 表生成部(控制表生成单元)
25 编辑处理部(编辑单元)
具体实施方式
(第一实施方式)
下面,对本发明的第一实施方式进行说明。图1示出了产品包。
图1中的产品包1是通过对安装包2进行隐藏处理而生成的信息群。安装包2以产品包1的形式在市场中流通。
产品包1包括安装包2、电子签名3、公共密钥4以及控制表5。
安装包2是通过本发明的信息隐藏方法或信息隐藏装置来实现隐藏的信息的具体例,并且是由后述的信息隐藏装置10实施隐藏处理的对象。安装包2是将构成应用软件的计算机程序和数据以及安装程序等封包而得的包,其中应用软件用于改变、扩展或者更新个人计算机等计算机设备的功能。
安装包2被分割成多个区段。这些多个区段包括加密区段6和非加密区段7。加密区段6通过公共密钥加密方式被加密。非加密区段7不被加密。关于加密区段6中存在的位模式8,将在后面叙述。
电子签名3是为了证明被封包在安装包2中的应用软件的真实性而由该应用软件的制造者或者供应商所附加的电子签名。
公共密钥4是在安装包2的加密区段6的加密中被使用的密钥。
如下面所述的那样,控制表5是在谋求安装包2的隐藏的隐藏处理中生成的表。在控制表5中记录了进行解除被隐藏了的安装包2的隐藏以将安装包2还原成隐藏之前的原状态的隐藏解除处理所需的控制信息。
在产品包1中,电子签名3、公共密钥4以及控制表5通过非对称密钥加密方式被加密。此外,产品包1为了减小其大小而被实施了压缩处理。
图2示出了被包含在图1的产品包1中的控制表5的内容。在控制表5中记录了安装包2中的每个区段的编号、起始地址、长度、有无加密、以及散列值。“编号”例如是按照从安装包2的开头向末尾排列的区段的顺序为每个区段附加的编号。“起始地址”是以安装包2的开头为基准的各区段的相对起始地址,分别表示安装包2上的加密区段6的位置和非加密区段7的位置。“长度”表示各区段的长度。“有无加密”表示各区段有没有被加密,例如是标记。当该标记为“0”时,表示该区段是没有被加密的区段,即非加密区段7。当该标记为“1”时,表示该区段是被加密的区段,即加密区段6。“散列值”是各区段的散列值。“散列值”是根据各区段的内容而固有的值,只要区段的内容稍有不同,该值就会不同。
图3示出了信息隐藏装置。图3中的信息隐藏装置10是本发明的信息隐藏装置的第一实施方式,其对安装包2执行隐藏处理。信息隐藏装置10通过使个人计算机读取隐藏处理程序来实现。
信息隐藏装置10包括控制单元11、信息输入输出部12、存储部13以及操作部14。
控制单元11包括CPU(Central ProcessingUnit,中央处理器)、RAM(Random Access Memory,随机存取存储器)等。CPU从存储部13中读取用于使控制单元11起到后述的分割处理部21、加密处理部22、运算处理部23、表生成部24、编辑处理部25、产品化处理部26以及综合控制部27的作用的隐藏处理程序,并执行该隐藏处理程序来起到上述构成部分21至27的作用。RAM被用作CPU运行隐藏处理程序时的工作存储器。
分割处理部21按照预定的分割规则将安装包2分割成应加密的加密区段6和不应加密的非加密区段7。分割处理部21是分割单元的具体例子。
加密处理部22使用公共密钥4对加密区段6进行加密。加密处理部22是加密单元的具体例子。
运算处理部23分别计算加密区段6的散列值和非加密区段7的散列值。运算处理部23是散列值计算单元的具体例子。
表生成部24生成控制表5。表生成部24是控制表生成单元的具体例子。
编辑处理部25将加密区段6被加密了的安装包2、电子签名3、公共密钥4以及控制表5结合起来。编辑处理部25是编辑单元的具体例子。
产品化处理部26进行电子签名3、公共密钥4以及控制表5的非对称密钥加密方式的加密、以及产品包1整体的压缩处理。
综合控制部27对信息隐藏装置10进行综合控制。
信息输出部12将通过隐藏处理而生成的产品包1输出到记录介质上。信息输出部12的结构根据输出产品包1的记录介质的方式来确定。当输出产品包1的记录介质例如为光盘时,信息输出部12是光盘驱动器。
存储部13例如是硬盘或闪存。在存储部13中存储了上述的隐藏处理程序。该隐藏处理程序中包含有用于通过公共密钥加密方式来将加密区段6加密的加密程序、用于计算安装包2的各区段的散列值的散列函数等。此外,在存储部13中存储了进行隐藏处理之前的安装包2、电子签名3以及公共密钥4。而且,在存储部13中存储了用于将电子签名3、公共密钥4以及控制表5以非对称加密方式进行加密的非对称密钥。
操作部14是用于操作信息隐藏装置10的键盘、鼠标、显示器等输入输出装置。
图4示出了由信息隐藏装置10执行的隐藏处理。隐藏处理是实现安装包2的隐藏的处理。在开始隐藏处理前的阶段,在信息隐藏装置10的存储部13中存储有作为隐藏处理的对象的安装包2。当隐藏处理的操作者操作信息隐藏装置10的操作部14来向信息隐藏装置10输入了开始隐藏处理的指示后,开始针对安装包2的隐藏处理。
如图4所示,在隐藏处理中,首先,分割处理部21按照预定的分割规则将安装包2分割成应加密的加密区段6和不应加密的非加密区段7(分割工序)。第一实施方式中的分割规则是:将安装包2中的包含预定的位模式并具有预定大小的部分作为加密区段6。
分割工序包括步骤S1至步骤S4的四个步骤。首先,如图5所示,分割处理部21从安装包2中检测预定的位模式8(步骤S1)。预定的位模式8例如是表示通过加密加以保护的必要性高的信息片断的位模式、表示通过加密使得程序无法被仿冒的程序的部分的位模式、表示程序制作者的名称的位模式等。
接着,如图6所示,分割处理部21以检测出预定的位模式8的位置为基准,将安装包2细分为多个区段(步骤S2)。即,分割处理部21选择由预定的位模式8、紧接在该位模式8之前的例如100字节的信息片断、以及紧接在该位模式8之后的例如100字节的信息片断构成的信息的块,作为一个区段。当从紧接在预定的位模式之前到安装包2的开头的长度小于100字节时,分割处理部21选择安装包2的开头至预定的位模式之前的信息片断,作为加密区段6的开头侧部分。此外,当从紧接在预定的位模式之后到安装包2的末尾的长度小于100字节时,分割处理部21选择从紧接在预定的位模式之后到安装包2的末尾的信息片断,作为加密区段6的末尾侧部分。此外,预定的位模式之前之后的各信息片断的长度不限于100字节。当安装包2中有多个预定的位模式8时,分割处理部21选择多个上述的区段。并且,分割处理部21将被所选择的区段分开的安装包2的剩余部分分别选择为不同的区段。
接着,分割处理部21按照从安装包2的开头向末尾的顺序,为各区段赋予编号,调查以安装包2的开头为基准的各区段的相对起始地址(表示安装包2上的加密区段6的位置或者非加密区段7的位置的值),并调查各区段的长度。并且,分割处理部21将这些编号、起始地址、长度临时存储在控制单元11的RAM或存储部13中(步骤S3)。
接着,分割处理部21选择包含预定的位模式8的区段,作为加密区段6(步骤S4)。然后,分割处理部21针对被选择为加密区段6的区段,将表示有无加密的标记设置为“1”。分割处理部21针对非加密区段7,将表示有无加密的标记设置为“0”。这些标记被临时存储在控制单元11的RAM或存储部13中。
接着,如图7所示,加密处理部22使用存储在存储部13中的公共密钥4通过公共密钥加密方式对加密区段6进行加密(步骤S5:加密工序)。
接着,运算处理部23计算安装包2的各区段的散列值(步骤S6:散列值计算工序)。算出的各散列值被临时存储在控制单元11的RAM或存储部13中。
接着,表生成部24读取临时存储在控制单元11的RAM或存储部13中的各区段的编号、起始地址、长度、有无加密的标记以及散列值,并将它们排列起来生成控制表5(步骤S7:控制表生成工序)。
接着,如图8所示,编辑处理部25将加密区段6被加密了的安装包2、控制表5、存储在存储部13中的电子签名3和公共密钥4结合起来(步骤S8:编辑工序)。
接着,产品化处理部26通过将电子签名3、公共密钥4以及控制表5以非对称密钥加密方式进行加密来生成产品包1。然后,产品化处理部26对该产品包1全体进行压缩处理,并通过信息处理部12将压缩后的产品包1输出到光盘等记录介质中(步骤S9:产品化工序)。
记录了产品包1的记录介质作为有关安装包2的产品而在市场上流通。从市场购入该产品的消费者指示计算机设备进行有关安装包2的应用软件的安装。计算机设备的CPU展开(解压)产品包1,解密电子签名3、公共密钥4以及控制表5。然后,计算机设备的CPU使用解密后的公共密钥4以及控制表5来解密安装包2的加密区段6(隐藏解除处理)。即,在隐藏解除处理中,计算机设备的CPU首先基于记录在控制表5中的安装包2的各区段的起始地址和长度来确定安装包2的各区段,基于表示有无加密的标记来确定各加密区段6,并使用公共密钥4来解密各加密区段6。
如上所述,根据信息隐藏装置10的隐藏处理,由于只有作为安装包2的一部分的加密区段6被加密,因此与安装包2的全部被加密的情况相比,加密的运算量减少。从而,可在短时间内执行安装包2的加密。此外,当由计算机用户向计算机设备中安装有关该安装包2的应用软件时,计算机设备只执行对加密区段6的解密处理即可。由此,解密的运算量减少。从而,计算机设备可在短时间内执行有关安装包2的应用软件向计算机设备中的安装。而且,在信息隐藏装置10的隐藏处理中,检测出表示通过加密加以保护的必要性高的信息片断的位模式、表示通过加密使得程序无法被仿冒的程序的部分的位模式等,并只对包含这种位模式的区段进行加密。由此,高效地保证了安装包2的隐藏性。如此,根据信息隐藏装置10的隐藏处理,高效地保证了安装包2的隐藏性,从而提高了进行安装包2的加密或解密时的操作性、便利性。
此外,通过信息隐藏装置10的隐藏处理而实现了隐藏的安装包2被分割成多个区段,针对各加密区段6,按照每个加密区段6来进行加密。由此,即便在进行了安装包2的隐藏处理之后,也可以只通过用新的区段替换掉需要变更或更新的区段,来执行信息的变更或更新。即,在通过信息隐藏装置10的隐藏处理而实现了隐藏的安装包2中,即便在进行了安装包2的隐藏之后,安装包2的局部变更或更新也较容易。
此外,根据由信息隐藏装置10执行的隐藏处理,由于安装包2中的非加密区段7不被加密,因此对于非加密区段7中包含的信息片断的变更或更新非常容易。即,不需要为变更或更新而解密区段,而且在变更或更新之后也无需对该区段进行加密。此外,也可以只将区段中的极少一部分的信息片断直接改写成其他的信息片断。从而,即便在实现了安装包2的隐藏之后,安装包2的局部变更或更新也较容易。
此外,大多情况下,相比于加密后的信息来说,没有加密的信息的压缩率通常更高。根据由信息隐藏装置10执行的隐藏处理,安装包2中的非加密区段7不被加密。因此与安装包2全部被加密的场合相比,产品化工序中的安装包2的压缩率更高,因此包的制作者能够缩小产品包1的大小。
此外,根据信息隐藏装置10的隐藏处理,安装包2的各区段的散列值被记录在控制表5中。由此,用户通过比较变更前或更新前的安装包2的各区段的散列值与变更后或更新后的安装包2的各区段的散列值,能够以区段为单位容易地识别出两者的不同部分。例如,当用新版本的计算机程序更新已安装在计算机设备中的旧版本的计算机程序时,用户对包含旧版本的计算机程序的安装包2的各区段的散列值与包含新版本的计算机程序的安装包2的各区段的散列值进行比较,并确定两者之间具有不同散列值的区段。然后,用户只将确定的区段读入计算机设备中或经由互联网等计算机网络发送到计算机设备中。然后,用户在计算机设备中执行只安装读入或接收的确定的区段的处理,将旧版本的计算机程序更新为新版本的计算机程序。由此,用户能够高效、快速地进行程序的更新。
(第二实施方式)
对于本发明信息隐藏装置的第二实施方式,在隐藏处理的分割工序中,分割处理部21按照与上述第一实施方式中的分割规则不同的分割规则将安装包2分割为加密区段6和非加密区段7。第二实施方式中的分割规则是:将安装包2中的包含API(Application Program Interface,应用程序接口)调用指令并具有预定大小的部分作为加密区段6。
在分割工序中,分割处理部21首先从安装包2中检测API调用指令。
接着,分割处理部21以检测出API调用指令的位置为基准,将安装包2细分为多个区段。即,分割处理部21选择由API调用指令、紧接在该API调用指令之前的例如100字节的信息片断、以及紧接在该API调用指令之后的例如100字节的信息片断构成的信息的块,作为一个区段。当安装包2中有多个API调用指令时,分割处理部21选择多个上述的区段。并且,分割处理部21将被所选择的区段分开的安装包2的剩余部分分别选择为不同的区段。
接着,分割处理部21为各区段赋予编号,调查各区段的相对起始地址和长度,并将这些编号、起始地址、长度临时存储在控制单元11的RAM或存储部13中。
接着,分割处理部21选择包含API调用指令的区段,作为加密区段6。然后,分割处理部21针对被选择为加密区段6的区段,将表示有无加密的标记设置为“1”,针对其余的区段、即非加密区段7,将表示有无加密的标记设置为“0”。这些标记被临时存储在控制单元11的RAM或存储部13中。
接着,加密处理部22使用存储在存储部13中的公共密钥4,通过公共密钥加密方式对加密区段6进行加密。
接着,通过与上述第一实施方式中的隐藏处理的步骤S6至S9相同的处理,生成被压缩的产品包1。
根据本发明的第二实施方式,也能够获得与上述第一实施方式基本相同的效果。特别是通过对包含API调用指令的区段进行加密,包的制作者能够有效地防止安装包2中包含的计算机程序被非法复制和仿冒。
(第三实施方式)
对于本发明信息隐藏装置的第三实施方式,在隐藏处理的分割工序中,分割处理部21按照与上述第一或第二实施方式中的分割规则不同的分割规则将安装包2分割为加密区段6和非加密区段7。第三实施方式中的分割规则是:将安装包2分割成固定长度的多个区段,从这些多个区段中随机选择若干区段并将这些选择的区段作为加密区段6。各区段的固定长度例如是几百字节。此外,也可以将各区段的固定长度设定为安装包2的长度的例如百分之一。
在分割工序中,分割处理部21首先将安装包2分割成固定长度的多个区段。
接着,分割处理部21从分割后的多个区段中随机选择若干区段并将这些选择的区段作为加密区段6。并且,分割处理部21从分割后的多个区段中选择其余的区段作为非加密区段7。通过分割安装包2而形成的所有区段的个数与作为加密区段6而被从其中选出的个数的比率由隐藏处理的操作者操作信息隐藏装置10并例如根据安装包的隐藏性的必要程度来任意地设定。
接着,分割处理部21为安装包2的各区段赋予编号,调查各区段的起始地址和长度,并针对各区段设定表示有无加密的标记,然后将这些各个区段的编号、起始地址、长度以及表示有无加密的标记临时存储在控制单元11的RAM或存储部13中。
接着,如图9所示,加密处理部22使用存储在存储部13中的公共密钥4,通过公共密钥加密方式对加密区段6进行加密。
接着,通过与上述第一实施方式中的隐藏处理的步骤S6至S9相同的处理,生成被压缩的产品包1。
根据本发明的第三实施方式,也能够获得与上述第一或第二实施方式相同的效果。特别是,由于将安装包2分割成固定长度的区段,因此分割工序中的处理变得简单。从而隐藏处理所需的时间变短,能够减少信息隐藏装置10的处理负担。
(第四实施方式)
本发明信息隐藏装置的第四实施方式在隐藏处理的分割工序中,分割处理部21按照与上述第一至第三实施方式中的分割规则不同的分割规则将安装包2分割为加密区段6和非加密区段7。第四实施方式中的分割规则是:将安装包2分割成分别具有随机长度的多个区段,从这些多个区段中选择若干区段并将这些选出的区段作为加密区段。
在分割工序中,分割处理部21首先将安装包2分割成具有随机长度的多个区段。
接着,分割处理部21从安装包2的开头向末尾依次为分割后的各区段附加编号。分割处理部21从这些区段中选择附加了偶数编号的区段作为加密区段6,并选择附加了奇数编号的区段作为非加密区段7。
接着,分割处理部21调查安装包2的各区段的起始地址和长度,并针对各区段设定表示有无加密的标记,然后将这些各个区段的编号、起始地址、长度以及表示有无加密的标记临时存储在控制单元11的RAM或存储部13中。
接着,如图10所示,加密处理部22使用存储在存储部13中的公共密钥4,通过公共密钥加密方式对加密区段6进行加密。
接着,通过与上述第一实施方式中的隐藏处理的步骤S6至S9相同的处理,生成被压缩的产品包1。
根据本发明的第四实施方式,也能够获得与上述第一至第三实施方式相同的效果。特别是,由于将安装包2分割成随机长度的多个区段,并对这些区段中的一部分区段进行加密,因此安装包2被牢靠地隐藏起来。例如,即便第三人试图要解密安装包2的加密区段6,也很难发现加密区段6位于安装包2中的哪里。
在上述的第一实施方式中,例举了对包含预定的位模式8的区段进行加密的情况,但本发明不限于此。加密处理部22也可以对包含预定的文本模式的区段进行加密。
在上述的各实施方式中,例举了在隐藏处理的编辑工序中由编辑处理部25将安装包2、电子签名3、公共密钥4以及控制表5结合起来的情况,但本发明不限于此。例如,编辑处理部25也可以分别独立地生成包含安装包2、电子签名3、公共密钥4的第一产品包和包含控制表5的第二产品包,并且例如由编辑处理部25通过在任一个产品上附加用于识别另一个产品包的识别信息来将两者关联起来。
此外,本发明也可以采用与在上述各实施方式中所例举的分割规则不同的分割规则。例如,当安装包2中包含有多个计算机程序时,分割处理部21也可以将安装包2分割成多个区段使得每个区段一对一地对应于每个程序,并根据每个程序的保护必要性来决定是否要加密各区段。
此外,在上述的各实施方式中,例举了由运算处理部23算出各区段的散列值并由表生成部24将散列值记录到控制表5中的例子,但本发明不限于此。运算处理部23也可以对一部分区段不计算散列值。例如,当在对安装包2执行隐藏处理之后需要变更程序或数据的一部分或数值时,对于包含需要进行这种变更的信息片断的区段,不计算和记录散列值。从而,这种信息片断的变更变得非常容易。即,在进行了信息片断的变更之后,不需要重新计算和记录该区段的散列值。
本发明可以在不脱离能够从权利要求书以及说明书全体理解到的发明的要旨或思想的范围内进行适当的变更,进行了这种变更的信息隐藏方法以及信息隐藏装置也将被包含在本发明的技术思想中。
Claims (10)
1.一种信息隐藏方法,包括:
按照预定的规则将信息分割成应加密的加密区段和不应加密的非加密区段的分割工序;
对所述加密区段进行加密的加密工序;
生成控制表的控制表生成工序,所述控制表示出所述信息上的所述加密区段的位置或所述非加密区段的位置;以及
将所述加密区段被加密了的所述信息与所述控制表结合起来或关联起来的编辑工序。
2.如权利要求1所述的信息隐藏方法,其中,
在所述分割工序中,所述预定的规则是:将所述信息中的包含预定的位模式或预定的文本模式的部分作为加密区段。
3.如权利要求1所述的信息隐藏方法,其中,
在所述分割工序中,所述预定的规则是:将所述信息中的包含API调用指令的部分作为加密区段。
4.如权利要求1所述的信息隐藏方法,其中,
在所述分割工序中,所述预定的规则是:将所述信息分割成固定长度的多个区段,从这些多个区段中选择若干区段,并将这些选出的区段作为加密区段。
5.如权利要求1所述的信息隐藏方法,其中,
在所述分割工序中,所述预定的规则是:将所述信息分割成分别具有随机长度的多个区段,从这些多个区段中选择若干区段,并将这些选出的区段作为加密区段。
6.如权利要求1所述的信息隐藏方法,其中,
包括计算所述加密区段的散列值或所述非加密区段的散列值的散列值计算工序,
在所述控制表生成工序中,将在所述散列值计算工序中算出的散列值记录到所述控制表中。
7.如权利要求6所述的信息隐藏方法,其中,
在所述散列值计算工序中至少计算一部分的区段的散列值。
8.如权利要求1所述的信息隐藏方法,其中,
当所述信息中包含多个程序时,在所述分割工序中以使多个程序和多个区段一一对应地进行分割。
9.如权利要求1所述的信息隐藏方法,其中,
在所述控制表生成工序中,至少将每个区段的起始地址、长度以及表示有无加密的值记录到所述控制表中。
10.一种信息隐藏装置,包括:
按照预定的规则将信息分割成应加密的加密区段和不应加密的非加密区段的分割单元;
对所述加密区段进行加密的加密单元;
生成控制表的控制表生成单元,所述控制表示出所述信息上的所述加密区段的位置或所述非加密区段的位置;以及
将所述加密区段被加密了的所述信息与所述控制表结合起来或关联起来的编辑单元。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008154896 | 2008-06-13 | ||
JP2008154896A JP5337411B2 (ja) | 2008-06-13 | 2008-06-13 | 情報秘匿化方法および情報秘匿化装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101604369A true CN101604369A (zh) | 2009-12-16 |
Family
ID=41414804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2009101437096A Pending CN101604369A (zh) | 2008-06-13 | 2009-05-22 | 信息隐藏方法以及信息隐藏装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20090310776A1 (zh) |
JP (1) | JP5337411B2 (zh) |
CN (1) | CN101604369A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102236757A (zh) * | 2011-06-30 | 2011-11-09 | 北京邮电大学 | 一种适用于Android***的软件保护方法及*** |
CN102779043A (zh) * | 2012-06-29 | 2012-11-14 | 吴东辉 | 一种软件连接的方法及工具软件 |
CN103457727A (zh) * | 2012-05-29 | 2013-12-18 | 华为技术有限公司 | 一种实现媒体数据处理的方法、装置和*** |
CN107852471A (zh) * | 2015-04-16 | 2018-03-27 | 普里露尼库斯股份有限公司 | 固体摄像装置、固体摄像装置的驱动方法以及电子设备 |
CN108664803A (zh) * | 2018-04-04 | 2018-10-16 | 中国电子科技集团公司第三十研究所 | 一种基于密码的文档内容细粒度访问控制*** |
CN109416894A (zh) * | 2016-07-06 | 2019-03-01 | 日本电信电话株式会社 | 秘密计算***、秘密计算装置、秘密计算方法以及程序 |
CN116166702A (zh) * | 2023-04-20 | 2023-05-26 | 联一信息技术(北京)有限公司 | 一种支付管理***的数据存储方法 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2519909A4 (en) * | 2009-12-31 | 2017-06-28 | Nokia Technologies Oy | Method and apparatus for a content protection |
US8694981B2 (en) * | 2010-11-17 | 2014-04-08 | Apple Inc. | Shared resource dependencies |
US9792451B2 (en) * | 2011-12-09 | 2017-10-17 | Echarge2 Corporation | System and methods for using cipher objects to protect data |
CN104205089B (zh) * | 2012-02-29 | 2018-10-16 | 全球文档***控股有限责任公司 | 流识别和过滤 |
CN108829406B (zh) * | 2018-06-13 | 2022-10-14 | 珠海豹趣科技有限公司 | 安装包打包方法、装置、电子设备及存储介质 |
US11411731B2 (en) * | 2019-09-03 | 2022-08-09 | Fujitsu Limited | Secure API flow |
CN116095186B (zh) * | 2023-04-11 | 2023-06-20 | 中勍科技股份有限公司 | 一种基于aes128的数据加解密方法 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08202889A (ja) * | 1995-01-27 | 1996-08-09 | Iyo Eng:Kk | 画像データの分割管理方法及び装置 |
JP2000132543A (ja) * | 1998-10-27 | 2000-05-12 | Ntt Data Corp | 文書処理システム、方法及び記録媒体 |
US6920567B1 (en) * | 1999-04-07 | 2005-07-19 | Viatech Technologies Inc. | System and embedded license control mechanism for the creation and distribution of digital content files and enforcement of licensed use of the digital content files |
US20050246549A1 (en) * | 1999-06-09 | 2005-11-03 | Andres Torrubia-Saez | Methods and apparatus for secure distribution of software |
US7287166B1 (en) * | 1999-09-03 | 2007-10-23 | Purdue Research Foundation | Guards for application in software tamperproofing |
JP2001103047A (ja) * | 1999-09-30 | 2001-04-13 | Pfu Ltd | コンテンツ配布装置および記録媒体 |
US20020133597A1 (en) * | 2001-03-14 | 2002-09-19 | Nikhil Jhingan | Global storage system |
JP4047573B2 (ja) * | 2001-11-06 | 2008-02-13 | 東芝ソリューション株式会社 | 電子情報管理装置及びプログラム |
EP1359758A1 (en) * | 2002-04-12 | 2003-11-05 | Hewlett Packard Company, a Delaware Corporation | Efficient encryption of image data |
US7320069B1 (en) * | 2003-02-14 | 2008-01-15 | Novell, Inc. | Selective encryption of media data |
JP2004287566A (ja) * | 2003-03-19 | 2004-10-14 | Fuji Xerox Co Ltd | コンテンツ部分秘匿化装置及びこれを利用したコンテンツ流通システム |
JP2004318927A (ja) * | 2003-04-11 | 2004-11-11 | Sony Corp | デジタルデータの保存方法および記録媒体 |
JP4676136B2 (ja) * | 2003-05-19 | 2011-04-27 | 株式会社日立製作所 | 文書構造検査方法および装置 |
JP2005202520A (ja) * | 2004-01-13 | 2005-07-28 | Sanyo Electric Co Ltd | 診療支援装置 |
JP4294514B2 (ja) * | 2004-03-05 | 2009-07-15 | シャープ株式会社 | 半導体装置および電子装置 |
US8077980B2 (en) * | 2004-05-18 | 2011-12-13 | Panasonic Corporation | Image processing apparatus |
US7802110B2 (en) * | 2004-08-25 | 2010-09-21 | Microsoft Corporation | System and method for secure execution of program code |
JP4899476B2 (ja) * | 2005-12-28 | 2012-03-21 | 富士通株式会社 | 分割プログラム、連結プログラム、情報処理方法 |
JP2007272540A (ja) * | 2006-03-31 | 2007-10-18 | Pfu Ltd | データ配信方法及びデータ配信システム |
JP2007281571A (ja) * | 2006-04-03 | 2007-10-25 | Fuji Xerox Co Ltd | 画像処理装置及びそのプログラム |
US20080052261A1 (en) * | 2006-06-22 | 2008-02-28 | Moshe Valenci | Method for block level file joining and splitting for efficient multimedia data processing |
US20080148061A1 (en) * | 2006-12-19 | 2008-06-19 | Hongxia Jin | Method for effective tamper resistance |
-
2008
- 2008-06-13 JP JP2008154896A patent/JP5337411B2/ja not_active Expired - Fee Related
-
2009
- 2009-03-04 US US12/397,838 patent/US20090310776A1/en not_active Abandoned
- 2009-05-22 CN CNA2009101437096A patent/CN101604369A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102236757A (zh) * | 2011-06-30 | 2011-11-09 | 北京邮电大学 | 一种适用于Android***的软件保护方法及*** |
CN103457727A (zh) * | 2012-05-29 | 2013-12-18 | 华为技术有限公司 | 一种实现媒体数据处理的方法、装置和*** |
CN102779043A (zh) * | 2012-06-29 | 2012-11-14 | 吴东辉 | 一种软件连接的方法及工具软件 |
CN102779043B (zh) * | 2012-06-29 | 2018-09-21 | 吴东辉 | 一种软件连接的方法及工具软件 |
CN107852471A (zh) * | 2015-04-16 | 2018-03-27 | 普里露尼库斯股份有限公司 | 固体摄像装置、固体摄像装置的驱动方法以及电子设备 |
CN107852471B (zh) * | 2015-04-16 | 2020-09-18 | 普里露尼库斯股份有限公司 | 固体摄像装置、固体摄像装置的驱动方法以及电子设备 |
CN109416894A (zh) * | 2016-07-06 | 2019-03-01 | 日本电信电话株式会社 | 秘密计算***、秘密计算装置、秘密计算方法以及程序 |
CN108664803A (zh) * | 2018-04-04 | 2018-10-16 | 中国电子科技集团公司第三十研究所 | 一种基于密码的文档内容细粒度访问控制*** |
CN116166702A (zh) * | 2023-04-20 | 2023-05-26 | 联一信息技术(北京)有限公司 | 一种支付管理***的数据存储方法 |
Also Published As
Publication number | Publication date |
---|---|
US20090310776A1 (en) | 2009-12-17 |
JP5337411B2 (ja) | 2013-11-06 |
JP2009302887A (ja) | 2009-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101604369A (zh) | 信息隐藏方法以及信息隐藏装置 | |
CN101491000B (zh) | 用于混淆密码函数的方法和*** | |
JP4840782B2 (ja) | プログラム変換装置、セキュア処理装置、コンピュータプログラム及び記録媒体 | |
US20040177257A1 (en) | Data processing device and data processing method | |
WO2006085595A1 (ja) | プログラム変換装置及びプログラム実行装置 | |
WO2005052841A3 (en) | Tamper-resistant trusted virtual machine | |
JPWO2010055658A1 (ja) | コンテンツ復号処理装置、コンテンツ復号処理方法及び集積回路 | |
CN101819618A (zh) | 文件保密方法 | |
CN110929291A (zh) | 一种存取文本文件的方法、装置和计算机可读存储介质 | |
EP1811424A1 (en) | Confidential information processing method, confidential information processing device, and content data reproducing device | |
US8694798B2 (en) | Generating and securing multiple archive keys | |
JPWO2003013054A1 (ja) | 処理に伴い暗号データの改ざん検出用データを生成する装置及び方法 | |
RU2370897C2 (ru) | Система блочной криптографической защиты, использующая преобразования для сокрытия основной функции криптографической защиты каждого цикла шифрования | |
RU2001128432A (ru) | Устройство для обработки данных и способ обработки данных | |
JPWO2007145220A1 (ja) | 書き換え可能な回路を備える装置、更新システム、更新方法、更新プログラム、及び集積回路 | |
JP2004070049A (ja) | データの暗号化方法及び装置、データの復号化方法及び装置、プログラム | |
CN1637851B (zh) | 在加载的复合内容中选择性解密可用内容的音乐装置 | |
JP5113630B2 (ja) | 秘密分散方法、プログラム、及び装置 | |
KR101440680B1 (ko) | 중국인 나머지 정리에 기반한 준동형 암복호화 방법 및 이를 이용한 장치 | |
KR101276217B1 (ko) | 암호화 하드디스크에 대한 데이터 복원 시스템 및 복원 방법 | |
CN109558341A (zh) | 计算机内存数据保护方法和计算机 | |
JP4733793B2 (ja) | 暗号化・復号化システム、暗号化装置、復号化装置、暗号化方法、復号化方法、およびプログラム | |
US20100111293A1 (en) | Encrypted file with hidden contents | |
JP2002290395A (ja) | 情報端末装置 | |
CN101057246B (zh) | 数据再现方法和数据处理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C53 | Correction of patent of invention or patent application | ||
CB02 | Change of applicant information |
Address after: Osaka Japan Applicant after: Kyocera Document Solutions Inc Address before: Osaka Japan Applicant before: KYOCERA Mita Corporation |
|
COR | Change of bibliographic data |
Free format text: CORRECT: APPLICANT; FROM: KYOCERA CORP TO: KYOCERA DOCUMENT SOLUTIONS INC. |
|
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20091216 |