CN113254965A - Software package encryption method, computing device and storage medium - Google Patents

Software package encryption method, computing device and storage medium Download PDF

Info

Publication number
CN113254965A
CN113254965A CN202110623749.1A CN202110623749A CN113254965A CN 113254965 A CN113254965 A CN 113254965A CN 202110623749 A CN202110623749 A CN 202110623749A CN 113254965 A CN113254965 A CN 113254965A
Authority
CN
China
Prior art keywords
software package
file
encrypted
format
package set
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.)
Granted
Application number
CN202110623749.1A
Other languages
Chinese (zh)
Other versions
CN113254965B (en
Inventor
袁海胜
张金强
李堂松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Uniontech Software Technology Co Ltd
Original Assignee
Uniontech Software 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 Uniontech Software Technology Co Ltd filed Critical Uniontech Software Technology Co Ltd
Priority to CN202110623749.1A priority Critical patent/CN113254965B/en
Publication of CN113254965A publication Critical patent/CN113254965A/en
Application granted granted Critical
Publication of CN113254965B publication Critical patent/CN113254965B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/70Type of the data to be coded, other than image and sound
    • H03M7/702Software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Abstract

The invention discloses a software package encryption method, a computing device and a storage medium. According to the content, the method and the device can encrypt a plurality of software packages at a time, and improve the encryption efficiency of the software packages. In addition, the software package with the format of the debian and the rpm is actually a software package set, but the method of the invention can encrypt a plurality of software packages at a time, so that the software package with the format of the substantial software package set, such as the debian and the rpm, can be encrypted, the software package with the format of the substantial software package set, such as the debian and the rpm, can be protected, and the safety of the software package with the format of the substantial software package set, such as the debian and the rpm, can be improved.

Description

Software package encryption method, computing device and storage medium
Technical Field
The present invention relates to the field of encryption technologies, and in particular, to a software encryption method, a computing device, and a storage medium.
Background
A mobile Application (Application) is a collection of programs in various programming languages that a user can use and that are programmed in various programming languages. The mobile application can meet the application requirements of different fields and different problems, so that the development quantity of the mobile application is more and more, and the mobile application is distributed in a software package mode.
As the number of mobile applications developed is increasing, in order to protect the developer's rights, the mobile applications are protected by a method of protecting software packages of the mobile applications, which include a plurality of formats, such as apk, debian, rpm, and the like. The prior art has a tool for encrypting a software package in an apk format, the tool encrypts the software package in the apk format once, and the software package in a Debian and rpm format is only used for correcting the information of the software package and cannot play a role in protection. However, the software package in the format of the debian and the rpm is essentially a software package set, that is, the software package in the format of the debian and the rpm is not encrypted by the tool for encrypting the software package in the apk format, so that the software package in the format of the debian and the rpm cannot be protected at present. In addition, current software package encryption tools (e.g., apk-format software package encryption tools) are inefficient in encryption.
For this reason, a software package encryption method is needed to solve the problems in the above technical solutions.
Disclosure of Invention
To this end, the present invention provides a software package encryption method that seeks to solve, or at least alleviate, the above-identified problems.
According to an aspect of the present invention, there is provided a software package encryption method, executed in a computing device, the method comprising:
acquiring a to-be-encrypted software package set, wherein the to-be-encrypted software package set comprises a plurality of software packages, and each software package comprises one or more files;
decompressing a software package set to be encrypted;
identifying a file with a preset format from the decompressed software package set to be encrypted, wherein the file with the preset format is a file with a binary format;
encrypting the identified file with the preset format;
and compressing the encrypted software package set.
Optionally, the step of identifying a file with a predetermined format from the decompressed set of software packages to be encrypted includes:
identifying files with preset formats from the decompressed software package set to be encrypted, wherein each file with the preset format corresponds to a path of the file with the preset format;
saving the identified path of the file with the preset format to a first list;
wherein the step of encrypting the identified file of the predetermined format comprises:
searching a file with a preset format through a path of the file with the preset format in the first list;
and encrypting the searched file with the predetermined format.
Optionally, the searched file with the predetermined format is encrypted by a data encryption algorithm.
Optionally, the method further comprises the steps of:
searching a predetermined format file path comprising a first condition from the first list as an effective file path in response to the first condition input by the user;
saving the effective file path to a second list;
wherein the step of encrypting the identified file of the predetermined format comprises:
searching a file with a preset format through the effective file path in the second list;
and encrypting the searched file with the predetermined format.
Optionally, the method further comprises the steps of:
and updating the information of the software package set to be encrypted, wherein the information comprises the information of the files of the software package set to be encrypted.
Optionally, the file includes a control file and a fingerprint file, the control file stores the version number, name, required library and description information of the software package set to be encrypted, and the fingerprint file stores the signatures of all files in the software package set to be encrypted.
Optionally, before the step of decompressing the set of software packages to be encrypted, the method further comprises the steps of:
and judging whether the category of the software package set to be encrypted is a preset category, and if so, decompressing the software package set to be encrypted.
Optionally, the predetermined categories include a debain category and an rpm category.
According to an aspect of the present invention, there is provided a computing device comprising: at least one processor; and a memory storing program instructions, wherein the program instructions are configured to be executed by the at least one processor, the program instructions comprising instructions for performing the method as described above.
According to an aspect of the present invention, there is provided a readable storage medium storing program instructions which, when read and executed by a computing device, cause the computing device to perform the method as described above.
According to the technical scheme of the invention, the method for encrypting the software package comprises the steps of firstly obtaining a set of the software package to be encrypted, decompressing the set of the software package to be encrypted, identifying files with a preset format from the decompressed set of the software package to be encrypted, encrypting the identified files with the preset format, and compressing the encrypted set of the software package. According to the content, the method and the device can encrypt a plurality of software packages at a time, and improve the encryption efficiency of the software packages. In addition, the software package with the format of the debian and the rpm is actually a software package set, but the method of the invention can encrypt a plurality of software packages at a time, so that the software package with the format of the substantial software package set, such as the debian and the rpm, can be encrypted, the software package with the format of the substantial software package set, such as the debian and the rpm, can be protected, and the safety of the software package with the format of the substantial software package set, such as the debian and the rpm, can be improved.
Drawings
To the accomplishment of the foregoing and related ends, certain illustrative aspects are described herein in connection with the following description and the annexed drawings, which are indicative of various ways in which the principles disclosed herein may be practiced, and all aspects and equivalents thereof are intended to be within the scope of the claimed subject matter. The above and other objects, features and advantages of the present disclosure will become more apparent from the following detailed description read in conjunction with the accompanying drawings. Throughout this disclosure, like reference numerals generally refer to like parts or elements.
FIG. 1 shows a schematic diagram of a computing device 100, according to one embodiment of the invention;
FIG. 2 shows a flow diagram of a software package encryption method 200 according to one embodiment of the invention.
Detailed Description
Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
The development of mobile applications is increasing, and in order to protect the developer's rights, the mobile applications are protected by protecting the software packages of the mobile applications, which include a plurality of formats, such as apk, debian, rpm, and the like. The prior art has a tool for encrypting a software package in an apk format, the tool encrypts the software package in the apk format once, and the software package in a Debian and rpm format is only used for correcting the information of the software package and cannot play a role in protection. The software package in the format of the debian and the rpm is essentially a software package set, namely, the software package set comprises a plurality of software packages, and the tool for encrypting the software package in the apk format can only encrypt one software package at a time, so the software package in the format of the debian and the rpm cannot be protected by the existing software package encryption tool. In addition, current software package encryption tools (e.g., apk-format software package encryption tools) are inefficient in that only one software package can be encrypted at a time.
To this end, the present invention proposes a software package encryption method, which is performed in a computing device, and fig. 1 shows a block diagram of a computing device 100 according to an embodiment of the present invention. A block diagram of a computing device 100 As shown in FIG. 1, in a basic configuration 102, the computing device 100 typically includes a system memory 106 and one or more processors 104. A memory bus 108 may be used for communication between the processor 104 and the system memory 106.
Depending on the desired configuration, the processor 104 may be any type of processing, including but not limited to: a microprocessor (μ P), a microcontroller (μ C), a digital information processor (DSP), or any combination thereof. The processor 104 may include one or more levels of cache, such as a level one cache 110 and a level two cache 112, a processor core 114, and registers 116. The example processor core 114 may include an Arithmetic Logic Unit (ALU), a Floating Point Unit (FPU), a digital signal processing core (DSP core), or any combination thereof. The example memory controller 118 may be used with the processor 104, or in some implementations the memory controller 118 may be an internal part of the processor 104.
Depending on the desired configuration, system memory 106 may be any type of memory, including but not limited to: volatile memory (such as RAM), non-volatile memory (such as ROM, flash memory, etc.), or any combination thereof. System memory 106 may include an operating system 120, one or more applications 122, and program data 124. In some embodiments, application 122 may be arranged to operate with program data 124 on an operating system. The program data 124 includes instructions, and in the computing device 100 according to the present invention, the program data 124 contains instructions for performing the software package encryption method 200.
The computing device 100 also includes a storage device 132, the storage device 132 including removable storage 136 and non-removable storage 138, the removable storage 136 and the non-removable storage 138 each connected to the storage interface bus 134. In the present invention, the data related to each event occurring during the program execution process and the time information indicating the occurrence of each event may be stored in the storage device 132, and the operating system 120 is adapted to manage the storage device 132. The storage device 132 may be a magnetic disk.
Computing device 100 may also include an interface bus 140 that facilitates communication from various interface devices (e.g., output devices 142, peripheral interfaces 144, and communication devices 146) to the basic configuration 102 via the bus/interface controller 130. The example output device 142 includes a graphics processing unit 148 and an audio processing unit 150. They may be configured to facilitate communication with various external devices, such as a display or speakers, via one or more a/V ports 152. Example peripheral interfaces 144 may include a serial interface controller 154 and a parallel interface controller 156, which may be configured to facilitate communication with external devices such as input devices (e.g., keyboard, mouse, pen, voice input device, touch input device) or other peripherals (e.g., printer, scanner, etc.) via one or more I/O ports 158. An example communication device 146 may include a network controller 160, which may be arranged to facilitate communications with one or more other computing devices 162 over a network communication link via one or more communication ports 164.
A network communication link may be one example of a communication medium. Communication media may typically be embodied by computer readable instructions, data structures, program modules, and may include any information delivery media, such as carrier waves or other transport mechanisms, in a modulated data signal.Modulating data signalsA signal may be represented as a set of one or more of its data or its changes in a manner that encodes information in the signal. By way of non-limiting example, communication media may include wired media such as a wired network or private-wired network, and various wireless media such as acoustic, Radio Frequency (RF), microwave, Infrared (IR), or other wireless media. The term computer readable media as used herein may include both storage media and communication media.
Computing device 100 may be implemented as a server, such as a file server, a database server, an application server, a WEB server, etc., or as part of a small-form factor portable (or mobile) electronic device, such as a cellular telephone, a Personal Digital Assistant (PDA), a personal media player device, a wireless WEB-watch device, a personal headset device, an application specific device, or a hybrid device that include any of the above functions. Computing device 100 may also be implemented as a personal computer including both desktop and notebook computer configurations. In some embodiments, the computing device 100 is configured to perform a software package encryption method 200 in accordance with the present invention.
FIG. 2 shows a flow diagram of a software package encryption method 200 according to one embodiment of the invention. The method 200 is suitable for execution in a computing device 100, such as the computing device 100 described above. As shown in fig. 2, the software package encryption method 200 starts in step S210, and in step S210, a set of software packages to be encrypted is obtained. The software package set to be encrypted includes a plurality of software packages, each of which includes one or more files, that is, the software package set includes one or more files. Binary files, resource files, etc. are included in the one or more files, and each file is for a file path. The binary file is a file of computer program instructions, computer programs such as graphics and word processing programs belong to the binary file, the resource file is a file from which required resources can be read in the execution process of the computer programs, and the types of the resources can be pictures, audio, video, words and the like.
It should be noted that the plurality of software packages may exist in the form of a software package set, or may exist in the form of a software package substantially in the format of a software package set, for example, a software package in debain format and a software package in rpm format, which are not limited in this respect, and both the software package in debain format and the software package in rpm format include a plurality of software packages. As can be seen from the above, the present invention can be applied to a scenario where a plurality of software packages are encrypted at a time, and can also be applied to an encryption scenario where a software package in a software package set format is substantial, and the application scenario is wide. The software package in the debain format is a self-owned software package, each software package in the software package is a mobile application issued under the operating system environments of deepin, debian and the like, and each software package in the rpm format is a mobile application compiled and packaged on a linux operating system in advance.
When a plurality of software packages exist in the forms of a software package in a debain format and a software package in an rpm format, the class of the software package set needs to be identified. If the class of the software package set is determined to be the debain class and the rpm class, step S220 is executed, and when the class of the software package set is not the debain class and the rpm class, the software package set is not decompressed, and the software package set is not encrypted.
When a plurality of software packages exist in the form of a software package set, the step S220 is directly executed without judging the category of the software package set, so as to decompress the software package set to be encrypted. At this time, a set of decompressed software packages, i.e. one or more sets of files, is obtained, and then step S230 is executed to identify files in a predetermined format from the set of decompressed software packages to be encrypted. In one embodiment, step S230 includes: and identifying a file with a preset format from the decompressed software package set to be encrypted, wherein the file with the preset format is a binary file, which is equivalent to identifying the binary file from the decompressed software package set to be encrypted, and storing the path of the identified binary file into a first list. The first list is shown in table 1:
TABLE 1
Serial number Predetermined format file path
1 Found:/usr/lib/dde-control-center/develop-tool
2 Found:/usr/lib/dde-control-center/reboot-reminder-dialog
3 Found:/usr/bin/abrecovery
4 Found:/usr/bin/dde-control-center
As can be seen from Table 1, four binary files are identified from the set of decompressed software packages, Found:/user/lib/dde-control-center/develoop-to, Found:/user/lib/dde-control-center/reboot-reader-dia, Found:/user/bin/absolute and Found:/user/bin/dde-control-center.
And then, responding to a first condition input by a user, taking the first condition as a character string, searching a file path with a preset format comprising the character string of the first condition from the first list, taking the file path as an effective file path, and storing the effective file path to the second list. In one embodiment, taking the first condition as bin as an example, bin is taken as a character string, a predetermined format file path containing the bin character string is searched from the first list, and the predetermined format file path containing the bin character string is saved into the second list. The second list is shown in table 2:
TABLE 2
Serial number Predetermined format file path
1 Found:/usr/bin/abrecovery
2 Found:/usr/bin/dde-control-center
As can be seen from Table 1, the two predetermined format file paths of Found:/uslbin/afrovery and Found:/uslbin/dde-control-cenerz include a bin string, so that the predetermined format file paths Found:/uslbin/afrovery and Found:/uslbin/dde-control-cenerz are filtered from the first list and stored in the second list, so that the second list includes two predetermined format file paths of Found:/uslbin/afrovery and Found:/uslbin/dde-control-cenerz.
According to the content, the binary files in the software package can be screened according to the conditions input by the user, and the interactivity and flexibility of the software package encryption process are improved.
Thereafter, in step S240, the identified predetermined format file is encrypted, that is, the identified binary file is encrypted. Specifically, the file with the predetermined format (binary file) is searched through the effective file path in the second list, and the searched file with the predetermined format (binary file) is encrypted through a data encryption algorithm. The invention does not limit the data encryption algorithm, as long as the binary files in the software package set can be encrypted.
It should be noted that, in the process of encrypting the binary file, information of a new software package set, such as signatures of all files in the software package set and version numbers of the software package set, may be generated, and if not updated, since the information of the previously stored software package set is not uniform with the information of the current software package set, the information of the current software package set is easily identified as abnormal information, that is, the software package set is identified as an abnormal software package, so that an error occurs when the software package set is downloaded, installed, used or installed later.
In order to avoid the above situation (in order that the software packages in the software package set can be normally installed and used by the user after the software package set is encrypted), the information of the software package set to be encrypted is updated after the software package set is encrypted. The information comprises information of files of a software package set to be encrypted, the files comprise a control file and a fingerprint file, and version numbers (distinguishing an original software package set from an encrypted software package set), names, required libraries and description information (describing what the software package does) of the software package set to be encrypted are stored in the control file. The fingerprint file stores the signatures of all files in the software package set to be encrypted, so that the software package is prevented from being tampered, and the encryption safety of the software package is improved. However, after the software package set is encrypted, the version number of the software package set is updated, and the name, the required library, and the description information are not updated, so the following gives examples before and after the version number of the software package set to be encrypted is updated. The version number of the software package set to be encrypted is as follows before updating:
Package:dde-control-center
Version: 5.3.0102.89+sp2-1
the version number of the software package set to be encrypted is as follows after updating:
Package: dde-control-center
Version: 5.3.0102.89+sp2-2
after the set of software packages to be encrypted is encrypted, the signatures of all files in the set of software packages to be encrypted are changed, that is, the information in the fingerprint file is changed. Examples before and after signature update of two files in a software package set to be encrypted are given below. Before the signatures of two files in the software package set to be encrypted are updated, the following steps are respectively carried out:
1a5a6d2bc0f4f0e4a3c5ccf611b3810f usr/bin/abrecovery
7c0e01bd1afa33cd5ea6aa1c80840a25 usr/bin/dde-control-center
wherein, 1a5a6d2bc0f4f0e4a3c5ccf611b3810f and 7c0e01bd1afa33cd5ea6aa1c80840a25 are respectively the signatures of two files in the software package set, and usr/bin/aborrecovery and usr/bin/dde-control-center are respectively the paths of two files in the software package set, under the condition that the paths of the files are not changed, the information changed after the software package is encrypted is the signatures of the files, and the paths of the files are not changed. After the signatures of the two files in the software package set to be encrypted are updated, the following steps are carried out:
a188cbfea0e8e2462c76a9655270fc31 usr/bin/abrecovery
aa1fb18a98eb9d59b0db6a216407a1b8 usr/bin/dde-control-center
finally, in step S250, the encrypted software package set is compressed, the encryption of the software package set is completed, and the compressed encrypted software package set is sent to the user (the user who requests to encrypt the software package).
According to the software package encryption method, a plurality of software packages can be encrypted at a time, and the software package encryption efficiency is improved. Secondly, because the software packages in the format of the debian and the rpm are essentially the software package set, and the method of the invention can encrypt a plurality of software packages at a time, the software packages in the format of the software package set such as the debian and the rpm can be encrypted, so that the software packages in the format of the software package set such as the debian and the rpm are protected, and the safety of the software packages in the format of the software package set such as the debian and the rpm is improved. In addition, in the process of encrypting the software package, the user can input the screening condition to screen the binary file according to the condition input by the user and encrypt the binary file, so that the interactivity and the flexibility of the software package encryption process are improved.
The various techniques described herein may be implemented in connection with hardware or software or, alternatively, with a combination of both. Thus, the methods and apparatus of the present invention, or certain aspects or portions thereof, may take the form of program code (i.e., instructions) embodied in tangible media, such as removable hard drives, U.S. disks, floppy disks, CD-ROMs, or any other machine-readable storage medium, wherein, when the program is loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the invention.
In the case of program code execution on programmable computers, the computing device will generally include a processor, a storage medium readable by the processor (including volatile and non-volatile memory and/or storage elements), at least one input device, and at least one output device. Wherein the memory is configured to store program code; the processor is configured to execute the software package encryption method of the present invention according to instructions in the program code stored in the memory.
By way of example, and not limitation, readable media may comprise readable storage media and communication media. Readable storage media store information such as computer readable instructions, data structures, program modules or other data. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. Combinations of any of the above are also included within the scope of readable media.
In the description provided herein, algorithms and displays are not inherently related to any particular computer, virtual system, or other apparatus. Various general purpose systems may also be used with examples of this invention. The required structure for constructing such a system will be apparent from the description above. Moreover, the present invention is not directed to any particular programming language. It is appreciated that a variety of programming languages may be used to implement the teachings of the present invention as described herein, and any descriptions of specific languages are provided above to disclose the best mode of the invention.
In the description provided herein, numerous specific details are set forth. It is understood, however, that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
Similarly, it should be appreciated that in the foregoing description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various inventive aspects. However, the disclosed method should not be interpreted as reflecting an intention that: that the invention as claimed requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims following the detailed description are hereby expressly incorporated into this detailed description, with each claim standing on its own as a separate embodiment of this invention.
Those skilled in the art will appreciate that the modules or units or components of the devices in the examples disclosed herein may be arranged in a device as described in this embodiment or alternatively may be located in one or more devices different from the devices in this example. The modules in the foregoing examples may be combined into one module or may be further divided into multiple sub-modules.
Those skilled in the art will appreciate that the modules in the device in an embodiment may be adaptively changed and disposed in one or more devices different from the embodiment. The modules or units or components of the embodiments may be combined into one module or unit or component, and furthermore they may be divided into a plurality of sub-modules or sub-units or sub-components. All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and all of the processes or elements of any method or apparatus so disclosed, may be combined in any combination, except combinations where at least some of such features and/or processes or elements are mutually exclusive. Each feature disclosed in this specification (including any accompanying claims, abstract and drawings) may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise.
Furthermore, those skilled in the art will appreciate that while some embodiments described herein include some features included in other embodiments, rather than other features, combinations of features of different embodiments are meant to be within the scope of the invention and form different embodiments. For example, in the following claims, any of the claimed embodiments may be used in any combination.
Furthermore, some of the described embodiments are described herein as a method or combination of method elements that can be performed by a processor of a computer system or by other means of performing the described functions. A processor having the necessary instructions for carrying out the method or method elements thus forms a means for carrying out the method or method elements. Further, the elements of the apparatus embodiments described herein are examples of the following apparatus: the apparatus is used to implement the functions performed by the elements for the purpose of carrying out the invention.
As used herein, unless otherwise specified the use of the ordinal adjectives "first", "second", "third", etc., to describe a common object, merely indicate that different instances of like objects are being referred to, and are not intended to imply that the objects so described must be in a given sequence, either temporally, spatially, in ranking, or in any other manner.
While the invention has been described with respect to a limited number of embodiments, those skilled in the art, having benefit of this description, will appreciate that other embodiments can be devised which do not depart from the scope of the invention as described herein. Furthermore, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter. Accordingly, many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the appended claims. The present invention has been disclosed in an illustrative rather than a restrictive sense, and the scope of the present invention is defined by the appended claims.

Claims (10)

1. A software package encryption method, executed in a computing device, the method comprising:
acquiring a to-be-encrypted software package set, wherein the to-be-encrypted software package set comprises a plurality of software packages, and each software package comprises one or more files;
decompressing the set of software packages to be encrypted;
identifying a file with a preset format from the decompressed software package set to be encrypted, wherein the file with the preset format is a file with a binary format;
encrypting the identified file with the preset format;
and compressing the encrypted software package set.
2. The method as claimed in claim 1, wherein the step of identifying a predetermined format file from the decompressed set of software packages to be encrypted comprises:
identifying files with preset formats from the decompressed software package set to be encrypted, wherein each file with the preset format corresponds to a path of a file with the preset format;
saving the identified path of the file with the preset format to a first list;
wherein the step of encrypting the identified file of the predetermined format comprises:
searching a file with a preset format through a path of the file with the preset format in the first list;
and encrypting the searched file with the predetermined format.
3. The method of claim 2, wherein the searched predetermined format file is encrypted by a data encryption algorithm.
4. The method of claim 2, further comprising the steps of:
searching a path of a predetermined format file including a first condition from the first list as an effective file path in response to the first condition input by a user;
saving the effective file path to a second list;
wherein the step of encrypting the identified file of the predetermined format comprises:
searching a file with a preset format through the effective file path in the second list;
and encrypting the searched file with the predetermined format.
5. The method of claim 1, further comprising the steps of:
and updating the information of the software package set to be encrypted, wherein the information comprises the information of the files of the software package set to be encrypted.
6. The method of claim 5, wherein the files comprise a control file and a fingerprint file, the control file stores the version number, name, required library and description information of the software package set to be encrypted, and the fingerprint file stores the signatures of all files in the software package set to be encrypted.
7. The method according to any one of claims 1 to 6, wherein before the step of decompressing the set of software packages to be encrypted, further comprising the step of:
and judging whether the category of the software package set to be encrypted is a preset category, and if so, decompressing the software package set to be encrypted.
8. The method of claim 7, wherein the predetermined categories include a debain category and an rpm category.
9. A computing device, comprising:
at least one processor; and
a memory storing program instructions, wherein the program instructions are configured to be adapted to be executed by the at least one processor, the program instructions comprising instructions for performing the method of any of claims 1-8.
10. A readable storage medium storing program instructions that, when read and executed by a computing device, cause the computing device to perform the method of any of claims 1-8.
CN202110623749.1A 2021-06-04 2021-06-04 Software package encryption method, computing device and storage medium Active CN113254965B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110623749.1A CN113254965B (en) 2021-06-04 2021-06-04 Software package encryption method, computing device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110623749.1A CN113254965B (en) 2021-06-04 2021-06-04 Software package encryption method, computing device and storage medium

Publications (2)

Publication Number Publication Date
CN113254965A true CN113254965A (en) 2021-08-13
CN113254965B CN113254965B (en) 2021-12-07

Family

ID=77186427

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110623749.1A Active CN113254965B (en) 2021-06-04 2021-06-04 Software package encryption method, computing device and storage medium

Country Status (1)

Country Link
CN (1) CN113254965B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120096453A1 (en) * 2010-10-14 2012-04-19 Meilstrup Jon A Software Package Management Mechanism
CN105787299A (en) * 2015-12-22 2016-07-20 中软信息系统工程有限公司 Method for making cpk software package with security identifier
CN106209754A (en) * 2015-05-08 2016-12-07 中标软件有限公司 Method and system to software kit automatic signature in version control system
CN111880781A (en) * 2020-07-29 2020-11-03 北京浪潮数据技术有限公司 Generation method, device, equipment and storage medium of RPM (revolution speed limit) installation package
CN112148297A (en) * 2020-08-26 2020-12-29 广州市保伦电子有限公司 Intelligent server encryption and packaging method and device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120096453A1 (en) * 2010-10-14 2012-04-19 Meilstrup Jon A Software Package Management Mechanism
CN106209754A (en) * 2015-05-08 2016-12-07 中标软件有限公司 Method and system to software kit automatic signature in version control system
CN105787299A (en) * 2015-12-22 2016-07-20 中软信息系统工程有限公司 Method for making cpk software package with security identifier
CN111880781A (en) * 2020-07-29 2020-11-03 北京浪潮数据技术有限公司 Generation method, device, equipment and storage medium of RPM (revolution speed limit) installation package
CN112148297A (en) * 2020-08-26 2020-12-29 广州市保伦电子有限公司 Intelligent server encryption and packaging method and device

Also Published As

Publication number Publication date
CN113254965B (en) 2021-12-07

Similar Documents

Publication Publication Date Title
US9928364B2 (en) Detecting malicious files
CN109299131B (en) Spark query method and system supporting trusted computing
CN111694589B (en) Upgrade package generation method, device, server and computer readable storage medium
CN113885936A (en) Solution method for software package dependence in customized mirror image
CN113139195A (en) Data encryption method and computing device
CN111522574B (en) Differential packet generation method and related equipment
WO2021151347A1 (en) Ios application-based reinforcement method, apparatus, device, and storage medium
US10379886B2 (en) Method and system for enhancing loading speed of intermediate language file
CN116522358A (en) Data encryption method, device, computing equipment and storage medium
CN113849845B (en) Method and device for packaging plug-in file, computing device and readable storage medium
CN113254965B (en) Software package encryption method, computing device and storage medium
CN116522368A (en) Firmware decryption analysis method for Internet of things equipment, electronic equipment and medium
CN114756255B (en) Offline package generation method and software package installation method
US20230216878A1 (en) Threat prevention by selective feature deprivation
CN113449291B (en) File import method and device, computing equipment and storage medium
CN113536361B (en) Method and device for realizing trusted reference library and computing equipment
CN113254917B (en) Recording permission management method, computing device and storage medium
CN113254951B (en) Data processing method and computing device
WO2019223094A1 (en) Block chain-based file protection method, and terminal device
CN113407999B (en) File protection method, computing device and storage medium
CN111913814A (en) Object copying method and computing equipment
US11921874B2 (en) Method and system for protecting file using class distribution and sequential memory loading
CN104484198A (en) Method and device for setting up application
US11822663B2 (en) Supervisor-based firmware hardening
CN114168489B (en) Function information acquisition method, computing device and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant