CN110866226A - JAVA application software copyright protection method based on encryption technology - Google Patents

JAVA application software copyright protection method based on encryption technology Download PDF

Info

Publication number
CN110866226A
CN110866226A CN201911117378.9A CN201911117378A CN110866226A CN 110866226 A CN110866226 A CN 110866226A CN 201911117378 A CN201911117378 A CN 201911117378A CN 110866226 A CN110866226 A CN 110866226A
Authority
CN
China
Prior art keywords
application software
software
authorization
decryption
java
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.)
Granted
Application number
CN201911117378.9A
Other languages
Chinese (zh)
Other versions
CN110866226B (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.)
Zhongbo Information Technology Research Institute Co Ltd
Original Assignee
Zhongbo Information Technology Research Institute 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 Zhongbo Information Technology Research Institute Co Ltd filed Critical Zhongbo Information Technology Research Institute Co Ltd
Priority to CN201911117378.9A priority Critical patent/CN110866226B/en
Publication of CN110866226A publication Critical patent/CN110866226A/en
Application granted granted Critical
Publication of CN110866226B publication Critical patent/CN110866226B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/14Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)

Abstract

The invention discloses a JAVA application software copyright protection method based on encryption technology, belonging to the technical field of information security, and comprising an information encryption authorization module, a software starting module and a software operation protection center; the information encryption authorization module completes encryption of application software codes (CLASS files), adopts application software operation server hardware information (main board serial number \ CPU serial number) for encryption authorization and generates anti-tampering verification codes for the software JAR package; the software starting module is used for realizing the decryption of application software codes and the loading of classes and finishing the verification of the authorization information; the software operation protection center realizes the operation registration of authorized application software and prevents illegal software from DUMP related codes in the memory of the JVM by tracking the operating application software. The method disclosed by the invention can be used for protecting piracy and destruction in a storage stage, a loading starting stage and an operating stage of the JAVA application software in multiple directions, and the copyright of the JAVA application software is effectively protected.

Description

JAVA application software copyright protection method based on encryption technology
Technical Field
The invention relates to a method for preventing JAVA application software from cracking and pirating, in particular to a systematized JAVA application software copyright protection method based on an encryption technology, belonging to the technical field of information security.
Background
Through the development of many years, the Java language is widely applied to the fields of Internet, big data, Android development and the like, the development efficiency is high, the cross-platform performance, the stability and the expandability are strong, and the Java language is also a common solution for large Internet platforms. However, since the Java language is compiled into bytecode and interpreted by the JVM, illegal decompilation is prevented, and product copyright protection developed by the Java language is a problem to be solved urgently.
At present, the main method for preventing illegal decompilation of Java codes is to mix up compiled codes, so that the decompilated codes become confused and unintelligible, but only the difficulty of reverse engineering is increased, and the problem of piracy is still not facilitated; another major method to prevent illegal decompilation of Java code is to encrypt the CLASS file, which is effective to prevent hard decryption, but cannot prevent export decompilation of CLASS during CLASS loading and loading into the JVM memory.
Disclosure of Invention
The invention aims to provide a method for protecting the copyright of JAVA application software based on an encryption technology, which solves the problems that the conventional JAVA application software is cracked and pirated by inverse compiling and reverse engineering.
In order to achieve the purpose, the invention adopts the following technical scheme:
a JAVA application software copyright protection method based on encryption technology comprises the following steps:
step 1: establishing a server for deploying application software and a data center for collecting and analyzing information of the server;
the data center is deployed in an application software operation tracking protection center;
the data center collects hardware information of a server deployed by application software, wherein the hardware information comprises a mainboard serial number and a CPU serial number and is used as subsequent encryption authorization basic data;
step 2: the data center encrypts a CLASS file in an application software JAR package to generate an application software release JAR package, generates a file verification code of the application software JAR package, and makes an application software authorization certificate, wherein the certificate content comprises encrypted server hardware information, application software validity period information, a software encryption key, a client account number, a starting password and a software file verification code;
and step 3: establishing a software starting module in a server for deploying application software, wherein the software starting module is used for application software running registration, software decryption authorization verification and custom class loading decryption;
and 4, step 4: the data center monitors the running state of the registered application software in real time and prevents illegal software from being linked to the protected application software process to acquire the JVM memory byte code data.
Preferably, when step 2 is executed, the software authorization encryption process includes the following steps:
step A1: DES encryption is carried out through C language, a secret key is stored in a binary code file, and the tool is used for encrypting the hardware information, the software validity period information and the software version description information and storing the encrypted information in an authorization certificate;
step A2: encrypting the JAR packet of the application software through C + JAVA, reading a CLASS file in the JAR packet of the application software through JAVA language, realizing that a dynamic library completes the encryption function of the CLASS file through JNI by utilizing C language, encrypting a key DES encrypted by the JAR packet of the application software and then storing the encrypted key DES in an authorization certificate;
step A3: and the JAR package of the application software to be issued generates a verification code by using MD5, the verification code DES is encrypted and then stored in the authorization certificate, and meanwhile, the JAR package of the JAVA virtual machine issued together generates the verification code DES by using MD5 and then is encrypted and then stored in the authorization certificate.
Preferably, when step 3 is executed, the processing method of the software startup module includes the following steps:
step B1: acquiring the hardware information, a JAR (java application file) package of application software to be started and a JVM (java virtual machine) to generate an MD5 verification code, reading authorization ciphertext information DES in an authorization certificate, decrypting, comparing and checking, and starting to run after checking passes;
step B2: generating a software decryption authorization dynamic password, starting a JAVA virtual machine JVM, and transmitting operating parameters: JAR package path and name, JVM parameters include: a ReduceSignalUsage parameter, a DisenablAttachMechanism parameter, hardware information in a ciphertext form, a software decryption key and a decryption authorization dynamic password, wherein the ReduceSignalUsage parameter ignores SIGHUP \ SIGING \ SIGTETM signal, and the DisenablAttachMechanism parameter prohibits a tool from being connected to the JVM parameter;
step B3: sending application software process PID, application software name, software operation validity period, timestamp and decryption authorization dynamic password to a data center for registration;
step B4: and establishing a CLASS loader in the software starting module, wherein a decryption dynamic link library in the CLASS loader acquires a decryption authorization dynamic password, a timestamp and an application software process PID transmitted by the starting module, then transmits the decryption authorization dynamic password, the timestamp and the application software process PID to a data center to verify the decryption authorization dynamic password registered by the starting module, decrypts the CLASS file in the JAR packet by acquiring a corresponding software decryption authority and loads the CLASS file to the JAVA virtual machine.
Preferably, when step 4 is executed, the processing of the data center includes the following steps:
step C1: receiving a decryption authorization request from a decryption dynamic library in the class loader, and authorizing after authenticating;
step C2: receiving a heartbeat request from the application software during running, forcibly killing the application software process if the heartbeat request of the registered application software is not received after overtime, and automatically quitting if the heartbeat request of the application software does not receive a response;
the heartbeat request is encrypted data;
step C3: after receiving a registration request from a software starting module, starting a process to track the application JVM process, preventing other illegal processes from being linked to the application JVM process to perform illegal operation, and when the tracking process is maliciously terminated, an application software running tracking protection center can kill the tracked application software process in time;
step C4: the data center periodically checks the running application software, and the application software process is immediately terminated when the validity period of the application software is found to be over.
The invention relates to a method for protecting JAVA application software copyright based on encryption technology, which solves the problems that the existing JAVA application software is cracked and pirated by decompiling reverse engineering, and uses a byte encryption algorithm to encrypt a CLASS file in a JAR packet of release software to prevent hard decryption; a starting module (written in C language) acquires hardware information of the operating server, reads an authorization certificate to complete starting authorization verification, and then performs application software operation registration; the class loader can not be encrypted, the class loader is prevented from being changed by the set through the verification code, and a decryption dynamic library in the class loader completes decryption authorization by transmitting a dynamic password transmitted by a starting module to an application software operation tracking protection center; the application software running tracking protection center tracks the process which is registered to run, prevents other illegal processes from linking (attach) to the application software process, and performs DUMP operation. The method protects the JAVA application software from a plurality of directions, and well protects the copyright of the JAVA application software.
Drawings
FIG. 1 is a functional block diagram of the present invention;
FIG. 2 is a start-up flow diagram of the present invention;
FIG. 3 is a timing diagram of the communication protocol between software modules according to the present invention.
Detailed Description
In order to make the technical solutions of the present invention more clear and definite for those skilled in the art, the following describes the present invention in further detail by implementing the Linux system with the attached drawings, but the embodiments of the present invention are not limited thereto
As shown in fig. 1-3, a JAVA application copyright protection method based on encryption technology includes the following steps:
step 1: establishing a server for deploying application software and a data center for collecting and analyzing information of the server;
the data center is deployed in an application software operation tracking protection center;
the data center collects hardware information of a server deployed by application software, wherein the hardware information comprises a mainboard serial number and a CPU serial number and is used as subsequent encryption authorization basic data;
the hardware information also includes a MAC address;
step 2: the data center encrypts a CLASS file in an application software JAR package to generate an application software release JAR package, generates a file verification code of the application software JAR package, and makes an application software authorization certificate, wherein the certificate content comprises encrypted server hardware information, application software validity period information, a software encryption key, a client account number, a starting password and a software file verification code;
and step 3: establishing a software starting module in a server for deploying application software, wherein the software starting module is used for application software running registration, software decryption authorization verification and custom class loading decryption;
in this embodiment, when step 1 is executed, the server hardware information used by the client for deploying the application software is completed by the starting module, the starting module acquires the server hardware information (the motherboard serial number and the CPU serial number) and verifies the authorization certificate before starting the application software, and if the verification fails, the user is informed to send the server hardware information to the application software issuer to make the authorization certificate.
In this embodiment, when step 2 is executed, the encryption algorithm of the CLASS file of the JAR packet of the application software is encrypted by using a single byte, which has the advantages of simple algorithm and high encryption and decryption speed. Algorithm function form: f (b), (i), k (j)) c, converting the byte into another byte by the function, k (j) being the j-th character of the key string, decryption being the inverse of the function.
In this embodiment, the MD5 is used to generate the file verification code of the JAR package of application software, and the DES encryption algorithm is used to encrypt the file verification code, the JAR package encryption key of application software, the server hardware information, the software expiration date, and the start account password and store them in the authorization certificate.
When the step 3 is executed, the software starting module firstly verifies the account number password, then verifies the authorization certificate, acquires the hardware information of the current server and the server time, reads the encrypted data of the software authorization certificate, verifies the encrypted data after decryption, and the MD5 generates the verification code of the JAR packet of the current start and verifies the verification code in the authorization certificate;
after the software starts the authorization verification and passes, generating the software decryption authorization dynamic password, reading the software operating parameters in the authorization certificate, including: JAVA virtual machine configuration, software JAR package configuration, an operation log file, a software decryption key (ciphertext) and machine hardware information, and a starting command is executed to transmit the parameters and a decryption authorization dynamic password;
after the application software is started, software running registration is carried out, and a software decryption authorization dynamic password, a timestamp, an application software PID and an application software name are sent to a data center of an application software running tracking protection center for registration;
the CLASS loader reads CLASS file streams to be loaded by the JAR package of the application software, a software decryption key (ciphertext), machine hardware information, an application software name and a decryption authorization dynamic password and transmits the CLASS file streams, the software decryption key (ciphertext), the machine hardware information, the application software name and the decryption authorization dynamic password to the decryption dynamic link library through JNI;
the decryption dynamic link library acquires application software PID, a timestamp and a decryption authorization dynamic password one and sends the application software PID, the timestamp and the decryption authorization dynamic password one to an application software operation protection center, the protection center receives decryption authorization request data and verifies the data registered by the starting module, and decryption authority is successfully granted after verification; and after the decryption dynamic link library obtains the decryption authority, the machine hardware information is used for extracting a key decryption software decryption key (ciphertext), and the software decryption key (plaintext) is obtained to decrypt the encrypted CLASS file byte stream.
And 4, step 4: the data center monitors the running state of the registered application software in real time and prevents illegal software from being linked to the protected application software process to acquire the JVM memory byte code data.
Preferably, when step 2 is executed, the software authorization encryption process includes the following steps:
step A1: DES encryption is carried out through C language, a secret key is stored in a binary code file, and the tool is used for encrypting the hardware information, the software validity period information and the software version description information and storing the encrypted information in an authorization certificate;
step A2: encrypting the JAR packet of the application software through C + JAVA, reading a CLASS file in the JAR packet of the application software through JAVA language, realizing that a dynamic library completes the encryption function of the CLASS file through JNI by utilizing C language, encrypting a key DES encrypted by the JAR packet of the application software and then storing the encrypted key DES in an authorization certificate;
step A3: and the JAR package of the application software to be issued generates a verification code by using MD5, the verification code DES is encrypted and then stored in the authorization certificate, and meanwhile, the JAR package of the JAVA virtual machine issued together generates the verification code DES by using MD5 and then is encrypted and then stored in the authorization certificate.
Preferably, when step 3 is executed, the processing method of the software startup module includes the following steps:
step B1: acquiring the hardware information, a JAR (java application file) package of application software to be started and a JVM (java virtual machine) to generate an MD5 verification code, reading authorization ciphertext information DES in an authorization certificate, decrypting, comparing and checking, and starting to run after checking passes;
step B2: generating a software decryption authorization dynamic password, starting a JAVA virtual machine JVM, and transmitting operating parameters: JAR package path and name, JVM parameters include: a ReduceSignalUsage parameter, a DisenablAttachMechanism parameter, hardware information in a ciphertext form, a software decryption key and a decryption authorization dynamic password, wherein the ReduceSignalUsage parameter ignores SIGHUP \ SIGING \ SIGTETM signal, and the DisenablAttachMechanism parameter prohibits a tool from being connected to the JVM parameter;
step B3: sending application software process PID, application software name, software operation validity period, timestamp and decryption authorization dynamic password to a data center for registration;
step B4: and establishing a CLASS loader in the software starting module, wherein a decryption dynamic link library in the CLASS loader acquires a decryption authorization dynamic password, a timestamp and an application software process PID transmitted by the starting module, then transmits the decryption authorization dynamic password, the timestamp and the application software process PID to a data center to verify the decryption authorization dynamic password registered by the starting module, decrypts the CLASS file in the JAR packet by acquiring a corresponding software decryption authority and loads the CLASS file to the JAVA virtual machine.
Preferably, when step 4 is executed, the processing of the data center includes the following steps:
step C1: receiving a decryption authorization request from a decryption dynamic library in the class loader, and authorizing after authenticating;
and receiving an operation registration request packet (ciphertext) of the starting module for decryption, searching a software operation list (each item in the list describes the name, process ID, operation state, heartbeat time, software validity period and software decryption authorization dynamic password of the operation software), checking a timestamp, and updating the software operation list item.
As shown in fig. 3, the data of the communication protocol is completely encrypted, so as to prevent the communication data from being leaked and altered; the time stamp prevents intercepted playback of the protocol packet data.
Step C2: receiving a heartbeat request from the application software during running, forcibly killing the application software process if the heartbeat request of the registered application software is not received after overtime, and automatically quitting if the heartbeat request of the application software does not receive a response;
the heartbeat request is encrypted data;
and receiving a decryption authorization request packet (ciphertext) of a decryption dynamic library in class loading, decrypting to obtain a software name, a process ID, a timestamp and a decryption authorization dynamic password, verifying the timestamp and the decryption authorization dynamic password, and updating a software running list item by granting a software decryption authority.
After the application software starts to run, a heartbeat packet (ciphertext) is sent to the application software tracking protection center at regular time, the process ID is obtained after decryption, the protection center updates the software running list and returns a heartbeat response, if the application software does not obtain the heartbeat response after overtime, the protection center automatically quits, scans the software running list at regular time, and the application software process which is not updated after the overtime is forcibly killed.
Step C3: after receiving a registration request from a software starting module, starting a process to track the application JVM process, preventing other illegal processes from being linked to the application JVM process to perform illegal operation, and when the tracking process is maliciously terminated, an application software running tracking protection center can kill the tracked application software process in time;
after the application software starts to run, the protection center starts a tracking thread for each registered running application software, the tracking thread starts a strand pid l inux command to prevent other illegal processes from entering the application software process, when the strand process is forcibly terminated, the tracking thread exits and kills the tracked application software process, and when the application software exits from running, the tracking thread stops tracking and exiting.
Step C4: the data center periodically checks the application software registered in operation, and immediately terminates the application software process when finding that the validity period of the application software exceeds the validity period of the application software;
the application software tracking protection center periodically scans the JVMTI tool and hidden processes on the server.
The above description is only for the purpose of illustrating the present invention and is not intended to limit the scope of the present invention, and any person skilled in the art can substitute or change the technical solution of the present invention and its conception within the scope of the present invention.

Claims (4)

1. A JAVA application software copyright protection method based on encryption technology is characterized in that: the method comprises the following steps:
step 1: establishing a server for deploying application software and a data center for collecting and analyzing information of the server;
the data center is deployed in an application software operation tracking protection center;
the data center collects hardware information of a server deployed by application software, wherein the hardware information comprises a mainboard serial number and a CPU serial number and is used as subsequent encryption authorization basic data;
step 2: the data center encrypts a CLASS file in an application software JAR package to generate an application software release JAR package, generates a file verification code of the application software JAR package, and makes an application software authorization certificate, wherein the certificate content comprises encrypted server hardware information, application software validity period information, a software encryption key, a client account number, a starting password and a software file verification code;
and step 3: establishing a software starting module in a server for deploying application software, wherein the software starting module is used for application software running registration, software decryption authorization verification and custom class loading decryption;
and 4, step 4: the data center monitors the running state of the registered application software in real time and prevents illegal software from being linked to the protected application software process to acquire the JVM memory byte code data.
2. The JAVA application software copyright protection method based on encryption technology as claimed in claim 1, wherein: when step 2 is executed, the software authorization encryption process comprises the following steps:
step A1: DES encryption is carried out through C language, a secret key is stored in a binary code file, and the tool is used for encrypting the hardware information, the software validity period information and the software version description information and storing the encrypted information in an authorization certificate;
step A2: encrypting the JAR packet of the application software through C + JAVA, reading a CLASS file in the JAR packet of the application software through JAVA language, realizing that a dynamic library completes the encryption function of the CLASS file through JNI by utilizing C language, encrypting a key DES encrypted by the JAR packet of the application software and then storing the encrypted key DES in an authorization certificate;
step A3: and the JAR package of the application software to be issued generates a verification code by using MD5, the verification code DES is encrypted and then stored in the authorization certificate, and meanwhile, the JAR package of the JAVA virtual machine issued together generates the verification code DES by using MD5 and then is encrypted and then stored in the authorization certificate.
3. The JAVA application software copyright protection method based on encryption technology as claimed in claim 2, wherein: when step 3 is executed, the processing method of the software starting module comprises the following steps:
step B1: acquiring the hardware information, a JAR (java application file) package of application software to be started and a JVM (java virtual machine) to generate an MD5 verification code, reading authorization ciphertext information DES in an authorization certificate, decrypting, comparing and checking, and starting to run after checking passes;
step B2: generating a software decryption authorization dynamic password, starting a JAVA virtual machine JVM, and transmitting operating parameters: JAR package path and name, JVM parameters include: a ReduceSignalUsage parameter, a DisenablAttachMechanism parameter, hardware information in a ciphertext form, a software decryption key and a decryption authorization dynamic password, wherein the ReduceSignalUsage parameter ignores SIGHUP \ SIGING \ SIGTETM signal, and the DisenablAttachMechanism parameter prohibits a tool from being connected to the JVM parameter;
step B3: sending application software process PID, application software name, software operation validity period, timestamp and decryption authorization dynamic password to a data center for registration;
step B4: and establishing a CLASS loader in the software starting module, wherein a decryption dynamic link library in the CLASS loader acquires a decryption authorization dynamic password, a timestamp and an application software process PID transmitted by the starting module, then transmits the decryption authorization dynamic password, the timestamp and the application software process PID to a data center to verify the decryption authorization dynamic password registered by the starting module, decrypts the CLASS file in the JAR packet by acquiring a corresponding software decryption authority and loads the CLASS file to the JAVA virtual machine.
4. The method for protecting the copyright of the JAVA application software based on the encryption technology as claimed in claim 3, wherein: in performing step 4, the processing of the data center includes the steps of:
step C1: receiving a decryption authorization request from a decryption dynamic library in the class loader, and authorizing after authenticating;
step C2: receiving a heartbeat request from the application software during running, forcibly killing the application software process if the heartbeat request of the registered application software is not received after overtime, and automatically quitting if the heartbeat request of the application software does not receive a response;
the heartbeat request is encrypted data;
step C3: after receiving a registration request from a software starting module, starting a process to track the application JVM process, preventing other illegal processes from being linked to the application JVM process to perform illegal operation, and when the tracking process is maliciously terminated, an application software running tracking protection center can kill the tracked application software process in time;
step C4: the data center periodically checks the running application software, and the application software process is immediately terminated when the validity period of the application software is found to be over.
CN201911117378.9A 2019-11-15 2019-11-15 JAVA application software copyright protection method based on encryption technology Active CN110866226B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911117378.9A CN110866226B (en) 2019-11-15 2019-11-15 JAVA application software copyright protection method based on encryption technology

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911117378.9A CN110866226B (en) 2019-11-15 2019-11-15 JAVA application software copyright protection method based on encryption technology

Publications (2)

Publication Number Publication Date
CN110866226A true CN110866226A (en) 2020-03-06
CN110866226B CN110866226B (en) 2022-05-24

Family

ID=69654260

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911117378.9A Active CN110866226B (en) 2019-11-15 2019-11-15 JAVA application software copyright protection method based on encryption technology

Country Status (1)

Country Link
CN (1) CN110866226B (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111737657A (en) * 2020-06-16 2020-10-02 湖南省星岳天璇科技有限公司 Method for realizing authorization control on JAVA software based on license file
CN112395563A (en) * 2020-11-30 2021-02-23 广州市都享信息科技有限公司 Method and device for encrypting software product, storage medium and processor
CN112417380A (en) * 2020-11-24 2021-02-26 广州华资软件技术有限公司 License management system based on compiling technology
CN112579989A (en) * 2020-12-23 2021-03-30 杭州安司源科技有限公司 Anti-piracy method for network service software
CN112597517A (en) * 2020-12-25 2021-04-02 携程旅游网络技术(上海)有限公司 Encrypted communication method, system, device and medium for installing client
CN112764827A (en) * 2020-12-31 2021-05-07 重庆广播电视大学重庆工商职业学院 Java class hot loading method with safety verification
CN112765566A (en) * 2021-01-06 2021-05-07 航天信息股份有限公司 Method and device for safely generating authorization file
CN113378206A (en) * 2021-07-09 2021-09-10 中诚信征信有限公司 Software authorization encryption method, software authorization decryption method, software authorization encryption device, software authorization decryption device and software authorization decryption system
CN115129361A (en) * 2022-08-26 2022-09-30 北京亿赛通科技发展有限责任公司 Security reinforcement method and system for Java application program
CN115357870A (en) * 2022-10-20 2022-11-18 杭州比智科技有限公司 Authorization control method and system based on software

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1740940A (en) * 2005-09-09 2006-03-01 北京兆日科技有限责任公司 Method for realizing computer software intruder preventing edition based on confidence computation module chip
CN102346834A (en) * 2011-11-25 2012-02-08 武汉钢铁(集团)公司 Method for encrypting and protecting Java application software
CN103413073A (en) * 2013-07-09 2013-11-27 北京深思数盾科技有限公司 Method and equipment for protecting JAVA executable program
CN103971034A (en) * 2014-04-24 2014-08-06 福建联迪商用设备有限公司 Method and device for protecting Java software
KR101619458B1 (en) * 2016-03-02 2016-05-10 (주)케이사인 Application code obfuscating apparatus and method of obfuscating application code using the same
CN106407802A (en) * 2016-09-05 2017-02-15 北京蓝海讯通科技股份有限公司 Device, method and system for monitoring application security
CN106650341A (en) * 2016-11-18 2017-05-10 湖南鼎源蓝剑信息科技有限公司 Android application reinforcement method based on the process confusion technology
CN107430650A (en) * 2015-03-02 2017-12-01 因温特奥股份公司 Computer program is protected to resist reverse-engineering
CN108229161A (en) * 2016-12-15 2018-06-29 中国电信股份有限公司 Using monitoring method, device and terminal
CN109460674A (en) * 2018-10-23 2019-03-12 上海金档信息技术有限公司 A kind of JAVA application program guard method
CN110210188A (en) * 2019-06-04 2019-09-06 武汉神算云信息科技有限责任公司 Code encryption method, apparatus, equipment and storage medium under Spring frame
CN110348181A (en) * 2019-07-15 2019-10-18 广东名阳信息科技有限公司 A kind of method of verification software right to use legitimacy
CN112100582A (en) * 2020-09-22 2020-12-18 焦点教育科技有限公司 Method for protecting software distribution security by applying strong symmetric encryption

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1740940A (en) * 2005-09-09 2006-03-01 北京兆日科技有限责任公司 Method for realizing computer software intruder preventing edition based on confidence computation module chip
CN102346834A (en) * 2011-11-25 2012-02-08 武汉钢铁(集团)公司 Method for encrypting and protecting Java application software
CN103413073A (en) * 2013-07-09 2013-11-27 北京深思数盾科技有限公司 Method and equipment for protecting JAVA executable program
CN103971034A (en) * 2014-04-24 2014-08-06 福建联迪商用设备有限公司 Method and device for protecting Java software
CN107430650A (en) * 2015-03-02 2017-12-01 因温特奥股份公司 Computer program is protected to resist reverse-engineering
KR101619458B1 (en) * 2016-03-02 2016-05-10 (주)케이사인 Application code obfuscating apparatus and method of obfuscating application code using the same
CN106407802A (en) * 2016-09-05 2017-02-15 北京蓝海讯通科技股份有限公司 Device, method and system for monitoring application security
CN106650341A (en) * 2016-11-18 2017-05-10 湖南鼎源蓝剑信息科技有限公司 Android application reinforcement method based on the process confusion technology
CN108229161A (en) * 2016-12-15 2018-06-29 中国电信股份有限公司 Using monitoring method, device and terminal
CN109460674A (en) * 2018-10-23 2019-03-12 上海金档信息技术有限公司 A kind of JAVA application program guard method
CN110210188A (en) * 2019-06-04 2019-09-06 武汉神算云信息科技有限责任公司 Code encryption method, apparatus, equipment and storage medium under Spring frame
CN110348181A (en) * 2019-07-15 2019-10-18 广东名阳信息科技有限公司 A kind of method of verification software right to use legitimacy
CN112100582A (en) * 2020-09-22 2020-12-18 焦点教育科技有限公司 Method for protecting software distribution security by applying strong symmetric encryption

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111737657B (en) * 2020-06-16 2024-03-12 湖南省星岳天璇科技有限公司 Method for realizing authorization control on JAVA software based on license file
CN111737657A (en) * 2020-06-16 2020-10-02 湖南省星岳天璇科技有限公司 Method for realizing authorization control on JAVA software based on license file
CN112417380A (en) * 2020-11-24 2021-02-26 广州华资软件技术有限公司 License management system based on compiling technology
CN112417380B (en) * 2020-11-24 2024-05-17 广州华资软件技术有限公司 Licence management system based on compiling technology
CN112395563A (en) * 2020-11-30 2021-02-23 广州市都享信息科技有限公司 Method and device for encrypting software product, storage medium and processor
CN112579989A (en) * 2020-12-23 2021-03-30 杭州安司源科技有限公司 Anti-piracy method for network service software
CN112579989B (en) * 2020-12-23 2022-06-24 杭州安司源科技有限公司 Anti-piracy method for network service software
CN112597517A (en) * 2020-12-25 2021-04-02 携程旅游网络技术(上海)有限公司 Encrypted communication method, system, device and medium for installing client
CN112764827A (en) * 2020-12-31 2021-05-07 重庆广播电视大学重庆工商职业学院 Java class hot loading method with safety verification
CN112765566A (en) * 2021-01-06 2021-05-07 航天信息股份有限公司 Method and device for safely generating authorization file
CN113378206B (en) * 2021-07-09 2023-11-28 中诚信征信有限公司 Software authorization encryption method, software authorization decryption method, device and system
CN113378206A (en) * 2021-07-09 2021-09-10 中诚信征信有限公司 Software authorization encryption method, software authorization decryption method, software authorization encryption device, software authorization decryption device and software authorization decryption system
CN115129361A (en) * 2022-08-26 2022-09-30 北京亿赛通科技发展有限责任公司 Security reinforcement method and system for Java application program
CN115357870A (en) * 2022-10-20 2022-11-18 杭州比智科技有限公司 Authorization control method and system based on software

Also Published As

Publication number Publication date
CN110866226B (en) 2022-05-24

Similar Documents

Publication Publication Date Title
CN110866226B (en) JAVA application software copyright protection method based on encryption technology
JP3614057B2 (en) Access qualification authentication method and apparatus, and auxiliary information creation method and apparatus for certification
US9520990B2 (en) System and method for software protection and secure software distribution
KR100362219B1 (en) Method and system for distributing programs using tamper resistant processor
Kim et al. Predictability of Android OpenSSL's pseudo random number generator
US20090249492A1 (en) Fabrication of computer executable program files from source code
US10992480B2 (en) Method and system for performing a transaction and for performing a verification of legitimate access to, or use of digital data
US20070005974A1 (en) Method for transferring encrypted data and information processing system
US7370319B2 (en) System and method for regulating execution of computer software
CN110688660B (en) Method and device for safely starting terminal and storage medium
US20130151861A1 (en) System and method to protect computer software from unauthorized use
JP2013059078A (en) Multimedia data protection
KR20070001893A (en) Tamper-resistant trusted virtual machine
EP2064648A1 (en) Fabrication of computer executable program files from source code
US11063766B2 (en) Method and system for performing a transaction and for performing a verification of legitimate access to, or use of digital data
US20030217280A1 (en) Software watermarking for anti-tamper protection
CN114915504A (en) Security chip initial authentication method and system
US7721100B2 (en) Granting an access to a computer-based object
CN110445774B (en) Security protection method, device and equipment for IoT (Internet of things) equipment
CN108933790A (en) The encryption method of the OTA firmware updating of high safety grade
CN114070548A (en) Software copyright encryption protection method based on soft dongle device
CN112131536B (en) Method for preventing Java program from being decompiled
KR20150074128A (en) Method for downloading at least one software component onto a computing device, and associated computer program product, computing device and computer system
CN112597449B (en) Software encryption method, device, equipment and storage medium
WO2019136736A1 (en) Software encryption terminal, payment terminal, and software package encryption and decryption method and system

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
GR01 Patent grant
GR01 Patent grant