Data processing method, client, server and door lock

By working collaboratively with the client and server, dynamic theme configuration for smart locks was achieved, solving the problem of limited interaction methods and improving the user experience.

CN120894849BActive Publication Date: 2026-05-15SMART CLOUD LINK INFORMATION TECH (BEIJING) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SMART CLOUD LINK INFORMATION TECH (BEIJING) CO LTD
Filing Date
2025-07-21
Publication Date
2026-05-15

AI Technical Summary

Technical Problem

Existing smart door locks offer limited interaction methods, lack dynamic theme configurations, and result in an inadequate user experience.

Method used

Through the interaction between the client, server, and door lock, and by utilizing digital signatures and topic description information, reliable and efficient configuration of dynamic topic files is achieved, including the acquisition and assembly of header files and multiple frame files.

Benefits of technology

It enables dynamic theme configuration for smart door locks, enhancing the user experience and meeting users' personalized needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120894849B_ABST
    Figure CN120894849B_ABST
Patent Text Reader

Abstract

The application discloses a data processing method, a client, a server and a door lock. The data processing method applied to the client comprises the following steps: in response to a theme setting operation of a first user on a target door lock, determining a target user identifier and a target theme identifier; generating a theme setting request according to the target user identifier and the target theme identifier; generating a digital signature corresponding to the theme setting request by using a first private key of the first user; and sending the digital signature and the theme setting request to a server, so that the server issues the digital signature, the target user identifier, the target theme identifier and theme description information corresponding to the target theme identifier to the target door lock after verifying the theme setting request. Therefore, the target door lock can be reliably and efficiently configured with a dynamic theme, the personalized dynamic theme setting requirement of a user is met, and the user experience is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of door lock control technology, and in particular to a data processing method, a client, a server, and a door lock. Background Technology

[0002] Compared to traditional mechanical locks, smart locks not only support multiple unlocking methods such as mobile app, fingerprint, facial recognition, and password, but most also have built-in high-definition front and rear dual screens, which can provide visual interaction at key moments such as user unlocking, authorization, and visitor arrival.

[0003] Currently, the visual interaction on smart door locks generally relies on brief text prompts or static icons to provide feedback on operation results, resulting in a limited range of interaction methods. Summary of the Invention

[0004] This application provides a data processing method, a client, a server, and a door lock. Through the interaction process between the client, the server, and the door lock, dynamic themes can be configured for the door lock efficiently.

[0005] In a first aspect, a data processing method is provided, applied to a client, comprising: responding to a first user's theme setting operation on a target door lock, determining a target user identifier and a target theme identifier; generating a theme setting request based on the target user identifier and the target theme identifier; generating a digital signature corresponding to the theme setting request using the first user's first private key; and sending the digital signature and the theme setting request to a server, so that after the server verifies the theme setting request, it sends the digital signature, the target user identifier, the target theme identifier, and theme description information corresponding to the target theme identifier to the target door lock, wherein the theme description information includes at least: the acquisition addresses of a header file and multiple frame files, and the header file and the multiple frame files can be assembled to obtain a dynamic theme file corresponding to the target theme identifier.

[0006] In some embodiments, the method further includes: obtaining an initial theme file in response to a second user's theme addition operation on the target door lock; converting the initial theme file into a target animation according to the target animation format and the display parameters of the display screen on the target door lock; parsing the target animation to obtain a target header file and multiple target frame files, wherein the target header file represents the control parameters of the target animation, and each of the target frame files represents the image data of each image frame in the target animation; obtaining a dynamic theme file to be added based on the target header file and each of the target frame files; storing the dynamic theme file to be added in a database; and sending the theme description information corresponding to the dynamic theme file to be added and the door lock identifier of the target door lock to the server.

[0007] In some embodiments, obtaining the dynamic theme file to be added based on the target header file and each of the target frame files includes: using an information digest algorithm to determine first digest information corresponding to the target header file and second digest information corresponding to each of the target frame files; determining a digest file based on the first digest information and each of the second digest information; encrypting the target header file and each of the target frame files respectively using an authorization key corresponding to the target door lock to obtain an encrypted header file and encrypted frame files; obtaining the dynamic theme file to be added based on the encrypted header file, encrypted frame files, and the digest file, wherein the theme description information corresponding to the dynamic theme file to be added also includes the acquisition address of the digest file.

[0008] In some embodiments, the target animated image format includes a graphics interchange format. When the target animated image is in a graphics interchange format, parsing the target animated image to obtain a target header file and multiple target frame files includes: reading the file header and logical screen descriptor of the target animated image; if the logical screen descriptor indicates the existence of a global color table, determining the target header file based on the file header, the logical screen descriptor, and the global color table; cyclically parsing each image frame data of the target animated image after the logical screen descriptor; and, if the end identifier of the target animated image is parsed, obtaining each target frame file based on the parsed image frame data. Each image frame data includes an extended block, a sub-block buffer of the extended block, an image descriptor, a local color table, a minimum encoding size, and an image sub-block.

[0009] In some embodiments, generating a theme setting request based on the target user identifier and the target theme identifier includes: combining the target user identifier, the target theme identifier, the session identifier, and the lock identifier of the target door lock to generate the theme setting request. The session identifier is obtained from the server. The session identifier and the lock identifier are used by the server to verify whether there is a binding relationship between the session identifier and the lock identifier. If the binding relationship exists and the target user identifier and the target theme identifier are valid identifiers, the theme setting request is verified by the server.

[0010] Secondly, a data processing method is provided, applied to a server, comprising: receiving a digital signature and a topic setting request from a client used by a first user, wherein the topic setting request includes at least a target user identifier and a target topic identifier; verifying the topic setting request; and, if the topic setting request passes verification, sending the digital signature, the target user identifier, the target topic identifier, and topic description information corresponding to the target topic identifier to a target door lock, wherein the topic description information includes at least: the acquisition addresses of a header file and multiple frame files, so that the target door lock, under target conditions, can sequentially acquire the header file and the multiple frame files from the database, assemble them into a dynamic topic file corresponding to the target topic identifier, and determine the target topic identifier as the current dynamic topic of the target user identifier, wherein the target conditions include that the digital signature is verified using the first user's first public key, the target user identifier, and the target topic identifier, and that the target door lock does not have a dynamic topic file corresponding to the target topic identifier in its local cache.

[0011] In some embodiments, the theme setting request further includes the client's session identifier and the target lock's lock identifier. Verifying the theme setting request includes: verifying whether there is a binding relationship between the session identifier and the lock identifier; if the binding relationship exists and the target user identifier and the target theme identifier are valid identifiers, determining that the theme setting request passes verification.

[0012] In some embodiments, the method further includes: in response to receiving from the client topic description information corresponding to the dynamic topic file to be added and the door lock identifier of the target door lock, establishing a topic record for the topic description information corresponding to the dynamic topic file to be added; and associating the topic record with the door lock identifier.

[0013] In some embodiments, the method further includes: in response to receiving theme setting completion information from the target door lock, sending the theme setting completion information to the client.

[0014] Thirdly, a data processing method is provided, applied to a target door lock, comprising: receiving a digital signature, a target user identifier, a target topic identifier, and topic description information corresponding to the target topic identifier from a server, wherein the topic description information includes at least: the acquisition addresses of a header file and multiple frame files; verifying the digital signature using a first user's first public key, the target user identifier, and the target topic identifier; if the digital signature verification is successful and there is no dynamic topic file corresponding to the target topic identifier in the user's local cache, acquiring the header file and the multiple frame files sequentially from the database using the acquisition addresses; assembling a dynamic topic file corresponding to the target topic identifier based on the header file and the multiple frame files; and determining the target topic identifier as the current dynamic topic of the target user identifier.

[0015] In some embodiments, the header file and the plurality of frame files are encrypted files. The step of retrieving the header file and the plurality of frame files from the database sequentially using the retrieval address includes: retrieving the header file from the database using the retrieval address of the header file; decrypting the header file based on the authorization key obtained from the client of the first user to obtain a decrypted header file, and caching the decrypted header file; and retrieving each of the frame files sequentially from the database using the retrieval address of each of the frame files.

[0016] In some embodiments, the topic description information further includes the address for obtaining a digest file, the digest file including at least the digest information of each of the plurality of frame files, and before obtaining each frame file sequentially from the database using the address for obtaining each frame file, the method further includes: obtaining the digest file from the database using the address for obtaining the digest file; the step of obtaining each frame file sequentially from the database using the address for obtaining each frame file includes: obtaining one frame file from the database according to the address for each frame file, decrypting the obtained current frame file based on the authorization key to obtain a currently decrypted frame file; verifying the currently decrypted frame file using the digest file; caching the currently decrypted frame file if the verification of the currently decrypted frame file passes; and discarding the currently decrypted frame file if the verification of the currently decrypted frame file fails.

[0017] In some embodiments, the step of verifying the currently decrypted frame file using the digest file includes: using an information digest algorithm to determine the current digest information of the currently decrypted frame file; and if there is digest information in the digest file that is consistent with the current digest information, determining that the current decrypted frame file has passed verification.

[0018] In some embodiments, after determining the target topic identifier as the current dynamic topic of the target user identifier, the method further includes: obtaining the current user identifier in response to an unlocking operation; and, if the current user identifier matches the target user identifier, playing the current dynamic topic using its own display screen.

[0019] In some embodiments, after determining the target topic identifier as the current dynamic topic of the target user identifier, the method further includes: sending topic setting completion information to the server, so that the server returns the topic setting completion information to the client of the first user.

[0020] Fourthly, a client is provided, comprising: a first determining module, configured to determine a target user identifier and a target theme identifier in response to a first user's theme setting operation on a target door lock; a generating module, configured to generate a theme setting request based on the target user identifier and the target theme identifier; a signing module, configured to generate a digital signature corresponding to the theme setting request using a first private key of the first user; and a first sending module, configured to send the digital signature and the theme setting request to a server, so that after the server verifies the theme setting request, it sends the digital signature, the target user identifier, the target theme identifier, and theme description information corresponding to the target theme identifier to the target door lock, wherein the theme description information includes at least: the acquisition addresses of a header file and multiple frame files, and the header file and the multiple frame files can be assembled to obtain a dynamic theme file corresponding to the target theme identifier.

[0021] Fifthly, a server is provided, comprising: a first receiving module, configured to receive a digital signature and a topic setting request from a client used by a first user, the topic setting request including at least a target user identifier and a target topic identifier; and a sending module, configured to verify the topic setting request, and, if the topic setting request passes verification, send the digital signature, the target user identifier, the target topic identifier, and topic description information corresponding to the target topic identifier to a target door lock, the topic description information including at least: the acquisition addresses of a header file and multiple frame files, so that the target door lock, under target conditions, can sequentially acquire the header file and the multiple frame files from the database, assemble them into a dynamic topic file corresponding to the target topic identifier, and determine the target topic identifier as the current dynamic topic of the target user identifier, the target conditions including that the digital signature is verified using the first user's first public key, the target user identifier, and the target topic identifier, and that the target door lock does not have a dynamic topic file corresponding to the target topic identifier in its local cache.

[0022] Sixthly, a door lock is provided, comprising: a second receiving module, configured to receive from a server a digital signature, a target user identifier, a target topic identifier, and topic description information corresponding to the target topic identifier, wherein the topic description information includes at least: acquisition addresses of a header file and multiple frame files; a verification module, configured to verify the digital signature using a first user's first public key, the target user identifier, and the target topic identifier; an acquisition module, configured to, when the digital signature verification is successful and there is no dynamic topic file corresponding to the target topic identifier in its local cache, acquire the header file and the multiple frame files sequentially from a database using the acquisition addresses; an assembly module, configured to assemble a dynamic topic file corresponding to the target topic identifier based on the header file and the multiple frame files; and a second determining module, configured to determine the target topic identifier as the current dynamic topic of the target user identifier.

[0023] A seventh aspect provides a computer-readable storage medium having a computer program / instructions stored thereon, which, when executed by a processor, implement the steps of the data processing method as described in the first, second, or third aspect.

[0024] Eighthly, a computer program product is provided, including a computer program / instructions that, when executed by a processor, implement the steps of the data processing method as described in the first, second, or third aspect.

[0025] By applying the above technical solution, in response to the first user's theme setting operation on the client side, the client determines the target user identifier and the target theme identifier and generates a theme setting request. Then, the client uses the first user's first private key to generate a digital signature corresponding to the theme setting request. The client then sends the digital signature and theme setting request to the server, which verifies the request. Upon successful verification, the server sends the digital signature, target user identifier, target theme identifier, and theme description information to the target door lock. The target door lock then retrieves the header file and multiple frame files based on the address in the theme description information and assembles them to obtain the dynamic theme file corresponding to the target theme identifier. This achieves reliable and efficient configuration of dynamic themes for the target door lock, meeting the user's personalized dynamic theme setting needs and improving the user experience. Attached Figure Description

[0026] To more clearly illustrate the technical solutions of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments recorded in this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0027] Figure 1 This is a schematic diagram of the system architecture corresponding to a data processing method according to an embodiment of this application;

[0028] Figure 2 A flow chart of a data processing method according to an embodiment of this application Figure 1 ;

[0029] Figure 3 A flowchart illustrating the acquisition of the header file and frame files for the target door lock in this embodiment of the application;

[0030] Figure 4 A flow chart of a data processing method according to an embodiment of this application Figure 2 ;

[0031] Figure 5 This is a flowchart illustrating how a client obtains a topic file to be added, as described in this embodiment of the application.

[0032] Figure 6 This is a flowchart illustrating how a client obtains the target header file and each target frame file according to an embodiment of this application.

[0033] Figure 7 This is a structural block diagram of a client according to an embodiment of this application;

[0034] Figure 8 This is a structural block diagram of a server according to an embodiment of this application;

[0035] Figure 9 This is a structural block diagram of a door lock according to an embodiment of this application. Detailed Implementation

[0036] Various embodiments and features of this application are described herein with reference to the accompanying drawings.

[0037] It should be understood that various modifications can be made to the embodiments described herein. Therefore, the above description should not be considered as limiting, but merely as an example of embodiments. Other modifications within the scope and spirit of this application will be apparent to those skilled in the art.

[0038] The accompanying drawings, which are included in and form part of this specification, illustrate embodiments of the present application and, together with the general description of the present application given above and the detailed description of the embodiments given below, serve to explain the principles of the present application.

[0039] These and other features of this application will become apparent from the following description of preferred forms of embodiments given as non-limiting examples, with reference to the accompanying drawings.

[0040] It should also be understood that although this application has been described with reference to some specific examples, those skilled in the art can certainly implement many other equivalent forms of this application.

[0041] The above and other aspects, features and advantages of this application will become more apparent when taken in conjunction with the accompanying drawings and in view of the following detailed description.

[0042] Specific embodiments of this application are described thereafter with reference to the accompanying drawings; however, it should be understood that the claimed embodiments are merely examples of this application, which can be implemented in various ways. Well-known and / or repeated functions and structures are not described in detail to avoid unnecessary or redundant details that could obscure the application. Therefore, the specific structural and functional details claimed herein are not intended to be limiting, but merely serve as the basis and representative basis for the claims to teach those skilled in the art to use this application in a variety of substantially any suitable detailed structures.

[0043] This specification may use the phrases “in one embodiment,” “in another embodiment,” “in yet another embodiment,” or “in other embodiments,” all of which may refer to one or more of the same or different embodiments according to this application.

[0044] One data processing method according to an embodiment of this application, in response to a first user's operation on a client to set a theme for a target door lock, involves the client determining a target user identifier and a target theme identifier and generating a theme setting request. The client then uses the first user's first private key to generate a digital signature corresponding to the theme setting request. The client then sends the digital signature and the theme setting request to a server, which verifies the request. Upon successful verification, the server sends the digital signature, target user identifier, target theme identifier, and theme description information to the target door lock. The target door lock then retrieves the header file and multiple frame files based on the address in the theme description information and assembles them to obtain a dynamic theme file corresponding to the target theme identifier. This achieves reliable and efficient configuration of dynamic themes for the target door lock, meeting the user's personalized dynamic theme setting needs and improving the user experience.

[0045] like Figure 1As shown, the data processing method of this application embodiment can be applied to a system architecture including a client, a server, and a target door lock. The client, server, and target door lock have communication connections and can interact with each other. For example, the client can establish a short-range communication connection with the target door lock via Bluetooth, WiFi, etc., and the client can establish a communication connection with the server via WiFi, 4G, 5G, etc. The target door lock can establish a communication connection with the server via WiFi, 4G, 5G, etc. The client can be an application, software, or a combination of hardware and software installed on the target electronic device, such as a mobile phone, tablet, laptop, desktop computer, or wearable device. The server can be located on a cloud server. The target door lock is a smart door lock with a display screen; exemplarily, the target door lock can have at least an external display screen. The smart door lock has one or more unlocking methods, including fingerprint unlocking, password unlocking, facial recognition unlocking, palm vein unlocking, etc. There can be one or more target door locks.

[0046] In this embodiment of the application, the first user is a user who logs into the client to perform operations. The first user can set dynamic themes for themselves or others on the target door lock. Before performing theme setting operations, the first user needs to log in to the client and bind the client they are using to the target door lock.

[0047] For the login process, existing client login methods or other possible login methods can be used. For example, the first user can enter login information on the client, causing the client to send a login request including the login information to the server. After the server verifies the login information, it generates a session identifier (sessionId) and returns it to the client, thus providing the client with a valid session identifier. Optionally, the login information can be an SMS verification code corresponding to a mobile phone number, the first user's username / password, or the first user's biometric information.

[0048] For the binding process, existing client-smart lock binding methods or other possible binding methods can be used. For example, the first user enters the user identity information to be bound in the target lock's settings interface. This user identity information is the information the first user used when logging into the client, such as mobile phone number, username, etc. Upon receiving the user identity information, the target lock generates a QR code image including a communication key and a lock identifier (such as the lock's serial number), and displays the QR code image on its screen. The user can scan this QR code image using the client. The client parses the communication key and lock identifier, then generates an authorization key (such as an AES key), encrypts the authorization key and user identity information using the communication key, generates a binding request, and sends the binding request to the target lock. The target lock uses the communication key to decrypt the received binding request, verifies the decrypted user identity information, and if the verification is successful, saves the authorization key, completing the binding with the client. At this point, a secure communication channel is established between the client and the target lock, and the client gains operation rights over the target lock.

[0049] It should be noted that in some possible implementations, the target door lock can generate a corresponding communication key based on the user's identity information. The communication key generated by the target door lock may be different for different users. For the same user, if the user binds to the target door lock multiple times at different times using different or the same client, the communication keys generated during these multiple binding processes may be the same or different.

[0050] This application uses a client used by a first user as an example to introduce the data processing methods performed by the client, server, and target door lock during the topic setting and distribution process. For example... Figure 2 As shown, the method includes the following steps:

[0051] In step S101, the client responds to the first user's theme setting operation on the target door lock by determining the target user identifier and the target theme identifier.

[0052] In this embodiment, the first user and the user corresponding to the target user identifier can be the same user or different users. For example, if the target door lock is a home door lock, the first user can be user A in the household, and the user corresponding to the target user identifier can be user A, user B, or both user A and user B. As another example, if the target door lock is a hotel room door lock, the first user can be a hotel staff member, and the user corresponding to the target user identifier can be a customer checking into the room where the target door lock is located.

[0053] The client can provide a theme settings interface, which can display user IDs of one or more authorized users with unlocking permissions for the target lock, and theme IDs of one or more dynamic themes that can be configured. Theme settings operations may include: the first user selecting an authorized user ID in the theme settings interface, allowing the client to obtain the target user ID (lock_uid); the first user browsing and selecting a theme ID for a dynamic theme in the theme settings interface, allowing the client to obtain the target theme ID (themeId); and the first user clicking a theme settings button, for example, a button that says "Set this theme for the user".

[0054] In some embodiments of this application, the theme setting operation further includes setting the display time point and / or display duration corresponding to the target theme identifier, thereby meeting the user's different time point requirements and / or duration requirements for theme display and improving the user experience.

[0055] In step S102, the client generates a theme setting request based on the target user identifier and the target theme identifier.

[0056] In this embodiment, the client combines the target user identifier and the target topic identifier to generate a topic setting request. The server can verify the topic setting request using the target user identifier and the target topic identifier, and after successful verification, it sends the target user identifier and the target topic identifier to the target door lock.

[0057] In some embodiments of this application, generating a theme setting request based on a target user identifier and a target topic identifier includes: the client combining the target user identifier, the target topic identifier, the session identifier, and the lock identifier of the target lock to generate a theme setting request.

[0058] In this embodiment, when the client generates a topic setting request, in addition to using the target user identifier and the target topic identifier, it also uses the session identifier and the lock identifier of the target door lock. Subsequently, the server can verify the topic request through the target user identifier, the target topic identifier, the session identifier, and the lock identifier, thereby further improving reliability.

[0059] In step S103, the client uses the first user's first private key to generate a digital signature corresponding to the topic setting request.

[0060] In this embodiment, the client has the first user's first private key. The client uses the first user's first private key to perform digital signature processing on the topic setting request, generating a digital signature (sign) corresponding to the topic setting request.

[0061] In step S104, the client sends a digital signature and theme setting request to the server.

[0062] The client sends a digital signature and theme setting request to the server. The server then verifies the theme setting request. Once the verification is successful, the server sends the digital signature, target user identifier, target theme identifier, and theme description information corresponding to the target theme identifier to the target door lock.

[0063] In some embodiments of this application, the server includes a user theme setting interface, and the client sends a digital signature and theme setting request to the server, including: the client sending the digital signature and theme setting request to the server's user theme setting interface, thereby enabling the server to accurately process the digital signature and theme setting request.

[0064] In step S201, the server receives a digital signature and a topic setting request from the client used by the first user. The topic setting request includes at least the target user identifier and the target topic identifier.

[0065] Step S202: The server verifies the theme setting request.

[0066] The server verifies the topic request to determine its validity. For example, the server can verify whether the target user identifier and target topic identifier in the topic setting request match previously bound user identifiers and previously uploaded and published topic identifiers stored on the server or in the server-side database, thereby determining that they are valid identifiers.

[0067] In some embodiments of this application, the topic setting request further includes the client's session identifier and the target lock's lock identifier. Verification of the topic setting request includes:

[0068] The server verifies whether a binding relationship exists between the session identifier and the door lock identifier;

[0069] If a binding relationship exists and the target user identifier and target theme identifier are valid identifiers, the server will verify that the theme setting request passes the verification.

[0070] In this embodiment, the server verifies whether there is a binding relationship between the session identifier and the door lock identifier, and at the same time determines whether the target user identifier and the target topic identifier are valid identifiers. If there is a binding relationship and the target user identifier and the target topic identifier are valid identifiers, the server determines that the topic setting request has passed the verification. By combining two different verification methods to verify the topic setting request, the reliability is further improved.

[0071] In some embodiments of this application, if there is no binding relationship between the session identifier and the door lock identifier, or if the target user identifier and the target topic identifier are not valid identifiers, the server determines that the topic setting request verification fails and returns an error message to the client, so that the client can promptly notify the first user that the corresponding dynamic topic cannot be set, so that the first user can adjust the topic setting operation.

[0072] In step S203, if the topic setting request passes verification, the server sends the digital signature, target user identifier, target topic identifier, and topic description information corresponding to the target topic identifier to the target door lock. The topic description information includes at least the acquisition addresses of the header file and multiple frame files.

[0073] In this embodiment, if the theme setting request passes verification, the server sends a digital signature, a target user identifier, a target theme identifier, and theme description information corresponding to the target theme identifier to the target door lock. The theme description information includes at least a header file and the respective acquisition addresses of multiple frame files. Subsequently, the target door lock verifies the digital signature. If the verification passes and the dynamic theme file corresponding to the target theme identifier does not exist locally, it acquires the header file and multiple frame files based on the acquisition addresses. The header file represents the control parameters of the dynamic theme file, and each frame file represents the image data of each image frame in the dynamic theme file.

[0074] In some embodiments of this application, after sending the digital signature, target user identifier, target topic identifier, and topic description information corresponding to the target topic identifier to the target door lock, the method further includes: the server sending a message to the client indicating that the topic has been sent, thereby prompting the first user to indicate the current stage of topic setting, thus improving the user experience.

[0075] It should be noted that the first user or other users may have previously added one or more dynamic theme files on the server, and developers may also pre-set some dynamic theme files for users to choose from. These dynamic theme files, along with their corresponding theme identifiers and descriptions, are stored on the server or in a server-side database. The dynamic theme file corresponding to the target theme identifier can be one of the aforementioned added or pre-set dynamic theme files. The exemplary process of the first user or other users (collectively referred to as the second user) adding dynamic theme files will be further explained in the following embodiments.

[0076] In step S301, the target door lock receives a digital signature, a target user identifier, a target topic identifier, and topic description information corresponding to the target topic identifier from the server.

[0077] In step S302, the target door lock verifies the digital signature using the first user's first public key, the target user identifier, and the target subject identifier.

[0078] In this embodiment, the target door lock has a first public key of the first user obtained directly or indirectly from the client. The target door lock uses the first public key to decrypt the digital signature and obtain a first hash value. Using the same hash algorithm as when the digital signature was generated, the target user identifier and the target subject identifier are hashed to obtain a second hash value. If the first hash value is consistent with the second hash value, the digital signature verification is determined to be successful; otherwise, the digital signature verification is determined to be unsuccessful.

[0079] It is understandable that when the client generates a digital signature in step S103, if the subject setting request also includes a session identifier and a lock identifier of the target lock, and both are used to generate the digital signature, then the session identifier and lock identifier can also be used accordingly when calculating the second hash value in this step. The session identifier can be sent to the target lock by the server previously or along with the digital signature; the lock identifier can be the lock identifier currently stored by the target lock itself.

[0080] In step S303, if the target door lock passes the digital signature verification and there is no dynamic theme file corresponding to the target theme identifier in its local cache, it uses the address to retrieve the header file and multiple frame files from the database in sequence.

[0081] In this embodiment, if the digital signature verification passes, it is determined whether a dynamic topic file corresponding to the target topic identifier exists in its local cache. If not, the header file and multiple frame files are retrieved from the database sequentially using the address. If the dynamic topic file exists, it is directly identified as the current dynamic topic of the target user identifier. This ensures that the header file and multiple frame files are only retrieved from the database when a dynamic topic file corresponding to the target topic identifier does not exist in the local cache, avoiding unnecessary data retrieval operations and reducing the consumption of computing resources. In some embodiments of this application, the database may be OSS (Object Storage Service).

[0082] In some embodiments of this application, if the digital signature verification fails, a topic setting failure message is sent to the server so that the server returns the topic setting failure message to the client, enabling the first user to confirm that the topic setting has failed.

[0083] In some embodiments of this application, the header file and multiple frame files are encrypted files. The target door lock uses the address to sequentially retrieve the header file and multiple frame files from the database, such as... Figure 3 As shown, the following steps are:

[0084] Step S3031: The target door lock retrieves the header file from the database using the header file retrieval address.

[0085] In some embodiments, the header file and multiple frame files corresponding to the acquisition address in the database may be pre-stored in the database by the client. The client pre-encrypts the original unencrypted header file and multiple frame files using an authorization key, and sends the encrypted header file and multiple frame files to the database. The target door lock can use the acquisition address of the header file to download the header file from the database, thereby obtaining the header file.

[0086] In other embodiments, these pre-stored encrypted files can also be added by other clients. Since other clients also need to log in and bind to the target lock before adding them, the target lock has the respective authorization keys for each client. When other clients add dynamic theme files, they can use their respective authorization keys to encrypt the header and frame files, and store these encrypted files in the database.

[0087] In step S3032, the target door lock decrypts the header file based on the authorization key to obtain the decrypted header file, and caches the decrypted header file.

[0088] The authorization key used in this step may be obtained from the first user's aforementioned client (e.g., key U1K1), from other clients of the first user (e.g., key U1K2), or from clients of other bound users (e.g., keys U2K1, U3K1, U3K2, etc.). It is understood that since the target lock possesses the authorization keys of all clients of all users bound to it, it has the corresponding decryption capability regardless of which client of which bound user added the dynamic theme file.

[0089] In this embodiment, after obtaining the header file, the target door lock decrypts the header file using the corresponding authorization key to obtain the decrypted header file, and then caches the decrypted header file.

[0090] In step S3033, the target door lock retrieves each frame file from the database sequentially using the acquisition address of each frame file.

[0091] By using an authorization key known only to the target lock and the corresponding client (not known to the server, database, or other parties), the header file and multiple frame files are encrypted, ensuring the confidentiality of the header file and each frame file during uploading (during the addition of dynamic theme files), downloading, and storage (during the setting and distribution of dynamic theme files), thus improving reliability.

[0092] In some embodiments of this application, the subject description information also includes the acquisition address of the summary file. The summary file includes at least the summary information of each of the multiple frame files. Before acquiring each frame file from the database in sequence using the acquisition address of each frame file, the method further includes: the target door lock acquiring the summary file from the database using the acquisition address of the summary file.

[0093] Using the address of each frame file, retrieve each frame file from the database sequentially, including:

[0094] The target door lock retrieves a frame file from the database based on the acquisition address of each frame file, and decrypts the current frame file based on the authorization key to obtain the currently decrypted frame file;

[0095] The target door lock uses the digest file to verify the currently decrypted frame file;

[0096] If the target door lock passes the verification of the currently decrypted frame file, it will cache the currently decrypted frame file.

[0097] If the target door lock fails to verify the currently decrypted frame file, it will discard the currently decrypted frame file.

[0098] In this embodiment, during the process of adding dynamic topic files, the summary information of multiple frame files is predetermined. A summary file is generated based on the summary information of each frame file. Simultaneously with sending the header file and multiple frame files to the database, the summary file is also sent to the database. The topic description information also includes the address for retrieving the summary file. Before retrieving each frame file sequentially from the database using its address, the target door lock first retrieves the summary file from the database using its address, so that the summary file can be used to verify each frame file subsequently.

[0099] After obtaining the digest file, the target door lock downloads each frame file sequentially according to the acquisition address. For each frame file retrieved from the database, it is decrypted using the authorization key to obtain the currently decrypted frame file. The digest file is then used to verify the currently decrypted frame file. If the verification passes, the currently decrypted frame file is cached. If the verification fails, the currently decrypted frame file is discarded. This method reduces the amount of data transmitted per transaction by acquiring and caching only verified decrypted frame files, thereby reducing network bandwidth and storage pressure on the target door lock, without affecting the assembly of the entire file in subsequent steps.

[0100] In some embodiments of this application, the currently decrypted frame file is verified using a digest file, including:

[0101] The target door lock uses a message digest algorithm to determine the current digest information of the currently decrypted frame file;

[0102] If a digest file exists that matches the current digest information, the target door lock determines that the verification of the currently decrypted frame file has passed.

[0103] In this embodiment, the target door lock uses an information digest algorithm to determine the current digest information of the currently decrypted frame file, and compares the current digest information with the digest information in the digest file. If there is a digest information in the digest file that is consistent with the current digest information, it is determined that the current decrypted frame file has passed the verification; otherwise, it is determined that the current decrypted frame file has failed the verification, thereby realizing the rapid verification of the current decrypted frame file.

[0104] In step S304, the target door lock assembles a dynamic theme file corresponding to the target theme identifier based on the header file and multiple frame files.

[0105] The target door lock assembles a dynamic theme file corresponding to the target theme identifier based on the cached decrypted header file and each cached decrypted frame file.

[0106] In some embodiments of this application, the summary information of each frame file in the summary file is the summary information of the target image frame corresponding to the frame file. The target image frame conforms to the target image format, and each decrypted frame file conforms to the target image format. The target image format is an image format that the display screen of the target door lock can play. The target image format includes, for example, RGB565, thereby ensuring that the display screen of the target door lock can directly play dynamic theme files.

[0107] For example, if the header file is header.bin, its retrieval address is the header URL; the frame files are frameX.bin (X = 1, 2, ..., n), their retrieval address is the frame URL; and the digest file is hash.bin, its retrieval address is the hash URL, then the process of obtaining the dynamic topic file corresponding to the target topic identifier is as follows:

[0108] First, download header.bin from the database using the header URL and decrypt it using the authorization key. Cache the decrypted header.bin. Then, download hash.bin from the database using the hash URL. Next, download frame1.bin from the database using the frame URL of frame1.bin and decrypt it using the authorization key. Convert the decrypted frame1.bin into an RGB565 image frame (target image frame). Identify the currently decrypted frame file and calculate its MD5 hash to obtain the digest information frame1.bin's MD5 hash. Compare frame1's MD5 hash with each MD5 hash in hash.bin. If a matching MD5 hash exists in hash.bin, the current decrypted frame file is verified and cached. If no matching MD5 hash exists in hash.bin, the decrypted frame1.bin fails verification and is discarded. After caching frame1, frame2.bin is downloaded from the database using its frame URL. This process continues until the last frameX.bin is downloaded and verified. Finally, the cached, decrypted header.bin and each frameX.bin are assembled to obtain the dynamic theme file corresponding to the target theme identifier. Understandably, if the header file or a particular frame file fails verification more than a preset number of times, the target lock can stop acquiring the corresponding file.

[0109] In step S305, the target door lock determines the target topic identifier as the current dynamic topic of the target user identifier.

[0110] The target lock determines the current dynamic theme with the target theme identifier themeId as the target user identifier lock_uid, and determines that the current dynamic theme is a downloaded and playable dynamic theme.

[0111] In some embodiments of this application, after determining the target topic identifier as the current dynamic topic of the target user identifier, the following steps are further included:

[0112] In step S308, the target door lock sends a topic setting completion message to the server.

[0113] In step S309, the server returns the theme setting completion information to the first user's client.

[0114] In this embodiment, after the target topic identifier is determined to be the current dynamic topic of the target user identifier, the target door lock sends topic setting completion information to the server, and the server returns the topic setting completion information to the first user's client, thereby enabling the first user to confirm that the dynamic topic setting is successful, thus improving the user experience.

[0115] In some embodiments of this application, after determining the target topic identifier as the current dynamic topic of the target user identifier, the method further includes:

[0116] Step S306: The target door lock responds to the unlocking operation and obtains the current user identifier;

[0117] In step S307, if the current user ID matches the target user ID, the target door lock uses its own display screen to play the current dynamic theme.

[0118] In this embodiment, in response to an unlocking operation, the target lock determines the current user identifier based on detected unlocking data, which may include one or more of fingerprint data, facial data, and palm print data. If the current user identifier matches the target user identifier, it indicates that the user corresponding to the target user identifier has performed an unlocking operation. The target lock then uses its display screen to play the current dynamic theme, thereby accurately displaying the current dynamic theme to the user corresponding to the target user identifier. It is understood that if the current user identifier does not match the target user identifier, the target lock will not display the current dynamic theme to that user. This approach allows for customized dynamic unlocking themes for target users, providing a more intuitive and welcoming homecoming experience, enhancing user comfort and emotional connection.

[0119] For example, if user A sets a "Happy Birthday" dynamic theme for user B on a target door lock, when the target door lock detects a fingerprint unlocking operation, it can determine the current user's identity based on the fingerprint. If the current user's identity matches user B's, the target door lock will display the "Happy Birthday" dynamic theme on its screen and execute the unlocking operation. As another example, if user A sets a "Happy New Year" dynamic theme for both themselves and user B on the target door lock, when the target door lock detects an unlocking operation, it can determine the current user's identity based on the detected facial image. If the current user's identity matches user A's or user B's, the target door lock will display the "Happy New Year" dynamic theme on its screen and execute the unlocking operation.

[0120] This application uses a client used by a second user as an example to describe the data processing methods executed by the client, server, etc., during the topic addition process. For example... Figure 4 As shown, the method includes the following steps:

[0121] In step S401, the client responds to the second user's theme addition operation for the target door lock and obtains the initial theme file.

[0122] In this embodiment, the second user can be different from or the same as the first user. It should be noted that the client used by the second user during the theme addition process can be a different client or the same client used during the theme setting and distribution process; this application does not limit this. The initial theme file may include animated images or short videos, and the theme addition operation may include selecting animated images or short videos from locally stored data (such as a local photo album).

[0123] In step S402, the client converts the initial theme file into a target animation according to the target animation format and the display parameters of the display screen on the target door lock.

[0124] In this embodiment, the target animated image format includes any of the lightweight animated image formats such as GIF, WebP, and APNG, so that the added dynamic theme can reduce the consumption of storage and bandwidth while ensuring image quality. The client first converts the initial theme file into an initial animated image according to the target dynamic format, and then adjusts the size, resolution, and frame rate of the initial animated image according to the display parameters of the display screen on the target door lock to obtain the target animated image, so that the display screen of the target door lock can play the target animated image.

[0125] In step S403, the client parses the target animation to obtain the target header file and multiple target frame files. The target header file represents the control parameters of the target animation, and each target frame file represents the image data of each image frame in the target animation.

[0126] In this embodiment, the target animation consists of a header file and multiple frame files. The client parses the target animation to obtain the target header file representing the control parameters and the target frame files representing the image data of each image frame.

[0127] In some embodiments of this application, the target animation format includes a graphics exchange format. When the target animation is in a graphics exchange format, the target animation is parsed to obtain a target header file and multiple target frame files, such as... Figure 6 As shown, it includes the following steps:

[0128] In step S4031, the client reads the file header and logical screen descriptor of the target animation. If the logical screen descriptor indicates the existence of a global color table, the target header file is determined based on the file header, logical screen descriptor, and global color table of the target animation.

[0129] In this embodiment, the target animated image format includes a graphics exchange format, i.e., GIF format. When the target animated image is in graphics exchange format, the client first reads the file header (first 6 bytes, GIF87a or GIF89a) and logical screen descriptor (the last 7 bytes after the first 6 bytes, LSD) of the target animated image, determines whether the logical screen descriptor indicates the existence of a global color table, and if so, uses the file header, logical screen descriptor and global color table of the target animated image to form a target header file. In some embodiments, header.bin is used to represent the target header file.

[0130] In some embodiments of this application, if the logical screen descriptor indicates that a global color table does not exist, the target header file is determined using the file header of the target animation and the logical screen descriptor.

[0131] In step S4032, the client cyclically parses the image frame data of the target animation after the logical screen descriptor. Each image frame data includes an extended block, a sub-block buffer of the extended block, an image descriptor, a local color table, a minimum encoding size, and an image sub-block.

[0132] In this embodiment, the client parses each image frame data in a loop. Each image frame data includes an extended block (0x21), a sub-block buffer of the extended block, an image descriptor (0x2C), a local color table, a minimum coding size (LZW), and an image sub-block.

[0133] In step S4033, the client obtains each target frame file based on the parsed image frame data after parsing the end identifier of the target animation.

[0134] In this embodiment, if the end identifier (0x3B) of the target animation is parsed, it means that the parsing of all image frame data has been completed. Each target frame file is obtained based on the parsed image frame data. In some embodiments, frameX.bin is used to represent each target frame file, where X = 1, 2, ..., n, and n is the number of image frame data.

[0135] When the target animation is in a graphics exchange format, the target header file is determined by using the target animation's file header, logical screen descriptor, and global color table, and each target frame file is determined by using the data of each image frame, thus improving the accuracy of the target header file and each target frame file.

[0136] In step S404, the client obtains the dynamic theme file to be added based on the target header file and each target frame file.

[0137] In this embodiment, the client can determine the target header file and each target frame file as the topic file to be added.

[0138] In some embodiments of this application, the dynamic theme file to be added is obtained based on the target header file and each target frame file, such as... Figure 5 As shown, it includes the following steps:

[0139] In step S4041, the client uses a message digest algorithm to determine the first digest information corresponding to the target header file and the second digest information corresponding to each target frame file.

[0140] In this embodiment, the MD5 hash corresponding to the target header file is calculated using an information digest algorithm to determine the first digest information, and the MD5 hash corresponding to each target frame file is calculated using the information digest algorithm to determine the second digest information.

[0141] In some embodiments of this application, each second summary information is a summary information of a target image frame corresponding to a target frame file. The target image frame conforms to a target image format. Each target frame file can be first converted into multiple BMP image frames, and then each BMP image frame can be converted into a target image frame according to the target image format. The target image format is an image format that the display screen of the target door lock can play, such as RGB565.

[0142] In step S4042, the client determines the digest file based on the first digest information and each of the second digest information.

[0143] In this embodiment, the client concatenates the first digest information and each of the second digest information one by one to determine the digest file. The target door lock can then use the digest file to verify the header file and each frame file downloaded from the database.

[0144] In step S4043, the client uses the authorization key corresponding to the target door lock to encrypt the target header file and each target frame file respectively, to obtain the encrypted header file and each frame file.

[0145] In this embodiment, the client uses the authorization key corresponding to the target door lock (i.e., the authorization key generated during the binding process) to encrypt the target header file and all target frame files, thereby obtaining the encrypted header file and each frame encrypted file.

[0146] In step S4044, the client obtains the dynamic theme file to be added based on the header encryption file, the frame encryption files, and the digest file.

[0147] In this embodiment, the client identifies the header encryption file, each frame encryption file, and the digest file as the dynamic theme file to be added, thereby ensuring the confidentiality and integrity of the dynamic theme file to be added.

[0148] For example, if the target animated image is a GIF and the target header file is header.bin, then first, the data of each image frame is converted into multiple BMP image frames, then each BMP image frame is converted into an RGB565 image frame. MD5 is calculated for each RGB565 image frame, generating an MD5 array (i.e., each second digest information). MD5 is calculated for header.bin, generating header_md5 (i.e., the first digest information). The header_md5 is then concatenated with the MD5s of each frame in the MD5 array and written to hash.bin (i.e., the digest file). The hash.bin content format is: the first 16 bytes: the MD5 of header.bin; subsequent 16 bytes: the MD5 of each corresponding frameX.bin.

[0149] In step S405, the client stores the dynamic theme file to be added into the database.

[0150] The client uploads the dynamic theme files to be added to the database, which stores them separately and returns the corresponding storage addresses to the client.

[0151] In step S406, the client sends the topic description information corresponding to the dynamic topic file to be added and the door lock identifier of the target door lock to the server. The topic description information corresponding to the dynamic topic file to be added also includes the address for obtaining the summary file.

[0152] In this embodiment, the theme description information corresponding to the dynamic theme file to be added includes the respective acquisition addresses (i.e., the aforementioned storage addresses) of the header encrypted file, each frame encrypted file, and the digest file. It may also include version, file type, width and height, size, splitGif information, etc. The client sends the theme description information and the lock identifier of the target lock to the server. When the server subsequently distributes the dynamic theme, it can distribute the theme description information to the target lock.

[0153] In step S501, the server responds by receiving the theme description information corresponding to the dynamic theme file to be added and the door lock identifier of the target door lock from the client, and establishes a theme record corresponding to the theme description information of the dynamic theme file to be added.

[0154] In this embodiment, after receiving the theme description information corresponding to the dynamic theme file to be added and the door lock identifier of the target door lock sent by the client, the server establishes a theme record corresponding to the theme description information of the dynamic theme file to be added, so as to facilitate the subsequent search for the corresponding dynamic theme file.

[0155] In step S502, the server associates the topic record with the door lock identifier.

[0156] The server associates the topic record with the lock identifier of the target lock to ensure that the corresponding dynamic topic is accurately sent to the target lock in the future.

[0157] In some possible implementations, the descriptive information of the added dynamic theme files, such as the theme name and illustrations, can be accessed by the clients used by one or more users who have bound the target lock. This allows these users to understand which dynamic themes are currently supported for the target lock and choose the dynamic theme file they or others have added, based on their needs.

[0158] By applying the above technical solutions, the embodiments of this application can achieve at least the following beneficial effects:

[0159] Enhance user experience and interactivity: Personalized dynamic themes can be set and distributed through the client and played when the lock is unlocked locally, giving users an immersive dynamic image the moment the lock is opened, thereby improving user comfort and emotional connection.

[0160] Enhanced client stickiness and feature exploration: Users can browse, select, and distribute diverse dynamic themes within the client, motivating them to continue using the client and fostering long-term engagement.

[0161] To ensure data security and integrity: QR codes are used to exchange communication keys and generate authorization keys during device binding, and the parsed header.bin and frameX.bin are encrypted during transmission to ensure the confidentiality of dynamic theme files during uploading, downloading, and storage. Furthermore, by utilizing the digest file verification mechanism, corrupted frames can be effectively detected and discarded, ensuring the integrity and reliability of the displayed content.

[0162] Reduce bandwidth and storage overhead: Dynamic topics are broken down into header files and frame files, and only the required frames are downloaded and cached. At the same time, a lightweight animation format and an on-demand fetching mechanism are used to reduce the amount of data transmitted at one time, thereby reducing network bandwidth and device storage pressure.

[0163] Easy to integrate and expand: All core processes in this solution are completed in the client, server and door lock device, without the need for additional complex hardware support. Dynamic theme uploading, distribution and display can be realized through standardized interfaces, which facilitates secondary development and function upgrades.

[0164] This application also proposes a client, such as... Figure 7As shown, it includes: a first determining module, used to determine a target user identifier and a target theme identifier in response to a first user's theme setting operation on a target door lock; a generating module, used to generate a theme setting request based on the target user identifier and the target theme identifier; a signing module, used to generate a digital signature corresponding to the theme setting request using a first private key of the first user; and a first sending module, used to send the digital signature and the theme setting request to a server, so that after the server verifies the theme setting request, it sends the digital signature, the target user identifier, the target theme identifier, and theme description information corresponding to the target theme identifier to the target door lock, wherein the theme description information includes at least: the acquisition addresses of a header file and multiple frame files, and the header file and the multiple frame files can be assembled to obtain a dynamic theme file corresponding to the target theme identifier.

[0165] This application also proposes a server-side implementation, such as... Figure 8 As shown, it includes: a first receiving module, configured to receive a digital signature and a topic setting request from a client used by a first user, wherein the topic setting request includes at least a target user identifier and a target topic identifier; and a sending module, configured to verify the topic setting request, and if the topic setting request passes verification, send the digital signature, the target user identifier, the target topic identifier, and topic description information corresponding to the target topic identifier to a target door lock, wherein the topic description information includes at least: the acquisition addresses of a header file and multiple frame files, so that the target door lock, under the condition of meeting the target conditions, can sequentially obtain the header file and the multiple frame files from the database, assemble them into a dynamic topic file corresponding to the target topic identifier, and determine the target topic identifier as the current dynamic topic of the target user identifier, wherein the target conditions include that the digital signature is verified using the first user's first public key, the target user identifier, and the target topic identifier, and that there is no dynamic topic file corresponding to the target topic identifier in the local cache of the target door lock.

[0166] This application also proposes a door lock, such as... Figure 9As shown, the system includes: a second receiving module, configured to receive a digital signature, a target user identifier, a target topic identifier, and topic description information corresponding to the target topic identifier from a server, wherein the topic description information includes at least: the acquisition addresses of a header file and multiple frame files; a verification module, configured to verify the digital signature using a first user's first public key, the target user identifier, and the target topic identifier; an acquisition module, configured to, if the digital signature verification is successful and there is no dynamic topic file corresponding to the target topic identifier in its local cache, sequentially acquire the header file and the multiple frame files from the database using the acquisition addresses; an assembly module, configured to assemble a dynamic topic file corresponding to the target topic identifier based on the header file and the multiple frame files; and a second determining module, configured to determine the target topic identifier as the current dynamic topic of the target user identifier.

[0167] This application also proposes a computer-readable storage medium storing a computer program / instructions thereon, which, when executed by a processor, implements the steps of the data processing method as described in the various embodiments of this application.

[0168] The application also proposes a computer program product, including a computer program / instructions that, when executed by a processor, implement the steps of the data processing method as described in the various embodiments of this application.

[0169] The processors mentioned above can be general-purpose processors, including CPUs, NPs (Network Processors), etc.; they can also be DSPs (Digital Signal Processors), ASICs (Application Specific Integrated Circuits), FPGAs (Field Programmable Gate Arrays), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.

[0170] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially 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 described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state drive), etc.

[0171] The above embodiments are merely exemplary embodiments of this application and are not intended to limit this application. The scope of protection of this application is defined by the claims. Those skilled in the art can make various modifications or equivalent substitutions to this application within its substance and scope of protection, and such modifications or equivalent substitutions should also be considered to fall within the scope of protection of this application.

Claims

1. A data processing method, characterized in that, Applied to the client side, including: In response to the first user's theme setting operation on the target door lock, determine the target user identifier and the target theme identifier; A theme setting request is generated based on the target user identifier and the target theme identifier; Using the first user's first private key, generate a digital signature corresponding to the topic setting request; The digital signature and the topic setting request are sent to the server, so that after the server verifies the topic setting request, it sends the digital signature, the target user identifier, the target topic identifier, and the topic description information corresponding to the target topic identifier to the target door lock. The topic description information includes at least the database retrieval addresses of the header file and multiple frame files. The header file and the multiple frame files can be assembled to obtain a dynamic topic file corresponding to the target topic identifier. The header file and the multiple frame files are encrypted files encrypted with an authorization key. Only the target door lock and the client have the authorization key. The step of generating a theme setting request based on the target user identifier and the target theme identifier includes: combining the target user identifier, the target theme identifier, the session identifier, and the door lock identifier of the target door lock to generate the theme setting request. The session identifier is obtained from the server. The session identifier and the door lock identifier are used by the server to verify whether there is a binding relationship between the session identifier and the door lock identifier. If the binding relationship exists and the target user identifier and the target theme identifier are valid identifiers, the theme setting request is verified by the server.

2. The data processing method as described in claim 1, characterized in that, Also includes: In response to the second user's theme addition operation for the target door lock, an initial theme file is obtained; The initial theme file is converted into a target animation file according to the target animation format and the display parameters of the display screen on the target door lock; The target animation is parsed to obtain a target header file and multiple target frame files. The target header file represents the control parameters of the target animation, and each of the target frame files represents the image data of each image frame in the target animation. The dynamic theme file to be added is obtained based on the target header file and each of the target frame files; The dynamic theme file to be added is stored in the database, and the theme description information corresponding to the dynamic theme file to be added and the door lock identifier of the target door lock are sent to the server.

3. The data processing method as described in claim 2, characterized in that, The step of obtaining the dynamic theme file to be added based on the target header file and each of the target frame files includes: Using an information digest algorithm, a first digest information corresponding to the target header file and a second digest information corresponding to each of the target frame files are determined; Determine the summary file based on the first summary information and each of the second summary information; Using the authorization key corresponding to the target door lock, the target header file and each of the target frame files are encrypted respectively to obtain the encrypted header file and each frame file; The dynamic theme file to be added is obtained based on the header encryption file, each of the frame encryption files, and the digest file. The theme description information corresponding to the dynamic theme file to be added also includes the address for obtaining the digest file.

4. The data processing method as described in claim 2, characterized in that, The target animated image format includes a Graphics Interchange Format (GUID). When the target animated image is in GUID format, parsing the target animated image to obtain a target header file and multiple target frame files includes: Read the file header and logical screen descriptor of the target animation; if the logical screen descriptor indicates the existence of a global color table, determine the target header file based on the file header of the target animation, the logical screen descriptor, and the global color table. The target animation is parsed in a loop for each image frame data following the logical screen descriptor; If the end identifier of the target animation is parsed, each target frame file is obtained according to the parsed image frame data. Each image frame data includes an extension block, a sub-block cache of the extension block, an image descriptor, a local color table, a minimum encoding size, and an image sub-block.

5. A data processing method, characterized in that, Applied to the server side, including: The client used by the first user receives a digital signature and a topic setting request, the topic setting request including at least the target user identifier, the target topic identifier, the client's session identifier, and the target door lock identifier; Verifying the topic setting request includes: verifying whether there is a binding relationship between the session identifier and the door lock identifier; If the binding relationship exists and the target user identifier and the target theme identifier are valid identifiers, the theme setting request is determined to pass verification; If the topic setting request is verified, the digital signature, the target user identifier, the target topic identifier, and the topic description information corresponding to the target topic identifier are sent to the target door lock. The topic description information includes at least the acquisition addresses of the header file and multiple frame files, so that the target door lock can sequentially retrieve the header file and the multiple frame files from the database under the condition that the target conditions are met, assemble them into a dynamic topic file corresponding to the target topic identifier, and determine the target topic identifier as the current dynamic topic of the target user identifier. The target conditions include that the digital signature is verified using the first user's first public key, the target user identifier, and the target topic identifier, and that there is no dynamic topic file corresponding to the target topic identifier in the target door lock's local cache. The header file and the multiple frame files are encrypted files encrypted with an authorization key, and only the target door lock and the client have the authorization key.

6. The data processing method as described in claim 5, characterized in that, Also includes: In response to receiving from the client the theme description information corresponding to the dynamic theme file to be added and the door lock identifier of the target door lock, a theme record corresponding to the theme description information of the dynamic theme file to be added is established; Associate the subject record with the door lock identifier.

7. A data processing method, characterized in that, Applied to the target door lock, including: If the server verifies the topic setting request received from the client, the server receives a digital signature, a target user identifier, a target topic identifier, and topic description information corresponding to the target topic identifier. The topic description information includes at least the acquisition addresses of the header file and multiple frame files. The digital signature is verified using the first user's first public key, the target user identifier, and the target topic identifier; If the digital signature verification is successful and there is no dynamic theme file corresponding to the target theme identifier in its local cache, the header file and the multiple frame files are obtained from the database in sequence using the obtained address. The header file and the multiple frame files are encrypted files encrypted with the authorization key. Only the target door lock and the client used by the first user have the authorization key. Based on the header file and the multiple frame files, a dynamic theme file corresponding to the target theme identifier is assembled. The target topic identifier is determined as the current dynamic topic of the target user identifier; The server-side verification process for the theme setting request includes: verifying whether there is a binding relationship between the client's session identifier and the target lock's lock identifier in the theme setting request; and determining that the theme setting request passes verification if the binding relationship exists and the target user identifier and the target theme identifier are valid identifiers.

8. The data processing method as described in claim 7, characterized in that, The step of using the obtained address to sequentially retrieve the header file and the multiple frame files from the database includes: The header file is retrieved from the database using the address where the header file is located; Based on the authorization key obtained from the first user's client, the header file is decrypted to obtain a decrypted header file, and the decrypted header file is cached. Using the acquisition address of each frame file, each frame file is sequentially retrieved from the database.

9. The data processing method as described in claim 8, characterized in that, The topic description information also includes the address for obtaining the summary file. The summary file includes at least the summary information of each of the plurality of frame files. Before obtaining each of the frame files from the database in sequence using the address for obtaining each of the frame files, the method further includes: obtaining the summary file from the database using the address for obtaining the summary file. The step of sequentially retrieving each frame file from the database using the acquisition address of each frame file includes: Each time a frame file is retrieved from the database based on the retrieval address of a frame file, the retrieved current frame file is decrypted based on the authorization key to obtain the currently decrypted frame file; The digest file is used to verify the currently decrypted frame file; If the currently decrypted frame file passes verification, the currently decrypted frame file is cached. If the currently decrypted frame file fails verification, the currently decrypted frame file is discarded.

10. The data processing method as described in claim 7, characterized in that, After determining the target topic identifier as the current dynamic topic of the target user identifier, the method further includes: In response to the unlocking operation, obtain the current user identifier; If the current user identifier matches the target user identifier, the current dynamic theme is played on its own display screen.

11. A client, characterized in that, include: The first determining module is used to determine the target user identifier and the target theme identifier in response to the first user's theme setting operation on the target door lock; The generation module is used to generate a theme setting request based on the target user identifier and the target theme identifier, including: combining the target user identifier, the target theme identifier, the session identifier, and the door lock identifier of the target door lock to generate the theme setting request, wherein the session identifier is obtained from the server, and the session identifier and the door lock identifier are used by the server to verify whether there is a binding relationship between the session identifier and the door lock identifier. If the binding relationship exists and the target user identifier and the target theme identifier are valid identifiers, the theme setting request is verified by the server. The signature module is used to generate a digital signature corresponding to the topic setting request using the first private key of the first user; The first sending module is used to send the digital signature and the topic setting request to the server, so that after the server verifies the topic setting request, it sends the digital signature, the target user identifier, the target topic identifier, and topic description information corresponding to the target topic identifier to the target door lock. The topic description information includes at least: the database retrieval addresses of the header file and multiple frame files, the header file and the multiple frame files can be assembled to obtain a dynamic topic file corresponding to the target topic identifier, and the header file and the multiple frame files are encrypted files encrypted with an authorization key. Only the target door lock and the client have the authorization key.

12. A server, characterized in that, include: The first receiving module is configured to receive a digital signature and a topic setting request from a client used by the first user. The topic setting request includes at least a target user identifier, a target topic identifier, a session identifier of the client, and a lock identifier of the target lock. The distribution module is used to verify the topic setting request, including: verifying whether there is a binding relationship between the session identifier and the door lock identifier; if the binding relationship exists and the target user identifier and the target topic identifier are valid identifiers, determining that the topic setting request passes verification; if the topic setting request passes verification, distributing the digital signature, the target user identifier, the target topic identifier, and topic description information corresponding to the target topic identifier to the target door lock, wherein the topic description information includes at least the acquisition addresses of the header file and multiple frame files, so that the target door lock can sequentially obtain the header file and the multiple frame files from the database under the condition of meeting the target conditions, assemble them into a dynamic topic file corresponding to the target topic identifier, and determine the target topic identifier as the current dynamic topic of the target user identifier, wherein the target conditions include that the digital signature is verified successfully using the first user's first public key, the target user identifier, and the target topic identifier, and that there is no dynamic topic file corresponding to the target topic identifier in the target door lock's local cache, and that the header file and the multiple frame files are encrypted files encrypted with an authorization key, and that only the target door lock and the client possess the authorization key.

13. A door lock, characterized in that, include: The second receiving module is used to receive a digital signature, a target user identifier, a target topic identifier, and topic description information corresponding to the target topic identifier from the server when the server verifies the topic setting request received from the client. The topic description information includes at least the acquisition addresses of a header file and multiple frame files. The verification module is used to verify the digital signature using the first user's first public key, the target user identifier, and the target topic identifier; The acquisition module is used to, when the digital signature verification is passed and there is no dynamic theme file corresponding to the target theme identifier in its local cache, acquire the header file and the multiple frame files from the database in sequence using the acquisition address. The header file and the multiple frame files are encrypted files encrypted with an authorization key, and only the target door lock and the client used by the first user have the authorization key. An assembly module is used to assemble a dynamic theme file corresponding to the target theme identifier based on the header file and the multiple frame files. The second determining module is used to determine the target topic identifier as the current dynamic topic of the target user identifier; The server-side verification process for the theme setting request includes: verifying whether there is a binding relationship between the client's session identifier and the target lock's lock identifier in the theme setting request; and determining that the theme setting request passes verification if the binding relationship exists and the target user identifier and the target theme identifier are valid identifiers.

14. A computer-readable storage medium having a computer program / instructions stored thereon, characterized in that, When executed by a processor, the computer program / instructions implement the steps of the data processing method as described in any one of claims 1-4, 5-6, or 7-10.

15. A computer program product comprising a computer program / instructions, characterized in that, When executed by a processor, the computer program / instructions implement the steps of the data processing method as described in any one of claims 1-4, 5-6, or 7-10.