CN104392151A - Software protection method and system - Google Patents

Software protection method and system Download PDF

Info

Publication number
CN104392151A
CN104392151A CN201410707880.6A CN201410707880A CN104392151A CN 104392151 A CN104392151 A CN 104392151A CN 201410707880 A CN201410707880 A CN 201410707880A CN 104392151 A CN104392151 A CN 104392151A
Authority
CN
China
Prior art keywords
code
software
intermediate code
server
security system
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
CN201410707880.6A
Other languages
Chinese (zh)
Other versions
CN104392151B (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.)
Beijing Senseshield Technology Co Ltd
Original Assignee
Beijing Senseshield 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 Senseshield Technology Co Ltd filed Critical Beijing Senseshield Technology Co Ltd
Priority to CN201410707880.6A priority Critical patent/CN104392151B/en
Publication of CN104392151A publication Critical patent/CN104392151A/en
Application granted granted Critical
Publication of CN104392151B publication Critical patent/CN104392151B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/125Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code

Landscapes

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

Abstract

The invention discloses a software protection method. The method includes the steps: on receiving a software code snippet to be protected and remotely uploaded, a server processes the software code snippet into an intermediate code and stores the intermediate code; on receiving a call request aiming at the software code snippet and remotely transmitted, the server executes the intermediate code according to the call request and returns execution results. The invention further discloses a corresponding software protection system. The software protection method and system has the advantages that software security is higher, no limits on operating systems and hardware occur, and extensibility is high.

Description

A kind of method for protecting software and system
Technical field
The present invention relates to computer software fields, be specifically related to a kind of method for protecting software and system.
Background technology
In field of software protection, the general method for protecting software of current Application comparison is code migrating.The usual way of code migrating is transplanted to by some code segments necessary for running software in " security context " to run; by the mode of this hiding software section code logic; degree close to software-rewritten can be brought up to by cracking difficulty; considerably increase and crack difficulty, achieve the protection to software.
Traditional " security context " normally specific hardware, such as, based on the encryption lock of smart card.But find in practice, also there are some problems in these secure hardwares while providing safeguard protection: 1), secure hardware can not mate with PC usually at aspect of performance, causes actual transplantable code limited, thus reduce software crack difficulty; 2), encryption lock as hardware device, logistics cost is high, limits the quick distributed software of developer.
Summary of the invention
In view of this, the invention provides a kind of method for protecting software based on cloud code migrating and system, to solve in existing method of software Protection the defect being subject to hardware performance restriction, poor stability, extendability difference.
Method for protecting software provided by the invention comprises: server receives the software code sections to be protected of long-distance Log server, described software code sections is treated to intermediate code and preserves; When server receives the call request for described software code sections of long-range transmission, perform described intermediate code according to described call request, and return execution result.
As preferably, described software code sections is treated to intermediate code and preserves and be specially: process of compilation is carried out to described software code sections, and the code chain generated through process of compilation is received and develops same code library that software belonging to described software code sections uses to generate described intermediate code and to preserve.
As preferably, perform described intermediate code according to described call request and specifically comprise: according to described call request, read the described intermediate code of storage and be saved in the local file system of server; The path of described intermediate code in described local file system and the user's request msg in described call request are input in the code execution module of server; Performed described intermediate code by the code execution module of described server and obtained execution result.
As preferably, during described code execution module performs described intermediate code, by reading described user's request msg with the same code library that software belonging to the described software code sections of exploitation uses and export intermediate code implementation data and/or intermediate code execution result.
As preferably, described user's request msg, before the described intermediate code of execution, is mapped in the internal memory of server or local file system to be read by described code library by described code execution module.
As preferably, server is encrypted it before the described intermediate code of preservation, and is decrypted process when needs perform described intermediate code to encrypted intermediate code.
As preferably, by compiler, described software code sections is treated to intermediate code, described compiler can be underlying virtual machine.
As preferably, described intermediate code is kept in shared data bank or distributed file system by server.
As preferably, perform described intermediate code by compiler, described compiler can be underlying virtual machine.
As preferably, described server is cloud lock server.
Security system for software provided by the invention comprises: communication module, and it is configured to the software code sections to be protected receiving long-distance Log server, receives the call request for described software code sections of long-range transmission, and result is called in transmission; Processing module, it is configured to described software code sections to be treated to intermediate code; Memory module, it preserves described intermediate code; Execution module, it is configured to perform described intermediate code according to described call request, and execution result is sent to described communication module and call result as described.
As preferably, described processing module concrete configuration is: carry out process of compilation to described software code sections, and is received by the code chain generated through process of compilation and develop same code library that software belonging to described software code sections uses to generate described intermediate code.
As preferably, described execution module concrete configuration is: receive user's request msg in the routing information of described intermediate code and described call request to perform described intermediate code and to obtain execution result.
As preferably; described security system for software also comprises the same code library used with software belonging to the described software code sections of exploitation; it is configured to during described execution module performs described intermediate code, reads described user's request msg and exports intermediate code implementation data and/or intermediate code execution result.
As preferably, described execution module concrete configuration is before the described intermediate code of execution, described user's request msg is mapped in the internal memory of described security system for software or local file system to be read by described code library.
As preferably, described security system for software also comprises encryption/decryption module, and it is configured to be encrypted it before described intermediate code is saved, and is decrypted process when described intermediate code will be performed to encrypted intermediate code.
As preferably, described processing module is realized by compiler, and described compiler can be underlying virtual machine.
As preferably, described memory module is realized by shared data bank or distributed file system.
As preferably, described code execution module is realized by compiler, and described compiler can be underlying virtual machine.
As preferably, described security system for software is realized by cloud lock server.
The present invention is by directly uploading onto the server the script personal code work be transplanted in hardware; treated generation intermediate code in the server; and when receiving call request in the server simulator program call; the safety protective effect same with secure hardware device can be realized; and not by the restriction of hardware performance; the size of code of transplanting can be increased simultaneously, improve the security of software.And, preserve with intermediate code form in the server and transplant code, be not therefore subject to the restriction of operating system and hardware, can cross-platform operation be realized, there is very strong extendability.
Accompanying drawing explanation
Fig. 1 is the schematic flow sheet of an embodiment of method for protecting software of the present invention;
Fig. 2 is the schematic flow sheet of another embodiment of method for protecting software of the present invention;
Fig. 3 is the schematic flow sheet of the process performing intermediate code in Fig. 2;
Fig. 4 is block schematic illustration embodiment illustrated in fig. 2.
Fig. 5 is the structured flowchart of an embodiment of security system for software of the present invention.
Embodiment
For making object of the present invention, technical scheme and advantage clearly understand, to develop simultaneously embodiment referring to accompanying drawing, the present invention is described in more detail.
Fig. 1 shows the schematic flow sheet of an embodiment of method for protecting software of the present invention.
As shown in Figure 1, method for protecting software of the present invention comprises, and when server receives the software code sections to be protected of long-distance Log server, described software code sections is treated to intermediate code and preserves; And when server receives the call request for described software code sections of long-range transmission, perform described intermediate code according to described call request, and return execution result.
In the present embodiment, this software code sections, whenever receiving the software code sections new to be protected of long-distance Log server, is just treated to intermediate code and saves by server.Server successively can receive multiple software code sections to be protected, preserves respectively after being respectively treated to corresponding intermediate code.Server receive at every turn to have uploaded for certain and the call request of processed software code sections time, perform corresponding intermediate code according to this call request and also return execution result.
By method of the present invention; the script personal code work be transplanted in secure hardware device is uploaded onto the server; treated generation intermediate code in the server; and when receiving call request in the server simulator program call; the safety protective effect same with secure hardware device can be realized; and not by the restriction of hardware performance, the size of code of transplanting can be increased simultaneously, improve the security of software.And the present invention preserves with intermediate code form in the server and transplants code, is not therefore subject to the restriction of operating system and hardware, can realizes cross-platform operation, have very strong extendability.
In an embodiment of the invention; server is when receiving software code sections to be protected; process of compilation can be carried out to this software code sections; and the code chain generated through process of compilation is received and develops same code library that software belonging to this software code sections uses to generate intermediate code and to preserve, so that subsequent calls.
In another embodiment of the present invention, server is when receiving the call request of long-range transmission, can the intermediate code of the correspondence stored be read according to this call request and be saved in the local file system of server, then the path of intermediate code in local file system and the user's request msg in call request are input in the code execution module of server, perform this intermediate code by code execution module and obtain execution result.During code execution module performs intermediate code, in the internal memory that user's request msg can be mapped to server or local file system, and by reading user's request msg with the same code library that software belonging to the described software code sections of exploitation uses and export intermediate code implementation data and/or intermediate code execution result.So, can when receiving call request in the server simulator program call intermediate code produce call result, improve the security of protected software program.
As Alternate embodiments, server is preserved after can being encrypted it when generating intermediate code again, and reads out encrypted intermediate code when needs perform this intermediate code, is decrypted process, then performs intermediate code to it.So, software security can be improved further.
In embodiments of the present invention, the intermediate code of generation or encrypted intermediate code can be kept in arbitrary memory node of local shared data bank or distributed file system so that access by server.
In addition, described software code sections can be treated to intermediate code by compiler by the present invention, described intermediate code can also be performed by compiler, compiler can be that bottom (also known as low order) virtual machine is (also known as LLVM, abbreviation for Low Level Virtual Maine), but the present invention is not limited to this, for generating and perform the compiler of intermediate code except LLVM in the embodiment of the present invention, other existing compilers can also be used, or use self-defining compiler.
For technical scheme of the present invention is better described, at this, underlying virtual machine LLVM is described.LLVM is the frame system of framework compiler, writes form with C++, for optimizing with the compilation time of the program of random procedure language compilation, link time, execution time and " standby time ", keeps open to developer, and compatible existing script.LLVM generates intermediate code but not object code, thus can play its potential and don't injury adjustable on the target system better.
Technical scheme described in the embodiment of the present invention is not only applicable to Windows operating system, is also applicable to the operating system that other are different, as Linux etc.
Server in the embodiment of the present invention can be cloud lock server; cloud lock server is that one is carried out for the purpose of soft ware authorization protection and data protection; carry out empowerment management for user identity identification, a kind of long-distance protective device of custom feature and logical code can be run.Some expanding libraries are also comprised, as cryptographic algorithm storehouse, database storage interface, disk file storage vault, IO input/output library etc. in cloud lock server.
Software code sections to be protected in the embodiment of the present invention can be the code segment in the software program of the second developed library exploitation provided according to developer (SS).What second developed library provided for developer includes but not limited to the code library that I/O operates.Second developed library mainly conveniently personal code work obtain its data in request process, in addition, be also used for the execution result of personal code work to return to service call layer, and finally return to user.
Fig. 2 is the schematic flow sheet of another embodiment of method for protecting software of the present invention, and Fig. 3 is the schematic flow sheet of the process of execution intermediate code in Fig. 2.
In the present embodiment, server is cloud lock server, and its operating system used is Windows system, and the compiler used in cloud lock server is LLVM, and the general api interface storehouse that second developed library used provides for developer, this api interface storehouse is Evses storehouse.
As shown in Figure 2, the method for protecting software of the present embodiment specifically comprises:
S1, personal code work to be protected uploaded to cloud lock server;
Wherein, the software code sections to be protected in the software of the Evses storehouse exploitation that this personal code work provides according to developer for user, the software of this exploitation is standard C executable program.
Personal code work is compiled as LLVM code BinaryCode by LLVM by S2, cloud lock server;
LLVM code BinaryCode links with Evses storehouse by the linker that S3, cloud lock server is provided by LLVM, generates intermediate code Final.bc;
Intermediate code Final.bc is saved in shared data bank by S4, cloud lock server;
S5, protected software operationally send the call request for above-mentioned personal code work to cloud lock server;
The lock server identification of S6, cloud also resolves call request, obtains valid data wherein, reads intermediate code Final.bc, and be saved in local file system from shared data bank;
Wherein, above-mentioned valid data comprise such as user's input parameter.The rules such as the data layout that above-mentioned identification and parsing adopt can be consulted to determine by user side and server end both sides according to demand.
S7, cloud lock server calls code execution module, and user's request msg (as user's input parameter), the absolute path of intermediate code Final.bc in local file system are input to code execution module;
S8, code execution module perform intermediate code by LLVM, and return execution result.
As shown in Figure 3, in above-mentioned steps S8, code execution module performs the second intermediate code by LLVM, and the detailed process returning execution result comprises:
User's request msg is mapped in internal memory or local file system by S81, code execution module, such as, be saved in common buffer by the user's input parameter in user's request msg;
S82, code execution module perform Final.bc by LLVM, i.e. personal code work implementation, in implementation, carry out I/O operation by Evses storehouse, read user data, and the data in implementation or execution result are exported by Evses storehouse;
Output data after S83, code execution module reading Final.bc is finished also return to service call layer.
Fig. 4 is block schematic illustration embodiment illustrated in fig. 2.
As shown in the figure, at user side, user's upload user code or call request lock server to cloud.
At server end, when receiving personal code work, compiling link being carried out to this personal code work and is treated to intermediate code, specifically comprising: 1, personal code work being compiled as LLVM intermediate code; 2, the LLVM intermediate code that compiling obtains is linked to the Evses storehouse that developer provides, obtains required intermediate code.As required, be saved in shared data bank again after can being encrypted the intermediate code obtained after link, and be decrypted again when needs perform intermediate code.
When server receives call request, read intermediate code and be saved in local file system, the path of intermediate code is sent to code execution module together with the user's input parameter in call request.User's input parameter is saved in common buffer and can be accessed to it by code execution module, then utilizes LLVM to perform intermediate code, the term of execution Evses can be used to carry out I/O operation, last code execution module obtains execution result.
Fig. 5 is the structured flowchart of an embodiment of security system for software of the present invention.
As shown in the figure, the security system for software of the embodiment of the present invention comprises communication module 1, processing module 2, memory module 3 and execution module 4.Wherein, communication module 1 receives the to be protected software code sections of client from long-distance Log server, receive the call request for this software code sections of client from long-range transmission, and transmission calls result to Terminal Server Client.The software code sections that communication module 1 receives is treated to intermediate code by processing module 2, and is kept in memory module 3.Execution module 4 is when communication module 1 receives the call request of client remote transmission, corresponding intermediate code is performed according to this call request, and execution result is sent to described communication module 1, by communication module 1, execution result is returned to Terminal Server Client as calling result.Described security system for software in the embodiment of the present invention can be locked server by cloud and realize.
In one embodiment of the invention, processing module 2 can concrete configuration for carry out process of compilation to described software code sections, and the code chain generated through process of compilation is received and develops same code library that software belonging to described software code sections uses to generate described intermediate code.Here code library can be the second developed library that developer provides, such as general api interface storehouse.
According to another embodiment of the invention, execution module 4 can concrete configuration be receive user's request msg in the routing information of intermediate code and call request to perform intermediate code and to obtain execution result.Here, the access path when routing information of intermediate code is reading intermediate code and is saved in local file system.
As embodiment; security system for software of the present invention also comprises above-mentioned second developed library; during execution module 4 performs intermediate code, read user's request msg by this second developed library and export intermediate code implementation data and/or intermediate code execution result.Execution module 4 can in commission between before code, user's request msg is mapped in internal memory or local file system, so that second developed library can read this user's request msg.
In one embodiment of the invention; above-mentioned security system for software also comprises encryption/decryption module; it is configured to be encrypted it before intermediate code is saved, and is decrypted process when intermediate code will be performed to encrypted intermediate code, to improve security further.
In addition, processing module 2 and/or execution module 4 can be realized by compiler, compiler can adopt underlying virtual machine LLVM, but the present invention is not limited to this, for realizing the compiler of processing module 2 and/or execution module 4 except LLVM in the embodiment of the present invention, other existing compilers can also be used, or use self-defining compiler.Memory module 3 can be realized by shared data bank or distributed file system.
The class of operation of technical scheme described in the embodiment of the present invention in the method for operating and Windows of other operating systems seemingly, repeats no more herein.
The foregoing is only preferred embodiment of the present invention, be not intended to limit protection scope of the present invention.Within the spirit and principles in the present invention all, any amendment done, equivalent replacement and improvement etc., all should be included within protection scope of the present invention.

Claims (24)

1. a method for protecting software, is characterized in that, comprising:
When server receives the software code sections to be protected of long-distance Log server, described software code sections is treated to intermediate code and preserves;
When server receives the call request for described software code sections of long-range transmission, perform described intermediate code according to described call request, and return execution result.
2. method for protecting software according to claim 1, is characterized in that, described software code sections is treated to intermediate code and preserves to be specially:
Process of compilation is carried out to described software code sections, and the code chain generated through process of compilation is received and develops same code library that software belonging to described software code sections uses to generate described intermediate code and to preserve.
3. method for protecting software according to claim 1, is characterized in that, performs described intermediate code specifically comprise according to described call request:
According to described call request, read the described intermediate code of storage and be saved in the local file system of server;
The path of described intermediate code in described local file system and the user's request msg in described call request are input in the code execution module of server;
Performed described intermediate code by the code execution module of described server and obtained execution result.
4. method for protecting software according to claim 3; it is characterized in that; during described code execution module performs described intermediate code, by reading described user's request msg with the same code library that software belonging to the described software code sections of exploitation uses and export intermediate code implementation data and/or intermediate code execution result.
5. method for protecting software according to claim 4, is characterized in that, described user's request msg, before the described intermediate code of execution, is mapped in the internal memory of server or local file system to be read by described code library by described code execution module.
6. method for protecting software according to any one of claim 1 to 5, is characterized in that, server is encrypted it before the described intermediate code of preservation, and is decrypted process when needs perform described intermediate code to encrypted intermediate code.
7. method for protecting software according to any one of claim 1 to 5, is characterized in that, by compiler, described software code sections is treated to intermediate code.
8. method for protecting software according to claim 7, is characterized in that, described compiler is underlying virtual machine.
9. method for protecting software according to any one of claim 1 to 5, is characterized in that, described intermediate code is kept in shared data bank or distributed file system by server.
10. method for protecting software according to any one of claim 1 to 5, is characterized in that, performs described intermediate code by compiler.
11. method for protecting software according to claim 10, is characterized in that, described compiler is underlying virtual machine.
12. method for protecting software according to any one of claim 1 to 5, is characterized in that, described server is cloud lock server.
13. 1 kinds of security system for software, is characterized in that, comprising:
Communication module, it is configured to the software code sections to be protected receiving long-distance Log server, receives the call request for described software code sections of long-range transmission, and result is called in transmission;
Processing module, it is configured to described software code sections to be treated to intermediate code;
Memory module, it preserves described intermediate code;
Execution module, it is configured to perform described intermediate code according to described call request, and execution result is sent to described communication module and call result as described.
14. security system for software according to claim 13, is characterized in that, described processing module concrete configuration is:
Process of compilation is carried out to described software code sections, and the code chain generated through process of compilation is received and develops same code library that software belonging to described software code sections uses to generate described intermediate code.
15. security system for software according to claim 13, is characterized in that, described execution module concrete configuration is:
Receive user's request msg in the routing information of described intermediate code and described call request to perform described intermediate code and to obtain execution result.
16. security system for software according to claim 15, is characterized in that, also comprise:
The same code library used with software belonging to the described software code sections of exploitation, it is configured to during described execution module performs described intermediate code, reads described user's request msg and exports intermediate code implementation data and/or intermediate code execution result.
17. security system for software according to claim 16; it is characterized in that; described execution module concrete configuration is before the described intermediate code of execution, described user's request msg is mapped in the internal memory of described security system for software or local file system to be read by described code library.
18. according to claim 13 to the security system for software according to any one of 17; it is characterized in that; also comprise encryption/decryption module; it is configured to be encrypted it before described intermediate code is saved, and is decrypted process when described intermediate code will be performed to encrypted intermediate code.
19., according to claim 13 to the security system for software according to any one of 17, is characterized in that, described processing module is realized by compiler.
20. security system for software according to claim 19, is characterized in that, described compiler is underlying virtual machine.
21., according to claim 13 to the security system for software according to any one of 17, is characterized in that, described memory module is realized by shared data bank or distributed file system.
22., according to claim 13 to the security system for software according to any one of 17, is characterized in that, described code execution module is realized by compiler.
23. security system for software according to claim 22, is characterized in that, described compiler is underlying virtual machine.
24., according to claim 13 to the security system for software according to any one of 17, is characterized in that, described security system for software is realized by cloud lock server.
CN201410707880.6A 2014-11-27 2014-11-27 A kind of method for protecting software and system Active CN104392151B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410707880.6A CN104392151B (en) 2014-11-27 2014-11-27 A kind of method for protecting software and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410707880.6A CN104392151B (en) 2014-11-27 2014-11-27 A kind of method for protecting software and system

Publications (2)

Publication Number Publication Date
CN104392151A true CN104392151A (en) 2015-03-04
CN104392151B CN104392151B (en) 2017-12-26

Family

ID=52610053

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410707880.6A Active CN104392151B (en) 2014-11-27 2014-11-27 A kind of method for protecting software and system

Country Status (1)

Country Link
CN (1) CN104392151B (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106250124A (en) * 2016-07-25 2016-12-21 百富计算机技术(深圳)有限公司 The implementation method of the cross-platform operation of functional module and device
CN106971096A (en) * 2017-04-06 2017-07-21 北京深思数盾科技股份有限公司 Method for protecting software and system
CN107026730A (en) * 2017-04-01 2017-08-08 北京深思数盾科技股份有限公司 Data processing method, apparatus and system
CN107085515A (en) * 2017-03-30 2017-08-22 武汉斗鱼网络科技有限公司 Personal page generation method and device
CN107341372A (en) * 2017-07-25 2017-11-10 北京深思数盾科技股份有限公司 A kind of method for protecting software and device
CN108259429A (en) * 2016-12-29 2018-07-06 航天信息股份有限公司 A kind of method and system controlled for software distribution
CN110909098A (en) * 2019-11-14 2020-03-24 武汉一格空间科技有限公司 Cloud geographic information data analysis method and system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1419191A (en) * 2001-10-31 2003-05-21 亚普公司 Intermediate code executive system and method, computer program products for executing intermediate code
CN101783801A (en) * 2010-01-29 2010-07-21 福建星网锐捷网络有限公司 Software protection method based on network, client side and server
CN102831361A (en) * 2012-08-14 2012-12-19 游艺春秋网络科技(北京)有限公司 Leak prevention system for server
CN103218550A (en) * 2013-03-20 2013-07-24 中国联合网络通信集团有限公司 Software-installing method, server and terminal

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1419191A (en) * 2001-10-31 2003-05-21 亚普公司 Intermediate code executive system and method, computer program products for executing intermediate code
CN101783801A (en) * 2010-01-29 2010-07-21 福建星网锐捷网络有限公司 Software protection method based on network, client side and server
CN102831361A (en) * 2012-08-14 2012-12-19 游艺春秋网络科技(北京)有限公司 Leak prevention system for server
CN103218550A (en) * 2013-03-20 2013-07-24 中国联合网络通信集团有限公司 Software-installing method, server and terminal

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106250124A (en) * 2016-07-25 2016-12-21 百富计算机技术(深圳)有限公司 The implementation method of the cross-platform operation of functional module and device
CN106250124B (en) * 2016-07-25 2020-01-21 百富计算机技术(深圳)有限公司 Method and device for realizing cross-platform operation of functional modules
CN108259429A (en) * 2016-12-29 2018-07-06 航天信息股份有限公司 A kind of method and system controlled for software distribution
CN108259429B (en) * 2016-12-29 2021-01-29 航天信息股份有限公司 Method and system for controlling software distribution
CN107085515A (en) * 2017-03-30 2017-08-22 武汉斗鱼网络科技有限公司 Personal page generation method and device
CN107026730A (en) * 2017-04-01 2017-08-08 北京深思数盾科技股份有限公司 Data processing method, apparatus and system
CN106971096A (en) * 2017-04-06 2017-07-21 北京深思数盾科技股份有限公司 Method for protecting software and system
CN106971096B (en) * 2017-04-06 2018-12-18 北京深思数盾科技股份有限公司 Method for protecting software and system
CN107341372A (en) * 2017-07-25 2017-11-10 北京深思数盾科技股份有限公司 A kind of method for protecting software and device
CN107341372B (en) * 2017-07-25 2018-12-07 北京深思数盾科技股份有限公司 A kind of method for protecting software and device
CN110909098A (en) * 2019-11-14 2020-03-24 武汉一格空间科技有限公司 Cloud geographic information data analysis method and system

Also Published As

Publication number Publication date
CN104392151B (en) 2017-12-26

Similar Documents

Publication Publication Date Title
CN104392151A (en) Software protection method and system
JP6924739B2 (en) Mitigation of offline ciphertext-only attacks
CN108345773B (en) Code protection method and device based on virtual machine, electronic equipment and storage medium
RU2620712C2 (en) Virtual machine device with driven key obfuscation and method
US10599820B2 (en) Control flow flattening for code obfuscation where the next block calculation needs run-time information
CN117278224A (en) Method and system for verifying identity attribute information
CN105426708A (en) Reinforcing method of application program of Android system
US20170116396A1 (en) Optimizing and protecting software
CN105637800A (en) Keying infrastructure
CN101261664B (en) A method for realizing software protection based on the program code stored in the software protection device
WO2016113738A1 (en) Secret shared random access machine
CN105683990A (en) Method and apparatus for protecting dynamic libraries
CN107273723B (en) So file shell adding-based Android platform application software protection method
CN101261666A (en) A method for realizing software copyright protection based on encrypted executable program file
CN111949986B (en) Service processing method, system and storage medium
US20190158269A1 (en) Secure order preserving string compression
CN110210211A (en) A kind of method of data protection and calculate equipment
EP2937803B1 (en) Control flow flattening for code obfuscation where the next block calculation needs run-time information
KR101699176B1 (en) Hadoop Distributed File System Data Encryption and Decryption Method
US11947665B2 (en) Secured computer code and systems, methods, and storage media for creating the secured computer code from original computer code
CN110535642A (en) A kind of method, intelligent terminal and the storage medium of dispersion storage key
CN109766141A (en) A kind of data dynamic updating method and its device based on dynamic link library
US20090293041A1 (en) Software protection through interdependent parameter cloud constrained software execution
US9853952B2 (en) Apparatus and method for encryption
EP4295222A1 (en) Secure collaborative processing of private inputs

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 100872 room 1706, building 59, Zhongguancun street, Haidian District, Beijing

Applicant after: BEIJING SENSESHIELD TECHNOLOGY Co.,Ltd.

Address before: 100872 room 1706, building 59, Zhongguancun street, Haidian District, Beijing

Applicant before: BEIJING SHENSI SHUDUN TECHNOLOGY Co.,Ltd.

COR Change of bibliographic data
CB02 Change of applicant information

Address after: 100193 Beijing, Haidian District, East West Road, No. 10, East Hospital, building No. 5, floor 5, layer 510

Applicant after: BEIJING SENSESHIELD TECHNOLOGY Co.,Ltd.

Address before: 100872 room 1706, building 59, Zhongguancun street, Haidian District, Beijing

Applicant before: BEIJING SENSESHIELD TECHNOLOGY Co.,Ltd.

COR Change of bibliographic data
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100193 5th floor 510, No. 5 Building, East Yard, No. 10 Wangdong Road, Northwest Haidian District, Beijing

Patentee after: Beijing Shendun Technology Co.,Ltd.

Address before: 100193 5th floor 510, No. 5 Building, East Yard, No. 10 Wangdong Road, Northwest Haidian District, Beijing

Patentee before: BEIJING SENSESHIELD TECHNOLOGY Co.,Ltd.