CN115964681A - Generation method of certificate file of target application program - Google Patents

Generation method of certificate file of target application program Download PDF

Info

Publication number
CN115964681A
CN115964681A CN202310253884.0A CN202310253884A CN115964681A CN 115964681 A CN115964681 A CN 115964681A CN 202310253884 A CN202310253884 A CN 202310253884A CN 115964681 A CN115964681 A CN 115964681A
Authority
CN
China
Prior art keywords
terminal
information
target application
application program
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
Application number
CN202310253884.0A
Other languages
Chinese (zh)
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.)
Beijing Iresearch Technology Co ltd
Original Assignee
Beijing Iresearch Technology 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 Beijing Iresearch Technology Co ltd filed Critical Beijing Iresearch Technology Co ltd
Priority to CN202310253884.0A priority Critical patent/CN115964681A/en
Publication of CN115964681A publication Critical patent/CN115964681A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

The embodiment of the application provides a method for generating a certificate file of a target application program, and relates to the technical field of safety. The method comprises the following steps: acquiring a machine code sent by a second terminal in response to the running operation aiming at the target application program; the machine code is obtained by encrypting the terminal information of the second terminal by the second terminal based on the public key in the preset key pair; the second terminal comprises a target installation package which lacks the core code of the target application program; decrypting the machine code based on a private key in a preset key pair to obtain terminal information; determining information to be verified, wherein the information to be verified comprises terminal information, and generating an initial file according to the information to be verified and a predetermined core code; encrypting the initial file based on a private key to obtain a certificate file; and sending the certificate file to the second terminal. The embodiment of the application realizes that the certificate file cannot be shielded, and can effectively prevent the target application program from being cracked.

Description

Generation method of certificate file of target application program
Technical Field
The present application relates to the field of security technologies, and in particular, to a method for generating a certificate file of a target application program, a method and an apparatus for operating the target application program, an electronic device, and a computer-readable storage medium.
Background
Software cracking refers to a process of achieving the purpose of using the software free of charge or breaking through the functional limitation of the software by modifying a memory, a program file or a write registry (keygen) program and randomly generating an effective serial number registration code after researching the activation mechanism of the software. License (software License) is a means for preventing software from being cracked, the core idea is to prevent software from being pirated, the software is protected from being cracked by a technical means mainly based on encryption, the License is obtained by encrypting authorization information of a terminal running the software through a private key in the prior art and is issued to the terminal, when the software in the terminal is started, a License component in the software can authenticate the License, the License component comprises a public key, and after the authentication is passed, the software can normally run.
Although the license in the existing scheme can prevent software from being cracked to a certain extent, means of an attacker are endless, for example, for a license component compiled by java codes, the attacker can modify the authentication logic of a public key through reverse engineering such as decompilation and the like so as to crack the software; still some attackers will eliminate the whole license assembly and avoid license authentication to realize cracking, and still some schemes realize cracking by replacing built-in public keys or changing the authentication result into 'success' forever, so how to effectively prevent software cracking is a problem to be solved urgently.
Disclosure of Invention
The embodiment of the application provides a method for generating a certificate file of a target application program, a method and a device for running the target application program, electronic equipment and a computer-readable storage medium. For solving the problems in the background art.
According to a first aspect of the embodiments of the present application, a method for generating a certificate file of a target application program is provided, which is applied to a first terminal; the method comprises the following steps:
acquiring a machine code sent by a second terminal in response to the running operation aiming at the target application program; the machine code is obtained by encrypting the terminal information of the second terminal by the second terminal based on the public key in the preset key pair; the second terminal comprises a target installation package of the target application program, and the target installation package lacks a core code of the target application program;
decrypting the machine code based on a private key in a preset key pair to obtain terminal information; determining information to be verified, wherein the information to be verified comprises terminal information, and generating an initial file according to the information to be verified and a predetermined core code;
encrypting the initial file based on a private key in a preset key pair to obtain a certificate file; and sending the certificate file to the second terminal.
In one possible implementation manner, the target installation package includes a first data package corresponding to a main program of the target application program; the absence of the core code in the first data packet; the first data packet is generated by the following method:
acquiring a source code corresponding to a main program of the target application program, wherein the source code comprises the core code;
stripping the core code from the source code to obtain a candidate code, wherein the candidate code does not comprise the core code;
and packing the candidate codes to obtain a first data packet.
In one possible implementation manner, the installation package further includes an executable program, and the executable program is used for parsing, verifying, loading and running the core code on the certificate file; the obtaining of the machine code sent by the second terminal in response to the running operation for the target application program previously further includes:
and performing confusion and shell processing on the executable program, packaging the shelled executable program and the first data package to obtain the target installation package, and sending the target installation package to the second terminal.
According to a second aspect of the embodiments of the present application, there is provided an operating method of a target application, which is applied to a second terminal, where the second terminal includes a target installation package of the target application, and the target installation package lacks a core code of the target application; the method comprises the following steps:
responding to the running operation aiming at the target application program, encrypting the terminal information of the second terminal based on the public key in the preset key pair, obtaining a machine code, and sending the machine code to the first terminal;
receiving a certificate file sent by a first terminal; the certificate file is generated by encrypting the initial file by the first terminal based on a private key in a preset key pair; the initial file comprises a core code and information to be verified; the information to be verified comprises terminal information, and the terminal information is obtained by decrypting the machine code based on the private key by the first terminal;
and if the certificate file is determined to be readable, decrypting the certificate file according to the public key to obtain the core code and the information to be verified, verifying the information to be verified, and if the verification is passed, operating the target application program according to the core code.
In one possible implementation manner, the target installation package includes an executable program, the executable program is a program obtained through obfuscation and shell adding, and the executable program is used for analyzing, verifying and loading a certificate file and running a core code;
determining that the certificate file is readable, comprising:
and analyzing the certificate file through the executable program, and if the certificate file is successfully analyzed, determining that the certificate file is readable.
In a possible implementation manner, the to-be-verified information further includes an authorization expiration time;
the method for verifying the information to be verified comprises the following steps:
and determining the current time, and if the executable program determines that the current time is less than the authorization expiration time or the authorization expiration time is a preset value and the terminal information in the information to be verified is the same as the terminal information of the preset terminal information second terminal, determining that the verification is passed.
In one possible implementation manner, the terminal information includes a terminal name, an ip address, and a mac address;
encrypting the terminal information of the second terminal based on the public key in the preset key pair, including:
and combining the terminal name, the ip address and the mac address based on a preset combination rule to obtain combination information, and encrypting the combination information based on a public key in a preset key pair.
According to a third aspect of the embodiments of the present application, there is provided a device for generating a certificate file of a target application, which is applied to a first terminal; the generation apparatus includes:
the machine code acquisition module is used for acquiring a machine code sent by the second terminal in response to the running operation aiming at the target application program; the machine code is obtained by encrypting the terminal information of the second terminal by the second terminal based on the public key in the preset key pair; the second terminal comprises a target installation package of the target application program, and the target installation package lacks a core code of the target application program;
the decryption module is used for decrypting the machine code based on a private key in a preset key pair to obtain terminal information; determining information to be verified, wherein the information to be verified comprises terminal information, and generating an initial file according to the information to be verified and a predetermined core code;
the certificate generation module is used for encrypting the initial file based on a private key in a preset key pair to obtain a certificate file;
and the certificate sending module is used for sending the certificate file to the second terminal.
According to a fourth aspect of the embodiments of the present application, there is provided an apparatus for running a target application, which is applied to a second terminal, where the second terminal includes a target installation package of the target application, and the target installation package lacks a core code of the target application; the operation device comprises:
the encryption module is used for responding to the running operation aiming at the target application program, encrypting the terminal information of the second terminal based on the public key in the preset key pair, obtaining a machine code and sending the machine code to the first terminal;
the certificate file receiving module is used for receiving a certificate file sent by a first terminal; the certificate file is generated by encrypting the initial file based on a private key in a preset key pair by the first terminal; the initial file comprises a core code and information to be verified; the information to be verified comprises terminal information, and the terminal information is obtained by decrypting the machine code based on the private key by the first terminal;
and the verification module is used for decrypting the certificate file according to the public key to obtain the core code and the information to be verified if the certificate file is determined to be readable, verifying the information to be verified, and running the target application program according to the core code if the verification is passed.
According to a fifth aspect of embodiments herein, there is provided an electronic device comprising a memory, a processor and a computer program stored on the memory, the processor when executing the program implementing the steps of the method as provided by the first aspect.
According to a sixth aspect of embodiments herein, there is provided a computer readable storage medium having stored thereon a computer program which, when executed by a processor, performs the steps of the method as provided in the first and second aspects.
According to a seventh aspect of embodiments of the present application, there is provided a computer program product, which includes computer instructions stored in a computer-readable storage medium, and when a processor of a computer device reads the computer instructions from the computer-readable storage medium, the processor executes the computer instructions, so that the computer device executes the steps for implementing the method as provided in the first aspect.
The technical scheme provided by the embodiment of the application has the following beneficial effects:
according to the certificate file generating method and device, the certificate file of the target application program is generated based on the core code of the target application program and the information to be verified, the core code which ensures normal operation of the target application program can be obtained only after the certificate file is verified, authentication of the certificate file cannot be shielded, and the certificate component and the target application program can be effectively protected.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings used in the description of the embodiments of the present application will be briefly described below.
Fig. 1 is a schematic diagram of a system architecture for generating a certificate file of a target application according to an embodiment of the present application;
fig. 2 is a schematic flowchart of a method for generating a certificate file of a target application according to an embodiment of the present application;
fig. 3 is a schematic flowchart of an operating method of a target application according to an embodiment of the present application;
FIG. 4 is a diagram illustrating a ciphertext code fragment according to an embodiment of the present application;
fig. 5 is a schematic structural diagram of an apparatus for generating a certificate file of a target application according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of an operating apparatus of a target application according to an embodiment of the present application;
fig. 7 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
Embodiments of the present application are described below in conjunction with the drawings in the present application. It should be understood that the embodiments set forth below in connection with the drawings are exemplary descriptions for explaining technical solutions of the embodiments of the present application, and do not limit the technical solutions of the embodiments of the present application.
As used herein, the singular forms "a", "an", "the" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should be further understood that the terms "comprises" and/or "comprising," when used in this specification in connection with embodiments of the present application, specify the presence of stated features, information, data, steps, operations, elements, and/or components, but do not preclude the presence or addition of other features, information, data, steps, operations, elements, components, and/or groups thereof, as embodied in the art. It will be understood that when an element is referred to as being "connected" or "coupled" to another element, it can be directly connected or coupled to the other element or intervening elements may be present. Further, "connected" or "coupled" as used herein may include wirelessly connected or wirelessly coupled. The term "and/or" as used herein indicates at least one of the items defined by the term, e.g., "a and/or B" may be implemented as "a", or as "B", or as "a and B".
To make the objects, technical solutions and advantages of the present application more clear, embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
The terms referred to in this application will first be introduced and explained:
decompiling, reverse engineering of computer software (also called computer software restoration engineering), refers to performing "Reverse analysis and research" work on target programs (such as executable programs) of other people's software to derive design elements such as ideas, principles, structures, algorithms, processing procedures, operation methods and the like used by other people's software products, and source codes may be derived under certain specific conditions.
Code (code) is a source file written by a programmer in a language supported by a development tool, and is a set of definite rule system for representing information in a discrete form by characters, symbols or signal code elements, and the source code is mainly used for generating object code, namely code which can be recognized by a computer.
And adding a shell to compress the executable program resource, and directly running the compressed program. Another common way of adding a shell is to embed a piece of code in a binary program, and when the binary program is running, the control right of the program is obtained preferentially, and then the control right is returned to the original code, so as to hide the true OEP (entry point, to prevent cracking) of the program. Most viruses are based on this principle. The added program needs to prevent external programs or software from performing disassembly analysis or dynamic analysis on the added program, so that the original program and the software in the protective shell are not damaged by the external programs, and the normal operation of the original program is ensured. This technique is also commonly used to protect software copyrights and prevent software from being hacked. For viruses, however, the shelling may bypass some antivirus software scanning, thereby achieving some of its characteristics as some intrusion or destruction of the virus.
The RSA algorithm is the most widely used asymmetric encryption algorithm, and in the public key cryptosystem, the encryption key (i.e., public key) PK is public information, and the decryption key (i.e., secret key) SK is required to be secret. Both encryption algorithm E and decryption algorithm D are also disclosed. Although the decryption key SK is determined by the public key PK, SK cannot be calculated from PK.
The software cracking refers to a process of achieving the purpose of using the software free of charge or breaking through the function limit of the software by modifying at least one of a memory, a program file and a write register (keygen) program and randomly generating an effective serial number registration code after researching the activation mechanism of the software.
A software license is a form contract with a user by a software author to specify and limit the rights of the software user to use the software (or its source code), and the obligations the author shall make.
The core concept of software protection is to prevent software from being pirated, the concept of software protection is from the perspective of developers, and the emphasis is to protect software from being cracked by using a technical means based on encryption. In theory, all software protection techniques can be broken as long as enough resources and time are available. However, if the security strength of a protection technique is such that a cracker is charged with a higher cost than purchasing software, the protection technique is successful and worthy of use.
Software license (license) is an extension and development of the concept of software protection. The software authorization aims to make a software user use the software according to a purchase license, and relates to the installation number of the software, the use time, the application range, the functional module and the like. The emergence of software authorization technology, especially cloud authorization technology, has solved the software developer's demand for software sales digitization, automation and manageability, is the amalgamation paradigm of software authorization technology and "internet +".
License (software License) is a means for preventing software from being cracked, the core idea is to prevent software from being pirated, the software is protected from being cracked by a technical means which mainly adopts encryption, the License is obtained by encrypting authorization information of a host of software to be operated through a private key in the prior art and is issued to a terminal, when the software in the terminal is started, a License component in the software can authenticate the License, the License component comprises a public key, and the software can normally operate after the authentication is passed.
Although the license of the existing scheme can prevent software from being cracked to a certain extent, means of attackers are endless, for example, some schemes use common java codes to realize license logic, and judge whether the license is effective before executing functions, because the java codes are hardly compiled reversely; some schemes use open source license components, which are generally realized based on a certificate + rsa and other composite mechanisms, so that a cracker cannot know a private key and cannot generate correct license, but the cracker can replace a built-in public key or change a verification result into 'success' for ever, and cracking is realized; in other schemes, dynamic link libraries (dll, so on) of an operating platform are manufactured by C + +, jdni is used for calling the dynamic link libraries after a shell is added, license registration and verification are realized, the components of the scheme are safe enough, but the characteristics of easy decompilation of java codes are achieved, a cracker can easily and directly cut off the whole component, or the verification result is changed into 'success' permanently, and cracking is realized. Therefore, how to effectively prevent software cracking is a problem to be solved urgently.
The application provides a method for generating a certificate file of a target application program, a method for operating the target application program, an apparatus, an electronic device, a computer-readable storage medium and a computer program product, which aim to solve the above technical problems in the prior art.
The technical solutions of the embodiments of the present application and the technical effects produced by the technical solutions of the present application are explained below by describing several exemplary embodiments. It should be noted that the following embodiments may be referred to, referred to or combined with each other, and the description of the same terms, similar features, similar implementation steps and the like in different embodiments is not repeated.
Fig. 1 is a schematic diagram of a system architecture for generating a certificate file of a target application according to an embodiment of the present application, and the system architecture includes a first terminal 110 and a second terminal 120, where the first terminal 110 is a target installation package that can issue the target application and the certificate file of the target application, that is, the first terminal 110 is an issuer of the target application; the second terminal 120 may receive the target installation package of the target application and the certificate file of the target application and run the target application based on the certificate file, i.e., the second terminal 120 is a downloading party of the target application. The second terminal 120 may be plural, and the device certificate file of each second terminal is different.
The device types of the first terminal 110 and the second terminal 120 are the same or different, and include: at least one of an AR device, a VR device, a smart wearable device, a smartphone, a tablet, an e-book reader, an MP3 player, an MP4 player, a laptop portable computer, and a desktop computer. The following embodiments are illustrated with the terminal comprising a smartphone.
Those skilled in the art will appreciate that the number of terminals described above may be greater or fewer. For example, the number of the terminals may be only one, or several tens or hundreds of the terminals, or more. The number of terminals and the type of the device are not limited in the embodiments of the present application. The embodiment of the application is mainly explained by using an application scenario of a single terminal.
An embodiment of the present application provides a method for generating a certificate file of a target application, which is applied to a first terminal, and as shown in fig. 2, the method exemplarily shows a flowchart of the method for generating the certificate file of the target application, which is provided by the embodiment of the present application, and the method includes the following steps:
step S201, acquiring a machine code sent by a second terminal in response to the running operation aiming at the target application program; the machine code is obtained by encrypting the terminal information of the second terminal by the second terminal based on the public key in the preset key pair; the second terminal comprises a target installation package of the target application program, and the target installation package lacks a core code of the target application program;
the target application program in the embodiment of the present application may be any type of application program, and the target application program may also be developed based on any compiled language, for example, java language, C + + language, and the like, which is not limited in this embodiment of the present application.
In the embodiment of the application, the first terminal is a target application publisher, the second terminal is a target application downloader, and the second terminal includes the target installation package of the target application, but whether the second terminal can successfully run the target application needs to be determined, and whether the second terminal has the certificate license file of the target application and the authentication result of the license file needs to be determined.
In order to avoid the situation that the target application program may be cracked due to the fact that the license component is shielded, in the embodiment of the application, the target installation package of the target application program sent by the first terminal to the second terminal does not have the core code, and in this case, the core code cannot be obtained even if the target installation package is decompiled. The core code may be an important code corresponding to a relevant service that affects program start, and may also be other codes, which is not limited in this embodiment of the present application.
The target installation package in the embodiment of the present application includes a main program, a program dependency library, and a license component, the second terminal installs and runs the target application program after receiving the target installation package of the target application program, and the second terminal acquires terminal information of the second terminal after detecting a running operation for the target application program (the running operation may be that a user clicks an icon of the target application program, an exe file of the target application program, and the like), where the terminal information may include a terminal name, an ip address of the second terminal (the ip address may be an ip address of a terminal physical network card), a mac address (the ip address may be a mac address of the terminal physical network card), and the like, and may further include other information.
After the second terminal acquires the terminal information, the second terminal may combine the terminal name, the ip address, and the mac address in the terminal information based on a preset combination rule, where the preset combination rule may be any existing combination rule, and for example, may combine the terminal name, the ip address, and the mac address according to a format of the terminal name _ ip address _ mac address to obtain combination information.
The preset key pair in the embodiment of the application is an asymmetric key pair, for example, the preset key pair may be a public-private key pair corresponding to an RSA algorithm, the first terminal is a publisher of the target application program, the first terminal has a private key in the preset key pair, the second terminal has a public key in the preset key pair, and after the second terminal obtains the combined information, the second terminal may encrypt the combined information based on the public key in the preset key pair to obtain the machine code, and send the machine code to the first terminal, for example, the machine code of the second terminal is: <xnotran> 9BZUhEdu9GcxclAKk5KUVymoxVQZA4VMdPLFfEqgt63aFBB4jNs72cBUZc1PWhxC9Du2mlpMb1uRvcGHB4muep9I6aU53NrYRz4RuXgaJ4h4kG27ffEsW9vbrM1IHY7sRskE5bAAE0grgZZmr8r5lg+CGjlzWfdYzZ50iJgbp. </xnotran>
Obviously, the machine code out-of-order character string can prevent the leakage of the terminal information of the second terminal.
Step S202, decrypting the machine code based on a private key in a preset key pair to obtain terminal information; determining information to be verified, wherein the information to be verified comprises terminal information, and generating an initial file according to the information to be verified and a predetermined core code;
step S203, encrypting the initial file based on a private key in a preset key pair to obtain a certificate file;
step S204, the certificate file is sent to the second terminal.
According to the embodiment of the application, the first terminal comprises the private key in the preset key pair, and after the machine code sent by the second terminal is received, the machine code is decrypted through the private key in the preset key pair to obtain the terminal information, namely the terminal name, the ip address and the mac address of the second terminal.
In the embodiment of the present application, the to-be-verified information includes the terminal information, an authorization expiration date of the second terminal, a usage right of the second terminal, and the like, the license file in the existing scheme is generated directly based on the to-be-verified information, however, if the license file is generated directly based on the to-be-verified information, the target application program may be cracked due to shielding of a license component.
Therefore, the license file can be generated according to the information to be verified and the core code, specifically, the initial file can be generated according to the information to be verified and the predetermined core code, the initial file is encrypted based on the private key in the preset key pair to obtain the certificate file, and the certificate file can be sent to the second terminal in a mail manner, so that the second terminal runs the target application program based on the device certificate file.
Generally, the information sent by the first terminal to the second terminal comprises a target installation package and a certificate file, wherein the target installation package comprises a main program, a program dependence and an executable program corresponding to a license component, the certificate file comprises a core code and information to be verified, and the information to be verified comprises an authorization expiration date, a terminal name, an ip address, a mac address and the like.
According to the method and the device for authenticating the license file, the first terminal generates the license file of the target application program based on the core code of the target application program and the information to be authenticated, and the core code for ensuring the normal operation of the target application program can be obtained only after the license file is authenticated, so that the license file cannot be shielded, and a license assembly and the target application program can be effectively protected.
The embodiment of the application provides a possible implementation mode, wherein a target installation package comprises a first data package corresponding to a main program of a target application program; the absence of a core code in the first data packet; the first data packet is generated by:
acquiring a source code corresponding to a main program of a target application program, wherein the source code comprises a core code;
stripping the core code from the source code to obtain a candidate code, wherein the candidate code does not comprise the core code;
and packing the candidate codes to obtain a first data packet.
The core codes are obtained from the source codes corresponding to the main program, the target installation package of the target application program comprises the first data package corresponding to the main program, in order to prevent the source codes of the target application program from being cracked, the core codes are stripped from the source codes corresponding to the main program to obtain candidate codes, the candidate codes do not comprise the core codes, and the candidate codes are packaged to obtain the first data package corresponding to the main program.
The embodiment of the application provides a possible implementation manner, the target installation package further comprises an executable program, and the executable program is used for analyzing, verifying and loading the certificate file and operating the core code; obtaining a machine code sent by the second terminal in response to the running operation aiming at the target application program, wherein the method also comprises the following steps:
and performing confusion and shell adding processing on the operable program, packaging the operable program after shell adding and the first data package to obtain a target installation package, and sending the target installation package to the second terminal.
The target installation package in the embodiment of the application comprises a first installation package corresponding to a main program, and further comprises an executable program corresponding to a license component, wherein the executable program is used for analyzing, verifying and loading a certificate file and operating a core code.
In order to avoid logic leakage of analysis and verification of the license file by the target code, the embodiment of the application performs confusion and shell adding on the runnable program to obtain the runnable program after the shell adding, and can avoid exposing the code of the license component. And after the shelled executable program and the first data package are obtained, packaging the shelled executable program and the first data package to obtain a target installation package, and sending the second installation package to a second terminal.
The embodiment of the application provides an operation method of a target application program, which is applied to a second terminal, wherein the second terminal comprises a target installation package of the target application program, and the target installation package lacks a core code of the target application program; as shown in fig. 3, a flowchart illustrating a method for operating a target application program includes the following steps:
step S301, in response to the operation for the target application program, encrypting the terminal information of the second terminal based on the public key in the preset key pair to obtain the machine code, and sending the machine code to the first terminal.
In the embodiment of the present application, the second terminal is a downloading party of the target application, and in order to avoid cracking of the target application due to decompilation, the target installation package of the target application downloaded in the second terminal lacks a core code of the target application, the core code of the target application in the embodiment of the present application is located in a certificate file, and the second terminal needs to obtain the certificate file from the first terminal.
The second terminal in the embodiment of the application can operate the target application after receiving the target installation package of the target application, and after operation for the target application is detected, the second terminal can acquire terminal information of the second terminal, wherein the terminal information comprises a terminal name, an ip address, a mac address and the like of the second terminal, the terminal information is encrypted to obtain a machine code, the machine code is sent to the first terminal after the machine code is obtained, and the second terminal is instructed to return a certificate file based on the machine code.
Step S302, receiving a certificate file sent by a first terminal; the certificate file is generated by encrypting the initial file by the first terminal based on a private key in a preset key pair; the initial file comprises a core code and information to be verified; the information to be verified comprises terminal information, and the terminal information is obtained by the first terminal through decryption of the machine code based on the private key.
After receiving the machine code, the second terminal decrypts the machine code based on a private key in a preset key pair to obtain terminal information and determines information to be verified, wherein the information to be verified comprises the terminal information; and acquiring a core code of the target application program, injecting the information to be verified and the core code into the initial file, encrypting the initial file based on a private key in a preset key pair to obtain a certificate file, and sending the certificate file to the second terminal.
Step S303, if the certificate file is determined to be readable, decrypting the certificate file according to the public key to obtain the core code and the information to be verified, verifying the information to be verified, and if the verification is passed, operating the target application program according to the core code.
The method comprises the steps that after a second terminal receives a certificate file sent by a first terminal, a configuration path of a target installation package is determined, the certificate file is stored based on the configuration path of the target installation package, an executable program in the target installation package is called after the certificate file is stored, the certificate file is firstly analyzed, if the content obtained through analysis is a section of ciphertext code, the target file is determined to be readable, under the condition, a public key in a preset key pair can be used for decrypting the certificate file, a core code and information to be verified are obtained, wherein the information to be verified comprises terminal information and authorization expiration time, and the terminal information comprises a terminal name, an ip address, a mac address and the like.
After the information to be verified is determined, verifying the information to be verified, and if the information to be verified passes the verification, installing a target application program according to the core code, specifically, determining a type corresponding to the core code, where the type includes at least one of compiling, pulling up, and changing, and may also include other types, and embodiments of the present application are not illustrated one by one here.
Each type of the embodiment of the application has a corresponding processing strategy, the processing strategy corresponding to the compiling type is to dynamically compile the core code, the corresponding processing strategy is pulled up to start the built-in service, and the processing strategy corresponding to the changing type is to change at least one of the state of a target function in the core code and modify the parameter value of a target variable in the core code; after determining the processing policy of the core code, the core code may be processed according to the processing policy.
According to the method and the device, the second terminal does not comprise the core code in the target installation package of the target application program received in advance, after the first terminal generates the license file of the target application program based on the core code of the target application program and the information to be verified is received, the license file is decrypted and authenticated to obtain the core code, the target application program can be guaranteed to normally run after the license file is verified, the license file cannot be authenticated to be shielded, and the license assembly and the target application program can be effectively protected.
The embodiment of the application provides a possible implementation manner, the target installation package comprises an executable program, the executable program is a program subjected to confusion and shell adding, and the executable program is used for analyzing, verifying and loading certificate files and operating core codes;
determining that the certificate file is readable, comprising:
and analyzing the certificate file through the executable program, and if the certificate file is determined to be successfully analyzed, determining that the certificate file is readable.
In order to protect the license component, the executable program corresponding to the license component is subjected to obfuscation and shell adding, the executable program can be an executable program in an exe format or a program which can be called, the executable program can be directly operated, but the source code cannot be checked, the source code can be checked only by shelling and decompilation of the executable program package, and the executable program cannot be shelled by the second terminal, so that the logic of the executable code cannot be checked by the second terminal, and the exposure of the certificate verification logic can be avoided.
The executable program in the embodiment of the application is used for analyzing, verifying, loading and running the core code for the certificate file, after receiving the certificate file, the certificate file can be analyzed based on the executable program, if the ciphertext code segment is obtained through analysis, the analysis is successful, and the certificate file can be determined to be readable, as shown in fig. 4, which exemplarily shows a schematic diagram of the ciphertext code segment in a specific scene.
The embodiment of the application provides a possible implementation manner, and the information to be verified further comprises an authorization expiration time;
the method for verifying the information to be verified comprises the following steps:
and determining the current time, and if the executable program determines that the current time is less than the authorization expiration time or the authorization expiration time is a preset value and the terminal information in the information to be verified is the same as the terminal information of the preset terminal information second terminal, determining that the verification is passed.
The method comprises the steps that verification of information to be verified is performed on terminal information and authorized expiration time in the information to be verified, the information to be verified can be verified through a runnable program, the information to be verified comprises the terminal information, the terminal information comprises a terminal name, an ip address and a mac address, and if the current time is smaller than the authorized expiration time or the authorized expiration time is a preset value (the preset value is-1, and the representation is permanently effective), the authorized expiration time is determined to pass verification; if the terminal name in the information to be verified is consistent with the terminal name of the second terminal, determining that the terminal name verification is passed; if the ip address in the information to be verified is the same as the own ip address of the second terminal, determining that the ip address is verified; if the mac address in the information to be verified is the same as the mac address of the second terminal, determining that the mac address is verified; under the condition that the terminal name, the ip address and the mac address are verified to pass, the information to be verified passes the verification; and under the condition that any one of the terminal name, the ip address and the mac address fails to pass the verification, the information to be verified does not pass the verification.
The embodiment of the application provides a possible implementation mode, and the terminal information comprises a terminal name, an ip address and a mac address;
encrypting the terminal information of the second terminal based on the public key in the preset key pair, including:
and combining the terminal name, the ip address and the mac address based on a preset combination rule to obtain combination information, and encrypting the combination information based on a public key in a preset key pair.
After the second terminal collects the terminal information, the second terminal may combine the terminal name, the ip address, and the mac address in the terminal information based on a preset combination rule, where the preset combination rule may be any existing combination rule, and for example, may combine according to a format of the terminal name _ ip address _ mac address to obtain the combination information. The second terminal can encrypt the combined information based on the public key in the preset key pair to obtain the machine code, and sends the machine code to the first terminal.
The embodiment of the present application provides a device 50 for generating a certificate file of a target application program, which is applied to a first terminal; as shown in fig. 5, the generating device 50 includes:
a machine code obtaining module 510, configured to obtain a machine code sent by the second terminal in response to a running operation for the target application; the machine code is obtained by encrypting the terminal information of the second terminal by the second terminal based on the public key in the preset key pair; the second terminal comprises a target installation package of the target application program, and the target installation package lacks a core code of the target application program;
the decryption module 520 is configured to decrypt the machine code based on a private key in the preset key pair to obtain the terminal information; determining information to be verified, wherein the information to be verified comprises terminal information, and generating an initial file according to the information to be verified and a predetermined core code;
a certificate generation module 530, configured to encrypt the initial file based on a private key in a preset key pair to obtain a certificate file;
the certificate sending module 540 is configured to send the certificate file to the second terminal.
According to the license file generating method and device, the license file of the target application program is generated based on the core code of the target application program and the information to be verified, the core code which ensures normal operation of the target application program can be obtained only after the license file is verified, authentication of the license file cannot be shielded, and a license assembly and the target application program can be effectively protected.
The embodiment of the application provides a possible implementation mode, wherein a target installation package comprises a first data package corresponding to a main program of a target application program; the absence of a core code in the first data packet; the generating device further comprises:
the source code obtaining module is used for obtaining a source code corresponding to a main program of a target application program, and the source code comprises a core code;
the first stripping module is used for stripping the core codes from the source codes to obtain candidate codes, and the candidate codes do not include the core codes;
the installation package generation module is used for stripping the core codes from the source codes to obtain candidate codes, wherein the candidate codes do not include the core codes;
and the first packing module is used for packing the candidate codes to obtain a first data packet.
The embodiment of the application provides a possible implementation manner, the installation package further comprises an executable program, and the executable program is used for analyzing, verifying and loading the certificate file and operating the core code;
the device also comprises a second packaging module which is used for conducting confusion and shell adding processing on the operable program, packaging the operable program after shell adding and the first data package to obtain a target installation package, and sending the target installation package to the second terminal.
The embodiment of the present application provides an operating apparatus 60 of a target application, which is applied to a second terminal, where the second terminal includes a target installation package of the target application, and the target installation package lacks a core code of the target application; as shown in fig. 6, the running device 60 includes:
the encryption module 610 is configured to encrypt, in response to an operation for the target application, terminal information of the second terminal based on a public key in a preset key pair to obtain a machine code, and send the machine code to the first terminal;
a certificate file receiving module 620, configured to receive a certificate file sent by a first terminal; the certificate file is generated by encrypting the initial file based on a private key in a preset key pair by the first terminal; the initial file comprises a core code and information to be verified; the information to be verified comprises terminal information, and the terminal information is obtained by decrypting the machine code based on the private key by the first terminal;
the verification module 630 is configured to, if it is determined that the certificate file is readable, decrypt the certificate file according to the public key to obtain the core code and the information to be verified, verify the information to be verified, and if the verification passes, install the target application program according to the core code.
The embodiment of the application provides a possible implementation manner, wherein the target installation package comprises an executable program, the executable program is a program subjected to obfuscation and shell processing, and the executable program is used for analyzing, verifying and loading a certificate file and operating a core code;
the device also comprises an analysis module which is used for analyzing the certificate file through the executable program, and if the certificate file is determined to be successfully analyzed, the certificate file is determined to be readable.
The embodiment of the application provides a possible implementation manner, and the information to be verified further comprises an authorization expiration time;
the verification module is specifically used for determining the current time, and if the executable program determines that the current time is less than the authorization expiration time or the authorization expiration time is a preset value, and the terminal information in the information to be verified is the same as the terminal information of the preset terminal information second terminal, the verification is determined to be passed.
The embodiment of the application provides a possible implementation mode, and the terminal information comprises a terminal name, an ip address and a mac address;
the encryption module is specifically configured to combine the terminal name, the ip address, and the mac address based on a preset combination rule to obtain combination information, and encrypt the combination information based on a public key in a preset key pair.
The apparatus of the embodiment of the present application may execute the method provided by the embodiment of the present application, and the implementation principle is similar, the actions executed by the modules in the apparatus of the embodiments of the present application correspond to the steps in the method of the embodiments of the present application, and for the detailed functional description of the modules of the apparatus, reference may be specifically made to the description in the corresponding method shown in the foregoing, and details are not repeated here.
The embodiment of the application provides an electronic device, which comprises a memory, a processor and a computer program stored on the memory, wherein the processor executes the computer program to realize the steps of a certificate file generation method of a target application program and an operation method of the target application program, and compared with the related technology, the steps of: according to the license file generating method and device, the license file of the target application program is generated based on the core code of the target application program and the information to be verified, the core code which ensures normal operation of the target application program can be obtained only after the license file is verified, authentication of the license file cannot be shielded, and a license assembly and the target application program can be effectively protected.
In an alternative embodiment, an electronic device is provided, as shown in FIG. 7, where electronic device 7000 shown in FIG. 7 comprises: a processor 7001 and a memory 7003. Wherein the processor 7001 and the memory 7003 are coupled, such as via a bus 7002. Optionally, the electronic device 7000 may further include a transceiver 7004, and the transceiver 7004 may be used for data interaction between the electronic device and other electronic devices, such as transmission of data and/or reception of data. It should be noted that the transceiver 7004 is not limited to one in practical applications, and the structure of the electronic device 7000 does not constitute a limitation to the embodiments of the present application.
The Processor 7001 may be a CPU (Central Processing Unit), a general purpose Processor, a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array) or other Programmable logic device, a transistor logic device, a hardware component, or any combination thereof. Which may implement or perform the various illustrative logical blocks, modules, and circuits described in connection with the disclosure. The processor 7001 may also be a combination implementing computing functionality, e.g., a combination comprising one or more microprocessors, a combination of DSPs and microprocessors, or the like.
Bus 7002 may include a path that carries information between the aforementioned components. The bus 7002 may be a PCI (Peripheral Component Interconnect) bus, an EISA (Extended Industry Standard Architecture) bus, or the like. The bus 7002 can be divided into an address bus, a data bus, a control bus, and the like. For ease of illustration, only one thick line is shown in FIG. 7, but this is not intended to represent only one bus or type of bus.
The Memory 7003 may be a ROM (Read Only Memory) or other type of static storage device that can store static information and instructions, a RAM (Random Access Memory) or other type of dynamic storage device that can store information and instructions, an EEPROM (Electrically Erasable Programmable Read Only Memory), a CD-ROM (Compact Disc Read Only Memory) or other optical Disc storage, optical Disc storage (including Compact Disc, laser Disc, optical Disc, digital versatile Disc, blu-ray Disc, etc.), a magnetic Disc storage medium, other magnetic storage devices, or any other medium that can be used to carry or store a computer program and that can be Read by a computer, without limitation.
The memory 7003 is used for storing computer programs for executing the embodiments of the present application, and execution is controlled by the processor 7001. The processor 7001 is used to execute computer programs stored in the memory 7003 to implement the steps shown in the foregoing method embodiments.
The electronic device package may include, but is not limited to, a mobile terminal such as a mobile phone, a notebook computer, a digital broadcast receiver, a PDA (personal digital assistant), a PAD (tablet computer), a PMP (portable multimedia player), a vehicle-mounted terminal (e.g., a car navigation terminal), etc., and a stationary terminal such as a digital TV, a desktop computer, etc., among others. The electronic device shown in fig. 7 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present disclosure.
The embodiments of the present application provide a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, can implement the steps of the foregoing method embodiments and corresponding content. Compared with the prior art, the method can realize that: according to the license file generating method and device, the license file of the target application program is generated based on the core code of the target application program and the information to be verified, the core code for guaranteeing normal operation of the target application program can be obtained only after the license file is verified, authentication of the license file cannot be shielded, and a license assembly and the target application program can be effectively protected.
It should be noted that the computer readable medium in the present disclosure can be a computer readable signal medium or a computer readable medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In contrast, in the present disclosure, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, optical cables, RF (radio frequency), etc., or any suitable combination of the foregoing.
Embodiments of the present application further provide a computer program product, which includes a computer program, and when the computer program is executed by a processor, the steps and corresponding contents of the foregoing method embodiments can be implemented. Compared with the prior art, the method can realize that:
according to the license file generating method and device, the license file of the target application program is generated based on the core code of the target application program and the information to be verified, the core code which ensures normal operation of the target application program can be obtained only after the license file is verified, authentication of the license file cannot be shielded, and a license assembly and the target application program can be effectively protected.
The terms "first," "second," "third," "fourth," "1," "2," and the like in the description and in the claims of the present application and in the above-described drawings (if any) are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It should be understood that the data so used are interchangeable under appropriate circumstances such that the embodiments of the application described herein are capable of operation in other sequences than described or illustrated herein.
It should be understood that, although each operation step is indicated by an arrow in the flowchart of the embodiment of the present application, the implementation order of the steps is not limited to the order indicated by the arrow. In some implementation scenarios of the embodiments of the present application, the implementation steps in the flowcharts may be performed in other sequences as desired, unless explicitly stated otherwise herein. In addition, some or all of the steps in each flowchart may include multiple sub-steps or multiple stages based on an actual implementation scenario. Some or all of these sub-steps or stages may be performed at the same time, or each of these sub-steps or stages may be performed at different times, respectively. Under the scenario that the execution time is different, the execution sequence of the sub-steps or phases may be flexibly configured according to the requirement, which is not limited in the embodiment of the present application.
The above are only optional embodiments of partial implementation scenarios in the present application, and it should be noted that, for those skilled in the art, other similar implementation means based on the technical idea of the present application are also within the scope of protection of the embodiments of the present application without departing from the technical idea of the present application.

Claims (11)

1. A method for generating a certificate file of a target application program is characterized by being applied to a first terminal; the method comprises the following steps:
acquiring a machine code sent by a second terminal in response to the running operation aiming at the target application program; the machine code is obtained by encrypting the terminal information of the second terminal by the second terminal based on a public key in a preset key pair; the second terminal comprises a target installation package of a target application program, and the target installation package lacks a core code of the target application program;
decrypting the machine code based on a private key in the preset key pair to obtain the terminal information; determining information to be verified, wherein the information to be verified comprises the terminal information, and generating an initial file according to the information to be verified and the predetermined core code;
encrypting the initial file based on a private key in the preset key pair to obtain a certificate file; and sending the certificate file to the second terminal.
2. The method of claim 1, wherein the target installation package comprises a first data package corresponding to a main program of the target application program; the absence of the core code in the first data packet; the first data packet is generated by:
acquiring a source code corresponding to a main program of the target application program, wherein the source code comprises the core code;
stripping the core code from the source code to obtain a candidate code, wherein the candidate code does not comprise the core code;
and packing the candidate codes to obtain a first data packet.
3. The method according to claim 2, wherein the target installation package further comprises an executable program, and the executable program is used for parsing, verifying and loading the certificate file and running the core code; the obtaining of the machine code sent by the second terminal in response to the running operation for the target application program further includes:
and performing confusion and shell processing on the executable program, packaging the shelled executable program and the first data package to obtain the target installation package, and sending the target installation package to the second terminal.
4. The running method of the target application program is characterized by being applied to a second terminal, wherein the second terminal comprises a target installation package of the target application program, and the target installation package lacks a core code of the target application program; the method comprises the following steps:
responding to the running operation aiming at the target application program, encrypting the terminal information of the second terminal based on a public key in a preset key pair to obtain a machine code, and sending the machine code to the first terminal;
receiving a certificate file sent by the first terminal; the certificate file is generated by encrypting an initial file by the first terminal based on a private key in the preset key pair; the initial file comprises the core code and information to be verified; the information to be verified comprises the terminal information, and the terminal information is obtained by the first terminal through decryption of the machine code based on the private key;
if the certificate file is determined to be readable, decrypting the certificate file according to the public key to obtain the core code and the information to be verified, verifying the information to be verified, and if the verification is passed, operating the target application program according to the core code.
5. The method according to claim 4, wherein the target installation package comprises an executable program, the executable program is an obfuscated and shelled program, and the executable program is used for parsing, verifying and loading the certificate file and running the core code;
the determining that the certificate file is readable comprises:
and analyzing the certificate file through the executable program, and if the certificate file is successfully analyzed, determining that the certificate file is readable.
6. The method according to claim 5, wherein the information to be verified further includes an authorization expiration time;
the verifying the information to be verified comprises:
and determining the current time, and if the executable program determines that the current time is less than the authorization expiration time or the authorization expiration time is a preset value, and the terminal information in the information to be verified is the same as the terminal information of the second terminal, determining that the verification is passed.
7. The method according to claim 4, wherein the terminal information includes a terminal name, an ip address and a mac address;
the encrypting the terminal information of the second terminal based on the public key in the preset key pair includes:
and combining the terminal name, the ip address and the mac address based on a preset combination rule to obtain combination information, and encrypting the combination information based on a public key in a preset key pair.
8. A generation device of a certificate file of a target application program is characterized by being applied to a first terminal; the generation device comprises:
the machine code acquisition module is used for acquiring a machine code sent by the second terminal in response to the running operation aiming at the target application program; the machine code is obtained by encrypting the terminal information of the second terminal by the second terminal based on a public key in a preset key pair; the second terminal comprises a target installation package of a target application program, and the target installation package lacks a core code of the target application program;
the decryption module is used for decrypting the machine code based on a private key in the preset key pair to obtain the terminal information; determining information to be verified, wherein the information to be verified comprises the terminal information, and generating an initial file according to the information to be verified and the predetermined core code;
the certificate generation module is used for encrypting the initial file based on a private key in the preset key pair to obtain a certificate file;
and the certificate sending module is used for sending the certificate file to the second terminal.
9. The running device of the target application program is applied to a second terminal, wherein the second terminal comprises a target installation package of the target application program, and the target installation package lacks a core code of the target application program; the operation device includes:
the encryption module is used for responding to the running operation aiming at the target application program, encrypting the terminal information of the second terminal based on a public key in a preset key pair, obtaining a machine code and sending the machine code to the first terminal;
the certificate file receiving module is used for receiving the certificate file sent by the first terminal; the certificate file is generated by the first terminal through encrypting an initial file based on a private key in the preset key pair; the initial file comprises the core code and information to be verified; the information to be verified comprises the terminal information, and the terminal information is obtained by the first terminal decrypting the machine code based on the private key;
and the verification module is used for decrypting the certificate file according to the public key to obtain the core code and the information to be verified if the certificate file is determined to be readable, verifying the information to be verified, and running the target application program according to the core code if the verification is passed.
10. An electronic device comprising a memory, a processor and a computer program stored on the memory, characterized in that the processor executes the computer program to implement the steps of the method of any of claims 1-7.
11. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 7.
CN202310253884.0A 2023-03-16 2023-03-16 Generation method of certificate file of target application program Pending CN115964681A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310253884.0A CN115964681A (en) 2023-03-16 2023-03-16 Generation method of certificate file of target application program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310253884.0A CN115964681A (en) 2023-03-16 2023-03-16 Generation method of certificate file of target application program

Publications (1)

Publication Number Publication Date
CN115964681A true CN115964681A (en) 2023-04-14

Family

ID=87361815

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310253884.0A Pending CN115964681A (en) 2023-03-16 2023-03-16 Generation method of certificate file of target application program

Country Status (1)

Country Link
CN (1) CN115964681A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117499023A (en) * 2024-01-02 2024-02-02 深圳市玩视科技股份有限公司 Hardware security method, device and storage medium based on AES algorithm

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104077502A (en) * 2013-03-27 2014-10-01 苏州精易会信息技术有限公司 Software protection method in software encryption way
CN113326482A (en) * 2021-03-24 2021-08-31 统信软件技术有限公司 Authorization control method, authorization device and computing equipment
CN115510402A (en) * 2022-09-29 2022-12-23 山东亿云信息技术有限公司 License control method and system based on encryption and code confusion
US20230071847A1 (en) * 2021-04-02 2023-03-09 Tencent Technology (Shenzhen) Company Limited Information verification method and related apparatus, device, and storage medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104077502A (en) * 2013-03-27 2014-10-01 苏州精易会信息技术有限公司 Software protection method in software encryption way
CN113326482A (en) * 2021-03-24 2021-08-31 统信软件技术有限公司 Authorization control method, authorization device and computing equipment
US20230071847A1 (en) * 2021-04-02 2023-03-09 Tencent Technology (Shenzhen) Company Limited Information verification method and related apparatus, device, and storage medium
CN115510402A (en) * 2022-09-29 2022-12-23 山东亿云信息技术有限公司 License control method and system based on encryption and code confusion

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117499023A (en) * 2024-01-02 2024-02-02 深圳市玩视科技股份有限公司 Hardware security method, device and storage medium based on AES algorithm
CN117499023B (en) * 2024-01-02 2024-04-09 深圳市玩视科技股份有限公司 Hardware security method, device and storage medium based on AES algorithm

Similar Documents

Publication Publication Date Title
EP3387813B1 (en) Mobile device having trusted execution environment
KR101471589B1 (en) Method for Providing Security for Common Intermediate Language Program
KR101091465B1 (en) Method and apparatus for the secure processing of confidential content within a virtual machine of a processor
KR101503785B1 (en) Method And Apparatus For Protecting Dynamic Library
CN111143869B (en) Application package processing method and device, electronic equipment and storage medium
US20150095653A1 (en) Method and apparatus of creating application package, method and apparatus of executing application package, and recording medium storing application package
CN102236757A (en) Software protection method and system applicable to Android system
CN109284585B (en) Script encryption method, script decryption operation method and related device
CN107077540B (en) Method and system for providing cloud-based application security services
CN104932902A (en) Method for generating APK file and terminal
CN104866739A (en) Application program encryption method and application program encryption system in Android system
CN108259479B (en) Business data processing method, client and computer readable storage medium
CN107430650B (en) Securing computer programs against reverse engineering
CN107870793B (en) Method and device for loading SO file in application program
CN108229144B (en) Verification method of application program, terminal equipment and storage medium
CN112231702A (en) Application protection method, device, equipment and medium
CN112346759A (en) Firmware upgrading method and device and computer readable storage medium
CN115964681A (en) Generation method of certificate file of target application program
CN113360857A (en) Code starting method and system for software
CN112115430A (en) Apk reinforcement method, electronic equipment and storage medium
CN109995534B (en) Method and device for carrying out security authentication on application program
Bahaa-Eldin et al. A comprehensive software copy protection and digital rights management platform
CN111611551A (en) Dynamic link library protection method and system based on state cryptographic algorithm
CN111522555A (en) apk file reinforcing method, apk file decrypting method and related devices
CN111046440A (en) Tamper verification method and system for secure area content

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

Application publication date: 20230414