Program protection method and device

A program protection and encryption algorithm technology, applied in program/content distribution protection, computer security devices, instruments, etc., can solve the problem that software programs cannot be effectively protected, and achieve the effect of increasing the difficulty of cracking, improving efficiency, and protecting source code

Active Publication Date: 2014-06-11
BEIJING AUTONAVI YUNMAP TECH CO LTD
View PDF3 Cites 10 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0004] In view of this, the purpose of the embodiments of the present invention is to provide a program prote

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Program protection method and device
  • Program protection method and device
  • Program protection method and device

Examples

Experimental program
Comparison scheme
Effect test

Example Embodiment

[0073] Example one

[0074] figure 1 It is an exemplary flowchart of a method according to an embodiment of the present invention. This embodiment provides a program protection method, and the method may include:

[0075] In the program generation phase, perform the following encryption steps:

[0076] S101. Obtain a first key, where the first password includes a public key and a private key.

[0077] The first key is used to encrypt and protect the second key. The first key belongs to a fixed asymmetric key, including a public key and a private key. The public key is used for encryption and the private key is used for decryption. The private key is non-public, such as the RSA asymmetric encryption and decryption algorithm. The key length It can be 512, 1024, 2048. The larger the key length, the more likely it is to be cracked.

[0078] There are many ways to obtain the first key. For example, you can directly preset a first key, or receive the first key input from the outside, and y...

Example Embodiment

[0101] Example two

[0102] figure 2 It is an exemplary flowchart of the method in the second embodiment of the present invention. This embodiment is based on the foregoing embodiment, and is a further supplement and improvement on the basis of the foregoing embodiment. In principle, this embodiment adds a dynamic update mechanism for the second key on the basis of the previous embodiment, and introduces an expiration period of the second key, thereby further improving security.

[0103] In this embodiment, the second key attribute information further includes expiration period data of the second key;

[0104] Before using the public key of the first key to encrypt the second key attribute information, the method further includes:

[0105] S201. Obtain expiration period data of the second key.

[0106] The expiration period data of the second key may include the expiration period of the second key and the time when the second key expires next time (that is, the expiration time of the...

Example Embodiment

[0123] Example three

[0124] On the basis of the above-mentioned embodiments, the present invention will be further described below in combination with specific scenarios.

[0125] image 3 It is an exemplary flowchart of the method in Embodiment 3 of the present invention.

[0126] S301. Obtain seed data of the first key. For example, it can be obtained based on data input by the user.

[0127] S302. Use an asymmetric encryption and decryption algorithm (such as RSA) to generate a first key (including a public key and a private key).

[0128] S303. Use a private encryption algorithm to further encrypt the first key, and serialize the ciphertext of the first key to a disk file, where the public key is saved as a public.ks file, and the private key is saved as a private.ks file .

[0129] S304. Obtain the name of the specified class and the expiration period of the second key (for example, 90 days). For example, it can be obtained based on data input by the user.

[0130] S305. Use dyn...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

The embodiment of the invention discloses a program protection method and device. The method comprises the following steps of encryption at a program generation stage: acquiring a first secrete key; acquiring a second secrete key and a mark of a designated category; encrypting the designated category by utilizing the second secrete key; encrypting the attribute information of the second secrete key by utilizing a public key of the first secrete key; decryption at a program running stage: decrypting encrypted data of the attribute information of the second secrete key by utilizing a private key of the first secrete key; judging whether the to-be-loaded category belongs to the designated category or not according to the mark of the designated category, and decrypting the to-be-loaded category by utilizing the second secrete key if the to-be-loaded category belongs to the designated category. The first secrete key and the second secrete key are used for doubly encrypting the program, so that the source code of the program can be effectively protected; meanwhile, the program is also distinguished, and only the designated category is encrypted, so that the encryption and decryption efficiency can be improved; moreover, the mark of the encrypted category is further encrypted and protected by the second secrete key, so that the safety of the program is further protected.

Description

technical field [0001] The invention relates to the technical field of software encryption and decryption, in particular to a program protection method and device. Background technique [0002] The core algorithm of software is directly related to the competitiveness of software products, so the protection of the core algorithm of software has higher requirements than the protection of its source code. [0003] To ensure the security of the source code, the source code is generally encrypted when compiling software. For example, when compiling Java code, you can use the compiler's built-in compilation library to quickly implement code encryption. Since this encryption method implements encryption processing through a fixed library, it is very easy to be cracked by decompilation tools (such as using javap / jd-gui and other tools) when using this type of encryption method, resulting in the leakage of the core source code. There is still a lack of an effective method for protec...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
IPC IPC(8): G06F21/12
CPCG06F21/125G06F21/46
Inventor 梁捷余延军
Owner BEIJING AUTONAVI YUNMAP TECH CO LTD
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products