Data processing method and device, electronic equipment and readable storage medium

By obtaining the outgoing data of the application through the terminal device, comparing it with the privacy statement using the preset keyword set and combining it with the embedded data analysis, the problem of malicious applications collecting data beyond the scope of the privacy statement is solved, efficient and accurate privacy consistency detection is achieved, and user privacy protection is improved.

CN114444112BActive Publication Date: 2025-10-10HUAWEI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202011232109.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-11-06
Publication Date
2025-10-10
Estimated Expiration
2040-11-06

AI Technical Summary

Technical Problem

In the existing technology, malicious applications or applications with vulnerabilities will collect user data beyond the scope of the privacy statement, resulting in the violation of user privacy, and the existing detection methods are not accurate enough.

Method used

Obtain outgoing data of the object to be detected through the terminal device, compare it with the preset keyword set and the keyword set of the privacy statement, combine it with embedded data analysis, dynamic or static tracking data to obtain real outgoing data, and perform privacy consistency detection.

Benefits of technology

It improves the accuracy of application privacy consistency detection, reduces computational complexity, lowers storage requirements for terminal devices, improves detection efficiency and security, avoids false positives, and ensures user privacy protection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114444112B_ABST
    Figure CN114444112B_ABST
Patent Text Reader

Abstract

The embodiment of the application provides a kind of data processing method, device, electronic equipment and readable storage medium, the method comprises: according to the privacy declaration of the object to be detected and the preset keyword set, the keyword set of privacy declaration is obtained, and the keyword set in the keyword set of privacy declaration is contained in the preset keyword set;Obtain the outgoing data of the object to be detected;According to the keyword set of privacy declaration and outgoing data, the privacy consistency detection is carried out to the object to be detected, and the detection result of the object to be detected is obtained.In the embodiment of the application, real outgoing data in the running process of the object to be detected can be detected, so whether the data actually collected in the application program is the data included in the privacy declaration of the application program can be accurately determined, and the accuracy of the privacy consistency detection of the application program can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] Embodiments of the present application relate to information security technology, and in particular, to a data processing method and device, electronic equipment and readable storage medium. BACKGROUND

[0002] The privacy declaration of an application program describes the personal data of a user that can be collected by a terminal device when the user uses the application program. However, for some malicious application programs or application programs with vulnerabilities, the personal data of the user in the application program collected by the terminal device will exceed the range of the privacy declaration of the application program, and will seriously infringe the privacy of the user. Therefore, it is necessary to detect the privacy consistency of the application program, that is, to detect whether the personal data of the user collected in the application program is within the range described in the privacy declaration of the application program. SUMMARY

[0003] Embodiments of the present application provide a data processing method and device, electronic equipment and readable storage medium to improve the accuracy of privacy consistency detection of an application program.

[0004] In a first aspect, embodiments of the present application provide a data processing method. The execution subject of the data processing method can be a terminal device or a chip in the terminal device, or a server, a chip in the server, or realized by interaction between the server and the terminal device. The following will be described taking the terminal device as an example. In the data processing method, the terminal device can obtain outgoing data of a to-be-detected object, the outgoing data of the to-be-detected object being data actually outgoing in the to-be-detected object. The to-be-detected object can be an application program, a website, a webpage, or an installation package of the application program or the website. The terminal device obtains a keyword set of a privacy declaration of the to-be-detected object according to the privacy declaration and a preset keyword set. It should be understood that the data running in the to-be-detected object is self-defined data, and is not the real personal data of the user.

[0005] The preset keyword set includes the keywords in the keyword set of the privacy declaration. That is, the terminal device can obtain the keywords in the privacy declaration that are the same as the keywords in the preset keyword set, and obtain the keyword set of the privacy declaration. It should be understood that the preset keyword set can be a set of a large number of keywords maintained by a developer in advance, and the keywords in the preset keyword set can be keywords extracted from different privacy declarations. After obtaining the keyword set of the privacy declaration and the outgoing data, the terminal device can perform privacy consistency detection on the to-be-detected object according to the keyword set of the privacy declaration and the outgoing data, and obtain a detection result of the to-be-detected object.

[0006] Because in the embodiment of the present application, the terminal device can obtain the actual outgoing data during the operation of the object to be detected, and use the actual outgoing data to detect whether the data collected from the object to be detected is the data included in the privacy statement of the application, it can improve the accuracy of the privacy consistency detection of the application.

[0007] In one possible implementation, the terminal device may obtain keywords in the outgoing data that are identical to keywords in the preset keyword set based on the preset keyword set, thereby obtaining a first keyword set for the outgoing data. If the keyword set of the privacy statement includes all keywords in the first keyword set, then it is determined that the object to be detected has passed the privacy consistency test; if the keyword set of the privacy statement does not include keywords in the first keyword set, then it is determined that the object to be detected has failed the privacy consistency test.

[0008] Although the above method can determine whether the object to be detected has passed the privacy consistency test based on the comparison of the keywords in the outgoing data of the object to be detected and the keywords in the keyword set of the privacy statement, if the outgoing data of the object to be detected does not include keywords, it is impossible to determine the keywords in the outgoing data, and thus it is impossible to perform privacy consistency test on the object to be detected. Therefore, in one possible implementation method, the terminal device can pre-store the format of the data corresponding to each keyword in the preset keyword set, and then when the terminal device obtains the outgoing data of the object to be detected, it can determine whether the object to be detected has passed the privacy consistency test based on the format of the outgoing data of the object to be detected and the format of each keyword in the preset keyword set. Among them, if the format of the data corresponding to the keywords in the keyword set of the privacy statement includes the format of the outgoing data, it can be determined that the object to be detected has passed the privacy consistency test, otherwise, the object to be detected has not passed the privacy consistency test. In this implementation method, even if the outgoing data does not include keywords, the terminal device can obtain the privacy consistency test result of the object to be detected by analyzing the format of the data, and has a wide range of applications.

[0009] In one embodiment, the outgoing data may contain keywords that do not exist in the preset keyword set, that is, the preset keyword set is not fully maintained. In this scenario, the terminal device can obtain the second keyword set in the outgoing data of the object to be detected, and then determine whether the second keyword set contains keywords that do not exist in the preset keyword set. Among them, if the preset keyword set does not contain the first keyword in the second keyword set, the first keyword is added to the preset keyword set. It should be understood that the terminal device can segment the outgoing data of the object to be detected to obtain multiple words, and use the words of the preset part of speech as keywords in the outgoing data of the object to be detected to obtain the second keyword set of the object to be detected.

[0010] In an embodiment of the present application, the terminal device can obtain keywords in the outgoing data of the object to be detected, and then update the preset keyword set to enrich the keywords in the preset keyword set, which can improve the accuracy of privacy consistency detection performed based on the preset keyword set.

[0011] In one possible implementation, after the terminal device obtains the detection results of the object to be detected, it can display the detection results of the object to be detected, so that the developer can know in real time whether the object to be detected violates the user's privacy. When it is determined that the object to be detected fails the privacy consistency test, the object to be detected can be modified or adjusted in time to avoid violating the user's privacy.

[0012] In a possible implementation, the terminal device can obtain the keywords in the object to be detected that are the same as the keywords in the preset keyword set, and obtain the keyword set of the object to be detected. It should be understood that the terminal device can be pre-stored with preset buried data, and the preset buried data is the data in the object to be detected that may be sent out, but has not yet been actually sent out. The preset buried data can be data customized by the developer. There is a mapping relationship between the preset buried data and the keywords in the preset keyword set, and each keyword in the preset keyword set corresponds to preset buried data. The preset buried data can be uncoded data, and / or coded data. For example, if the preset keyword set includes two keywords, ID number and gender, the preset buried data can be 12345 corresponding to the ID number, or the coded 12345, and the data to be sent out can be "female", or the coded "female".

[0013] In an embodiment of the present application, the terminal device can determine the buried data of the object to be detected based on the mapping relationship between the keywords in the preset keyword set and the preset buried data, as well as the keyword set of the object to be detected. The buried data is data that may be sent by the object to be detected but has not yet been actually sent out. The terminal device can detect whether the buried data is actually sent out, and then obtain the outgoing buried data. The outgoing buried data is the outgoing data of the object to be detected obtained by the terminal device.

[0014] In the embodiment of the present application, buried data (i.e., data that may be sent out by the object to be detected) can be pre-determined, and then the privacy consistency test of the application can be performed using the outgoing buried data. Because the amount of buried data is small compared to the amount of all outgoing data of the object to be detected, the terminal device can obtain the outgoing buried data to reduce the computational complexity of the privacy consistency test and improve the efficiency of the application's privacy consistency test.

[0015] Alternatively, in an embodiment of the present application, the terminal device may send a keyword set of the object to be detected to the server, and the server determines the buried data based on the keyword set of the object to be detected and the mapping relationship between the keywords in the preset keyword set and the preset buried data. Compared with the way in which the terminal device obtains the buried data, the way in which the server obtains the buried data can avoid the detection process of privacy consistency leakage on the terminal device side as little as possible, and avoid other malicious devices from obtaining the detection method of privacy consistency leakage in the embodiment of the present application, which is more secure. In addition, the mapping relationship between the keywords in the preset keyword set and the preset buried data requires a large amount of storage space. The mapping relationship is stored on the server side, which can reduce the storage space occupied in the terminal device and improve the detection efficiency of the terminal device.

[0016] The following describes how terminal devices obtain outbound tracking data:

[0017] The first method is static tracking data. In this method, the terminal device can obtain the data of the outgoing interface of the object to be detected through open-source data flow analysis tools such as flowdroid, and then use the data in the outgoing interface data that is identical to the tracking data as the outgoing tracking data.

[0018] The second method: dynamic tracking of data. In this method, the object to be detected can run buried data, and the terminal device can simulate the process of the user using the application through algorithms such as smartclick to dynamically track the data and truly detect the outgoing buried data. Exemplarily, the terminal device can traverse the controls that trigger the object to be detected to obtain the outgoing data generated by the controls; and use the data in the outgoing data generated by the controls that is identical to the buried data as the outgoing buried data.

[0019] Optionally, in this method, the terminal device can traverse and determine the controls in the page of the object to be detected; construct a directed graph of controls according to the calling order of the controls; and traverse and trigger the controls of the object to be detected according to the directed graph of controls. Among them, the use of the directed graph of controls can avoid the problem of incomplete traversal caused by a large number of controls and thus incomplete acquired outbound buried point data. Among them, the terminal device can traverse and trigger the controls of the object to be detected according to the directed graph of controls and a depth-first traversal strategy; or, traverse and trigger the controls of the object to be detected according to the directed graph of controls and a breadth-first traversal strategy.

[0020] Because dynamic data tracking simulates the user experience of an application, it can more accurately capture actual outbound data from the application than static data tracking. Furthermore, the data identification module uses static data tracking, which can lead to incomplete outbound data due to call disconnections. Dynamic data tracking, on the other hand, does not rely on outbound interfaces to capture outbound data, thus ensuring complete outbound data.

[0021] The third method: Combining the first and second methods can obtain more complete outgoing data.

[0022] The following describes how to perform privacy consistency testing on the detected object after the terminal device obtains the outgoing tracking data:

[0023] The terminal device can perform a privacy consistency test on the object to be detected based on the outgoing buried data, the keyword set of the privacy statement, and the mapping relationship between the keywords in the preset keyword set and the preset buried data, and obtain the detection result of the object to be detected. Among them, the terminal device can obtain the keywords corresponding to the outgoing buried data based on the mapping relationship and the outgoing buried data; if the keyword set of the privacy statement includes the keywords corresponding to the outgoing buried data, it is determined that the object to be detected has passed the privacy consistency test; if the keyword set of the privacy statement does not include the keywords corresponding to the outgoing buried data, it is determined that the object to be detected has not passed the privacy consistency test.

[0024] In this way, the buried data can be determined in advance in the data of the object to be detected, and then the outgoing buried data can be captured in the outgoing data. Then, based on the outgoing buried data and the keyword set of the privacy statement, the privacy consistency test of the object to be detected is performed. In the embodiment of the present application, the privacy consistency test of the object to be detected is avoided by comparing all the outgoing data with the keyword set of the privacy statement, which can achieve the purpose of reducing the amount of calculation.

[0025] In one possible implementation, the terminal device may send the outgoing buried data and the keyword set of the privacy statement to the server to request the detection result of the object to be detected. The way in which the server performs privacy consistency detection on the object to be detected may be the same as the way in which the above-mentioned terminal device performs privacy consistency detection on the object to be detected. After the server obtains the detection result of the object to be detected, it may send the detection result of the object to be detected to the terminal device, and then the terminal device may obtain the detection result of the object to be detected. The detection result of the object to be detected may include that the object to be detected passes the privacy consistency detection or that the object to be detected fails the privacy consistency detection.

[0026] In this manner, the server can execute the step of obtaining the result of the privacy consistency test of the object to be tested, thereby minimizing the leakage of the privacy consistency test process on the terminal device side. In addition, because the preset keyword set can be stored on the server and maintained and updated by the developer, the embodiment of the present application uses the terminal device and server to interact to implement the privacy consistency test of the object to be tested. This can avoid the terminal device needing to download the installation package corresponding to the preset keyword set every time the preset keyword set is updated, thereby avoiding the problem of the terminal device constantly reminding the user to download a new preset keyword set on the interface, thereby improving the user experience.

[0027] In a second aspect, an embodiment of the present application provides a data processing device, wherein the data processing device is the object to be located in the first aspect, and the data processing device includes:

[0028] a statement identification module, configured to obtain a keyword set of the privacy statement based on the privacy statement of the object to be detected and a preset keyword set, wherein the preset keyword set includes keywords in the keyword set of the privacy statement;

[0029] The data identification module is used to obtain the outgoing data of the object to be detected.

[0030] The privacy consistency detection module is used to perform a privacy consistency detection on the object to be detected based on the keyword set of the privacy statement and the outgoing data, and obtain a detection result of the object to be detected.

[0031] In one possible implementation, the claim identification module includes a first privacy claim parsing component. The data identification module includes a data analysis component, a data tracking component, a trigger component, and a data capture component. The trigger component may include a static trigger component and / or a dynamic trigger component. The privacy consistency module includes a second privacy claim parsing component, a data tracking component, and a consistency detection component.

[0032] The first privacy statement parsing component is configured to obtain keywords in the privacy statement that are identical to keywords in the preset keyword set, and obtain the keyword set of the privacy statement.

[0033] The data analysis component is used to obtain keywords in the object to be detected that are the same as the keywords in the preset keyword set, and obtain the keyword set of the object to be detected.

[0034] The tracking component is used to obtain the tracking data based on the mapping relationship between the keywords in the preset keyword set and the preset tracking data, and the keyword set of the object to be detected.

[0035] The data burying component is configured to obtain the sent burying data.

[0036] In a possible implementation, the preset burying data is uncoded data and / or coded data.

[0037] In a possible implementation, the data burying component is configured to trigger the static triggering component and / or the dynamic triggering component, so that the static triggering component and / or the dynamic triggering component track the sent data of the to-be-detected object.

[0038] The data capturing component is configured to obtain the sent burying data in the sent data tracked by the static triggering component and / or the dynamic triggering component.

[0039] In a possible implementation, the static triggering component is configured to obtain data of a sending interface of the to-be-detected object, and the data capturing component is configured to obtain, as the sent burying data, data identical to the burying data in the data of the sending interface.

[0040] In a possible implementation, the dynamic triggering component is configured to traverse and trigger a control of the to-be-detected object to obtain sent data generated by triggering the control, and the data capturing component is configured to obtain, as the sent burying data, data identical to the burying data in the sent data generated by the control.

[0041] In a possible implementation, the dynamic triggering component is configured to traverse and determine a control in a page of the to-be-detected object, construct a directed graph of the control according to a calling sequence of the control, and traverse and trigger the control of the to-be-detected object according to the directed graph of the control.

[0042] In a possible implementation, the dynamic triggering component is configured to traverse and trigger the control of the to-be-detected object according to the directed graph of the control and in a depth-first traversal strategy, or traverse and trigger the control of the to-be-detected object according to the directed graph of the control and in a breadth-first traversal strategy.

[0043] In a possible implementation, the data analysis component is configured to send a keyword set of the to-be-detected object to the burying component to request the burying data, and the data burying component is configured to receive the burying data from the burying component.

[0044] In a possible implementation, the consistency detection component is configured to perform privacy consistency detection on the to-be-detected object according to the sent burying data, the keyword set of the privacy declaration, and the mapping relationship, to obtain a detection result of the to-be-detected object.

[0045] In one possible implementation, the consistency detection component is used to obtain the keywords corresponding to the external buried data based on the mapping relationship and the external buried data; if the keyword set of the privacy statement includes the keywords corresponding to the external buried data, it is determined that the object to be detected has passed the privacy consistency test; if the keyword set of the privacy statement does not include the keywords corresponding to the external buried data, it is determined that the object to be detected has not passed the privacy consistency test.

[0046] In one possible implementation, the first privacy statement parsing component is further configured to send a keyword set of the privacy statement to the second privacy statement parsing component, and the data tracking component is further configured to send outgoing tracking data to the consistency detection component to request a detection result of the object to be detected. The display module is configured to receive a detection result of the object to be detected from the consistency detection component, where the detection result of the object to be detected includes whether the object to be detected passes the privacy consistency detection or fails the privacy consistency detection.

[0047] In a possible implementation, the display module is further configured to display the detection result of the object to be detected.

[0048] In a third aspect, an embodiment of the present application provides an electronic device. The electronic device may be a terminal device or a server. The electronic device includes: a processor, a memory, and a transceiver;

[0049] Wherein, the transceiver is used to perform the transceiver action in the first aspect above;

[0050] The memory is used to store computer-executable program code, where the program code includes instructions; when the processor executes the instructions, the instructions enable the electronic device to perform the method provided in the first aspect or each possible implementation of the first aspect.

[0051] In a fourth aspect, embodiments of the present application provide a data processing device, comprising a unit, module, or circuit for executing the method provided in the first aspect or any possible implementation of the first aspect. The data processing device may be a terminal device or a server, or a module applied to a terminal device or a server, for example, a chip applied to an object to be located.

[0052] In a fifth aspect, an embodiment of the present application provides a computer program product comprising instructions, which, when executed on a computer, enables the computer to execute the method in the above-mentioned first aspect or various possible implementations of the first aspect.

[0053] In a sixth aspect, an embodiment of the present application provides a computer readable storage medium, wherein instructions are stored in the computer readable storage medium, and when the instructions are executed on a computer, the computer is caused to perform the method in the first aspect or the method in various possible implementation manners of the first aspect.

[0054] It should be understood that the beneficial effects of the second aspect to the sixth aspect in the embodiments of the present application can be referred to the related description of the effective effects in the first aspect.

[0055] The embodiments of the present application provide a data processing method and device, an electronic device and a readable storage medium. The method comprises: obtaining a keyword set of a privacy declaration according to a privacy declaration of a to-be-detected object and a preset keyword set, wherein the preset keyword set comprises keywords in the keyword set of the privacy declaration; obtaining outgoing data of the to-be-detected object; and performing privacy consistency detection on the to-be-detected object according to the keyword set of the privacy declaration and the outgoing data, to obtain a detection result of the to-be-detected object. In the embodiments of the present application, the real outgoing data during the running of the to-be-detected object can be detected, so that whether the real collected data in the application program is the data included in the privacy declaration of the application program can be accurately determined, and the accuracy of the privacy consistency detection of the application program can be improved. BRIEF DESCRIPTION OF DRAWINGS

[0056] Figure 1 Fig. 1 is a schematic diagram of a privacy declaration;

[0057] Figure 2 Fig. 2 is a schematic diagram of a process of performing privacy consistency detection on an application program;

[0058] Figure 3 Fig. 3 is a schematic diagram of a structure of a terminal device;

[0059] Figure 4 Fig. 4 is a schematic diagram of a system architecture to which the data processing method provided by the embodiments of the present application is applicable;

[0060] Figure 5 Fig. 5 is a schematic diagram of another system architecture to which the data processing method provided by the embodiments of the present application is applicable;

[0061] Figure 6 Fig. 6 is a schematic diagram of a process of an embodiment of the data processing method provided by the embodiments of the present application;

[0062] Figure 7 Fig. 7 is a schematic diagram of a directed graph of a control;

[0063] Figure 8 Fig. 8 is a schematic diagram of an interface of a terminal device provided by the embodiments of the present application;

[0064] Figure 9 Fig. 9 is a schematic diagram of an interface change of a terminal device provided by the embodiments of the present application Figure 1 ;

[0065] Figure 10 Interface change of terminal device provided for an embodiment of the present application Figure 2 ;

[0066] Figure 11 Interface change of terminal device provided for an embodiment of the present application Figure 3 ;

[0067] Figure 12 Another system architecture diagram to which the data processing method provided by an embodiment of the present application is applicable

[0068] Figure 13 Flow diagram of another embodiment of the data processing method provided by an embodiment of the present application

[0069] Figure 14 Flow diagram of another embodiment of the data processing method provided by an embodiment of the present application

[0070] Figure 15 Flow diagram of another embodiment of the data processing method provided by an embodiment of the present application

[0071] Figure 16 Structure diagram of an electronic device provided by an embodiment of the present application DETAILED DESCRIPTION

[0072] Figure 1 Diagram of a privacy declaration Figure 1The following is the privacy statement for Application A, which describes the personal data that Application A may collect from users. For example, it might state, "When you interact with Application A, this application collects personal data such as your name and current position." Or, "When you register for Application A using a third-party account, this application may collect personal data such as your profile picture, email address, and birthday." When a user first uses Application A, they must agree to the privacy statement to use it. During this time, Application A may collect personal data. If an application collects personal data not included in the privacy statement, such as collecting the user's address when interacting with Application A, this will seriously infringe upon the user's privacy. Therefore, it is necessary to perform a privacy consistency check on Application A before, after, or after a version update. This ensures that the personal data collected during the application's use is included in Application A's privacy statement, thereby protecting personal privacy. It should be understood that privacy consistency checking for an application involves verifying whether the personal data collected by the application is included in the application's privacy statement. It should be understood that the application collecting the user's personal data can be understood as: the processor or chip corresponding to the application in the terminal device collecting the user's personal data.

[0073] Table 1 below is a mapping table of personal data keywords and codes, also known as a declaration keyword mapping table. This declaration keyword mapping table includes mappings between personal data keywords and codes. It should be understood that Table 1 is a mapping table that developers continuously maintain and update during the development process. For example, developers can refer to a large number of privacy statements and use the keywords in the privacy statements as the keywords in Table 1 below, and the codes corresponding to the keywords in the privacy statements as the codes in Table 1.

[0074] Table 1

[0075]

[0076]

[0077] Figure 2 The figure is a flowchart for performing privacy consistency detection on an application. Figure 2 The privacy consistency check of the application shown is performed by the terminal device. The privacy consistency check process may include:

[0078] S201: The terminal device parses the privacy statement of the application according to the statement keyword mapping table to obtain a keyword list of the privacy statement.

[0079] S202: The terminal device parses the static code in the installation package of the application according to the declaration keyword mapping table to obtain a code list of the static code.

[0080] S203: The terminal device performs a privacy consistency check on the application program based on the keyword list and the code list.

[0081] In the above S201, the terminal device can extract the same keywords as the keywords in the declaration keyword mapping table in the privacy statement of the application according to the keywords on the left side of the declaration keyword mapping table to obtain a keyword list of the privacy statement of the application. Figure 1 The terminal device can recognize the text of the privacy statement and then extract the keywords in the text that are the same as the keywords in the statement keyword mapping table to obtain a keyword list of the privacy statement. For example, the keyword list of the privacy statement may include name, position, and address.

[0082] In S202 above, the application installation package includes static code, which can be stored in a source code package within the installation package. Static code is the application code, written by the developer using a specific format and syntax. Based on the code to the right of the declaration keyword mapping table, the terminal device can extract the code from the static code that matches the code in the declaration keyword mapping table to obtain a code list for the static code. For example, the code list for the static code may include name, address, ID number, and gender.

[0083] In the above S203, the terminal device can compare and analyze the keyword list of the application's privacy statement and the code list of the static code to perform a privacy consistency test on the application. The terminal device can detect whether the keyword list of the privacy statement includes the keywords corresponding to the codes in the code list of the static code, and perform a privacy consistency test on the application. If the keyword list of the application's privacy statement includes the keywords corresponding to the codes in the code list of the static code, it is determined that the terminal device has not collected personal data other than the application's privacy statement, and the application has passed the privacy consistency test. On the contrary, if the keyword list of the application's privacy statement does not include the keywords corresponding to the codes in the code list of the static code, it is determined that the terminal device has collected personal data other than the application's privacy statement, and the application has failed the privacy consistency test. For example, if the keyword list of the above privacy statement includes the keywords corresponding to name and address in the code list, but does not include the keywords corresponding to ID number and gender in the code list, the application has failed the privacy consistency test.

[0084] Figure 3 This is a structural diagram of a terminal device. Figure 3 As shown, the terminal device may include a statement recognition module and a keyword search module. Figure 2 In the example, the declaration identification module is used to execute the above S201, and the keyword search module is used to execute the above S202, so that the terminal device obtains the privacy consistency detection result of the application.

[0085] Because static code is source code written by developers and exists when the application is not running, the code extracted from the static code may not collect the personal data corresponding to the code when the application is running. For example, the code list of the static code may include name, address, ID number and gender, but when the application is running, the user does not enter the ID number and / or gender, and the terminal device does not collect the user's ID number and / or gender. However, the personal data sent out in the application is actually collected. The real personal data sent out in the application includes the account number and password entered by the user. Therefore, the embodiment of the present application provides a data processing method. By detecting the real personal data sent out when the application is running, it avoids detecting personal data that is not collected when the application is actually running, thereby avoiding the problem of high false positive rate of privacy consistency detection of the application using static code. The data processing method provided by the embodiment of the present application can accurately determine whether the personal data actually collected by the application is the personal data included in the privacy statement of the application, and can improve the accuracy of the privacy consistency detection of the application.

[0086] It should be understood that one scenario of the privacy consistency detection of the application in the embodiments of the present application can be that the developer can perform privacy consistency detection on the application by using the method in the embodiments of the present application after the installation package of the application is developed. Alternatively, another scenario of the privacy consistency detection of the application in the embodiments of the present application can be that the developer can perform privacy consistency detection on the application when the application is in internal testing after the installation package of the application is developed and put online. Alternatively, another scenario of the privacy consistency detection of the application in the embodiments of the present application can be that the application is put online to the application market, and the application market performs privacy consistency detection on the online application. For example, the application market 1 has put online a plurality of applications, and the server corresponding to the application market 1 can perform privacy consistency detection on the plurality of online applications. Alternatively, the privacy consistency detection can also be performed on the application after the application is updated. The scenario of the privacy consistency detection of the application in the embodiments of the present application is not limited, and the method of the privacy consistency detection of the application can also be used by a third party for testing. It should be noted that the user also involves collecting personal data when using a website or other system program, and therefore the data processing method in the embodiments of the present application is not limited to the privacy consistency detection of the application, and can also be applied to the privacy consistency detection of the website or other system program.

[0087] Figure 4 A system architecture diagram to which the data processing method provided in the embodiments of the present application is applicable. As shown in FIG. 1, the system architecture includes a server and a plurality of terminals. The server can be a server of an application market, a server of a website, or a server of a system program. The terminal can be a terminal of a user of the application market, a terminal of a user of the website, or a terminal of a user of the system program. Figure 4As shown, the system architecture includes: a terminal device and a server. Wherein, a user can use an application program on the terminal device, and the terminal device can collect outgoing data in the application program. The server can perform privacy consistency detection on the application program according to the outgoing data of the application program. It should be understood that the terminal device in the embodiments of the present application can be referred to as user equipment (user equipment, UE), mobile terminal (mobile terminal), terminal (terminal) and the like. The terminal device can be a personal digital processing (personal digital assistant, PDA), a handheld device with wireless communication function, a computing device, a vehicle-mounted device or a wearable device, a virtual reality (virtual reality, VR) terminal device, an augmented reality (augmented reality, AR) terminal device, a wireless terminal in industrial control, a wireless terminal in self-driving, a wireless terminal in remote medical, a wireless terminal in smart grid, a wireless terminal in transportation safety, a wireless terminal in smart city, a wireless terminal in smart home and the like. The server in the embodiments of the present application can be a server corresponding to the application program, a third-party server, or a privacy consistency detection server and the like. The form of the terminal device and the server in the embodiments of the present application is not limited specifically.

[0088] The data processing method provided by the embodiments of the present application will be described in detail below in combination with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes will not be described in detail in some embodiments. Figure 5 Another system architecture diagram to which the data processing method provided by the embodiments of the present application is applicable is shown in FIG. 2. Figure 5 As shown, the terminal device can include a declaration identification module, a data identification module and a display module, and the server includes a privacy consistency detection module. Figure 6 A flowchart of an embodiment of the data processing method provided by the embodiments of the present application is shown in FIG. 3. Figure 6 As shown, the data processing method provided by the embodiments of the present application can include:

[0089] S601, the declaration identification module acquires a keyword set of the privacy declaration according to the privacy declaration of the to-be-detected object and a preset keyword set.

[0090] The object to be detected can be an application, a website or a system program, etc., or can be an installation package of an application, an installation package of a website or an installation package of a system program. The installation package can also be called an application package (android application package, APK) or a release package, etc. When the object to be detected is carried out privacy consistency detection, the declaration identification module can obtain the privacy statement of the object to be detected in the installation package of the object to be detected. Exemplary, the privacy statement of the object to be detected can be included in the installation package, and the declaration identification module can scan all documents in the installation package of the object to be detected to obtain the privacy statement of the object to be detected. Alternatively, the installation package can include a download link of the privacy statement, and the declaration identification module can download and obtain the privacy statement of the object to be detected according to the download link of the privacy statement. The privacy statement of the object to be detected in the embodiment of the present application can be a local document, an online document, etc., which is not limited to this.

[0091] Optionally, the privacy statement can be as follows: Figure 1 For a text-type document as shown, the statement recognition module can recognize the text in the privacy statement and extract the privacy statement keywords from the privacy statement based on a preset keyword set to obtain a privacy statement keyword set. The preset keyword set in the embodiment of the present application can be shown in Table 2 below:

[0092] Table 2

[0093] Preset keyword sets Name ID number address Equipment number (IEMI) Geographic location (GPS) ……

[0094] Table 2 shows a set of preset keywords that developers continuously maintain and update during the development process. Unlike Table 1, Table 2 also includes the codes corresponding to the keywords in Table 1 as keywords. The statement recognition module can obtain keywords in the privacy statement that are identical to keywords in the preset keyword set to obtain the keyword set for the privacy statement. The preset keyword set shown in Table 2 can be referred to as a database or preset keyword list.

[0095] In one possible implementation, the statement recognition module may identify text in the privacy statement, retrieve keywords from the text that are identical to keywords in a preset keyword set, and then use the keywords that are identical to the keywords in the preset keyword set as the keyword set for the privacy statement. The keyword set for the privacy statement may be referred to as the keyword list for the privacy statement.

[0096] In a possible implementation, the privacy declaration can further include pictures, videos, and the like. The declaration identification module can identify text in the pictures through an optical character recognition (OCR) method, and then extract keywords from the text. Similarly, the declaration identification module can perform frame capturing on the videos to obtain a plurality of video frames, and can also identify text in each video frame through the OCR method, and then extract keywords from the text. Optionally, when the privacy declaration includes audio, the declaration identification module can identify the text in the audio through speech recognition, and then extract keywords from the text.

[0097] S602. The declaration identification module sends the keyword set of the privacy declaration to the privacy consistency detection module.

[0098] S603. The data identification module obtains outgoing data of the to-be-detected object.

[0099] Different from the above, Figure 2 In the embodiment of the application, the keywords (codes) are not extracted from the static code in the installation package, but the outgoing data is obtained from the entire installation package to detect the outgoing data. The installation package can include not only static code, but also resource text such as a website address, a page, and the like. The outgoing data of the to-be-detected object is the data actually collected by the data identification module. The data actually collected by the data identification module can include terminal device data and user data. The terminal device data can include an international mobile equipment identity (IMEI) of the terminal device, a factory serial number, and the like. The data identification module can obtain the IMEI through an interface at the bottom of the device, or can obtain the terminal device data by querying a document recording the terminal device data. The user data can be, for example, a user account, a name, an identity card number, and the like. The outgoing data can be data input by the user when using the to-be-detected object, or data generated when the user clicks a control, a connection, an option, or the like in an interface in the to-be-detected object. The outgoing data can be understood as data interacted with the to-be-detected object by the user when using the to-be-detected object.

[0100] It should be understood that the data running in the to-be-detected object in the embodiment of the application is not the user's real personal data, but can be data customized by a developer. A possible implementation of the data identification module obtaining the outgoing data is static tracking data. The data identification module can identify data of an outgoing interface of the to-be-detected object through an open-source flowdroid or the like data flow analysis tool.

[0101] Another possible implementation method for the data identification module to obtain outgoing data is to dynamically track the data. Exemplarily, when the object to be detected is an application, the data identification module can simulate the process of the user using the application through an algorithm (such as the smartclick algorithm), and then dynamically track the data in the application to truly detect the outgoing data. Exemplarily, the process of the data identification module executing the smartclick algorithm can be understood as: the data identification module traverses the controls (such as buttons, clickable pictures, hyperlinks, etc.) on all pages (activities) of the application, and then virtually triggers the controls to achieve the purpose of simulating the user's actual use of the application, and then dynamically tracks the data. It should be understood that the data running in the application is data customized by the developer. Among them, in the embodiment of the present application, the data identification module can construct a directed graph of controls according to the calling order of the controls on the page, and then traverse each control according to the directed graph of the controls to ensure that each control is completely traversed, thereby obtaining accurate outgoing data.

[0102] For example, Figure 7 This is a diagram of a directed graph of controls. For example, if the main interface of an application displays controls a and b, the user clicks control a to jump to interface 1, which displays controls c and d. The user clicks control b to jump to interface 2, which displays control e. Therefore, control a can be the parent node of controls c and d, and control b is the parent node of control e. The data identification module can be constructed based on the parent-child node relationship. Figure 7 The directed graph of the control shown. In the embodiment of the present application, the data identification module can adopt a depth-first traversal strategy to traverse each control, such as first traversing control a, then traversing control c and control d, then traversing control b, and then traversing control e to obtain outgoing data. Alternatively, the data identification module in the embodiment of the present application can also traverse each control according to a breadth-first traversal strategy, such as first traversing control a and control b, then traversing control c, control d, and control e to obtain outgoing data.

[0103] Because the dynamic data tracking method can simulate the process of users actually using the application, it can accurately collect the real outgoing data in the application compared to the static data tracking method. In addition, the data identification module adopts the static data tracking method, which may cause the acquired outgoing data to be incomplete due to the call link being broken. For example, static analysis of the data flow may produce three data streams, such as data stream a, data stream b and data stream c, and when the actual flowdroid tool identifies the outgoing data, it may identify data stream (a+b) and data stream c, resulting in the inability to identify the end data of data stream a and the head data of data stream b, thereby causing the outgoing data acquired by the data identification module to be incomplete. The dynamic data tracking method does not obtain outgoing data through the outgoing interface, so complete outgoing data can be obtained.

[0104] However, if the data identification module adopts the above-mentioned dynamic data tracking method, it may cause some situations where the outgoing data cannot be collected, thereby causing the outgoing data obtained by the data identification module to be incomplete. For example, if the user enters a verification code and jumps to another interface, this process is not due to the interface conversion caused by the node relationship between the controls, thereby causing the data identification module to be unable to obtain the outgoing data (the verification code entered by the user) based on the traversal control. In order to solve the problem of incomplete outgoing data caused by the data identification module adopting a static data tracking method or a dynamic data tracking method, in an embodiment of the present application, the data identification module can combine the static data tracking method and the dynamic data tracking method to obtain complete outgoing data.

[0105] S604: The data identification module sends outgoing data to the privacy consistency detection module.

[0106] It should be understood that S601-S602 and S603-S604 in the embodiment of the present application can be executed simultaneously, and there is no distinction between the two in terms of order.

[0107] S605 , the privacy consistency detection module performs a privacy consistency detection on the object to be detected based on the keyword set of the privacy statement and the outgoing data, and obtains a detection result of the object to be detected.

[0108] The privacy consistency detection module can perform privacy consistency detection on the object to be detected based on the keyword set of the privacy statement and the outgoing data. Privacy consistency detection refers to detecting whether the outgoing data of the object to be detected is contained in the range of the data represented by the privacy statement of the object to be detected. Optionally, in an embodiment of the present application, keywords of the outgoing data can be extracted from the outgoing data based on a preset keyword set to obtain a first keyword set of the outgoing data. For example, the privacy consistency detection module can obtain keywords in the outgoing data that are the same as the keywords in the preset keyword set to obtain the first keyword set of the outgoing data.

[0109] In a possible implementation, the outgoing data may include keywords in a preset keyword set, such as if the outgoing data is an ID card number abcdefg123, and the outgoing data includes the keyword "ID card number". In the embodiment of the present application, the privacy consistency detection module can perform a privacy consistency detection on the object to be detected by comparing the keyword set of the privacy statement with the first keyword set of the outgoing data. If the keyword set of the privacy statement includes all the keywords in the first keyword set of the outgoing data, it is determined that the application has passed the privacy consistency detection. On the contrary, if the keyword set of the privacy statement of the application does not include the keywords in the first keyword set of the outgoing data, it is determined that the application has not passed the privacy consistency detection. For example, if the keyword set of the privacy statement includes "ID card number", "name" and "gender", and the first keyword set of the outgoing data includes "ID number" and "ID card number", the privacy consistency detection module can determine that the keyword set of the privacy statement includes all the keywords in the first keyword set of the outgoing data, and the application has passed the privacy consistency detection.

[0110] In one possible implementation, the outgoing data may not include keywords from a preset keyword set. For example, if the outgoing data is 123456, the outgoing data is the user's identification card number, but the outgoing data does not include the keyword "identity card number" or "ID number." In this case, the privacy consistency detection module may pre-store the format of the data corresponding to each keyword in the preset keyword set. The privacy consistency detection module may perform a privacy consistency check on the object to be detected based on the keyword set in the privacy statement, the format of the data corresponding to each keyword, and the format of the outgoing data. If the format of the data corresponding to the keywords in the keyword set in the privacy statement includes all formats corresponding to the outgoing data, it can be determined that the application has passed the privacy consistency check; otherwise, the application has failed the privacy consistency check. For example, if the keyword set in the privacy statement includes the keyword "identity card number," the format of the data corresponding to the "identity card number" is 6 Arabic numerals, and the outgoing data is 123456, which is also 6 Arabic numerals, then the application can pass the privacy consistency check.

[0111] In one embodiment, because the preset keyword set is updated and maintained by developers, the keywords included therein may not be comprehensive. Therefore, in this embodiment of the present application, the privacy consistency detection module can update the preset keyword set based on the keywords in the outbound data of the object to be detected, making the keywords in the preset keyword set more complete, thereby improving the accuracy of privacy consistency detection. Specifically, the privacy consistency detection module can obtain a second keyword set in the outbound data of the object to be detected to update the preset keyword set.

[0112] Optionally, the privacy consistency detection module may segment the outgoing data in the object to be detected to obtain a plurality of words, and according to the part of speech of each word, use the words with preset parts of speech as keywords in the outgoing data in the object to be detected to obtain a second keyword set in the outgoing data. It should be understood that the second keyword set includes the keywords in the above-mentioned first keyword set. In one embodiment, if the preset keyword set does not contain the first keyword in the second keyword set, the privacy consistency detection module may add the first keyword to the preset keyword set to update the preset keyword set. Different from the above-mentioned privacy consistency detection module determining the first keyword set based on the preset keyword set, the privacy consistency detection module can obtain the first keyword that is not included in the preset keyword set, thereby achieving the purpose of updating the preset keyword set.

[0113] S606: The privacy consistency detection module sends the detection result of the object to be detected to the presentation module.

[0114] S607: The display module displays the detection result of the object to be detected.

[0115] For example, Figure 8 This is a schematic diagram of the interface of the terminal device provided in the embodiment of the present application. Figure 8 As shown, the display module can display the comparison results of the keyword set in the privacy statement and the keywords corresponding to the outgoing data. Keywords in the keyword set in the privacy statement can be displayed on the left, and keywords corresponding to the outgoing data can be displayed on the right. Keywords that appear in the outgoing data but not in the keyword set in the privacy statement can be highlighted, such as in bold, shaded, or framed. Figure 8 The data with a framed line indicating gender is not included in the data included in the privacy statement. Figure 8 In the format of , N represents name and G represents gender.

[0116] In the embodiment of the present application, the developer can download the installation package of the object to be detected to the terminal device, thereby triggering the module execution in the terminal device. Figure 6 Steps in . Figure 9Schematic diagram of the interface changes of the terminal device provided in the embodiment of the present application Figure 1 .like Figure 9 As shown, the interface 901 may display the identifier of the object to be detected. If the object to be detected is application A, the identifier of the object to be detected may be the icon or name of application A. A "detection" control may also be displayed in the interface 901. When the developer clicks the "detection" control, the terminal device may be triggered to execute the above S601-S604. When the terminal device receives the privacy consistency detection result of application A from the server, the interface 901 may jump to the interface 902, which may be the same as the above Figure 8 Optionally, in one possible implementation, the interface 901 may first jump to the interface 903 and then jump to the interface 902. The interface 903 may display a text reminder message "Privacy consistency check in progress".

[0117] Figure 10 Schematic diagram of the interface changes of the terminal device provided in the embodiment of the present application Figure 2 .like Figure 10 As shown, there may be multiple objects to be detected, and the developer can download the installation packages of the multiple objects to be detected to the terminal device. Figure 10 As shown, compared with interface 901, interface 1001 can display multiple identifiers of objects to be detected, such as application A, application B, etc. Developers can click to select the identifiers of application A and application B on interface 1001, and interface 1001 can jump to interface 1002. Interface 1002 displays the selection results of application A and application B, and developers can click the "Detect" control displayed on interface 1002. When the terminal device obtains the privacy consistency detection results of application A and application B, interface 1002 can jump to interface 1003 and then to interface 1004. Among them, interface 1003 can be the same as the above-mentioned interface 903, and interface 1004 can display the privacy consistency detection results of application A and the privacy consistency detection results of application B respectively.

[0118] In a possible scenario, the terminal device may be a computer. Figure 11 Schematic diagram of the interface changes of the terminal device provided in the embodiment of the present application Figure 3 .like Figure 11As shown, an upload control may be displayed in interface 1101, and the developer may click the upload control to upload the installation package of the object to be detected. There may be multiple installation packages for the object to be detected. A "detection" control may be displayed in interface 1101. After uploading the installation package of the object to be detected, the developer may click the "detection" control displayed on interface 1101. Similarly, after the terminal device obtains the privacy consistency test result of the object to be detected, interface 1101 may jump to interface 1102, which may be the same as the above-mentioned interface 902.

[0119] The embodiment of the present application can collect outgoing data in the application by means of static tracking data, rather than testing static code, so it can accurately determine whether the data actually collected in the application is the data included in the privacy statement of the application, and then accurately test the privacy consistency of the application, which can improve the accuracy of the test. The embodiment of the present application can also collect data by means of dynamic tracking data, because the dynamic tracking data method can simulate the process of users using the application, so it can accurately collect the real outgoing data of the application, and use accurate real outgoing data to test the privacy consistency of the application, which can further improve the accuracy of the test. In addition, the embodiment of the present application can also combine the dynamic tracking data method and the static tracking data method to collect the real outgoing data in the application, which can accurately and completely collect the outgoing data, and improve the accuracy of the privacy consistency test of the application.

[0120] In the above embodiment, the data identification module can obtain all outgoing data to perform privacy consistency detection on the application. Although this method can accurately detect the privacy consistency of the application, the data identification module needs to obtain all outgoing data, resulting in a large amount of calculation for the privacy consistency detection module. In the embodiment of the present application, the buried data can be determined in advance, and then the privacy consistency detection of the application can be performed using the outgoing buried data. Because the amount of buried data is small compared to the amount of all outgoing data, the amount of calculation can be reduced, thereby improving the efficiency of detecting the privacy consistency of the application.

[0121] In one embodiment, Figure 12 Another system architecture diagram applicable to the data processing method provided in the embodiment of the present application. Figure 12 As shown, the declaration identification module in the terminal device may include a first privacy declaration parsing component, and the data identification module may include: a data analysis component, a data embedding component, a trigger component, and a data capture component. Among them, the trigger component may include a static trigger component and / or a dynamic trigger component. It should be understood that the static trigger component is used to execute the step of statically tracking data in the application in the above S603, and the dynamic trigger component is used to execute the step of dynamically tracking data in the application in the above S603. Figure 12 In the example, the trigger component may include a static trigger component and a dynamic trigger component. The privacy consistency module in the server may include: a second privacy statement parsing component, a tracking component, and a consistency detection component.

[0122] Figure 13 This is a flow chart of another embodiment of the data processing method provided in the embodiment of the present application. Figure 13 As shown, the data processing method provided in the embodiment of the present application may include:

[0123] S1301: A first privacy statement parsing component obtains a keyword set of the privacy statement based on the privacy statement of the object to be detected and a preset keyword set.

[0124] It should be understood that in the embodiment of the present application, S1301 can refer to the relevant description in the above S601 and will not be repeated here.

[0125] S1302: The first privacy statement parsing component sends a keyword set of the privacy statement to the second privacy statement parsing component.

[0126] S1303: The data analysis component obtains keywords in the object to be detected that are identical to keywords in the preset keyword set, and obtains the keyword set of the object to be detected.

[0127] In an embodiment of the present application, based on the preset keyword set as shown in Table 2 above, keywords in the object to be detected that are the same as the keywords in the preset keyword set can be obtained (that is, keywords that are the same as the keywords in the preset keyword set are obtained in static code and resource text) to obtain the keyword set of the object to be detected.

[0128] S1304: The data analysis component sends a keyword set of the object to be detected to the tracking component.

[0129] S1305: The tracking component obtains tracking data according to the mapping relationship between the keywords in the preset keyword set and the preset tracking data, and the keyword set of the object to be detected.

[0130] The preset embedded point data is data customized by the developer. When maintaining the preset keyword set as shown in Table 2, the developer can customize the embedded point data corresponding to each keyword in the preset keyword set according to each keyword in the preset keyword set. The keywords in the preset keyword set and the preset embedded point data have a mapping relationship, as shown in Table 3. For example, the keyword in the preset keyword set is the device number (IEMI), and the developer customizes the preset embedded point data corresponding to the device number (IEMI) as the combination of unencoded numbers and letters zs001100, or the encoded "zs001100", that is, asdsadasdasdawujhask. It should be understood that the preset embedded point data shown in Table 3 is an example.

[0131] In the embodiment of the present application, after receiving the keyword set of the to-be-detected object, the embedded point component can obtain the embedded point data according to the keywords in the keyword set of the to-be-detected object and the mapping relationship between the keywords in the preset keyword set and the preset embedded point data. The embedded point component can obtain the same keywords in the preset keyword set as in the keyword set of the to-be-detected object, and then take the preset embedded point data corresponding to the same keywords as the embedded point data. It should be understood that the embedded point data can be unencoded data and / or encoded data.

[0132] Table 3

[0133] Keywords data Encoded data Equipment number (IEMI) zs001100 asdsadasdasdawujhask Geographic location (GPS) zs0026452 yuiyytidsaujhask …… …… …… Name zs213441 bmbvbmsdasdawujhask Gender sz564566 asdsadasdas

[0134] For example, the keyword set of the to-be-detected object includes the keywords "device number" and "geographic location", and the embedded point component can take "zs001100" and / or "asdsadasdasdawujhask" corresponding to the device number and "zs0026452" and "yuiyytidsaujhask" corresponding to the geographic location as the embedded point data.

[0135] It should be understood that the reason why the embedded point component obtains the embedded point data in the embodiment of the present application is that the keywords in the keyword set of the to-be-detected object can represent the keywords corresponding to the data that the to-be-detected object may transmit, and the embedded point data determined according to the keyword set of the to-be-detected object is the possible transmitted data of the to-be-detected object. Therefore, the embedded point component obtains the embedded point data to more accurately obtain the transmitted data of the to-be-detected object, rather than all the transmitted data, thereby reducing the detection calculation amount of the to-be-detected object and improving the detection efficiency.

[0136] S1306, the embedded point component sends the embedded point data to the data embedded point component.

[0137] S1307, the data embedded point component triggers the data capture component to obtain the transmitted embedded point data according to the embedded point data.

[0138] In an embodiment of the present application, the outgoing buried point data acquired by the data capture component is the outgoing data of the object to be detected. Wherein, the data buried point component can trigger the static trigger component and / or the dynamic trigger component, so that the static trigger component tracks the outgoing data of the object to be detected in the form of static tracking data, and / or triggers the dynamic trigger component to track the outgoing data of the object to be detected in the form of dynamic tracking data, and the data capture component obtains the same data as the buried point data in the outgoing data of the object to be detected as the outgoing buried point data. It should be understood that before the static trigger component and / or the dynamic trigger component tracks the data, the buried point data can be run in the object to be detected so that the data capture component can obtain the outgoing buried point data in the buried point data. Exemplarily, the dynamic trigger component can use the buried point data to virtually simulate the process of the user using the application to track the outgoing buried point data in the buried point data. In an embodiment of the present application, the static trigger component can obtain the data of the outgoing interface of the object to be detected, and the data capture component can use the data in the data of the outgoing interface that is the same as the buried point data as the outgoing buried point data. And / or, the dynamic trigger component can traverse the controls that trigger the object to be detected to obtain the outgoing data generated by the triggered controls, and the data capture component can use the data in the outgoing data generated by the controls that is the same as the buried point data as the outgoing buried point data.

[0139] For example, in this embodiment of the present application, the link for obtaining outbound data is "https: / / www.huawei.com / search?q=zs0026452&rlz=asdsadasdasdawujhask&ie=sz564566." The embedded data contained in this link are "zs0026452," "asdsadasdasdawujhask," and "sz564566." Because the data in this link is real outbound data, the data captured by the data capture component in this link is outbound embedded data.

[0140] S1308, the data tracking component sends the outgoing tracking data to the consistency detection component.

[0141] S1309: The consistency detection component performs privacy consistency detection on the detection object based on the outbound tracking data, the keyword set of the privacy statement, and the mapping relationship.

[0142] After obtaining the outgoing buried point data, the consistency detection component can obtain the keywords corresponding to the outgoing buried point data based on the mapping relationship between the keywords in the preset keyword set and the preset buried point data, as well as the outgoing buried point data. Because, after obtaining the outgoing buried point data, the consistency detection component does not know the keywords corresponding to the outgoing buried point data. For example, if the outgoing buried point data is asdsadasdasdawujhask, the consistency detection component does not know that the keywords corresponding to the outgoing buried point data are the device number. Because the buried point data is determined by the mapping relationship between the keywords in the preset keyword set and the preset buried point data, the consistency detection component can determine the keywords corresponding to the outgoing buried point data based on the mapping relationship between the keywords in the preset keyword set and the preset buried point data. For example, if the outgoing buried point data is asdsadasdasdawujhask, then according to the mapping relationship shown in Table 3, it is determined that the keywords corresponding to the outgoing buried point data are the device number IEMI.

[0143] The consistency detection component can perform privacy consistency detection on the detection object based on the keywords of the outgoing buried data and the keyword set of the privacy statement. Among them, if the keyword set of the privacy statement includes the keywords corresponding to the outgoing buried data, it is determined that the application has passed the privacy consistency detection. On the contrary, if the keyword set of the privacy statement of the application does not include the keywords corresponding to the outgoing buried data, it is determined that the application has not passed the privacy consistency detection. Exemplarily, the keyword set of the privacy statement includes the keywords "device number", "geographic location" and "name", and the above-mentioned outgoing data are "zs0026452", "asdsadasdasdawujhask" and "sz564566", among which the keyword corresponding to zs002645 is geographic location (GPS), the keyword corresponding to asdsadasdasdawujhask is device number (IEMI), and the keyword corresponding to sz564566 is gender (gender). Because the keyword set in the application's privacy statement does not include the keyword "gender" in the keywords of the outbound tracking data, the gender data "sz564566" is not in the privacy statement of the object to be tested, and the consistency detection component can determine that the application has failed the privacy consistency test.

[0144] S1310: The consistency detection component sends the detection result of the object to be detected to the presentation module.

[0145] S1311, the display module displays the detection results of the object to be detected.

[0146] It should be understood that in the embodiment of the present application, S1311 can refer to the relevant description in the above S607 and will not be repeated here.

[0147] In the embodiment of the present application, the embedded point data can be determined from the data of the object to be detected based on the preset embedded point data, and then the outgoing embedded point data can be captured in the outgoing data. Then, the privacy consistency test can be performed on the object to be detected based on the outgoing embedded point data and the keyword set of the privacy statement. Because the amount of embedded point data is small compared to all the outgoing data, the computational complexity of the privacy consistency test can be reduced, thereby improving the detection efficiency.

[0148] In one embodiment, the modules and components in the server can be arranged on the terminal device side, and the terminal device can execute the above Figure 6 and Figure 13 In one embodiment, the modules and components in the terminal device can be arranged on the server side, and the server can perform the above steps to obtain the privacy consistency detection result of the object to be detected. Figure 6 and Figure 13 The steps in the above are used to obtain the privacy consistency test results of the object to be tested. The terminal device and the server perform the above steps separately. Figure 6 and Figure 13 The steps in Figure 14 As shown, Figure 14 This is a flow chart of another embodiment of the data processing method provided in the embodiment of the present application. Figure 14 As shown, the data processing method provided in the embodiment of the present application may include:

[0149] S1401 , obtaining a keyword set of the privacy statement according to the privacy statement of the object to be detected and a preset keyword set.

[0150] S1402 obtains keywords in the object to be detected that are identical to keywords in a preset keyword set, and obtains a keyword set for the object to be detected.

[0151] S1403: Acquire the embedded point data according to the mapping relationship between the keywords in the preset keyword set and the preset embedded point data, and the keyword set of the object to be detected.

[0152] S1404, obtain outbound tracking data.

[0153] S1405: Perform privacy consistency detection on the object to be detected based on the outbound tracking data, the keyword set of the privacy statement, and the mapping relationship to obtain the detection result of the object to be detected.

[0154] S1406: Display the privacy consistency detection result of the object to be detected.

[0155] It should be understood that there is no order distinction between S1401 and S1402 in the embodiment of the present application, and the two can be executed at the same time. Figure 13 Related description in .

[0156] It should be noted that, in the embodiment of the present application, the server can execute the step of obtaining the result of the privacy consistency detection of the object to be detected, so as to avoid the leakage of the privacy consistency detection process on the terminal device side as little as possible. In addition, because the preset keyword set shown in Table 1 above is stored in the server and is maintained and updated by the developer, in order to avoid the terminal device needing to download the installation package corresponding to the preset keyword set every time the preset keyword set is updated, that is, in order to avoid the problem that the terminal device always reminds the user to download a new preset keyword set on the interface, and to improve the user experience, in the embodiment of the present application, the terminal device and the server can interact to realize the privacy consistency detection of the object to be detected. After the preset keyword set on the server side is updated, the terminal device can interact with the server (such as the terminal device requests the server, or the server sends it to the terminal device), so that the terminal device obtains the updated preset keyword set.

[0157] Figure 15 This is a flow chart of another embodiment of the data processing method provided in the embodiment of the present application. Figure 15 As shown, the data processing method provided in the embodiment of the present application may include:

[0158] S1501: The terminal device obtains a keyword set of the privacy statement based on the privacy statement of the object to be detected and a preset keyword set.

[0159] S1502: The terminal device sends a keyword set of a privacy statement to the server.

[0160] S1503: The terminal device obtains keywords in the object to be detected that are the same as keywords in the preset keyword set, and obtains the keyword set of the object to be detected.

[0161] S1504: The terminal device sends a keyword set of the object to be detected to the server.

[0162] S1505: The server determines the embedded point data according to the mapping relationship between the keywords in the preset keyword set and the preset embedded point data, and the keyword set of the object to be detected.

[0163] S1506: The server sends the tracking data to the terminal device.

[0164] S1507, the terminal device obtains the outgoing tracking data.

[0165] S1508, the terminal device sends the outgoing tracking data to the server.

[0166] S1509: The server performs a privacy consistency test on the object to be tested based on the outbound tracking data, the keyword set of the privacy statement, and the mapping relationship, and obtains the test result of the object to be tested.

[0167] S1510: The server sends the privacy consistency detection result of the object to be detected to the terminal device.

[0168] S1511, the terminal device displays the privacy consistency detection result of the object to be detected.

[0169] It should be understood that there is no order distinction between S1501-S1502 and S1503-S1504 in the embodiment of the present application, and the two can be executed simultaneously. The implementation of S1501, S1503, S1505, S1507, and S1509 can refer to the relevant description in the above embodiment.

[0170] It should be understood that Figure 14 and Figure 15 The process of the data processing method shown has the same technical effect as the above embodiment. Please refer to the relevant description of the above embodiment and will not be repeated here.

[0171] Figure 16 This is a structural diagram of an electronic device provided in an embodiment of the present application. The electronic device may be the terminal device and server in the above embodiment. Figure 16As shown, the electronic device 1600 can include a processor 1601 (e.g., a CPU), a memory 1602, and a transceiver 1603. The memory 1602 and the transceiver 1603 can be coupled to the processor 1601, and the processor 1601 controls the transceiver 1603 to perform the above-mentioned receiving and transmitting actions of the terminal device or the server, so as to realize the interaction between the terminal device and the server. The memory 1602 can include a high-speed random-access memory (RAM) and can also include a non-volatile memory (NVM), such as at least one disk memory. The memory 1602 can store various instructions for completing various processing functions and implementing the method steps of the present application. The transceiver 1603 can be integrated in a transceiver of the electronic device, or can be a transceiving antenna independently arranged on the electronic device. In the embodiments of the present application, the memory 1602 is used to store computer executable program codes, and the program codes include instructions; when the processor 1601 executes the instructions, the instructions make the processor 1601 of the electronic device perform the actions in the above-mentioned method embodiments, and the implementation principles and technical effects are similar, which will not be described here. Optionally, the electronic device 1600 related to the present application can further include a power supply 1604, a communication bus 1605, and a communication port 1606. The communication bus 1605 is used to realize the communication connection between elements. The communication port 1606 is used to realize the connection and communication between the electronic device and other external devices.

[0172] In the above embodiments, all or part of the embodiments can be implemented by software, hardware, firmware or any combination thereof. When implemented by software, all or part of the embodiments can be implemented in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions according to the embodiments of the present application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center through wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) mode. The computer readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. integrated with one or more available media. The available media can be a magnetic medium (such as a floppy disk, a hard disk, a magnetic tape), an optical medium (such as a DVD), or a semiconductor medium (such as a solid state disk (SSD)), etc.

[0173] The term "plurality" in this document refers to two or more. The term "and / or" in this document simply describes a relationship between related objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A alone, A and B together, or B alone. Furthermore, the character " / " in this document generally indicates an "or" relationship between the related objects; in a formula, the character " / " indicates a "division" relationship between the related objects.

[0174] It is understood that the various numerical numbers involved in the embodiments of the present application are only for the convenience of description and are not intended to limit the scope of the embodiments of the present application. It is understood that in the embodiments of the present application, the order of the sequence numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

Claims

1. A data processing method, characterized in that: include: Acquire keywords that are identical to keywords in a preset keyword set in a privacy statement of the object to be detected, and obtain a keyword set of the privacy statement, wherein the preset keyword set includes keywords in the keyword set of the privacy statement; Acquiring outgoing data of the object to be detected; Performing a privacy consistency test on the object to be detected based on the keyword set of the privacy statement and the outgoing data to obtain a test result of the object to be detected; The step of performing a privacy consistency test on the object to be detected based on the keyword set of the privacy statement and the outgoing data to obtain a test result of the object to be detected includes: Acquire keywords in the outgoing data that are identical to keywords in the preset keyword set to obtain a first keyword set of the outgoing data; If the keyword set of the privacy statement includes all the keywords in the first keyword set, it is determined that the object to be detected has passed the privacy consistency test; if the keyword set of the privacy statement does not include the keywords in the first keyword set, it is determined that the object to be detected has not passed the privacy consistency test.

2. The method according to claim 1, characterized in that The acquiring of outgoing data of the object to be detected includes: Acquire keywords in the object to be detected that are identical to keywords in the preset keyword set to obtain the keyword set of the object to be detected; Acquire the embedded point data according to the mapping relationship between the keywords in the preset keyword set and the preset embedded point data, and the keyword set of the object to be detected; Get outbound tracking data.

3. The method according to claim 2, characterized in that The preset buried point data is uncoded data and / or coded data.

4. The method according to claim 2, characterized in that The method further comprises: Sending the keyword set of the object to be detected to the server to request the tracking data; Receive the burial point data from the server.

5. The method according to any one of claims 2 to 4, characterized in that The obtaining of outgoing tracking data includes: Acquire data of the outgoing interface of the object to be detected; The data in the outgoing interface that is identical to the buried point data is used as the outgoing buried point data.

6. The method according to any one of claims 2 to 4, characterized in that The obtaining of outgoing tracking data includes: Traverse the controls that trigger the object to be detected to obtain outgoing data generated by triggering the controls; The data in the outgoing data generated by the control that is identical to the buried point data is used as the outgoing buried point data.

7. The method according to claim 6, characterized in that The traversing triggers the control of the object to be detected, including: Traverse and determine the controls in the page of the object to be detected; Construct a directed graph of controls based on the order in which they are called; According to the directed graph of the controls, the controls that trigger the object to be detected are traversed.

8. The method according to claim 7, characterized in that The step of traversing the control that triggers the object to be detected according to the directed graph of the control includes: According to the directed graph of the control, and using a depth-first traversal strategy, traverse the control that triggers the object to be detected; or, According to the directed graph of the controls, and using a breadth-first traversal strategy, the controls that trigger the object to be detected are traversed.

9. The method according to claim 1, characterized in that After acquiring the outgoing data of the object to be detected, the method further includes: Obtaining a second keyword set of the outgoing data; If the preset keyword set does not include the first keyword in the second keyword set, the first keyword is added to the preset keyword set.

10. The method according to any one of claims 2-4, 7-8, characterized in that: The step of performing a privacy consistency test on the object to be detected based on the keyword set of the privacy statement and the outgoing data to obtain a test result of the object to be detected includes: According to the outgoing buried data, the keyword set of the privacy statement and the mapping relationship, a privacy consistency test is performed on the object to be detected to obtain a test result of the object to be detected.

11. The method according to claim 10, characterized in that The privacy consistency test of the object to be detected is performed based on the outgoing tracking data, the keyword set of the privacy statement, and the mapping relationship to obtain the test result of the object to be detected, including: According to the mapping relationship and the outgoing buried data, a keyword corresponding to the outgoing buried data is obtained; If the keyword set of the privacy statement includes the keyword corresponding to the outbound tracking data, it is determined that the object to be detected passes the privacy consistency test; If the keyword set of the privacy statement does not include the keyword corresponding to the outbound embedded data, it is determined that the object to be detected has failed the privacy consistency test.

12. The method according to any one of claims 2-4, 7-8, characterized in that: The privacy consistency test of the object to be detected is performed based on the outgoing tracking data, the keyword set of the privacy statement, and the mapping relationship to obtain the test result of the object to be detected, including: Sending the outgoing tracking data and the keyword set of the privacy statement to the server to request the detection result of the object to be detected; A detection result of the object to be detected is received from the server, where the detection result of the object to be detected includes whether the object to be detected passes the privacy consistency detection or whether the object to be detected fails the privacy consistency detection.

13. The method according to any one of claims 1-4, 7-9, and 11, characterized in that After obtaining the detection result of the object to be detected, the method further includes: Display the detection result of the object to be detected.

14. A data processing device, characterized in that: include: a statement identification module, configured to obtain keywords in the privacy statement of the object to be detected that are identical to keywords in a preset keyword set, and obtain a keyword set for the privacy statement, wherein the preset keyword set includes keywords in the keyword set for the privacy statement; A data identification module, used for acquiring outgoing data of the object to be detected; A privacy consistency detection module, configured to perform a privacy consistency detection on the object to be detected based on the keyword set of the privacy statement and the outgoing data, and obtain a detection result of the object to be detected; The privacy consistency detection module is specifically used to obtain keywords in the outgoing data that are identical to the keywords in the preset keyword set to obtain a first keyword set of the outgoing data; if the keyword set of the privacy statement includes all the keywords in the first keyword set, it is determined that the object to be detected has passed the privacy consistency detection; if the keyword set of the privacy statement does not include the keywords in the first keyword set, it is determined that the object to be detected has failed the privacy consistency detection.

15. An electronic device, characterized in that: include: A memory, a processor, and a transceiver, wherein the processor is coupled to the memory and the transceiver; The transceiver is used to perform the transceiver action in any one of claims 1 to 13; The processor is configured to read and execute instructions in the memory to implement the method according to any one of claims 1 to 13.

16. A computer-readable storage medium, characterized in that The computer storage medium stores computer instructions, which, when executed by a computer, enable the computer to perform the method according to any one of claims 1 to 13.

Citation Information

Patent Citations

  • Privacy risk assessment method and device

    CN109598127A

  • Sensitive permission extraction method for privacy case inspection in iOS application

    CN110287722A