Method, device, system, medium, electronic equipment and program product for protecting data security of intelligent agent

By performing encryption and decryption operations in a trusted execution environment and managing keys using a trusted key service, the problem of user sensitive data security during intelligent agent services in a public network environment is solved, enabling secure data transmission and storage and ensuring the security of user data.

CN120602156BActive Publication Date: 2026-03-24BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-06-09
Publication Date
2026-03-24

AI Technical Summary

Technical Problem

In a public network environment, when intelligent agents provide services such as ticket purchase, shopping, and food delivery to users, how to ensure the security of users' sensitive data is a challenge that current technologies struggle to achieve the normal operation of intelligent agents while guaranteeing data security.

Method used

The system performs encryption and decryption operations on user data in a trusted execution environment. It utilizes a trusted key service to store and manage keys for sensitive user data, ensuring that data is transmitted and stored in encrypted form. The agent negotiates keys with the server for data encryption and decryption, preventing the leakage of sensitive data in the public cloud environment.

Benefits of technology

It enables the provision of intelligent agent services to users in a public network environment while ensuring the security of users' sensitive data, preventing data leakage, and ensuring the security of data transmission and storage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120602156B_ABST
    Figure CN120602156B_ABST
Patent Text Reader

Abstract

A method, device, system, medium, electronic equipment and program product for protecting the data security of an intelligent agent. The method comprises the following steps performed in a first trusted execution environment: in response to receiving a user data acquisition request sent by an intelligent agent, acquiring first ciphertext data corresponding to the request; acquiring a first key corresponding to the request from a trusted key service; decrypting the first ciphertext data using the first key to obtain first plaintext data; encrypting the first plaintext data using a second key; and sending the second ciphertext data obtained by encryption to the intelligent agent. When the intelligent agent is running in a public network environment, the intelligent agent can provide intelligent agent services such as ticket purchase, shopping, and takeout ordering for users while ensuring the security of sensitive data of the users in the public network environment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of computer technology, and more specifically, to a method, apparatus, system, medium, electronic device, and program product for protecting the data security of intelligent agents. Background Technology

[0002] A large-model intelligent agent refers to an application framework based on a large model, possessing planning and thinking abilities, memory capabilities, and the ability to use tools, enabling it to autonomously complete a given task. The large model can be any of the following: a large language model, a large visual model, a large speech model, a multimodal model, etc., or it can be a combination of multiple such models. The core of the intelligent agent is to use the large model as a general problem solver, connecting it with external resources to complete the task.

[0003] Some user-facing agents may need to access various applications when processing user-submitted tasks such as purchasing tickets, shopping, ordering takeout, and navigation. These applications often require sensitive user information, such as account passwords and payment passwords. When these agents operate in a public network environment, ensuring the security of sensitive user data while providing services is a critical challenge. Summary of the Invention

[0004] This summary section is provided to briefly introduce the concepts, which will be described in detail in the detailed description section below. This summary section is not intended to identify key or essential features of the claimed technical solution, nor is it intended to limit the scope of the claimed technical solution.

[0005] In a first aspect, this disclosure provides a method for protecting the security of intelligent agent data, the method comprising the following steps performed in a first trusted execution environment:

[0006] In response to receiving a user data acquisition request sent by the intelligent agent, the first encrypted data corresponding to the user data acquisition request is acquired;

[0007] Obtain a first key corresponding to the user data acquisition request from a trusted key service, wherein the trusted key service is used to store keys pre-set by the user through a client;

[0008] The first ciphertext data is decrypted using the first key to obtain the first plaintext data;

[0009] The first plaintext data is encrypted using a second key to obtain second ciphertext data, wherein the second key is negotiated with the intelligent agent;

[0010] The second encrypted data is sent to the intelligent agent.

[0011] Secondly, this disclosure provides an apparatus for protecting the data security of intelligent agents, the apparatus comprising the following modules deployed in a first trusted execution environment:

[0012] The first acquisition module is configured to, in response to receiving a user data acquisition request sent by the intelligent agent, acquire first encrypted data corresponding to the user data acquisition request;

[0013] The second acquisition module is used to acquire a first key corresponding to the user data acquisition request from a trusted key service, wherein the trusted key service is used to store keys pre-set by the user through the client;

[0014] The first decryption module is used to decrypt the first ciphertext data using the first key to obtain the first plaintext data;

[0015] The first encryption module is used to encrypt the first plaintext data using a second key to obtain second ciphertext data, wherein the second key is negotiated with the intelligent agent;

[0016] The sending module is used to send the second encrypted data to the intelligent agent.

[0017] Thirdly, this disclosure provides a system for protecting the data security of intelligent agents, including:

[0018] An intelligent agent, a server, and at least one client;

[0019] Each of the at least one client is connected to the intelligent agent, and each of the at least one client is used to issue the user's first task to the intelligent agent;

[0020] The intelligent agent is connected to the server and is used to generate a user data acquisition request according to the first task and send the user data acquisition request to the server.

[0021] The server is deployed in a first trusted execution environment to execute the steps of the method for protecting agent data security provided in the first aspect of this disclosure.

[0022] The intelligent agent is further configured to: receive the second ciphertext data sent by the server, decrypt the second ciphertext data using the second key in the second trusted execution environment to obtain the first plaintext data, and execute the first task based on the first plaintext data.

[0023] Fourthly, this disclosure provides a computer-readable medium having a computer program stored thereon, which, when executed by a processing device, implements the steps of the method for protecting the data security of an intelligent agent provided in the first aspect of this disclosure.

[0024] Fifthly, this disclosure provides an electronic device, comprising:

[0025] A storage device on which computer programs are stored;

[0026] A processing device for executing the computer program in the storage device to implement the steps of the method for protecting the data security of intelligent agents provided in the first aspect of this disclosure.

[0027] In a sixth aspect, this disclosure provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the method for protecting the data security of an intelligent agent provided in the first aspect of this disclosure.

[0028] In the above technical solution, the storage and transmission of user sensitive data required by the intelligent agent to perform tasks are all in encrypted form, and the key used for encryption storage is stored in a trusted key service, which cannot be directly obtained by the cloud service provider. In addition, during the intelligent agent's task execution, all links involving user sensitive data are executed in a trusted execution environment. Therefore, when the intelligent agent runs in a public network environment, it can provide users with intelligent agent services such as ticket purchase, shopping, and food delivery, while ensuring the security of users' sensitive data in the public network environment.

[0029] Other features and advantages of this disclosure will be described in detail in the following detailed description section. Attached Figure Description

[0030] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale. In the drawings:

[0031] Figure 1 This is a schematic diagram illustrating the process of handling ticket purchasing tasks in related technologies.

[0032] Figure 2 This is a block diagram illustrating a system for protecting the data security of intelligent agents according to an exemplary embodiment.

[0033] Figure 3 This is a schematic diagram illustrating a process for handling a ticket purchase task according to an exemplary embodiment.

[0034] Figure 4This is a flowchart illustrating a method for protecting the data security of an intelligent agent according to an exemplary embodiment.

[0035] Figure 5 This is a schematic diagram illustrating a process for protecting the data security of an intelligent agent according to an exemplary embodiment.

[0036] Figure 6 This is a schematic diagram illustrating a key setting process according to an exemplary embodiment.

[0037] Figure 7 This is a flowchart illustrating an account password data acquisition process according to an exemplary embodiment.

[0038] Figure 8 This is a schematic diagram of the interface of a transparent and trusted center according to an exemplary embodiment.

[0039] Figure 9 This is a block diagram illustrating an apparatus for protecting the data security of an intelligent agent according to an exemplary embodiment.

[0040] Figure 10 This is a schematic diagram of the structure of an electronic device according to an exemplary embodiment. Detailed Implementation

[0041] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.

[0042] It should be understood that the steps described in the method embodiments of this disclosure may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this disclosure is not limited in this respect.

[0043] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.

[0044] It should be noted that the concepts of "first" and "second" mentioned in this disclosure are used only to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependencies.

[0045] It should be noted that the terms "a" and "a plurality of" used in this disclosure are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".

[0046] The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.

[0047] It is understood that before using the technical solutions disclosed in the various embodiments of this disclosure, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this disclosure in an appropriate manner in accordance with relevant laws and regulations, and user authorization should be obtained.

[0048] For example, upon receiving a user's active request, a prompt message is sent to the user to explicitly inform them that the requested operation will require the acquisition and use of the user's personal information. This allows the user to independently choose whether to provide personal information to the software or hardware, such as the electronic device, application, server, or storage medium performing the operations of this disclosed technical solution, based on the prompt message.

[0049] As an optional but non-limiting implementation, in response to a user's active request, sending a prompt message to the user can be done via a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide personal information to the electronic device.

[0050] It is understood that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of this disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of this disclosure.

[0051] Meanwhile, it is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and related provisions.

[0052] As discussed in the background section, when user-facing agents process user-submitted tasks such as purchasing tickets, shopping, ordering takeout, and navigation, they may need to access various applications. When these applications are running, they often require the use of the user's sensitive information, such as account passwords and payment passwords.

[0053] like Figure 1 As shown, a user submits a ticket-buying task, requesting an agent to purchase high-speed rail tickets on their behalf through a ticketing application (APP) for a specified time, departure and destination, passenger, and seat. At this point, the agent server is deployed on a public cloud. It opens the ticketing APP deployed on the agent server to execute the ticket-buying task. During the ticket-buying process, the agent needs the user's APP account password, the user's ID number, name, and other personal identification information, as well as the payment password. This data constitutes the user's sensitive data. Therefore, the public cloud requires the use of the user's sensitive data for the agent to smoothly complete the task on behalf of the user, and the security of this sensitive data must be protected.

[0054] Currently, the scenarios in which users utilize Artificial Intelligence (AI) on terminal devices such as smartphones, tablets, and personal computers are relatively limited. In dialogue and question-and-answer sessions within apps that integrate large inference models, AI responses are primarily limited to information obtainable from web pages. It cannot access information within the app itself, nor can it truly assist users in tasks such as purchasing tickets, shopping, or ordering takeout. This is due to several reasons: First, apps on terminal devices do not have open API permissions, and the operating systems of these devices also do not grant access to underlying permissions, creating barriers for AI. Second, using purely visual solutions results in significant response latency, slower than user actions. Finally, it lacks cross-platform and cross-operating system compatibility.

[0055] Therefore, when intelligent agents operate in a public network environment, how to provide users with intelligent agent services such as ticket purchase, shopping, and food delivery while ensuring the security of users' sensitive data in the public network environment is an urgent problem to be solved.

[0056] In view of this, the present disclosure provides a method, apparatus, system, medium, electronic device and program product for protecting the data security of intelligent agents.

[0057] Figure 2 This is a block diagram illustrating a system for protecting the data security of intelligent agents according to an exemplary embodiment. Figure 2 As shown, the system for protecting the data security of intelligent agents includes an intelligent agent 10, a server 20, and at least one client 30. Figure 2(The system for protecting the data security of intelligent agents includes multiple clients as an example.) Among them, intelligent agent 10 is the aforementioned Agent Server, and client 30 can be an Agent Client. Intelligent agent 10 is deployed in a public cloud environment, and server 20 is deployed in a Trusted Execution Environment (TEE).

[0058] TEE (Transfer Execution Environment) is a hardware-based security technology that creates a secure computing environment isolated from the outside world by dividing it into secure and insecure parts. This ensures the confidentiality and integrity of the data and code loaded within it. Because TEE is isolated from the ordinary environment, it offers a higher level of security and is suitable for processing sensitive data.

[0059] In one possible implementation, Private Cloud Computing (PCC) can be implemented based on TEE technology. In this case, the server 20 can be deployed in the PCC environment. PCC is a new computing paradigm for cloud tenants to protect sensitive data in a public cloud environment, based on privacy protection innovations such as TEE, cryptographic applications, and information flow security.

[0060] like Figure 2 As shown, each of the at least one client is connected to the agent, and each of the at least one client is used to issue the user's first task to the agent. The first task can be a ticket purchase task, such as purchasing train tickets, plane tickets, etc., or it can be a shopping task, ordering takeout, or route navigation task. The Agent Client can be an app that integrates a large inference model, and it belongs to the edge app category.

[0061] like Figure 2 As shown, the intelligent agent 10 is connected to the server 20 and is used to generate a user data acquisition request based on the user's first task, and send the user data acquisition request to the server. The user data acquisition request is used to acquire user data. During the execution of the task, if the intelligent agent 10 encounters a step where a login account is required to obtain information from a relevant application or software, it can generate a user data acquisition request based on the first task to obtain the login account for the relevant application or software, such as... Figure 3 As shown, the ticket purchase task requires obtaining the account and password of the ticket purchase APP. After logging in, it can also generate a user data acquisition request to obtain the user's personal identity information such as name and ID number. After submitting the order, it generates a user data acquisition request to obtain the payment password and completes the order payment based on the obtained bank card or other third-party payment password.

[0062] The server 20 is used to retrieve the first encrypted data corresponding to the user data retrieval request from the first database according to the user data retrieval request sent by the agent 10, decrypt the data, encrypt it using the key agreed with the agent, and then send it back to the agent 10 so that the agent 10 can execute the user's first task in the second TEE based on the data obtained from the server.

[0063] like Figure 3 As shown, server 20 retrieves the account and password of the ticketing app from the first database to log in to the ticketing app. Then, it retrieves personal identification information from the first database to place an order. Finally, it retrieves the payment password from the first database to complete the order payment. For example, Figure 3 As shown, the acquisition of sensitive information such as account passwords, personal identification information, and payment passwords is all performed in the TEE, thereby preventing the leakage of this sensitive data.

[0064] The first database can be a database in a regular cloud environment or a database in a TEE.

[0065] Figure 4 This is a flowchart illustrating a method for protecting agent data security according to an exemplary embodiment. The method for protecting agent data security can be applied to a server deployed in a first TEE, for example... Figure 2 Server 20 in the example. Figure 4 As shown, the method for protecting the data security of the intelligent agent may include S101 to S105 executed in the first TEE.

[0066] In S101, in response to receiving a user data acquisition request sent by the intelligent agent, the first encrypted data corresponding to the user data acquisition request is acquired.

[0067] In this disclosure, a user can initiate a first task through an Agent Client on a terminal device. Upon receiving the first task, the Agent Client can send it to an intelligent agent in a public cloud environment. The intelligent agent can generate a user data retrieval request based on the first task and send this request to the server. After receiving the user data retrieval request from the intelligent agent, the server can read the first encrypted data from a first database, i.e., access the first database to obtain the first encrypted data corresponding to the user data retrieval request. The user can initiate the first task via voice or text input.

[0068] For example, such as Figure 5As shown, the user initiates the first task through the Agent Client. The specific content of the first task is "Help me buy a high-speed rail ticket from Shenzhen to Longyan on May 1st, window seat, and pay directly on the ticketing app".

[0069] In S102, the first key corresponding to the user data acquisition request is obtained from the trusted key service.

[0070] In S103, the first ciphertext data is decrypted using the first key to obtain the first plaintext data.

[0071] In this disclosure, the Trusted Key Service (TKS) is used to store keys pre-set by users through a client, specifically including the mapping between user identifiers and keys. Figure 5 and Figure 6 As shown, users can pre-set a key for encrypting sensitive personal information through the Agent Security Center in the client. This key serves as the user's own key within the data vault, and is then entrusted to TKS. TKS is a security service running on PCC, designed to provide users with hardware-based key management and proxy services. Figure 5 As shown, TKS runs in the first TEE, as follows: Figure 5 As shown, TKS can be deployed on the server side. Additionally, sensitive personal information such as login passwords, personal identification information, and payment passwords for relevant applications or software can be entrusted to the data vault (i.e., the first database). Specifically, the server encrypts the data to be entrusted using a user-defined key before storing it in the data vault.

[0072] Thus, the data obtained by the server from the first database is encrypted, namely the first encrypted data. Since the first encrypted data is encrypted using the first key pre-set by the user, after obtaining the first encrypted data, the user identifier can be obtained from the user data retrieval request. Then, the key corresponding to the user identifier can be obtained from the TKS, namely the first key corresponding to the user data retrieval request, where the user identifier is included in the user data retrieval request. Finally, the first encrypted data is decrypted using the first key to obtain the first plaintext data.

[0073] In S104, the first plaintext data is encrypted using the second key to obtain the second ciphertext data.

[0074] In S105, the second encrypted data is sent to the agent.

[0075] In this disclosure, an intelligent agent is used in a second TEE to decrypt received second ciphertext data using a second key to obtain first plaintext data, and then performs the user's first task in the second TEE based on the first plaintext data. The second key is negotiated with the service intelligent agent.

[0076] like Figure 5 As shown, to prevent leakage of the first plaintext data during transmission in a public cloud environment, sensitive user data can be transmitted in encrypted form between the server and the agent. Specifically, after receiving the first plaintext data, the server can encrypt it using a pre-negotiated second key to obtain second encrypted data, which is then sent to the agent. Upon receiving the second encrypted data, the agent can decrypt it using the second key in a second TEE (Transaction Execution Environment) to obtain the first plaintext data. The agent can then execute the user's first task based on the first plaintext data within the second TEE. To prevent leakage of the first plaintext data due to attacks on the agent, the agent can destroy the first plaintext data after executing the user's first task; that is, the agent also destroys the first plaintext data in the second TEE after the first task is completed.

[0077] In one possible implementation, the first plaintext data can be encrypted using a second key via a first software development kit (SDK) to obtain the second ciphertext data, such as... Figure 5 As shown, the same SDK, namely the PCC SDK, is deployed on the intelligent agent. After receiving the second key, the intelligent agent can decrypt the second ciphertext data using the second SDK within the agent to obtain the first plaintext data. Then, it executes the user's first task based on the first plaintext data in the second TEE. The second SDK runs within the second TEE. By calling the SDK for encryption and decryption, the implementation process of encryption and decryption operations can be simplified. Developers do not need to deeply understand complex encryption and decryption algorithms to easily achieve secure data transmission. Furthermore, professional SDKs are usually designed by experienced security experts and have built-in multiple security mechanisms, such as key management and access control, which can effectively prevent data leakage and unauthorized access.

[0078] For example, such as Figure 3 and Figure 5As shown, the first task is to purchase high-speed rail tickets through a ticketing app. Upon receiving this task, the agent can open the app and enter the login page. At this point, the user's account and password for the ticketing app are required. A user data retrieval request is generated to obtain the account and password and sent to the server. Upon receiving this request, the server retrieves the first encrypted version of the account and password from the data vault. Then, it retrieves the user's pre-set first key from the TKS (Trusted Knowledge System) and uses this first key to decrypt the first encrypted version of the account and password. The plaintext of the ticketing app's username and password is then used by the first SDK with the second key to encrypt the plaintext of the username and password, resulting in the second ciphertext. This second ciphertext is then sent to the intelligent agent. Upon receiving the second ciphertext, the intelligent agent can decrypt it using the second SDK with the second key, obtaining the plaintext username and password. At this point, the intelligent agent can log in to the ticketing app using the obtained plaintext username and password within the second TEE.

[0079] After logging in, the agent can purchase tickets in the second TEE according to user needs. This process requires the target ticket buyer's name and ID number, among other personal identification information. If the ticketing app's passenger information includes the target ticket buyer, the agent can directly use the app and place an order. If the passenger information does not include the target ticket buyer's personal identification information, the agent can generate a user data retrieval request to obtain the target ticket buyer's personal identification information and send it to the server. Upon receiving the user data retrieval request, the server can retrieve the third-party encrypted version of the ticket buyer's name and ID number from the data vault. The system uses the first key to decrypt the third ciphertext of the personal identity information, obtaining the plaintext of the personal identity information. Next, it uses the first SDK to encrypt the plaintext of the personal identity information using the second key, obtaining the fourth ciphertext of the personal identity information, and sends the fourth ciphertext of the personal identity information to the intelligent agent. After receiving the fourth ciphertext of the personal identity information, the intelligent agent can use the second SDK in the intelligent agent to decrypt the fourth ciphertext of the personal identity information using the second key, obtaining the plaintext of the personal identity information. At this time, the intelligent agent can use the obtained plaintext of the personal identity information in the second TEE to place an order and submit the order.

[0080] After submitting an order, users can access the payment page. At this point, a user data retrieval request for the payment password is generated and sent to the server. Upon receiving this request, the server retrieves the fifth ciphertext of the payment password from the data vault. It then decrypts this fifth ciphertext using the first key to obtain the plaintext payment password. Next, it encrypts the plaintext payment password using the second key via the first SDK to obtain the sixth ciphertext, which is then sent to the agent. Upon receiving the sixth ciphertext, the agent decrypts it using the second key via the second SDK to obtain the plaintext payment password. The agent can then use the obtained plaintext payment password in the second TEE to complete the order payment and report the successful ticket purchase to the corresponding client.

[0081] In the above technical solution, the storage and transmission of user sensitive data required by the intelligent agent to perform tasks are all in encrypted form, and the key used for encryption storage is stored in a trusted key service, which cannot be directly obtained by the cloud service provider. In addition, during the intelligent agent's task execution, all links involving user sensitive data are executed in a trusted execution environment. Therefore, when the intelligent agent runs in a public network environment, it can provide users with intelligent agent services such as ticket purchase, shopping, and food delivery, while ensuring the security of users' sensitive data in the public network environment.

[0082] The following section details the specific method for obtaining the first encrypted data corresponding to the user data acquisition request in response to the user data acquisition request sent by the intelligent agent in step S101. Specifically, it can be achieved through the following steps (1) to (3).

[0083] Step (1): In response to receiving a user data acquisition request sent by the intelligent agent, determine whether there is first encrypted data in the first database corresponding to the user data acquisition request.

[0084] Step (2): If the first ciphertext data exists in the first database, then read the first ciphertext data from the first database.

[0085] Step (3): If the first encrypted data does not exist in the first database, send a response message to the agent for the user data acquisition request.

[0086] In this disclosure, the response message is used to indicate that the data corresponding to the user's data retrieval request does not exist in the first database.

[0087] In this disclosure, such as Figure 7As shown, users can authorize the storage of their sensitive data, such as account passwords and personal identification information, into the first database, i.e., the data vault, in advance, or they can choose not to authorize the storage of their sensitive data into the data vault. Therefore, after receiving a user data retrieval request from the agent, the server can first determine whether the data vault contains the first encrypted data corresponding to the user's data retrieval request, i.e., whether there is pre-stored corresponding sensitive data. If the data vault contains the first encrypted data corresponding to the user's data retrieval request, it can read the first encrypted data from the data vault and then execute tasks based on the obtained sensitive data. For example, it can fill in the account password into the login entry of the corresponding APP in the agent to successfully log in to the corresponding APP.

[0088] If the data vault does not contain the first encrypted data corresponding to the user's data retrieval request, the server can send a response message to the agent indicating that the data vault does not contain the data corresponding to the current user's data retrieval request. For example... Figure 7 As shown, after receiving the response message, the agent can request the user to enter sensitive data related to the task, such as account password, in the Agent Client dialog box. If the agent receives the relevant sensitive data entered by the user through the Agent Client, it will continue to execute the task based on the data. If the user refuses to enter sensitive data related to the task (i.e., the user does not agree), it indicates that the task cannot continue to be executed and the task fails.

[0089] In one possible implementation, the above-described method for protecting agent data security may further include the following three steps performed in the first TEE:

[0090] In response to receiving the third key sent by the first client, the third key is stored using a trusted key service;

[0091] In response to receiving the second plaintext data sent by the first client, the second plaintext data is encrypted using the third key to obtain the third ciphertext data;

[0092] The third encrypted data is stored in the first database.

[0093] In this disclosure, such as Figure 5 and Figure 6 As shown, users can pre-set a third key for encrypting sensitive personal information through the first client. After receiving the key hosted by the user, the first client sends it to the server. After receiving the third key, the server can store it in TKS.

[0094] like Figure 5 and Figure 6As shown, users can also pre-host some of their sensitive data, i.e., second plaintext data, through the first client according to their own needs. After receiving the data hosted by the user, the first client can send it to the server. After receiving the data, the server can encrypt it using the first key to obtain the third ciphertext, and then store the third ciphertext in the data vault.

[0095] To meet the needs of users for security, trustworthiness, and self-verification, the ability to query cloud data usage information via the Transparency Confidential Service (TCS) can be enabled on the client side. Specifically, in one possible implementation, the method for protecting agent data security described above may further include the following two steps executed in the first TEE:

[0096] Receive a query request sent by a second client, wherein the query request is used to instruct the retrieval of historical usage records of third plaintext data;

[0097] Retrieve historical usage records and send them to the second client.

[0098] In this disclosure, TCS is a service that audits the application of sensitive user data in PCC, thereby demonstrating that sensitive data flows in encrypted form on the cloud only according to user instructions, and conveying the concept of trust in cloud services to users.

[0099] like Figure 5 and Figure 6 As shown, when a user wants to access their own historical data usage records, they can view them through the Transparent Trusted Center within the Agent Security Center of the second client, such as... Figure 8 As shown. Historical usage records can include at least one of the following: usage time, number of uses, and purpose information. Usage time is used to indicate exactly when sensitive user data was accessed, such as... Figure 8 As shown, the **account password** was just called. The purpose information is used to identify what task was performed and what data was used. The number of times it was used can include today's call (i.e., the current time) and the cumulative number of calls per month.

[0100] Furthermore, after setting the key, the user can modify the key as needed. Specifically, in one possible implementation, the above-mentioned method for protecting agent data security may further include the following five steps performed in the first TEE:

[0101] Receive a first update instruction sent by a third client, wherein the first update instruction is used to instruct the fourth key to be updated to the fifth key;

[0102] Update the fourth key in the trusted key service to the fifth key;

[0103] Obtain the fourth ciphertext data, which is obtained by encrypting it using the fourth key;

[0104] The fourth ciphertext data is decrypted using the fourth key to obtain the fourth plaintext data;

[0105] The fourth plaintext data is encrypted using the fifth key to obtain the fifth ciphertext data, and the fourth ciphertext data is then updated to the fifth ciphertext data.

[0106] In this disclosure, when a user needs to modify the fourth key in the TKS, a first update instruction can be initiated through a third client to indicate that the fourth key is updated to the fifth key. After receiving the first update instruction, the third client can send it to the server. After receiving the first update instruction, the server can update the fourth key in the TKS to the fifth key. At the same time, it retrieves the ciphertext obtained by encrypting with the fourth key from the data vault, i.e., the fourth ciphertext data. Then, it first decrypts the fourth ciphertext data with the fourth key to obtain the fourth plaintext data, and then encrypts the fourth plaintext data with the new fifth key to obtain the fifth ciphertext data. Finally, it updates the fourth ciphertext data in the first database to the fifth ciphertext data.

[0107] In addition to modifying the key, users can also modify the hosted data, such as changing the account password. Specifically, in one possible implementation, the above-mentioned method for protecting agent data security may further include the following four steps performed in the first TEE:

[0108] Receive a second update instruction sent by the fourth client, wherein the second update instruction is used to instruct the fifth plaintext data to be updated to the sixth plaintext data;

[0109] Obtain the fifth key used to encrypt the fifth plaintext data;

[0110] The sixth plaintext data is encrypted using the fifth key to obtain the sixth ciphertext data;

[0111] The seventh ciphertext data is updated to the sixth ciphertext data, wherein the seventh ciphertext data is obtained by encrypting the fifth plaintext data using the fifth key.

[0112] In this disclosure, when a user needs to modify the hosted fifth plaintext data, they can initiate a second update instruction through a fourth client to indicate that the fifth plaintext data should be updated to the sixth plaintext data. After receiving the second update instruction, the fourth client can send it to the server. After receiving the second update instruction, the server can first obtain the fifth key used to encrypt the fifth plaintext data, and then use the fifth key to encrypt the sixth plaintext data to obtain the sixth ciphertext data. Finally, the server can update the ciphertext of the fifth plaintext data (i.e., the seventh ciphertext data) in the data vault to the sixth ciphertext data.

[0113] Figure 9 This is a block diagram illustrating a device for protecting the data security of an intelligent agent according to an exemplary embodiment. Figure 9 As shown, the device 300 for protecting the data security of intelligent agents includes the following modules deployed in a first trusted execution environment:

[0114] The first acquisition module 301 is used to acquire first encrypted data corresponding to the user data acquisition request in response to receiving a user data acquisition request sent by the intelligent agent.

[0115] The second acquisition module 302 is used to acquire a first key corresponding to the user data acquisition request from a trusted key service, wherein the trusted key service is used to store keys pre-set by the user through a client.

[0116] The first decryption module 303 is used to decrypt the first ciphertext data using the first key to obtain the first plaintext data;

[0117] The first encryption module 304 is used to encrypt the first plaintext data using a second key to obtain second ciphertext data, wherein the second key is negotiated with the intelligent agent;

[0118] The sending module 305 is used to send the second encrypted data to the intelligent agent.

[0119] In the above technical solution, the storage and transmission of user sensitive data required by the intelligent agent to perform tasks are all in encrypted form, and the key used for encryption storage is stored in a trusted key service, which cannot be directly obtained by the cloud service provider. In addition, during the intelligent agent's task execution, all links involving user sensitive data are executed in a trusted execution environment. Therefore, when the intelligent agent runs in a public network environment, it can provide users with intelligent agent services such as ticket purchase, shopping, and food delivery, while ensuring the security of users' sensitive data in the public network environment.

[0120] Optionally, the first acquisition module 301 is configured to read the first encrypted data from the first database in response to receiving the user data acquisition request.

[0121] Optionally, the intelligent agent is used in a second trusted execution environment to decrypt the second ciphertext data using the second key to obtain the first plaintext data, and to execute the user's first task based on the first plaintext data;

[0122] The intelligent agent is also used to destroy the first plaintext data in the second trusted execution environment after the first task is completed.

[0123] Optionally, the first encryption module 304 is used to encrypt the first plaintext data using the second key through the first software development kit (SDK) to obtain the second ciphertext data, wherein the intelligent agent is used to decrypt the second ciphertext data using the second software development kit (SDK) in the intelligent agent to obtain the first plaintext data, wherein the second SDK runs in the second trusted execution environment.

[0124] Optionally, the device 300 for protecting the security of intelligent agent data further includes the following modules deployed in the first trusted execution environment:

[0125] The first storage module is configured to store the third key using the trusted key service in response to receiving the third key sent by the first client.

[0126] The second encryption module is used to encrypt the second plaintext data using the third key in response to receiving the second plaintext data sent by the first client, so as to obtain the third ciphertext data.

[0127] The second storage module is used to store the third encrypted data in the first database.

[0128] Optionally, the device 300 for protecting the security of intelligent agent data further includes the following modules deployed in the first trusted execution environment:

[0129] The first receiving module is used to receive a query request sent by the second client, wherein the query request is used to instruct the acquisition of the historical usage record of the third plaintext data, and the historical usage record includes at least one of the following: usage time, number of uses, and purpose information;

[0130] The third acquisition module is used to acquire the historical usage records and send the historical usage records to the second client.

[0131] Optionally, the device 300 for protecting the security of intelligent agent data further includes the following modules deployed in the first trusted execution environment:

[0132] The second receiving module is used to receive a first update instruction sent by a third client, wherein the first update instruction is used to instruct the fourth key to be updated to the fifth key;

[0133] The first update module is used to update the fourth key in the trusted key service to the fifth key;

[0134] The fourth acquisition module is used to acquire the fourth ciphertext data, wherein the fourth ciphertext data is obtained by encrypting it using the fourth key;

[0135] The second decryption module is used to decrypt the fourth ciphertext data using the fourth key to obtain the fourth plaintext data;

[0136] The third encryption module is used to encrypt the fourth plaintext data using the fifth key to obtain the fifth ciphertext data, and update the fourth ciphertext data to the fifth ciphertext data.

[0137] Optionally, the device 300 for protecting the security of intelligent agent data further includes the following modules deployed in the first trusted execution environment:

[0138] The third receiving module is used to receive the second update instruction sent by the fourth client, wherein the second update instruction is used to instruct the fifth plaintext data to be updated to the sixth plaintext data;

[0139] The fifth acquisition module is used to acquire the fifth key used to encrypt the fifth plaintext data;

[0140] The fourth encryption module is used to encrypt the sixth plaintext data using the fifth key to obtain the sixth ciphertext data;

[0141] The second update module is used to update the seventh ciphertext data to the sixth ciphertext data, wherein the seventh ciphertext data is obtained by encrypting the fifth plaintext data using the fifth key.

[0142] In addition, this disclosure also provides a system for protecting the data security of intelligent agents, including:

[0143] An intelligent agent, a server, and at least one client;

[0144] Each of the at least one client is connected to the intelligent agent, and each of the at least one client is used to issue the user's first task to the intelligent agent;

[0145] The intelligent agent is connected to the server and is used to generate a user data acquisition request according to the first task and send the user data acquisition request to the server.

[0146] The server is deployed in a first trusted execution environment to execute the steps of the method for protecting the data security of intelligent agents provided in this disclosure.

[0147] The intelligent agent is further configured to: receive the second ciphertext data sent by the server, decrypt the second ciphertext data using the second key in the second trusted execution environment to obtain the first plaintext data, and execute the first task based on the first plaintext data.

[0148] This disclosure also provides a computer-readable medium having a computer program stored thereon, which, when executed by a processing device, implements the steps of the method for protecting the data security of intelligent agents provided in this disclosure.

[0149] This disclosure also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the method for protecting the data security of intelligent agents provided in this disclosure.

[0150] The following is for reference. Figure 10 It illustrates an electronic device suitable for implementing embodiments of the present disclosure (e.g., Figure 2 The diagram shows the structure of the server (20) 600. The terminal devices in this embodiment may include, but are not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), and in-vehicle terminals (e.g., in-vehicle navigation terminals), as well as fixed terminals such as digital TVs and desktop computers. Figure 10 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments disclosed herein.

[0151] like Figure 10 As shown, electronic device 600 may include a processing device (e.g., a central processing unit, a graphics processor, etc.) 601, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 602 or a program loaded from storage device 608 into random access memory (RAM) 603. RAM 603 also stores various programs and data required for the operation of electronic device 600. Processing device 601, ROM 602, and RAM 603 are interconnected via bus 604. Input / output (I / O) interface 605 is also connected to bus 604.

[0152] Typically, the following devices can be connected to I / O interface 605: input devices 606 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 607 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 608 including, for example, magnetic tapes, hard disks, etc.; and communication devices 609. Communication device 609 allows electronic device 600 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 10 An electronic device 600 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively.

[0153] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 609, or installed from a storage device 608, or installed from a ROM 602. When the computer program is executed by the processing device 601, it performs the functions defined in the methods of embodiments of this disclosure.

[0154] It should be noted that the computer-readable medium described in this disclosure can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.

[0155] In some implementations, the server may communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and may interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.

[0156] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.

[0157] The aforementioned computer-readable medium carries one or more programs. When the electronic device executes these programs in a first trusted execution environment, the electronic device: in response to receiving a user data acquisition request sent by an agent, acquires first encrypted data corresponding to the user data acquisition request; acquires a first key corresponding to the user data acquisition request from a trusted key service, wherein the trusted key service stores keys pre-set by the user through a client; decrypts the first encrypted data using the first key to obtain first plaintext data; encrypts the first plaintext data using a second key to obtain second encrypted data, wherein the second key is negotiated with the agent; and sends the second encrypted data to the agent.

[0158] Computer program code for performing the operations of this disclosure can be written in one or more programming languages ​​or a combination thereof, including but not limited to object-oriented programming languages ​​such as Java, Smalltalk, and C++, as well as conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0159] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0160] The modules described in the embodiments of this disclosure can be implemented in software or in hardware. The names of the modules are not necessarily limiting in certain circumstances; for example, the first acquisition module can also be described as "a module that, in response to receiving a user data acquisition request sent by an intelligent agent, acquires first encrypted data corresponding to the user data acquisition request."

[0161] The functions described above in this document can be performed at least in part by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), system-on-a-chip (SoCs), complex programmable logic devices (CPLDs), and so on.

[0162] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0163] According to one or more embodiments of this disclosure, Example 1 provides a method for protecting the security of agent data, the method comprising the following steps performed in a first trusted execution environment:

[0164] In response to receiving a user data acquisition request sent by the intelligent agent, the first encrypted data corresponding to the user data acquisition request is acquired;

[0165] Obtain a first key corresponding to the user data acquisition request from a trusted key service, wherein the trusted key service is used to store keys pre-set by the user through a client;

[0166] The first ciphertext data is decrypted using the first key to obtain the first plaintext data;

[0167] The first plaintext data is encrypted using a second key to obtain second ciphertext data, wherein the second key is negotiated with the intelligent agent;

[0168] The second encrypted data is sent to the intelligent agent.

[0169] According to one or more embodiments of this disclosure, Example 2 provides the method of Example 1, wherein in response to receiving a user data acquisition request sent by an agent, acquiring first encrypted data corresponding to the user data acquisition request includes:

[0170] In response to receiving the user data retrieval request, the first encrypted data is read from the first database.

[0171] According to one or more embodiments of this disclosure, Example 3 provides the method of Example 1, wherein the intelligent agent is used to decrypt the second ciphertext data using the second key in a second trusted execution environment to obtain the first plaintext data, and to perform a user's first task based on the first plaintext data;

[0172] The intelligent agent is also used to destroy the first plaintext data in the second trusted execution environment after the first task is completed.

[0173] According to one or more embodiments of this disclosure, Example 4 provides the method of Example 1, wherein encrypting the first plaintext data using a second key to obtain second ciphertext data includes:

[0174] The first plaintext data is encrypted using the second key through the first software development kit (SDK) to obtain the second ciphertext data. The agent is used to decrypt the second ciphertext data using the second software development kit (SDK) in the agent to obtain the first plaintext data. The second SDK runs in the second trusted execution environment.

[0175] According to one or more embodiments of this disclosure, Example 5 provides a method of any one of Examples 1-4, the method further comprising the following steps performed in the first trusted execution environment:

[0176] In response to receiving a third key sent by the first client, the third key is stored using the trusted key service;

[0177] In response to receiving the second plaintext data sent by the first client, the second plaintext data is encrypted using the third key to obtain the third ciphertext data;

[0178] The third encrypted data is stored in the first database.

[0179] According to one or more embodiments of this disclosure, Example 6 provides a method of any one of Examples 1-4, the method further comprising the following steps performed in the first trusted execution environment:

[0180] Receive a query request sent by a second client, wherein the query request is used to instruct the acquisition of historical usage records of third plaintext data, and the historical usage records include at least one of usage time, number of uses, and purpose information;

[0181] The historical usage records are obtained and sent to the second client.

[0182] According to one or more embodiments of this disclosure, Example 7 provides a method of any one of Examples 1-4, the method further comprising the following steps performed in the first trusted execution environment:

[0183] Receive a first update instruction sent by a third client, wherein the first update instruction is used to instruct the fourth key to be updated to the fifth key;

[0184] Update the fourth key in the trusted key service to the fifth key;

[0185] Obtain the fourth ciphertext data, wherein the fourth ciphertext data is obtained by encrypting it using the fourth key;

[0186] The fourth ciphertext data is decrypted using the fourth key to obtain the fourth plaintext data;

[0187] The fourth plaintext data is encrypted using the fifth key to obtain the fifth ciphertext data, and the fourth ciphertext data is then updated to the fifth ciphertext data.

[0188] According to one or more embodiments of this disclosure, Example 8 provides a method of any one of Examples 1-4, the method further comprising the following steps performed in the first trusted execution environment:

[0189] Receive a second update instruction sent by a fourth client, wherein the second update instruction is used to instruct the fifth plaintext data to be updated to the sixth plaintext data;

[0190] Obtain the fifth key used to encrypt the fifth plaintext data;

[0191] The sixth plaintext data is encrypted using the fifth key to obtain the sixth ciphertext data;

[0192] The seventh ciphertext data is updated to the sixth ciphertext data, wherein the seventh ciphertext data is obtained by encrypting the fifth plaintext data using the fifth key.

[0193] According to one or more embodiments of this disclosure, Example 9 provides an apparatus for protecting the security of intelligent agent data, the apparatus comprising the following modules deployed in a first trusted execution environment:

[0194] The first acquisition module is configured to, in response to receiving a user data acquisition request sent by the intelligent agent, acquire first encrypted data corresponding to the user data acquisition request;

[0195] The second acquisition module is used to acquire a first key corresponding to the user data acquisition request from a trusted key service, wherein the trusted key service is used to store keys pre-set by the user through the client;

[0196] The first decryption module is used to decrypt the first ciphertext data using the first key to obtain the first plaintext data;

[0197] The first encryption module is used to encrypt the first plaintext data using a second key to obtain second ciphertext data, wherein the second key is negotiated with the intelligent agent;

[0198] The sending module is used to send the second encrypted data to the intelligent agent.

[0199] According to one or more embodiments of this disclosure, Example 10 provides a system for protecting the security of intelligent agent data, comprising:

[0200] An intelligent agent, a server, and at least one client;

[0201] Each of the at least one client is connected to the intelligent agent, and each of the at least one client is used to issue the user's first task to the intelligent agent;

[0202] The intelligent agent is connected to the server and is used to generate a user data acquisition request according to the first task and send the user data acquisition request to the server.

[0203] The server is deployed in the first trusted execution environment to execute the steps of the method described in any one of Examples 1-8;

[0204] The intelligent agent is further configured to: receive the second ciphertext data sent by the server, decrypt the second ciphertext data using the second key in the second trusted execution environment to obtain the first plaintext data, and execute the first task based on the first plaintext data.

[0205] According to one or more embodiments of the present disclosure, Example 11 provides a computer-readable medium having a computer program stored thereon that, when executed by a processing device, implements the steps of the method described in any one of Examples 1-8.

[0206] According to one or more embodiments of this disclosure, Example 12 provides an electronic device, including:

[0207] A storage device on which computer programs are stored;

[0208] A processing device for executing the computer program in the storage device to implement the steps of any one of the methods in Examples 1-8.

[0209] According to one or more embodiments of the present disclosure, Example 13 provides a computer program product including a computer program that, when executed by a processor, implements the steps of the method described in any one of Examples 1-8.

[0210] The above description is merely a preferred embodiment of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features disclosed in this disclosure that have similar functions.

[0211] Furthermore, while the operations are described in a specific order, this should not be construed as requiring these operations to be performed in the specific order shown or in a sequential order. In certain environments, multitasking and parallel processing may be advantageous. Similarly, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of this disclosure. Certain features described in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.

[0212] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative forms of implementing the claims. Regarding the apparatus in the above embodiments, the specific manner in which the various modules perform their operations has been described in detail in the embodiments relating to the method, and will not be elaborated upon here.

Claims

1. A method for protecting the data security of intelligent agents, characterized in that, The method includes the following steps performed in a first trusted execution environment: In response to receiving a user data acquisition request sent by the intelligent agent, the first encrypted data corresponding to the user data acquisition request is acquired; Obtain a first key corresponding to the user data acquisition request from a trusted key service, wherein the trusted key service is used to store keys pre-set by the user through a client; The first ciphertext data is decrypted using the first key to obtain the first plaintext data; The first plaintext data is encrypted using a second key to obtain second ciphertext data, wherein the second key is negotiated with the intelligent agent; The second ciphertext data is sent to the intelligent agent; wherein the intelligent agent is used in a second trusted execution environment to decrypt the second ciphertext data using the second key to obtain the first plaintext data, and to execute the user's first task based on the first plaintext data.

2. The method according to claim 1, characterized in that, The step of receiving a user data acquisition request sent by the intelligent agent and acquiring the first encrypted data corresponding to the user data acquisition request includes: In response to receiving the user data retrieval request, the first encrypted data is read from the first database.

3. The method according to claim 1, characterized in that, The intelligent agent is also used to destroy the first plaintext data in the second trusted execution environment after the first task is completed.

4. The method according to claim 1, characterized in that, The step of encrypting the first plaintext data using the second key to obtain the second ciphertext data includes: The first plaintext data is encrypted using the second key through the first software development kit (SDK) to obtain the second ciphertext data. The agent is used to decrypt the second ciphertext data using the second software development kit (SDK) in the agent to obtain the first plaintext data. The second SDK runs in the second trusted execution environment.

5. The method according to any one of claims 1-4, characterized in that, The method further includes the following steps performed in the first trusted execution environment: In response to receiving a third key sent by the first client, the third key is stored using the trusted key service; In response to receiving the second plaintext data sent by the first client, the second plaintext data is encrypted using the third key to obtain the third ciphertext data; The third encrypted data is stored in the first database.

6. The method according to any one of claims 1-4, characterized in that, The method further includes the following steps performed in the first trusted execution environment: Receive a query request sent by a second client, wherein the query request is used to instruct the acquisition of historical usage records of third plaintext data, and the historical usage records include at least one of usage time, number of uses, and purpose information; The historical usage records are obtained and sent to the second client.

7. The method according to any one of claims 1-4, characterized in that, The method further includes the following steps performed in the first trusted execution environment: Receive a first update instruction sent by a third client, wherein the first update instruction is used to instruct the fourth key to be updated to the fifth key; Update the fourth key in the trusted key service to the fifth key; Obtain the fourth ciphertext data, wherein the fourth ciphertext data is obtained by encrypting it using the fourth key; The fourth ciphertext data is decrypted using the fourth key to obtain the fourth plaintext data; The fourth plaintext data is encrypted using the fifth key to obtain the fifth ciphertext data, and the fourth ciphertext data is then updated to the fifth ciphertext data.

8. The method according to any one of claims 1-4, characterized in that, The method further includes the following steps performed in the first trusted execution environment: Receive a second update instruction sent by a fourth client, wherein the second update instruction is used to instruct the fifth plaintext data to be updated to the sixth plaintext data; Obtain the fifth key used to encrypt the fifth plaintext data; The sixth plaintext data is encrypted using the fifth key to obtain the sixth ciphertext data; The seventh ciphertext data is updated to the sixth ciphertext data, wherein the seventh ciphertext data is obtained by encrypting the fifth plaintext data using the fifth key.

9. A device for protecting the data security of an intelligent agent, characterized in that, The device includes the following modules deployed in a first trusted execution environment: The first acquisition module is configured to, in response to receiving a user data acquisition request sent by the intelligent agent, acquire first encrypted data corresponding to the user data acquisition request; The second acquisition module is used to acquire a first key corresponding to the user data acquisition request from a trusted key service, wherein the trusted key service is used to store keys pre-set by the user through the client; The first decryption module is used to decrypt the first ciphertext data using the first key to obtain the first plaintext data; The first encryption module is used to encrypt the first plaintext data using a second key to obtain second ciphertext data, wherein the second key is negotiated with the intelligent agent; A sending module is used to send the second ciphertext data to the intelligent agent; wherein the intelligent agent is used to decrypt the second ciphertext data using the second key in a second trusted execution environment to obtain the first plaintext data, and to execute the user's first task based on the first plaintext data.

10. A system for protecting the data security of intelligent agents, characterized in that, include: An intelligent agent, a server, and at least one client; Each of the at least one client is connected to the intelligent agent, and each of the at least one client is used to issue the user's first task to the intelligent agent; The intelligent agent is connected to the server and is used to generate a user data acquisition request according to the first task and send the user data acquisition request to the server. The server is deployed in a first trusted execution environment and is used to execute the steps of the method according to any one of claims 1-8; The intelligent agent is further configured to: receive the second ciphertext data sent by the server, decrypt the second ciphertext data using the second key in the second trusted execution environment to obtain the first plaintext data, and execute the first task based on the first plaintext data.

11. A computer-readable medium having a computer program stored thereon, characterized in that, When executed by a processing device, the computer program performs the steps of the method according to any one of claims 1-8.

12. An electronic device, characterized in that, include: A storage device on which computer programs are stored; A processing device for executing the computer program in the storage device to implement the steps of the method according to any one of claims 1-8.

13. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1-8.

Citation Information

Patent Citations

  • Data backup method and device for cashier equipment

    CN111290884A

  • TA calling method and system, electronic equipment and storage medium

    CN116302612A