CN103530535A - Shell adding and removing method for Android platform application program protection - Google Patents

Shell adding and removing method for Android platform application program protection Download PDF

Info

Publication number
CN103530535A
CN103530535A CN201310511607.1A CN201310511607A CN103530535A CN 103530535 A CN103530535 A CN 103530535A CN 201310511607 A CN201310511607 A CN 201310511607A CN 103530535 A CN103530535 A CN 103530535A
Authority
CN
China
Prior art keywords
program
file
shell
shelling
application program
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
Application number
CN201310511607.1A
Other languages
Chinese (zh)
Inventor
汪德嘉
宋超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
JIANGSU PAYEGIS INFORMATION TECHNOLOGY CO., LTD.
Original Assignee
SUZHOU PAYEGIS INFORMATION TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SUZHOU PAYEGIS INFORMATION TECHNOLOGY Co Ltd filed Critical SUZHOU PAYEGIS INFORMATION TECHNOLOGY Co Ltd
Priority to CN201310511607.1A priority Critical patent/CN103530535A/en
Publication of CN103530535A publication Critical patent/CN103530535A/en
Pending legal-status Critical Current

Links

Images

Classifications

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

Landscapes

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

Abstract

The invention discloses a shell adding and removing method for Android platform application program protection. The method includes the shell adding step and the shell removing step for an original executive file of an Android platform application program. The shell adding step refers to the step that the file format structure of the original executive file is analyzed through an externally-arranged shell adding tool, and a source program is encrypted to form data with a shell. The shell removing step refers to the step that before the application program operates, a shell removing program is preferentially loaded and operates in a memory of a mobile terminal, source program decrypting is carried out on the data with the shell, and then the original executive file is loaded to the memory and normally operates. Due to the adoption of the technical scheme of shell adding and removing, innovative thinking and feasible technical solving ways are provided for application shell adding and removing under an Android platform, and the shell adding and removing method can be used for protecting the executive file of the mobile platform, prevent the program from being attacked by hacker means like decompilation, guarantee confidentiality of commercial software and protect user application safety.

Description

The protection of a kind of Android platform application program add hulling method
Technical field
The present invention relates to a kind of mobile platform particularly Android platform application program add shell hulling method design, comprehensive utilization software programming technique, program analysis technique, web services technologies encryption and decryption technique and mobile communication technology are realized.
Background technology
In some computer softwares, there is one section to be responsible for protection software specially and not to be illegally modified or the program of decompiling.They are all generally to take control prior to program operation, then complete the task of their protection software.Just as vegeto-animal shell, be all the shell of (but afterwards also occurred so-called " in shell with seed ") equally natural in health outside.Because this section of program and natural shell have a lot of identical places in function, the rule based on name, everybody just calls such program " shell ".Just as computer virus is the same with natural virus, be all the method in name in fact.Abstract function, the shell of software and the shell of occurring in nature are very nearly the same.It is nothing but the thing in protection, hidden shell.
From the angle of technology, shell is one section of code being executed in before original program.The code of original program may compressed, encryption in adding the process of shell.When the file after adding shell is carried out, this section of code moves prior to original program, and it is reduced into original program code the code after compression, encryption, and then right of execution is given back to source code.The shell of software is divided into classes such as encrypting shell, compression shell, camouflage shell, multilayered shell, and object is all for the real OEP(entrance of concealing program, prevents from being cracked).
Programmer finishes after software, is compiled into executable file.1. having some copyright informations to need protection, do not want to allow others at will change, as author's name, in order to protect software not to be cracked, is all to adopt to add shell protection conventionally.2. that program need to be done is a little bit smaller, thus convenient use.So, need to use some softwares, they can compress executable file.3. hacker circle shells to hide antivirus software to software shellings such as wooden horses.Realize above-mentioned functions, these softwares are called and add shell software.
The program that adds shell can effectively stop the dis-assembling analysis to program, to protect software copyright, prevents from being cracked by software.
PC platform has existed a large amount of standardized shells that add to conciliate shell instrument now, add shell and generally belong to software cryptography, shelling is general to divide manually and automatic two kinds, manually with debugging acids such as TRW2000, TR, SOFTICE, tackle exactly, sheller is had to certain level requirement, relate to the knowledge of a lot of assembly language and software debugging aspect.And automatically with special shelling instrument, take off exactly, the anti-tool of compression that the most frequently used certain compressed software has other people to write is corresponding, and some tool of compression self energy decompress(ion), as UPX; Some does not provide this function, as: ASPACK, just needs UNASPACK to tackle.Benefit is simple, and it is just useless that shortcoming has been version updating.Shelling tackles with special shelling instrument exactly in addition, and most popular is PROCDUMP v1.62, can tackle the compression shelves of current various compressed softwares.Conventionally, as long as know the cipher mode of file, just can use different instruments, diverse ways to shell.Be below industry usually can encounter add shell side formula and the measure that simply shells, only for reference: the cardinal rule of shelling is exactly that single step is followed the tracks of, can only be forward, can not be backward.The general flow of shelling is: look into shell → searchings OEP → Dump → reparation, look for the general thinking of OEP as follows: first see that shell is to encrypt shell or compression shell, compression shell is easier comparatively speaking, is generally not extremely, just can arrive entrance after finding corresponding popad.When knowing that file is added shell software cryptography by some compressions, next step will analyze title, the version of encryption software.Because the different software shell that even different editions adds, the method for heat treatment is not identical.
But Android does not also occur that as emerging mobile platform apk adds shell instrument.The Dex file of Android is widely applied to promote to adding shell and has been brought certain difficulty, but from technical standpoint, it is also feasible that Android apk adds shell shelling, and along with the continuous extension necessity of application constantly embodies.
Summary of the invention
For the deficiency of current Android platform application program protection aspect, object of the present invention is intended to propose a kind of hulling method that adds of Android platform application program protection, and safety advances the development of this platform application.
Above-mentioned purpose of the present invention, its technical solution being achieved is: the protection of a kind of Android platform application program add hulling method, it is characterized in that: described in add hulling method comprise towards the former executable file of Android platform application program add shell step and shelling step two parts, the wherein said shell step that adds is to utilize external adding shell instrument is analyzed the file format structure of former executable file and encrypted source program is to be with hull number certificate; Described shelling step is in the internal memory of mobile terminal, preferentially to load and move shelling program before application program operation, and band hull number is loaded on in internal memory normally operation by former executable file according to carrying out after source program deciphering.
Further, described shelling program is separated with band hull number certificate and shelling program is stored in cloud server, and before running of mobile terminal application program, directly dynamic load shells program to internal memory operation, to being with hull number according to carrying out source program deciphering.
Further, described shelling program with hull number according to dressing up shelling program dex file by the external shell set of tools that adds, first operation shelling program part in internal memory before running of mobile terminal application program, to band hull number according to carrying out source program deciphering.
Further, described shelling program with a kind of assembling mode with hull number certificate is, band hull number certificate is write to shelling program dex end of file, and at tail of file, add the length with hull number certificate again, according to the assembled information with checksum, signature and file_size in shell data modification shelling program dex file header, finally revise AndroidMainfest.xml file in source program and cover the file of the same name of shelling program.
Further, described shelling program with a kind of assembling mode of hull number certificate, be, first calculate band shell data length, at shelling program dex file correspondence position, 0 * 70 place adds band shell data length, and continues to add band hull number according to tail of file; According to the assembled information with checksum, signature, file_size, header_size, string_ids_off, type_ids_off, proto_ids_off, fiele_ids_off, method_ids_off, class_ids_off and data_off in shell data modification shelling program dex file header, analyze map_off data Update Table side-play amount, finally revise AndroidMainfest.xml file in source program and cover the file of the same name of shelling program.
Application the present invention adds the technical scheme of shelling; for the application under Android platform adds shelling, the thinking of innovation and feasible technology solution route have been proposed; can be used for mobile platform executable file to protect; the program that prevents is attacked by hacker's means such as decompilings, the confidentiality of protection business software, protection user application safety.
Accompanying drawing explanation
Fig. 1 is that the present invention adds the FB(flow block) that a kind of program that shells of hulling method is carried embodiment outward.
Fig. 2 is that the present invention adds a kind of mode FB(flow block) that hulling method shelling program contains enforcement.
Fig. 3 is that the present invention adds the another kind of mode FB(flow block) that hulling method shelling program contains enforcement.
Embodiment
The present invention is directed to the safety problem of mobile platform application program, proposed a kind of method that application programs dynamically adds shelling, improve the scheme collection that adds shell shelling towards mobile platform application program.
From general aspect of the present invention, this add hulling method comprise towards the former executable file of Android platform application program add shell step and shelling step two parts, wherein add shell step and be and utilize external adding shell instrument is analyzed the file format structure of former executable file and encrypted source program is to be with hull number certificate; Shelling step is in the internal memory of mobile terminal, preferentially to load and move shelling program before application program operation, and band hull number is loaded on in internal memory normally operation by former executable file according to carrying out after source program deciphering.Although from see that to add exuviating technology close with aforementioned conventional in form, but in fact the present invention add hulling method for be the application program under Android platform, be .apk file do add shell and shelling, its process approach and code compilation aspect are brand-new exploration and breakthroughs, and added shell is a kind of encryption shell of Custom Encryption algorithm.
And the invention described above adds hulling method provides many-sided, perfect technical solution to adding the concrete mode of shell device, sheller in the method process.Be appreciated that such scheme of the present invention, first need to analyze the file structure of Android executable file dex.Dex file header (File Header) mainly comprise verification and and offset address and the length information of other structure, as shown in the table
Figure 2013105116071100002DEST_PATH_IMAGE001
, below make a concrete analysis of the concrete meaning of structure and each field of this dex file header.
Evil spirit digital section magic, it is exactly mainly the identifier of dex file, it takies 4 bytes, in current source code, be " dex n ", its effect is mainly used for identifying dex file, such as there being a file also to take dex as suffix name, only this can't be considered to the file of Davlik virtual machine operation, also will judge this 4 bytes.Davlik virtual machine also has the dex of optimization in addition, also by individual field, distinguishes, and when it is the dex file of optimizing, its value just becomes " dey n ".According to these 4 bytes, just can identify dissimilar dex file.
Follow " dex n " below be version field, be mainly used to identify the version of dex file.The version number supporting at present be " 035 0 ", no matter the version of whether optimizing is all this version number of use.
Check code field checksum, is mainly used to check start to end-of-file (EOF) from this field, whether this segment data is complete, has nobody to revise, or whether has and make mistakes etc. in transport process.Being commonly used to the algorithm that checks that whether data are complete, having CRC32, have SHA128 etc., is not this two class but adopt here, and adopt a more special algorithm, be called adler32, this is algorithm conventional in the zlib that increases income, and is used for checking whether integrality of file.This algorithm is invented by MarkAdler, and its degree of reliability is similar with CRC32, but or little by little weak, but it has a good advantage, and while calculating check code with software exactly, relatively CRC32 wants fast a lot.Visible Android system, with regard on algorithm just for mobile device has been optimized.In Java, can use java.util.zip.Adler32 class to do verification operation.
SHA-1 signature field signature, in dex file header since before had the check word segment encode of 4 bytes, also have SHA-1 signature field why? it is not repetition? think over, design is from reasonable like this.Because dex file is not generally very little, simple application program has tens K, so most check codes according to using 4 bytes, and the probability of repetition still has, and that is to say the data modification in file, or very possible check is not out.At this moment check code has just lost effect, needs to use more powerful check code, and this just needs SHA-1.SHA-1 check code has 20 bytes, than check code above many 16 bytes, the check of hardly can different files calculating is the same.The object of two check codes of design, be exactly first to use first check code to check fast, can first the dex file of simply makeing mistakes have been lost like this, then re-use second complicated check code and carry out complicated calculations, whether authenticating documents is complete, guarantees so the complete and safety of the file of carrying out.
SHA(Secure Hash Algorithm, Secure Hash Algorithm) be the design of American National security bureau, a series of Cryptographic Hash Functions of National Institute of Standards and Technology's issue.SHA-1 seem with MD5 algorithm the spitting image of, be perhaps that Ron Rivest has play a part in the design of SHA-1 certain.The inside of SHA-1 is stronger than MD5, and it is made a summary than 4 bytes of 16 byte long of MD5, and this algorithm has successfully stood cryptanalysis expert's attack, also thereby be subject to the extensive high praise of password educational circles.The signature of this algorithm on current network, just has a large amount of uses in BT software, such as whether will calculate the same kind of period of the day from 11 p.m. to 1 a.m in BT, utilize the signature of file to judge.Film with a 8G is downloaded from several thousand BT users there, also there will not be the data of mistake, causes film not play.
Map_off field, this field is mainly preserved map starting position, starts, to the length of map data, by this index, just can find map data exactly from file header.The data structure of map is as follows
Figure 2013105116071100002DEST_PATH_IMAGE002
Each data sense of DexMapItem organization definition: type, type number, type starting position.It has comprised all types that may occur in dex file.Can find out that it is much the same that the type here has with the type defining in file header, the type is here exactly the type defining in file header in fact.The data of this map, are exactly the repetition of type in front in fact, for role of inspection, exist completely.When Android system loads dex file, if in comparison document head type number and map during Type-Inconsistencies, will stop using this dex file.
String_ids_size/off field, these two fields are mainly used to identification strings resource.After source program compiling, the character string of using in program is all kept in this data segment, to explain that carrying out this dex file uses.Comprising class title in Using Call Library Function, describe, for the character string of output display etc.
String_ids_size has identified how many character strings, the starting position of string_ids_off identification strings data field.
The just allocation index of string table that preserve data field.If find the real data of character string, also need to find by individual allocation index the corresponding starting position of file, then just can obtain string data.The index of each string item takies 4 bytes, so the size of this data field is just 4*string_ids_size.Character string in real data district adopts UTF8 form to preserve.
For example, if being used 16 systems to show, dex file thes contents are as follows: 063c 696e 6974 3e00; Its real data is " < init>0 ".
In this segment data, not only comprise in addition content and the end mark of character string, in the position starting most, also indicated the length of character string.In upper example, first byte 06 just means that this character string has 6 characters.According to the different distributions in shelling program dex file with hull number certificate, the implementation that two kinds of Android Dex add shell is proposed.
As shown in Figure 2, be that the present invention adds a kind of mode FB(flow block) that hulling method shelling program contains enforcement.Visible shelling program with hull number according to dressing up shelling program dex file by the external shell set of tools that adds, first operation shelling program part in internal memory before running of mobile terminal application program, to band hull number according to carrying out source program deciphering.In this embodiment, adding shell workflow is: band hull number certificate is write to shelling program dex end of file, and at tail of file, add the length with hull number certificate again, according to the assembled information with checksum, signature and file_size in shell data modification shelling program dex file header, finally revise AndroidMainfest.xml file in source program and cover the file of the same name of shelling program; Shelling workflow is correspondingly: the length that first reads dex end of file data acquisition band hull number certificate, from dex file, read band hull number certificate and move shelling program and deciphered again, with document form, preserve band hull number according to a.apk file, finally pass through this a.apk file of dex Classloader dynamic load.
As shown in Figure 3, be that the present invention adds the another kind of mode FB(flow block) that hulling method shelling program contains enforcement.The same this shelling program with hull number according to dressing up shelling program dex file by the external shell set of tools that adds, first operation shelling program part in internal memory before running of mobile terminal application program, to band hull number according to carrying out source program deciphering.In this embodiment, add shell workflow relatively complicated: first calculate band shell data length, at shelling program dex file correspondence position 0 * 70 place's interpolation band shell data length, and continue to add band hull number certificate to tail of file; According to the assembled information with checksum, signature, file_size, header_size, string_ids_off, type_ids_off, proto_ids_off, fiele_ids_off, method_ids_off, class_ids_off and data_off in shell data modification shelling program dex file header, analyze map_off data Update Table side-play amount, finally revise AndroidMainfest.xml file in source program and cover the file of the same name of shelling program; Shelling workflow is correspondingly: need first 0 * 70 length reading with hull number certificate from position, then from dex file, read band hull number certificate and move shelling program and deciphered, with document form, preserve band hull number according to a.apk file, finally pass through this a.apk file of dex Classloader dynamic load.
Above two embodiment are current enforcements and the feasible scheme of empirical tests, but it should be noted that: for the integrated position in dex file with hull number certificate and shelling program, must insert and carry out in strict accordance with the file structure of dex, can not misplace, otherwise will affect the success or failure of shelling.In addition, for further improving the security of shelling program, prevent that hacker from realizing the shelling of application program, reverse cracking by stealing shelling program, the present invention has also designed a kind of shelling program Dynamic loading technique, and the program that will shell (sheller executable file) is separated with band hull number certificate.Particularly, as shown in Figure 1, be that the present invention adds the FB(flow block) that a kind of program that shells of hulling method is carried embodiment outward, its add shell process ditto described in, only in dex file containing shelling program, therefore omit.Visible this shelling program of diagram is stored in cloud server, when application start, first this sheller executable file is loaded in local internal memory, and by shelling program, the shelling from band hull number certificate of pending function program is carried out in local internal memory, this shelling process is invisible.
Visible in sum; application the present invention adds the technical scheme of shelling; for the application under Android platform adds shelling, the thinking of innovation and feasible technology solution route have been proposed; can be used for mobile platform executable file to protect; the program that prevents is attacked by hacker's means such as decompilings, the confidentiality of protection business software, protection user application safety.

Claims (5)

1. Android platform application program protection adds hulling method, it is characterized in that: described in add hulling method comprise towards the former executable file of Android platform application program add shell step and shelling step two parts, the wherein said shell step that adds is to utilize external adding shell instrument is analyzed the file format structure of former executable file and encrypted source program is to be with hull number certificate; Described shelling step is in the internal memory of mobile terminal, preferentially to load and move shelling program before application program operation, and band hull number is loaded on in internal memory normally operation by former executable file according to carrying out after source program deciphering.
According to claim 1 Android platform application program protection add hulling method; it is characterized in that: described shelling program is separated with band hull number certificate and shelling program is stored in cloud server; before running of mobile terminal application program, directly dynamic load shelling program to internal memory also moves, to being with hull number according to carrying out source program deciphering.
According to claim 1 Android platform application program protection add hulling method; it is characterized in that: described shelling program with hull number according to dressing up shelling program dex file by the external shell set of tools that adds; before running of mobile terminal application program, first in internal memory, move shelling program part, band hull number certificate is carried out to source program deciphering.
According to claim 3 Android platform application program protection add hulling method; it is characterized in that: described shelling program with a kind of assembling mode with hull number certificate is; band hull number certificate is write to shelling program dex end of file; and at tail of file, add the length with hull number certificate again; according to the assembled information with checksum, signature and file_size in shell data modification shelling program dex file header, finally revise AndroidMainfest.xml file in source program and cover the file of the same name of shelling program.
According to claim 3 Android platform application program protection add hulling method, it is characterized in that: described shelling program with a kind of assembling mode with hull number certificate is, first calculate band shell data length, at shelling program dex file correspondence position 0 * 70 place's interpolation band shell data length, and continue to add band hull number certificate to tail of file; According to the assembled information with checksum, signature, file_size, header_size, string_ids_off, type_ids_off, proto_ids_off, fiele_ids_off, method_ids_off, class_ids_off and data_off in shell data modification shelling program dex file header, analyze map_off data Update Table side-play amount, finally revise AndroidMainfest.xml file in source program and cover the file of the same name of shelling program.
CN201310511607.1A 2013-10-25 2013-10-25 Shell adding and removing method for Android platform application program protection Pending CN103530535A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310511607.1A CN103530535A (en) 2013-10-25 2013-10-25 Shell adding and removing method for Android platform application program protection

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310511607.1A CN103530535A (en) 2013-10-25 2013-10-25 Shell adding and removing method for Android platform application program protection

Publications (1)

Publication Number Publication Date
CN103530535A true CN103530535A (en) 2014-01-22

Family

ID=49932540

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310511607.1A Pending CN103530535A (en) 2013-10-25 2013-10-25 Shell adding and removing method for Android platform application program protection

Country Status (1)

Country Link
CN (1) CN103530535A (en)

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103780700A (en) * 2014-01-26 2014-05-07 长沙裕邦软件开发有限公司 Application system and method for achieving compatibility and sharing among multi-source heterogeneous systems
CN103955636A (en) * 2014-04-21 2014-07-30 魏珉 Safe real-time dynamic loading technology for realizing program
CN104021321A (en) * 2014-06-17 2014-09-03 北京奇虎科技有限公司 Reinforcing protection method and device for software installation package
CN104408367A (en) * 2014-11-28 2015-03-11 北京奇虎科技有限公司 Application program configuration method and device
CN104462880A (en) * 2014-11-28 2015-03-25 北京奇虎科技有限公司 Application program packing configuration method and device
CN104504310A (en) * 2015-01-15 2015-04-08 深圳市东信时代信息技术有限公司 Method and device for software protection based on shell technology
CN104680043A (en) * 2015-03-16 2015-06-03 北京深思数盾科技有限公司 Method and device for protecting executable file
CN104866741A (en) * 2014-02-25 2015-08-26 北京娜迦信息科技发展有限公司 APK (Android package) file protecting method and device
CN104951674A (en) * 2014-03-28 2015-09-30 中国银联股份有限公司 Information hiding method for application program
WO2015154612A1 (en) * 2014-10-08 2015-10-15 中兴通讯股份有限公司 Method and device for extending apk file application
CN105205398A (en) * 2015-11-04 2015-12-30 北京鼎源科技有限公司 Shell checking method based on dynamic behaviors of APK (android package) packing software
CN105487981A (en) * 2015-12-09 2016-04-13 珠海金山网络游戏科技有限公司 Conversion method, conversion apparatus and conversion system for transferred file of shell encryption protected software
CN105740708A (en) * 2016-01-28 2016-07-06 博雅网信(北京)科技有限公司 Java reflection mechanism-based automatic Android application shelling method
CN105930692A (en) * 2016-04-20 2016-09-07 北京鼎源科技有限公司 Dynamic shelling method for Android application
CN106169052A (en) * 2016-07-19 2016-11-30 北京海泰方圆科技股份有限公司 The processing method of application program, device and mobile terminal
CN106650431A (en) * 2016-12-09 2017-05-10 北京奇虎科技有限公司 Method and device for reinforcing dynamic link library SO file of Android installation package
CN106681828A (en) * 2016-12-09 2017-05-17 北京奇虎科技有限公司 Method and device for reinforcing dynamic link library SO file of Android installation package
CN106709289A (en) * 2016-12-09 2017-05-24 北京奇虎科技有限公司 Method and apparatus for reinforcing executable file
CN106934256A (en) * 2015-12-29 2017-07-07 中移(杭州)信息技术有限公司 A kind of guard method of enterprise data server and device
CN106940771A (en) * 2016-01-04 2017-07-11 阿里巴巴集团控股有限公司 Leak detection method and device based on file
CN107066886A (en) * 2017-04-13 2017-08-18 深圳海云安网络安全技术有限公司 A kind of Android reinforces the detection method of shelling
CN107169324A (en) * 2017-05-12 2017-09-15 北京理工大学 A kind of Android application reinforcement means based on dynamic encryption and decryption
CN107341392A (en) * 2016-04-29 2017-11-10 腾讯科技(深圳)有限公司 File hulling method and device in android system
CN107392018A (en) * 2017-06-30 2017-11-24 阿里巴巴集团控股有限公司 Application program hulling method and device
CN108073814A (en) * 2017-12-29 2018-05-25 哈尔滨安天科技股份有限公司 Hulling method, system and storage medium based on static structureization shelling parameter
WO2018130024A1 (en) * 2017-01-12 2018-07-19 中兴通讯股份有限公司 Data processing method, device, computer-readable storage medium and terminal
CN108573149A (en) * 2017-03-10 2018-09-25 武汉安天信息技术有限责任公司 A kind of sample testing method and device
CN108846280A (en) * 2018-06-29 2018-11-20 江苏通付盾信息安全技术有限公司 The hulling method and device of application file
CN109214184A (en) * 2018-07-20 2019-01-15 北京大学 A kind of Android reinforcement application program general automated shelling method and apparatus
CN109918083A (en) * 2019-03-07 2019-06-21 北京智游网安科技有限公司 A kind of security processing based on application programming, intelligent terminal and storage medium
CN113836582A (en) * 2021-09-30 2021-12-24 西安诺瓦星云科技股份有限公司 Software encryption and decryption method and device, electronic equipment and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609666A (en) * 2012-01-20 2012-07-25 飞天诚信科技股份有限公司 Protecting method for packing executable program
CN103065069A (en) * 2013-01-28 2013-04-24 电子科技大学 Software protection method based on shell technology

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609666A (en) * 2012-01-20 2012-07-25 飞天诚信科技股份有限公司 Protecting method for packing executable program
CN103065069A (en) * 2013-01-28 2013-04-24 电子科技大学 Software protection method based on shell technology

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JACK_JIA: "Android APK加壳技术方案【1】", 《HTTP://BLOG.CSDN.NET/ANDROIDSECURITY/ARTICLE/DETAILS/8678399,2013-03-18》 *

Cited By (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103780700A (en) * 2014-01-26 2014-05-07 长沙裕邦软件开发有限公司 Application system and method for achieving compatibility and sharing among multi-source heterogeneous systems
CN104866741A (en) * 2014-02-25 2015-08-26 北京娜迦信息科技发展有限公司 APK (Android package) file protecting method and device
CN104951674B (en) * 2014-03-28 2018-01-23 中国银联股份有限公司 Information concealing method for application program
CN104951674A (en) * 2014-03-28 2015-09-30 中国银联股份有限公司 Information hiding method for application program
CN103955636A (en) * 2014-04-21 2014-07-30 魏珉 Safe real-time dynamic loading technology for realizing program
CN104021321A (en) * 2014-06-17 2014-09-03 北京奇虎科技有限公司 Reinforcing protection method and device for software installation package
CN105574000B (en) * 2014-10-08 2019-11-05 中兴通讯股份有限公司 Extend the method and device of APK file application
CN105574000A (en) * 2014-10-08 2016-05-11 中兴通讯股份有限公司 Method and device for expanding APK (Android Package) file application
WO2016054880A1 (en) * 2014-10-08 2016-04-14 中兴通讯股份有限公司 Apk file application expanding method and device
WO2015154612A1 (en) * 2014-10-08 2015-10-15 中兴通讯股份有限公司 Method and device for extending apk file application
CN104408367A (en) * 2014-11-28 2015-03-11 北京奇虎科技有限公司 Application program configuration method and device
CN104408367B (en) * 2014-11-28 2019-04-05 北京奇虎科技有限公司 Application program configuration method and device
CN104462880B (en) * 2014-11-28 2018-01-19 北京奇虎科技有限公司 Application program shell adding collocation method and device
CN104462880A (en) * 2014-11-28 2015-03-25 北京奇虎科技有限公司 Application program packing configuration method and device
CN104504310A (en) * 2015-01-15 2015-04-08 深圳市东信时代信息技术有限公司 Method and device for software protection based on shell technology
CN104680043A (en) * 2015-03-16 2015-06-03 北京深思数盾科技有限公司 Method and device for protecting executable file
CN104680043B (en) * 2015-03-16 2018-03-02 北京深思数盾科技股份有限公司 A kind of guard method of executable file and device
CN105205398B (en) * 2015-11-04 2018-03-09 北京鼎源科技有限公司 It is a kind of that shell side method is looked into based on APK shell adding software dynamic behaviours
CN105205398A (en) * 2015-11-04 2015-12-30 北京鼎源科技有限公司 Shell checking method based on dynamic behaviors of APK (android package) packing software
CN105487981B (en) * 2015-12-09 2018-02-13 珠海金山网络游戏科技有限公司 A kind of conversion method, the device and system of shell adding software unloading file
CN105487981A (en) * 2015-12-09 2016-04-13 珠海金山网络游戏科技有限公司 Conversion method, conversion apparatus and conversion system for transferred file of shell encryption protected software
CN106934256A (en) * 2015-12-29 2017-07-07 中移(杭州)信息技术有限公司 A kind of guard method of enterprise data server and device
CN106934256B (en) * 2015-12-29 2020-03-06 中移(杭州)信息技术有限公司 Protection method and device for enterprise data server
CN106940771A (en) * 2016-01-04 2017-07-11 阿里巴巴集团控股有限公司 Leak detection method and device based on file
CN105740708A (en) * 2016-01-28 2016-07-06 博雅网信(北京)科技有限公司 Java reflection mechanism-based automatic Android application shelling method
CN105930692A (en) * 2016-04-20 2016-09-07 北京鼎源科技有限公司 Dynamic shelling method for Android application
CN107341392A (en) * 2016-04-29 2017-11-10 腾讯科技(深圳)有限公司 File hulling method and device in android system
CN107341392B (en) * 2016-04-29 2019-12-06 腾讯科技(深圳)有限公司 file unshelling method and device in Android system
CN106169052A (en) * 2016-07-19 2016-11-30 北京海泰方圆科技股份有限公司 The processing method of application program, device and mobile terminal
CN106709289B (en) * 2016-12-09 2020-01-31 北京奇虎科技有限公司 method and device for reinforcing executable file
CN106709289A (en) * 2016-12-09 2017-05-24 北京奇虎科技有限公司 Method and apparatus for reinforcing executable file
CN106681828A (en) * 2016-12-09 2017-05-17 北京奇虎科技有限公司 Method and device for reinforcing dynamic link library SO file of Android installation package
CN106650431A (en) * 2016-12-09 2017-05-10 北京奇虎科技有限公司 Method and device for reinforcing dynamic link library SO file of Android installation package
WO2018130024A1 (en) * 2017-01-12 2018-07-19 中兴通讯股份有限公司 Data processing method, device, computer-readable storage medium and terminal
CN108573149A (en) * 2017-03-10 2018-09-25 武汉安天信息技术有限责任公司 A kind of sample testing method and device
CN107066886A (en) * 2017-04-13 2017-08-18 深圳海云安网络安全技术有限公司 A kind of Android reinforces the detection method of shelling
CN107169324A (en) * 2017-05-12 2017-09-15 北京理工大学 A kind of Android application reinforcement means based on dynamic encryption and decryption
CN107392018A (en) * 2017-06-30 2017-11-24 阿里巴巴集团控股有限公司 Application program hulling method and device
CN107392018B (en) * 2017-06-30 2020-09-15 阿里巴巴集团控股有限公司 Application program shelling method and device
CN108073814A (en) * 2017-12-29 2018-05-25 哈尔滨安天科技股份有限公司 Hulling method, system and storage medium based on static structureization shelling parameter
CN108073814B (en) * 2017-12-29 2021-10-15 安天科技集团股份有限公司 Shelling method and system based on static structured shelling parameters and storage medium
CN108846280A (en) * 2018-06-29 2018-11-20 江苏通付盾信息安全技术有限公司 The hulling method and device of application file
CN108846280B (en) * 2018-06-29 2021-04-02 江苏通付盾信息安全技术有限公司 Application file shelling method and device
CN109214184A (en) * 2018-07-20 2019-01-15 北京大学 A kind of Android reinforcement application program general automated shelling method and apparatus
CN109214184B (en) * 2018-07-20 2021-08-20 北京大学 Universal automatic shelling method and device for Android reinforced application program
CN109918083A (en) * 2019-03-07 2019-06-21 北京智游网安科技有限公司 A kind of security processing based on application programming, intelligent terminal and storage medium
CN113836582A (en) * 2021-09-30 2021-12-24 西安诺瓦星云科技股份有限公司 Software encryption and decryption method and device, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
CN103530535A (en) Shell adding and removing method for Android platform application program protection
US20160203087A1 (en) Method for providing security for common intermediate language-based program
CN106203006A (en) Android application reinforcement means based on dex Yu so file Dynamic Execution
US20170116410A1 (en) Software protection
CN108399319B (en) Source code protection method, application server and computer readable storage medium
US10296728B2 (en) Method and system for providing cloud-based application security service
CN111901337A (en) File uploading method and system and storage medium
CN107291485B (en) Dynamic link library reinforcing method, operation method, reinforcing device and safety system
CN111008034B (en) Patch generation method and device
JP2007233426A (en) Application execution device
KR101734663B1 (en) Method for preventing reverse engineering of android application and apparatus for performing the method
KR102459774B1 (en) Method of encrypting dll file, system of encrypting dll file performing the same, and storage medium storing the same
US10841099B2 (en) Method for generating a digital signature
KR101863325B1 (en) Method and apparatus for preventing reverse engineering
CN112667975A (en) Android system application software safety protection method based on hybrid reinforcement
CN114547653B (en) Encryption method, decryption method, device, equipment and medium for development environment
CN108563396B (en) Safe cloud object storage method
CN112115430A (en) Apk reinforcement method, electronic equipment and storage medium
JP2008040853A (en) Application execution method and application execution device
WO2016188134A1 (en) Application reinforcing implementation method and apparatus
CN108664796B (en) So file protection method and device
CN113221077B (en) Class file encryption method and equipment based on spring container
US20190199694A1 (en) Individual encryption of control commands
US20070150853A1 (en) Method for processing assembly of data blocks using associated control application
US11061998B2 (en) Apparatus and method for providing security and apparatus and method for executing security to protect code of shared object

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: JIANGSU TONGFUDUN INFORMATION TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: SUZHOU PAYEGIS INFORMATION TECHNOLOGY CO., LTD.

Effective date: 20141114

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20141114

Address after: Xinping Street Industrial Park of Suzhou city in Jiangsu province 215125 No. 388 takeoff Innovation Park Building 6 4F, 5F

Applicant after: JIANGSU PAYEGIS INFORMATION TECHNOLOGY CO., LTD.

Address before: Xinping Street Industrial Park of Suzhou city in Jiangsu province 215125 No. 388 takeoff Innovation Park Building 6 4F, 5F

Applicant before: Suzhou PayEgis Information Technology Co., Ltd.

C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20140122