CN106971096B - Method for protecting software and system - Google Patents
Method for protecting software and system Download PDFInfo
- Publication number
- CN106971096B CN106971096B CN201710221050.6A CN201710221050A CN106971096B CN 106971096 B CN106971096 B CN 106971096B CN 201710221050 A CN201710221050 A CN 201710221050A CN 106971096 B CN106971096 B CN 106971096B
- Authority
- CN
- China
- Prior art keywords
- software
- executable program
- request
- simulator
- execution
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000013519 translation Methods 0.000 claims abstract description 21
- 238000012545 processing Methods 0.000 claims description 14
- 238000005538 encapsulation Methods 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 2
- 229910002056 binary alloy Inorganic materials 0.000 claims 2
- 238000013475 authorization Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 238000007792 addition Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000004088 simulation Methods 0.000 description 3
- 241000208340 Araliaceae Species 0.000 description 2
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 2
- 235000003140 Panax quinquefolius Nutrition 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 235000008434 ginseng Nutrition 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/125—Restricting 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)
- Storage Device Security (AREA)
Abstract
The invention discloses a kind of method for protecting software; wherein; at least one executable program for being applied to hardware lock is uploaded into cloud lock platform; at least one protected code section of at least one executable program and software respectively corresponds; cloud lock platform is provided with simulator; request is executed from software the described method includes: receiving; it executes request and executes the corresponding executable program at least one executable program for requesting, and execute in request with the mark for executing parameter and corresponding corresponding executable program;Simulator loads corresponding executable program according to mark and carries out translation execution, and when needing to input parameter, input executes parameter in translation implementation procedure, thus data of obtaining a result;Data are returned the result to software.Executable program in hardware lock is seamlessly used for cloud lock platform by the method for protecting software of disclosure of the invention, so as to using unlimited expansible Internet resources, and improve can infinite expanding execution performance.
Description
Technical field
The present invention relates to software security field more particularly to a kind of method for protecting software and systems.
Background technique
In existing software technology, completed in software (being herein all kinds of softwares, also referred to as " application turns part ") exploitation
Later, it runs in software developer (in text also referred to as " developer ") uncontrollable environment, all details of the software are equal
It is exposed in face of user, if it is intended to crack the software, traditional salvo can only postpone it and crack progress, and cannot
Effectively software is prevented to be cracked.
Current most effective method for protecting software is that some key codes that must use runs software are put into " safety collar
Operation in border ", that is, developer thinks to consider that difficulty raising can will be cracked to select these key codes according to development process
To the degree close to software-rewritten.
So-called in the prior art " security context " is provided by specific hardware, such as based on the hardware lock of intelligent chip
(that is, hardware encryption lock) is also that this hardware lock is in the majority in actual use, can provide since it is easy to routine use
A degree of safety.Study carefully its concrete principle, this hardware lock is usually built-in with embedded OS, can run embedded
Program, is based on this embedded OS, and the software that last developer is developed passes through logical with the embedded program in hardware lock
Letter, interior data are locked in access, to control the use of software.Specifically, operation such as Fig. 1 that developer carries out the software after design
It is shown:
Step 1, the key code for extracting designed application software;
Step 2 is packaged the key code extracted;
Step 3 (can be also simply referred to as the embedded program that the key code after encapsulation is compiled as can be performed in lock " in lock
Executable program " or " executable program ");
Above-mentioned executable program is imported into hardware lock by step 4 by (hardware lock provider provides) import tool, from
And complete the exploitation of application software.
After aforesaid operations, when runs software, can by being communicated with the executable program in hardware lock,
Interior data are locked with access, to control the use of software.
However, the technology has following problems in use process:
First, developer needs to provide a handle or more to software purchasers (namely end user of software, user)
Hardware lock, therefore, software purchasers not only need to undertake the hardware cost of purchase hardware lock, but also need to bear and thus bring
Hardware lock buying and management cost etc.;
Second, hardware lock often with the computer of the user of software (personal computer;PC machine) there are matchings to ask
Topic, causes user not to be available software, or user is needed to reset system for computer, or even replacement computer;It seriously affects
The software of user uses;
Third, the memory space of hardware lock itself is small, cause developer that can only transplant a small amount of key code or logic extremely
Hardware lock, thus can only ensure the low level security of software operation;
Although performance is developed far away from the performance of computer fourth, the hardware lock of industry all includes intelligent chip in addition
If the software of person's exploitation is huger, or relatively high to operational performance requirement, then the performance of hardware lock is not just able to satisfy
The requirement of software, thus the good usability of software can be reduced.
Summary of the invention
Based on background above, the present invention proposes a kind of method for protecting software, will be applied to the executable program of hardware lock
It is seamless to lock platform for cloud, by locking the container environment that setting simulator is locked in platform come analog hardware in cloud, so as to benefit
With unlimited expansible Internet resources, not only do not have to using limited hardware lock, but improve can infinite expanding execution performance.
According to an aspect of the invention, there is provided a kind of method for protecting software, by be applied to hardware lock at least one
Executable program uploads to cloud lock platform, at least one protected code section of at least one executable program and software is right respectively
It answers, cloud lock platform is provided with simulator,
Method for protecting software according to the present invention may include:
The request that executes from software is received, it is corresponding at least one executable program for requesting to execute to execute request
Executable program, and execute in request with the mark for executing parameter and corresponding corresponding executable program;
Simulator loads corresponding executable program according to mark and carries out translation execution, is needing in translation implementation procedure
Input executes parameter when inputting parameter, thus data of obtaining a result;
Data are returned the result to software.
In addition, before at least one executable program for being applied to hardware lock to be uploaded to cloud lock platform, according to this hair
Bright method for protecting software can also include: at least one code segment extracted in software;To at least one code segment of extraction
It is packaged respectively;At least one code segment after encapsulation is compiled at least one executable program respectively.
Optionally, executable program can be binary executable.
Further, simulator can be ARM instruction set simulator, then above-mentioned simulator accordingly may be used according to mark load
It executes program and carries out translation to execute may include: ARM instruction set simulator according to the corresponding executable program of mark load, it is right
Binary sequence in corresponding executable program is carried out translating into the source code for meeting ARM instruction set standard one by one and be executed
Processing.
In addition, method for protecting software according to the present invention can also include: accordingly may be used in simulator according to mark load
While executing program, platform side application is locked at least two buffer areas in cloud, one of buffer area is for storing input ginseng
Number, another buffer area are used for storage result data.
Optionally, method for protecting software according to the present invention can also include: to request it in execution of the reception from software
Afterwards, judge to execute the request permissions for requesting whether have for corresponding executable program;It is not have request in judging result
When permission, refusal processing executes request.
According to another aspect of the present invention, a kind of security system for software is provided, security system for software prestores application
In at least one executable program of hardware lock, at least one protected code section point of at least one executable program and software
Not Dui Ying, the apparatus according to the invention may include: interface module, be configured to receive the request that executes from software, execute
Request executes the corresponding executable program at least one executable program for requesting, and executes to have in request and execute
The mark of parameter and corresponding corresponding executable program;Simulator is configured to load corresponding executable program according to mark
And translation execution is carried out, when needing to input parameter, input executes parameter in translation implementation procedure, thus data of obtaining a result;
Interface module is additionally configured to return the result data to software.
Wherein, and executable program can be binary executable.
Further, simulator can be ARM instruction set simulator, and ARM instruction set simulator is configurable to according to mark
Know and load corresponding executable program, the binary sequence in corresponding executable program one by one translate into meet ARM
The source code of instruction set standard and the processing executed.
Optionally, simulator can be further configured to, while loading corresponding executable program according to mark,
Application is at least two buffer areas in security system for software, and one of buffer area is for storing input parameter, another buffering
Area is used for storage result data.
Preferably, the apparatus according to the invention can also include: determination module, be configured to judge that interface module is received to hold
Whether row request has the request permissions for corresponding executable program, wherein simulator is configured to sentencing in determination module
Disconnected result is when executing request not having request permissions, and refusal processing executes request.
Detailed description of the invention
Fig. 1 show the flow chart for the operation that software developer carries out the software after design in the prior art;
Fig. 2 show the flow chart of method for protecting software according to an embodiment of the invention;
Fig. 3 show the block diagram of security system for software according to an embodiment of the invention;
Fig. 4 show security system for software according to an embodiment of the invention.
Specific embodiment
Term referred in present invention is explained at this, what translation executed service (see Fig. 4) simulation is hardware lock
Container environment, what ARM instruction set simulator was simulated is the routine call process of code in hardware lock, that is, in the embodiment of the present invention
In, the module in hardware lock is using software come simulated implementation.Wherein, ARM instruction set is a set of stereotyped command, ARM instruction set mould
Quasi- device is for explaining and executing ARM instruction set, and executable program is the sequence for meeting the binary representation of ARM instruction set
Stream.
According to one embodiment of present invention, a kind of method for protecting software is provided, is illustrated in figure 2 according to the present invention
The flow chart of method for protecting software.In method for protecting software according to the present invention, at least the one of hardware lock will be applied in advance
A executable program uploads to cloud lock platform, at least one protected code section difference of at least one executable program and software
Corresponding, cloud lock platform is provided with simulator.
Method for protecting software according to the present invention may include:
S1 receives the request that executes from software, executes request and executes at least one executable program for requesting
Corresponding executable program, and execute in request with the mark for executing parameter and corresponding corresponding executable program;
S2, simulator load corresponding executable program according to mark and carry out translation execution, in translation implementation procedure
When needing to input parameter, input executes parameter, thus data of obtaining a result;
S3 returns the result data to software.
In addition, before at least one executable program for being applied to hardware lock to be uploaded to cloud lock platform in advance, according to
Method for protecting software of the invention can also include: at least one code segment extracted in software;To at least one generation of extraction
Code section is packaged respectively;At least one code segment after encapsulation is compiled at least one executable program respectively.
In embodiments of the present invention, executable program can be binary executable.
Further, simulator can be ARM instruction set simulator, and simulator loads phase according to mark in above-mentioned S2 step
The executable program answered simultaneously carries out translation to execute may include: that ARM instruction set simulator is corresponding executable according to mark load
Program carries out the binary sequence in corresponding executable program to translate into the source code for meeting ARM instruction set standard one by one
And the processing executed, to be almost completed at the same time executable after the completion of saying that the binary sequence in executable program is translated
The simulation implementation procedure of program.
In addition, method for protecting software according to the present invention can also include: accordingly may be used in simulator according to mark load
While executing program, platform side application is locked at least two buffer areas in cloud, one of buffer area is for storing input ginseng
Number, another buffer area are used for storage result data.
Optionally, method for protecting software according to the present invention can also include: to request it in execution of the reception from software
Afterwards, judge to execute the request permissions for requesting whether have for corresponding executable program;It is not have request in judging result
When permission, refusal processing executes request.
According to a preferred embodiment of the present invention, lock provider provides and the authorization pipe in hardware lock for software developer
The compiler of system matches is managed, then software developer extracts at least one code segment in developed software;To extraction
At least one code segment is packaged respectively;The above-mentioned compiler provided using lock provider is by least one code after encapsulation
Section is compiled at least one executable program respectively, at least one protected code section of at least one executable program and software
It respectively corresponds, wherein executable program is binary executable or referred to as binary sequence.It is above-mentioned at least one can hold
Line program can be imported into hardware lock, so that software developer is managed hardware lock by authentication management system.It is above-mentioned
At least one executable program can not also import hardware lock, but by software developer directly by compiled above-mentioned at least one
A executable program uploads in the database of cloud lock platform provided by lock provider, and medium cloud lock platform is provided with simulation
Device is preferably ARM instruction set simulator, is used for the container environment of analog hardware lock.
According to one embodiment of present invention, method for protecting software according to the present invention may include: to receive from software
Execute request, the execution request for request execution at least one executable program in corresponding executable program, and
It executes in request with parameter and the mark corresponding to corresponding executable program is executed, then judges to execute whether request has
For the request permissions of corresponding executable program;When judging result is not have request permissions, refusal processing executes request,
If it is judged that will execute parameter for when having request permissions and be stored in the memory of cloud lock platform;
Simulator loads corresponding executable program according to mark, while loading corresponding executable program, in cloud
Platform side application is locked at least two buffer areas, wherein may include a buffer area for storing input parameter, is being loaded
At later, simulator carries out translation execution to the executable program of load, needs to input if translating in translation implementation procedure
When the power function of parameter, is transferred from buffer area and execute parameter and input the power function and carry out operation function function, to obtain
Result data, and result data is stored in another buffer area, it is preferable that in simulator be ARM instruction set simulator
In the case of, ARM instruction set simulator can load corresponding executable program according to mark, in corresponding executable program
Binary sequence carries out the processing translating into the source code for meeting ARM instruction set standard and executing one by one;
Data are returned the result to software.
According to another aspect of the present invention, a kind of security system for software is provided.It is illustrated in figure 3 according to the present invention
The block diagram of security system for software.Prestoring in security system for software according to the present invention can hold applied at least one of hardware lock
At least one protected code section of line program, at least one executable program and software respectively corresponds, system according to the present invention
System may include:
Interface module is configured to receive the request that executes from software, executes request for requesting and executes at least one
Corresponding executable program in executable program, and execute in request with execution parameter and corresponding journey executable accordingly
The mark of sequence;
Simulator is configured to load corresponding executable program according to mark and carries out translation execution, executes in translation
When needing to input parameter, input executes parameter in the process, thus data of obtaining a result;
Interface module is additionally configured to return the result data to software.
Wherein, executable program can be binary executable.
Further, simulator can be ARM instruction set simulator, and ARM instruction set simulator is configurable to according to mark
Know and load corresponding executable program, the binary sequence in corresponding executable program one by one translate into meet ARM
The source code of instruction set standard and the processing executed.
Optionally, simulator can be further configured to, while loading corresponding executable program according to mark,
Application is at least two buffer areas in security system for software, and one of buffer area is for storing input parameter, another buffering
Area is used for storage result data.
Preferably, the apparatus according to the invention can also include: determination module, be configured to judge that interface module is received to hold
Whether row request has the request permissions for corresponding executable program, wherein simulator is configured to sentencing in determination module
Disconnected result is when executing request not having request permissions, and refusal processing executes request.
Security system for software according to the present invention is preferably the cloud lock system in cloud system, since its memory space is big,
Therefore multiple executable programs can be uploaded, these executable programs can correspond to multiple codes that need to be protected in a software
Section (such as a software, when having multiple functions to be protected, it is just multiple for needing critical code section to be protected) is multiple soft
Multiple code segments in part, each software at least has a shielded code segment, and this multiple software can license to one
A or multiple users.In the case that there is multiple executable programs in cloud lock system, request is executed for the multiple users of reply,
Cloud lock system can have multiple interface modules and multiple emulation modules, receives execution transmitted by multiple softwares at the same time and asks
When asking, request can be executed so that multiple threads are multiple.Optionally, each simulator can according to the difference of executable program and into
The different matching configuration of row, or in the case where some executable program is using frequent situation, configured for the executable program multiple
Corresponding simulator.To meet the needs of users.
According to one embodiment of present invention, the system of a kind of cloud lock system and application software is provided, as shown in figure 4,
Show software developer, application software and cloud lock three end of platform.The interactive process at this three end is described as follows:
1. software developer carries out letter in the cloud lock platform (the official website enrollment page as locked provider) that lock provider provides
Breath registration;
2. developer, which logs in cloud using account, locks platform, uploads and lock platform to cloud applied to the executable program of hardware lock
On, cloud lock platform stores it in database, and the executable program of upload corresponds to the protected functional module of software;
2.1 developers can also manage the software of oneself on cloud lock platform, and different authorizations is arranged for different software
Mode;
For example, developer A has a set of calculator software Calculator, it is assumed that the software has 2 functional modules: addition and
Subtraction;
At this point, developer A adds authorization on platform, it is assumed that number 1001: being limited to that addition can only be used, can hold
Line code code1 (addition function code);
Developer A adds authorization on platform, it is assumed that number 1002: being limited to that subtraction can only be used, can execute generation
Code code2 (subtraction function code);
2.2 developers can also lock in cloud manage oneself software users (additions and deletions change look into etc. such) on platform,
Different authorizations is configured for different software users;
For example, developer A adds an account: sam@163.com on platform for the software users sam of oneself, and match
Account information (password, personally identifiable information etc.) is set;
Then, developer A configures authorization on platform for the account of sam, as described above, selecting to number the authorization for 1001
Distribute to the account of sam;
In this way, can only then use content as defined in authorization 1001 when sam logs in software using account;
-- how management software user and how to be user configuration authorization not in the scope of the patents, it is above only to enumerate example
Son helps to understand whole flow process;
3. in this way, developer A has just easily managed the soft ware authorization of the software users of oneself on cloud lock platform;
4. after software users sam takes the software of developer A packing, runs software, input account logs in (exploitation after software
The account or sam oneself that person provides voluntarily are registered by the registration network address that developer provides) the corresponding function of software can be used
Can:
4.1 users input account and log in, and software locks platform access service (particularly authorization access clothes from cloud by account
Business) on inquire authorized content, cloud lock platform returns to the authorized content of the account are as follows: can only use addition;At this point, software is only shown
Addition function;
4.2 users input two numbers, execute addition function, and software is (unique by two numbers, the mark of executable program
Mark), account information (being indicated by token/session) be submitted to cloud lock platform access service (particularly generation
Code executes access service), request implementing result;
4.3 codes execute access service and receive request, according to account information data base querying awarding to the account beyond the clouds
Weighing code in associated lock is the code1 that A developer uploads, and code executes access service and is submitted to two numbers and code1
Back-end code executes service;
4.4 back-end codes execute service and receive request, by the ARM instruction set simulator code code1 that receives of execution and
Two parameter, backtracking result after execution;
4.5 softwares receive result, and it will be shown on interface or continue subsequent operation.
According to the technique and scheme of the present invention, in the prior art applied to the executable program of hardware lock without in change
The cloud lock platform for passing to cloud uses, and can be used cloud lock platform that hardware lock is replaced to carry out management software authorization, to save to hardware
The management cost of lock and time.
The embodiment of the present invention realizes that the method that the executable program for being applied to hardware lock can execute beyond the clouds is to mention beyond the clouds
For simulator, such as ARM simulator, holding for executable program is simulated by the translation implementation procedure to above-mentioned executable program
Row process reaches implementation effect same as hardware lock.Here ARM simulator can be the ARM simulator of standard, either
The ARM simulator customized by hardware lock provider.In this way, can both be executed in hardware lock with portion executable program, it can also
To execute in cloud lock platform, accomplish to compile an executable program, just may be implemented in hardware lock and in cloud lock platform
With the effect of operation, and no longer limited by the performance of hardware lock and memory space, if having network can distributed software, no
Secure hardware (hardware lock) etc. must be posted to the end user of software.Due to being no longer limited by the performance of secure hardware, actually may be used
It is greatly increased with the size of code of transplanting, and software key algorithm is beyond the clouds, cracks personnel and cracked it is even more impossible to contact implementation, significantly
Improve the safety of software.
Section Example of the invention is illustrated above, but the present invention is not limited to embodiments above, but
A variety of modifications or modification can be carried out to embodiment without departing from the scope of the inventive concept.
Claims (11)
1. a kind of method for protecting software, which is characterized in that the executable journey of at least one executed in hardware lock will be imported into
Sequence uploads to cloud lock platform, at least one protected code section of at least one described executable program and software respectively corresponds,
The cloud lock platform is provided with simulator, and the simulator is used for the container environment of analog hardware lock,
The described method includes:
The request that executes from software is received, the execution request executes at least one described executable program for requesting
Corresponding executable program, and the mark executed in request with execution parameter and corresponding corresponding executable program
Know;
The simulator loads corresponding executable program according to the mark and carries out translation execution, executes in translation
The execution parameter is inputted in journey when needing to input parameter, thus data of obtaining a result;
The result data is returned to software.
2. method for protecting software according to claim 1, which is characterized in that can at least one of hardware lock will be applied to
Program is executed to upload to before cloud lock platform, the method also includes:
Extract at least one code segment in software;
At least one code segment of extraction is packaged respectively;
At least one code segment after encapsulation is compiled at least one executable program respectively.
3. method for protecting software according to claim 1, which is characterized in that the executable program is executable for binary system
Program.
4. method for protecting software according to claim 3, which is characterized in that the simulator is ARM instruction set simulator,
Then the simulator, which loads corresponding executable program according to the mark and carries out translation execution, includes:
The ARM instruction set simulator loads corresponding executable program according to the mark, holds to corresponding
Binary sequence in line program carries out the processing translating into the source code for meeting ARM instruction set standard and executing one by one.
5. method for protecting software according to claim 1, which is characterized in that further include:
While the simulator loads corresponding executable program according to the mark, platform side Shen is locked in the cloud
Please at least two buffer areas, one of buffer area is for storing the input parameter, another buffer area is for storing institute
State result data.
6. method for protecting software according to claim 1, which is characterized in that further include:
After receiving the execution request from software, judge whether the execution request has for corresponding executable
The request permissions of program;
When judging result is not have request permissions, refusal processing is described to execute request.
7. a kind of security system for software, which is characterized in that the security system for software is prestored to imported into hardware lock and be held
At least one protected code section of at least one capable executable program, at least one described executable program and software is distinguished
It is corresponding,
The security system for software includes:
Interface module is configured to receive the request that executes from software, and the execution request is for requesting execution described at least
Corresponding executable program in one executable program, and with execution parameter and the corresponding phase in execution request
The mark for the executable program answered;
Simulator, is used for the container environment of analog hardware lock, and is configured to load corresponding hold according to the mark
Line program simultaneously carries out translation execution, and the execution parameter is inputted when needing to input parameter in translation implementation procedure, thus
Result data out;
The interface module is additionally configured to return to the result data to software.
8. security system for software according to claim 7, which is characterized in that the executable program is executable for binary system
Program.
9. security system for software according to claim 8, which is characterized in that the simulator is ARM instruction set simulator,
The ARM instruction set simulator is configured to load corresponding executable program according to the mark, to it is corresponding can
It executes the binary sequence in program and carries out the processing translating into the source code for meeting ARM instruction set standard and executing one by one.
10. security system for software according to claim 7, which is characterized in that the simulator is further configured to, in root
While loading corresponding executable program according to the mark, application is slow at least two in the security system for software
Area is rushed, one of buffer area is for storing the input parameter, another buffer area is for storing the result data.
11. security system for software according to claim 7, which is characterized in that further include:
Determination module, be configured to judge the received execution request of the interface module whether have for it is corresponding can
The request permissions of program is executed,
Wherein, the simulator is configured to when the judging result of determination module is that execution request does not have request permissions,
Refusal processing is described to execute request.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710221050.6A CN106971096B (en) | 2017-04-06 | 2017-04-06 | Method for protecting software and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710221050.6A CN106971096B (en) | 2017-04-06 | 2017-04-06 | Method for protecting software and system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106971096A CN106971096A (en) | 2017-07-21 |
CN106971096B true CN106971096B (en) | 2018-12-18 |
Family
ID=59336668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710221050.6A Active CN106971096B (en) | 2017-04-06 | 2017-04-06 | Method for protecting software and system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106971096B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108733987A (en) * | 2018-04-12 | 2018-11-02 | 惠州市源医科技有限公司 | A kind of encryption method and device of the binary object file based on embedded device |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN200966072Y (en) * | 2006-03-17 | 2007-10-24 | 北京飞天诚信科技有限公司 | Network software-based information safety protector |
CN102685122A (en) * | 2012-05-06 | 2012-09-19 | 北京深思洛克软件技术股份有限公司 | Software protection method based on cloud server |
CN103106356A (en) * | 2013-02-01 | 2013-05-15 | 北京深思洛克软件技术股份有限公司 | Method for generating code in safe environment and improving software protection intensity |
CN104392151A (en) * | 2014-11-27 | 2015-03-04 | 北京深思数盾科技有限公司 | Software protection method and system |
CN104462882A (en) * | 2014-12-18 | 2015-03-25 | 北京深思数盾科技有限公司 | Software protection method, hardware encryption equipment and software protection system comprising hardware encryption equipment |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE60223990T2 (en) * | 2001-10-31 | 2008-12-04 | Aplix Corp. | System for executing intermediate code, method for executing intermediate code, and computer program product for executing intermediate code |
CN106407751B (en) * | 2016-08-31 | 2018-11-27 | 北京深思数盾科技股份有限公司 | The method and apparatus that executable file is protected |
-
2017
- 2017-04-06 CN CN201710221050.6A patent/CN106971096B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN200966072Y (en) * | 2006-03-17 | 2007-10-24 | 北京飞天诚信科技有限公司 | Network software-based information safety protector |
CN102685122A (en) * | 2012-05-06 | 2012-09-19 | 北京深思洛克软件技术股份有限公司 | Software protection method based on cloud server |
CN103106356A (en) * | 2013-02-01 | 2013-05-15 | 北京深思洛克软件技术股份有限公司 | Method for generating code in safe environment and improving software protection intensity |
CN104392151A (en) * | 2014-11-27 | 2015-03-04 | 北京深思数盾科技有限公司 | Software protection method and system |
CN104462882A (en) * | 2014-12-18 | 2015-03-25 | 北京深思数盾科技有限公司 | Software protection method, hardware encryption equipment and software protection system comprising hardware encryption equipment |
Also Published As
Publication number | Publication date |
---|---|
CN106971096A (en) | 2017-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Fitzgerald et al. | Vienna development method | |
Duc et al. | Security challenges in IoT development: a software engineering perspective | |
CN108491235B (en) | DEX protection method combining dynamic loading and function Native | |
US20160203087A1 (en) | Method for providing security for common intermediate language-based program | |
CN101997912A (en) | Mandatory access control device based on Android platform and control method thereof | |
CN105765527A (en) | Method and apparatus for custom software development kit (SDK) generation | |
Quinton et al. | SALOON: a platform for selecting and configuring cloud environments | |
US20160034276A1 (en) | Adaptive interface for cross-platform component generation | |
Benavides et al. | Fama | |
CN105339889A (en) | Techniques for language translation localization for computer applications | |
CN109413189B (en) | Electronic transaction system based on bottom translation | |
Maidl et al. | A comprehensive framework for security in engineering projects-based on IEC 62443 | |
CN106971096B (en) | Method for protecting software and system | |
CN107871066B (en) | Code compiling method and device based on android system | |
Devroey et al. | JUGE: An infrastructure for benchmarking Java unit test generators | |
Lauko et al. | Extending DIVINE with Symbolic Verification Using SMT: (Competition Contribution) | |
CN114547558A (en) | Authorization method, authorization control method and device, equipment and medium | |
CN110597496B (en) | Method and device for acquiring bytecode file of application program | |
Reascos et al. | A conceptual framework for the implantation of enterprise applications in small and medium enterprises (SMEs) | |
CN103530169B (en) | Method for protecting virtual machine files and user terminal | |
Peng et al. | Application of information and communication technologies for eco-accounting | |
Moretti | Accellera’s Support for ESL Verification and Stimulus Reuse | |
KR20170094737A (en) | Method and system for code protection | |
Baradaran et al. | A unit-based symbolic execution method for detecting memory corruption vulnerabilities in executable codes | |
Whiting et al. | Automated model-based attack tree analysis using HiP-HOPS |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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 | ||
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. |