CN106971096B - Method for protecting software and system - Google Patents

Method for protecting software and system Download PDF

Info

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
Application number
CN201710221050.6A
Other languages
Chinese (zh)
Other versions
CN106971096A (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 CN201710221050.6A priority Critical patent/CN106971096B/en
Publication of CN106971096A publication Critical patent/CN106971096A/en
Application granted granted Critical
Publication of CN106971096B publication Critical patent/CN106971096B/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)
  • 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

Method for protecting software and system
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.
CN201710221050.6A 2017-04-06 2017-04-06 Method for protecting software and system Active CN106971096B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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.