Equipment unlocking method and device, wearable equipment, storage medium and product
By receiving and verifying the terminal device's unlock request in the dual operating system of the wearable device, determining the device status, and performing mode-adaptive unlocking, the problems of unlocking convenience and security in the dual operating system are solved, and the security and convenience are improved.
Patent Information
- Application Number
- CN202411161602.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-22
- Publication Date
- 2026-03-03
AI Technical Summary
How can we improve the convenience and security of unlocking wearable devices while ensuring the safety of property and data privacy, especially in wearable devices with dual operating systems, to achieve a fast and secure unlocking process?
The wearable device receives unlock requests from the terminal device through its first and second operating systems, verifies the user's identity, and determines whether the device status meets the unlocking prerequisites. It then uses the verification information to perform unlocking processing in different operating modes, including verifying the unlocking prerequisites in the second operating system and unlocking the device when the conditions are met, thereby reducing power consumption.
While ensuring security, it improves the ease of unlocking wearable devices, saves device power consumption, and enables a fast and intelligent unlocking process in different operating modes.
Smart Images

Figure CN121600618A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of wearable device technology, and in particular to a device unlocking method, apparatus, wearable device, storage medium and product. Background Technology
[0002] With the continuous development of electronic technology, wearable devices have acquired increasingly rich functions, such as payment and health monitoring capabilities. Therefore, effectively ensuring the security of assets and data privacy associated with wearable devices has become a concern for many users. To protect asset security and data privacy, wearable devices often offer a screen lock function; users must unlock the device before using it. Summary of the Invention
[0003] This application provides a device unlocking method, apparatus, wearable device, storage medium, and product, improving the convenience and security of unlocking. The technical solution is as follows:
[0004] On one hand, a device unlocking method is provided, executed by a wearable device, the wearable device including a first operating system and a second operating system; the wearable device is communicatively connected to a terminal device; the method includes:
[0005] The system receives an unlock request sent by the terminal device through the first operating system and / or the second operating system. The unlock request is used to request the unlocking of the wearable device, and the unlock request carries verification information for unlocking the wearable device.
[0006] The first operating system and / or the second operating system are used to determine whether the current state of the wearable device meets the unlocking prerequisites.
[0007] If the current state of the wearable device meets the unlocking prerequisites, the wearable device is unlocked based on the verification information and the current operating mode of the wearable device.
[0008] On the other hand, a device unlocking device is provided, deployed in a wearable device, the wearable device including a first operating system and a second operating system; the wearable device is communicatively connected to a terminal device; the device includes:
[0009] The first receiving module is configured to receive an unlocking request sent by the terminal device through the first operating system and / or the second operating system. The unlocking request is used to request the unlocking of the wearable device, and the unlocking request carries verification information for unlocking the wearable device.
[0010] The determination module is used to determine, through the first operating system and / or the second operating system, whether the current state of the wearable device meets the unlocking prerequisites;
[0011] The unlocking module is used to unlock the wearable device based on the verification information and the current operating mode of the wearable device, provided that the current state of the wearable device meets the unlocking prerequisites.
[0012] On the other hand, a wearable device is provided, the wearable device including a memory and a processor; the memory stores at least one piece of program code, the at least one piece of program code being loaded and executed by the first core controller and the second core controller to implement the device unlocking method described in any of the above implementations.
[0013] On the other hand, a computer-readable storage medium is provided, wherein at least one piece of program code is stored therein, the at least one piece of program code being loaded and executed by a processor to implement the device unlocking method described in any of the above implementations.
[0014] On the other hand, a computer program product is provided, the computer program product storing at least one piece of program code, the at least one piece of program code being executed by a processor to implement the device unlocking method as described in any of the above implementations.
[0015] In some embodiments of this application, a method for unlocking a wearable device with dual systems is provided. When the terminal device requests to unlock the wearable device, the subsequent verification and unlocking process is only performed if the preconditions for unlocking are verified. This improves the convenience and security of unlocking. Attached Figure Description
[0016] Figure 1 A schematic diagram illustrating the implementation environment of a device unlocking method according to an exemplary embodiment of this application is shown;
[0017] Figure 2 A flowchart illustrating a device unlocking method as shown in an exemplary embodiment of this application is provided.
[0018] Figure 3 This application shows a schematic diagram of an interface for unlocking a wearable device by a terminal device, illustrating an exemplary embodiment of the present application.
[0019] Figure 4 A logic diagram of a wearable device in a first operating mode, as illustrated in an exemplary embodiment of this application, is shown.
[0020] Figure 5 A schematic diagram illustrating a device unlocking method according to an exemplary embodiment of this application is shown;
[0021] Figure 6 A flowchart illustrating a device unlocking method as shown in an exemplary embodiment of this application is provided.
[0022] Figure 7 A flowchart illustrating a device unlocking method as shown in an exemplary embodiment of this application is provided.
[0023] Figure 8 A flowchart illustrating a device unlocking method as shown in an exemplary embodiment of this application is provided.
[0024] Figure 9 A flowchart illustrating a device unlocking method as shown in an exemplary embodiment of this application is provided.
[0025] Figure 10 A logic diagram of a wearable device in a first operating mode, as illustrated in an exemplary embodiment of this application, is shown.
[0026] Figure 11 A logic diagram of a terminal device illustrated in an exemplary embodiment of this application is shown;
[0027] Figure 12 A block diagram illustrating a device unlocking apparatus according to an exemplary embodiment of this application is shown;
[0028] Figure 13 A block diagram of a wearable device illustrated in an exemplary embodiment of this application is shown. Detailed Implementation
[0029] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.
[0030] In this article, "multiple" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. The character " / " generally indicates that the preceding and following related objects have an "or" relationship.
[0031] It should be noted that all information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.), and signals involved in this application have been authorized by the user or fully authorized by all parties, and the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions. For example, the current state of the wearable device involved in this application was obtained with full authorization.
[0032] Please refer to Figure 1This diagram illustrates an implementation environment for a device unlocking method according to an exemplary embodiment of this application. (Reference) Figure 1 The implementation environment includes: a wearable device 101 and a terminal device 102; the wearable device 101 and the terminal device 102 establish a communication connection; for example, the wearable device 101 and the terminal device 102 establish a wireless communication connection or a wired communication connection; the wireless communication connection can be a Bluetooth connection or a Wi-Fi connection, etc. In some embodiments, the wearable device 101 can be a smartwatch, a smart bracelet, or smart glasses, etc.; the terminal device 102 can be a smartphone, a tablet computer, a laptop computer, or an in-vehicle terminal, etc. In some embodiments of this application, taking the establishment of a wireless communication connection between the wearable device 101 and the terminal device 102, and the wireless communication connection being a Bluetooth connection, as an example, the terminal device 102 can be any device with a Bluetooth module.
[0033] Wearable device 101 includes at least two operating systems; in some embodiments, wearable device 101 includes two operating systems, namely a first operating system and a second operating system, which can communicate with each other. For example, the power consumption of the first operating system is greater than that of the second operating system, and / or, the performance of the first operating system is higher than that of the second operating system. For example, the power consumption of the first operating system being greater than that of the second operating system can be understood as the standby power consumption of the first operating system being greater than that of the second operating system, or the power consumption of the first operating system when processing business being greater than that of the second operating system when processing the same business, or the overall power consumption of the first operating system being greater than the overall power consumption of most of the second operating systems. For example, the performance of the first operating system being higher than that of the second operating system can be understood as the computing power or hardware resources of the first operating system being greater than those of the second operating system. The first operating system can be a smart operating system; for example, the first operating system is an Android operating system or an iOS operating system; the second operating system can be an embedded operating system; for example, the second operating system is a Real-Time Operating System (RTOS). Furthermore, wearable device 101 can include two core processors, namely a first core processor and a second core processor, the first core processor being used to run the first operating system, and the second core processor being used to run the second operating system. It should be noted that the first core processor and the second core processor can be two independently packaged chips, or they can be packaged in the same chip. Alternatively, the wearable device 101 includes a multi-core processor, with the multiple cores of the processor running the first operating system and the second operating system respectively.
[0034] In other embodiments, the wearable device 101 may include two or more operating systems, that is, the wearable device 101 may include at least three operating systems; the at least three operating systems include at least two embedded operating systems and at least one smart operating system; or, the at least three operating systems include at least two smart operating systems and at least one embedded operating system. Accordingly, the wearable device 101 includes at least three core processors for running at least three operating systems, one of which is used to run one operating system; or, the wearable device 101 includes multiple cores of a processor for running at least three operating systems.
[0035] Please refer to Figure 2 This document illustrates a flowchart of a device unlocking method according to an exemplary embodiment of this application. In some embodiments of this application, the executing entity is a wearable device, which includes a first operating system and a second operating system. The power consumption of the first operating system is greater than that of the second operating system; and / or, the performance of the first operating system is higher than that of the second operating system; the wearable device is communicatively connected to a terminal device. See also... Figure 2 The method includes:
[0036] Step 201: Receive an unlock request sent by the terminal device through the first operating system and / or the second operating system. The unlock request is used to request the unlocking of the wearable device and carries verification information for unlocking the wearable device.
[0037] In some embodiments, when the terminal device unlocks itself, it requests to unlock the wearable device. Accordingly, this step can be: when the terminal device detects an unlock operation, it verifies the unlock operation; if the unlock operation verification is successful, the terminal device unlocks and sends an unlock request to the first operating system and / or second operating system of the wearable device, and the wearable device receives the unlock request sent by the terminal device through the first operating system and / or second operating system. If the unlock operation verification fails, the terminal device displays a prompt message indicating that unlocking the terminal device has failed; in this case, the terminal device will not send an unlock request to the wearable device. The unlock operation can be a password unlock operation, fingerprint unlock operation, face unlock operation, or voiceprint unlock operation, etc. For example, please refer to... Figure 3 Wearable devices (such as smartwatches) communicate with terminal devices (such as mobile phones), and both wearable devices and terminal devices are in a locked state. The user enters an unlock password on the terminal device to unlock the terminal device, and after the terminal device is unlocked, it sends an unlock request to the wearable device to request the wearable device to unlock.
[0038] In some embodiments, the verification information is the verification information negotiated between the wearable device and the terminal device; for example, the verification information can be a token and a handle. Therefore, before this step, the wearable device and the terminal device need to negotiate a token and a handle. In some embodiments, when the first operating system and / or the second operating system detects a trigger operation on the unlock switch, a registration request is generated by the first operating system and / or the second operating system, and the first operating system and / or the second operating system send the registration request to the terminal device. The registration request is used to request the terminal device to generate a token. The first operating system and / or the second operating system receive the token sent by the terminal device, register the token, and generate a handle corresponding to the token. The first operating system and / or the second operating system store the token and the handle, and send the handle to the terminal device so that the terminal device saves the token and the handle.
[0039] In some embodiments, if one of the aforementioned trigger operation, registration request, token, handle, or other one or more of the first operating system and the second operating system obtains such an operation and requires processing by the other, the transmission can be made through a communication link between the first operating system and the second operating system.
[0040] For example, both the first and second operating systems of the wearable device store the token and handle. One possible implementation is as follows: the wearable device negotiates the token and handle with the terminal device through the first operating system. This process can be as follows: when the first operating system detects a trigger operation on the unlock switch, the wearable device generates a registration request through the first operating system and sends the registration request to the terminal device (e.g., sending the registration request to the terminal device through the first operating system or the second operating system). The registration request is used to request the terminal device to generate a token; the wearable device receives the token sent by the terminal device (e.g., receiving the token sent by the terminal device through the first operating system or the second operating system), registers the token, and generates a handle corresponding to the token; the wearable device stores the token and handle through the first and second operating systems and sends the handle to the terminal device (e.g., sending the handle to the terminal device through the first operating system or the second operating system), so that the terminal device saves the token and handle.
[0041] For example, please refer to Figure 4The first operating system comprises an application layer, an architecture layer, a hardware layer, and a Trusted Execution Environment (TEE). The application layer of the first operating system includes SettingsProvider, a watch unlocking module, and a status bar (SystemUI). The watch unlocking module includes the UnlockTrustAgentService. SystemUI includes KeyguardService, KeyguardViewMediator, KeyguardHostView, KeyguardSecurityContainer, and KeyguardPasswordView. The architecture layer of the first operating system includes WearUnlockManager, a first dual-core communication module, TrustAgentWrapper, TrustManagerService, LockSettingsService, SyntheticPasswordManage, and gatekeeper. The hardware layer of the first operating system includes gatekeeper. The TEE includes gatekeeper. The second operating system comprises applications, an architecture layer, and a driver layer. The applications of the second operating system include UITask and WatchUnlockTask. WatchUnlockTask includes the Unlock SDK and the Risk Assessment SDK. The architecture layer of the second operating system includes OAF and a second dual-core communication module.
[0042] When a user sets up the terminal device to unlock the wearable device, the user turns on the smart switch through the first operating system. At this time, the SettingsProvider changes the recorded state of the smart switch from off to on. When the UnlockTrustAgentService detects that the smart switch state has changed from off to on, it sends a registration request to WearUnlockManager. WearUnlockManager transmits the registration request to WatchUnlockTask through the first and second dual-core communication modules. WatchUnlockTask then transmits the registration request to the terminal device through the OAF. The terminal device receives the registration request, generates a token based on the registration request, and sends the token to WatchUnlockTask through the OAF. WatchUnlockTask then transmits the token through the first and second dual-core communication modules. The communication module transmits the token to WearUnlockManager, which in turn transmits it to UnlockTrustAgentService. UnlockTrustAgentService calls TrustAgentWrapper, which in turn calls TrustManagerService. TrustManagerService calls LockSettingsService, which in turn calls SyntheticPasswordManag to register the token (solid lines 1-14). SyntheticPasswordManag also generates a handle corresponding to the token and transmits this handle back to the second operating system and the terminal device, allowing them to store the token and handle. When generating the handle, SyntheticPasswordManag requires the user to enter their watch unlock password for authentication (solid lines 15-18).
[0043] In some embodiments, the wearable device can verify the user's identity before registering the token through the first operating system. Only if the user's identity verification is successful will the token be registered through the first operating system. If the user's identity verification fails, the token will not be registered, and subsequent processes such as generating a handle will not be executed, thereby improving the security of the wearable device and preventing untrusted terminal devices from being used to unlock the wearable device.
[0044] The process by which the wearable device verifies the user's identity through the first operating system can be as follows: the wearable device displays an input interface through the first operating system, the input interface being used to input the wearable device's unlock password and / or the terminal device's unlock password; receiving the wearable device's unlock password and / or the terminal device's unlock password input through the input interface; verifying the input wearable device's unlock password and / or the input terminal device's unlock password; if the input wearable device's unlock password and / or the input terminal device's unlock password are verified successfully, the user's identity verification is confirmed to be successful; if the input wearable device's unlock password and / or the input terminal device's unlock password are not verified, the user's identity verification is confirmed to be unsuccessful.
[0045] For example, please refer to Figure 5 The user turns on the unlock switch of the wearable device; when registering the token, the user enters the unlock password of the terminal device (and / or the unlock password of the wearable device) to verify the user's identity; if the user's identity is successfully verified, the terminal device generates a token and requests the wearable device to register the token and generate a handle corresponding to the token. After generating the handle, the wearable device returns the handle to the terminal device; the terminal device and the wearable device store the token and the handle. When the user unlocks the terminal device (using the terminal device's unlock password or biometrics), the terminal device uses the token and handle as verification information to request unlocking the wearable device.
[0046] Another feasible implementation: The wearable device negotiates a token and handle with the terminal device through a second operating system. This process can be as follows: When the second operating system detects a trigger operation on the unlock switch, it generates a registration request and sends it to the terminal device (e.g., through the first or second operating system). The registration request is used to request the terminal device to generate a token. The second operating system receives the token sent by the terminal device (e.g., through the first or second operating system), registers the token, and generates a handle corresponding to the token. The first and second operating systems store the token and handle, and the second operating system sends the handle to the terminal device (e.g., through either the first or second operating system) so that the terminal device can save the token and handle.
[0047] Similarly, wearable devices can verify the user's identity before registering the token through the second operating system. Only if the user's identity is verified will the token be registered through the second operating system; if the user's identity is not verified, the token will not be registered, and subsequent processes such as generating a handle will not be executed. This improves the security of the wearable device and prevents untrusted terminal devices from unlocking it. The process of verifying the user's identity through the second operating system is similar to the process of verifying the user's identity through the first operating system, and will not be elaborated further here.
[0048] In some embodiments, the process of storing the token and handle through the first operating system and the second operating system can be as follows: if the first operating system has Trusted Execution Environment (TEE) security firmware, the token and handle are stored in the TEE security firmware through the first operating system; if the first operating system does not have TEE security firmware, the token and handle are encrypted through the first operating system, and the encrypted token and handle are stored; and / or,
[0049] If the second operating system has a Trusted Execution Environment (TEE) security firmware, the token and handle are stored in the TEE security firmware through the second operating system; if the second operating system does not have a TEE security firmware, the token and handle are encrypted through the second operating system, and the encrypted token and handle are stored.
[0050] In some embodiments, when the first and second operating systems store tokens and handles, when the wearable device switches its current operating mode from the second operating mode to the first operating mode, the second operating system sends its stored tokens and handles to the first operating system. After successful verification based on the tokens and handles, the first operating system unlocks itself. The second operating mode refers to a mode where the second operating system is running or in a dormant state while the first operating system is shut down. The first and second operating modes are described in detail in the embodiments below. This embodiment provides a solution that allows users to switch from the second mode to the first mode without needing to unlock the device again if the device was already unlocked in the second mode, thus improving convenience while ensuring security. In some embodiments, the above method can also be applied only when switching from the second to the first operating mode while the device is being worn, thus eliminating the need for the user to unlock it again and further enhancing security.
[0051] Step 202: Determine whether the current state of the wearable device meets the preconditions for unlocking through the first operating system and / or the second operating system.
[0052] In some embodiments, the current state of the wearable device may include the wearing status and / or the distance between the wearable device and the terminal device; the wearing status is either worn or not worn. Accordingly, this step may be: the wearable device obtains the wearing status of the wearable device and / or the distance between the wearable device and the terminal device through a first operating system and / or a second operating system; based on the wearing status and / or the distance, it determines whether the current state of the wearable device meets the unlocking prerequisites.
[0053] The step of determining whether the current state of the wearable device meets the unlocking prerequisite based on the wearing state and / or connection state through the first operating system and / or the second operating system can be as follows: when the wearing state is "worn", the wearable device determines that the current state of the wearable device meets the unlocking prerequisite through the first operating system and / or the second operating system; and / or, when the distance is less than a preset distance, the wearable device determines that the current state of the wearable device meets the unlocking prerequisite; and / or, when the wearing state is "worn" and the distance is less than the preset distance, the wearable device determines that the current state of the wearable device meets the unlocking prerequisite; and / or, when the wearing state is "not worn", the wearable device determines that the current state of the wearable device does not meet the unlocking prerequisite through the first operating system and / or the second operating system; and / or, when the distance is not less than the preset distance, the wearable device determines that the current state of the wearable device does not meet the unlocking prerequisite.
[0054] If the current state of the wearable device meets the unlocking prerequisites, the wearable device determines that the terminal device is a trusted terminal device, and subsequent verification and unlocking processes can proceed. If the current state of the wearable device does not meet the unlocking prerequisites, the wearable device determines that the terminal device is an untrusted terminal device, and subsequent verification and unlocking processes are not performed. In some embodiments, if the first operating system and the second operating system determine whether the current state of the wearable device meets the unlocking prerequisites, the terminal device is determined to be a trusted terminal device only if both the first operating system and the second operating system determine that the current state of the wearable device meets the unlocking prerequisites. If either operating system determines that the current state of the wearable device does not meet the unlocking prerequisites, the terminal device is determined to be an untrusted terminal device.
[0055] In some embodiments, if the wearable device determines that the terminal device is an untrusted terminal device, the wearable device sends a notification message to the terminal device through a first operating system and / or a second operating system. The notification message indicates that the terminal device failed to unlock the wearable device. For example, the wearable device uses the second operating system to determine whether the current state of the wearable device meets the unlocking prerequisites; if it determines that the current state of the wearable device does not meet the unlocking prerequisites, the wearable device sends a notification message to the first operating system through the second operating system, and the first operating system forwards the notification message to the terminal device to notify the terminal device that unlocking the wearable device failed.
[0056] In some embodiments of this application, when a terminal device requests to unlock a wearable device, the unlocking prerequisites are first verified in the second operating system (an operating system with lower power consumption). If the unlocking prerequisite verification fails, there is no need to wake up the first operating system (an operating system with higher power consumption) to perform subsequent verification and unlocking processes, thereby saving power consumption of the wearable device.
[0057] In some embodiments, when the wearing state of the wearable device changes from wearing to not wearing, the wearable device automatically locks, thereby achieving automatic locking of the wearable device and ensuring its security.
[0058] In some embodiments of this application, determining whether the current state of the wearable device meets the unlocking prerequisites may be optional, since different products have different security level requirements. Therefore, the solutions in the embodiments of this application may also be combined without limiting the determination of whether the current state of the wearable device meets the unlocking prerequisites.
[0059] Step 203: If the current state of the wearable device meets the preconditions for unlocking, unlock the wearable device based on the verification information and the current operating mode of the wearable device.
[0060] In some embodiments, the current operating mode of the wearable device may include one or more of a first operating mode, a second operating mode, and a third operating mode. For example, the wearable device may have a first operating mode and a second operating mode; or the wearable device may have a first operating mode and a third operating mode; or the wearable device may have only one of the first operating mode, the second operating mode, or the third operating mode, which can be specifically set according to product requirements. In some embodiments, when the wearable device has multiple (two or more) operating modes, a control can be provided for the user to select.
[0061] In some embodiments, the first operating mode refers to an operating mode in which the first operating system and the second operating system can switch control. Understandably, in the first operating mode, control can be switched between the first and second operating systems according to business needs or user triggers. When switched to the first operating system, the second operating system may or may not enter hibernation; conversely, when switched to the second operating system, the first operating system may or may not enter hibernation. In some embodiments, the low-power operating system can run continuously in the first operating mode without entering hibernation. In some embodiments, the low-power operating system only hibernates when there are no business needs, such as in situations where the screen is off. For example, hibernation can be understood as some modules stopping work, thereby reducing power consumption. These settings can be configured according to product requirements, and there can even be multiple hibernation states. Therefore, in the first operating mode, neither the first nor the second operating system is powered off, allowing for rapid wake-up and activation of relevant functions when control is switched as needed, enabling intelligent and rapid control switching. Thus, the first operating mode can also be called a fully intelligent mode or a hybrid mode. In some embodiments, switching control to a first operating system or a second operating system can be understood as the operating system with control controlling some or all peripheral devices, such as controlling some or all of the display screen, buttons, and microphone. For example, switching control can be understood as switching control over the display screen; it can also be understood as switching control over other peripheral devices. Generally, the operating system with control can control the display screen, while the operating system without control can hibernate or run in the background (e.g., not controlling the display screen).
[0062] For example, the power consumption of the first operating system is greater than that of the second operating system; and / or, the performance of the first operating system is higher than that of the second operating system; when the first operating system has control (i.e., when the control is switched to the first operating system), the second operating system may not hibernate or shut down, but may run in the background, for example, controlling some sensors to collect data and then providing it to the first operating system, similar to an auxiliary module of the first operating system; when the second operating system has control, the first operating system may hibernate, which can save power as much as possible. When a business needs to use the resources of the first operating system, the first operating system can be woken up. At this time, control may be switched to the first operating system, or control may not be switched, but the first operating system may be allowed to process in the background. At this time, the second operating system still has the display right of the display screen.
[0063] For example, the second operating mode refers to a mode where the second operating system is running or hibernating while the first operating system is shut down. This mode may have the lowest overall power consumption, but processing performance is not high; therefore, the second operating mode can be called a lightweight intelligent mode or a low-power mode.
[0064] The above operating modes can be switched according to user control. For example, some wearable devices only have a first operating mode and a second operating mode, and users can control the wearable device to switch between the first and second operating modes through controls. In some embodiments, switching can also be performed according to business needs.
[0065] For example, the third operating mode refers to a mode in which both the first and second operating systems are running when there is business processing. For instance, the first and second operating systems do not enter sleep mode when the wearable device's screen is on, but instead run at their maximum performance. In some embodiments, control in the third operating mode always belongs to the high-performance operating system (e.g., the first operating system). Therefore, the third operating mode can also be called a high-performance mode. This mode is not mandatory and can be configured according to product requirements.
[0066] When the wearable device is currently operating in the first and / or third operating modes, it unlocks itself using the first and second operating systems respectively, based on authentication information. When the wearable device is currently operating in the third operating mode, it unlocks itself using the second operating system, based on authentication information.
[0067] In some embodiments of this application, the terminal device uses the terminal device to unlock the wearable device according to the user's operation scenario, so that the unlock password of the wearable device can protect property security and privacy data, while making the unlocking of the wearable device more intelligent and improving the user experience.
[0068] In some embodiments, the steps of unlocking the wearable device based on verification information through a first operating system may be as follows: the wearable device compares the verification information with stored verification information; if the verification information and the stored verification information are the same, it is determined that the verification information has been verified and the wearable device is unlocked; if the verification information and the stored verification information are different, it is determined that the verification information has failed and the wearable device is not unlocked.
[0069] When the unlock request originates from the terminal device, unlocking a wearable device means closing the wearable device's lock screen without triggering the screen to light up; for example, please refer to... Figure 3After unlocking the wearable device, the watch face is displayed, but the screen remains off. This means that unlocking the wearable device via the terminal only affects whether the device is unlocked; it does not cause the screen to light up. When the unlock request originates from the wearable device itself, unlocking the wearable device means turning off the lock screen and triggering the screen to light up.
[0070] The verification information includes a token and a handle. Correspondingly, the process by which the wearable device compares this verification information with stored verification information through the first operating system can be as follows: the wearable device compares the token included in the verification information with the stored token, and compares the handle included in the verification information with the stored handle. If the token included in the verification information is the same as the stored token, and the handle included in the verification information is the same as the stored handle, then the verification of the verification information is deemed successful. If the token included in the verification information is different from the stored token, or the handle included in the verification information is different from the stored handle, then the verification of the verification information is deemed unsuccessful.
[0071] In some embodiments of this application, a TEE environment is not required for the first operating system. When the first operating system has a TEE, the wearable device stores the verification information in the TEE of the first operating system, and the comparison between the verification information carried in the unlock request and the stored verification information is also performed in the TEE of the first operating system. When the first operating system does not have a TEE, the wearable device can encrypt the verification information through the first operating system (e.g., using a hash256 encryption algorithm) to obtain the unlock credential, and store the unlock credential; the comparison between the verification information carried in the unlock request and the stored verification information also involves comparing whether the stored unlock credential and the unlock credential carried in the unlock request are the same.
[0072] The step of the wearable device comparing the stored unlock credential with the unlock credential carried in the unlock request through the first operating system can be as follows: the terminal device sends an unlock request carrying an unlock credential, which is encrypted based on verification information; the wearable device determines through the first operating system whether the stored unlock credential and the unlock credential carried in the unlock request are the same. Here, the unlock credential = hash(token, MD5(handle)).
[0073] In some embodiments of this application, since the TEE is a dedicated space in memory for digital rights management, mobile payment, and privacy data protection, it has strong security. Therefore, when the first operating system has a TEE, the verification information is stored and compared in the TEE first, thereby improving security. When the first operating system does not have a TEE, software encryption is used to store and compare the verification information to enhance security.
[0074] In other embodiments, the process by which the wearable device unlocks itself using the second operating system based on authentication information is similar to the process by which the wearable device unlocks itself using the first operating system based on authentication information, and will not be described again here. Furthermore, the second operating system does not require a TEE environment; details can be found in the relevant description of the first operating system, and will not be repeated here.
[0075] Please continue to refer to this. Figure 4When a user unlocks the terminal device, the terminal device sends an unlock request to WatchUnlockTask via OAF. The risk assessment SDK in WatchUnlockTask determines whether the current state of the wearable device meets the unlock prerequisites (2-4 in the dotted section). If the current state of the wearable device meets the unlock prerequisites, the Unlock SDK in WatchUnlockTask verifies the verification information carried in the unlock request. If the verification information carried in the unlock request passes the verification, the second operating system is unlocked. Furthermore, WatchUnlockTask transmits the unlock request to WearUnlockManager via the first dual-core communication module and the second dual-core communication module. WearUnlockManager then transmits the unlock request to UnlockTrustAgentService. UnlockTrustAgentService uses TrustAgentWrapper, which in turn calls TrustManagerService. TrustManagerService then calls LockSettingsService, which in turn calls SyntheticPasswordManager to verify the authentication information carried in the unlock request (dashed lines 5-13). If the authentication information in the unlock request is verified, UnlockTrustAgentService calls KeyguardServic, which in turn calls KeyguardViewMediator to close the lock screen interface of the first operating system (dashed lines 14-15). Furthermore, UnlockTrustAgentService will send the first unlock result to WearUnlockManager; WearUnlockManager will transmit the first unlock result to WatchUnlockTask through the first dual-core communication module and the second dual-core communication module. WatchUnlockTask will summarize the first unlock result and the second unlock result and transmit the first unlock result and the second unlock result to the terminal device through OAF.
[0076] In some embodiments of this application, the second operating system is mainly responsible for data communication with the terminal device; and a risk assessment SDK is set in the second operating system to verify the security of the terminal device. Only when the terminal device is secure will the wearable device be unlocked based on the unlocking command of the terminal device, thereby improving the security of the wearable device.
[0077] In some embodiments, after receiving the first unlocking result and the second unlocking result, the terminal device updates the fluid cloud text based on the first unlocking result and the second unlocking result; wherein, the step of the terminal device updating the fluid cloud text based on the first unlocking result and the second unlocking result may be: the terminal device displays a prompt message, the prompt message being used to indicate the first unlocking result and the second unlocking result.
[0078] In some embodiments of this application, when a terminal device requests to unlock a wearable device, the unlocking prerequisites are verified; only if the unlocking prerequisites are verified successfully will the subsequent verification and unlocking process be performed; otherwise, if the unlocking prerequisites are not verified successfully, the subsequent verification and unlocking process will not be performed, thereby saving power consumption of the wearable device.
[0079] In some embodiments of this application, the first operating system and the second operating system are unlocked by the terminal device, thereby improving both the convenience and security of unlocking.
[0080] Please refer to Figure 6 This document illustrates a flowchart of a device unlocking method according to an exemplary embodiment of this application. In some embodiments of this application, the executing entity is a wearable device, which includes a first operating system and a second operating system. The power consumption of the first operating system is greater than that of the second operating system; and / or, the performance of the first operating system is higher than that of the second operating system; the wearable device is communicatively connected to a terminal device. In some embodiments of this application, the current operating mode of the wearable device is described as a first operating mode and / or a third operating mode, and an example is taken where the terminal device sends an unlocking request to the second operating system of the wearable device. See also... Figure 6 The method includes:
[0081] Step 601: The wearable device receives an unlock request sent by the terminal device through the second operating system. The unlock request is used to request the unlocking of the wearable device and carries verification information for unlocking the wearable device.
[0082] Both the first and second operating systems of the wearable device have Bluetooth modules. These two operating systems can share the same Bluetooth module; alternatively, they can be connected to separate Bluetooth modules. In some embodiments of this application, the second operating system of the wearable device communicates with the terminal device via the Bluetooth module. In this step, the terminal device sends an unlock request to the wearable device through the second operating system, and the wearable device receives the unlock request from the terminal device through the second operating system.
[0083] Step 602: The wearable device uses the second operating system to determine whether the current state of the wearable device meets the preconditions for unlocking.
[0084] In some embodiments, this step is the same as step 201, and will not be described again here.
[0085] In some embodiments, the first operating system may determine whether the current state of the wearable device meets the unlocking prerequisites; correspondingly, this step can be replaced by: the second operating system sending an unlock request to the first operating system, and the first operating system determining whether the current state of the wearable device meets the unlocking prerequisites based on the unlock request. In other embodiments, the first and second operating systems may determine whether the current state of the wearable device meets the unlocking prerequisites; correspondingly, this step can be replaced by: the wearable device determining whether its current state meets the unlocking prerequisites through the second operating system; the second operating system sending an unlock request to the first operating system, and the first operating system determining whether the current state of the wearable device meets the unlocking prerequisites based on the unlock request. Only when both the first and second operating systems determine that the current state of the wearable device meets the unlocking prerequisites is the terminal device determined to be a trusted terminal device, and step 603 is executed.
[0086] Step 603: If the current state of the wearable device meets the unlocking prerequisites and the current operating mode of the wearable device is the first operating mode and / or the third operating mode, the wearable device performs unlocking verification through the second operating system. If the second operating system successfully verifies the verification information, the second operating system is unlocked.
[0087] If the verification information fails in the second operating system, the second operating system will not be unlocked. In some embodiments of this application, the first and second operating systems of the wearable device each have a screen lock password function. If the verification information passes in the second operating system, the screen lock function of the second operating system is unlocked. The steps for unlocking the screen lock function of the second operating system can be: closing the lock screen interface of the second operating system without triggering the wearable device to light up.
[0088] Step 604: The wearable device sends the verification information to the first operating system through the second operating system, and the first operating system verifies the verification information to unlock it. If the first operating system successfully verifies the verification information, the first operating system is unlocked.
[0089] If the first operating system fails to verify the verification information, the first operating system will not be unlocked. In some embodiments of this application, the first operating system of the wearable device and the first operating system each have a screen lock password function. If the first operating system successfully verifies the verification information, the screen lock function of the first operating system is unlocked. The steps for unlocking the screen lock function of the first operating system can be: closing the screen lock interface of the first operating system without triggering the wearable device to light up.
[0090] In some embodiments, when the wearable device is currently operating in a first operating mode and / or a third operating mode and the first operating system is unlocked while the second operating system is not unlocked, the wearable device is in an unlocked state when the first operating system is running in the foreground; and the wearable device switches from an unlocked state to a locked state when the second operating system is running in the foreground. In other embodiments, when the wearable device is currently operating in a first operating mode and / or a third operating mode and the first operating system is not unlocked while the second operating system is unlocked, the wearable device is in an unlocked state when the second operating system is running in the foreground; and the wearable device switches from an unlocked state to a locked state when the first operating system is running in the foreground. This ensures that the screen lock functions of the two operating systems are independent, which not only improves the security of the wearable device but also reduces the coupling between the screen lock functions of the two operating systems.
[0091] In some embodiments, the wearable device uses a second operating system to verify the authentication information. If the second operating system verifies the authentication information, the second operating system is not unlocked temporarily. Instead, the second operating system sends the authentication information to the first operating system, which then verifies the authentication information. If the first operating system verifies the authentication information, that is, if both the first and second operating systems verify the authentication information, the first operating system unlocks the first operating system, and the second operating system unlocks the second operating system.
[0092] Step 605: After unlocking the first operating system, the wearable device sends the first unlocking result to the second operating system through the first operating system. The second operating system then aggregates the first and second unlocking results and sends them to the terminal device.
[0093] The first unlocking result is the unlocking result of the first operating system, and the first unlocking result can be either successful or unsuccessful. The second unlocking result is the unlocking result of the second operating system, and the second unlocking result can also be either successful or unsuccessful. In some embodiments of this application, the second operating system aggregates the two unlocking results to the terminal device. Since the second operating system has lower power consumption, aggregating the unlocking results to the terminal device through the second operating system can reduce the power consumption of the wearable device.
[0094] In some embodiments, the first operating system of the wearable device communicates with the terminal device via a Bluetooth module; in this step, the first operating system can also summarize the unlocking results; correspondingly, step 605 can be replaced by: after unlocking the second operating system, the wearable device sends a second unlocking result to the first operating system through the second operating system; the first operating system summarizes the first unlocking result and the second unlocking result, and sends the first unlocking result and the second unlocking result to the terminal device; the first unlocking result is the unlocking result of the first operating system and the first unlocking result can be unlocking successfully or unlocking failed, and the second unlocking result is the unlocking result of the second operating system and the second unlocking result can be unlocking successfully or unlocking failed.
[0095] In other embodiments, the first operating system and the second operating system of the wearable device are respectively connected to the terminal device via Bluetooth module; in this step, the unlocking result can also be sent to the terminal device by their respective operating systems; accordingly, step 605 can be replaced by: after unlocking the first operating system, the wearable device sends the first unlocking result to the terminal device through the first operating system; after unlocking the second operating system, the wearable device sends the second unlocking result to the terminal device through the second operating system.
[0096] Step 606: If the current state of the wearable device does not meet the preconditions for unlocking, a notification message is sent to the terminal device through the second operating system. The notification message is used to indicate that the terminal device has failed to unlock the wearable device.
[0097] Alternatively, the first operating system may notify the terminal device that unlocking the wearable device has failed. Accordingly, step 606 can be replaced by: if the current state of the wearable device does not meet the preconditions for unlocking, sending a notification message from the second operating system to the first operating system, and then sending a notification message from the first operating system to the terminal device, the notification message indicating that the terminal device has failed to unlock the wearable device.
[0098] In some embodiments of this application, the first and second operating systems of the wearable device each possess a screen lock password function. The first and second operating systems independently verify the authentication information to control unlocking, thus ensuring that the screen lock functions of the two operating systems are independent. This not only improves the security of the wearable device but also reduces the coupling between the screen lock functions of the two operating systems. Furthermore, by using the second operating system of the wearable device to receive unlock requests and perform subsequent steps to request the first operating system to unlock the first operating system, the power consumption of the wearable device can be reduced due to the lower power consumption of the second operating system.
[0099] Please refer to Figure 7 This document illustrates a flowchart of a device unlocking method according to an exemplary embodiment of this application. In some embodiments of this application, the executing entity is a wearable device, which includes a first operating system and a second operating system. The power consumption of the first operating system is greater than that of the second operating system; and / or, the performance of the first operating system is higher than that of the second operating system; the wearable device is communicatively connected to a terminal device. In some embodiments of this application, the current operating mode of the wearable device is described as a first operating mode and / or a third operating mode, and an example is given where the terminal device sends an unlocking request to the second operating system of the wearable device. See also... Figure 7 The method includes:
[0100] Step 701: The wearable device receives an unlock request sent by the terminal device through the first operating system and the second operating system. The unlock request is used to request the unlocking of the wearable device, and the unlock request carries verification information for unlocking the wearable device.
[0101] In some embodiments of this application, the first operating system and the second operating system of the wearable device are respectively connected to the terminal device via Bluetooth module; in this step, the terminal device sends an unlock request to the wearable device through the first operating system and the second operating system, and the wearable device receives the unlock request sent by the terminal device through the first operating system and the second operating system.
[0102] Step 702: The wearable device uses the second operating system to determine whether the current state of the wearable device meets the preconditions for unlocking.
[0103] In some embodiments, this step is the same as step 201, and will not be described again here.
[0104] In other embodiments, the wearable device may also determine whether its current state meets the unlocking prerequisites through a first operating system; or the wearable device may determine whether its current state meets the unlocking prerequisites through both a first operating system and a second operating system. When the first and second operating systems determine whether the current state of the wearable device meets the unlocking prerequisites, the current state of the wearable device is determined to meet the unlocking prerequisites only if both operating systems determine that the current state of the wearable device does not meet the unlocking prerequisites.
[0105] Step 703: If the current state of the wearable device meets the preconditions for unlocking and the current operating mode of the wearable device is the first operating mode and / or the third operating mode, the wearable device performs unlocking verification on the verification information through the first operating system. If the first operating system successfully verifies the verification information, the first operating system is unlocked.
[0106] In some embodiments, this step is the same as step 603, and will not be described again here.
[0107] Step 704: The wearable device uses the second operating system to unlock and verify the verification information. If the second operating system successfully verifies the verification information, the second operating system is unlocked.
[0108] In some embodiments, this step is the same as step 604 in which the wearable device unlocks and verifies the verification information through the second operating system. If the verification information is successfully verified by the second operating system, the steps for unlocking the second operating system are the same and will not be described again here.
[0109] In some embodiments, the wearable device uses a first operating system to verify the verification information. If the first operating system verifies the verification information, the first operating system is not unlocked for the time being. Instead, the device waits for the second operating system to verify the verification information before each operating system unlocks its own operating system. That is, if both the first and second operating systems verify the verification information, the first operating system unlocks the first operating system, and the second operating system unlocks the second operating system.
[0110] Step 705: After unlocking the first operating system, the wearable device sends the first unlocking result to the second operating system through the first operating system, and the second operating system aggregates the first unlocking result and the second unlocking result and sends the first unlocking result and the second unlocking result to the terminal device.
[0111] The first unlock result is the unlock result of the first operating system, and the first unlock result can be either unlock successful or unlock failed. The second unlock result is the unlock result of the second operating system, and the second unlock result can be either unlock successful or unlock failed.
[0112] In some embodiments, the first operating system may also summarize the unlocking results in this step; correspondingly, step 705 can be replaced by: after unlocking the second operating system, the wearable device sends a second unlocking result to the first operating system through the second operating system; the first operating system summarizes the first unlocking result and the second unlocking result, and sends the first unlocking result and the second unlocking result to the terminal device; the first unlocking result is the unlocking result of the first operating system and the first unlocking result can be unlocking successful or unlocking failed, and the second unlocking result is the unlocking result of the second operating system and the second unlocking result can be unlocking successful or unlocking failed.
[0113] In other embodiments, the unlocking result can also be sent to the terminal device by the respective operating system in this step; accordingly, step 705 can be replaced by: after unlocking the first operating system, the wearable device sends the first unlocking result to the terminal device through the first operating system; after unlocking the second operating system, the wearable device sends the second unlocking result to the terminal device through the second operating system.
[0114] Step 706: If the current state of the wearable device does not meet the preconditions for unlocking, a notification message is sent to the terminal device through the second operating system. The notification message indicates that the terminal device has failed to unlock the wearable device.
[0115] Alternatively, the first operating system may notify the terminal device that unlocking the wearable device has failed. Accordingly, step 706 can be replaced by: if the current state of the wearable device does not meet the preconditions for unlocking, sending a notification message from the second operating system to the first operating system, and then sending a notification message from the first operating system to the terminal device, the notification message indicating that the terminal device has failed to unlock the wearable device.
[0116] In some embodiments of this application, the first and second operating systems of the wearable device each possess a screen lock password function. The first and second operating systems independently verify the authentication information to control unlocking, thus ensuring that the screen lock functions of the two operating systems are independent. This not only improves the security of the wearable device but also reduces the coupling between the screen lock functions of the two operating systems. Furthermore, by having the first and second operating systems of the wearable device receive unlock requests and trigger subsequent verification and unlocking processes, dual-core communication between the operating systems is reduced.
[0117] Please refer to Figure 8This document illustrates a flowchart of a device unlocking method according to an exemplary embodiment of this application. In some embodiments of this application, the executing entity is a wearable device, which includes a first operating system and a second operating system. The power consumption of the first operating system is greater than that of the second operating system; and / or, the performance of the first operating system is higher than that of the second operating system. The wearable device is communicatively connected to a terminal device. In some embodiments of this application, the current operating mode of the wearable device is described as a first operating mode and / or a third operating mode, and the example is taken where the terminal device sends an unlocking request to the second operating system of the wearable device. See also... Figure 8 The method includes:
[0118] Step 801: The wearable device receives the unlock request sent by the terminal device through the first operating system, and forwards the unlock request to the second operating system through the first operating system.
[0119] In some embodiments of this application, the first operating system of the wearable device communicates with the terminal device via a Bluetooth module; in this step, the terminal device sends an unlock request to the wearable device through the first operating system, the wearable device receives the unlock request sent by the terminal device through the first operating system, and forwards the unlock request to the second operating system through the first operating system.
[0120] Step 802: The wearable device uses the second operating system to determine whether the current state of the wearable device meets the preconditions for unlocking.
[0121] In some embodiments, this step is the same as step 201, and will not be described again here.
[0122] In other embodiments, after receiving an unlock request from a terminal device through a first operating system, the wearable device may not forward it to a second operating system, but instead directly determine through the first operating system whether the current state of the wearable device meets the preconditions for unlocking.
[0123] In other embodiments, after the wearable device receives an unlock request from the terminal device through the first operating system, it can also forward it to the second operating system. Then, the first and second operating systems determine whether the current state of the wearable device meets the unlock prerequisites. If both the first and second operating systems determine that the current state of the wearable device meets the unlock prerequisites, then the current state of the wearable device is deemed to meet the unlock prerequisites. If either operating system determines that the current state of the wearable device does not meet the unlock prerequisites, then the current state of the wearable device is deemed not to meet the unlock prerequisites.
[0124] Step 803: If the current state of the wearable device meets the preconditions for unlocking and the current operating mode of the wearable device is the first operating mode and / or the third operating mode, the wearable device performs unlock verification through the first operating system. If the first operating system successfully verifies the verification information, the first operating system is unlocked.
[0125] In some embodiments, this step is the same as step 603, and will not be described again here.
[0126] Step 804: The wearable device uses the second operating system to unlock and verify the verification information. If the second operating system successfully verifies the verification information, the second operating system is unlocked.
[0127] In some embodiments, this step is the same as step 604 in which the wearable device unlocks and verifies the verification information through the second operating system. If the verification information is successfully verified by the second operating system, the steps for unlocking the second operating system are the same and will not be described again here.
[0128] In some embodiments, the wearable device uses a first operating system to verify the verification information. If the first operating system verifies the verification information, the first operating system is not unlocked for the time being. Instead, the device waits for the second operating system to verify the verification information before each operating system unlocks its own operating system. That is, if both the first and second operating systems verify the verification information, the first operating system unlocks the first operating system, and the second operating system unlocks the second operating system.
[0129] Step 805: After unlocking the second operating system, the wearable device sends the second unlocking result to the first operating system through the second operating system; the first operating system aggregates the first unlocking result and the second unlocking result, and sends the first unlocking result and the second unlocking result to the terminal device.
[0130] The first unlock result is the unlock result of the first operating system, and the first unlock result can be either unlock successful or unlock failed. The second unlock result is the unlock result of the second operating system, and the second unlock result can be either unlock successful or unlock failed.
[0131] In some embodiments, the second operating system may also aggregate the first unlock result and the second unlock result; correspondingly, this step may be: the wearable device sends the first unlock result to the second operating system through the first operating system, aggregates the first unlock result and the second unlock result through the second operating system, and sends the first unlock result and the second unlock result to the terminal device.
[0132] Step 806: If the current state of the wearable device does not meet the preconditions for unlocking, a notification message is sent to the terminal device through the first operating system. The notification message indicates that the terminal device has failed to unlock the wearable device.
[0133] In some embodiments, if the current state of the wearable device does not meet the preconditions for unlocking, a notification message can also be sent to the terminal device through the second operating system. The notification message is used to indicate that the terminal device has failed to unlock the wearable device.
[0134] In some embodiments of this application, the first operating system and the second operating system of the wearable device each have a screen lock password function. The first operating system and the second operating system verify the verification information to achieve unlocking control, thereby realizing that the screen lock functions of the two operating systems are independent, which not only improves the security of the wearable device, but also reduces the coupling of the screen lock functions of the two operating systems.
[0135] Please refer to Figure 9 This document illustrates a flowchart of a device unlocking method according to an exemplary embodiment of this application. In some embodiments of this application, the executing entity is a wearable device, which includes a first operating system and a second operating system. The power consumption of the first operating system is greater than that of the second operating system; and / or, the performance of the first operating system is higher than that of the second operating system; the wearable device is communicatively connected to a terminal device. In some embodiments of this application, the second operating mode of the wearable device is used as an example for illustration. See also... Figure 9 The method includes:
[0136] Step 901: The wearable device receives an unlock request sent by the terminal device through the second operating system. The unlock request is used to request the unlocking of the wearable device and carries verification information for unlocking the wearable device.
[0137] In some embodiments, this step is the same as step 201, and will not be described again here.
[0138] Step 902: The wearable device uses the second operating system to determine whether the current state of the wearable device meets the preconditions for unlocking.
[0139] In some embodiments, this step is the same as step 202, and will not be described again here.
[0140] Step 903: If the current state of the wearable device meets the preconditions for unlocking and the current operating mode of the wearable device is the second operating mode, the wearable device performs unlock verification through the second operating system. If the second operating system successfully verifies the verification information, the second operating system is unlocked.
[0141] In some embodiments, the step of unlocking the second operating system can be: closing the lock screen of the first operating system without triggering the wearable device to light up. In this step, the wearable device can also notify the second operating system to unlock while the first operating system is running.
[0142] Step 904: If the current state of the wearable device does not meet the preconditions for unlocking, the wearable device sends a notification message to the terminal device through the second operating system. The notification message indicates that the terminal device has failed to unlock the wearable device.
[0143] In some embodiments, this step is the same as step 606, and will not be described again here.
[0144] Please refer to Figure 10 The second operating system comprises application programs, an architecture layer, and a driver layer. The application programs of the second operating system include UI Task and WatchUnlockTask. WatchUnlockTask includes the Unlock SDK and the Risk Assessment SDK. The architecture layer of the second operating system includes OAF and a second dual-core communication module. When a user unlocks the terminal device, the terminal device sends an unlock request to the second operating system via OAF (steps 1-2). After receiving the unlock request, the second operating system calls the Risk Assessment SDK in WatchUnlockTask to determine whether the current state of the wearable device meets the unlocking prerequisites. If the current state of the wearable device meets the unlocking prerequisites, the second operating system verifies whether the verification information carried in the unlock request is the same as the stored verification information. If the verification information carried in the unlock request is the same as the stored verification information, the UI Task is called to close the lock screen interface (steps 3-4). After closing the lock screen interface, the second operating system transmits the second unlock result to the terminal device via OAF (steps 5-6). The step of the second operating system verifying whether the verification information carried in the unlock request is the same as the stored verification information can be as follows: the unlock request sent by the terminal device carries an unlock credential, which is obtained by encryption based on the verification information; the wearable device determines whether the stored unlock credential is the same as the unlock credential carried in the unlock request through the first operating system. Here, the unlock credential = hash(token, MD5(handle)).
[0145] Please refer to Figure 11The terminal device comprises an application layer, an architecture layer, a hardware layer, and a TEE. The application layer includes persistent services (ONet), non-persistent services (OpSynergy), MSP, and OAF. OpSynergy includes the ubiquitous SDK, risk assessment SDK, OAF SDK, and Unlock SDK; MSP includes Trusted Device Service. The smart unlocking logic of the terminal device is primarily carried by OpSynergy, while ONet is responsible for monitoring unlocking operations and deleting unlock passwords. The ubiquitous SDK mainly provides the ability to display the unlocking fluid cloud, showing the first and second unlocking results of the wearable device based on fluid cloud text. The risk assessment SDK obtains the terminal device's status information and provides it to the wearable device for security-level unlocking judgments. The Unlock SDK generates tokens and stores the tokens and handles sent by the wearable device. The OAF SDK provides Bluetooth communication capabilities between the terminal device and the wearable device.
[0146] When the wearable device's primary operating system detects a trigger operation on the unlock switch, it receives a registration request from the primary operating system via OAF. The Unlock SDK generates a token based on the registration request and stores the token along with a handle sent by the wearable device (solid lines 1-2). When ONet listens for the unlock event of the terminal device, it uses the risk assessment SDK in OpSynergy to determine whether the terminal device and the wearable device are connected via the trusted device service in MSP. If the terminal device and the wearable device are connected, the risk assessment SDK determines that the terminal device is secure, and then obtains the verification information (token + handle) stored in the Unlock SDK. An unlock request is sent to the wearable device's primary operating system via OAF, carrying the verification information, to request the unlocking of the wearable device (dashed lines 1-5).
[0147] In some embodiments of this application, when a terminal device requests to unlock a wearable device, a second operating system (an operating system with lower power consumption) verifies the preconditions for unlocking and the subsequent verification and unlocking process, thereby saving power consumption of the wearable device.
[0148] Please refer to Figure 12 This illustration shows a block diagram of a device unlocking apparatus according to an exemplary embodiment of this application. The apparatus is deployed in a wearable device, which includes a first operating system and a second operating system. The apparatus includes:
[0149] The first receiving module 1201 is used to receive an unlocking request sent by the terminal device through a first operating system and / or a second operating system. The unlocking request is used to request the unlocking of the wearable device, and the unlocking request carries verification information for unlocking the wearable device.
[0150] The determination module 1202 is used to determine whether the current state of the wearable device meets the unlocking prerequisites through the first operating system and / or the second operating system;
[0151] The unlocking module 1203 is used to unlock the wearable device based on verification information and the current operating mode of the wearable device, provided that the current state of the wearable device meets the preconditions for unlocking.
[0152] In some embodiments, the unlocking module 1203 is used to unlock the wearable device based on verification information through the first operating system and the second operating system respectively when the current operating mode of the wearable device is the first operating mode and / or the third operating mode;
[0153] The first operating mode refers to the operating mode in which the first operating system and the second operating system can switch control. The third operating mode is described in detail in other embodiments.
[0154] In some embodiments, the first receiving module 1201 is configured to receive an unlocking request through a second operating system;
[0155] The unlocking module 1203 is used to unlock and verify the verification information through the second operating system, and unlock the first operating system if the second operating system verifies the verification information. It also sends the verification information to the first operating system through the second operating system, and unlocks the first operating system if the first operating system verifies the verification information.
[0156] In some embodiments, the first receiving module 1201 is configured to receive an unlocking request through a first operating system and a second operating system;
[0157] The unlocking module 1203 is used to unlock and verify the verification information through the first operating system, and to unlock the first operating system if the verification information is verified by the first operating system; and to unlock and verify the verification information through the second operating system, and to unlock the second operating system if the verification information is verified by the second operating system.
[0158] In some embodiments, the first receiving module 1201 is configured to receive an unlocking request sent by a terminal device through a first operating system;
[0159] The unlocking module 1203 is used to perform unlocking verification on the verification information through the first operating system, and to unlock the first operating system if the verification information is verified by the first operating system; and to forward the unlocking request to the second operating system through the first operating system, and to perform unlocking verification on the verification information through the second operating system, and to unlock the second operating system if the verification information is verified by the second operating system.
[0160] In some embodiments, the unlocking module 1203 is used to close the lock screen interface of the first operating system without triggering the wearable device to light up.
[0161] In some embodiments, the apparatus further includes:
[0162] A first sending module is configured to, after unlocking the first operating system, send a first unlocking result to a second operating system via the first operating system, and then, via the second operating system, aggregate the first and second unlocking results and send them to the terminal device; or...
[0163] The second sending module is used to send a second unlocking result to the first operating system through the second operating system after unlocking the second operating system; to aggregate the first and second unlocking results through the first operating system, and then send the first and second unlocking results to the terminal device; or...
[0164] The third sending module is used to send a first unlocking result to the terminal device through the first operating system after unlocking the first operating system; and to send a second unlocking result to the terminal device through the second operating system after unlocking the second operating system.
[0165] The first unlock result is the unlock result of the first operating system, and the second unlock result is the unlock result of the second operating system.
[0166] In some embodiments, the power consumption of the first operating system is greater than that of the second operating system; and / or the performance of the first operating system is higher than that of the second operating system.
[0167] In some embodiments, the unlocking module 1203 is used to verify the verification information through the second operating system when the current operating mode of the wearable device is the second operating mode; and to unlock the second operating system when the verification information is verified successfully; wherein, the second operating mode refers to the operating mode in which the second operating system is in a running state or a hibernation state while the first operating system is in a closed state.
[0168] In some embodiments, the apparatus further includes:
[0169] The fourth sending module is used to send a notification message to the terminal device through the first operating system and / or the second operating system when the current state of the wearable device does not meet the preconditions for unlocking. The notification message is used to indicate that the terminal device has failed to unlock the wearable device.
[0170] In some embodiments, the determining module 1202 is used to obtain the wearing status of the wearable device and / or the distance between the wearable device and the terminal device through a first operating system and / or a second operating system; and to determine whether the current status of the wearable device meets the unlocking prerequisite based on the wearing status and / or distance.
[0171] In some embodiments, the determining module 1202 is configured to determine, when the wearing state is "worn," that the current state of the wearable device meets the unlocking prerequisite; and / or,
[0172] The determining module 1202 is used to determine whether the current state of the wearable device meets the unlocking prerequisite when the distance is less than a preset distance; and / or,
[0173] The determining module 1202 is used to determine whether the current state of the wearable device meets the unlocking prerequisite when the wearing state is "worn" and the distance is less than a preset distance; and / or,
[0174] The determination module 1202 is used to determine, when the wearable device is in an unworn state, that the current state of the wearable device does not meet the unlocking prerequisites; and / or,
[0175] The determination module 1202 is used to determine that the current state of the wearable device does not meet the preconditions for unlocking when the distance is not less than a preset distance.
[0176] In some embodiments, the device further includes:
[0177] The locking module is used to automatically lock the wearable device when the wearing status changes from wearing to not wearing.
[0178] In some embodiments, the apparatus further includes:
[0179] The fifth sending module is used to generate a registration request through the first operating system and / or the second operating system when the first operating system and / or the second operating system detects the first trigger operation on the unlock switch. The first operating system and / or the second operating system send the registration request to the terminal device. The registration request is used to request the terminal device to generate a token.
[0180] The registration module is used to receive tokens sent by terminal devices through a first operating system and / or a second operating system. The first operating system and / or the second operating system register the tokens and generate handles corresponding to the tokens.
[0181] Storage module for storing tokens and handles via a first operating system and / or a second operating system;
[0182] The sixth sending module is used to send a handle to the terminal device so that the terminal device can save the token and the handle.
[0183] In some embodiments, the apparatus further includes:
[0184] The transmission module is used to transmit data via a communication link between the first operating system and the second operating system when one of the first operating system or the second operating system obtains one or more of the trigger operation, registration request, token, or handle, and the other needs to process it.
[0185] In the case where the first and second operating systems store tokens and handles, the device also includes:
[0186] The seventh sending module is used to send the token and handle stored by the second operating system to the first operating system when the current operating mode of the wearable device switches from the second operating mode to the first operating mode. After the first operating system verifies the token and handle, it unlocks the first operating system. The second operating mode refers to the operating mode in which the second operating system is in a running state or a hibernation state while the first operating system is in a shut-down state.
[0187] In some embodiments of this application, a method for unlocking a wearable device with dual systems is provided. When the terminal device requests to unlock the wearable device, the subsequent verification and unlocking process is only performed if the preconditions for unlocking are verified. This improves the convenience and security of unlocking.
[0188] It should be noted that the device unlocking device provided in the above embodiments is only illustrated by the division of the above functional modules. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the wearable device can be divided into different functional modules to complete all or part of the functions described above. In addition, the device unlocking device and the device unlocking method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process can be found in the method embodiments, which will not be repeated here.
[0189] Please refer to Figure 13 This diagram illustrates a block diagram of a wearable device according to an exemplary embodiment of this application. The wearable device in this application may include one or more of the following components: a processor 1310 and a memory 1320, and a display screen 1330.
[0190] Processor 1310 may include one or more processing cores. Processor 1310 connects to various parts of the wearable device using various interfaces and lines, and performs various functions and processes data by running or executing instructions, programs, code sets, or instruction sets stored in memory 1320, and by calling data stored in memory 1320. Optionally, processor 1310 may be implemented using at least one hardware form of Digital Signal Processing (DSP), Field-Programmable Gate Array (FPGA), or Programmable Logic Array (PLA). Processor 1310 may integrate one or a combination of several of the following: Central Processing Unit (CPU), Graphics Processing Unit (GPU), Neural-network Processing Unit (NPU), and modem. Specifically, the CPU primarily handles the operating system, user interface, and applications; the GPU is responsible for rendering and drawing the content required to be displayed on display screen 1330; the NPU is used to implement artificial intelligence (AI) functions; and the modem is used to handle wireless communication. It is understandable that the aforementioned modem may not be integrated into the processor 1310, but may be implemented as a separate chip.
[0191] The memory 1320 may include random access memory (RAM) or read-only memory. Optionally, the memory 1320 may include a non-transitory computer-readable storage medium. The memory 1320 may be used to store instructions, programs, code, code sets, or instruction sets. The memory 1320 may include a program storage area and a data storage area, wherein the program storage area may store instructions for implementing an operating system, instructions for at least one function (such as touch function, sound playback function, image playback function, etc.), instructions for implementing the various method embodiments described below, etc.; the data storage area may store data created based on the use of the wearable device (such as audio data, phonebook, etc.).
[0192] Display screen 1330 is a display component used to display a user interface. Optionally, the display screen 1330 is a touch-enabled display screen, through which users can use their fingers, styluses, or any suitable object to perform touch operations on the display screen 1330.
[0193] The display screen 1330 is typically located on the front panel of a wearable device. The display screen 1330 can be designed as a full-screen, curved screen, irregularly shaped screen, dual-sided screen, or foldable screen. The display screen 1330 can also be designed as a combination of a full-screen and a curved screen, or a combination of an irregularly shaped screen and a curved screen, etc., but this embodiment does not limit it in this way.
[0194] In addition, those skilled in the art will understand that the structure of the wearable device shown in the above figures does not constitute a limitation on the wearable device. The wearable device may include more or fewer components than shown, or combine certain components, or have different component arrangements. For example, the wearable device may also include audio acquisition devices, speakers, radio frequency circuits, input units, sensors, audio circuits, Wireless Fidelity (WiFi) modules, power supplies, Bluetooth modules, etc., which will not be described in detail here.
[0195] This application also provides a computer-readable medium storing at least one piece of program code, which is loaded and executed by the processor to implement the device unlocking method shown in the above embodiments.
[0196] This application also provides a computer program product that stores at least one piece of program code, which is loaded and executed by the processor to implement the device unlocking method shown in the above embodiments.
[0197] In some embodiments, the computer program product involved in this application may be deployed and executed on a wearable device, or on multiple wearable devices located in one location, or on multiple wearable devices distributed in multiple locations and interconnected through a communication network. Multiple wearable devices distributed in multiple locations and interconnected through a communication network may form a blockchain system.
[0198] Those skilled in the art will recognize that the functions described in the embodiments of this application in one or more of the above examples can be implemented using hardware, software, firmware, or any combination thereof. When implemented using software, these functions can be stored in a computer-readable medium or transmitted as one or more instructions or code on a computer-readable medium. Computer-readable media include computer storage media and communication media, wherein communication media include any medium that facilitates the transfer of a computer program from one place to another. Storage media can be any available medium that can be accessed by a general-purpose or special-purpose computer.
[0199] The above description is merely an optional embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A device unlocking method, characterized in that, The method is executed by a wearable device, which includes a first operating system and a second operating system; the wearable device is communicatively connected to a terminal device; the method includes: The system receives an unlock request sent by the terminal device through the first operating system and / or the second operating system. The unlock request is used to request the unlocking of the wearable device, and the unlock request carries verification information for unlocking the wearable device. The first operating system and / or the second operating system are used to determine whether the current state of the wearable device meets the unlocking prerequisites. If the current state of the wearable device meets the unlocking prerequisites, the wearable device is unlocked based on the verification information and the current operating mode of the wearable device.
2. The method according to claim 1, characterized in that, The unlocking process for the wearable device based on the verification information and the current operating mode of the wearable device includes: When the wearable device is currently operating in the first operating mode, the wearable device is unlocked based on the verification information through the first operating system and the second operating system, respectively. The first operating mode refers to the operating mode in which the first operating system and the second operating system can switch control.
3. The method according to claim 2, characterized in that, Receiving the unlock request sent by the terminal device through the first operating system and / or the second operating system includes: The unlock request is received through the second operating system; The unlocking process of the wearable device based on the verification information, using the first operating system and the second operating system respectively, includes: The verification information is unlocked by the second operating system. If the verification information is successfully verified by the second operating system, the second operating system is unlocked. The verification information is then sent to the first operating system by the second operating system. The verification information is then unlocked by the first operating system. If the verification information is successfully verified by the first operating system, the first operating system is unlocked.
4. The method according to claim 2, characterized in that, Receiving the unlock request sent by the terminal device through the first operating system and / or the second operating system includes: The unlock request sent by the terminal device is received through the first operating system and the second operating system; The unlocking process of the wearable device based on the verification information, using the first operating system and the second operating system respectively, includes: The verification information is unlocked by the first operating system. If the verification information is successfully verified by the first operating system, the first operating system is unlocked. The verification information is unlocked by the second operating system. If the verification information is successfully verified by the second operating system, the second operating system is unlocked.
5. The method according to claim 2, characterized in that, Receiving the unlock request sent by the terminal device through the first operating system and / or the second operating system includes: The first operating system receives the unlock request sent by the terminal device. The unlocking process of the wearable device based on the verification information, using the first operating system and the second operating system respectively, includes: The verification information is unlocked by the first operating system. If the verification information is successfully verified by the first operating system, the first operating system is unlocked. The first operating system forwards the unlock request to the second operating system, which then verifies the verification information. If the verification information is verified by the second operating system, the second operating system is unlocked.
6. The method according to any one of claims 3-5, characterized in that, Unlocking the first operating system includes: The lock screen of the first operating system is closed, and the wearable device's screen is not turned on.
7. The method according to any one of claims 3-5, characterized in that, The method further includes: After unlocking the first operating system, a first unlocking result is sent to the second operating system through the first operating system. The second operating system then aggregates the first and second unlocking results and sends them to the terminal device; or... After unlocking the second operating system, a second unlocking result is sent to the first operating system through the second operating system; the first operating system aggregates the first and second unlocking results and sends them to the terminal device; or, After unlocking the first operating system, a first unlocking result is sent to the terminal device through the first operating system; after unlocking the second operating system, a second unlocking result is sent to the terminal device through the second operating system. Wherein, the first unlocking result is the unlocking result of the first operating system, and the second unlocking result is the unlocking result of the second operating system.
8. The method according to claim 1, characterized in that, The power consumption of the first operating system is greater than that of the second operating system; and / or, the performance of the first operating system is higher than that of the second operating system.
9. The method according to claim 8, characterized in that, The unlocking process for the wearable device based on the verification information and the current operating mode of the wearable device includes: When the current operating mode of the wearable device is the second operating mode, the verification information is verified through the second operating system; If the verification information passes, the second operating system is unlocked; The second operating mode refers to an operating mode in which the second operating system is in a running state or a hibernation state while the first operating system is in a shut-down state.
10. The method according to claim 1, characterized in that, The method further includes: If the current state of the wearable device does not meet the unlocking prerequisites, a notification message is sent to the terminal device through the first operating system and / or the second operating system. The notification message indicates that the terminal device has failed to unlock the wearable device.
11. The method according to claim 1, characterized in that, Determining whether the current state of the wearable device meets the unlocking prerequisites through the first operating system and / or the second operating system includes: The wearing status of the wearable device and / or the distance between the wearable device and the terminal device are obtained through the first operating system and / or the second operating system. Based on the wearing status and / or the distance, determine whether the current state of the wearable device meets the unlocking prerequisites.
12. The method according to claim 11, characterized in that, Determining whether the current state of the wearable device meets the unlocking prerequisites based on the wearing status and / or the distance includes: If the wearing state is "worn", determine that the current state of the wearable device meets the unlocking prerequisite; and / or, if the distance is less than a preset distance, determine that the current state of the wearable device meets the unlocking prerequisite; and / or, If the wearing state is "worn" and the distance is less than a preset distance, determine that the current state of the wearable device meets the unlocking prerequisite; and / or, If the wearing state is not worn, it is determined that the current state of the wearable device does not meet the unlocking prerequisite; and / or, if the distance is not less than the preset distance, it is determined that the current state of the wearable device does not meet the unlocking prerequisite.
13. The method according to claim 2, characterized in that, The verification information includes a token and a handle; the method further includes: When the first operating system and / or the second operating system detects a trigger operation on the unlock switch, a registration request is generated by the first operating system and / or the second operating system. The first operating system and / or the second operating system send the registration request to the terminal device. The registration request is used to request the terminal device to generate a token. The first operating system and / or the second operating system receive the token sent by the terminal device, and the first operating system and / or the second operating system register the token and generate a handle corresponding to the token; The token and handle are stored in the first operating system and / or the second operating system, and the handle is sent to the terminal device so that the terminal device saves the token and handle.
14. The method according to claim 13, characterized in that, The method further includes transmitting the data via a communication link between the first operating system and the second operating system when one of the first operating system and the second operating system obtains one or more of the trigger operation, the registration request, the token, and the handle, and the other needs to process the data.
15. The method according to claim 13, characterized in that, In the case where the token and handle are stored in the first operating system and the second operating system, the method further includes: when the current operating mode of the wearable device switches from the second operating mode to the first operating mode, the second operating system sends the stored token and handle to the first operating system, and the first operating system unlocks the first operating system after the verification is successful based on the token and handle, wherein the second operating mode refers to the operating mode in which the second operating system is in a running state or a hibernation state while the first operating system is in a shut-down state.
16. A device unlocking device, characterized in that, Deployed in a wearable device, the wearable device including a first operating system and a second operating system, the wearable device being communicatively connected to a terminal device; the device includes: The first receiving module is configured to receive an unlocking request sent by the terminal device through the first operating system and / or the second operating system. The unlocking request is used to request the unlocking of the wearable device, and the unlocking request carries verification information for unlocking the wearable device. The determination module is used to determine, through the first operating system and / or the second operating system, whether the current state of the wearable device meets the unlocking prerequisites; The unlocking module is used to unlock the wearable device based on the verification information and the current operating mode of the wearable device, provided that the current state of the wearable device meets the unlocking prerequisites.
17. A wearable device, characterized in that, The wearable device includes a memory and a processor; the memory stores at least one piece of program code, which is loaded and executed by the processor to implement the device unlocking method as described in any one of claims 1 to 15.
18. A computer-readable storage medium, characterized in that, The storage medium stores at least one piece of program code, which is loaded and executed by a processor to implement the device unlocking method as described in any one of claims 1 to 15.
19. A computer program product, characterized in that, The computer program product stores at least one piece of program code, which is executed by a processor to implement the device unlocking method as described in any one of claims 1 to 15.