一种类class文件加密解密方法和装置的制造方法_4

文档序号:9304741阅读:来源:国知局
普通解密规则对内存地址中指定长度的类class文件进行解密,获得普通解密类class文件。
[0137]在本发明的一种优选实施例中,所述密钥包括双向加密密钥,所述双向加密密钥可以具有对应的双向解密规则,所述解密模块703可以包括:
[0138]双向解密类class文件获得子模块,用于调用所述密钥数据库中的双向加密密钥及对应的双向解密规则对内存地址中指定长度的类class文件进行解密,获得双向解密类class文件。
[0139]执行模块704,用于执行所述解密类class文件。
[0140]在本发明的一种优选实施例中,所述装置还可以包括:
[0141]类class文件执行模块,用于在所述类class文件不存在密钥标识,则执行所述类class文件。
[0142]对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0143]本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0144]本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0145]本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0146]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0147]这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0148]尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
[0149]最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
[0150]以上对本发明所提供的一种类class文件加密的方法,一种类class文件解密的方法,一种类class文件加密的装置和一种类class文件解密的装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【主权项】
1.一种类class文件加密的方法,其特征在于,包括: 预置密钥数据库;所述密钥数据库中包括一个或多个密钥及对应的一个或多个加密规则; 调用所述密钥数据库中的密钥及对应的加密规则对类class文件进行加密,获得加密类class文件; 对所述加密类class文件添加所述密钥对应的密钥标识。2.根据权利要求1所述的方法,其特征在于,所述密钥包括普通加密密钥,所述普通加密密钥具有对应的普通加密规则,所述调用所述密钥数据库中的密钥及对应的加密规则对类class文件进行加密,获得加密类class文件的步骤为: 调用所述密钥数据库中的普通加密密钥及普通加密规则对类class文件进行加密获得普通加密类class文件。3.根据权利要求1或2所述的方法,其特征在于,所述双向加密密钥具有对应的双向加密规则,所述密钥包括双向加密密钥,所述调用所述密钥数据库中的密钥及对应的加密规则对类class文件进行加密,获得加密类class文件的步骤为: 调用所述密钥数据库中的双向加密密钥及双向加密规则对类class文件进行加密获得双向加密类class文件。4.一种类class文件解密的方法,其特征在于,包括: 当类class文件启动时,将所述类class文件及预置的密钥数据库加载到内存中; 判断所述类class文件是否存在密钥标识; 若所述类class文件存在密钥标识,则在所述密钥数据库调用所述密钥标识对应的密钥及解密规则,采用所述密钥及解密规则对所述类class文件进行解密获得解密类class文件; 执行所述解密类class文件。5.根据权利要求4所述的方法,其特征在于,所述判断所述类class文件是否存在密钥标识的步骤之后,还包括: 若所述类class文件不存在密钥标识,则执行所述类class文件。6.根据权利要求4或5所述的方法,其特征在于,还包括: 若所述类class文件及预置的密钥数据库加载到Java虚拟机中,则调用所述Java虚拟机的cbClassFileLoadHook回调函数获得类class文件的内存地址; 若所述类class文件及预置的密钥数据库加载到Tomcat或Javassist中,则采用所述Tomcat或Javassist的JNI接口获得类class文件的内存地址。7.根据权利要求5所述的方法,其特征在于,所述密钥数据库中包括密钥,所述密钥包括普通加密密钥,所述普通加密密钥具有对应的普通解密规则,所述在密钥数据库调用所述密钥标识对应的密钥对所述类class文件进行解密获得解密类class文件的步骤包括: 调用所述密钥数据库中的普通加密密钥及对应的普通解密规则对内存地址中指定长度的类class文件进行解密,获得普通解密类class文件。8.根据权利要求7所述的方法,其特征在于,所述密钥包括双向加密密钥,所述双向加密密钥具有对应的双向解密规则,所述在密钥数据库调用所述密钥标识对应的密钥对所述类class文件进行解密获得解密类class文件的步骤包括: 调用所述密钥数据库中的双向加密密钥及对应的双向解密规则对内存地址中指定长度的类class文件进行解密,获得双向解密类class文件。9.一种类class文件加密的装置,其特征在于,包括: 预置模块,用于预置密钥数据库;所述密钥数据库中包括一个或多个密钥及对应的一个或多个加密规则; 调用模块,用于调用所述密钥数据库中的密钥及对应的加密规则对类class文件进行加密,获得加密类class文件; 添加模块,用于对所述加密类class文件添加所述密钥对应的密钥标识。10.一种类class文件解密的装置,其特征在于,包括: 加载模块,用于当类class文件启动时,将所述类class文件及预置的密钥数据库加载到内存中; 判断模块,用于判断所述类class文件是否存在密钥标识;若所述类class文件存在密钥标识,则调用解密模块; 解密模块,用于在所述密钥数据库调用所述密钥标识对应的密钥及解密规则,采用所述密钥及解密规则对所述类class文件进行解密获得解密类class文件; 执行模块,用于执行所述解密类class文件。
【专利摘要】本发明实施例提供了一种类class文件加密及解密的方法及装置,其中,所述方法包括:预置密钥数据库;所述密钥数据库中包括一个或多个密钥及对应的一个或多个加密规则;调用所述密钥数据库中的密钥及对应的加密规则对类class文件进行加密,获得加密类class文件;对所述加密类class文件添加所述密钥对应的密钥标识。本发明实施例用以预置密钥数据库作为代理(JVMTI?Agent),能够在多种场景下调用密钥数据库来对类class文件进行加密及解密操作,并且在Java虚拟机、Tomcat容器、Javassist框架等多种场景下也能得到很好的应用支撑。
【IPC分类】G06F21/62, G06F21/12
【公开号】CN105022936
【申请号】CN201410183212
【发明人】洪晓健, 谢伟亮, 付用军, 冯翔
【申请人】北京畅游天下网络技术有限公司
【公开日】2015年11月4日
【申请日】2014年4月30日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1