CN114064462A - Device and method for verifying application program and related product - Google Patents
Device and method for verifying application program and related product Download PDFInfo
- Publication number
- CN114064462A CN114064462A CN202111283625.XA CN202111283625A CN114064462A CN 114064462 A CN114064462 A CN 114064462A CN 202111283625 A CN202111283625 A CN 202111283625A CN 114064462 A CN114064462 A CN 114064462A
- Authority
- CN
- China
- Prior art keywords
- application program
- verified
- installation package
- value corresponding
- application
- 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
- 238000000034 method Methods 0.000 title claims abstract description 22
- 238000009434 installation Methods 0.000 claims abstract description 102
- 238000012795 verification Methods 0.000 claims abstract description 76
- 238000004422 calculation algorithm Methods 0.000 claims description 50
- 101100217298 Mus musculus Aspm gene Proteins 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 4
- 230000004913 activation Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 description 7
- 230000006837 decompression Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000003014 reinforcing effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/629—Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
The present disclosure relates to an apparatus, method, and related product for verifying an application. The device comprises: the computing unit is configured to compute a current verification value corresponding to an installation package in the application program to be verified before the application program to be verified is started; a comparison unit configured to: comparing whether the current check value is consistent with an original check value corresponding to an installation package in the application program to be checked; and checking the application program to be checked based on the comparison result of the current check value and the original check value. By using the scheme disclosed by the invention, the self-checking of the integrity of the application program can be realized, so that the safety of the application program is improved.
Description
Technical Field
The present disclosure relates generally to the field of application security issues. More particularly, the present disclosure relates to an apparatus and method for verifying an application, and a shell startup module and a computer-readable storage medium.
Background
With the increasing popularity of mobile applications ("APPs"), the security issues they face are also becoming more and more important. At present, in order to increase the security of the mobile terminal APP, the APP is usually protected from being decompiled or cracked by reinforcing the APP. However, the reinforcing method generally only focuses on whether the APP is decompiled and debugged, and often ignores the check on the integrity of the APP at the mobile terminal. In the absence of verification of the integrity of the APP at the mobile terminal, the APP is at risk of being repackaged or tampered. For example, the APP after repackaging is replaced with an important file, or even inserted with code containing a security risk. Therefore, how to verify the integrity of the mobile terminal APP becomes an urgent technical problem to be solved.
Disclosure of Invention
To address at least one or more of the above-mentioned technical problems, an aspect of the present disclosure provides a scheme for verifying an application. By using the scheme disclosed by the invention, the self-checking of the integrity of the application program can be realized, so that the running safety of the application program can be improved. To this end, the present disclosure provides solutions in a number of aspects as follows.
In one aspect, the present disclosure provides an apparatus for verifying an application, comprising: the computing unit is configured to compute a current verification value corresponding to an installation package in the application program to be verified before the application program to be verified is started; a comparison unit configured to: comparing whether the current check value is consistent with an original check value corresponding to an installation package in the application program to be checked; and checking the application program to be checked based on the comparison result of the current check value and the original check value.
In one embodiment, in calculating the current verification value corresponding to the installation package in the application to be verified, the calculating unit is further configured to: calculating a hash value corresponding to the installation package in the application program to be verified; and determining a current verification value corresponding to the installation package in the application program to be verified according to the hash value.
In another embodiment, in calculating the hash value corresponding to the installation package in the application to be verified, the calculating unit is further configured to: decompressing the installation package in the application program to be verified to obtain a plurality of files of the installation package in the application program to be verified; traversing the plurality of files and calculating a hash value corresponding to each file by using a hash algorithm; and executing the hash algorithm again based on the hash value corresponding to each file to obtain the hash value corresponding to the installation package in the application program to be verified.
In yet another embodiment, wherein the hash algorithm comprises at least an SM3 hash algorithm, an MD5 hash algorithm, or a SHA1 hash algorithm.
In yet another embodiment, in determining, according to the hash value, a current verification value corresponding to the installation package in the application to be verified, the computing unit is further configured to: and performing encryption or confusion operation on the hash value corresponding to the installation package in the application program to be verified so as to determine the current verification value corresponding to the installation package in the application program to be verified.
In yet another embodiment, the apparatus of the present disclosure further includes a processing unit configured to process the application to be verified based on a comparison result of the current verification value and the original verification value.
In yet another embodiment, wherein in processing the application to be verified based on the comparison of the current verification value and the original verification value, the processing unit is further configured to: responding to the consistency of the current check value and the original check value, and starting the application program to be checked; or in response to the current check value and the original check value being inconsistent, exiting the application program to be checked.
In another aspect, the present disclosure also provides a shell starting module comprising the apparatus according to the foregoing embodiments.
In yet another aspect, the present disclosure also provides a method for verifying an application, including: before an application program to be verified is started, calculating a current verification value corresponding to an installation package in the application program to be verified; comparing whether the current check value is consistent with an original check value corresponding to an installation package in the application program to be checked; and checking the application program to be checked based on the comparison result of the current check value and the original check value.
In yet another aspect, the present disclosure also provides a computer-readable storage medium having stored thereon computer-readable instructions for verifying an application program, which, when executed by one or more processors, implement various embodiments as previously described.
According to the scheme disclosed by the invention, the self-checking of the application program is realized by comparing the current check value corresponding to the installation package in the application program to be checked with the original check value before the application program to be checked is started, so that the application program can be effectively prevented from being repackaged or tampered, and the running safety of the application program is improved. Further, embodiments of the present disclosure enable self-checking of the integrity of an application by computing hash values of all files within a secure package. In addition, the embodiment of the disclosure verifies the application program before starting, and the application program is started or directly quitted through the verification result to ensure the safety of the application program.
Drawings
The above and other objects, features and advantages of exemplary embodiments of the present disclosure will become readily apparent from the following detailed description read in conjunction with the accompanying drawings. In the drawings, several embodiments of the disclosure are illustrated by way of example and not by way of limitation, and like or corresponding reference numerals indicate like or corresponding parts and in which:
fig. 1 is a block diagram illustrating an exemplary structure of an apparatus for verifying an application according to an embodiment of the present disclosure;
fig. 2 is a block diagram illustrating another exemplary structure of an apparatus for verifying an application according to an embodiment of the present disclosure;
FIG. 3 is a block diagram illustrating an exemplary configuration of a shell activation module according to an embodiment of the present disclosure;
FIG. 4 is an exemplary flow chart illustrating a method for verifying an application in accordance with an embodiment of the present disclosure; and
fig. 5 is an exemplary flowchart illustrating the calculation of a hash value corresponding to an installation package in an application to be verified according to an embodiment of the present disclosure.
Detailed Description
The technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the accompanying drawings. It should be understood that the embodiments described in this specification are only some of the embodiments of the present disclosure provided to facilitate a clear understanding of the aspects and to comply with legal requirements, and not all embodiments of the present disclosure may be implemented. All other embodiments, which can be derived by a person skilled in the art from the embodiments disclosed in the specification without making any creative effort, shall fall within the protection scope of the present disclosure.
Fig. 1 is a block diagram illustrating an exemplary structure of an apparatus 100 for verifying an application according to an embodiment of the present disclosure. As shown in fig. 1, the apparatus 100 may comprise a calculation unit 101 and a comparison unit 102. In an embodiment, the aforementioned calculating unit 101 may be configured to calculate a current verification value corresponding to an installation package in the application program to be verified before the application program to be verified is started. The comparing unit 102 may be configured to compare whether the current verification value is consistent with an original verification value corresponding to an installation package in the application to be verified, and then verify the application to be verified based on a comparison result between the current verification value and the original verification value, so as to implement self-verification of the application.
In an implementation scenario, when calculating a current verification value corresponding to an installation package in the application to be verified, the calculating unit may be first configured to calculate a hash value corresponding to the installation package in the application to be verified. And then, determining a current verification value corresponding to the installation package in the application program to be verified according to the hash value. More specifically, the computing unit may first perform a decompression operation on the installation package in the application program to be verified, so as to obtain a plurality of files of the installation package in the application program to be verified. Further, traversing the plurality of files, calculating a hash value corresponding to each file by using a hash algorithm, and further executing the hash algorithm again based on the hash value corresponding to each file to obtain the hash value corresponding to the installation package in the application program to be verified.
It can be understood that the installation package in the application program to be verified refers to a set of files that can be decompressed by itself, including all files installed by the application program to be verified, and most of the files of the installation package are in an exe file format. When the installation package is operated, all files of the application program can be released to the hard disk, and the work of modifying the registry, modifying system setting, creating shortcuts and the like is facilitated. In one embodiment, the computing unit of the embodiment of the present disclosure may decompress the installation package in the application to be verified by calling a decompression tool or executing a decompression algorithm command, so as to obtain all files of the installation package in the application to be verified.
In one embodiment, in traversing a plurality of files and calculating a hash value corresponding to each file using a hash algorithm, the calculation unit may traverse all files of the installation package within the application to be verified by performing, for example, a pre-order traversal, a mid-order traversal, or a post-order traversal. And then, calculating a hash value corresponding to each file of the installation package in the application program to be verified according to a certain sequence, and recording each file name and the corresponding hash value according to the sequence. The present disclosure is not limited in this respect with respect to the foregoing traversal methods. And finally, the computing unit executes the hash algorithm again based on the hash value corresponding to each file to obtain the hash value corresponding to the installation package in the application program to be verified.
In some embodiments, the hash algorithm may include, but is not limited to, SM3 hash algorithm, MD5 hash algorithm, or SHA1 hash algorithm. It is understood that the SM3 hash algorithm is based on a cryptographic hash function standard, which is mainly used for digital signature and verification, message authentication code generation and verification, and random number generation. The cryptographic hash function (alternatively referred to as a cryptographic hash function) generally includes the following four characteristics: that is, for any given message, it is easier to compute the hash value; it is difficult to deduce the original message from a known hash value; without altering the hash value, the message content cannot be modified and the same hash value cannot be given for two different messages. That is, the result output based on the hash function is difficult to deduce the data input by the hash function, so that the SM3 hash algorithm is high in security and operation efficiency. According to the method and the device, the hash values of all the files are preferably calculated through the SM3 hash algorithm, so that the calculation efficiency is improved, and meanwhile, the safety of the application program can be improved.
The MD5 hash algorithm and SHA1 hash algorithm are relatively less secure than the SM3 hash algorithm described above, but are essentially the same as the SM3 hash algorithm described above, i.e., a small digital "fingerprint" is created from either type of data. In an application scenario, the SM3 hash algorithm, the MD5 hash algorithm, and the SHA1 hash algorithm all obtain a final hash value after data padding, data grouping, and iterative compression. In the embodiment of the present disclosure, the computing unit may first perform a hash algorithm on each file of the installation package in the application using, for example, the SM3 hash algorithm to obtain a hash value corresponding to each file through processes such as the aforementioned data padding, data grouping, and iterative compression. Then, the hash algorithm is executed on the hash value corresponding to each file by using, for example, the SM3 hash algorithm, so as to obtain the hash value corresponding to the installation package in the application to be verified. That is, all files of the installation package in the application program to be verified finally correspond to one hash value.
Based on the obtained hash value corresponding to the installation package in the application program to be verified, the computing unit in the embodiment of the present disclosure may determine, according to the hash value, a current verification value corresponding to the installation package in the application program to be verified. Specifically, the computing unit performs encryption or obfuscation operation on a hash value corresponding to an installation package in the application program to be verified, so as to determine a current verification value corresponding to the installation package in the application program to be verified. In one embodiment, the computing unit may perform encryption or obfuscation operation on a hash value corresponding to an installation package in the application to be verified by calling an encryption algorithm or an obfuscation tool, so as to obtain a current verification value corresponding to the installation package in the application to be verified.
As described above, the comparing unit may be configured to compare whether the current check value is consistent with the original check value corresponding to the installation package in the application program to be checked, and further determine whether the installation package of the application program to be checked is replaced or tampered based on the comparison result, so as to implement self-checking of the application program to be checked. In an implementation scenario, a current verification value corresponding to an installation package in an application to be verified may be a character string.
As can be seen from the above description, in the embodiment of the present disclosure, the self-verification is performed on the application program to be verified by comparing whether the current verification value corresponding to the installation package in the application program to be verified is consistent with the original verification value corresponding to the installation package in the application program to be verified, so that the application program to be verified is prevented from being tampered or repackaged. Further, the embodiment of the disclosure calculates the hash values of all files of the installation package by using, for example, the SM3 hash algorithm, thereby implementing self-verification of the integrity of the application program to be verified, and greatly improving the security of the application program to be verified. In particular, the embodiment of the disclosure is more suitable for self-checking of the application program under the android system, so that the core code or the resource file in the application program under the android system is prevented from being tampered or repackaged, and the security of the application program under the android system is greatly improved.
In one embodiment, the apparatus of the present disclosure may further include a processing unit, which may be configured to process the application to be verified based on a result of comparing the current verification value and the original verification value. The processing unit will be described in detail below in conjunction with fig. 2.
Fig. 2 is a block diagram illustrating another exemplary structure of an apparatus for verifying an application according to an embodiment of the present disclosure. It is to be understood that fig. 2 is another implementation of the apparatus 100 of fig. 1 described above, and therefore the description made above with respect to fig. 1 applies equally to fig. 2.
As shown in fig. 2, the apparatus of the embodiment of the present disclosure may include a calculation unit 101, a comparison unit 102, and a processing unit 201. As can be seen from the foregoing, the aforementioned calculating unit 101 may be configured to calculate a current verification value corresponding to an installation package in an application to be verified. Specifically, the hash values corresponding to all files of the installation package in the application to be verified can be obtained by calculating the hash value corresponding to each file of the installation package in the application to be verified by using a hash algorithm (e.g., SM3 hash algorithm), and performing the hash algorithm (e.g., SM3 hash algorithm) again on each corresponding hash value. Further, encryption or obfuscation operation is performed on the hash value corresponding to the installation package in the application program to be verified, so that a current verification value corresponding to the installation package in the application program to be verified is obtained. The comparing unit 102 may compare whether a current verification value corresponding to the installation package in the application program to be verified is consistent with an original verification value corresponding to the installation package in the application program to be verified, and verify the application program to be verified based on a comparison result.
In an embodiment, the processing unit 201 may be configured to process the application to be verified according to whether a current verification value corresponding to the installation package in the application to be verified is consistent with an original verification value corresponding to the installation package in the application to be verified. Specifically, in response to that the current verification value corresponding to the installation package in the application program to be verified is consistent with the original verification value corresponding to the installation package in the application program to be verified, the processing unit 201 may start the application program to be verified to process the application program to be verified. On the contrary, in response to that the current verification value corresponding to the installation package in the application program to be verified is not consistent with the original verification value corresponding to the installation package in the application program to be verified, the processing unit 201 may process the application program to be verified by exiting the application program to be verified, so that the security of the application program can be ensured.
In order to perform integrity verification on the application program to be verified before the application program to be verified is started each time, the embodiment of the disclosure further provides a shell starting module. The case starting module, which may include the apparatus of an embodiment of the present disclosure, will be described in detail below in conjunction with fig. 3.
Fig. 3 is a block diagram illustrating an exemplary structure of a case starting module 300 according to an embodiment of the present disclosure. As shown in fig. 3, the case starting module 300 may include the calculating unit 101, the comparing unit 102, and the processing unit 201 in the embodiment of the present disclosure. It can be understood that the shell starting module 300 runs prior to the application program to be verified, and during running, first calculates the current verification value corresponding to the installation package in the application program to be verified through the execution calculating unit 101, and then compares whether the current verification value corresponding to the installation package in the application program to be verified is consistent with the original verification value thereof through the execution comparing unit 102 to implement verification of the application program to be verified. In addition, when the aforementioned shell starting module 300 runs, the application program to be verified may be processed through the execution processing unit 201 according to whether the current verification value corresponding to the installation package in the application program to be verified is consistent with the original verification value thereof. For example, when the current check value is consistent with the original check value (i.e., the installation package is not tampered or repackaged), the application to be checked is normally started, and when the current check value is consistent with the original check value (i.e., the installation package is tampered or repackaged), the application to be checked is directly exited. How to obtain the current check value may refer to what is described in fig. 1 above, and this disclosure is not repeated here.
As can be seen from the above description, in the embodiment of the present disclosure, the shell start module is operated before the application to be verified to verify the application to be verified, and the application is really started after the verification is passed, otherwise, an error is reported or the application is exited. Through the shell starting module, the embodiment of the disclosure can not only ensure the normal operation of the application program, but also ensure that the running application program is not tampered or repackaged. Further, the check value stored in the case activation module is a value generated after, for example, an encryption or obfuscation operation, which is difficult to forge. For example, the calculation unit may perform code obfuscation or hiding in the so library to increase the difficulty of cracking, so that an attacker cannot recalculate a correct check value based on a tampered installation package. Based on this, the embodiment of the present disclosure can realize self-checking of the integrity of the application program, thereby greatly improving the security of the application program.
In addition, the integrity of the installation package is self-checked before the application program is started, and the real-time self-checking mode does not need to be networked to obtain the original check value of the installation package, and does not need to store the original check values of installation packages of different versions on the mobile phone of the user, so that the checking is flexible and convenient.
Fig. 4 is an exemplary flow chart illustrating a method 400 for verifying an application in accordance with an embodiment of the present disclosure. As shown in fig. 4, at step S402, before the application to be verified is started, a current verification value corresponding to the installation package in the application to be verified is calculated. In an embodiment, a hash value corresponding to the installation package in the application program to be verified may be first calculated, and then a current verification value corresponding to the installation package in the application program to be verified may be determined according to the obtained hash value. How to obtain the hash value corresponding to the installation package in the application program to be verified is described in detail later in conjunction with fig. 5. Based on the obtained hash value corresponding to the installation package in the application program to be verified, a current verification value corresponding to the installation package in the application program to be verified can be determined by performing, for example, encryption or obfuscation on the hash value.
After obtaining the current verification value corresponding to the installation package in the application program to be verified, at step S404, it is compared whether the current verification value is consistent with the original verification value corresponding to the installation package in the application program to be verified. Further, at step S406, the application to be verified is verified based on the comparison result of the current verification value and the original verification value. For example, when the current check value is consistent with the original check value, it indicates that the application program to be checked has not been tampered or repackaged. On the contrary, when the current check value is inconsistent with the original check value, it indicates that the application program to be checked is tampered or repackaged. In some embodiments, the application to be verified may also be processed based on whether the current verification value and the original verification value are consistent. Such as normal startup or direct application to be verified.
Fig. 5 is an exemplary flowchart illustrating the calculation of a hash value corresponding to an installation package in an application to be verified according to an embodiment of the present disclosure. It is to be understood that fig. 5 is a specific embodiment of the method 400 of fig. 4 described above, and thus the description made above with respect to fig. 1 applies equally to fig. 5.
As shown in fig. 5, at step S502, a decompression operation is performed on the installation package in the application to be verified to obtain a plurality of files of the installation package in the application to be verified. In one embodiment, the installation package within the application to be verified may be decompressed by invoking a decompression tool or decompression algorithm. Based on the obtained plurality of files (i.e., all files) of the installation package, at step 504, the plurality of files are traversed and a hash value corresponding to each file is calculated using a hash algorithm. As previously described, the hash value corresponding to each file may be calculated using, for example, the SM3 hash algorithm, the MD5 hash algorithm, or the SHA1 hash algorithm. Further, at step 506, the hash algorithm (including SM3 hash algorithm, MD5 hash algorithm, or SHA1 hash algorithm) is executed again based on the hash value corresponding to the file to obtain the hash value corresponding to the installation package in the application to be verified. As described above, the current verification value corresponding to the obtained hash value corresponding to the installation package in the application to be verified can be determined. And according to whether the current check value corresponding to the installation package in the application program to be checked is consistent with the original check value corresponding to the installation package in the application program to be checked, checking the application program to be checked.
From the above description in conjunction with the accompanying drawings, those skilled in the art will also appreciate that embodiments of the present disclosure may also be implemented by software programs. The present disclosure thus also provides a computer program product. The computer program product may be used to implement the method for verifying an application described in the present disclosure in connection with fig. 4-5.
It should be noted that while the operations of the disclosed methods are depicted in the drawings in a particular order, this does not require or imply that these operations must be performed in this particular order, or that all of the illustrated operations must be performed, to achieve desirable results. Rather, the steps depicted in the flowcharts may change the order of execution. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step execution, and/or one step broken down into multiple step executions.
It should be understood that when the claims of the present disclosure, and when the terms first, second, third, fourth, etc. are used in the specification and drawings, they are used only to distinguish one object from another, and not to describe a particular order. The terms "comprises" and "comprising," when used in the specification and claims of this disclosure, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
It is also to be understood that the terminology used in the description of the disclosure herein is for the purpose of describing particular embodiments only, and is not intended to be limiting of the disclosure. As used in the specification and claims of this disclosure, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should be further understood that the term "and/or" as used in the specification and claims of this disclosure refers to any and all possible combinations of one or more of the associated listed items and includes such combinations.
Although the embodiments of the present disclosure are described above, the descriptions are only examples for facilitating understanding of the present disclosure, and are not intended to limit the scope and application scenarios of the present disclosure. It will be understood by those skilled in the art of the present disclosure that various changes in form and details may be made therein without departing from the spirit and scope of the disclosure, and that the scope of the disclosure is to be limited only by the appended claims.
Claims (10)
1. An apparatus for verifying an application, comprising:
the computing unit is configured to compute a current verification value corresponding to an installation package in the application program to be verified before the application program to be verified is started;
a comparison unit configured to:
comparing whether the current check value is consistent with an original check value corresponding to an installation package in the application program to be checked; and
and verifying the application program to be verified based on the comparison result of the current verification value and the original verification value.
2. The apparatus according to claim 1, wherein in calculating a current verification value corresponding to an installation package within the application to be verified, the calculating unit is further configured to:
calculating a hash value corresponding to the installation package in the application program to be verified; and
and determining a current verification value corresponding to the installation package in the application program to be verified according to the hash value.
3. The apparatus according to claim 2, wherein in calculating the hash value corresponding to the installation package in the application to be verified, the calculating unit is further configured to:
decompressing the installation package in the application program to be verified to obtain a plurality of files of the installation package in the application program to be verified;
traversing the plurality of files and calculating a hash value corresponding to each file by using a hash algorithm; and
and executing the hash algorithm again based on the hash value corresponding to each file to obtain the hash value corresponding to the installation package in the application program to be verified.
4. The apparatus of claim 3, wherein the hash algorithm comprises at least an SM3 hash algorithm, an MD5 hash algorithm, or a SHA1 hash algorithm.
5. The apparatus according to claim 2, wherein in determining a current verification value corresponding to an installation package in the application to be verified according to the hash value, the computing unit is further configured to:
and performing encryption or confusion operation on the hash value corresponding to the installation package in the application program to be verified so as to determine the current verification value corresponding to the installation package in the application program to be verified.
6. The apparatus of claim 1, further comprising a processing unit configured to process the application to be verified based on a comparison of the current verification value and the original verification value.
7. The apparatus of claim 6, wherein in processing the application to be verified based on the comparison of the current verification value and the original verification value, the processing unit is further configured to:
responding to the consistency of the current check value and the original check value, and starting the application program to be checked; or
And in response to the fact that the current check value is inconsistent with the original check value, exiting the application program to be checked.
8. A shell activation module comprising an apparatus according to any one of claims 1-7.
9. A method for verifying an application, comprising:
before an application program to be verified is started, calculating a current verification value corresponding to an installation package in the application program to be verified;
comparing whether the current check value is consistent with an original check value corresponding to an installation package in the application program to be checked; and
and verifying the application program to be verified based on the comparison result of the current verification value and the original verification value.
10. A computer-readable storage medium having stored thereon computer-readable instructions for verifying an application, the computer-readable instructions, when executed by one or more processors, implement the method of claim 9.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111283625.XA CN114064462A (en) | 2021-11-01 | 2021-11-01 | Device and method for verifying application program and related product |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111283625.XA CN114064462A (en) | 2021-11-01 | 2021-11-01 | Device and method for verifying application program and related product |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114064462A true CN114064462A (en) | 2022-02-18 |
Family
ID=80236227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111283625.XA Pending CN114064462A (en) | 2021-11-01 | 2021-11-01 | Device and method for verifying application program and related product |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114064462A (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105262589A (en) * | 2014-07-16 | 2016-01-20 | 阿里巴巴集团控股有限公司 | Data security check method and apparatus and check device |
US20170249456A1 (en) * | 2014-11-14 | 2017-08-31 | Huawei Technologies Co., Ltd. | Application program integrity verification method and network device |
CN109934017A (en) * | 2019-03-12 | 2019-06-25 | 苏州科达科技股份有限公司 | Check information generates and file integrality method of calibration, system, equipment and medium |
CN111199039A (en) * | 2018-11-20 | 2020-05-26 | 成都鼎桥通信技术有限公司 | Application security verification method and device and terminal equipment |
-
2021
- 2021-11-01 CN CN202111283625.XA patent/CN114064462A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105262589A (en) * | 2014-07-16 | 2016-01-20 | 阿里巴巴集团控股有限公司 | Data security check method and apparatus and check device |
US20170249456A1 (en) * | 2014-11-14 | 2017-08-31 | Huawei Technologies Co., Ltd. | Application program integrity verification method and network device |
CN111199039A (en) * | 2018-11-20 | 2020-05-26 | 成都鼎桥通信技术有限公司 | Application security verification method and device and terminal equipment |
CN109934017A (en) * | 2019-03-12 | 2019-06-25 | 苏州科达科技股份有限公司 | Check information generates and file integrality method of calibration, system, equipment and medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108683502B (en) | Digital signature verification method, medium and equipment | |
US9946474B2 (en) | Storing and accessing data | |
EP3316160A1 (en) | Authentication method and apparatus for reinforced software | |
CN107092816B (en) | Android application program reinforcing method | |
CN112231702B (en) | Application protection method, device, equipment and medium | |
CN112148314B (en) | Mirror image verification method, device and equipment of embedded system and storage medium | |
CN114116313A (en) | Backup data processing method and device | |
CN113254887A (en) | Authorization method of application program, computing device and storage medium | |
CN112507326A (en) | SM3 hash algorithm-based password information encryption method and device and computer equipment | |
CN110069415B (en) | Software integrity checking and software testing method used in software testing process | |
CN109657454B (en) | Trusted verification method for android application based on TF (TransFlash) cryptographic module | |
CN109033818B (en) | Terminal, authentication method, and computer-readable storage medium | |
WO2020233044A1 (en) | Plug-in verification method and device, and server and computer-readable storage medium | |
CN112035803B (en) | Protection method and device based on Windows platform software | |
CN111191216B (en) | OFD signature client with JAVA interface and method and system for signature verification | |
CN109934016B (en) | Application signature verification method and device and electronic equipment | |
CN112463224A (en) | System start control method, device, equipment and readable storage medium | |
CN114064462A (en) | Device and method for verifying application program and related product | |
CN110674511A (en) | Offline data protection method and system based on elliptic curve encryption algorithm | |
US20230114009A1 (en) | Information Processing Apparatus and Program Starting Method | |
CN111522555B (en) | apk file reinforcement method, decryption method and related devices | |
WO2020062233A1 (en) | Method and apparatus for processing and deploying application program, and computer-readable medium | |
CN112363776A (en) | Terminal control method and device and terminal | |
CN117411644B (en) | Digital signature verification method and device, electronic equipment and storage medium | |
CN114629641B (en) | Code downloading starting safety protection method and device based on safety chip |
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 |