CN103955368B - A kind of adaptive support system of software obfuscation and development approach - Google Patents
A kind of adaptive support system of software obfuscation and development approach Download PDFInfo
- Publication number
- CN103955368B CN103955368B CN201410175451.9A CN201410175451A CN103955368B CN 103955368 B CN103955368 B CN 103955368B CN 201410175451 A CN201410175451 A CN 201410175451A CN 103955368 B CN103955368 B CN 103955368B
- Authority
- CN
- China
- Prior art keywords
- fuzzy
- adaption
- adaptive
- self
- logic
- 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
Landscapes
- Stored Programmes (AREA)
Abstract
The invention discloses a kind of adaptive support system of software obfuscation and development approach.The support system includes:Software obfuscation adaptive visualization editor and emulation testing module, software obfuscation adaptive logic persistent storage module, fuzzy self-adaption Aspect facilities automatically-generating module, fuzzy logic basic operation module, fuzzy logic enforcement engine module.The development approach based on the adaptive support system of software obfuscation there is provided field language-specific to realize the editor of software obfuscation adaptive strategy, and syntax check is carried out to fuzzy self-adaption strategy, visual simulating and test then is carried out to fuzzy self-adaption logic;Last is automatically executable programming language Aspect codes by the fuzzy self-adaption logic transition based on field language-specific;The Aspect automatically generated can be woven into using general Aspect system for weaving to inside target software.The present invention shields the fuzzy control technology details of complexity, and for software obfuscation, adaptively exploitation provides visualization, the supporting method automated.
Description
Technical field
The invention belongs to software adaptive technique field, particularly a kind of adaptive support system of software obfuscation and based on this
The adaptive development approach of software obfuscation of system.
Background technology
Current software systems face increasingly frequently changing for external environment condition and demand, and these changes can be to disturb
Form, operation continuity and service availability to complicated software system (such as Military Information System) are adversely affected, and are made
Into the problems such as interrupting, service unavailable.Software is adaptive to be considered as the method that software tackles variation issue, and its core concept is just
It is the thought with feedback closed loop (closed-loop), using software as the adjustable object of dynamic, basis in the process of running
The change of perception is online self to be adapted to new environment and demand.Software adaptive process is inherently a kind of to environment
Frequently interactive process is carried out with user.
However, interacted closely with environment and user so that the adaptive ring of software is inevitably present uncertainty, and
This uncertainty often appears as ambiguity again, data inexactness, user's request expression caused by such as adverse circumstances interference
Ambiquity etc..How to tackle and handle the ambiguity in adaptive ring, realize that the CMIS under hazy condition is adaptive, it has also become
One urgent problem to be solved.And the adaptive method of software obfuscation is considered as one kind and can handled directly and naturally adaptively
A kind of effective ways of ambiguity, its basic thought is that fuzzy control theory is incorporated into software Research on adaptive so that soft
Part shows such a form:In opening, dynamic, the computing environment (such as battlefield surroundings) of difficult control, believe in environment and demand
The complete and accurate acquisition of breath can not possibly, the part to external change or it is inaccurate perceive under inevitable constraint, software
Can be based on the ambiguity information such as the uncertain and incomplete changes in demand perceived and environmental key-element change, by fuzzy
Logic and evolution of feedback controlling theory, it is automatic to carry out fuzzy reasoning and decision-making, adjust parameter, the structure and behavior of itself.
Than conventional software development process, software obfuscation, which is adaptively developed, needs certain fuzzy control theory knowledge, tool
Have certain complexity, this is still a more difficult thing for software developer, cause soft project with
Control the presence knowledge wide gap between engineering.Thus need corresponding software support system to support software obfuscation adaptively to open
Hair, mitigates software developer's burden.But, the existing adaptive support system of software, the more famous IBM such as the U.S.
ACT, the Rainbow RAIDE of Carnegie Mellon Univ USA, StarMX of Canadian University of Waterloo (CA) Waterloo, Ontario, N2L3GI Canada etc., are not supported still pair
The processing of adaptive fuzzy, it is impossible to meet the requirement that software obfuscation is adaptively engineered realization.
The content of the invention
It is an object of the invention to provide a kind of adaptive support system of software obfuscation and development approach, the system and method
Visual edit, test, emulation, storage and the executable journey of automation conversion generation of software obfuscation adaptive logic can be realized
The function of sequence.
The technical solution for realizing the object of the invention is:
A kind of adaptive support system of software obfuscation, the support system supports software obfuscation adaptive logic visual edit
Generate, specifically include with automation:Software obfuscation adaptive visualization editor adaptively patrols with emulation testing module, software obfuscation
Volume persistent storage module, fuzzy self-adaption Aspect facilities automatically-generating module, fuzzy logic basic operation module, fuzzy patrol
Enforcement engine module is collected, wherein fuzzy logic basic operation module is respectively connected to software obfuscation adaptive visualization editor and emulation
Test module, fuzzy logic enforcement engine module, fuzzy self-adaption Aspect facility automatically-generating modules, fuzzy logic, which is performed, draws
Module is held up to give birth to automatically with emulation testing module, fuzzy self-adaption Aspect facilities with software obfuscation adaptive visualization editor respectively
It is connected into module, software obfuscation adaptive logic persistent storage module and software obfuscation adaptive visualization editor and emulation
Test module is connected, and software obfuscation adaptive visualization editor accesses fuzzy self-adaption Aspect facilities with emulation testing module
Automatically-generating module, each module effect is as follows:
Software obfuscation adaptive visualization editor provides the software obfuscation based on field language-specific with emulation testing module
Adaptive strategy visual edit and test environment, wherein fuzzy self-adaption strategy use the form of " if-then " fuzzy rule
Expressed;
Software obfuscation adaptive logic persistent storage module is realized matches somebody with somebody to the fuzzy self-adaption strategy and correlation that edit
Put carry out persistent storage;
Fuzzy self-adaption Aspect facilities automatically-generating module by the fuzzy self-adaption logic based on field language-specific from
It is dynamic to be converted into based on the Aspect facilities of Native language and a data blackboard object;
Basic operation and algorithm of the fuzzy logic basic operation module realization to fuzzy logic are managed;
The total activation of fuzzy logic enforcement engine block supports system, is responsible for explaining fuzzy self-adaption strategy holding
OK, fuzzy self-adaption reasoning computing is completed.
A kind of adaptive development approach of software obfuscation based on the adaptive support system of the software obfuscation, this method is realized
Software obfuscation adaptive logic visual edit is generated with automation, and step is as follows:
Step 1, it is fuzzy certainly using software obfuscation adaptive visualization editor and emulation testing module editor and emulation testing
Adaptive strategy:Fuzzy self-adaption input, output variable are determined according to fuzzy self-adaption demand and fuzzy self-adaption target first, so
Fuzzy self-adaption variable is subjected to Fuzzy processing afterwards;Secondly fuzzy self-adaption strategy of the editor based on fuzzy rule, then right
The fuzzy self-adaption strategy editted carries out syntax error inspection;Emulation testing finally is carried out to fuzzy self-adaption strategy;
Step 2, fuzzy self-adaption strategy is stored:Fuzzy operation is carried out first with fuzzy logic basic operation module
Configuration, then sets store path using fuzzy self-adaption logic persistent storage module, stores above-mentioned configuration information and step 1
The fuzzy self-adaption input, output variable, fuzzy self-adaption rule, realize the recycling of fuzzy self-adaption logic and are total to
Enjoy;
Step 3, generation fuzzy self-adaption Aspect:Given birth to automatically using fuzzy self-adaption Aspect facilities automatically-generating module
Into the fuzzy self-adaption Aspect files based on executable language codes;
Step 4, braiding fuzzy self-adaption Aspect:Instrument is woven by general Aspect, step 3 is generated
Aspect files are woven into target software, so as to be internally formed the adaptive ring of software obfuscation in target software;
Compared with prior art, its remarkable advantage is the present invention:(1) provide patterned special based on field for developer
The fuzzy self-adaption logical edit of attribute speech, emulation, test environment;(2) automatically generate based on the fuzzy adaptive of Native language
Answer code, make developer without also can be more convenient in the case of deeply understanding fuzzy control theory carry out software obfuscation
Adaptive development;(3) preservation there is provided fuzzy self-adaption logic and import feature, and establish fuzzy logic storage
The standard of form, facilitates shared between different groups, so as to reduce the development difficulty that software obfuscation is adaptive, improves
Software development efficiency.
Brief description of the drawings
Fig. 1 is the general structure of invention software fuzzy self-adaption support system and the theory diagram of development approach.
Fig. 2 is editor and the structure chart of emulation testing module of fuzzy self-adaption logic in present system.
Fig. 3 is the persistent storage function structure chart of software obfuscation adaptive logic in present system.
Fig. 4 is the principle schematic of fuzzy self-adaption Aspect facility automatically-generating modules in present system.
Fig. 5 is data communication realization mechanism figure between fuzzy self-adaption Aspect facilities in present system.
Fig. 6 is fuzzy self-adaption Aspect facilities automatic batch generation schematic diagram in present system.
Fig. 7 is the visual edit and automatic generating method schematic diagram of invention software fuzzy self-adaption logic.
Fig. 8 is software obfuscation adaptation rule editor and the schematic diagram of emulation in the embodiment of the present invention.
Embodiment
Being capable of support programs fuzzy self-adaption logic visual edit, test, emulation and automatic the invention provides one kind
The system and the adaptive development approach of software obfuscation based on the system of executable program code are generated, below in conjunction with the accompanying drawings and tool
Body embodiment is described in further detail to the present invention.
With reference to Fig. 1, invention software fuzzy self-adaption support system, the support system supports software obfuscation adaptive logic
Visual edit is generated with automation, is specifically included:Software obfuscation adaptive visualization editor and emulation testing module, software mould
Self-adaptive fuzzy logic persistent storage module, fuzzy self-adaption Aspect facilities automatically-generating module, fuzzy logic basic operation
It is adaptively visual that module, fuzzy logic enforcement engine module, wherein fuzzy logic basic operation module are respectively connected to software obfuscation
Change editor and emulation testing module, fuzzy logic enforcement engine module, fuzzy self-adaption Aspect facility automatically-generating modules, mould
Fuzzy logic enforcement engine module respectively with software obfuscation adaptive visualization editor and emulation testing module, fuzzy self-adaption
Aspect facility automatically-generating modules are connected, and software obfuscation adaptive logic persistent storage module and software obfuscation are adaptive
Visual edit is connected with emulation testing module, and software obfuscation adaptive visualization editor and the access of emulation testing module are fuzzy
Adaptive Aspect facility automatically-generating modules, each module effect is as follows:
1st, software obfuscation adaptive visualization editor and emulation testing module provide the software mould based on field language-specific
Self-adaptive fuzzy strategy visual edit and test environment, wherein fuzzy self-adaption strategy use the shape of " if-then " fuzzy rule
Formula is expressed;
2nd, software obfuscation adaptive logic persistent storage module realizes the fuzzy self-adaption strategy and correlation to editting
Configuration carries out persistent storage;Specially:
(1) the software obfuscation adaptation rule editted is stored using XML format;
(2) configuration information is stored using XML format, the configuration information includes:It is fuzzy reasoning parameter configuration, fixed
The input/output variable of justice and the fuzzy partition of the input/output variable;
3rd, fuzzy self-adaption Aspect facilities automatically-generating module is by the fuzzy self-adaption logic based on field language-specific
It is automatically converted to based on the Aspect facilities of Native language and a data blackboard object, is specially:
(1) module object-oriented, provided with special Aspect code building classes, obtains fuzzy self-adaption from editing environment
Logic relevant information;
(2) according to user the predetermined configuration of adaptive facility class name, store path is disposably generated Fuzzy Perceptron Model,
Fuzzy self-adaption device, fuzzy three Aspect facilities of actuator and a data blackboard object, the data blackboard object are used for mould
Paste perceptron Aspect, the interaction of fuzzy self-adaption device Aspect and fuzzy actuator Aspect in target software;
4th, basic operation and algorithm of the fuzzy logic basic operation module realization to fuzzy logic is managed;
5th, the total activation of fuzzy logic enforcement engine block supports system, is responsible for explaining fuzzy self-adaption strategy holding
OK, fuzzy self-adaption reasoning computing is completed.
Software obfuscation adaptive development approach of the invention based on the adaptive support system of the software obfuscation, this method is real
Existing software obfuscation adaptive logic visual edit is generated with automation, and step is as follows:
Step 1, it is fuzzy certainly using software obfuscation adaptive visualization editor and emulation testing module editor and emulation testing
Adaptive strategy:Fuzzy self-adaption input, output variable are determined according to fuzzy self-adaption demand and fuzzy self-adaption target first, so
Fuzzy self-adaption variable is subjected to Fuzzy processing afterwards;Secondly fuzzy self-adaption strategy of the editor based on fuzzy rule, then right
The fuzzy self-adaption strategy editted carries out syntax error inspection;Emulation testing finally is carried out to fuzzy self-adaption strategy;Specifically
For:
(1) adaptive dependent variable is determined:Mould is determined according to the fuzzy self-adaption target of fuzzy self-adaption demand and target software
Self-adaptive fuzzy input, output variable, required mould is added in software obfuscation adaptive visualization editor and emulation testing module one by one
Self-adaptive fuzzy input, output variable;
(2) the adaptive dependent variable of obfuscation:In software obfuscation adaptive visualization editor and emulation testing module by step (1)
The fuzzy self-adaption added is inputted, output variable carries out fuzzy partition, generates multiple fuzzy language values, and fuzzy for each
Linguistic Value defines membership function;
(3) fuzzy self-adaption strategy is edited:In software obfuscation adaptive visualization editor and emulation testing module editor's base
In the fuzzy self-adaption strategy of fuzzy rule, syntax error inspection then is carried out to the fuzzy self-adaption strategy editted;
(4) fuzzy self-adaption strategy is tested:In software obfuscation adaptive visualization editor and emulation testing module to editor
Good fuzzy self-adaption strategy is patterned emulation and tested, to find the logic error implied in fuzzy self-adaption reasoning,
Test process needs fuzzy logic basic operation module, the support of fuzzy logic enforcement engine module;
Step 2, fuzzy self-adaption strategy is stored:Fuzzy operation is carried out first with fuzzy logic basic operation module
Configuration, then sets store path using fuzzy self-adaption logic persistent storage module, stores above-mentioned configuration information and step 1
The fuzzy self-adaption input, output variable, fuzzy self-adaption rule, realize the recycling of fuzzy self-adaption logic and are total to
Enjoy;
Step 3, generation fuzzy self-adaption Aspect:Given birth to automatically using fuzzy self-adaption Aspect facilities automatically-generating module
Into the fuzzy self-adaption Aspect files based on executable language codes;
Step 4, braiding fuzzy self-adaption Aspect:Instrument is woven by general Aspect, step 3 is generated
Aspect files are woven into target software, so as to be internally formed the adaptive ring of software obfuscation in target software;
The realization of above-mentioned steps 1~4 is based on the support of fuzzy logic enforcement engine module.
The present invention is described in further detail with reference to specific embodiment.
Embodiment 1
The adaptive support system of software obfuscation that the present invention is provided can be by entering to FuzzyLite fuzzy logic Software tools
Row extension is realized.
Fig. 1 is the general structure of the adaptive support system of software obfuscation, and the system includes software obfuscation adaptive visualization
Editor is automatic with Simulation Test Environment, software obfuscation adaptive logic persistent storage module, fuzzy self-adaption Aspect facilities
5 parts such as generation module, fuzzy logic basic operation module, fuzzy logic enforcement engine module, what it is in core is fuzzy
Logic enforcement engine, the interphase interaction of these modules constitutes a preliminary support software obfuscation adaptive relatively efficiently
The back-up environment developed.The major function of these modules and each other contact difference it is as follows:
(1) software obfuscation adaptive visualization editor and emulation testing module
The module mainly provides software obfuscation adaptive strategy visual edit and test wrapper based on field language-specific
Border.In this module, fuzzy control language (is also known as using " if-then " the fuzzy rule definition statement of field of fuzzy control
Fuzzy Control Language, FCL) as the definitional language of software obfuscation adaptive strategy, use simple, easy-to-use reason
Solution, and close to the mode of thinking of ordinary people;Meanwhile, the perception of fuzzy self-adaption ring is also provided, the input and output language of link is performed
Say the functions such as shape setting, the inference rule selection of fuzzy partition, membership function of variable;The module can to edit from
Adaptive strategy carries out syntax check, carries out miscue to the adaptation rule for not meeting grammer, moreover it is possible to fuzzy self-adaption plan
Emulation testing is slightly carried out, carrys out the result of decision directly perceived for watching analysis fuzzy self-adaption, so as to further according to simulation result
The principle of optimality.
(2) software obfuscation adaptive logic persistent storage module
The module is realized carries out persistent storage to the fuzzy self-adaption rule and relevant configuration that edit.Fuzzy self-adaption
The information of logic has the feature of tree data structure, so using the XML document of standard here as the load of persistent storage
Body.In order to realize the formatting to fuzzy self-adaption logic and persistent storage, the module additionally provide corresponding export (writing),
It is loaded into (reading) operation.Export operation is first by fuzzy self-adaption rule, linguistic variable fuzzy partition, the degree of membership in editing environment
The data such as function carry out the dendronized processing of standard, and then this tree structure information is written in XML file.Being loaded into operation is
The inverse process of operation is exported, i.e., the corresponding information of fuzzy self-adaption logic is parsed from XML file, and by these information in figure
Shown in the adaptive logic editing environment of shape.
(3) software obfuscation adaptive logic Aspect facility automatically-generating modules
The module is responsible for being automatically converted to the fuzzy self-adaption logic based on field language-specific to be based on Native language
The Aspect facilities of (the present embodiment uses C++), including Fuzzy Perceptron Model Aspect, fuzzy self-adaption device Aspect and mould
Actuator Aspect is pasted, in order to which fuzzy self-adaption logic directly is woven directly into the executable software based on Native language
In system.Specifically, the module is collected essential information by user session frame and preserved including Aspect titles, file first
Position etc., then according to the fuzzy self-adaption logic defined in visual edit environment, generates corresponding class and Aspect.
The module also generates a software data bus based on global array simultaneously, for perceptron Aspect, adaptive device
The data exchange channel interacted between Aspect and fuzzy self-adaption Aspect inside target software.It is woven into target soft
Aspect facilities after part are needed with obscuring when performing the operation such as obfuscation computing, fuzzy reasoning computing, sharpening computing
Logic engine module is interacted.
(4) fuzzy logic engine module
The module is the total activation of support system, is responsible for explaining execution, fuzzy self-adaption to fuzzy self-adaption strategy
Reasoning computing etc..Due to the fuzzy logic operation that this module is mainly completed, therefore, this part is directly from FuzzyLite relayings
Hold.
(5) fuzzy logic basic operation module
The module is responsible for basic operation to fuzzy logic and algorithm is managed, including asking friendship, ask to fuzzy set
Union, membership function storehouse etc. is managed.The module is also directly to be inherited from from FuzzyLite.
Fig. 2 is that fuzzy self-adaption logical edit and the totality of emulation testing module realize structure, when the clear and definite software of developer
After the conceptual framework of fuzzy self-adaption ring, so that it may editor and the test work of software obfuscation adaptive logic are carried out using the module
Make, be specially:
(1) obfuscation of adaptive ring input/output variable.Realize to the link variable such as perception, execution in adaptive ring
Fuzzy processing, including membership function definition, the determination of fuzzy partition number etc..
(2) editor of fuzzy self-adaption strategy and syntax check.Fuzzy self-adaption strategy is carried out based on FCL fuzzy rules
Editor, while carrying out syntax check to the strategy after editor.
(3) fuzzy self-adaption logical simulation is tested.Emulation is patterned to the fuzzy self-adaption logic after the completion of editor
Test, the result of decision of dynamic analysis adaptive logic, while the feedback optimized fuzzy self-adaption strategy of analysis result can be utilized.
Fig. 3 is the general structure of support system persistent storage module.The information of fuzzy self-adaption logic has tree-shaped number
According to the feature of structure, so using the XML document of standard here as the carrier of persistent storage.In realization, still use
Target-oriented thought, respectively defines the software entitys such as tree constructor class, XML read-write operations classes, storage class to be responsible for completion
Persistent storage function based on XML.XML file storage format is as shown in table 1 defined in of the invention.In addition, for convenience
The XML document of generation is shared, and enables to form a set of standards system, and we also define DTD texts for the XML document of generation
Part.DTD (Document Type Definition) is used for the syntax rule that defined label is accorded with.It belongs to the one of XML1.0 specifications
Part, is a kind of authentication mechanism of XML file, is normally contained in XML file, is a part for XML file.DTD is a kind of
The effective ways of XML document form correctness are controlled, can be by contrasting the definition of XML document and dtd file to judge document
No to meet specification, label or element use no correct.XML file provides a kind of load of data exchange for application program
Body, the effect of dtd file exactly allows XML file to turn into a kind of specific data exchange standard, because different groups is only
Standard DTD need to be defined, other groups can set up the XML file of reference format according to DTD, and be verified, so as to set up
The standard of data format, and carry out on network data interaction.The dtd file content of definition is shown in Table 1.
The XML storage formats of the fuzzy self-adaption logic of table 1
There is provided corresponding export (writing), loading (reading) in the menu of fuzzy self-adaption logic persistent storage module
Actions menu.Export operation is first by the fuzzy self-adaption rule in editing environment, linguistic variable fuzzy partition, degree of membership letter
The data such as number carry out the dendronized processing of standard, and then this tree structure information is written in XML file.It is to lead to be loaded into operation
Go out the inverse process of operation, i.e., the corresponding information of fuzzy self-adaption logic is parsed from XML file, and by these information in figure
Shown in the adaptive logic editing environment of change.
Fig. 4 is the realization principle of fuzzy self-adaption Aspect facility automatically-generating modules.Support system specially provides mould
Self-adaptive fuzzy Aspect facility automatically-generating modules, are realized after the test emulation of fuzzy self-adaption logic is completed, and generate mould
Self-adaptive fuzzy correlation Aspect facilities.The module employs Target-oriented thought in realization, is designed with special Aspect generations
Code generation class, it obtains fuzzy self-adaption logic relevant information first from editing environment, then matches somebody with somebody according to the predefined of user
Put (such as adaptive facility class name, generation path), disposable Mass production Fuzzy Perceptron Model, fuzzy self-adaption device, fuzzy execution
Aspect and data blackboard object of device etc. three.
Fig. 5 is data communication realization mechanism between fuzzy self-adaption Aspect facilities.Data blackboard is for be implanted to
Communicated between Fuzzy Perceptron Model object, fuzzy self-adaption device object and fuzzy self-adaption device object inside target software and
The software facility of data exchange, also referred to as software bus, the flow for managing fuzzy self-adaption.Static class R is served
The effect of software bus, its internal maintenance two message queue Input queues and Output queues, wherein Input queues are deposited
The sensed values of input are put, the result of fuzzy self-adaption decision-making is deposited in Output queues.
Fig. 6 generates Aspect phases when being and realizing fuzzy self-adaption using fuzzy self-adaption Aspect facility automatically-generating modules
Close the process of file.There is provided there is Aspect to generate menu item in support system, clicking on the menu item, just to eject Aspect prewired
Dialog box is put, fuzzy self-adaption device (FuzzyAdpator) that User Defined will generate is allowed in the dialog box, fuzzy
The title of perceptron (FuzzySensor), fuzzy actuator class (FuzzyActuator), data blackboard class etc., and Aspect
The storing path of associated documents.After above-mentioned work is completed, " OK " button in dialog box is clicked on, so that it may which automatic batch is generated
The files such as Aspect.
The invention provides a kind of adaptive visual of software obfuscation based on the adaptive support system of above-mentioned software obfuscation
Change editor and automatic generating method.Fig. 7 illustrates the basic step of this method, including determines fuzzy self-adaption demand
(Specifying SFSA Requirements), the adaptive dependent variable of obfuscation (Fuzzifying SFSA Variables), volume
Collect fuzzy self-adaption strategy (Editing SFSA Policies), test fuzzy self-adaption logic (Testing SFSA
Logic), generation fuzzy self-adaption Aspect (Generating SFSA Aspects) and braiding fuzzy self-adaption Aspect
(Weaving SFSA Aspects), when each step is pinpointed the problems, returns to previous step and is remodified and optimized.Tool
Body is:
Step 1, editor and emulation testing fuzzy self-adaption strategy:Utilize software obfuscation adaptive visualization editor and emulation
Test module editor and emulation testing fuzzy self-adaption strategy.It is true according to fuzzy self-adaption demand and fuzzy self-adaption target first
The input of cover half self-adaptive fuzzy, output variable, then carry out Fuzzy processing, secondly editor is based on fuzzy by fuzzy self-adaption variable
The fuzzy self-adaption strategy of rule, then carries out syntax error inspection, finally to fuzzy to the fuzzy self-adaption strategy editted
Adaptive strategy carries out emulation testing, is specially:
(1) fuzzy self-adaption demand is determined.The target of the fuzzy self-adaption of hard objectives software, fuzzy self-adaption are related to
The contents such as input, output variable.Single input variable (Temperature) and list output variable (CPU) adding procedure on the left of Fig. 8
Embodiment.
(2) the adaptive dependent variable of obfuscation.Input, the output variable of fuzzy self-adaption are created using support system, and to every
One variable carries out fuzzy partition, defines worth membership function of each fuzzy language etc..It is to fuzzy self-adaption on the right side of Fig. 8
Variable Temperature carries out fuzzy partition (High and Mid) twice, and defines membership function for each fuzzy language value
Embodiment.
(3) fuzzy self-adaption strategy is edited.Using fuzzy self-adaption strategy of the support system editor based on fuzzy rule, compile
Syntax error inspection can be carried out during volume.Lower section is fuzzy self-adaption strategy editor and test section, such as rule " if on the left of Fig. 8
Temperature is Mid then CPU is High”。
(4) fuzzy self-adaption logic is tested.The fuzzy self-adaption logic editted is patterned using support system
Emulation and test, to find the logic error implied in fuzzy self-adaption reasoning.Top is realized fuzzy to above-mentioned 9 on the left of Fig. 8
The graphical simulation of adaptation rule and test.
Step 2, fuzzy self-adaption strategy is stored:Fuzzy operation is carried out first with fuzzy logic basic operation module
Configuration, then sets store path using fuzzy self-adaption logic persistent storage module, stores above-mentioned configuration information and step 1
The fuzzy self-adaption input, output variable, fuzzy self-adaption rule, realize the recycling of fuzzy self-adaption logic and are total to
Enjoy;
Step 3, generation fuzzy self-adaption Aspect.After emulating and being completed, base is automatically generated using support system
In the fuzzy self-adaption aspect files of executable language (such as C++) code.Fig. 6 is that fuzzy self-adaption Aspect facilities are criticized automatically
13 Aspect associated documents of Mass production in amount generation schematic diagram, the embodiment.
Step 4, braiding fuzzy self-adaption Aspect.Instrument, such as Aspect C++ are woven by general Aspect
Weaver, the aspect files that step 3 is generated are woven into target software, so as to be internally formed software mould in target software
Self-adaptive fuzzy ring.
Software obfuscation adaptive logic support system and development approach that the present invention is provided, can be expanded with one kind in control field
Based on the fuzzy control software system (such as Fuzzylite) of exhibition, with reference to the AOP (Aspect-oriented programming) in soft project and
The technologies such as OOP (OOP) construct the adaptive support system of software obfuscation.System provides visual graphical interfaces
To edit fuzzy self-adaption logic, the adaptive developer of software is allowed to be intuitive to see fuzzy logic implementation effect, and convenient pair
The parameters of fuzzy logic and setting are modified, and then can be directly generated and are based on for the fuzzy logic editted
Aspect native ambivalence adaptive logic source codes, can be automatic directly by these using Aspect crochets
Aspect is woven into target software.This system provides the preservation of fuzzy self-adaption logic and import feature, and establish mould
The standard of fuzzy logic storage format, facilitates shared between different groups.So as to reduce the exploitation of software obfuscation adaptively
Difficulty, for software obfuscation, adaptively exploitation provides visualization, the supporting method automated, improves software development efficiency.
Claims (5)
1. a kind of adaptive support system of software obfuscation, it is characterised in that:The support system supports software obfuscation adaptive logic
Visual edit is generated with automation, is specifically included:Software obfuscation adaptive visualization editor and emulation testing module, software mould
Self-adaptive fuzzy logic persistent storage module, fuzzy self-adaption Aspect facilities automatically-generating module, fuzzy logic basic operation
It is adaptively visual that module, fuzzy logic enforcement engine module, wherein fuzzy logic basic operation module are respectively connected to software obfuscation
Change editor and emulation testing module, fuzzy logic enforcement engine module, fuzzy self-adaption Aspect facility automatically-generating modules, mould
Fuzzy logic enforcement engine module respectively with software obfuscation adaptive visualization editor and emulation testing module, fuzzy self-adaption
Aspect facility automatically-generating modules are connected, and software obfuscation adaptive logic persistent storage module and software obfuscation are adaptive
Visual edit is connected with emulation testing module, and software obfuscation adaptive visualization editor and the access of emulation testing module are fuzzy
Adaptive Aspect facility automatically-generating modules, each module effect is as follows:
It is adaptive that software obfuscation adaptive visualization editor provides the software obfuscation based on field language-specific with emulation testing module
Tactful visual edit and test environment are answered, wherein fuzzy self-adaption strategy is carried out in the form of " if-then " fuzzy rule
Expression;
Software obfuscation adaptive logic persistent storage module is realized to be entered to the fuzzy self-adaption strategy and relevant configuration that edit
Row persistent storage;
Fuzzy self-adaption Aspect facilities automatically-generating module turns the fuzzy self-adaption logic based on field language-specific automatically
Turn to based on the Aspect facilities of Native language and a data blackboard object;The data blackboard object is used for Fuzzy Perceptron Model
The interaction of Aspect, fuzzy self-adaption device Aspect and fuzzy actuator Aspect in target software;
Basic operation and algorithm of the fuzzy logic basic operation module realization to fuzzy logic are managed;
The total activation of fuzzy logic enforcement engine block supports system, is responsible for explaining fuzzy self-adaption strategy execution, complete
Into fuzzy self-adaption reasoning computing;
The Aspect is the meaning of aspect, in being Aspect Oriented Programming this software development pattern
Concept, Aspect is the program module being packaged to the crosscutting concerns in software operation logic.
2. the adaptive support system of software obfuscation according to claim 1, it is characterised in that:The software obfuscation is adaptive
Logic persistent storage module is realized carries out persistent storage, tool to the fuzzy self-adaption rule and relevant configuration information that edit
Body is:
(1) the software obfuscation adaptation rule editted is stored using XML format;
(2) configuration information is stored using XML format, the configuration information includes:Fuzzy reasoning parameter configuration, definition
The fuzzy partition of input/output variable and the input/output variable.
3. the adaptive support system of software obfuscation according to claim 1, it is characterised in that:The fuzzy self-adaption
Fuzzy self-adaption logic based on field language-specific is automatically converted to be based on native by Aspect facilities automatically-generating module
The Aspect facilities of language and a data blackboard object, the Aspect facilities include Fuzzy Perceptron Model Aspect, fuzzy adaptive
Device Aspect and fuzzy actuator Aspect are answered, is specially:
(1) module object-oriented, provided with special Aspect code building classes, obtains fuzzy self-adaption logic from editing environment
Relevant information;
(2) Fuzzy Perceptron Model disposably generated to the predetermined configuration of adaptive facility class name, store path according to user, obscured
Adaptive device, fuzzy three Aspect facilities of actuator and a data blackboard object, the data blackboard object are used for fuzzy sense
Know the interaction of device Aspect, fuzzy self-adaption device Aspect and fuzzy actuator Aspect in target software.
4. a kind of adaptive development approach of software obfuscation based on the adaptive support system of software obfuscation described in claim 1, its
It is characterised by:This method realizes that software obfuscation adaptive logic visual edit is generated with automation, and step is as follows:
Step 1, software obfuscation adaptive visualization editor and emulation testing module editor and emulation testing fuzzy self-adaption are utilized
Strategy:Fuzzy self-adaption input, output variable are determined according to fuzzy self-adaption demand and fuzzy self-adaption target first, then will
Fuzzy self-adaption variable carries out Fuzzy processing;Secondly the fuzzy self-adaption strategy based on fuzzy rule is edited, then to editor
Good fuzzy self-adaption strategy carries out syntax error inspection;Emulation testing finally is carried out to fuzzy self-adaption strategy;
Step 2, fuzzy self-adaption strategy is stored:Fuzzy operation is matched somebody with somebody first with fuzzy logic basic operation module
Put, store path, mould described in storage configuration information and step 1 then are set using fuzzy self-adaption logic persistent storage module
Self-adaptive fuzzy input, output variable, fuzzy self-adaption rule, realize the recycling of fuzzy self-adaption logic and share;
Step 3, generation fuzzy self-adaption Aspect:Base is automatically generated using fuzzy self-adaption Aspect facility automatically-generating modules
In the fuzzy self-adaption Aspect files of executable language codes;
Step 4, braiding fuzzy self-adaption Aspect:Instrument is woven by general Aspect, the Aspect texts that step 3 is generated
Part is woven into target software, so as to be internally formed the adaptive ring of software obfuscation in target software.
5. the adaptive development approach of software obfuscation according to claim 4, it is characterised in that:Using soft described in step 1
Part fuzzy self-adaption visual edit and emulation testing module editor and emulation testing fuzzy self-adaption strategy, be specially:
(1) adaptive dependent variable is determined:Determine to obscure certainly according to fuzzy self-adaption demand and the fuzzy self-adaption target of target software
Adaptation input, output variable, are obscured certainly needed for software obfuscation adaptive visualization editor and emulation testing module add one by one
Adapt to input, output variable;
(2) the adaptive dependent variable of obfuscation:Step (1) is added with emulation testing module in software obfuscation adaptive visualization editor
Plus fuzzy self-adaption input, output variable carry out fuzzy partition, generate multiple fuzzy language values, and be each fuzzy language
Value defines membership function;
(3) fuzzy self-adaption strategy is edited:Mould is based in software obfuscation adaptive visualization editor and emulation testing module editor
The fuzzy self-adaption strategy of rule is pasted, syntax error inspection then is carried out to the fuzzy self-adaption strategy editted;
(4) fuzzy self-adaption strategy is tested:In software obfuscation adaptive visualization editor and emulation testing module to editting
Fuzzy self-adaption strategy is patterned emulation and tested, to find the logic error implied in fuzzy self-adaption reasoning, test
Process needs fuzzy logic basic operation module, the support of fuzzy logic enforcement engine module.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410175451.9A CN103955368B (en) | 2014-04-28 | 2014-04-28 | A kind of adaptive support system of software obfuscation and development approach |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410175451.9A CN103955368B (en) | 2014-04-28 | 2014-04-28 | A kind of adaptive support system of software obfuscation and development approach |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103955368A CN103955368A (en) | 2014-07-30 |
CN103955368B true CN103955368B (en) | 2017-08-04 |
Family
ID=51332644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410175451.9A Active CN103955368B (en) | 2014-04-28 | 2014-04-28 | A kind of adaptive support system of software obfuscation and development approach |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103955368B (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486334A (en) * | 2014-12-11 | 2015-04-01 | 北京国双科技有限公司 | File transmission protocol account addition method and device |
CN106411626A (en) * | 2015-08-03 | 2017-02-15 | 中兴通讯股份有限公司 | Test method and device based on DSL network element simulator |
CN112346334B (en) * | 2019-08-06 | 2022-01-11 | 北京东土科技股份有限公司 | Configuration method, device and equipment of fuzzy control parameters and storage medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1224515A (en) * | 1997-02-21 | 1999-07-28 | 贝克·休斯公司 | Adaptive object-oriented optimization software system |
US6807535B2 (en) * | 2000-03-08 | 2004-10-19 | Lnk Corporation | Intelligent tutoring system |
-
2014
- 2014-04-28 CN CN201410175451.9A patent/CN103955368B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1224515A (en) * | 1997-02-21 | 1999-07-28 | 贝克·休斯公司 | Adaptive object-oriented optimization software system |
US6807535B2 (en) * | 2000-03-08 | 2004-10-19 | Lnk Corporation | Intelligent tutoring system |
Non-Patent Citations (1)
Title |
---|
自适应模糊控制方法研究及仿真软件设计;吴泽伟;《中国优秀硕士学位论文全文数据库》;20060601;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN103955368A (en) | 2014-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Bunte et al. | The mCRL2 toolset for analysing concurrent systems: improvements in expressivity and usability | |
Stahl et al. | Rapid prototyping of CBR applications with the open source tool myCBR | |
CN106021816B (en) | A kind of implementation method of the distributed system behavior simulation analysis tool of Behavior-based control tree | |
CN106293664A (en) | Code generating method and device | |
US11675570B2 (en) | System and method for using a graphical user interface to develop a virtual programmable logic controller | |
JP2011040059A5 (en) | ||
CN103052943A (en) | Source code conversion method and source code conversion program | |
EP3726442A1 (en) | Semantic modeling and machine learning-based generation of conceptual plans for manufacturing assemblies | |
CN103186457A (en) | Method and device for automatically generating test case | |
CN108197114A (en) | Detection method, device, storage medium and the electronic device of list data | |
CN103744647A (en) | Java workflow development system and method based on workflow GPD | |
CN109144511B (en) | Method and system for automatically generating numerical simulation graphical user interface | |
Dai et al. | Migration from PLC to IEC 61499 using semantic web technologies | |
CN103309667A (en) | Method for positioning UI (user interface) control and picture modifying position in Android system | |
Wang et al. | Advanced manufacturing technology in China: a roadmap to 2050 | |
CN103955368B (en) | A kind of adaptive support system of software obfuscation and development approach | |
Seiger et al. | Test modeling for context-aware ubiquitous applications with feature petri nets | |
CN110390110A (en) | The method and apparatus that pre-training for semantic matches generates sentence vector | |
CN106096159B (en) | A kind of implementation method of distributed system behavior simulation analysis system under cloud platform | |
CN106325860A (en) | Automatic maintenance method for aerospace embedded software interface data | |
CN102929853A (en) | DCS (Data Communication System) project data generating system and method based on Excel sheet association | |
CN113919158A (en) | Simulation method and device for flight control panel and storage medium | |
Boring et al. | Task and procedure level primitives for modeling human error | |
CN113296769A (en) | Data processing method, visual draft processing method, system and electronic equipment | |
CN106354633A (en) | Task schedule generation method based on algorithmic plug-in |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |