CN101872404B - Method for protecting Java software program - Google Patents

Method for protecting Java software program Download PDF

Info

Publication number
CN101872404B
CN101872404B CN2009100826241A CN200910082624A CN101872404B CN 101872404 B CN101872404 B CN 101872404B CN 2009100826241 A CN2009100826241 A CN 2009100826241A CN 200910082624 A CN200910082624 A CN 200910082624A CN 101872404 B CN101872404 B CN 101872404B
Authority
CN
China
Prior art keywords
software program
class file
intelligent key
key apparatus
user
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.)
Expired - Fee Related
Application number
CN2009100826241A
Other languages
Chinese (zh)
Other versions
CN101872404A (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.)
Potevio Information Technology Co Ltd
Original Assignee
Potevio Institute of 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 Potevio Institute of Technology Co Ltd filed Critical Potevio Institute of Technology Co Ltd
Priority to CN2009100826241A priority Critical patent/CN101872404B/en
Publication of CN101872404A publication Critical patent/CN101872404A/en
Application granted granted Critical
Publication of CN101872404B publication Critical patent/CN101872404B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention discloses a method for protecting a Java software program. The method comprises the following steps of: encrypting a class file to be protected in the Java software program with a key K by adopting a symmetric encryption algorithm to obtain a cipher text of the class file, encrypting the key K with a public key PK of an intelligent key device by adopting an asymmetric encryption algorithm to obtain a cipher text K' of the key K, and then storing the cipher text of the class file and the cipher text K' of the key K into the intelligent key device; and finally, providing the Java software program which do not contain the class file to be protected and the intelligent key device for a user to use. The method can improve the protection strength for the Java software program and realize effective software copyright protection.

Description

A kind of method of protecting the Java software program
Technical field
The present invention relates to the Software Protection Technique field, particularly a kind of method of protecting the Java software program.
Background technology
When code together offered the user in company with product, the method for software copyright protection and the technology of employing had determined whether the intellecture property of enterprise can be effectively protected.
Java language is a kind of interpreted languages.The Java source code generates byte code files through compiling, and the byte code files that is generated is explained execution in Java Virtual Machine (JVM).The operating mechanism that this explanation is carried out causes the Java source code to be easy to by decompiling.Present this decompiling instrument is a lot, and the effect of decompiling is also fine, make and the user's decompiling at an easy rate of any use Java software and the source code of reconstruct product become meaningless thereby all are permitted based on the authorization identifying of Java language.
Therefore, guarantee the Java software program not by decompiling and reconstruct or improve the difficulty of decompiling and reconstruct, be based on the major issue that the software copyright protection field of Java language need solve.
At present the mode that software is carried out copyright protection is based on the client-server pattern of network mostly, that is: communicate by the server in client and the network, comes the validity of checking client.But, when this mode is together issued in company with product at software, just no longer valid.
Intelligent key apparatus is widely used in the Software Protection Technique field.At present, the method for carrying out software program protection based on intelligent key apparatus mainly contains two kinds:
A kind of method is the function that the application programming interfaces (API) that provided of combined with intelligent key device manufacturer are transformed software program, in source code, embed visit, make software program and the data in the intelligent key apparatus or the algorithm binding of bytecode intelligent key apparatus.At the software program run duration, just can't normally move after making the important module of software program break away from intelligent key apparatus as much as possible, even the program file and the data file that leave in like this on the hard disk have been replicated, as long as intelligent key apparatus is not replicated, still need intelligent key apparatus to participate in during so owing to the software program operation, thereby software program also just can't be by piracy.The shortcoming of this method is: need very professional developer to implement the exploitation of software program, cause the construction cycle long, and the controllability of protection intensity is lower, protection intensity is subject to developer's experience.
Another kind method is that the tool software that utilizes intelligent key apparatus production firm to be provided is directly operated the program file that development environment generated, thereby makes this program file combine the defencive function module, and promptly shell is encrypted.The shell encryption mainly is meant is transformed by the structure of the program file that contains order code that compiler generated a foundation, another or a plurality of binary file fragment that contains order code can successfully be combined with this file, form a new program file.The shortcoming that shell is encrypted is: there is similarity in the process that cracks of the different application software that same shell Encryption Tool is protected, and protected content can be reappeared in calculator memory.It is comparatively loose that program code and later stage shell Encryption Tool insert code association, can separate and finally crack in theory.
As seen, the protection intensity of the method for existing protection Java software program is lower, can't provide effective copyright protection for the Java software program.
Summary of the invention
In view of this, fundamental purpose of the present invention is to provide a kind of method of the Java of protection software program, to improve the protection intensity to the Java software program, realizes effective software copyright protection.
For achieving the above object, technical scheme of the present invention specifically is achieved in that
A kind of method of protecting the Java software program comprises:
A, employing symmetric encipherment algorithm are encrypted the class file that needs protection in the Java software program with key K, obtain the ciphertext of described class file;
B, employing rivest, shamir, adelman are encrypted the PKI PK of described key K with intelligent key apparatus, obtain the ciphertext K ' of described key K;
C, the ciphertext of described class file and the ciphertext K ' of described key K are deposited in the described intelligent key apparatus;
D, the Java software program that will not comprise the described class file that needs protection and described intelligent key apparatus together offer the user and use.
The user uses the mode of described Java software program and intelligent key apparatus to comprise: described intelligent key apparatus is connected on the terminal, and moves described Java software program on described terminal.
Further, in the operational process of described Java software program, when needs called described class file, this method can comprise:
E, send the loading classes file command to described intelligent key apparatus;
F, described intelligent key apparatus carry out decryption function, with the private key SK of described intelligent key apparatus described ciphertext K ' are decrypted and obtain key K, and with the key K that obtains the ciphertext of described class file is decrypted and obtains described class file;
G, described intelligent key apparatus return to described class file the Installed System Memory of described terminal with the form of stream;
Class file in H, the described Installed System Memory of Java Virtual Machine dynamic load.
Preferably, before described intelligent key apparatus is carried out decryption function, may further include verification operation, described verification operation can comprise:
Server in the LAN (Local Area Network) of described terminal place sends the order of checking user certificate to described terminal, whether described intelligent key apparatus checking user's certificate is effective, if invalid, returns authentication failed to described server, if effectively, continue to carry out described decryption function.
This method may further include Java software program updating operation, and described Java software program updating operation can comprise:
Sign in to upgrade server by described terminal, send the software program upgrade request to described upgrade server; Described upgrade server is verified corresponding user according to the information of the intelligent key apparatus on the described terminal; if the checking result shows that described user is the disabled user; return the upgrading failure information to described terminal; otherwise; the class file that need protection of the key K corresponding to described user after will upgrading with storage in advance encrypted with key K; obtain the ciphertext of the class file that needs protection after the described upgrading, and described ciphertext is returned to intelligent key apparatus.
As seen from the above technical solution; the characteristics that the method for protection Java software program provided by the invention utilizes the private key in the intelligent key apparatus can not be derived in theory; by adopting symmetric encipherment algorithm the class file that needs protection in the Java software program is encrypted the ciphertext that obtains this class file with key K; and adopt rivest, shamir, adelman that this key K is encrypted the ciphertext K ' that obtains this key K with the PKI PK of intelligent key apparatus; ciphertext K ' with the ciphertext of this class file and this key K deposits in the intelligent key apparatus then, and the Java software program that will not comprise this class file that needs protection together offers user's use with this intelligent key apparatus.When the user need call protected class file at operation Java software program; call the decryption function in the intelligent key apparatus; decryption function adopts private key SK decrypting ciphertext K ' to obtain key K; and obtain class file with the ciphertext of key K deciphering class file; this class file is deposited in system for content by intelligent key apparatus; and by this class file of Java Virtual Machine dynamic load; thereby the level of security of Java software program is not brought up to the hardware-level of intelligent key apparatus by bytecode level; raising has realized effective software copyright protection to the protection intensity of Java software program.
In addition, also there is following several respects advantage in the present invention:
1) carrying out on the efficient: the execution efficient of considering asymmetric key algorithm is lower, the present invention adopts symmetric key algorithm, with a key K encrypt the class file that needs protection (this class file does not limit which function of specific implementation, so long as in the system important Core Feature just can) obtain the ciphertext of this class file; And adopt PKI PK in rivest, shamir, adelman and the intelligent key apparatus to encrypt this key K to obtain K '.The process of the ciphertext of checking permission, deciphering K ', deciphering class file all is to carry out in intelligent key apparatus inside; utilize the adding of intelligent key apparatus self, decipherment algorithm to carry out, will verify permission like this, protect additional programs that the Java code brought to drop to minimum the influence of running efficiency of system.
2) on software security: utilize private key in the intelligent key apparatus can't derive and inner can carry out add, the characteristics of decipherment algorithm, the class file that needs protection is encrypted with PKI PK.In the time of need calling this class file, inner deciphering obtains K to K ' with private key SK at intelligent key apparatus, and obtains class file with the ciphertext that K deciphers class file, again by the Java Virtual Machine dynamic load such.In the whole process, the unencrypted class file on the hard disk of system, do not occur,, need carry out violence to the private key in the intelligent key apparatus and obtain if think to crack by force this class file, and the level of security of private key is a hardware-level, can't be derived in theory.So, the level of security of Java software program is not brought up to hardware-level from bytecode level, guaranteed the security of Java software program.
3) on the scalable and extensibility of system: the method for the protection Java software program that the present invention proposes; be totally independent of the Java software program itself that needs protection; full decoupled closing between the both sides; therefore; the present invention protects the method for Java software program to have versatility; be not subject to the concrete software program that needs protection, therefore, it is simple and convenient to upgrade.In when upgrading, only need the class file that needs protection used according to the inventive method and encrypt, and replace original encrypted class file and get final product.Any one programmer can finish this task.In addition, the invention provides the scheme of supporting online remote upgrade.If purchaser wants upgrade software program only need attached intelligent key apparatus login upgrade server, upgrade server obtains the information of intelligent key apparatus, discerns the user automatically, and generates this user's upgrade file.The user can download and replace the legacy version file, finishes system upgrade, and the system upgrade cost is low, and extensibility is strong.And, can not leak by intelligent key apparatus assurance user profile, thereby guarantee the security that the user uses yet.
Description of drawings
Fig. 1 protects the principle schematic of the method for Java software program for the present invention;
The method synoptic diagram of the class file that Fig. 2 is encrypted for the present invention obtains;
Fig. 3 is the schematic flow sheet of Java software program updating operation of the present invention.
Embodiment
For making purpose of the present invention, technical scheme and advantage clearer, below with reference to the accompanying drawing embodiment that develops simultaneously, the present invention is described in further detail.
When code is together issued in company with product, and total system operates in the LAN (Local Area Network) of a sealing when inner, for example network memory management system and ERP system etc., and their characteristics are to verify the user's of this system of purchase licence by the internet.And system requirements has professional platform independence, and server requirement is had the security of height, and existing Software Protection Technique based on Java language is all easily by decompiling with crack.Given this, the present invention introduces intelligent key apparatus in the system based on Java language, the level of security of Java software program is not brought up to hardware-level based on intelligent key apparatus from bytecode level, transfer to and crack intelligent key apparatus by cracking the Java code, crack difficulty with reconstruct thereby improve the Java software program greatly.
Fig. 1 protects the principle schematic of the method for Java software program for the present invention.Referring to Fig. 1, this method may further comprise the steps:
Step 101: adopt symmetric encipherment algorithm that the class file that needs protection in the Java software program is encrypted with key K, obtain the ciphertext of this class file.
In this step, the class file that needs protection can be determined according to the needs of practical application.Preferably, can comprise the functional module that user right is obtained in user's login, so, can prevent to be used in the management system verify that the code of user license is isolated.
Step 102: adopt rivest, shamir, adelman that the PKI PK of this key K with intelligent key apparatus encrypted, obtain the ciphertext K ' of this key K.
Here, can issue certificate for the user, and the PKI that is generated is derived by the built-in unsymmetrical key generating algorithm of intelligent key apparatus.
Step 103: the ciphertext of this class file and the ciphertext K ' of this key K are deposited in this intelligent key apparatus.
Step 104: Java software program and this intelligent key apparatus that will not comprise this class file that needs protection together offer user's use.
The user is connected to this intelligent key apparatus on the terminal when concrete this Java software program of use and intelligent key apparatus, and this Java software program of operation gets final product on this terminal.Preferably, can also add verification operation to the user, this verification operation comprises: the server in the LAN (Local Area Network) of terminal place sends the order of checking user certificate to this terminal, whether this intelligent key apparatus checking user's certificate is effective, if it is invalid, return authentication failed to server,, continue normally operation if effectively.
In the operational process of Java software program, when needs call the aforementioned encrypted class file that is kept in the intelligent key apparatus, can carry out according to method shown in Figure 2.The method synoptic diagram of the class file that Fig. 2 is encrypted for the present invention obtains.Referring to Fig. 2, may further comprise the steps:
Step 201: the Java Virtual Machine in the terminal sends the loading classes file command to intelligent key apparatus.
Step 202: intelligent key apparatus is carried out decryption function, with the private key SK of intelligent key apparatus ciphertext K ' is decrypted and obtains key K.
Step 203: intelligent key apparatus is decrypted the ciphertext of class file with the key K that obtains and obtains class file.
Step 204: intelligent key apparatus returns to the Installed System Memory of terminal, the class file in the Java Virtual Machine dynamic loading system internal memory with class file with the form of stream.
In this step, Java Virtual Machine can with User Defined pattern dynamic load such, like this, in Java Virtual Machine, dynamically generated such example.
Fig. 3 is the schematic flow sheet of Java software program updating operation of the present invention.Referring to Fig. 3, Java software program updating operation comprises:
Step 301: the terminal that the user will attach intelligent key apparatus is connected to the internet, and signs in to upgrade server (or upgrading website), sends the software program upgrade request to this upgrade server.
In this step, the user can sign to upgrade request with the private key of oneself, and the upgrade request after will signing sends to upgrade server.
Step 302: upgrade server is verified corresponding user according to the information of the intelligent key apparatus on this terminal.If the checking result shows that described user is the disabled user, then fail as updating result with upgrading, jump to step 304; Otherwise, continue execution in step 303.
In this step, upgrade server can be verified the signature through this user with this user's PKI, to determine whether this user is validated user.
Step 303: the information according to this user accesses the key K corresponding to this user of storage in advance from database; the class file that needs protection after the upgrading is encrypted with key K; obtain the ciphertext of the class file that needs protection after this upgrading; described ciphertext as updating result, is continued execution in step 304.
Step 304: upgrade server returns to intelligent key apparatus with updating result.
As seen from the above-described embodiment, the method for the protection Java software program that the present invention proposes is not destroyed the function code of former Java software program, does not add the relevant code of any protection, makes code protection and protected code de.The method of this protection Java software program can be written as an encipheror separately, is widely used the system based on Java language.And, adopt the inventive method upgrading convenient, can be provided in the function of line upgrading, if purchaser wants upgrade software program, only need attach intelligent key apparatus login upgrade server, upgrade server obtains the information of intelligent key apparatus, discerns the user automatically, and generates this user's upgrade file.The user can download and replace the legacy version file, finishes system upgrade, and the system upgrade cost is low, and extensibility is strong.And, can not leak by intelligent key apparatus assurance user profile, thereby guarantee the security that the user uses yet.And the deciphering class file is a symmetric encipherment algorithm, carries out the efficient height, and is little to the system performance influence.
The above is preferred embodiment of the present invention only, is not to be used to limit protection scope of the present invention.All any modifications of being done within the spirit and principles in the present invention, be equal to replacement, improvement etc., all should be included within protection scope of the present invention.

Claims (3)

1. a method of protecting the Java software program is characterized in that, comprising:
A, employing symmetric encipherment algorithm are encrypted the class file that needs protection in the Java software program with key K, obtain the ciphertext of described class file;
B, employing rivest, shamir, adelman are encrypted the PKI PK of described key K with intelligent key apparatus, obtain the ciphertext K ' of described key K;
C, the ciphertext of described class file and the ciphertext K ' of described key K are deposited in the described intelligent key apparatus;
D, the Java software program that will not comprise the described class file that needs protection and described intelligent key apparatus together offer the user and use;
The user uses the mode of described Java software program and intelligent key apparatus to comprise: described intelligent key apparatus is connected on the terminal, and moves described Java software program on described terminal;
In the operational process of described Java software program, when needs called described class file, this method further comprised:
E, send the loading classes file command to described intelligent key apparatus;
F, described intelligent key apparatus carry out decryption function, with the private key SK of described intelligent key apparatus described ciphertext K ' are decrypted and obtain key K, and with the key K that obtains the ciphertext of described class file is decrypted and obtains described class file;
G, described intelligent key apparatus return to described class file the Installed System Memory of described terminal with the form of stream;
Class file in H, the described Installed System Memory of Java Virtual Machine dynamic load.
2. method according to claim 1 is characterized in that:
Before described intelligent key apparatus is carried out decryption function, further comprise verification operation, described verification operation comprises:
Server in the LAN (Local Area Network) of described terminal place sends the order of checking user certificate to described terminal, whether described intelligent key apparatus checking user's certificate is effective, if invalid, returns authentication failed to described server, if effectively, continue to carry out described decryption function.
3. method according to claim 1 and 2 is characterized in that:
This method further comprises Java software program updating operation, and described Java software program updating operation comprises:
Sign in to upgrade server by described terminal, send the software program upgrade request to described upgrade server; Described upgrade server is verified corresponding user according to the information of the intelligent key apparatus on the described terminal; if the checking result shows that described user is the disabled user; return the upgrading failure information to described terminal; otherwise; the class file that need protection of the key K corresponding to described user after will upgrading with storage in advance encrypted with key K; obtain the ciphertext of the class file that needs protection after the described upgrading, and described ciphertext is returned to intelligent key apparatus.
CN2009100826241A 2009-04-21 2009-04-21 Method for protecting Java software program Expired - Fee Related CN101872404B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100826241A CN101872404B (en) 2009-04-21 2009-04-21 Method for protecting Java software program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100826241A CN101872404B (en) 2009-04-21 2009-04-21 Method for protecting Java software program

Publications (2)

Publication Number Publication Date
CN101872404A CN101872404A (en) 2010-10-27
CN101872404B true CN101872404B (en) 2011-12-07

Family

ID=42997261

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100826241A Expired - Fee Related CN101872404B (en) 2009-04-21 2009-04-21 Method for protecting Java software program

Country Status (1)

Country Link
CN (1) CN101872404B (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102087605B (en) * 2011-01-28 2014-05-07 宇龙计算机通信科技(深圳)有限公司 Android-based platform application installation control method and system
CN103413069B (en) * 2013-07-08 2016-09-07 北京深思数盾科技股份有限公司 A kind of method of the software protecting object oriented language to write
CN104657635A (en) * 2013-11-20 2015-05-27 方正信息产业控股有限公司 Application processing method, device and server
CN103825737B (en) * 2013-12-30 2017-05-17 北京金玉衡科技有限责任公司 Security apparatus, system and method for on-line upgrading of industrial control system
CN105022936A (en) * 2014-04-30 2015-11-04 北京畅游天下网络技术有限公司 Class file encryption and decryption method and class file encryption and decryption device
CN103995992A (en) * 2014-05-28 2014-08-20 全联斯泰克科技有限公司 Method and device for protecting software
CN106203002B (en) * 2015-05-06 2019-09-03 朗新科技股份有限公司 Software product guard method
CN105847005B (en) * 2016-03-14 2020-04-17 美的集团股份有限公司 Encryption device and method
CN106971119A (en) * 2017-02-24 2017-07-21 江苏信源久安信息科技有限公司 The key data in database safe read-write authentication method of trusted identity
CN108563927A (en) * 2018-04-26 2018-09-21 惠州市德赛西威汽车电子股份有限公司 A kind of packaging ciphering method of host upgrading software
CN109889518B (en) * 2019-02-18 2022-02-15 天固信息安全系统(深圳)有限责任公司 Encryption storage method
CN111177753B (en) * 2019-12-24 2021-03-23 广州极点三维信息科技有限公司 Encryption processing method, device and equipment for Java content warehouse data

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1208193A (en) * 1997-04-30 1999-02-17 索尼公司 Information processing apparatus and method and recording medium
CN101149768A (en) * 2006-09-20 2008-03-26 展讯通信(上海)有限公司 Special processor software encryption and decryption method
CN101149775A (en) * 2006-09-20 2008-03-26 展讯通信(上海)有限公司 Encryption and decryption method for realizing hardware and software binding
CN201181472Y (en) * 2008-02-29 2009-01-14 北京华大恒泰科技有限责任公司 Hardware key device and movable memory system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1208193A (en) * 1997-04-30 1999-02-17 索尼公司 Information processing apparatus and method and recording medium
CN101149768A (en) * 2006-09-20 2008-03-26 展讯通信(上海)有限公司 Special processor software encryption and decryption method
CN101149775A (en) * 2006-09-20 2008-03-26 展讯通信(上海)有限公司 Encryption and decryption method for realizing hardware and software binding
CN201181472Y (en) * 2008-02-29 2009-01-14 北京华大恒泰科技有限责任公司 Hardware key device and movable memory system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特開2005-275694A 2005.10.06

Also Published As

Publication number Publication date
CN101872404A (en) 2010-10-27

Similar Documents

Publication Publication Date Title
CN101872404B (en) Method for protecting Java software program
US20210294879A1 (en) Securing executable code integrity using auto-derivative key
CN103221961B (en) Comprise the method and apparatus of the framework for the protection of multi-ser sensitive code and data
JP4702957B2 (en) Tamper resistant virtual machine
KR101712784B1 (en) System and method for key management for issuer security domain using global platform specifications
US8660964B2 (en) Secure device licensing
CN102047220B (en) System and method for generating white-box implementations of software applications
CN102073826B (en) Utilize the system and method for the digital copyright management of lightweight digital watermark adding component
KR101284676B1 (en) Cryptography-based copy protection system and method for android apps
US8205096B2 (en) Software license embedded in shell code
JP5636371B2 (en) Method and system for code execution control in a general purpose computing device and code execution control in a recursive security protocol
CN104318135B (en) A kind of Java code Safety actuality loading method based on credible performing environment
US20040093505A1 (en) Open generic tamper resistant CPU and application system thereof
CN101957903A (en) Method and device for protecting class files
JPH0789345B2 (en) A safety system for remotely launching personal computer software.
CN109992987B (en) Script file protection method and device based on Nginx and terminal equipment
CN103971034A (en) Method and device for protecting Java software
US10108786B2 (en) Process and device for encoding of source files for secure delivery of source code
CN102289632A (en) Method for encrypting executable file under condition of unknown software source code
JP2007257626A (en) Method and device for temporarily using content using temporary license
KR20090014575A (en) Apparatus and method for sharing drm agents
EP2517140B1 (en) Securing execution of computational resources
KR101711024B1 (en) Method for accessing temper-proof device and apparatus enabling of the method
CN115795438A (en) Method and system for authorizing application program and readable storage medium
KR101604892B1 (en) Method and devices for fraud prevention of android-based applications

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: CHINA POTEVIO CO., LTD.

Free format text: FORMER OWNER: PUTIAN IT TECH INST CO., LTD.

Effective date: 20130304

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20130304

Address after: 100080, No. two, 2 street, Zhongguancun science and Technology Park, Beijing, Haidian District

Patentee after: CHINA POTEVIO CO.,LTD.

Address before: 100080 Beijing, Haidian, North Street, No. two, No. 6, No.

Patentee before: PETEVIO INSTITUTE OF TECHNOLOGY Co.,Ltd.

ASS Succession or assignment of patent right

Owner name: PUTIAN IT TECH INST CO., LTD.

Free format text: FORMER OWNER: CHINA POTEVIO CO., LTD.

Effective date: 20130312

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20130312

Address after: 100080 Beijing, Haidian, North Street, No. two, No. 6, No.

Patentee after: PETEVIO INSTITUTE OF TECHNOLOGY Co.,Ltd.

Address before: 100080, No. two, 2 street, Zhongguancun science and Technology Park, Beijing, Haidian District

Patentee before: CHINA POTEVIO CO.,LTD.

PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method for protecting Java software program

Effective date of registration: 20131210

Granted publication date: 20111207

Pledgee: Bank of Beijing Limited by Share Ltd. Century City Branch

Pledgor: PETEVIO INSTITUTE OF TECHNOLOGY Co.,Ltd.

Registration number: 2013990000954

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
C56 Change in the name or address of the patentee

Owner name: POTEVIO INFORMATION TECHNOLOGY CO., LTD.

Free format text: FORMER NAME: PUTIAN IT TECH INST CO., LTD.

CP01 Change in the name or title of a patent holder

Address after: 100080 Beijing, Haidian, North Street, No. two, No. 6, No.

Patentee after: POTEVIO INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 100080 Beijing, Haidian, North Street, No. two, No. 6, No.

Patentee before: PETEVIO INSTITUTE OF TECHNOLOGY Co.,Ltd.

PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20151102

Granted publication date: 20111207

Pledgee: Bank of Beijing Limited by Share Ltd. Century City Branch

Pledgor: POTEVIO INFORMATION TECHNOLOGY Co.,Ltd.

Registration number: 2013990000954

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PM01 Change of the registration of the contract for pledge of patent right

Change date: 20151102

Registration number: 2013990000954

Pledgor after: POTEVIO INFORMATION TECHNOLOGY Co.,Ltd.

Pledgor before: PETEVIO INSTITUTE OF TECHNOLOGY Co.,Ltd.

PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method for protecting Java software program

Effective date of registration: 20151105

Granted publication date: 20111207

Pledgee: Bank of Beijing Limited by Share Ltd. Century City Branch

Pledgor: POTEVIO INFORMATION TECHNOLOGY Co.,Ltd.

Registration number: 2015990000948

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20161008

Granted publication date: 20111207

Pledgee: Bank of Beijing Limited by Share Ltd. Century City Branch

Pledgor: POTEVIO INFORMATION TECHNOLOGY Co.,Ltd.

Registration number: 2015990000948

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method for protecting Java software program

Effective date of registration: 20161011

Granted publication date: 20111207

Pledgee: Bank of Beijing Limited by Share Ltd. Century City Branch

Pledgor: POTEVIO INFORMATION TECHNOLOGY Co.,Ltd.

Registration number: 2016990000859

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20170802

Granted publication date: 20111207

Pledgee: Bank of Beijing Limited by Share Ltd. Century City Branch

Pledgor: POTEVIO INFORMATION TECHNOLOGY Co.,Ltd.

Registration number: 2016990000859

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20111207

Termination date: 20210421