CN106412102A - Device and method for preventing application from being decompiled - Google Patents
Device and method for preventing application from being decompiled Download PDFInfo
- Publication number
- CN106412102A CN106412102A CN201610964099.6A CN201610964099A CN106412102A CN 106412102 A CN106412102 A CN 106412102A CN 201610964099 A CN201610964099 A CN 201610964099A CN 106412102 A CN106412102 A CN 106412102A
- Authority
- CN
- China
- Prior art keywords
- module
- index
- application
- index information
- message
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The invention provides a device and a method for preventing an application from being decompiled. The device comprises a compiler plug-in module and an index erasing module, wherein the compiler plug-in module calls the index erasing module when compiling the whole source code information; and the index erasing module uploads index information of the source code information to a preset remote server and erases the index information of the source code information. According to the implementation scheme provided by the invention, the way of decompiling can be fundamentally cut off, so that the intellectual property of a developer is effectively protected, and the safety degree of a terminal is improved.
Description
Technical field
The present invention relates to applicating maintenance field, more particularly, to a kind of prevent application by the apparatus and method of decompiling.
Background technology
Currently, the popularity rate of intelligent mobile terminal is at a relatively high;Each company and personal in order to by the Android of oneself
Android installation kit APK pushes user to, has put into substantial amounts of manpower, material resources and financial resources.However, the APK introducing to the market goes out soon
Show similar application;What is more implanted malicious code.The previous case allows the developmental achievement quilt of developer beyond doubt
Steal;Latter event is self-evident to the harm of the user using application.Here, this situation why occurs, lay the blame on
Fairly simple in the decompiling of current Android application, fundamentally do not break off the approach of decompiling.
Content of the invention
Present invention is primarily targeted at proposition is a kind of prevents application by the apparatus and method of decompiling, can be fundamentally
Break off the approach of decompiling, effectively the intellectual property of protective development person lift the degree of safety of terminal.
For achieving the above object, a kind of of present invention offer prevents application by the device of decompiling, and this device includes:Compiling
Device card module and erasing index module.
Compiler card module, for calling erasing index module to whole oss message when being compiled.
Erasing index module, for the index information of oss message is uploaded to default far-end server, and wipes source
The index information of code information.
Alternatively, the index information of erasing index module erasing oss message includes:
The index information unification of the oss message in the application being compiled Dex file is set to a default invalid value.
Alternatively, this device also includes:Remote service proxy module.
Remote service proxy module, for receiving the index information of the oss message that erasing index module uploads, to rope
It is uploaded to far-end server after drawing information back-up.
Alternatively, this device also includes:Rebuild index module.
Rebuild index module, the solicited message sending for receiving terminal, and solicited message is parsed;When parsing
When solicited message is the package informatin related to installation kit, remote service proxy module is called according to package informatin.
Alternatively, remote service proxy module, is additionally operable to accept to rebuild calling of index module, attaches most importance to and index module tune
With the index information in far-end server.
Additionally, for achieving the above object, the invention allows for a kind of prevent application by the device of decompiling, this device bag
Include:Snoop agents module and package manager are installed in application.
Whether snoop agents module is installed in application, have application mounted for monitoring when terminal starts in package manager,
When listen to have application mounted in package manager when to safeguarding that side sends solicited message;And receive the feedback letter safeguarding that side sends
Breath.
Package manager, is additionally operable to feedback information is parsed, and obtains the index information comprising in feedback information, and according to
The oss message of the mounted application of index information parsing.
Additionally, for achieving the above object, the invention allows for a kind of prevent application by the method for decompiling, the method bag
Include:
Call first thread when being compiled to whole oss message.
The index information of oss message is uploaded to by default far-end server by first thread, and wipes oss message
Index information.
Alternatively, the index information of erasing oss message includes:
The index information unification of the oss message in the application being compiled Dex file is set to a default invalid value.
Alternatively, the method also includes:It is uploaded to far-end server after index information is backed up.
Alternatively, the method also includes:
The solicited message that receiving terminal sends, and solicited message is parsed;When parsing solicited message it is and installation
During the package informatin of bag correlation, remote service proxy thread is called according to package informatin.
Alternatively, by the index information in remote service proxy thread dispatching far-end server.
Additionally, for achieving the above object, the invention allows for a kind of prevent application by the method for decompiling, the method bag
Include:
Monitor when terminal starts and whether have application mounted, when having listened to application and being mounted to safeguard that side sends please
Seek information;And receive the feedback information safeguarding that side sends.
Feedback information is parsed, obtains the index information comprising in feedback information, and quilt is parsed according to index information
The oss message of application is installed.
The present invention propose a kind of prevent application by the apparatus and method of decompiling, this device includes:Compiler plug-in unit mould
Block and erasing index module.Compiler card module calls erasing index module to whole oss message when being compiled;Wipe
Except the index information of oss message is uploaded to default far-end server by index module, and wipe the index letter of oss message
Breath.By embodiment of the present invention scheme, by embodiment of the present invention scheme, can fundamentally break off the approach of decompiling, have
Imitate the intellectual property of ground protective development person and lift the degree of safety of terminal.
Brief description
Fig. 1 is the hardware architecture diagram realizing the optional mobile terminal of each embodiment of the present invention one;
Fig. 2 is the wireless communication system schematic diagram of mobile terminal as shown in Figure 1;
Fig. 3 be the embodiment of the present invention prevent application by the apparatus structure schematic diagram of decompiling;
Fig. 4 be the embodiment of the present invention safeguard side prevent application by the device composition frame chart of decompiling;
Fig. 5 is the structural representation of the Dex file of the embodiment of the present invention;
Fig. 6 is that the end side of the embodiment of the present invention prevents application by the device composition frame chart of decompiling;
Fig. 7 be the embodiment of the present invention prevent application by the method schematic diagram of decompiling;
Fig. 8 be the embodiment of the present invention safeguard side prevent application by the method flow diagram of decompiling;
Fig. 9 is that the end side of the embodiment of the present invention prevents application by the method flow diagram of decompiling.
The realization of the object of the invention, functional characteristics and advantage will be described further in conjunction with the embodiments referring to the drawings.
Specific embodiment
It should be appreciated that specific embodiment described herein, only in order to explain the present invention, is not intended to limit the present invention.
Realize the optional mobile terminal of each embodiment of the present invention one referring now to Description of Drawings.In follow-up description
In, using such as " module ", " part " or " unit " for representing element suffix only for being conducive to the explanation of the present invention,
Itself does not have specific meaning.Therefore, " module " and " part " can mixedly use.
Mobile terminal can be implemented in a variety of manners.For example, the terminal described in the present invention can include such as moving
Phone, smart phone, notebook computer, digit broadcasting receiver, PDA (personal digital assistant), PAD (panel computer), PMP
The mobile terminal of (portable media player), guider etc. and such as numeral TV, desktop computer etc. consolidate
Determine terminal.Hereinafter it is assumed that terminal is mobile terminal.However, it will be understood by those skilled in the art that, except being used in particular for moving
Outside the element of purpose, construction according to the embodiment of the present invention can also apply to the terminal of fixed type.
Fig. 1 is that the hardware configuration of the mobile terminal realizing each embodiment of the present invention is illustrated.
Mobile terminal 1 00 can include wireless communication unit 110, A/V (audio/video) input block 120, user input
Unit 130, sensing unit 140, output unit 150, memory 160, interface unit 170, controller 180 and power subsystem 190
Etc..Fig. 1 shows the mobile terminal with various assemblies, it should be understood that being not required for implementing all groups illustrating
Part.More or less of assembly can alternatively be implemented.Will be discussed in more detail below the element of mobile terminal.
Wireless communication unit 110 generally includes one or more assemblies, and it allows mobile terminal 1 00 and wireless communication system
Or the radio communication between network.For example, wireless communication unit can include broadcasting reception module 111, mobile communication module
112nd, at least one of wireless Internet module 113, short range communication module 114 and location information module 115.
Broadcasting reception module 111 receives broadcast singal and/or broadcast via broadcast channel from external broadcast management server
Relevant information.Broadcast channel can include satellite channel and/or terrestrial channel.Broadcast management server can be generated and sent
The broadcast singal generating before the server of broadcast singal and/or broadcast related information or reception and/or broadcast related information
And send it to the server of terminal.Broadcast singal can include TV broadcast singal, radio signals, data broadcasting
Signal etc..And, broadcast singal may further include the broadcast singal combining with TV or radio signals.Broadcast phase
Pass information can also provide via mobile communications network, and in this case, broadcast related information can be by mobile communication mould
Block 112 is receiving.Broadcast singal can exist in a variety of manners, and for example, it can be with the electronics of DMB (DMB)
The form of program guide (EPG), the electronic service guidebooks (ESG) of digital video broadcast-handheld (DVB-H) etc. and exist.Broadcast
Receiver module 111 can be broadcasted by using various types of broadcast system receipt signals.Especially, broadcasting reception module 111
Can be wide by using such as multimedia broadcasting-ground (DMB-T), DMB-satellite (DMB-S), digital video
Broadcast-hand-held (DVB-H), forward link media (MediaFLO@) Radio Data System, received terrestrial digital broadcasting integrated service
Etc. (ISDB-T) digit broadcasting system receives digital broadcasting.Broadcasting reception module 111 may be constructed such that and is adapted to provide for extensively
Broadcast the various broadcast systems of signal and above-mentioned digit broadcasting system.Via broadcasting reception module 111 receive broadcast singal and/
Or broadcast related information can be stored in memory 160 (or other types of storage medium).
Mobile communication module 112 sends radio signals to base station (for example, access point, node B etc.), exterior terminal
And at least one of server and/or receive from it radio signal.Such radio signal can include voice and lead to
Words signal, video calling signal or the various types of data sending and/or receiving according to text and/or Multimedia Message.
Wireless Internet module 113 supports the Wi-Fi (Wireless Internet Access) of mobile terminal.This module can be internally or externally
It is couple to terminal.Wi-Fi (Wireless Internet Access) technology involved by this module can include WLAN (WLAN) (Wi-Fi), Wibro
(WiMAX), Wimax (worldwide interoperability for microwave accesses), HSDPA (high-speed downlink packet access) etc..
Short range communication module 114 is the module for supporting junction service.Some examples of short-range communication technology include indigo plant
ToothTM, RF identification (RFID), Infrared Data Association (IrDA), ultra broadband (UWB), purple honeybeeTMEtc..
Location information module 115 be for check or obtain mobile terminal positional information module.Location information module
Typical case be GPS (global positioning system).According to current technology, GPS module 115 calculates and is derived from three or more satellites
Range information and correct time information and for the Information application triangulation calculating, thus according to longitude, latitude
Highly accurately calculate three-dimensional current location information.Currently, the method for calculating position and temporal information is defended using three
Star and the error of the position that calculates by using other satellite correction and temporal information.Additionally, GPS module 115
Can be by Continuous plus current location information in real time come calculating speed information.
A/V input block 120 is used for receiving audio or video signal.A/V input block 120 can include camera 121 He
Microphone 1220, camera 121 is to the static map being obtained by image capture apparatus in Video Capture pattern or image capture mode
The view data of piece or video is processed.Picture frame after process may be displayed on display unit 151.At camera 121
Picture frame after reason can be stored in memory 160 (or other storage medium) or carry out via wireless communication unit 110
Send, two or more cameras 1210 can be provided according to the construction of mobile terminal.Microphone 122 can be in telephone relation mould
Sound (voice data) is received via microphone in formula, logging mode, speech recognition mode etc. operational mode, and can be by
Such acoustic processing is voice data.Audio frequency (voice) data after process can be changed in the case of telephone calling model
For can be sent to the form output of mobile communication base station via mobile communication module 112.Microphone 122 can implement all kinds
Noise eliminate (or suppression) algorithm with eliminate (or suppression) receive and the noise that produces during sending audio signal or
Person disturbs.
User input unit 130 can generate key input data to control each of mobile terminal according to the order of user input
Plant operation.User input unit 130 allows the various types of information of user input, and can include keyboard, metal dome, touch
Plate (for example, detection due to touched and lead to resistance, pressure, the change of electric capacity etc. sensitive component), roller, rocking bar etc.
Deng.Especially, when touch pad is superimposed upon on display unit 151 as a layer, touch-screen can be formed.
Sensing unit 140 detect mobile terminal 1 00 current state, (for example, mobile terminal 1 00 open or close shape
State), the position of mobile terminal 1 00, user is for the presence or absence of the contact (that is, touch input) of mobile terminal 1 00, mobile terminal
100 orientation, the acceleration or deceleration movement of mobile terminal 1 00 and direction etc., and generate for controlling mobile terminal 1 00
The order of operation or signal.For example, when mobile terminal 1 00 is embodied as sliding-type mobile phone, sensing unit 140 can sense
This sliding-type phone opens or cuts out.In addition, sensing unit 140 can detect power subsystem 190 whether provide electric power or
Whether person's interface unit 170 is coupled with external device (ED).Sensing unit 140 can include proximity transducer 1410 and will combine below
Touch-screen this is described.
Interface unit 170 is connected, with mobile terminal 1 00, the interface that can pass through as at least one external device (ED).For example,
External device (ED) can include wired or wireless head-band earphone port, external power source (or battery charger) port, wired or nothing
Line FPDP, memory card port, the port of device for connection with identification module, audio input/output (I/O) end
Mouth, video i/o port, ear port etc..Identification module can be storage for verifying that user uses each of mobile terminal 1 00
Kind of information and subscriber identification module (UIM), client identification module (SIM), Universal Subscriber identification module (USIM) can be included
Etc..In addition, the device (hereinafter referred to as " identifying device ") with identification module can take the form of smart card, therefore, know
Other device can be connected with mobile terminal 1 00 via port or other attachment means.Interface unit 170 can be used for reception and is derived from
The input (for example, data message, electric power etc.) of the external device (ED) and input receiving is transferred in mobile terminal 1 00
One or more elements or can be used for transmission data between mobile terminal and external device (ED).
In addition, when mobile terminal 1 00 is connected with external base, interface unit 170 can serve as allowing by it by electricity
Power provides the path of mobile terminal 1 00 from base or can serve as allowing the various command signals from base input to pass through it
It is transferred to the path of mobile terminal.May serve as identifying that mobile terminal is from the various command signals of base input or electric power
The no signal being accurately fitted within base.Output unit 150 is configured to defeated with the offer of vision, audio frequency and/or tactile manner
Go out signal (for example, audio signal, vision signal, alarm signal, vibration signal etc.).Output unit 150 can include showing
Unit 151, dio Output Modules 152, alarm unit 153 etc..
Display unit 151 may be displayed on the information processing in mobile terminal 1 00.For example, when mobile terminal 1 00 is in electricity
During words call mode, display unit 151 can show (for example, text messaging, the multimedia file that communicate with call or other
Download etc.) related user interface (UI) or graphic user interface (GUI).When mobile terminal 1 00 is in video calling pattern
Or during image capture mode, display unit 151 can show the image of capture and/or the image of reception, illustrate video or figure
UI or GUI of picture and correlation function etc..
Meanwhile, when display unit 151 and the touch pad touch-screen with formation superposed on one another as a layer, display unit
151 can serve as input unit and output device.Display unit 151 can include liquid crystal display (LCD), thin film transistor (TFT)
In LCD (TFT-LCD), Organic Light Emitting Diode (OLED) display, flexible display, three-dimensional (3D) display etc. at least
A kind of.Some in these displays may be constructed such that transparence to allow user from outside viewing, and this is properly termed as transparent
Display, typical transparent display can be, for example, TOLED (transparent organic light emitting diode) display etc..According to specific
The embodiment wanted, mobile terminal 1 00 can include two or more display units (or other display device), for example, moves
Dynamic terminal can include outernal display unit (not shown) and inner display unit (not shown).Touch-screen can be used for detection and touches
Input pressure and touch input position and touch input area.
Dio Output Modules 152 can mobile terminal be in call signal reception pattern, call mode, logging mode,
When under the isotypes such as speech recognition mode, broadcast reception mode, that wireless communication unit 110 is received or in memory 160
The voice data transducing audio signal of middle storage and be output as sound.And, dio Output Modules 152 can provide and move
The audio output (for example, call signal receives sound, message sink sound etc.) of the specific function correlation of terminal 100 execution.
Dio Output Modules 152 can include loudspeaker, buzzer etc..
Alarm unit 153 can provide output to notify event to mobile terminal 1 00.Typical event is permissible
Including calling reception, message sink, key signals input, touch input etc..In addition to audio or video output, alarm unit
153 can provide output in a different manner with the generation of notification event.For example, alarm unit 153 can be in the form of vibrating
Output is provided, enters when communicating (incomingcommunication) when receiving calling, message or some other, alarm list
Unit 153 can provide tactile output (that is, vibrating) to notify to user.By providing such tactile output, even if
When the mobile phone of user is in the pocket of user, user also can recognize that the generation of various events.Alarm unit 153
The output of the generation of notification event can be provided via display unit 151 or dio Output Modules 152.
Memory 160 can store software program of the process being executed by controller 180 and control operation etc.
Deng, or can temporarily store oneself data (for example, telephone directory, message, the static map through exporting or will export
Picture, video etc.).And, memory 160 can be to store the shaking of various modes with regard to exporting when touching and being applied to touch-screen
The dynamic data with audio signal.
Memory 160 can include the storage medium of at least one type, and described storage medium includes flash memory, hard disk, many
Media card, card-type memory (for example, SD or DX memory etc.), random access storage device (RAM), static random-access storage
Device (SRAM), read-only storage (ROM), Electrically Erasable Read Only Memory (EEPROM), programmable read only memory
(PROM), magnetic storage, disk, CD etc..And, mobile terminal 1 00 can execute memory with by network connection
The network storage device cooperation of 160 store function.
Controller 180 generally controls the overall operation of mobile terminal.For example, controller 180 execution and voice call, data
The related control of communication, video calling etc. and process.In addition, controller 180 can be included for reproducing (or playback) many matchmakers
The multi-media module 1810 of volume data, multi-media module 1810 can construct in controller 180, or it is so structured that and control
Device 180 processed separates.Controller 180 can be with execution pattern identifying processing, by the handwriting input executing on the touchscreen or figure
Piece is drawn input and is identified as character or image.
Power subsystem 190 receives external power or internal power under the control of controller 180 and provides operation each unit
Suitable electric power needed for part and assembly.
Various embodiment described herein can be with using such as computer software, hardware or its any combination of calculating
Machine computer-readable recording medium is implementing.Hardware is implemented, embodiment described herein can be by using application-specific IC
(ASIC), digital signal processor (DSP), digital signal processing device (DSPD), programmable logic device (PLD), scene can
Program gate array (FPGA), processor, controller, microcontroller, microprocessor, be designed to execute function described herein
At least one in electronic unit implementing, in some cases, can be implemented in controller 180 by such embodiment.
Software is implemented, the embodiment of such as process or function can with allow to execute the single of at least one function or operation
Software module is implementing.Software code can be come by the software application (or program) write with any suitable programming language
Implement, software code can be stored in memory 160 and be executed by controller 180.
So far, oneself is through describing mobile terminal according to its function.Below, for the sake of brevity, will describe such as folded form,
Slide type mobile terminal in various types of mobile terminals of board-type, oscillating-type, slide type mobile terminal etc. is as showing
Example.Therefore, the present invention can be applied to any kind of mobile terminal, and is not limited to slide type mobile terminal.
As shown in Figure 1 mobile terminal 1 00 may be constructed such that using via frame or packet transmission data all if any
Line and wireless communication system and satellite-based communication system are operating.
The communication system being wherein operable to according to the mobile terminal of the present invention referring now to Fig. 2 description.
Such communication system can use different air interfaces and/or physical layer.For example, used by communication system
Air interface includes such as frequency division multiple access (FDMA), time division multiple acess (TDMA), CDMA (CDMA) and universal mobile communications system
System (UMTS) (especially, Long Term Evolution (LTE)), global system for mobile communications (GSM) etc..As non-limiting example, under
The description in face is related to cdma communication system, but such teaching is equally applicable to other types of system.
With reference to Fig. 2, cdma wireless communication system can include multiple mobile terminal 1s 00, multiple base station (BS) 270, base station
Controller (BSC) 275 and mobile switching centre (MSC) 280.MSC280 is configured to and Public Switched Telephony Network (PSTN)
290 formation interfaces.MSC280 is also structured to and can form interface via the BSC275 that back haul link is couple to base station 270.
If back haul link can construct according to any one in the interface that Ganji knows, described interface includes such as E1/T1, ATM, IP,
PPP, frame relay, HDSL, ADSL or xDSL.It will be appreciated that system as shown in Figure 2 can include multiple BSC2750.
Each BS270 can service one or more subregions (or region), by the sky of multidirectional antenna or sensing specific direction
Each subregion that line covers is radially away from BS270.Or, each subregion can by for diversity reception two or more
Antenna covers.Each BS270 may be constructed such that support multiple frequency distribution, and the distribution of each frequency has specific frequency spectrum
(for example, 1.25MHz, 5MHz etc.).
Intersecting that subregion and frequency are distributed can be referred to as CDMA Channel.BS270 can also be referred to as base station transceiver
System (BTS) or other equivalent terms.In this case, term " base station " can be used for broadly representing single
BSC275 and at least one BS270.Base station can also be referred to as " cellular station ".Or, each subregion of specific BS270 can be claimed
For multiple cellular stations.
As shown in Figure 2, broadcast singal is sent to the mobile terminal of operation in system by broadcsting transmitter (BT) 295
100.Broadcasting reception module 111 is arranged at mobile terminal 1 00 to receive the broadcast being sent by BT295 as shown in Figure 1
Signal.In fig. 2 it is shown that several global positioning system (GPS) satellites 300.Satellite 300 helps position multiple mobile terminals
At least one of 100.
In fig. 2, depict multiple satellites 300, it is understood that be, it is possible to use any number of satellite obtains useful
Location information.GPS module 115 is generally configured to coordinate with satellite 300 to obtain the positioning letter wanted as shown in Figure 1
Breath.Substitute GPS tracking technique or outside GPS tracking technique, it is possible to use other of the position of mobile terminal can be followed the tracks of
Technology.In addition, at least one gps satellite 300 can optionally or additionally process satellite dmb transmission.
As a typical operation of wireless communication system, BS270 receives the reverse link from various mobile terminal 1s 00
Signal.Mobile terminal 1 00 generally participates in call, information receiving and transmitting and other types of communication.Each of certain base station 270 reception is anti-
Processed in specific BS270 to link signal.The data obtaining is forwarded to the BSC275 of correlation.BSC provides call
Resource allocation and the mobile management function of including the coordination of soft switching process between BS270.BSC275 is also by the number receiving
According to being routed to MSC280, it provides the extra route service for forming interface with PSTN290.Similarly, PSTN290 with
MSC280 forms interface, and MSC and BSC275 form interface, and BSC275 correspondingly controls BS270 with by forward link signals
It is sent to mobile terminal 1 00.
Based on above-mentioned optional mobile terminal hardware configuration and communication system, each embodiment of the inventive method is proposed.
As shown in Figure 3, Figure 4, first embodiment of the invention propose a kind of prevent from applying by the device 1 of decompiling, apply
In safeguarding side, this device includes:Compiler card module 11 and erasing index module 12.
Compiler card module 11, for calling erasing index module to whole oss message when being compiled.
In embodiments of the present invention, due to saving resource and the code information of application in the Dex file of application, that is, above-mentioned
Oss message, Dex file to the management of these information be by index complete;In addition, Dex file itself is to these information simultaneously
Do not take safeguard measure.So, decompiling Dex file acquisition application oss message with regard to very simple, by index information
The information of needs just can be found.Shown in structure Fig. 5 of Dex file.As shown in Figure 5, comprise word in the head of Dex file
Symbol string indexing, types index, method index ... class index etc., correspond to string data, categorical data, side operator respectively
According to ... class data etc..Therefore, based on this structure, as long as decompiling thread obtains the index information of corresponding data, just can be light
Loose obtains corresponding data message by this index information.
The safety problem existing for above-mentioned application structure itself, this programme makes application anti-using zero Indexing Mechanism
Compiling, specially to shield the approach of decompiling by the way of erasing index;Meanwhile, taken by long-range when application is mounted
Business recovers index, so that application can be normally run.By this embodiment scheme, when carrying out decompiling, decompiler reads
Arrive for invalid index, decompiler is according to cannot be resolved to effective application source code after invalid index.So, in certain journey
On degree, containment application is by the situation of decompiling, the intellectual property of protective development person and the degree of safety lifting user mobile phone.
In embodiment of the present invention scheme, in advance compiler card module 11 is integrated to development environment safeguarding side first
In, its major function is after the completion of application is developed, and when developer carries out source code compiling, calls erasing indices modulo
Block 12 is wiped to index, because after the completion of application is developed, is required for carrying out further source code compiling, therefore can be
During this, index is wiped.
Erasing index module 12, for the index information of oss message is uploaded to default far-end server, and wipes
The index information of oss message.
In embodiment of the present invention scheme, safeguard that side also needs to pre-set erasing index module 12 and supplies compiler built-in
Compiler card module 11 calls.In compilation process, when compiler card module 11 receives compiler card module 11
During the call instruction sent, implement first thread (as erasing index thread), the index information of oss message in erasing Dex file.
Before this, erasing index module 12 needs first the index information of oss message in Dex file to be uploaded to default far-end clothes
Business device is preserved.
Alternatively, the index information of erasing index module 12 erasing oss message includes:
The index information unification of the oss message in the application being compiled Dex file is set to a default invalid value.
In embodiments of the present invention, for the ease of being marked to the index information of the oss message in application Dex file,
In advance each index information of the oss message in Dex file can be respectively provided with and pre-set flag bit accordingly, this mark
Position can arrange different numerical value so that current index information is set to different states.For example, it is set to 1, mark is current
Index information effectively, is set to 0, identifies current index information invalid.In embodiments of the present invention, in order to wipe oss message
The index information unification of oss message can be set to a default invalid value, for example, be disposed as 0 by index information.This
Sample, cannot be resolved to effective oss message after decompiler gets invalid index.Here it is the core preventing decompiling
The heart.
Alternatively, this device also includes:Remote service proxy module 13.
Remote service proxy module 13, for receiving the index information of the oss message that erasing index module 12 uploads,
It is uploaded to far-end server to after the backup of this index information.
In embodiments of the present invention, in order to reduce workload and the in-fighting of erasing index module 12, in erasing index module
Before the index information of 12 erasing oss messages, in advance the index information of oss message can be uploaded to remote service proxy mould
Block 13, is backed up to the index information of oss message by remote service proxy module 13, and passes through remote service proxy mould
Index information through backup is uploaded to far-end server by block 13.This is not restricted for specific backup method.
Alternatively, this device also includes:Rebuild index module 14.
Rebuild index module 14, the solicited message sending for receiving terminal, and solicited message is parsed;Work as parsing
When to go out solicited message be the package informatin related to installation kit, remote service proxy module is called according to package informatin.
Remote service proxy module 13, is additionally operable to accept calling of described reconstruction index module 14, is that described reconstruction indexes
Module 14 calls the index information in far-end server.
In embodiments of the present invention, safeguard that side also pre-sets reconstruction index module 14, this reconstruction index module 14 is main
When terminal to be used for carries out application installation, it is the index information that user recovers oss message.Specifically, rebuild index module 14 to connect
Receive the solicited message that terminal sends, for example, the request that snoop agents module 21 sends is installed in built-in application in following terminals
Information.Include package informatin corresponding from different installation kits in this solicited message, can be found accordingly by this package informatin
The index information of the oss message of installation kit.Rebuild index module 14 and the solicited message receiving is carried out with parsing acquisition this bag letter
Breath, and remote service proxy module 13 is called according to package informatin, so that far-end server is called by remote service proxy module 13
In index information.And then the index information on corresponding index bit in can recovering to apply.So, application just can be normal
Installation and operation.
Additionally, for achieving the above object, the invention allows for a kind of prevent application by the device 2 of decompiling, it is applied to
End side, as shown in Fig. 3, Fig. 6, this device includes:Snoop agents module 21 and package manager 22 are installed in application.
Whether snoop agents module 21 is installed in application, have application to be pacified for monitoring when terminal starts in package manager
Dress, when listen to have application mounted in package manager when to safeguarding that side sends solicited message;And receive safeguard side send anti-
Feedforward information.
In embodiments of the present invention, pre-set application in terminal and snoop agents module 21 and package manager 22 are installed.Should
Package manager 22 can be monitored in real time or periodically monitoring with installing snoop agents module 21, in addition, in order to save terminal
Resource, application is installed snoop agents module 21 and can also be realized monitoring by installing the form notifying, that is, when in package manager 22
When having application mounted, to application, snoop agents module 21 is installed and sends a notification message, inform that snoop agents module is installed in application
21 currently have application mounted.
When application install snoop agents module 21 listen to have application mounted in package manager when, please to safeguarding that side sends
Seek information, specifically, send solicited message to the reconstruction index module 13 safeguarding side;Rebuilding index module 13 according to this request
After far-end server obtains the index information of oss message, receive reconstruction index module 13 return comprises this index letter to information
The feedback information of breath.
Package manager 22, is additionally operable to feedback information is parsed, and obtains the index information comprising in feedback information, and root
Oss message according to the mounted application of index information parsing.
In embodiments of the present invention, package manager 22 receives application and installs the feedback information that snoop agents module 21 sends,
And this feedback information is parsed, obtain the index letter of the oss message of application currently installed from this feedback information
Breath.Thus ensureing normal mounting and the use applied.
The workflow of modules in the embodiment of the present invention is discussed in detail below by specific embodiment.
First, it is previously-completed following preparation S101-S104 safeguarding side:
S101, after the completion of application is developed, by compiler card module 11, whole oss message is compiled.
S102, compiler card module 11 call erasing index module 12.
The index information of oss message is uploaded to default far-end server, and wipes by S103, erasing index module 12
The index information of oss message.
S104, remote service proxy module 13 receive the index information of the oss message that erasing index module 12 uploads,
It is uploaded to far-end server to after the backup of this index information.
Secondly, when end side has application to need to install, modules complete following steps S201-S204:
Whether S201, application install snoop agents module 21 and monitor when terminal starts in package manager has application to be pacified
Dress.
S202, continue to monitor when not hearing and having application mounted in package manager;Have when listening in package manager
Snoop agents module 21 is installed when application is mounted and sends solicited message to the remote service proxy module 13 safeguarding side, and enter
Step S203.
The solicited message that S203, the installation snoop agents module 21 of reconstruction index module 14 receiving terminal side send.
S204, reconstruction index module 14 parse to solicited message;It is related to installation kit when parsing solicited message
Package informatin when, remote service proxy module 13 is called according to package informatin.
S205, remote service proxy module 13 accept calling of described reconstruction index module 14, attach most importance to and index module 14
Call the index information in far-end server.
S206, reconstruction index module 14 return, to remote service proxy module 13, the feedback information comprising index information.
S207, application install snoop agents module 21 and receive the feedback information safeguarding that the reconstruction index module 14 of side sends,
And it is sent to package manager 22.
S208, package manager 22 parse to feedback information, obtain the index information comprising in feedback information.
S209, package manager 22 are according to the oss message of the mounted application of index information parsing.
So far it has been explained that whole essential characteristics of the embodiment of the present invention, it should be noted that the above is all this
One or more specific embodiments of inventive embodiments, in other embodiments, can also be using other embodiments;Appoint
What with the embodiment of the embodiment of the present invention same or analogous embodiment, and the essential characteristic of the embodiment of the present invention appoint
Meaning combination is all within the protection domain of the embodiment of the present invention.
Additionally, for achieving the above object, the invention allows for a kind of prevent from applying by the method for decompiling, the method should
For safeguarding side, as shown in Figure 7, Figure 8.It should be noted that the above-mentioned any embodiment safeguarded in the device embodiment of side is equal
Be applied to the method embodiment, this is no longer going to repeat them.The method comprising the steps of S301-S302:
S301, after the completion of application is developed, call first thread when being compiled to whole oss message.
S302, the index information of oss message is uploaded to by default far-end server by first thread, and wipes source
The index information of code information.
Alternatively, the index information of erasing oss message includes:
The index information unification of the oss message in the application being compiled Dex file is set to a default invalid value.
Alternatively, the method also includes:It is uploaded to far-end server after index information is backed up.
Alternatively, the method also includes:
The solicited message that receiving terminal sends, and solicited message is parsed;When parsing solicited message it is and installation
During the package informatin of bag correlation, remote service proxy thread is called according to package informatin;Remote by this remote service proxy thread dispatching
Index information in the server of end.
Additionally, for achieving the above object, the invention allows for a kind of prevent from applying by the method for decompiling, the method should
For end side, as shown in Fig. 7, Fig. 9.It should be noted that any embodiment in above-mentioned end side device embodiment is equal
Be applied to the method embodiment, this is no longer going to repeat them.The method includes S401-S402:
S401, monitor when terminal starts and whether have application mounted, when having listened to application and being mounted to safeguarding side
Send solicited message;And receive the feedback information safeguarding that side sends.
S402, feedback information is parsed, obtain the index information comprising in feedback information, and according to index information solution
The oss message of the mounted application of analysis.
The present invention propose a kind of prevent application by the apparatus and method of decompiling, this device includes:Compiler plug-in unit mould
Block and erasing index module.Compiler card module after the completion of application is developed, when being compiled to whole oss message
Call erasing index module;The index information of oss message is uploaded to default far-end server by erasing index module, and wipes
Index information except oss message.By embodiment of the present invention scheme, by embodiment of the present invention scheme, can fundamentally break
The approach of exhausted decompiling, the intellectual property of protective development person lift the degree of safety of terminal effectively.
It should be noted that herein, term " inclusion ", "comprising" or its any other variant are intended to non-row
The comprising of his property, so that including a series of process of key elements, method, article or device not only include those key elements, and
And also include other key elements of being not expressly set out, or also include intrinsic for this process, method, article or device institute
Key element.In the absence of more restrictions, the key element being limited by sentence "including a ..." is it is not excluded that including being somebody's turn to do
Also there is other identical element in the process of key element, method, article or device.
The embodiments of the present invention are for illustration only, do not represent the quality of embodiment.
Through the above description of the embodiments, those skilled in the art can be understood that above-described embodiment side
Method can be realized by the mode of software plus necessary general hardware platform naturally it is also possible to pass through hardware, but in many cases
The former is more preferably embodiment.Based on such understanding, technical scheme is substantially done to prior art in other words
Go out partly can embodying in the form of software product of contribution, this computer software product is stored in a storage medium
In (as ROM/RAM, magnetic disc, CD), including some instructions with so that a station terminal equipment (can be mobile phone, computer, clothes
Business device, air-conditioner, or network equipment etc.) method described in execution each embodiment of the present invention.
These are only the preferred embodiments of the present invention, not thereby limit the present invention the scope of the claims, every using this
Equivalent structure or equivalent flow conversion that bright specification and accompanying drawing content are made, or directly or indirectly it is used in other related skills
Art field, is included within the scope of the present invention.
Claims (10)
1. a kind of prevent application by the device of decompiling it is characterised in that described device includes:Compiler card module and erasing
Index module;
Described compiler card module, for calling described erasing index module to whole oss message when being compiled;
Described erasing index module, for the index information of described oss message is uploaded to default far-end server, and wipes
Index information except described oss message.
2. prevent application by the device of decompiling it is characterised in that described erasing index module is wiped as claimed in claim 1
The index information of described oss message includes:
The index information unification of the described oss message in the application being compiled Dex file is set to a default invalid value.
3. prevent application by the device of decompiling it is characterised in that described device also includes as claimed in claim 1:Remotely
Service agent module;
Described remote service proxy module, for receiving the index information of the oss message that described erasing index module uploads,
It is uploaded to described far-end server to after the backup of described index information.
4. prevent application by the device of decompiling it is characterised in that described device also includes as claimed in claim 3:Rebuild
Index module;
Described reconstruction index module, the solicited message sending for receiving terminal, and described solicited message is parsed;Work as solution
When to separate out described solicited message be the package informatin related to installation kit, described remote service proxy mould is called according to described package informatin
Block;
Described remote service proxy module, is additionally operable to accept calling of described reconstruction index module, is described reconstruction index module
Call the index information in described far-end server.
5. a kind of prevent application by the device of decompiling it is characterised in that described device includes:Snoop agents module is installed in application
And package manager;
Whether snoop agents module is installed in described application, have application to be pacified for monitoring when terminal starts in described package manager
Dress, when listen to have application mounted in described package manager when to safeguarding that side sends solicited message;And receive and described safeguard side
The feedback information sending;
Described package manager, is additionally operable to described feedback information is parsed, and obtains the index letter comprising in described feedback information
Breath, and the oss message according to the mounted application of described index information parsing.
6. a kind of prevent application by the method for decompiling it is characterised in that methods described includes:
Call first thread when being compiled to whole oss message;
The index information of oss message is uploaded to by default far-end server by first thread, and wipes described oss message
Index information.
7. prevent application by the method for decompiling it is characterised in that the described oss message of described erasing as claimed in claim 6
Index information include:
The index information unification of the described oss message in the application being compiled Dex file is set to a default invalid value.
8. prevent application by the method for decompiling it is characterised in that methods described also includes as claimed in claim 6:Right
It is uploaded to described far-end server after described index information backup.
9. prevent application by the method for decompiling it is characterised in that methods described also includes as claimed in claim 6:
The solicited message that receiving terminal sends, and described solicited message is parsed;When parse described solicited message be with
During the package informatin of installation kit correlation, remote service proxy thread is called according to described package informatin;By described remote service proxy
Index information in thread dispatching far-end server.
10. a kind of prevent application by the method for decompiling it is characterised in that methods described includes:
Monitor when terminal starts and whether have application mounted, send request letter when having listened to application and being mounted to safeguarding side
Breath;And receive the described feedback information safeguarding that side sends;
Described feedback information is parsed, obtains the index information comprising in described feedback information, and according to described index letter
The oss message of the mounted application of breath parsing.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610964099.6A CN106412102A (en) | 2016-10-28 | 2016-10-28 | Device and method for preventing application from being decompiled |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610964099.6A CN106412102A (en) | 2016-10-28 | 2016-10-28 | Device and method for preventing application from being decompiled |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106412102A true CN106412102A (en) | 2017-02-15 |
Family
ID=58014288
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610964099.6A Pending CN106412102A (en) | 2016-10-28 | 2016-10-28 | Device and method for preventing application from being decompiled |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106412102A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107977553A (en) * | 2017-12-25 | 2018-05-01 | 中国电子产品可靠性与环境试验研究所 | The method and device of the security hardening of mobile applications |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103186730A (en) * | 2013-03-26 | 2013-07-03 | 北京深思数盾科技有限公司 | Method and device for protecting.NET software security |
CN103246848A (en) * | 2013-03-26 | 2013-08-14 | 北京深思数盾科技有限公司 | Software security protection method and equipment |
US20150067855A1 (en) * | 2013-08-28 | 2015-03-05 | Korea University Research And Business Foundation | Server and method for attesting application in smart device using random executable code |
CN105678120A (en) * | 2014-11-20 | 2016-06-15 | 中国移动通信集团公司 | Safety protection method of application programs and server |
CN105740661A (en) * | 2014-12-11 | 2016-07-06 | 中国移动通信集团公司 | Method and device for protecting application program |
-
2016
- 2016-10-28 CN CN201610964099.6A patent/CN106412102A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103186730A (en) * | 2013-03-26 | 2013-07-03 | 北京深思数盾科技有限公司 | Method and device for protecting.NET software security |
CN103246848A (en) * | 2013-03-26 | 2013-08-14 | 北京深思数盾科技有限公司 | Software security protection method and equipment |
US20150067855A1 (en) * | 2013-08-28 | 2015-03-05 | Korea University Research And Business Foundation | Server and method for attesting application in smart device using random executable code |
CN105678120A (en) * | 2014-11-20 | 2016-06-15 | 中国移动通信集团公司 | Safety protection method of application programs and server |
CN105740661A (en) * | 2014-12-11 | 2016-07-06 | 中国移动通信集团公司 | Method and device for protecting application program |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107977553A (en) * | 2017-12-25 | 2018-05-01 | 中国电子产品可靠性与环境试验研究所 | The method and device of the security hardening of mobile applications |
CN107977553B (en) * | 2017-12-25 | 2020-07-10 | 中国电子产品可靠性与环境试验研究所 | Method and device for security reinforcement of mobile application program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106155741B (en) | It is a kind of to avoid processing unit and method of the application program without response | |
CN104809213B (en) | Start the methods, devices and systems of application software client | |
CN105101366A (en) | Mobile terminal control method and mobile terminal | |
CN106529225A (en) | Device and method for protecting source code of application program | |
CN104777979A (en) | Terminal as well as touch operation method and device for same | |
CN106357903A (en) | Terminal starting control device and method | |
CN106843723A (en) | A kind of application program associates application method and mobile terminal | |
CN106095464B (en) | A kind of method and device of the seamless operation of application program | |
CN106453939A (en) | Streaming media access method and apparatus | |
CN105204992A (en) | Test script generating device and method | |
CN104657181A (en) | Method and device for mounting application program | |
CN105094532A (en) | Method and device for data access | |
CN105764085A (en) | Abnormal electricity consumption detection method and terminal | |
CN106993084A (en) | The method, device and mobile terminal that a kind of control information is shown | |
CN105050076B (en) | Virtual card user interface management method and system | |
CN106028382A (en) | NV (Nonvolatile Random Access Memory) parameter reading-writing device and method | |
CN105204849A (en) | Pressure test system and implementation method thereof | |
CN106886713A (en) | A kind of risk checking method of terminal, server and installation software | |
CN106485163A (en) | Control method and control device that mobile terminal data storehouse accesses | |
CN106371704A (en) | Fast application layout method for lock screen interface and terminal | |
CN106658470A (en) | Master card setting device and method | |
CN105791588A (en) | Mobile terminal desktop setting device and mobile terminal desktop setting method | |
CN105827531A (en) | Routing access method and terminal | |
CN106897135A (en) | Restoration methods and device after a kind of application interruption | |
CN106385494A (en) | Method and device for obtaining dynamic home page of mobile terminal application |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170215 |