CN109460674A - 一种java应用程序保护方法 - Google Patents

一种java应用程序保护方法 Download PDF

Info

Publication number
CN109460674A
CN109460674A CN201811237855.0A CN201811237855A CN109460674A CN 109460674 A CN109460674 A CN 109460674A CN 201811237855 A CN201811237855 A CN 201811237855A CN 109460674 A CN109460674 A CN 109460674A
Authority
CN
China
Prior art keywords
application program
encryption
authorization message
authority
decryption
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
Application number
CN201811237855.0A
Other languages
English (en)
Inventor
张曙华
黄海清
杨安荣
王四云
王国栋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHANGHAI ZHONGXIN INFORMATION DEVELOPMENT Co Ltd
Original Assignee
SHANGHAI ZHONGXIN INFORMATION DEVELOPMENT Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SHANGHAI ZHONGXIN INFORMATION DEVELOPMENT Co Ltd filed Critical SHANGHAI ZHONGXIN INFORMATION DEVELOPMENT Co Ltd
Priority to CN201811237855.0A priority Critical patent/CN109460674A/zh
Publication of CN109460674A publication Critical patent/CN109460674A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本公开提供一种JAVA应用程序保护方法,涉及信息安全技术领域。JAVA应用程序保护方法,应用于与用户端通信连接的服务端,所述方法包括:基于第一身份信息对存储的目标应用程序进行授权处理,生成授权信息;对所述授权信息进行加密处理,生成密文授权文件;采用第一算法对所述授权信息进行运算,生成加密密钥;调用加解密链接库,基于所述加密密钥对所述目标应用程序进行加密处理,生成加密应用程序;将所述密文授权文件、所述加解密链接库、所述加密应用程序和所述服务端中的自定义类加载器发送到所述用户端,所述自定义类加载器支持所述用户端对所述目标应用程序的加载。以提高JAVA应用程序的安全性。

Description

一种JAVA应用程序保护方法
技术领域
本公开涉及信息安全技术领域,具体而言,涉及一种JAVA应用程序保护方法。
背景技术
信息作为一种资源,它的普遍性、共享性、增值性、可处理性和多效用性,使其对于人类具有特别重要的意义。信息安全的实质就是要保护信息系统或信息网络中的信息资源免受各种类型的威胁、干扰和破坏。随着信息技术的不断发展,信息安全问题也日显突出。因此,保证信息的安全性十分重要。
发明内容
有鉴于此,本公开提供了一种JAVA应用程序保护方法。
第一方面,本公开提供了一种JAVA应用程序保护方法,应用于与用户端通信连接的服务端,所述方法包括:
基于第一身份信息对存储的目标应用程序进行授权处理,生成授权信息。
对所述授权信息进行加密处理,生成密文授权文件。
采用第一算法对所述授权信息进行运算,生成加密密钥。
调用加解密链接库,基于所述加密密钥对所述目标应用程序进行加密处理,生成加密应用程序。
将所述密文授权文件、所述加解密链接库、所述加密应用程序和所述服务端中的自定义类加载器发送到所述用户端,所述自定义类加载器支持所述用户端对所述目标应用程序的加载。
可选地,对所述授权信息进行加密处理,生成密文授权文件的步骤,包括:
将所述授权信息的ASCII码左移并与设定的扩展密钥取异或,生成第一字节码,根据所述第一字节码生成密文授权文件。
其中,将所述授权信息的ASCII码左移并与设定的扩展密钥取异或的步骤重复N次,N为大于1的整数。
可选地,采用第一算法对所述授权信息进行运算,生成加密密钥的步骤,包括:采用所述第一算法对所述授权信息进行运算,获取所述授权信息的数字摘要信息,根据所述数字摘要信息生成加密密钥。
可选地,调用加解密链接库,基于所述加密密钥对所述目标应用程序进行加密处理,生成加密应用程序的步骤,包括:
调用加解密链接库,基于所述加密密钥对所述目标应用程序的字节码文进行对称加密处理,以生成类文件。
将所述类文件的第一后缀名更改为第二后缀名以生成第二文件,根据所述第二文件生成加密应用程序。
第二方面,本公开还提供了另一种JAVA应用程序保护方法,应用于与用户端通信连接的服务端,所述方法包括:
接收所述服务端发送的密文授权文件、加解密链接库、加密应用程序和自定义加载器。
对所述密文授权文件进行解密处理,获取授权信息。
采用第一算法对所述授权信息进行运算,生成解密密钥。
获取所述用户端的第二身份信息,对所述授权信息进行解析,根据所述第二身份信息和解析后的所述授权信息进行授权验证。
当授权验证结果为验证通过时,运行所述用户端本地的父类加载器,所述父类加载器调用所述加解密链接库,基于所述解密密钥对所述加密应用程序进行解密处理,获取并加载目标应用程序。
可选地,将所述密文授权文件进行解析,获取第一字节码,将所述第一字节码的ASCII码与设定的扩展密钥取异或并右移,得到授权信息。
其中,将所述第一字节码的ASCII码与设定的扩展密钥取异或并右移的步骤重复N次,N为大于1的整数。
可选地,采用第一算法对所述授权信息进行运算,生成解密密钥的步骤,包括:所述第一算法对所述授权信息进行运算,获取所述授权信息的数字摘要信息,根据所述数字摘要信息生成所述解密密钥。
可选地,获取所述用户端的第二身份信息,对所述授权信息进行解析,根据所述第二身份信息和解析后的所述授权信息进行授权验证的步骤,包括:
对所述授权信息进行解析,获取第一身份信息。
判断所述第一身份信息和所述第二身份信息是否一致,若所述第一身份信息和所述第二身份信息一致,则验证通过,若所述第一身份信息和所述第二身份信息不一致,则验证不通过。
可选地,基于所述解密密钥对所述加密应用程序进行解密处理,获取目标应用程序的步骤,包括:
对所述加密应用程序进行解析,获取第二文件。
将所述第二文件的第二后缀名更改为第一后缀名以生成类文件。
所述加解密链接库基于所述解密密钥对所述类文件进行解密处理,获取并加载目标应用程序。
优选地,在获取并加载目标应用程序之后,所述方法还包括:
判断所述目标应用程序的加载是否成功,若所述目标应用程序的加载不成功,则运行所述自定义加载器,所述自定义加载器对所述目标应用程序进行加载。
将用于生成所述授权信息的解密处理中的运算逻辑、所述授权验证中的运算逻辑和所述第一算法进行封装处理。
本公开提供的JAVA应用程序保护方法,通过对授权信息进行运算,生成加密密钥,基于加密密钥对目标应用程序进行加密处理,生成加密应用程序,建立授权处理和目标应用程序的关联,提高目标应用程序的安全性。此外,服务端还将服务端中的自定义类加载器发送到用户端,自定义加载器支持用户端对目标应用程序的加载,从而避免了用户端因本地的父类加载器无法加载目标应用程序的问题。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举实施例,并配合附图,作详细说明如下。
附图说明
为了更清楚地说明本公开的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本公开提供的一种应用场景示意图。
图2为本公开提供的一种JAVA应用程序保护方法的流程图。
图3为本公开提供的另一种JAVA应用程序保护方法的流程图。
图4为本公开提供的又一种JAVA应用程序保护方法的流程图。
图5为本公开提供的再一种JAVA应用程序保护方法的流程图。
标号:100-服务端;110-应用程序;200-用户端。
具体实施方式
JAVA是一种跨平台的、解释型语言,存在很容易被反编译的特点,使得JAVA程序中的代码能够被改写或在未经授权的情况下重复使用,因此,对JAVA程序中的代码的保护十分必要。
经发明人研究发现,部分保护方法通过代码混淆技术对JAVA应用程序的代码进行混淆,将代码中的各种元素如变量、函数、类的名字改写成无意义的名字。例如将代码中的各种元素如变量、函数、类的名字改写成单个字母,或是简短的无意义字母组合,使得阅读的人无法根据名字猜测其用途,这种保护方法增加了调试的难度。
以上现有技术中的方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本申请实施例针对上述问题所提出的解决方案,都应该是发明人在本申请过程中对本申请做出的贡献。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
下面将结合本公开中附图,对本公开中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
请结合参阅图1,图1为本公开提供的应用场景示意图。服务端100对应用程序110进行授权处理和加密处理,以使所述用户端200在经过授权验证后对加密后的应用程序110进行解密和运行。本实施例中,服务端100可以是,但不限于,web(网站)服务器、ftp(filetransfer protocol,文件传输协议)服务器等。用户端200可以是,但不限于,个人电脑(personal computer,PC)、平板电脑、移动上网设备(mobile Internet device,MID)等。
上述服务端100可以包括处理器和存储器。处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本公开实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。存储器可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
请结合参阅图2,为本公开实施例提供的一种JAVA应用程序保护方法的流程图。应当说明的是,本公开实施例提供的身份认证方法不以图1及以下所述的具体顺序为限制。
所述方法应用于与用户端200通信连接的服务端100,所述方法包括步骤S11-步骤S15,所述方法的具体流程如下:
步骤S11,基于第一身份信息对存储的目标应用程序进行授权处理,生成授权信息。
进一步地,所述第一身份信息为用户在进行注册时提交的信息,包括但不限于授权方式、授权日期和用户端200的硬件地址(MAC地址)。
步骤S12,对所述授权信息进行加密处理,生成密文授权文件。
作为一种实施方式,所述步骤S12可通过如下方式实现:
将所述授权信息的ASCII码左移并与设定的扩展密钥取异或,生成第一字节码,根据所述第一字节码生成密文授权文件。
其中,将所述授权信息的ASCII码左移并与设定的扩展密钥取异或的步骤重复N次,N为大于1的整数。
进一步地,所述N的取值由系统开发者设定。
步骤S13,采用第一算法对所述授权信息进行运算,生成加密密钥。
作为一种实施方式,所述步骤S13可通过如下方式实现:
采用所述第一算法对所述授权信息进行运算,获取所述授权信息的数字摘要信息,根据所述数字摘要信息生成加密密钥。
其中,所述第一算法对不同授权信息进行运算所获取的数字摘要信息具有唯一性。
可选地,所述第一算法可以选用但不限于MD5(Message-Digest Algorithm 5,信息摘要算法第5版)。
步骤S14,调用加解密链接库,基于所述加密密钥对所述目标应用程序进行加密处理,生成加密应用程序。
可选地,采用高级加密标准(Advanced Encryption Standard,AES),基于所述加密密钥对所述目标应用程序进行加密处理。
进一步地,服务端100将用于对所述目标应用程序进行加密处理中用到的运算逻辑,采用底层编程语言进行封装处理,以得到所述加解密链接库。
作为一种实施方式,所述步骤S14可通过如下方式实现:
调用加解密链接库,基于所述加密密钥对所述目标应用程序的字节码文进行对称加密处理,以生成类文件。
将所述类文件的第一后缀名更改为第二后缀名以生成第二文件,根据所述第二文件生成加密应用程序。
可选地,所述第一后缀名可以为“class”,所述第二后缀名由开发者设定。
步骤S15,将所述密文授权文件、所述加解密链接库、所述加密应用程序和所述服务端100中的自定义类加载器发送到所述用户端200。
进一步地,所述自定义类加载器支持所述用户端200对所述目标应用程序的加载。
请结合参阅图3,为本公开实施例提供的另一种JAVA应用程序保护方法的流程图。应当说明的是,本公开实施例提供的身份认证方法不以图2及以下所述的具体顺序为限制。
所述方法应用于与服务端100通信连接的用户端200,所述方法包括步骤S21-步骤S26,所述方法的具体流程如下:
步骤S21,接收所述服务端100发送的密文授权文件、加解密链接库、加密应用程序和自定义加载器。
步骤S22,对所述密文授权文件进行解密处理,获取授权信息。
作为一种实施方式,所述步骤S22可通过如下方式实现:
将所述密文授权文件进行解析,获取第一字节码,将所述第一字节码的ASCII码与设定的扩展密钥取异或并右移,得到授权信息。
其中,将所述第一字节码的ASCII码与设定的扩展密钥取异或并右移的步骤重复N次,N为大于1的整数。
步骤S23,采用第一算法对所述授权信息进行运算,生成解密密钥。
作为一种实施方式,所述步骤S23可通过如下方式实现:
采用所述第一算法对所述授权信息进行运算,获取所述授权信息的数字摘要信息,根据所述数字摘要信息生成加密密钥。
步骤S24,获取所述用户端200的第二身份信息,对所述授权信息进行解析,根据所述第二身份信息和解析后的所述授权信息进行授权验证。
进一步地,所述第二身份信息与上述第一身份信息对应,所述第二身份信息获取于正在运行的用户端200。
作为一种实施方式,所述步骤S24可通过如下方式实现:
对所述授权信息进行解析,获取第一身份信息。
判断所述第一身份信息和所述第二身份信息是否一致,若所述第一身份信息和所述第二身份信息一致,则验证通过,若所述第一身份信息和所述第二身份信息不一致,则验证不通过。
步骤S25,判断是否通过授权验证,若授权验证结果为验证不通过,则结束操作,若授权验证结果为验证通过,则执行步骤S26。
步骤S26,运行所述用户端200本地的父类加载器,所述父类加载器调用所述加解密链接库,基于所述解密密钥对所述加密应用程序进行解密处理,获取并加载目标应用程序。
进一步地,基于所述解密密钥对所述加密应用程序进行解密处理所用的算法于上述对所述目标应用程序进行加密处理所用的算法为对称算法。
请结合参阅图4,作为一种实施方式,所述步骤S26包括步骤S261-步骤S263。
步骤S261,对所述加密应用程序进行解析,获取第二文件。
步骤S262,将所述第二文件的第二后缀名更改为第一后缀名以生成类文件。
步骤S263,所述加解密链接库基于所述解密密钥对所述类文件进行解密处理,获取并加载目标应用程序。
请结合参阅图5,可选地,在获取并加载目标应用程序之后,所述方法还包括步骤S27-步骤S29。
步骤S27,判断所述目标应用程序的加载是否成功,若所述目标应用程序的加载成功,则执行步骤S271。若所述目标应用程序的加载不成功,则执行步骤S28。
步骤S271,结束流程。
步骤S28,运行所述自定义加载器,所述自定义加载器对所述目标应用程序进行加载。
步骤S29,将用于生成所述授权信息的解密处理中的运算逻辑、所述授权验证中的运算逻辑和所述第一算法进行封装处理。
由所述用户端200将用于生成所述授权信息的解密处理中的运算逻辑、所述授权验证中的运算逻辑和所述第一算法进行封装处理,能够保证解密操作不被非法获取,从而所述提高种JAVA应用程序保护方法的安全性。
应当理解,上述用户端200至少有一个。
综上所述,本公开提供的JAVA应用程序保护方法,通过对所述授权信息进行运算,生成加密密钥,基于所述加密密钥对所述目标应用程序进行加密处理,生成加密应用程序,建立授权处理和目标应用程序的关联,从而,用户端200在进行解密处理之前需要进行授权验证,当通过授权验证时才能解密加密应用程序,进而提高了目标应用程序的安全性,保护了目标应用程序中代码的知识产权。
可以替换的,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其它可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的电子设备、服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,术语“包括”或者其任何其它变体意在涵盖非排它性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对于本领域技术人员而言,显然本公开不限于上述示范性实施例的细节,而且在不背离本公开的精神或基本特征的情况下,能够以其它的具体形式实现本公开。

Claims (10)

1.一种JAVA应用程序保护方法,应用于与用户端通信连接的服务端,其特征在于,所述方法包括:
基于第一身份信息对存储的目标应用程序进行授权处理,生成授权信息;
对所述授权信息进行加密处理,生成密文授权文件;
采用第一算法对所述授权信息进行运算,生成加密密钥;
调用加解密链接库,基于所述加密密钥对所述目标应用程序进行加密处理,生成加密应用程序;
将所述密文授权文件、所述加解密链接库、所述加密应用程序和所述服务端中的自定义类加载器发送到所述用户端,所述自定义类加载器支持所述用户端对所述目标应用程序的加载。
2.根据权利要求1所述JAVA应用程序保护方法,其特征在于,对所述授权信息进行加密处理,生成密文授权文件的步骤,包括:
将所述授权信息的ASCII码左移并与设定的扩展密钥取异或,生成第一字节码,根据所述第一字节码生成密文授权文件;
其中,将所述授权信息的ASCII码左移并与设定的扩展密钥取异或的步骤重复N次,N为大于1的整数。
3.根据权利要求1所述JAVA应用程序保护方法,其特征在于,采用第一算法对所述授权信息进行运算,生成加密密钥的步骤,包括:
采用所述第一算法对所述授权信息进行运算,获取所述授权信息的数字摘要信息,根据所述数字摘要信息生成加密密钥。
4.根据权利要求1所述JAVA应用程序保护方法,其特征在于,调用加解密链接库,基于所述加密密钥对所述目标应用程序进行加密处理,生成加密应用程序的步骤,包括:
调用加解密链接库,基于所述加密密钥对所述目标应用程序的字节码文进行对称加密处理,以生成类文件;
将所述类文件的第一后缀名更改为第二后缀名以生成第二文件,根据所述第二文件生成加密应用程序。
5.一种JAVA应用程序保护方法,应用于与服务端通信连接的用户端,其特征在于,所述方法包括:
接收所述服务端发送的密文授权文件、加解密链接库、加密应用程序和自定义加载器;
对所述密文授权文件进行解密处理,获取授权信息;
采用第一算法对所述授权信息进行运算,生成解密密钥;
获取所述用户端的第二身份信息,对所述授权信息进行解析,根据所述第二身份信息和解析后的所述授权信息进行授权验证;
当授权验证结果为验证通过时,运行所述用户端本地的父类加载器,所述父类加载器调用所述加解密链接库,基于所述解密密钥对所述加密应用程序进行解密处理,获取并加载目标应用程序。
6.根据权利要求5所述JAVA应用程序保护方法,其特征在于,对所述密文授权文件进行解密处理,获取授权信息的步骤,包括:
将所述密文授权文件进行解析,获取第一字节码,将所述第一字节码的ASCII码与设定的扩展密钥取异或并右移,得到授权信息;
其中,将所述第一字节码的ASCII码与设定的扩展密钥取异或并右移的步骤重复N次,N为大于1的整数。
7.根据权利要求5所述JAVA应用程序保护方法,其特征在于,采用第一算法对所述授权信息进行运算,生成解密密钥的步骤,包括:
采用所述第一算法对所述授权信息进行运算,获取所述授权信息的数字摘要信息,根据所述数字摘要信息生成所述解密密钥。
8.根据权利要求5所述JAVA应用程序保护方法,其特征在于,获取所述用户端的第二身份信息,对所述授权信息进行解析,根据所述第二身份信息和解析后的所述授权信息进行授权验证的步骤,包括:
对所述授权信息进行解析,获取第一身份信息;
判断所述第一身份信息和所述第二身份信息是否一致,若所述第一身份信息和所述第二身份信息一致,则验证通过,若所述第一身份信息和所述第二身份信息不一致,则验证不通过。
9.根据权利要求5所述JAVA应用程序保护方法,其特征在于,基于所述解密密钥对所述加密应用程序进行解密处理,获取目标应用程序的步骤,包括:
对所述加密应用程序进行解析,获取第二文件;
将所述第二文件的第二后缀名更改为第一后缀名以生成类文件;
所述加解密链接库基于所述解密密钥对所述类文件进行解密处理,获取并加载目标应用程序。
10.根据权利要求5所述一种JAVA应用程序保护方法,其特征在于,在获取并加载目标应用程序之后,所述方法还包括:
判断所述目标应用程序的加载是否成功,若所述目标应用程序的加载不成功,则运行所述自定义加载器,所述自定义加载器对所述目标应用程序进行加载;
将用于生成所述授权信息的解密处理中的运算逻辑、所述授权验证中的运算逻辑和所述第一算法进行封装处理。
CN201811237855.0A 2018-10-23 2018-10-23 一种java应用程序保护方法 Pending CN109460674A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811237855.0A CN109460674A (zh) 2018-10-23 2018-10-23 一种java应用程序保护方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811237855.0A CN109460674A (zh) 2018-10-23 2018-10-23 一种java应用程序保护方法

Publications (1)

Publication Number Publication Date
CN109460674A true CN109460674A (zh) 2019-03-12

Family

ID=65608213

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811237855.0A Pending CN109460674A (zh) 2018-10-23 2018-10-23 一种java应用程序保护方法

Country Status (1)

Country Link
CN (1) CN109460674A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110866226A (zh) * 2019-11-15 2020-03-06 中博信息技术研究院有限公司 一种基于加密技术的java应用软件版权保护方法
CN112395559A (zh) * 2020-10-10 2021-02-23 武汉虹旭信息技术有限责任公司 一种软件授权管理系统及软件授权管理方法
CN112825095A (zh) * 2019-11-20 2021-05-21 北京京东尚科信息技术有限公司 用于保护应用中敏感信息的方法、装置、电子设备和介质
WO2021218331A1 (zh) * 2020-04-28 2021-11-04 深圳壹账通智能科技有限公司 离线软件授权方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030114144A1 (en) * 2001-11-26 2003-06-19 Atsushi Minemura Application authentication system
CN102236757A (zh) * 2011-06-30 2011-11-09 北京邮电大学 一种适用于Android系统的软件保护方法及系统
CN104993923A (zh) * 2015-07-02 2015-10-21 武汉大学 一种信息隐藏与加密技术相结合的雷达数据保护方法
CN106452732A (zh) * 2016-09-28 2017-02-22 广州凯耀资产管理有限公司 一种信息加密方法及其装置
CN107169324A (zh) * 2017-05-12 2017-09-15 北京理工大学 一种基于动态加解密的Android应用加固方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030114144A1 (en) * 2001-11-26 2003-06-19 Atsushi Minemura Application authentication system
CN102236757A (zh) * 2011-06-30 2011-11-09 北京邮电大学 一种适用于Android系统的软件保护方法及系统
CN104993923A (zh) * 2015-07-02 2015-10-21 武汉大学 一种信息隐藏与加密技术相结合的雷达数据保护方法
CN106452732A (zh) * 2016-09-28 2017-02-22 广州凯耀资产管理有限公司 一种信息加密方法及其装置
CN107169324A (zh) * 2017-05-12 2017-09-15 北京理工大学 一种基于动态加解密的Android应用加固方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110866226A (zh) * 2019-11-15 2020-03-06 中博信息技术研究院有限公司 一种基于加密技术的java应用软件版权保护方法
CN110866226B (zh) * 2019-11-15 2022-05-24 中博信息技术研究院有限公司 一种基于加密技术的java应用软件版权保护方法
CN112825095A (zh) * 2019-11-20 2021-05-21 北京京东尚科信息技术有限公司 用于保护应用中敏感信息的方法、装置、电子设备和介质
WO2021218331A1 (zh) * 2020-04-28 2021-11-04 深圳壹账通智能科技有限公司 离线软件授权方法、装置、设备及存储介质
CN112395559A (zh) * 2020-10-10 2021-02-23 武汉虹旭信息技术有限责任公司 一种软件授权管理系统及软件授权管理方法

Similar Documents

Publication Publication Date Title
TWI672648B (zh) 業務處理方法、裝置、資料共享系統及儲存介質
US10291631B2 (en) System for testing computer application
CN109460674A (zh) 一种java应用程序保护方法
CN111262889B (zh) 一种云服务的权限认证方法、装置、设备及介质
Pal et al. IoT technical challenges and solutions
CN113014539A (zh) 一种物联网设备安全保护系统及方法
CN108965222A (zh) 身份认证方法、系统及计算机可读存储介质
KR20140095523A (ko) 외부 코드에 대한 보안 메커니즘
Mulliner Security of smart phones
Jung et al. A secure platform model based on ARM platform security architecture for IoT devices
CN115580413B (zh) 一种零信任的多方数据融合计算方法和装置
Yankson et al. Security assessment for Zenbo robot using Drozer and mobSF frameworks
Halpin The W3C web cryptography API: motivation and overview
Vasileios Grammatopoulos et al. A web tool for analyzing FIDO2/WebAuthn Requests and Responses
Zhao et al. Security and privacy analysis of mhealth application: A case study
Tedeschi et al. Information security and threats in mobile appliances
Sombatruang et al. Internet Service Providers' and Individuals' Attitudes, Barriers, and Incentives to Secure {IoT}
JP2007058807A (ja) 認証システム及び方法
CN114124440B (zh) 安全传输方法、装置、计算机设备和存储介质
Byrne Full Stack Python Security: Cryptography, TLS, and Attack Resistance
CN112769565A (zh) 密码加密算法的升级方法、装置、计算设备和介质
Zhang et al. The Dark Forest: Understanding Security Risks of Cross-Party Delegated Resources in Mobile App-in-App Ecosystems
Shahshahani et al. Enabling Debug in IoT Wireless Development and Deployment with Security Considerations
Xi et al. Distributed secure service composition with declassification in mobile clouds
Lavanya et al. Secured Lightweight Encryption using Time-based Singular Value Decomposition (SVD) for Cyber-Physical Systems

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190312

RJ01 Rejection of invention patent application after publication