Data transmission method and related device
By directly transmitting data to the sensor control center in TEE, the problem of low data transmission security in the REE environment is solved, and data transmission with higher security is achieved.
Patent Information
- Application Number
- CN202410114966.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-25
- Publication Date
- 2025-08-01
- Estimated Expiration
- 2044-01-25
AI Technical Summary
In the prior art, there is a security risk in transmitting data from trusted applications (TAs) through a general execution environment (REE), resulting in low security in data transmission.
By directly transmitting data to the sensor control center (sensorhub) in a trusted execution environment (TEE), avoiding the non-secure REE environment, leveraging information interaction between client applications (CAs) and trusted applications (TAs), ensuring data is transmitted in a secure environment.
Improves the security of data transmission from TEE to sensor control center, reduces the risk of data exposure in non-secure environments, and enhances the security and reliability of data transmission.
Smart Images

Figure CN120408623A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of terminal technologies, and in particular, to a data transmission method and related devices. Background Art
[0002] With the rapid development of terminal technologies, how to improve the security of terminals has become increasingly important. Currently, in order to improve the data security of electronic devices, a secure environment such as a trusted execution environment (TEE) is adopted. In the TEE, a trusted application (TA) runs. A TA is an application that completes specific functions in the TEE. Since calculations are performed in the TEE, it has relatively high security. Each TA has one or more corresponding client applications (CAs) in a rich execution environment (REE). In the REE environment, information can be transmitted to the TEE environment to execute the TA by calling the interface of the CA, and the corresponding function is completed and then the calculation result is returned.
[0003] In related technologies, when it is necessary to transmit data of the trusted application TA, the data is mainly transmitted through the REE environment when transmitting the data of the trusted application TA.
[0004] However, transmitting data through the REE environment has certain security risks. Summary of the Invention
[0005] Embodiments of this application provide a data transmission method and related devices, which are applied to the field of terminal technologies. By transmitting the data of the trusted application TA to the sensor control center (sensorhub) without passing through the REE, the security of data transmission from the TEE to the sensorhub can be improved.
[0006] In a first aspect, embodiments of this application propose a data transmission method, which is applied to an electronic device. The electronic device includes a trusted execution environment (TEE), a sensor control center, a first trusted application (TA) running in the trusted execution environment (TEE), a rich execution environment (REE), and a client application (CA) running in the rich execution environment (REE). The method includes:
[0007] The client application CA instructs a first trusted application TA with a first piece of information, where the first piece of information indicates to transmit target data of the first trusted application TA. In response to the first piece of information, the first trusted application TA writes the target data to a first memory area and instructs the client application CA with a second piece of information, where the second piece of information is used to indicate a target storage address of the target data in the first memory area, and the first memory area is a memory area in the trusted execution environment TEE. The client application CA instructs a sensor control center with a third piece of information, where the third piece of information includes the second piece of information or address information determined based on the second piece of information. The sensor control center determines the target storage address based on the third piece of information and obtains the target data from the first memory area based on the target storage address.
[0008] Among them, the electronic device may be deployed with a deployed operating system (OS) or a real-time operating system (RTOS). The security of the general execution environment REE is lower than that of the trusted execution environment TEE. Therefore, compared with the trusted execution environment TEE, the general execution environment REE belongs to a non-secure environment, while the trusted execution environment TEE belongs to a secure environment.
[0009] Among them, the first memory area is used to store the target data. Optionally, the storage space size of the first memory area generally needs to be greater than or equal to the data size of the target data. Specifically, the first memory area may be fixed or dynamically adjustable, and can be set as needed, which is not limited here. In this embodiment, if the storage space size of the first memory area is dynamically adjustable, the first memory area may be dynamically created based on the data size of the target data when the target data needs to be transmitted.
[0010] Among them, the first trusted application TA may be a TA related to the service, so the trusted application TA may also be called a service TA. Optionally, the service TA may be a service TA with certain requirements for data security, such as a face TA. The client CA may be a CA related to the first trusted application TA. For example, if the first trusted application TA is a face TA, the client CA may be a face CA.
[0011] Optionally, the client application CA may instruct the sensor control center with the second piece of information, then the sensor control center determines the target storage address based on the second piece of information, and then obtains the target data from the first memory area based on the target storage address. In addition, after the client application CA determines the target storage address based on the second piece of information, it may transmit the target storage address to the sensor control center as the third piece of information, and then the sensor control center may directly obtain the target data from the first memory area based on the target storage address.
[0012] In the embodiment of the present application, the client application CA indicates the first information to the first trusted application TA. Then, in response to the first information, the first trusted application TA writes the target data to the first memory area and indicates the second information to the client application CA. Then, the client application CA indicates the third information to the sensor control center. The third information includes the second information or the address information determined based on the second information. Furthermore, the sensor control center determines the target storage address based on the third information and obtains the target data from the first memory area based on the target storage address. That is to say, when the target data is transmitted from the trusted application in the TEE to the sensor control center, the target data may not pass through the general execution environment REE. In this way, the possible insecure situations brought by the data passing through the general execution environment REE can be reduced, and thus the security of the data transmitted from the TEE to the sensor control center can be improved.
[0013] In combination with the first aspect, in a possible implementation manner, in the data format of the target data, it includes the content of the target data and at least one of the first indication information, the second indication information, the third indication information, the fourth indication information, the fifth indication information, the sixth indication information, or the seventh indication information;
[0014] The first indication information is used to indicate the total length of the target data; the second indication information is used to indicate the version number of the target data; the third indication information is used to indicate the acquisition time of the target data; the fourth indication information is used to indicate the number of the target data; the fifth indication information is used to indicate the length of one target data; the sixth indication information is used to indicate the type of one target data; the seventh indication information is used to indicate the hash value of the target data.
[0015] Among them, the data format of the target data can be preset. In this way, after receiving the target data, the sensor control center can accurately parse the target data and then accurately obtain the content of the target data. The content of the target data can be the content with certain requirements for security and confidentiality, such as at least one of face images, fingerprint images, voiceprints, and iris images.
[0016] Among them, the target storage address range of the target data can be determined based on the total length of the target data and the target storage address. The acquisition time can refer to the acquisition time of the target data. Then, the sensor control center can determine whether the data content has been received based on the acquisition time. If the data content has been received, the data content can be directly ignored. Based on the number of target data and the length of one target data, when there are multiple target data, each target data can still be accurately obtained. The type of target data can be types such as images and processing results. Based on the hash value of the target data, the encoding method of the content of the target data can be determined, and then the content of the target data can be decoded according to the corresponding decoding method. Based on the version number of the target data, the hash algorithm used to compress the content of the target data can be determined.
[0017] It should be noted that the bytes of the first indication information, the second indication information, the third indication information, the fourth indication information, the fifth indication information, the sixth indication information, or the seventh indication information can be fixed. For example, each indication information occupies 4 bytes. And the content of the target data can be of dynamic size. For example, an image of 640*480 has a size of 450K (640*480*3 / 2 = 450K). Another example is that an image of 1024*768 has a size of 1152K (1024*768*3 / 2 = 1152K).
[0018] Exemplarily, the information format of one type of service data can be as follows:
[0019] Total length of service data information: 4 bytes.
[0020] Information version number of service data: 4 bytes.
[0021] Time stamp of service data: 4 bytes.
[0022] Number of service data: 4 bytes.
[0023] Length of service data 1: 4 bytes.
[0024] Type of service data 1: 4 bytes (types such as images and processing results).
[0025] Content of service data 1: XXX bytes (dynamic size, for example, an image of 640*480 has a size of 450K (640*480*3 / 2 = 450K)).
[0026] …
[0027] Length of service data N: 4 bytes.
[0028] Type of service data N: 4 bytes.
[0029] Content of service data N: XXX bytes (dynamic size, such as an image of 1024*768, with a size of 1152K (1024*768*3 / 2 = 1152K)).
[0030] In combination with the first aspect, in a possible implementation, the third information includes the second information, the second information includes a target address index, and the sensor control center is configured with a mapping relationship between the address index and the storage address. The sensor control center determines the target storage address based on the third information, including:
[0031] The sensor control center determines the target storage address based on the target address index and the mapping relationship.
[0032] Among them, the target address index can be used as a handle to determine the target storage address.
[0033] In the embodiments of the present application, by the sensor control center determining the target storage address based on the target address index and the mapping relationship, that is, the target storage address is determined on the side of the sensor control center. In this way, the risk of the target address leaking in the general execution environment REE can be reduced, thereby improving the security of data storage.
[0034] In combination with the first aspect, in a possible implementation, before the sensor control center obtains the target data from the first memory area based on the target storage address, it further includes:
[0035] The first trusted application TA verifies the access permission of the sensor control center, and allows the sensor control center to obtain the target data from the first memory area when the access permission verification of the sensor control center passes.
[0036] In the embodiments of the present application, by verifying the access permission of the sensor control center and allowing the sensor control center to obtain the target data from the first memory area only when the access permission verification passes, in this way, the security of data transmission can be improved.
[0037] In combination with the first aspect, in a possible implementation, after the sensor control center obtains the target data from the first memory area based on the target storage address, it further includes:
[0038] The sensor control center obtains the data to be compared; the sensor control center compares the data to be compared with the target data to obtain a data comparison result; the sensor control center writes the data comparison result to the second memory area, and the second memory area is a memory area in the trusted execution environment TEE.
[0039] In the embodiment of the present application, the sensor control center can not only obtain target data from the Trusted Execution Environment (TEE), but also transmit the data comparison result to the TEE. In this way, the communication method between the sensor control center and the TEE can be enriched.
[0040] In a possible implementation manner, the electronic device further includes a payment application running in the Rich Execution Environment (REE) and a second Trusted Application (TA) running in the TEE. The target data includes target biometric data, and the data to be compared includes first biometric data to be compared. The first biometric data to be compared is biometric data collected by the electronic device in response to a payment operation of the payment application.
[0041] Correspondingly, after the sensor control center writes the data comparison result to the second memory area, the following steps are further included:
[0042] The first TA obtains the data comparison result from the second memory area and transmits the data comparison result to the second TA. The second TA transmits the data comparison result to the payment application; the payment application makes a payment or rejects a payment based on the data comparison result.
[0043] Among them, the second TA can be a payment TA. Optionally, if the data comparison result indicates that the target biometric data matches the first biometric data to be compared successfully, the payment application can make a payment; if the data comparison result indicates that the target biometric data does not match the first biometric data to be compared, the payment application can reject the payment.
[0044] Among them, the "payment application" can be used to trigger an application of the electronic device, which can be a system application pre-installed in the electronic device or an application program installed by the user in the electronic device.
[0045] It should be noted that the "payment application" refers to an application with payment functions, rather than specifically referring to an application that can only implement payment functions.
[0046] In the embodiment of the present application, the first TA obtains the data comparison result from the second memory area and transmits the data comparison result to the second TA, and then the second TA transmits the data comparison result to the payment application. Furthermore, the payment application makes a payment or rejects a payment based on the data comparison result. In this way, the security of payment can be improved. In addition, since the data comparison result is obtained by the first TA and then transmitted to the second TA, the communication interface between the TA and the memory area can be reduced. Thus, the number of TAs that can read data from the second memory area can be restricted, thereby improving the transmission security of the data comparison result and further improving the credibility of the data comparison result.
[0047] In another possible implementation, it can also be based on the data comparison result to display or hide the message. For example, the first trusted application TA transmits the data comparison result to the notification application through the client CA, and the notification application displays or hides the received message based on the data comparison result.
[0048] In this embodiment, by transmitting the data comparison result from the first trusted application TA to the client CA, compared with the data comparison result transmitted from the sensor control center to the client CA through the sensor control center HAL, the transmission link of the data comparison result in the non-secure environment is less, so that the transmission security of the data comparison result can be further improved.
[0049] Combined with the first aspect, in a possible implementation, the target data includes target biometric data, and the electronic device further includes a settings application running in the general execution environment REE. The method further includes:
[0050] The settings application responds to the biometric input operation and collects the first biometric data through the electronic device; when the trusted execution environment TEE determines that the first biometric data meets the data quality requirements, the first biometric data is stored as the target biometric data.
[0051] Among them, the "settings application" can be an application for triggering biometric input, which can be a system application pre-installed in the electronic device or an application program installed by the user in the electronic device. The biometric input operation can refer to an operation for triggering the electronic device to collect biometric data, including but not limited to at least one of touch operations (such as click operations) and voice control operations. Exemplarily, the "settings application" of the electronic device displays a first interface, and the first interface includes a biometric input control. When the electronic device detects a click operation on the biometric input control, the "settings application" controls the hardware of the electronic device to collect the first biometric data through the framework layer, system layer, driver layer, etc.
[0052] Among them, the biometric data can include but is not limited to at least one of face data, fingerprint data, voiceprint data, and iris data, etc., which can reflect biometric features. Among them, face data and iris data can be collected through a camera, and voiceprint data can be collected through a fingerprint data collection module or a display screen integrated with a fingerprint data collection module, etc. Voiceprint data can be collected through a microphone.
[0053] In the embodiments of the present application, only when it is determined that the first biometric data meets the data quality requirements, the first trusted application TA is allowed to store the first biometric data, which can improve the effectiveness of the biometric data stored by the first trusted application TA. Moreover, by using the TEE to determine whether the data meets the quality requirements, that is, by processing the biometric data in the TEE environment as much as possible, the security of the biometric data can be improved and the security risk of the biometric data can be reduced.
[0054] In combination with the first aspect, in a possible implementation manner, the first trusted application TA determines whether the first biometric data meets the data quality requirements, and stores the target biometric data through the first trusted application TA.
[0055] In combination with the first aspect, in a possible implementation manner, the data transmission method further includes:
[0056] When the trusted execution environment TEE determines that the first biometric data does not meet the data quality requirements, a first biometric feature value is extracted and stored based on the first biometric data; the trusted execution environment TEE obtains second biometric data collected by the electronic device; the trusted execution environment TEE extracts a second biometric feature value based on the second biometric data, and matches the second biometric feature value with the first biometric feature value; when the second biometric feature value matches the first biometric feature value and the second biometric data meets the data quality requirements, the second biometric data is stored as the target biometric data.
[0057] In the embodiments of the present application, by using the trusted execution environment TEE to extract the first biometric feature value based on the first biometric data and store the first biometric feature value, even if the first biometric data is not stored, a certain degree of data comparison can be performed, thereby improving the flexibility of data comparison. In addition, when the second biometric feature value matches the first biometric feature value and the second biometric data meets the data quality requirements, the second biometric data is stored, so that the target biometric data can be obtained in time for the sensor control center to perform data comparison based on the target biometric data.
[0058] In combination with the first aspect, in a possible implementation manner, the trusted execution environment TEE extracts a second biometric feature value based on the second biometric data and matches the second biometric feature value with the first biometric feature value, including:
[0059] The first trusted application TA extracts a second biometric feature value based on the second biometric data and matches the second biometric feature value with the first biometric feature value.
[0060] In combination with the first aspect, in a possible implementation, the target data includes target biometric data, and the electronic device further includes a notification application running in the general execution environment (REE). The notification application is configured to enable the intelligent display function. After the sensor control center determines the target storage address based on the third information and obtains the target data from the first memory area based on the target storage address, it further includes:
[0061] When the electronic device receives a message, the sensor control center compares the second biometric data to be compared collected by the electronic device with the target biometric data. When the comparison between the second biometric data to be compared and the target biometric data is successful, the sensor control center indicates the eighth information to the notification application, or when the comparison between the second biometric data to be compared and the target biometric data fails, the sensor control center indicates the ninth information to the notification application. The eighth information is used to indicate the display of the message, and the ninth information is used to indicate the hiding of the message. The notification application displays the message based on the received eighth information or hides the message based on the received ninth information.
[0062] In the embodiments of the present application, when the electronic device receives a message, the sensor control center compares the second biometric data to be compared collected by the electronic device with the target biometric data, and the message is displayed only when the comparison is successful, that is, when the user in the direction facing the display screen of the electronic device is the target user who entered the biometric data, the electronic device displays the message, thereby improving the privacy of message notification. At the same time, since the sensor control center stores the target biometric data, the sensor control center directly compares the biometric data to be compared with the target biometric data, so it is not necessary to obtain the target biometric data from the TEE again, which can improve the efficiency of data comparison and thus improve the judgment efficiency of whether to display the message.
[0063] Optionally, the sensor control center can transmit the eighth information or the ninth information to the notification application in the REE environment.
[0064] In combination with the first aspect, in a possible implementation, the client application (CA) indicates the first information to the first trusted application (TA), including:
[0065] The client CA obtains the data storage status identifier, and when the data storage status identifier is the first identifier, it indicates the first information to the first trusted application TA. The first identifier is used to indicate that the sensor control center does not store the target data; and / or, the client application CA searches for the target data from the first trusted application TA and the sensor control center respectively, and when the target data is found from the first trusted application TA and not found from the sensor control center, it indicates the first information to the first trusted application TA.
[0066] Second aspect, an embodiment of the present application provides a data transmission device, which may be an electronic device, or a chip or a chip system inside the electronic device. The data transmission device may include a display unit and a processing unit. When the data transmission device is an electronic device, the display unit may be a display screen. The display unit is used to perform the display step so that the electronic device implements a data transmission method described in the first aspect or any possible implementation manner of the first aspect. When the data transmission device is an electronic device, the processing unit may be a processor. The data transmission device may further include a storage unit, and the storage unit may be a memory. The storage unit is used to store instructions, and the processing unit executes the instructions stored in the storage unit so that the electronic device implements a data transmission method described in the first aspect or any possible implementation manner of the first aspect. When the data transmission device is a chip or a chip system inside the electronic device, the processing unit may be a processor. The processing unit executes the instructions stored in the storage unit so that the electronic device implements a data transmission method described in the first aspect or any possible implementation manner of the first aspect. The storage unit may be a storage unit inside the chip (such as a register, a cache, etc.), or a storage unit outside the chip and inside the electronic device (such as a read-only memory, a random access memory, etc.).
[0067] Third aspect, an embodiment of the present application provides an electronic device, including a processor and a memory. The memory is used to store code instructions, and the processor is used to run the code instructions to execute the method described in the first aspect or any possible implementation manner of the first aspect.
[0068] Fourth aspect, an embodiment of the present application provides a computer-readable storage medium, in which a computer program or instructions are stored. When the computer program or instructions are run on a computer, the computer is enabled to execute the method described in the first aspect or any possible implementation manner of the first aspect.
[0069] Fifth aspect, an embodiment of the present application provides a computer program product including a computer program. When the computer program is run on a computer, the computer is enabled to execute the method described in the first aspect or any possible implementation manner of the first aspect.
[0070] Sixth aspect, the present application provides a chip or a chip system. The chip or the chip system includes at least one processor and a communication interface. The communication interface and the at least one processor are interconnected by a line. The at least one processor is used to run a computer program or instructions to execute the method described in the first aspect or any possible implementation manner of the first aspect. Among them, the communication interface in the chip may be an input / output interface, a pin, a circuit, etc.
[0071] In a possible implementation, the chip or chip system described above in the present application further includes at least one memory, and instructions are stored in the at least one memory. The memory can be a storage unit inside the chip, for example, registers, caches, etc., or it can be a storage unit of the chip (for example, read-only memory, random access memory, etc.).
[0072] It should be understood that the technical solutions of the second to sixth aspects of the present application correspond to those of the first aspect of the present application, and the beneficial effects obtained by each aspect and the corresponding feasible implementation manners are similar, and will not be described in detail herein. BRIEF DESCRIPTION OF THE DRAWINGS
[0073] Figure 1 Schematic diagram of a data transmission method provided by an embodiment of the present application;
[0074] Figure 2 Schematic diagram of the hardware structure of an electronic device provided by an embodiment of the present application;
[0075] Figure 3 Schematic diagram of the software structure of an electronic device provided by an embodiment of the present application;
[0076] Figure 4 Schematic diagram of another data transmission method provided by an embodiment of the present application;
[0077] Figure 5 Schematic diagram of the flowchart of a data transmission method provided by an embodiment of the present application;
[0078] Figure 6 Schematic diagram of the flowchart of another data transmission method provided by an embodiment of the present application;
[0079] Figure 7 Schematic diagram of a scenario where an electronic device displays a message provided by an embodiment of the present application;
[0080] Figure 8 Schematic diagram of a scenario where an electronic device hides a message provided by an embodiment of the present application;
[0081] Figure 9 Schematic diagram of the structure of a chip provided by an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0082] To facilitate a clear description of the technical solutions of the embodiments of the present application, the following briefly introduces some terms and technologies involved in the embodiments of the present application:
[0083] 1. The REE can be referred to as a general execution environment. The general execution environment operating system (REE OS) on a general-purpose processor and the client application CA can run in the REE.
[0084] 2. The TEE can be referred to as a secure execution environment. It can run the trusted execution environment operating system (TEE OS). The TEE can also provide reliable security services for the CA (such as fingerprint comparison service, password verification service, face comparison service, secure payment service, etc.). These security services can run in the TEE OS in the form of trusted applications. In some embodiments, the TEE can be an execution area constructed using the secure area of the processor in the terminal device, and the trusted execution environment can provide a secure operating environment for the service.
[0085] 3. The main functions of the sensor control center sensorhub include: real-time control of the sensor sensor to achieve the function of reducing power consumption; connecting and processing data from various sensors; fusing data of different types of sensors to achieve functions that can only be achieved by combining multiple sensor data. It should be noted that sensorhub is a low-power processor and can also be understood as a small core. The services processed by sensorhub can be understood as low-power services. For example, if the face recognition service is processed by sensorhub, it can be understood as a low-power face recognition service.
[0086] 4. Other terms
[0087] In the embodiments of this application, terms such as "first" and "second" are used to distinguish identical or similar items with basically the same functions and roles. For example, the first chip and the second chip are only used to distinguish different chips and do not limit their sequence. Those skilled in the art can understand that terms such as "first" and "second" do not limit the quantity and execution order, and terms such as "first" and "second" do not necessarily mean different.
[0088] It should be noted that in the embodiments of this application, words such as "exemplary" or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design solution described as "exemplary" or "for example" in this application should not be construed as being more preferred or having more advantages than other embodiments or design solutions. Rather, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific manner.
[0089] In the embodiments of the present application, "at least one" means one or more, and "a plurality" means two or more. "And / or" describes the association relationship of associated objects and indicates that three relationships may exist. For example, A and / or B may represent: A exists alone, both A and B exist simultaneously, or B exists alone, where A and B may be singular or plural. The character " / " generally represents an "or" relationship between the associated objects before and after. "At least one (item)" or its similar expression refers to any combination of these items, including any combination of a single item or plural items. For example, at least one (item) of a, b, or c may represent: a, b, c, a - b, a - c, b - c, or a - b - c, where a, b, and c may be single or multiple.
[0090] 5. Electronic device
[0091] The electronic device in the embodiments of the present application may include a handheld device, a vehicle-mounted device, etc. with a display function or a data acquisition function. For example, some electronic devices are: mobile phone, tablet computer, handheld computer, laptop computer, mobile internet device (MID), wearable device, virtual reality (VR) device, augmented reality (AR) device, wireless terminal in industrial control, wireless terminal in self-driving, wireless terminal in remote medical surgery, wireless terminal in smart grid, wireless terminal in transportation safety, wireless terminal in smart city, wireless terminal in smart home, cellular phone, cordless phone, session initiation protocol (SIP) phone, wireless local loop (WLL) station, personal digital assistant (PDA), handheld device with wireless communication function, computing device or other processing device connected to a wireless modem, vehicle-mounted device, wearable device, terminal device in a 5G network or terminal device in a future evolved public land mobile network (PLMN), etc. The embodiments of the present application do not limit this.
[0092] By way of example and not limitation, in the embodiments of the present application, the electronic device may also be a wearable device. A wearable device, also known as a wearable intelligent device, is a general term for devices developed by applying wearable technologies to intelligently design daily wearables, such as glasses, gloves, watches, clothing, and shoes. A wearable device is a portable device that is either directly worn on the body or integrated into the user's clothing or accessories. A wearable device is not just a hardware device, but also realizes powerful functions through software support, data interaction, and cloud interaction. Broadly speaking, wearable intelligent devices include those with complete functions and large sizes that can achieve complete or partial functions without relying on a smartphone, such as smart watches or smart glasses, as well as those that only focus on a certain type of application function and need to cooperate with other devices such as smartphones, such as various smart bracelets and smart jewelry for vital sign monitoring.
[0093] In addition, in the embodiments of the present application, the electronic device may also be a terminal device in an Internet of Things (IoT) system. The IoT is an important part of the future development of information technology. Its main technical feature is to connect objects to the network through communication technologies, thereby realizing an intelligent network of human-machine interconnection and object-object interconnection.
[0094] The electronic device in the embodiments of the present application may also be referred to as: a terminal device, a user equipment (UE), a mobile station (MS), a mobile terminal (MT), an access terminal, a user unit, a user station, a mobile station, a mobile platform, a remote station, a remote terminal, a mobile device, a user terminal, a terminal, a wireless communication device, a user agent, or a user device, etc.
[0095] In the embodiments of the present application, the electronic device or each network device includes a hardware layer, an operating system layer running on top of the hardware layer, and an application layer running on top of the operating system layer. The hardware layer includes hardware such as a central processing unit (CPU), a memory management unit (MMU), and memory (also known as main memory). The operating system can be any one or more computer operating systems that implement business processing through processes, such as the Linux operating system, the Unix operating system, the Android operating system, the iOS operating system, or the Windows operating system, etc. The application layer contains applications such as a browser, an address book, a word processing software, and an instant messaging software.
[0096] The following embodiments illustrate the scenarios of this solution by way of example.
[0097] In some example scenarios, the electronic device collects and stores the target face data of the user. When the electronic device needs to be unlocked, the electronic device collects the face data of the user facing the display screen of the electronic device, and compares the target face data with the face data to be verified. If the face data comparison is successful, the electronic device is unlocked; if the face data comparison fails, the unlocking of the electronic device is refused.
[0098] In other example scenarios, when the electronic device needs to intelligently display the message of the pop-up notification, the face data to be verified is compared with the target face data. If the face data comparison is successful, the message content of the pop-up notification is displayed; if the face data comparison fails, the message of the pop-up notification is hidden.
[0099] In other example scenarios, when the electronic device needs to perform a payment operation, the face data to be verified is compared with the target face data. If the face data comparison is successful, the payment is made; if the face comparison fails, the payment is refused.
[0100] It can be understood that the solution of this embodiment is not limited to the above scenarios, and the solution of this application embodiment can be used in scenarios where data comparison or data verification is required. In addition, the data for comparison is not limited to face data, and can also be biometric data such as fingerprint data, voiceprint data, and iris data, which is not limited here.
[0101] To improve the security of the target face data, the electronic device stores the target face data in the TEE. Then, when data comparison is required, the application processor calls the target data from the TEE, and then performs data comparison. However, the efficiency of calling the target data from the TEE is slow, resulting in slow data comparison efficiency. To ensure the security of the target data and improve the data comparison efficiency at the same time, the target data can be stored in the sensorhub, and the sensorhub can directly compare the stored target data with the data to be verified.
[0102] Therefore, it is necessary to transmit the target face data of the TA to the sensorhub.
[0103] In the related art, mainly through the data transmission method as Figure 1 shown, the trusted application TA transmits the target data to the sensor control center through the CA in the REE and the hardware abstraction layer (HAL) related to the sensor control center.
[0104] However, the REE is a non-secure environment. In this way, the target face data will be exposed to the non-secure side, and the security of data transmission is relatively low.
[0105] In view of this, embodiments of the present application provide a data transmission method and related device, which can enable target data of a trusted application (TA) to be transmitted in a secure environment without passing through the REE side when the target data needs to be transmitted to a sensor control center. In this way, the security of data transmission from the TA in the TEE environment to the sensor control center can be improved.
[0106] To better understand the embodiments of the present application, the structure of the electronic device in the embodiments of the present application will be introduced below:
[0107] Figure 2 A schematic diagram of the hardware structure of the electronic device 100 is shown.
[0108] The electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headphone interface 170D, a sensor module 180, a button 190, a motor 191, an indicator 192, a camera 193, a display screen 194, a subscriber identification module (SIM) card interface 195, and a sensor control center 196, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0109] It can be understood that the structure schematically shown in the embodiments of the present invention does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may include more or fewer components than shown in the figure, or combine certain components, or split certain components, or have different component arrangements. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.
[0110] The processor 110 may include one or more processing units. For example, the processor 110 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Among them, different processing units may be independent devices or integrated in one or more processors.
[0111] The controller may generate operation control signals according to the instruction operation code and timing signals to complete the control of fetching and executing instructions.
[0112] A memory may also be provided in the processor 110 for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory may save the instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to use the instruction or data again, it can be directly called from the memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system. The application processor may be deployed with a REE and a TEE that is independent of the REE. Optionally, the application processor may include one or two or more TEEs, which can be set according to needs and are not limited here.
[0113] In this embodiment, the display screen 194 may be used to display face data, display messages, or collect fingerprint data through a fingerprint collection module provided on the display screen 194, etc. The camera 193 may be used to collect at least one of face data and iris data, etc. The microphone 170C may be used to collect voiceprint data.
[0114] The following embodiments will exemplarily illustrate the working process of the hardware of the electronic device in combination with the scenario of collecting face data.
[0115] The face data and iris data collected by the camera 193, the voiceprint data collected by the microphone 170C, and the fingerprint data collected by hardware such as the display screen 194 may be saved as target data to the TA in the TEE environment, and then the target data is transmitted from the TA in the TEE environment to the sensor control center 196 and stored in the sensor control center 196. Then, the sensor control center 196 may verify the data to be verified based on the target data stored by itself.
[0116] Figure 3The schematic diagram of the software structure of the electronic device 100 is shown.
[0117] The software system of the electronic device 100 may adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservices architecture, or a cloud architecture. In the embodiments of the present invention, taking the Android system with a layered architecture as an example, the software structure of the electronic device 100 is exemplarily described.
[0118] Figure 3 It is the software structure block diagram of the electronic device 100 in the embodiments of the present invention. The layered architecture in this embodiment may be deployed in the REE. The electronic device may further include at least one TEE. Trusted applications TA (also known as service TAs) may run in each TEE. Optionally, data may be shared between the trusted application TA and the sensor control center through shared memory.
[0119] The layered architecture divides the software into several layers, and each layer has a clear role and division of labor. The layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into multiple layers, from top to bottom are the application layer, the application framework layer, the Android runtime and system libraries, the hardware abstraction layer, and the kernel layer.
[0120] The application layer may include a series of application packages.
[0121] As Figure 3 shown, the application packages may include application programs such as a settings application, a notification application, a payment application, a camera, a gallery, a calendar, a call, a map, a navigation, a WLAN, a Bluetooth, a music, a video, a short message, etc.
[0122] The application framework layer provides application programming interfaces (APIs) and programming frameworks for the application programs in the application layer. The application framework layer includes some predefined functions.
[0123] As Figure 3 shown, the application framework layer may include a window manager, a content provider, a view system, a telephone manager, a resource manager, a notification manager, etc.
[0124] The notification manager enables an application to display notification information in the status bar. It can be used to convey messages of the notification type, and can disappear automatically after a short stay without user interaction. For example, the notification manager is used to inform that a download is completed, message reminders, etc. The notification manager can also be a notification that appears in the system top status bar in the form of a chart or scroll bar text, such as a notification of a background running application, or a notification that appears on the screen in the form of a dialogue window. For example, it can prompt text information in the status bar, emit a prompt tone, vibrate the electronic device, blink the indicator light, etc.
[0125] The Android Runtime includes core libraries and a virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.
[0126] The core libraries consist of two parts: one part is the functional functions that the Java language needs to call, and the other part is the core libraries of Android.
[0127] The application layer and the application framework layer run in the virtual machine. The virtual machine executes the Java files of the application layer and the application framework layer as binary files. The virtual machine is used to perform functions such as the management of object life cycles, stack management, thread management, security and exception management, and garbage collection.
[0128] The system libraries can include multiple functional modules. For example: surface manager, Media Libraries, 3D graphics processing libraries (such as OpenGL ES), 2D graphics engines (such as SGL), etc.
[0129] The hardware abstraction layer is an interface layer between the operating system kernel and the upper-layer software, and its purpose is to abstract the hardware. The hardware abstraction layer is an abstract interface of the device kernel driver, and is used to implement an application programming interface for accessing the underlying device to a higher-level Java API framework. HAL contains multiple library modules, such as the service CA corresponding to the service TA, the sensor control center HAL, the camera HAL, the display HAL, etc. Among them, the TA can include a face TA, and the face TA corresponds to a face CA. Optionally, data can be transmitted between the TA and the hardware layer of the electronic device. For example, the camera transmits face data to the TA, or the display transmits fingerprint data to the TA, etc.
[0130] Each of these library modules implements an interface for a specific type of hardware component. It can be understood that the Sensor Control Center HAL can provide an interface to access hardware components such as the sensorhub, the Camera HAL can provide an interface for the Camera FWK to access hardware components such as the camera, and the Display HAL can provide an interface for the Display FWK to access hardware components such as the display. When the system framework layer API requests access to the hardware of a portable device, the Android operating system will load the library module for that hardware component.
[0131] The kernel layer is the layer between the hardware and the software. The kernel layer includes at least a display driver, a camera driver, an audio driver, and a sensor driver. For example, the camera is controlled by the camera driver to capture face data.
[0132] The following embodiments will exemplarily illustrate the working process of the software of an electronic device in combination with the scenario of collecting face data.
[0133] For example, when the touch sensor in the terminal device receives a touch operation, the corresponding hardware interrupt is sent to the kernel layer. The kernel layer processes the touch operation into a raw input event (including information such as touch coordinates, touch force, and timestamp of the touch operation). The raw input event is stored in the kernel layer. The application framework layer obtains the raw input event from the kernel layer and identifies the button corresponding to the input event. Taking this touch operation as a face data entry operation, and the virtual button corresponding to this face data entry operation being the face entry virtual button of the "Settings Application" as an example, the Settings Application calls the interface of the application framework layer, and then starts the display driver through the kernel layer to display the function interface for collecting face data, and gives face collection indication information on the function interface. At the same time, it calls the camera access interface in the application framework layer to start the face data collection function of the Settings Application. Based on the camera driver in the kernel layer, one or more cameras are driven to collect one or more frames of face image data in real time. After the camera captures the face data, it can be fed back to the CA through the kernel layer and the system library. The CA can transmit the face data to the TA, and then the TA can store the face data.
[0134] Then, when the intelligent display function of the "Notification Application" is turned on, the CA in the HAL layer can be called through the framework layer and the system layer. The TA is notified through the CA to transmit the face data to the Sensor Control Center, and then the face data can be stored in the storage area of the Sensor Control Center. Among them, the data stored in the Sensor Control Center can be used as business data, and the Sensor Control Center can perform certain business processing, such as using face data comparison and other processing.
[0135] The following will illustrate with the specific implementation of this application.
[0136] In the embodiment of this application, the way for the TA to transmit face data to the sensorhub can be asFigure 4 In the manner shown, the data on the secure side is transmitted in a secure environment and finally reaches the sensor control center. During the data transmission process, it can bypass the REE side. The REE side can transmit the handle of the secure shared memory (abbreviated as memory) and control commands, etc. The REE side can interact with the TEE through the shared memory. The sensor control center can also use service data (such as a face) to perform service processing (such as face comparison processing) to obtain a data processing result (such as a face comparison result).
[0137] Optionally, the payment application, settings application, and notification application can call the face CA through the face FWK to communicate with the face TA or HAL. The sensor control center can transmit the data processing result to the payment TA through the shared memory and the face TA in sequence, and the payment TA then transmits the data transmission result to the payment application. Optionally, the face FWK can include the camera FWK.
[0138] The following embodiments will illustrate the specific implementation of the TA directly transmitting data to the sensor control center.
[0139] Please refer to Figure 5 , Figure 5 , which is a schematic flowchart of a data transmission method provided by an embodiment of the present application. In this embodiment, it is exemplified by combining the payment scenario with the target data including face data. As Figure 5 shown, the method may include:
[0140] S500. The electronic device is powered on.
[0141] S502. The client application CA respectively searches for the target face data from the first trusted application TA and the sensor control center.
[0142] Among them, the first trusted application TA may be the low-power face TA, and the client application CA may be the low-power face CA.
[0143] In this embodiment, when the client application CA respectively searches for the target face data from the first trusted application TA and the sensor control center, if the target face data is found from the first trusted application TA and not found from the sensor control center, it means that the target face data has been stored in the first trusted application TA but not transmitted to the sensor control center. At this time, the transmission of the target face data is triggered; if the target face data is found from the first trusted application TA and also found from the sensor control center, it means that the target face data has been stored in the sensor control center, and at this time, the transmission of the target face data may not be triggered.
[0144] S504. The client CA determines whether the target face data is found in the first trusted application TA but not found in the sensor control center.
[0145] S506. The client application CA instructs the first trusted application TA with the first information.
[0146] Among them, the first information instructs to transmit the target face data of the first trusted application TA.
[0147] S508. In response to the first information, the first trusted application TA writes the target face data into the shared memory area and instructs the client application CA with the second information.
[0148] Among them, the second information is used to indicate the target storage address of the target face data in the shared memory area. That is to say, based on the second information, the storage location of the target face data can be determined. The target storage address can be a logical address or a physical address, etc. Optionally, the target storage address can be the starting address of the target data. The second information indicates the target storage address of the target data, that is, based on the second information, it can be determined which position in the first memory area the target data is stored. Optionally, the second information may include a handle. A handle is an identifier used to identify an object or item and can be used to describe a form, a file, etc. In this embodiment, the handle can be used to indicate the target storage address of the target data in the first memory area. Generally speaking, the reason for setting up a handle fundamentally stems from the problem of the memory management mechanism, that is, the virtual address. Briefly, the address of the data needs to be changed. After the change, it is necessary to record and manage the change. Therefore, the system uses a handle to record the change of the data address.
[0149] Among them, the shared memory area is the memory area in the trusted execution environment TEE.
[0150] S510. The client application CA instructs the sensor control center with the second information.
[0151] Optionally, the client application CA can instruct the sensor control center with the second information through the sensor control center HAL.
[0152] S512. The sensor control center determines the target storage address based on the second information.
[0153] In this embodiment, the second information includes a target address index. The sensor control center is configured with a mapping relationship between the address index and the storage address. When the sensor control center determines the target storage address based on the third information, it determines the target storage address based on the target address index and the mapping relationship.
[0154] S514. The sensor control center requests the first trusted application TA to obtain the target face data in the shared memory area.
[0155] S516. The first trusted application TA verifies the access permission to the sensor control center.
[0156] In this embodiment, the first trusted application TA may be configured with the permission of the sensor control center. Specifically, the permission of the sensor control center may or may not include the permission to access the shared memory area, which is determined according to the actual situation and is not limited here. If the permission of the sensor control center includes the permission to access the shared memory area, the sensor control center is allowed to access the shared memory area. Optionally, if the permission of the sensor control center does not include the permission to access the shared memory area, the process ends here.
[0157] S518. When the sensor control center has the permission to access the shared memory area, the first trusted application TA allows the sensor control center to obtain the target face data from the shared memory area.
[0158] S520. The sensor control center obtains the target face data from the shared memory area based on the target storage address.
[0159] S522. The sensor control center obtains the face data to be compared.
[0160] In this embodiment, the face data to be compared may be the face data collected by invoking the camera of the electronic device when it is detected that the payment application initiates a payment operation.
[0161] S524. The sensor control center compares the face data to be compared with the target face data to obtain a face data comparison result.
[0162] Among them, the data comparison result may indicate the similarity between the data to be compared and the target data, or indicate whether the comparison between the data to be compared and the target data is successful, such as indicating that the comparison between the data to be compared and the target data fails or is successful. Optionally, if the similarity between the data to be compared and the target data is greater than the similarity threshold, the comparison is successful, otherwise it fails. The similarity threshold can be set as needed, for example, set to 80% or 90%, etc., which is not limited here.
[0163] S526. The sensor control center writes the face data comparison result into the shared memory area.
[0164] It should be noted that the shared memory area where the first trusted application TA writes the face data and the shared memory area where the sensor control center writes the comparison result of the face data can be the same or different memory areas. For example, the first trusted application TA writes the face data to the first memory area, and the sensor control center writes the data to the second memory area. Optionally, when the second memory area and the first memory area are different memory areas, the storage space size of the second memory area can be fixed.
[0165] S528. The first trusted application TA obtains the comparison result of the face data from the shared memory area.
[0166] In this embodiment, the first trusted application TA can not only write the face data to the shared memory area, but also obtain the comparison result of the face data from the shared memory area. Similarly, the sensor control center can not only obtain the face data from the shared memory area, but also write the comparison result of the face data to the shared memory area. Optionally, after writing the comparison result of the face data, the sensor control center can notify the first trusted application TA, and then the first trusted application obtains the comparison result of the face data from the shared memory area.
[0167] Optionally, it can be that the sensor control center transmits the address information of the comparison result of the face data to the first trusted application TA through the client CA, and then the first trusted application TA can obtain the comparison result of the face data from the shared memory area based on the address information.
[0168] S530. The first trusted application TA forwards the comparison result of the face data to the second trusted application TA.
[0169] Among them, the second trusted application TA can be the payment TA.
[0170] S532. The second trusted application TA transmits the comparison result of the face data to the payment application.
[0171] 1]In this embodiment, the payment application can make a payment or reject a payment based on the comparison result of the face data. Specifically, if the face data comparison is successful, the payment is made; if the face data comparison fails, the payment is rejected.
[0172] In another possible implementation, when the sensor control center instructs the client application CA of a data transmission request, the client application CA may instruct the first trusted application TA of a first piece of information. Optionally, when the electronic device receives a message or detects a payment operation, the sensor control center may instruct the client application CA of a face data transmission request, or may regularly instruct the client CA of a face data transmission request, or may instruct the client application CA of a face data transmission request after the electronic device restarts. This embodiment places no limitation on the scenario for triggering the instruction of a face data transmission request. Optionally, after receiving the target face data, the sensor control center may store it in the sensor control center until the electronic device shuts down.
[0173] In another possible implementation, the face data comparison result between the face data to be compared and the target face data may also be used for other purposes, such as hiding a message or displaying a message based on the face data comparison result.
[0174] Please refer to Figure 6 , Figure 6 which is a schematic flowchart of another data transmission method provided by an embodiment of this application. In this embodiment, it is exemplified by combining a message notification scenario with the target data including face data. As Figure 6 shown, the method may include:
[0175] S600. The electronic device is powered on.
[0176] S602. The client application CA searches for the target face data from the first trusted application TA and the sensor control center respectively.
[0177] S604. The client CA determines whether the target face data is found in the first trusted application TA but not found in the sensor control center.
[0178] S606. The client application CA instructs the first trusted application TA of the first piece of information.
[0179] Among them, the first piece of information instructs to transmit the target face data of the first trusted application TA.
[0180] S608. In response to the first piece of information, the first trusted application TA writes the target face data into the shared memory area and instructs the client application CA of a second piece of information.
[0181] S610. The client application CA instructs the sensor control center of the second piece of information.
[0182] S612. The sensor control center determines the target storage address based on the second piece of information.
[0183] S614. The sensor control center requests the first trusted application TA to obtain the target face data in the shared memory area.
[0184] S616. The first trusted application TA verifies the access permission of the sensor control center.
[0185] S618. When the sensor control center has the permission to access the shared memory area, the first trusted application TA allows the sensor control center to obtain the target face data from the shared memory area.
[0186] S620. The sensor control center obtains the target face data from the shared memory area based on the target storage address.
[0187] S622. The sensor control center obtains the face data to be compared.
[0188] S624. The sensor control center compares the face data to be compared with the target face data to obtain a face data comparison result.
[0189] S626. The sensor control center writes the face data comparison result into the shared memory area.
[0190] S628. The first trusted application TA obtains the face data comparison result from the shared memory area.
[0191] Among them, S600 - S628 can refer to the relevant descriptions of S500 - S528 and will not be elaborated here.
[0192] S630. The first trusted application TA transmits the face data comparison result to the client CA.
[0193] S632. The client CA transmits the face data comparison result to the notification application.
[0194] In this embodiment, the notification application can display or hide a message based on the face data comparison result. Specifically, if the face data comparison is successful, the message is displayed; if the face data comparison fails, the message is hidden.
[0195] In another possible implementation, it can also be that the client CA transmits the eighth information or the ninth information to the notification application based on the face data comparison result. Among them, the eighth information is used to indicate displaying a message, and the ninth information is used to indicate hiding a message.
[0196] In another possible implementation, it can also be that the client CA obtains a data storage status identifier, and when the data storage status identifier is the first identifier, it indicates the first information to the first trusted application TA. The first identifier is used to indicate that the sensor control center does not store the target data.
[0197] Among them, the data storage status identifier can be stored in the sensor control center HAL. Optionally, the starting identifier of the data storage status identifier can be the first identifier. After the sensor control center stores the target data, if the sensor control center instructs information to the sensor control center HAL, or the first trusted application TA transmits a message to the sensor control center HAL through the client application CA, the sensor control center HAL updates the first identifier to the second identifier, and the second identifier indicates that the sensor control center stores the target data. Then, if the data storage status identifier obtained by the client is the second identifier, it can be known that the sensor control center stores the target data, and the transmission of the target data can be avoided, thus preventing the repeated transmission of the target data to the sensor control center.
[0198] In the embodiment of the present application, the client CA obtains the data storage status identifier, and in the case where the data storage status identifier is the first identifier, indicates the first information to the first trusted application TA. The first identifier is used to indicate that the sensor control center does not store the target data; and / or, the client application CA searches for the target data from the first trusted application TA and the sensor control center respectively, and in the case where the target data is found from the first trusted application TA and the target data is not found from the sensor control center, indicates the first information to the first trusted application TA. In this way, the transmission of the target data can be triggered in a timely manner so that the sensor control center can use the target data for comparison in a timely manner when needed.
[0199] It can be understood that based on the data storage status identifier and searching for the target data from the first trusted application TA and the sensor control center respectively, the triggering accuracy of the target data transmission can be improved, thereby reducing the ineffective occupation of communication resources.
[0200] In another possible implementation, it can also be that after the client CA determines the address information based on the second information, it transmits the address information to the sensor control center. In this way, the sensor control center can directly obtain the target face data based on the address information. It can be understood that by determining the target storage address by the sensor control center based on the second information, the determination of the address information is also carried out in a secure environment. In this way, the security of the address information can be improved, and thus the security of data transmission can be improved.
[0201] In another possible implementation, it can also be that the sensor control center directly obtains the face data from the shared memory area without verifying the permissions of the sensor control center. In this way, the data transmission efficiency can be improved.
[0202] It can be understood that by verifying the access permissions of the sensor control center, the security of data transmission can be improved.
[0203] In another possible implementation, it can also be that the second trusted application TA obtains the face data comparison result from the shared memory area. In this way, the acquisition efficiency of the face data comparison result can be improved, and further the payment efficiency can be improved.
[0204] It can be understood that by the first trusted application TA obtaining the face data comparison result from the shared memory area and then transmitting the face data comparison result from the first trusted application TA to the second trusted application TA, in this way, the number of trusted applications TA writing or obtaining data from the shared memory area can be reduced, thereby improving the security of data transmission. In this embodiment, the face data to be compared can be the face data collected by calling the camera when the electronic device receives a message.
[0205] Exemplarily, the sensor control center indicates the eighth information to the notification application when the face data to be compared is successfully compared with the target face data, or indicates the ninth information to the notification application when the face data to be compared fails to be compared with the target face data. The eighth information is used to indicate the display of a message, and the ninth information is used to indicate the hiding of a message. The notification application displays the message based on the received eighth information or hides the message based on the received ninth information.
[0206] In this embodiment, the message can be hidden or displayed based on the comparison result between the face data to be compared and the target face data. In this way, the security of message notification can be improved.
[0207] It should be noted that the face data used for the judgment of whether to pay can be understood as the first face data, and the face data used for the judgment of whether to display a message can be understood as the second face data.
[0208] In another possible implementation, after the sensor control center obtains the target face data, other processing can also be performed, not limited to face data comparison. For example, the sensor control center stores the target face data so that when the face data is needed, the application processor can obtain it from the sensor control center, etc. The processing is not limited here.
[0209] In another possible implementation, it can also be biometric data such as fingerprint data, voiceprint data, and iris data, not limited to face data. In addition, it can also be other target data such as non-biometric data, such as usage data generated when the user uses the electronic device, etc. The processing is not limited here.
[0210] In the above embodiments, the data transmission method of this solution has been described under the condition that the target data has been stored in the first trusted execution environment TEE.
[0211] Therefore, based on any of the above embodiments, the following embodiments will illustrate how the target data is collected and how the target data is stored in the first Trusted Execution Environment (TEE).
[0212] In this embodiment, it is set that in response to a face entry operation, the application collects first face data through the camera of the electronic device, and then transmits the face data to the first Trusted Application (TA) through the interface between the camera and the first Trusted Application (TA).
[0213] The first Trusted Application (TA) includes a face recognition algorithm module 1, a face recognition algorithm module 2, and a face data storage module. After the first Trusted Application (TA) obtains the face data, it determines whether the first face data meets the quality requirements through the algorithm configured by the face recognition algorithm module 1. If the first face data meets the quality requirements, the first face data is stored in the face data storage module, so that when it is necessary to transmit the face data to the sensor control center, the face data is read from the data storage module and written into the shared memory area. If the first face data does not meet the quality requirements, the face recognition algorithm module 2 extracts the first biometric feature value based on the first biometric data and stores it in the face data storage module.
[0214] Then, when the camera collects the second biometric data, it transmits the second biometric data to the TEE. The face recognition algorithm module 2 extracts the second biometric feature value based on the second biometric data and matches the second biometric feature value with the first biometric feature value. If the match is successful, the face recognition algorithm module 1 determines whether the second face data meets the quality requirements. If the face recognition algorithm module 1 determines that the second face data meets the quality requirements, the second face data is stored in the face data storage module.
[0215] Among them, the data quality requirements corresponding to different face data can be different or the same. Exemplarily, taking face data as an example, the data quality requirements can be that the face data is complete and there is no blinking or other situations that affect recognition. Taking fingerprint data as an example, the data quality requirements can be that 90% of the complete fingerprint is collected and the fingerprint data is clear, etc., which can be set according to the actual situation and are not limited here.
[0216] Among them, the first face feature value can reflect the face to a certain extent and can be used as a reference face feature value for comparison, such as comparing with the second face feature value. In other words, the first face data and the second face data belong to the face data of the same user, and the data quality of the second face data is better. Exemplarily, the face feature value can indicate the contour features, facial features, etc. of the face. If it is fingerprint data, the corresponding fingerprint feature value can indicate parts of the fingerprint.
[0217] Optionally, the complete first face data cannot be restored based on the first face feature value. In this way, it is possible to compare the second face feature value of the second face data to confirm the legality of the second face data, and at the same time reduce the risk of leakage of the first face data caused by the leakage of the first face feature value.
[0218] Among them, the second face data can be collected periodically, or can be collected when the electronic device detects the presence of a living being, or can be collected when the electronic device detects a relevant trigger operation related to face data collection (such as an unlocking operation or a payment operation).
[0219] In another possible implementation, it is also possible to choose not to perform the matching between the first face feature value and the second face feature value, or not to perform the judgment on whether the second face data meets the data quality requirements.
[0220] It can be understood that in the embodiments of the present application, the target face data can also be replaced by other data, such as at least one of fingerprint data, voiceprint data, and iris data. The target data can also include data other than biometric data, such as non-biometric data, which is not limited here. The above embodiments illustrate the transmission of the target data between the TEE and the sensor control center. The following embodiments illustrate the scenario of how the sensor control center uses the target data for comparison based on any of the above embodiments.
[0221] Scenario 1: The face data entered by the electronic device is that of user A. Then, at this time, if the electronic device receives a message, at the first moment, if the electronic device detects that the user using the electronic device is user A, the message is displayed, as Figure 7 shown.
[0222] At the second moment, if the electronic device detects that the user using the electronic device is user B, or if the electronic device detects that the user using the electronic device is user A, but there are also users B and C beside user A, the electronic device hides the message, as Figure 8 shown.
[0223] In this embodiment, the notification application is configured to enable the intelligent display function. Specifically, when the electronic device receives a message, it calls the sensor control center to compare the biometric data to be compared collected by the electronic device with the target biometric data; the sensor control center indicates the eighth information to the notification application when the biometric data to be compared is successfully compared with the target biometric data, or indicates the ninth information to the notification application when the biometric data to be compared fails to be compared with the target biometric data. The eighth information is used to indicate the display of the message, and the ninth information is used to indicate the hiding of the message; the notification application displays the message based on the received eighth information, or hides the message based on the received ninth information.
[0224] At the third moment, if the electronic device detects user A again, the electronic device can display the message at this time.
[0225] At the fourth moment, if the electronic device detects a message clearing operation, it will no longer make a judgment on message hiding or display.
[0226] Among them, displaying the message may mean displaying the content of the message in plain text. Therefore, the message may mean not prompting a message notification, or prompting a message notification but not displaying the content of the message. The sensor control center can be configured with a data comparison algorithm.
[0227] It should be noted that the acquisition and storage of the target face data can be referred to the description of any of the above embodiments, and will not be elaborated here.
[0228] It should be noted that the sensor control center can also compare the face data to be compared collected by the electronic device with the target face data in real time, so as to quickly obtain the feature data comparison result when the electronic device receives a message, and then determine whether to display the message.
[0229] Scenario 2: The face data of user A is entered into the electronic device. At the fifth moment, the electronic device detects a payment operation. At this time, through the sensor control center, it is detected that the user who initiates the payment operation at this time is user A based on the target face data, and the payment is made in response to the payment operation.
[0230] At the sixth moment, the electronic device detects a payment operation. At this time, through the sensor control center, it is detected that the user who initiates the payment operation at this time is user B based on the target face data, and the payment operation is refused to respond, and thus the payment is refused.
[0231] The technical solutions of the present application will be described in detail below with specific embodiments. These several specific embodiments can be implemented independently or in combination with each other. For the same or similar concepts or processes, they may not be elaborated in some embodiments.
[0232] The data transmission method provided in this embodiment may include:
[0233] The client application CA instructs the first trusted application TA with first information, and the first information indicates to transmit the target data of the first trusted application TA. In response to the first information, the first trusted application TA writes the target data to the first memory area, and instructs the client application CA with second information, where the second information is used to indicate the target storage address of the target data in the first memory area, and the first memory area is a memory area in the trusted execution environment TEE. The client application CA instructs the sensor control center with third information, and the third information includes the second information or address information determined based on the second information. The sensor control center determines the target storage address based on the third information, and obtains the target data from the first memory area based on the target storage address.
[0234] In this embodiment, reference may be made to the relevant descriptions of the embodiments as Figure 5 shown, and details are not described herein.
[0235] In a possible implementation manner, in the data format of the target data, it includes the content of the target data, and at least one of the first indication information, the second indication information, the third indication information, the fourth indication information, the fifth indication information, the sixth indication information, or the seventh indication information.
[0236] In this embodiment, reference may be made to the relevant descriptions of the embodiments as Figure 5 shown, and details are not described herein.
[0237] In another possible implementation manner, it may also be that the target data includes the content of the target data without including indication information, etc.
[0238] In a possible implementation manner, it may be that the third information includes the second information, and the second information includes the target storage index. In this way, the sensor control center can determine the target storage address based on the target address index and the mapping relationship. Optionally, the second information may also include index information for determining the target storage index, etc., and then the target storage index can be determined based on the index information, and then the target storage address can be determined based on the target storage index.
[0239] In another possible implementation manner, it may be that the third information includes address information determined based on the second information, such as the target storage address. In this way, the sensor control center can directly obtain the target storage address. Optionally, in this embodiment, the step of determining the address information based on the second information may be performed in the first trusted application TA, or may be performed in the REE, that is, the address information is transmitted to the sensor control center through the REE.
[0240] It can be understood that if the REE determines the address information, it may refer to the manner in which the sensor control center determines the address information, and details are not described herein.
[0241] In a possible implementation, before the sensor control center obtains target data from the first memory area based on the target storage address, it further includes:
[0242] The first trusted application TA verifies the access permission of the sensor control center, and when the access permission verification of the sensor control center passes, it allows the sensor control center to obtain target data from the first memory area.
[0243] In this embodiment, reference can be made to the relevant descriptions of the embodiments as Figure 5 shown, and details are not described herein.
[0244] In another possible implementation, the access permission of the sensor control center can also be verified by other modules (such as REE). In this embodiment, the first trusted application TA can obtain the identifier of the sensor control center and then transmit the identifier to the sensor control center HAL. In this way, the sensor control center HAL can verify the access permission of the first trusted application, and then the sensor control center HAL transmits the verification result of the access permission to the first trusted application TA through the CA. In this way, the first trusted application TA can know whether the sensor control center has the access permission to access the first memory area.
[0245] In a possible implementation, after the sensor control center obtains target data from the first memory area based on the target storage address, it further includes:
[0246] The sensor control center obtains the data to be compared; the sensor control center compares the data to be compared with the target data to obtain a data comparison result; the sensor control center writes the data comparison result into the second memory area, and the second memory area is a memory area in the trusted execution environment TEE.
[0247] In this embodiment, reference can be made to the relevant descriptions of the embodiments as Figure 5 shown, and details are not described herein.
[0248] In another possible implementation, the second memory area can be a memory area in the RRE.
[0249] In a possible implementation, after the sensor control center writes the data comparison result into the second memory area, it further includes:
[0250] The first trusted application TA obtains the data comparison result from the second memory area and transmits the data comparison result to the second trusted application TA; the second trusted application TA transmits the data comparison result to the payment application; the payment application makes a payment or refuses to make a payment based on the data comparison result.
[0251] In this embodiment, reference can be made to the relevant descriptions of the embodiments as Figure 5The related descriptions of the illustrated embodiments are not elaborated herein.
[0252] In another possible implementation, in another possible implementation, it may also be that the first trusted application TA writes the data comparison result to other memory areas (such as the memory areas in the REE), and then the payment application can write the data comparison result from the memory areas in the REE.
[0253] In one possible implementation, when the electronic device acquires the target biometric data, it may include:
[0254] The setting application responds to the biometric input operation and collects the first biometric data through the electronic device; when the general execution environment REE determines that the first biometric data meets the data quality requirements, it indicates the fourth information to the client application CA, and the fourth information is used to indicate storing the first biometric data; the client application CA responds to the fourth information and indicates the fifth information and the first biometric data to the first trusted application TA, and the fifth information is used to indicate storing the first biometric data; the first trusted application TA responds to the fifth information and stores the first biometric data as the target biometric data.
[0255] In this embodiment, reference may be made to the Figure 5 related descriptions of the illustrated embodiments, which are not elaborated herein.
[0256] In another possible implementation, it may also be that the electronic device determines whether the current conditions meet specific conditions. If so, it triggers the collection of biometric data. For example, the current electronic device is in an idle state, or the electronic device is activated for the first time and other specific conditions.
[0257] In one possible implementation, the sensor control center HAL determines whether the first biometric data meets the data quality requirements.
[0258] In this embodiment, reference may be made to the Figure 5 related descriptions of the illustrated embodiments, which are not elaborated herein.
[0259] In another possible implementation, it may also be determined whether the first biometric data meets the data quality requirements through other modules. For example, it is determined whether the first biometric data meets the data quality requirements through the camera driver in the kernel layer.
[0260] In one possible implementation, after acquiring the biometric data once, it further includes:
[0261] In the case that the general execution environment REE determines that the first biometric data does not meet the data quality requirements, extract the first biometric value based on the first biometric data and store it; the client application CA receives the second biometric data collected by the electronic device; the general execution environment REE extracts the second biometric value based on the second biometric data and matches the second biometric value with the first biometric value; in the case that the second biometric value matches the first biometric value successfully and the second biometric data meets the data quality requirements, the general execution environment REE indicates sixth information to the client application CA, and the sixth information is used to indicate storing the second biometric data; in response to the sixth information, the client application CA indicates seventh information and the second biometric data to the first trusted application TA, and the seventh information is used to indicate storing the second biometric data; in response to the seventh information, the first trusted application TA stores the second biometric data as the target biometric data.
[0262] In this embodiment, reference may be made to the relevant description of the embodiment as Figure 5 shown, which will not be elaborated here.
[0263] In a possible implementation manner, the sensor control center HAL extracts the second biometric value based on the second biometric data and matches the second biometric value with the first biometric value.
[0264] In this embodiment, reference may be made to the relevant description of the embodiment as Figure 5 shown, which will not be elaborated here.
[0265] In another possible implementation manner, it is also possible to extract the second biometric value based on the second biometric data by other modules and match the second biometric value with the first biometric value, or the step of extracting the second biometric value based on the second biometric data and matching the second biometric value with the first biometric value is executed by different modules.
[0266] In a possible implementation manner, after the sensor control center determines the target storage address based on the third information and obtains the target data from the first memory area based on the target storage address, it further includes:
[0267] When the electronic device receives a message, the sensor control center compares the second biometric data to be compared collected by the electronic device with the target biometric data; when the comparison between the second biometric data to be compared and the target biometric data is successful, the sensor control center indicates the eighth information to the notification application, or when the comparison between the second biometric data to be compared and the target biometric data fails, the sensor control center indicates the ninth information to the notification application. The eighth information is used to indicate the display of the message, and the ninth information is used to indicate the hiding of the message; the notification application displays the message based on the received eighth information, or hides the message based on the received ninth information.
[0268] In this embodiment, reference may be made to the relevant descriptions of the embodiments shown in Figure 5 and details are not described herein again.
[0269] In another possible implementation, the message can also be directly displayed without comparing biometric data.
[0270] It should be noted that the data (information) transmission flow in this embodiment can be implemented through the interfaces between the configuration modules. Information such as the first information and the first indication information may include some fields or commands. The fields or commands may include but are not limited to numbers, symbols, strings formed by multiple numbers, strings formed by multiple symbols, or strings formed by a mixture of numbers and symbols, etc.
[0271] It should be noted that the module names involved in the embodiments of the present application can all be defined as other names, as long as the functions of each module can be realized, and no specific restrictions are imposed on the module names.
[0272] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in the embodiments of the present application are all information and data authorized by the user or fully authorized by all parties, and the collection, use, and processing of the relevant data need to comply with the relevant laws, regulations, and standards of the relevant countries and regions, and corresponding operation entrances are provided for the user to choose to authorize or reject.
[0273] The data transmission method of the embodiments of the present application has been described above. Next, the device for executing the above method provided by the embodiments of the present application will be described. Those skilled in the art can understand that the method and the device can be combined and cited with each other, and the relevant device provided by the embodiments of the present application can execute the steps in the above-listed methods.
[0274] The transmission method provided by the embodiments of the present application can be applied to an electronic device with communication functions. The electronic device includes a terminal device, and the specific device form of the terminal device and the like can refer to the above relevant descriptions and will not be elaborated here.
[0275] An embodiment of the present application provides a terminal device, which includes: a processor and a memory; the memory stores computer-executable instructions; the processor executes the computer-executable instructions stored in the memory, so that the terminal device executes the above method.
[0276] Such as Figure 9 It is a schematic structural diagram of a chip provided by an embodiment of the present application. The chip 900 includes one or more than two (including two) processors 901, a communication line 902, a communication interface 903, and a memory 904.
[0277] In some embodiments, the memory 904 stores the following elements: executable modules or data structures, or subsets thereof, or extended sets thereof.
[0278] The methods described in the embodiments of the present application above can be applied to or implemented by the processor 901. The processor 901 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit in the hardware of the processor 901 or instructions in software form. The above-mentioned processor 901 may be a general-purpose processor (for example, a microprocessor or a conventional processor), a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gates, transistor logic devices or discrete hardware components. The processor 901 can implement or execute various processing-related methods, steps, and logic block diagrams disclosed in the embodiments of the present application.
[0279] The steps of the method described in combination with the embodiments of the present application can be directly embodied as being completed by a hardware decoding processor, or completed by a combination of hardware and software modules in the decoding processor. Among them, the software module may be located in a mature storage medium in the art such as a random access memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable read-only memory (EEPROM). This storage medium is located in the memory 904, and the processor 901 reads the information in the memory 904 and combines its hardware to complete the steps of the above method.
[0280] Communication can be carried out between the processor 901, the memory 904, and the communication interface 903 through the communication line 902.
[0281] In the above embodiments, the instructions stored in the memory for the processor to execute may be implemented in the form of a computer program product. Among them, the computer program product may be pre-written in the memory in advance, or may be downloaded and installed in the memory in the form of software.
[0282] The embodiments of the present application also provide a computer-readable storage medium. The computer-readable storage medium stores a computer program. When the computer program is executed by a processor, the above method is implemented. The method described in the above embodiments can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. If implemented in software, the functions can be stored as one or more instructions or codes on a computer-readable medium or transmitted on a computer-readable medium. The computer-readable medium may include a computer storage medium and a communication medium, and may also include any medium that can transmit a computer program from one place to another. The storage medium may be any target medium accessible by a computer.
[0283] In a possible implementation, the computer-readable medium may include RAM, ROM, a compact disc read-only memory (CD-ROM), or other optical disc storage, a magnetic disk storage, or other magnetic storage device, or any other medium targeted to carry or store the required program code in the form of instructions or data structures and accessible by a computer. Moreover, any connection is properly referred to as a computer-readable medium. For example, if software is transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, Digital Subscriber Line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of the medium. As used herein, disk and optical disc include optical discs, laser discs, optical discs, Digital Versatile Discs (DVDs), floppy disks, and Blu-ray discs, where disks typically reproduce data magnetically, while optical discs reproduce data optically using lasers. The above combinations should also be included within the scope of the computer-readable medium. <s
[0284] The embodiments of the present application provide a computer program product. The computer program product includes a computer program. When the computer program is run, the computer is caused to execute the above method.
[0285] Embodiments of the present application are described with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to embodiments of the present application. It should be understood that each flow and / or block in the flowchart and / or block diagram, as well as the combination of flows and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to the processing unit of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable devices to generate a machine, such that the instructions executed by the processing unit of the computer or other programmable data processing device generate a means for implementing the specified functions in one process Figure 1 or more processes and / or blocks Figure 1 or a means for implementing the functions specified in one block or more blocks.
[0286] In the above specific embodiments, the objectives, technical solutions, and beneficial effects of the present invention have been further described in detail. It should be understood that the above are only specific embodiments of the present invention and are not used to limit the protection scope of the present invention. Any modifications, equivalent replacements, improvements, etc. made on the basis of the technical solutions of the present invention shall be included in the protection scope of the present invention.
Claims
1. A data transmission method, characterized in that, Applied to an electronic device, the electronic device includes a Trusted Execution Environment (TEE), a sensor control center, a first Trusted Application (TA) running in the TEE, a Rich Execution Environment (REE), and a client application (CA) running in the REE. The method includes: The CA instructs the first TA with a first piece of information, and the first piece of information indicates to transmit target data of the first TA. In response to the first piece of information, the first TA writes the target data to a first memory area and instructs the CA with a second piece of information. The second piece of information is used to indicate the target storage address of the target data in the first memory area, and the first memory area is a memory area in the TEE. The CA instructs the sensor control center with a third piece of information, and the third piece of information includes the second piece of information or address information determined based on the second piece of information. The sensor control center determines the target storage address based on the third piece of information and obtains the target data from the first memory area based on the target storage address.
2. The method according to claim 1, characterized in that, In the data format of the target data, it includes the content of the target data and at least one of a first indication information, a second indication information, a third indication information, a fourth indication information, a fifth indication information, a sixth indication information, or a seventh indication information. The first indication information is used to indicate the total length of the target data. The second indication information is used to indicate the version number of the target data. The third indication information is used to indicate the acquisition time of the target data. The fourth indication information is used to indicate the number of the target data. The fifth indication information is used to indicate the length of one target data. The sixth indication information is used to indicate the type of one target data. The seventh indication information is used to indicate the hash value of the target data.
3. The method according to claim 1 or 2, characterized in that, The third piece of information includes the second piece of information, and the second piece of information includes a target address index. The sensor control center is configured with a mapping relationship between the address index and the storage address. The sensor control center determines the target storage address based on the third piece of information, including: The sensor control center determines the target storage address based on the target address index and the mapping relationship.
4. The method according to any one of claims 1 to 3, characterized in that Before the sensor control center obtains the target data from the first memory area based on the target storage address, it further includes: The first TA verifies the access permission of the sensor control center, and when the access permission verification of the sensor control center passes, allows the sensor control center to obtain the target data from the first memory area.
5. The method according to any one of claims 1-4, characterized in that, After the sensor control center obtains the target data from the first memory area based on the target storage address, it further includes: The sensor control center obtains data to be compared. The sensor control center compares the data to be compared with the target data to obtain a data comparison result. The sensor control center writes the data comparison result to a second memory area, where the second memory area is a memory area in the trusted execution environment TEE.
6. The method according to claim 5, wherein The electronic device further includes a payment application and a notification application running in the general execution environment REE, and a second trusted application TA running in the trusted execution environment TEE. The notification application is configured to enable an intelligent display function. The target data includes target biometric data, and the data to be compared includes first biometric data to be compared. The first biometric data to be compared is biometric data collected by the electronic device when the payment application responds to a payment operation. After the sensor control center writes the data comparison result to the second memory area, the following steps are further included: The first trusted application TA obtains the data comparison result from the second memory area and transmits the data comparison result to the second trusted application TA. The second trusted application TA transmits the data comparison result to the payment application. The payment application makes a payment or rejects a payment based on the data comparison result. Or, The first trusted application TA transmits the data comparison result to the notification application through the client CA. The notification application displays or hides the received message based on the data comparison result.
7. The method according to any one of claims 1-6, characterized in that, The target data includes target biometric data. The electronic device further includes a setting application running in the general execution environment REE. The method further includes: The setting application responds to a biometric input operation and collects first biometric data through the electronic device. When the trusted execution environment TEE determines that the first biometric data meets the data quality requirements, the first biometric data is stored as the target biometric data.
8. The method according to claim 7, wherein The method further includes: Determining whether the first biometric data meets the data quality requirements through the first trusted application TA, and storing the target biometric data through the first trusted application TA.
9. The method according to claim 7 or 8, characterized in that The method further includes: When the trusted execution environment TEE determines that the first biometric data does not meet the data quality requirements, a first biometric value is extracted based on the first biometric data and stored. The trusted execution environment TEE obtains second biometric data collected by the electronic device. The trusted execution environment TEE extracts a second biometric value based on the second biometric data and matches the second biometric value with the first biometric value. When the second biometric value matches the first biometric value successfully and the second biometric data meets the data quality requirements, the trusted execution environment TEE stores the second biometric data as the target biometric data.
10. The method according to claim 9, wherein The trusted execution environment TEE extracts a second biometric value based on the second biometric data and matches the second biometric value with the first biometric value, including: The first trusted application TA extracts a second biometric value based on the second biometric data and matches the second biometric value with the first biometric value.
11. The method according to any one of claims 1 to 10, characterized in that, The target data includes target biometric data. The electronic device further includes a notification application running in the general execution environment REE. The notification application is configured to enable an intelligent display function. After the sensor control center determines the target storage address based on the third information and obtains the target data from the first memory area based on the target storage address, it further includes: When the electronic device receives a message, the sensor control center compares the second biometric data to be compared collected by the electronic device with the target biometric data. When the comparison between the second biometric data to be compared and the target biometric data is successful, the sensor control center indicates eighth information to the notification application, or when the comparison between the second biometric data to be compared and the target biometric data fails, the sensor control center indicates ninth information to the notification application. The eighth information is used to indicate displaying the message, and the ninth information is used to indicate hiding the message. The notification application displays the message based on the received eighth information or hides the message based on the received ninth information.
12. The method according to any one of claims 1-11, characterized in that The client application CA indicates first information to the first trusted application TA, including: The client CA obtains a data storage status identifier and, when the data storage status identifier is the first identifier, indicates first information to the first trusted application TA. The first identifier is used to indicate that the sensor control center does not store the target data; and / or, The client application CA searches for the target data from the first trusted application TA and the sensor control center respectively, and when the target data is found from the first trusted application TA and not found from the sensor control center, indicates first information to the first trusted application TA.
13. An electronic device, characterized in that, The electronic device includes: one or more processors and a memory; The memory is coupled to the one or more processors. The memory is used to store computer program code, and the computer program code includes computer instructions. The one or more processors call the computer instructions to cause the electronic device to execute the method according to any one of claims 1 to 12.
14. A chip system, characterized in that, The chip system is applied to an electronic device. The chip system includes one or more processors, and the one or more processors are used to call computer instructions to cause the electronic device to execute the method according to any one of claims 1 to 12.
15. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes computer instructions. When the computer instructions run on an electronic device, the electronic device is caused to execute the method according to any one of claims 1 to 12.
16. A computer program product, characterized in that, The computer program product includes computer program code which, when run on an electronic device, causes the electronic device to perform the method according to any one of claims 1 to 12.
Citation Information
Patent Citations
Biological characteristic identification system, method and terminal equipment
CN109863491A
Data isolation method and device and electronic equipment
CN110245001A
Position information acquisition method and electronic equipment
CN112492505A
A trusted application program running method, an information processing method, a memory allocation method and a memory allocation device
CN112528288A
Trusted application control method and equipment, computer storage medium and terminal
CN113051572A