A device identification code acquisition method, system, medium and device
By obtaining the low-privilege characteristics of the terminal device and performing hash operations to generate a device identification code, the problem of complex device identification code acquisition in the existing technology is solved, and simplified and compliant device identification code acquisition is achieved.
Patent Information
- Application Number
- CN202310079769.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-01-17
- Publication Date
- 2026-02-13
- Estimated Expiration
- 2043-01-17
AI Technical Summary
In existing technologies, obtaining the unique and immutable device identifier of a terminal device is restricted, which increases the complexity of obtaining the device identifier and fails to meet information compliance requirements.
By acquiring multiple low-privilege features of the terminal device, such as wallpaper color features, application icon location features, widget features, and system information features, feature extraction and hash operations are performed to generate a device identification code.
It simplifies the process of obtaining device identification codes without requiring user authorization, complies with information compliance requirements, is applicable to various applications, and reduces the complexity of obtaining device identification codes.
Smart Images

Figure CN115994347B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of device identification, and in particular to a device identification code acquisition method, system, medium and device. BACKGROUND
[0002] For an application, after being installed on a terminal device, in order to accurately provide services for a user, the information of the user is generally acquired. Since the user and the terminal device are strongly bound, in order to improve the accuracy of the user portrait, the application needs to read the identification of the terminal device, so as to determine the user using the terminal device.
[0003] In the prior art, the terminal is mainly identified by acquiring an unchangeable unique identification code of the terminal device. For example, a mobile equipment identifier (MEID) is acquired, which is an identity code of the terminal device. Through the identity code, the terminal device can be tracked, and the terminal device can be supervised. For a terminal device, once the identity code is determined, it is unique and unchangeable. However, with the development of personal information protection system, such a unique and unchangeable device identification code will no longer be allowed to be acquired. Moreover, the acquisition of the unique and unchangeable device identification code is limited by advanced device systems. At this time, it becomes more complicated to acquire the device identification code.
[0004] Therefore, there is an urgent need for a device identification code acquisition method, system, medium and device for improving the convenience of acquiring the device identification code. SUMMARY
[0005] The embodiments of the present application provide a device identification code acquisition method, system, medium and device for improving the convenience of acquiring the device identification code.
[0006] In a first aspect, the embodiments of the present application provide a device identification code acquisition method, which is applicable to a client and includes: acquiring a plurality of low-privilege features of a to-be-identified device, the low-privilege features being device attribute features that can be acquired without user authorization and having stability within a period and variability outside the period;
[0007] For any one low-privilege feature, the low-privilege feature is extracted to obtain at least one secondary feature; and a feature value corresponding to the low-privilege feature is determined according to the at least one secondary feature.
[0008] The feature values corresponding to the plurality of low-privilege features are sent to a server, and the server is configured to determine an identification code of the to-be-identified device according to the feature values corresponding to the plurality of low-privilege features.
[0009] In this way, when the identification code of the device is acquired, the authorization of the user is not required, some low-privilege features can be acquired, feature extraction is performed on the low-privilege features to acquire feature values, and finally the identification code of the device to be identified is acquired, which meets the compliance requirements of application information collection, can be applied to various applications installed on the client, and does not require each application to acquire the identification code of the device, thereby reducing the complexity of acquisition of the identification code of the device.
[0010] In a possible implementation manner, the low-privilege feature is a wallpaper color feature.
[0011] The low-privilege feature is extracted to obtain at least one secondary feature, including:
[0012] The wallpaper color feature is three-color split to obtain a first value of a red channel, a second value of a green channel, and a third value of a blue channel.
[0013] The wallpaper color feature is brightness extracted to obtain a fourth value representing brightness.
[0014] According to the at least one secondary feature, a feature value corresponding to the low-privilege feature is determined, including:
[0015] The first value, the second value, the third value, and the fourth value are subjected to a hash operation to obtain a wallpaper color feature value corresponding to the wallpaper color feature.
[0016] In this way, the color feature of the wallpaper is taken as a low-privilege feature, no additional authorization of the user is required, and the wallpaper image cannot be restored according to the color feature, which greatly protects the personal information of the user. In addition, the wallpaper color feature can be extracted only by relying on the function of the bottom framework of the system, which reduces the complexity of acquisition of the low-privilege feature, and further improves the complexity of acquisition of the identification code of the device.
[0017] In a possible implementation manner, the low-privilege feature is a position feature of an application icon.
[0018] The low-privilege feature is extracted to obtain at least one secondary feature, including:
[0019] The position feature of the application icon is extracted to obtain a coordinate value, and the coordinate value represents the position of the application icon on the screen of the device to be identified.
[0020] According to the at least one secondary feature, a feature value corresponding to the low-privilege feature is determined, including:
[0021] The coordinate value is subjected to a hash operation to obtain an application icon position feature value.
[0022] The number of to-be-identified devices that can be identified by the position feature of the application icon depends on the screen resolution of the to-be-identified device. The number of to-be-identified devices that can be identified in this way is small, and therefore, this way cannot be used alone to determine the identification code of the to-be-identified device.
[0023] In a possible implementation, the low-privilege feature is a widget feature, and the widget is a miniature view of an application.
[0024] The low-privilege feature is extracted to obtain at least one secondary feature, including:
[0025] The widget feature is extracted to obtain a quantity value of the widget and a name of at least one widget.
[0026] According to the at least one secondary feature, a feature value corresponding to the low-privilege feature is determined, including:
[0027] The quantity value and the name of the at least one widget are subjected to a hash operation to obtain a widget feature value.
[0028] In a possible implementation, the low-privilege feature is a system information feature; and the system information is used to represent software attribute information and hardware attribute information on the to-be-identified device.
[0029] The low-privilege feature is extracted to obtain at least one secondary feature, including:
[0030] The system information features are combined to obtain a system information feature code.
[0031] According to the at least one secondary feature, a feature value corresponding to the low-privilege feature is determined, including:
[0032] The system information feature code is subjected to a hash operation to obtain a system information feature value.
[0033] For the system information feature described above, although the system information feature does not need to be authorized by a user when being obtained and meets the requirement of information compliance, some system information features are the same in different clients, for example, the system customizer, the to-be-identified device parameter, the display screen parameter, and the hardware manufacturer are the same for a mobile phone of the same model. Therefore, when the system information features described above are combined, the attribute information compilation time, which is a feature that changes, needs to be added.
[0034] In a second aspect, an embodiment of the present application provides another device identification code obtaining method, which is applicable to a server and includes:
[0035] acquire the feature values corresponding to the plurality of low-privilege features sent by the client; any low-privilege feature is a device attribute feature that can be acquired without user authorization and has stability within a time limit and variability outside the time limit;
[0036] select, according to a preset rule, the feature value corresponding to at least one low-privilege feature from the feature values corresponding to the plurality of low-privilege features;
[0037] determine, according to the feature value corresponding to the at least one low-privilege feature, the identification code of the device to be identified based on a feature value algorithm.
[0038] In a possible implementation manner, before determining the identification code of the device to be identified according to the feature values corresponding to the plurality of low-privilege features, the method further includes:
[0039] calculate a collision probability between the feature values corresponding to the plurality of low-privilege features;
[0040] determine the preset rule according to the collision probability.
[0041] In a possible implementation manner, the preset rule further includes:
[0042] the feature value of the application icon position cannot be used alone to determine the identification code of the device to be identified, and / or,
[0043] the feature value of the system information cannot be used alone to determine the identification code of the device to be identified.
[0044] In a third aspect, an embodiment of the present application provides a device identification code acquisition system, which includes a client and a server;
[0045] The client is configured to receive a plurality of low-privilege features of a device to be identified, the low-privilege features being device attribute features that can be acquired without user authorization and having stability within a time limit and variability outside the time limit; extract any low-privilege feature to obtain at least one secondary feature; and determine a feature value corresponding to the low-privilege feature according to the at least one secondary feature.
[0046] The client is further configured to send the feature values corresponding to the plurality of low-privilege features to the server.
[0047] The server is configured to acquire the feature values corresponding to the plurality of low-privilege features sent by the client, and determine the identification code of the device to be identified according to the feature values corresponding to the plurality of low-privilege features.
[0048] In a possible implementation, the user end is specifically configured to perform trichromatic splitting on the wallpaper image feature to obtain a first value of a red channel, a second value of a green channel, and a third value of a blue channel; perform brightness extraction on the wallpaper image feature to obtain a fourth value representing brightness; and perform a hash operation on the first value, the second value, the third value, and the fourth value to obtain a wallpaper image feature value corresponding to the wallpaper image feature.
[0049] In a possible implementation, the client is specifically further configured to combine the system information features to obtain a system information feature code, and perform a hash operation on the system information feature code to obtain a system information feature value.
[0050] In a possible implementation, the client is specifically further configured to extract the widget features to obtain a quantity value of the widgets and a name of at least one widget, and perform a hash operation on the quantity value and the name of the at least one widget to obtain a widget feature value.
[0051] In a possible implementation, the client is specifically further configured to extract a position feature of the application icon to obtain a coordinate value representing a position of the application icon on a screen of the to-be-identified device, and perform a hash operation on the coordinate value to obtain an application icon position feature value.
[0052] In a fourth aspect, an embodiment of the present application provides a computer readable storage medium, which stores a computer program. When the computer program is executed, the method in any one of the first aspect is performed.
[0053] In a fifth aspect, an embodiment of the present application provides a computing device, which includes a memory configured to store program instructions, and a processor configured to invoke the program instructions stored in the memory to perform the method in any one of the first aspect.
[0054] In a sixth aspect, an embodiment of the present application provides a computer program product, which, when executed on a processor, implements the method in any one of the first aspect.
[0055] The beneficial effects of the second aspect to the fifth aspect are specifically referable to the beneficial effects achievable by any one of the first aspect, which will not be repeated here. BRIEF DESCRIPTION OF DRAWINGS
[0056] Figure 1 An application scenario provided by an embodiment of the present application is exemplarily shown in a schematic diagram;
[0057] Figure 2 A flowchart of a device identification code obtaining method provided by an embodiment of the present application is exemplarily shown.
[0058] Figure 3 An example is shown in the application embodiment of a lock screen wallpaper acquisition method schematic diagram;
[0059] Figure 4 An example is shown in the application embodiment of a system wallpaper acquisition method schematic diagram;
[0060] Figure 5 An example is shown in the application embodiment of an application icon position feature acquisition method schematic diagram;
[0061] Figure 6 An example is shown in the application embodiment of a widget feature acquisition method schematic diagram;
[0062] Figure 7 An example is shown in the application embodiment of a device identification code acquisition method flow schematic diagram;
[0063] Figure 8 An example is shown in the application embodiment of a device identification code acquisition system schematic diagram. DETAILED DESCRIPTION
[0064] In order to make the objects, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the drawings. Obviously, the described embodiments are only a part of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative work fall within the scope of the present application.
[0065] Figure 1 An example is shown in the application embodiment of an application scenario schematic diagram, such as Figure 1As shown, the application is installed on the client, the user uses the application through the client, and the server of the application can perform user portrait, marketing push and security risk control operations according to the user data collected by the application end. User portrait is to describe the user's usage habits according to the user's historical data of using the application. For example, some users often use the application from 11:00 to 12:00 at night, and mostly browse popular science articles. After browsing, the articles will be collected or downloaded. By collecting the traffic data generated by the user when using an application, it can be determined what time the user downloaded what kind of article, and thus targeted message push can be performed on the user to push more information that the user is interested in. The application can achieve user portrait and influence push of the client by obtaining the device identification code of the client. In the security risk control scenario, some applications only allow installation on one client after purchase. At this time, the server needs the device identification code of the client to determine the first installation of the client and record it. When the application is installed on other clients, the device identification code is used to determine that it is not the first installation of the client recorded before, and a security warning will be issued at this time.
[0066] In the prior art, a unique client is determined by obtaining an unchangeable unique device identification code. For example, International Mobile Equipment Identity (IMEI), International Mobile Subscriber Identity (IMSI), Mobile Equipment Identifier (MEID), Media Access Control Address (MAC), Integrate circuit card identity (ICCID) and the like. Among them, IMEI is equivalent to the ID number of the client device, IMSI is used to distinguish different users in the cellular network, MEID is the identity code of the client device, through which the network end can track and supervise the client device, and ICCID is the SIM card number equivalent to the ID number of the mobile phone.
[0067] The above-mentioned device identification codes are all unique and unchangeable, and after the client device is determined, the above-mentioned device identification codes are also determined. However, with the implementation of the relevant policy of application personal information collection restriction, the above-mentioned unique and unchangeable device identification code will no longer be allowed to be obtained, that is, after the application is installed on the client, the unique and unchangeable device identification code cannot be obtained any more, even if it is authorized by the user to obtain it, it is also illegal. At this time, other ways are needed to obtain the unique device identification code.
[0068] In a possible implementation, a device fingerprint can be generated by analyzing available information of each layer of each protocol stack. For example, the size of an application transmission layer data packet can be analyzed to determine a time period of traffic generation, and then the use habit of a user on the client can be determined; by analyzing characteristic data of multiple stack layers, unique features of the client where the application is located can be determined as the device identifier. However, this method cannot be used across applications, because the use habit of a user on each application is different, and the generated data is also different, and therefore the standard for determining the device identifier is also different. This makes the process of determining the device identifier very complex.
[0069] Therefore, the present application provides a device identifier acquisition method, which is used for reducing the complexity of device identifier acquisition and improving the convenience of device identifier acquisition.
[0070] Figure 2 An exemplary flowchart of a device identifier acquisition method provided by an embodiment of the present application is shown in FIG. 1. The method is applicable to a client as shown in FIG. 2, and includes the following steps. Figure 1 The client shown in FIG. 2 includes the following steps.
[0071] In step 201, a plurality of low-privilege features of a device to be identified are acquired. The low-privilege features are device attribute features that can be acquired without user authorization, and have stability within a time limit and variability outside the time limit.
[0072] After an application is installed on a client, the user's authorization for each item is required to work normally, such as reading and writing mobile storage permission, camera permission, recording permission, media volume control permission, reading contact permission, positioning permission, reading application list permission, accessing calendar permission, accessing mobile account permission, system setting permission, enabling Bluetooth permission, desktop shortcut permission, and the like. When the application is installed on the client, some permissions have been authorized through the installation protocol, and some permissions are requested from the user for authorization in the use process of the application. For example, the camera permission, when a user clicks an icon for identifying an object in a shopping application, the camera needs to be called, and the application pops up a camera permission request dialog box. After the user clicks OK, the camera can be called. For some system setting permissions, except for the system built-in application, the permission is not open to other applications.
[0073] The low-privilege features described above are device attribute features that can be acquired without user authorization. These attribute features are stable within a certain time limit and will not change, and the user can choose to change these device attribute features or these device attribute features are periodically automatically changed. That is, after the stable time limit, these features will change, which is relative to the above-mentioned unique and unchangeable device identifier.
[0074] For example, the color feature of the lock screen wallpaper of the client is different from the image feature of the lock screen wallpaper, and instead of focusing on the identification of the image itself, it focuses on each pixel color on the lock screen wallpaper. After obtaining the pixel color feature, the image of the lock screen wallpaper cannot be restored, and it does not involve the user's privacy information, so it is compliant, and this feature can be read by relying on the functions provided by the system underlying framework, without additional authorization, and it is a low-privilege feature. In addition, the color feature of the lock screen wallpaper will change with the change of the lock screen wallpaper, and the user can change the lock screen wallpaper to obtain different color features.
[0075] In step 202, for any low-privilege feature, the low-privilege feature is extracted to obtain at least one secondary feature; and a feature value corresponding to the low-privilege feature is determined according to the at least one secondary feature.
[0076] In the above step 201, a plurality of low-privilege features are obtained, and each low-privilege feature needs to be processed to obtain one or more secondary features. These secondary features can be arbitrarily arranged and combined to form more features, and further obtain more feature values.
[0077] In step 203, the feature values corresponding to the plurality of low-privilege features are sent to a server, and the server is configured to determine the identification code of the to-be-identified device according to the feature values corresponding to the plurality of low-privilege features.
[0078] After the client obtains the feature values corresponding to the plurality of low-privilege features, the feature values are sent to the server of the application, and the server processes and calculates the plurality of feature values to obtain the identification code of the to-be-identified device.
[0079] In the above manner, when obtaining the identification code of the device, the user's authorization is not required, and some low-privilege features can be obtained. The feature values are obtained by extracting the low-privilege features, and the identification code of the to-be-identified device is finally obtained. It meets the compliance requirements of application information collection, and can be applied to various applications installed on the client. It is not necessary to obtain the identification code of the device for each application, which reduces the complexity of obtaining the identification code of the device.
[0080] The following describes the method for obtaining the feature value of each low-privilege feature.
[0081] Low-privilege feature one: wallpaper image feature.
[0082] The system's underlying framework WallpaperColor function can be used to obtain the system wallpaper color feature or the lock screen wallpaper color feature. Specifically, the lock screen wallpaper can be obtained by the method as shown in Figure 3 The lock screen wallpaper can be obtained by the method as shown in Figure 4The system wallpaper is acquired in the manner shown. Taking the lock screen wallpaper as an example, an example of the acquired lock screen wallpaper is as follows:
[0083] [WallpaperColors:ff966fd9 ffab67b7 ff87a741 ff8783ca ff619763ff8ab2dc ff528e7b ffd8aec2 ffaebbdf ffc8c49a ff7495a7 ff72989b ffb7aba4ffc1b7b4 h:4];
[0084] In the above example, each eight hexadecimal numbers represent a color, and a total of 14 colors are acquired, i.e., there are a total of 14 colors in the lock screen wallpaper, and the colors are arranged in the above queue according to the number of colors; h represents the brightness of the lock screen wallpaper, and the return value of a bright color is 4 and the return value of a dark color is 6.
[0085] In a possible implementation manner, only the color features of three major color tones, i.e., the color features of red, the color features of green, and the color features of blue, can be acquired, and the RGB value of each color can have 2 8 *2 8 *2 8 =2 24 combinations. Assuming that the acquired RGB data has N, N is greater than or equal to 1, then there are (2 24 ) N combinations only according to the color features of the lock screen wallpaper, and the brightness value feature can be used to identify (2 24 N* *2 clients.
[0086] The wallpaper color features are three-color split to obtain a first value of a red channel, a second value of a green channel, and a third value of a blue channel, and to obtain a fourth value representing brightness, and then the first value, the second value, the third value, and the fourth value are subjected to a hash operation to obtain a wallpaper color feature value corresponding to the wallpaper color features.
[0087] In the above manner, the color features of the wallpaper are used as a kind of low-privilege feature, without the additional authorization of the user, and the wallpaper image cannot be restored according to the color features, greatly protecting the personal information of the user. In addition, the wallpaper color features can be extracted only by relying on the functions of the bottom framework of the system, reducing the complexity of the acquisition of the low-privilege feature, and further improving the complexity of the acquisition of the entire device identification code.
[0088] Low-privilege feature two: position feature of application icons;
[0089] Each application icon has a position on the screen of the device to be identified, and the user can change the position of the icon by long-pressing the icon and dragging it. In the manner shown in Figure 5 The position feature of the application icon is obtained by the getSourceBounds function. The position feature of the application icon is extracted to obtain a coordinate value, which represents the position of the application icon on the screen of the device to be identified. Hash operation is performed on the coordinate value to obtain an application icon position feature value.
[0090] Exemplarily, the obtained position feature of the application icon is as follows:
[0091] position[850, 938][1058, 1268];
[0092] wherein “850” represents the distance from the left edge of the device to be identified; “938” represents the distance from the right edge of the device to be identified; “1058” represents the distance from the top edge of the device to be identified; and “1268” represents the distance from the bottom edge of the device to be identified.
[0093] The number of devices to be identified that can be identified by the position feature of the application icon depends on the screen resolution of the device to be identified. The number of devices to be identified that can be identified in this manner is small, so it cannot be used alone to determine the identification code of the device to be identified.
[0094] Low-privilege feature three: widget feature
[0095] A widget is a miniature view of an application, or a shortcut. A widget can be directly embedded in the desktop of a client, and the features in the application can be used without opening the application. The number or type of widgets corresponding to each application is relatively stable, so the number and names of the widgets in the device to be identified remain unchanged within a certain period of time. Therefore, the number of widgets and the name of at least one widget can be extracted to obtain a widget quantity value and a widget name; and hash operation is performed on the quantity value and the name of the at least one widget to obtain a widget feature value.
[0096] Exemplarily, the name and number of widgets can be obtained by the getApplicationContext function in the manner shown in Figure 6 An example is as follows:
[0097] [2022-11-02 12:38:56.820 12995-12995 / com.example.getDeviceID D / features:Name:Conversation]
[0098] In the above, "2022-11-02 12:38:56.820" represents the time obtained by the widget, and "Conversation" is the name of the widget, which is a conversation widget, such as a search box of a browser.
[0099] The number of widgets is obtained by summarizing all the obtained widgets. Then, the number value and the name of at least one widget are hashed to obtain the widget feature value.
[0100] Low-privilege feature four: system information feature;
[0101] System information is used to represent software attribute information and hardware attribute information on the device to be identified. For example: system customizer, device parameter to be identified, display screen parameter, hardware manufacturer, source code control version number, username, attribute information compilation time, etc.
[0102] Optionally, the above system information features are combined to obtain a system information feature code. Then, the system information feature code is hashed to obtain the system information feature value.
[0103] For the above system information features, although they do not require user authorization when obtained and meet the requirements of information compliance, some system information features are the same in different clients, such as a mobile phone of the same model, the system customizer, the device parameter to be identified, the display screen parameter, and the hardware manufacturer are all the same. Therefore, when the above system information features are combined, the attribute information compilation time feature which changes needs to be added.
[0104] Based on the same technical concept, the embodiments of the present application also provide a device identification code acquisition method. Figure 7 An exemplary flowchart of a device identification code acquisition method provided by the embodiments of the present application is shown. The method is applicable to a server, such as Figure 7 As shown, the method comprises:
[0105] Step 701: obtaining feature values corresponding to a plurality of low-privilege features sent by a client; any low-privilege feature is a device attribute feature that can be obtained without user authorization and has stability within a period and variability outside the period;
[0106] Step 702: selecting a feature value corresponding to at least one low-privilege feature from the feature values corresponding to the plurality of low-privilege features according to a preset rule;
[0107] Step 703: determining an identification code of a device to be identified based on a feature value algorithm according to the feature value corresponding to the at least one low-privilege feature.
[0108] In the above step 702, the preset rule is determined by the following method:
[0109] Step one: calculate the collision probability between the feature values corresponding to the plurality of low-privilege features. The final determined identification code of the to-be-identified device needs to have uniqueness and stability. Uniqueness means that the identification codes of different to-be-identified devices must not be repeated. If the uniqueness of the identification code of the to-be-identified device is insufficient, it may cause the identification codes of different devices to collide, which may cause normal applications to be misjudged in some scenarios with strict security control strategies.
[0110] Step two: determine the preset rule according to the collision probability. Among the feature values obtained in step 701, some feature values have high uniqueness, and some feature values have low uniqueness. According to the above principle, a high-unicity combined feature value can be obtained by combining a plurality of low-unicity feature values according to the collision probability, and then the identification code of the to-be-identified device with high uniqueness can be determined.
[0111] Based on the same technical concept, the embodiment of the present application also provides a device identification code acquisition system. Figure 8 An example of a device identification code acquisition system provided by an embodiment of the present application is shown in FIG. 1, which includes a client and a server. Figure 8 As shown in FIG. 1, the system includes a client and a server.
[0112] The client is configured to acquire a plurality of low-privilege features of a to-be-identified device, the low-privilege features being device attribute features that can be acquired without user authorization and having stability within a period and variability outside the period, extract at least one secondary feature for any one low-privilege feature, and determine a feature value corresponding to the low-privilege feature according to the at least one secondary feature.
[0113] The client is further configured to send the feature values corresponding to the plurality of low-privilege features to the server.
[0114] The server is configured to receive the feature values corresponding to the plurality of low-privilege features sent by the client, and determine an identification code of the to-be-identified device according to the feature values corresponding to the plurality of low-privilege features.
[0115] In one possible implementation, the user end is specifically configured to perform three-color splitting on the wallpaper image feature to obtain a first value of a red channel, a second value of a green channel, and a third value of a blue channel, perform brightness extraction on the wallpaper image feature to obtain a fourth value representing brightness, and perform a hash operation on the first value, the second value, the third value, and the fourth value to obtain a wallpaper image feature value corresponding to the wallpaper image feature.
[0116] In a possible implementation, the client is specifically further configured to: combine the system information features to obtain a system information feature code, and perform a hash operation on the system information feature code to obtain a system information feature value.
[0117] In a possible implementation, the client is specifically further configured to: extract the widget features to obtain a quantity value of the widgets and a name of at least one widget; and perform a hash operation on the quantity value and the name of the at least one widget to obtain a widget feature value.
[0118] In a possible implementation, the client is specifically further configured to: extract the application icon position features to obtain a coordinate value, the coordinate value representing a position of the application icon on a screen of the device to be identified; and perform a hash operation on the coordinate value to obtain an application icon position feature value.
[0119] Based on the same technical concept, the embodiment of the present application further provides a computer program product, which, when running on a processor, implements the method shown in the above embodiment.
[0120] Based on the same technical concept, the embodiment of the present application further provides a computing device, comprising: a memory configured to store program instructions; and a processor configured to invoke the program instructions stored in the memory to implement the method shown in the above embodiment according to obtained program execution.
[0121] Based on the same technical concept, the embodiment of the present application further provides a computing device, comprising: a memory configured to store program instructions; and a processor configured to invoke the program instructions stored in the memory to implement the method shown in the above embodiment according to obtained program execution.
[0122] Based on the same technical concept, the embodiment of the present application further provides a computer readable storage medium, which, when running on a processor, implements the method shown in the above embodiment.
[0123] Those skilled in the art should understand that embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage devices, etc.) containing computer usable program code.
[0124] The computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks. Figure 1 one or more flowcharts and / or blocks in the flowcharts and / or combination thereof. Figure 1 one or more flowcharts and / or blocks in the flowcharts and / or combination thereof.
[0125] The computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks. Figure 1 one or more flowcharts and / or blocks in the flowcharts and / or combination thereof. Figure 1 one or more flowcharts and / or blocks in the flowcharts and / or combination thereof.
[0126] The computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks. Figure 1 one or more flowcharts and / or blocks in the flowcharts and / or combination thereof. Figure 1 one or more flowcharts and / or blocks in the flowcharts and / or combination thereof.
[0127] Obviously, numerous modifications and variations of the present application are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims and their equivalents, the application can be practiced otherwise than as specifically described.
Claims
1. A device identification code acquisition method characterized by comprising: The method is suitable for a client, comprising: obtaining a plurality of low-privilege features of a to-be-identified device, the low-privilege features being device attribute features that can be obtained without user authorization and having stability within a time limit and variability outside the time limit, and the low-privilege features comprising a wallpaper color feature, a position feature of an application icon, and a widget feature, the widget being a miniature view of an application; for any one low-privilege feature, extracting the low-privilege feature to obtain at least one secondary feature that cannot restore original user data, and determining a feature value corresponding to the low-privilege feature according to the at least one secondary feature that cannot restore original user data; when the low-privilege feature is the wallpaper color feature, extracting the low-privilege feature to obtain at least one secondary feature that cannot restore original user data comprises: performing three-color splitting on the wallpaper color feature to obtain a first value of a red channel, a second value of a green channel, and a third value of a blue channel; performing brightness extraction on the wallpaper color feature to obtain a fourth value representing brightness; and determining a feature value corresponding to the wallpaper color feature according to the at least one secondary feature that cannot restore original user data comprises: performing hash operation on the first value, the second value, the third value, and the fourth value to obtain the feature value corresponding to the wallpaper color feature; sending the feature values corresponding to the plurality of low-privilege features to a server, the server being configured to determine an identification code of the to-be-identified device according to the feature values corresponding to the plurality of low-privilege features, wherein the server is specifically configured to calculate a collision probability between the feature values corresponding to the plurality of low-privilege features, combine a plurality of low-unicity feature values to obtain a high-unicity combined feature value according to the collision probability, and determine the combined feature value as the identification code of the to-be-identified device.
2. The method of claim 1, wherein, when the low-privilege feature is the position feature of the application icon, extracting the low-privilege feature to obtain at least one secondary feature that cannot restore original user data comprises: extracting the position feature of the application icon to obtain a coordinate value representing the position of the application icon on a screen of the to-be-identified device; determining a feature value corresponding to the low-privilege feature according to the at least one secondary feature that cannot restore original user data comprises: performing hash operation on the coordinate value to obtain an application icon position feature value.
3. The method of claim 1, wherein, when the low-privilege feature is the widget feature, extracting the low-privilege feature to obtain at least one secondary feature that cannot restore original user data comprises: extracting the widget feature to obtain a quantity value of widgets and a name of at least one widget; determining a feature value corresponding to the low-privilege feature according to the at least one secondary feature that cannot restore original user data comprises: performing hash operation on the quantity value and the name of the at least one widget to obtain a widget feature value.
4. The method of claim 1, wherein, the low-privilege features further comprise a system information feature, and the system information represents software attribute information and hardware attribute information on the to-be-identified device; When the low-privilege feature is the system information feature, the low-privilege feature is extracted to obtain at least one secondary feature that cannot restore original user data, including: The system information features are combined to obtain a system information feature code; According to the at least one secondary feature that cannot restore original user data, a feature value corresponding to the low-privilege feature is determined, including: The system information feature code is subjected to a hash operation to obtain a system information feature value.
5. An apparatus identification code acquisition method characterized by comprising: The method is applicable to a server, including: Obtaining feature values corresponding to a plurality of low-privilege features of a to-be-identified device sent by a client; any low-privilege feature is a device attribute feature that can be obtained without user authorization and has stability within a period and variability outside the period, and the low-privilege feature includes a wallpaper color feature, a position feature of an application icon, and a widget feature, which is a miniature view of an application; the feature value corresponding to any low-privilege feature is determined by the client by extracting the low-privilege feature to obtain at least one secondary feature that cannot restore original user data according to the at least one secondary feature that cannot restore original user data; when the low-privilege feature is the wallpaper color feature, the client obtains the at least one secondary feature that cannot restore original user data by: performing three-color splitting on the wallpaper color feature to obtain a first value of a red channel, a second value of a green channel, and a third value of a blue channel; performing brightness extraction on the wallpaper color feature to obtain a fourth value representing brightness; and the client determines the feature value corresponding to the low-privilege feature by: performing a hash operation on the first value, the second value, the third value, and the fourth value to obtain a wallpaper color feature value corresponding to the wallpaper color feature; According to a preset rule, at least one feature value corresponding to a low-privilege feature is selected from the feature values corresponding to the plurality of low-privilege features; According to the at least one feature value corresponding to the low-privilege feature, a feature value algorithm is used to determine an identification code of the to-be-identified device; Before determining the identification code of the to-be-identified device according to the feature values corresponding to the plurality of low-privilege features, the method further includes: Calculating a collision probability between the feature values corresponding to the plurality of low-privilege features; According to the collision probability, the preset rule is determined; According to the at least one feature value corresponding to the low-privilege feature, a feature value algorithm is used to determine an identification code of the to-be-identified device, specifically including: calculating a collision probability between the feature values corresponding to the at least one low-privilege feature, combining a plurality of low-unicity feature values according to the collision probability to obtain a high-unicity combined feature value, and determining the combined feature value as the identification code of the to-be-identified device.
6. The method of claim 5, wherein, The low-privilege feature further includes a system information feature; the system information is used to represent software attribute information and hardware attribute information on the to-be-identified device; When the low-privilege feature is the wallpaper color feature, the client obtains the at least one secondary feature that cannot restore original user data by: The system information features are combined to obtain a system information feature code; and, The client determines the feature value corresponding to the low-privilege feature in the following manner: hashing the system information feature code to obtain a system information feature value.
7. The method of claim 6, wherein, The preset rule further includes: The application icon position feature value cannot be used alone to determine the identification code of the device to be identified, and / or The system information feature value cannot be used alone to determine the identification code of the device to be identified.
8. An apparatus identification code acquisition system characterized by comprising: The system includes a client and a server; The client receives a plurality of low-privilege features of a device to be identified, the low-privilege features being device attribute features that can be obtained without user authorization and having stability within a period and variability outside the period, and the low-privilege features including a wallpaper color feature, an application icon position feature, and a widget feature, the widget being a miniature view of an application; for any one low-privilege feature, the client extracts the low-privilege feature to obtain at least one secondary feature that cannot restore original user data, and determines a feature value corresponding to the low-privilege feature according to the at least one secondary feature that cannot restore original user data; When the low-privilege feature is the wallpaper color feature, the client specifically performs trichromatic splitting on the wallpaper color feature to obtain a first value of a red channel, a second value of a green channel, and a third value of a blue channel, extracts the brightness of the wallpaper color feature to obtain a fourth value representing the brightness, and performs hash operation on the first value, the second value, the third value, and the fourth value to obtain a wallpaper color feature value corresponding to the wallpaper color feature; The client further sends the feature values corresponding to the plurality of low-privilege features to the server; The server obtains the feature values corresponding to the plurality of low-privilege features sent by the client, and determines an identification code of the device to be identified according to the feature values corresponding to the plurality of low-privilege features. The server specifically calculates a collision probability between the feature values corresponding to the plurality of low-privilege features, obtains a high-unicity combined feature value by combining the plurality of low-unicity feature values according to the collision probability, and determines the combined feature value as the identification code of the device to be identified.
9. The system of claim 8, wherein, When the low-privilege feature is the widget feature, the client specifically extracts the widget feature to obtain a quantity value of the widget and a name of at least one widget, and performs hash operation on the quantity value and the name of the at least one widget to obtain a widget feature value.
10. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program, and when the computer program is run, the method of any one of claims 1 to 7 is executed.
11. A computing device, comprising: includes: a memory for storing program instructions; a processor for invoking the program instructions stored in the memory to execute the method of any one of claims 1 to 7 according to the obtained program execution.
Citation Information
Patent Citations
Method and apparatus for generating terminal identifying information
CN105357204A
Method for determining device identifier
CN112905249A
Equipment fingerprint generation and request processing method and device, electronic equipment and medium
CN115473705A