CN115037450A - Data protection method and electronic equipment - Google Patents

Data protection method and electronic equipment Download PDF

Info

Publication number
CN115037450A
CN115037450A CN202111399157.2A CN202111399157A CN115037450A CN 115037450 A CN115037450 A CN 115037450A CN 202111399157 A CN202111399157 A CN 202111399157A CN 115037450 A CN115037450 A CN 115037450A
Authority
CN
China
Prior art keywords
trust ring
master key
screen locking
ring
ciphertext
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111399157.2A
Other languages
Chinese (zh)
Other versions
CN115037450B (en
Inventor
窦伟明
丁金岩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202111399157.2A priority Critical patent/CN115037450B/en
Publication of CN115037450A publication Critical patent/CN115037450A/en
Application granted granted Critical
Publication of CN115037450B publication Critical patent/CN115037450B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • G06F21/46Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2117User registration

Abstract

The embodiment of the application provides a data protection method and electronic equipment. The method comprises the following steps: when the screen locking code of the electronic equipment is changed, encrypting the master key based on the changed screen locking code to generate a first updated master key ciphertext; generating a first updating authentication parameter based on the changed screen locking code; and replacing a first master key ciphertext in the trust ring data of the first trust ring with a first updated master key ciphertext and replacing the first authentication parameter with a first updated authentication parameter at the first server side. According to the data protection method, the master key ciphertext EMK managed by the cloud side can be updated based on updating of the screen locking code, so that the safety of the master key MK is improved, and the cloud side cannot decrypt the master key ciphertext EMK, so that the cloud side can self-prove and clear.

Description

Data protection method and electronic equipment
Technical Field
The embodiment of the application relates to the field of terminal equipment, in particular to a data protection method and electronic equipment.
Background
Currently, a terminal device may store data of a user in a cloud so that the user can upload and download the data in real time. The user's data typically corresponds to a particular user account. However, the security of user data relies entirely on account security, and the data may be obtained from the cloud side as long as the device is able to authenticate through the account. If any one of the account number and the cloud side server is attacked, user data can be leaked. Moreover, the cloud side server has the possibility of decrypting the user data, and the cloud side cannot clear the user data by self. Thus, the known solutions are less secure and do not provide support for user data protection with higher security requirements.
Disclosure of Invention
When a screen locking code of the electronic equipment is changed, encrypting a master key based on the changed screen locking code to generate a first updated master key ciphertext; generating a first updating authentication parameter based on the changed screen locking code; and replacing a first master key ciphertext in the trust ring data of the first trust ring with a first updated master key ciphertext and replacing the first authentication parameter with a first updated authentication parameter at the first server side. The data protection method can update the cloud-side managed master key ciphertext EMK based on the update of the screen locking code, so that the difficulty of cracking the master key is increased, and the safety of the master key MK is improved. Meanwhile, the changed screen locking code is still unknown to the cloud side, and the cloud side cannot decrypt the master key ciphertext EMK, so that the cloud side can self-verify and clear, and can provide support for data synchronization of service data with high safety requirements.
In a first aspect, an embodiment of the present application provides a data protection method applied to an electronic device, where the method includes: the method comprises the steps that under the condition that a screen locking code is changed, electronic equipment receives a first parameter sent by a first server, the electronic equipment logs in a first account, and trust ring data of a first trust ring of the first account stored by the first server comprise a first master key ciphertext and a first authentication parameter of the electronic equipment; then, in a trusted execution environment of the electronic equipment, encrypting a main key in the trusted execution environment based on the changed screen locking code to generate a first updated main key ciphertext of the electronic equipment, and generating a first updated authentication parameter of the electronic equipment based on the changed screen locking code; generating signature data according to the first parameter; and then, the signature data, the second master key ciphertext and the second authentication parameter are sent to a first server, after the first server passes the identity verification of the electronic device based on the signature data, the first server replaces the first master key ciphertext in the trust ring data of the first trust ring with the first updated master key ciphertext, and replaces the first authentication parameter with the first updated authentication parameter. Wherein the first server is a trust ring cloud as described below. Therefore, when the screen locking code of the electronic equipment is changed, the electronic equipment can update the master key ciphertext EMK managed by the cloud side based on the update of the screen locking code, so that the difficulty of cracking the master key can be increased, and the safety of the master key MK is improved. Meanwhile, the changed screen locking code is still unknown to the cloud side, and the cloud side cannot decrypt the master key ciphertext EMK, so that the cloud side can self-verify and clear, and can provide support for data synchronization of service data with high safety requirements.
The screen locking code in the present application may also be replaced by other user information, for example, the user information may be a user birthday, a user name, a birthday of a parent or a friend, a name, and the like. These pieces of information are information unique to the user, and are known only by the user himself, and the information differs from user to user. This user information is easy for the user to remember and is not known by the cloud side. When the master key is encrypted based on the user information, the cloud side cannot decrypt, and thus the cloud side can self-verify the clearness. Except for the user, other people hardly know which user information is used by the user to encrypt the main key, so that the difficulty in cracking the ciphertext of the main key is greatly increased, the safety of the main key is improved, and the safety of user data protected by using the derivative key of the main key can be improved. Meanwhile, when the 2 nd device and the devices after the 2 nd device in the trust ring are registered, the identity of the registered device can be verified based on the user information, interaction with the registered device is not needed, and convenience is provided for the user.
According to a first aspect, the electronic device encrypts a master key in a trusted execution environment based on a changed screen locking code to generate a first updated master key ciphertext of the electronic device, including: the electronic equipment generates a first updated derivative key according to the changed screen locking code; generating a second updated derivative key based on the first updated derivative key; and encrypting the main key according to the second updated derivative key to obtain a first updated main key ciphertext of the electronic equipment. Therefore, the derived key is generated according to the user personalized information such as the screen locking code, so that the derived key cannot be forged, and the security of the ciphertext of the main key is ensured.
According to the first aspect, or any implementation manner of the first aspect, the generating, by an electronic device, a first updated authentication parameter of the electronic device based on a changed screen locking code includes: the electronic equipment generates a first updated derivative key according to the changed screen locking code; generating a first updated shared value according to the first updated derivative key; and encrypting the first update shared value according to the HSM public key generated by the first server side to obtain a first update authentication parameter. Therefore, the first updating authentication parameter is generated according to the user personalized information such as the screen locking code, so that the first updating authentication parameter cannot be forged and cracked, and the authentication safety can be ensured.
According to a first aspect or any one of the above implementation manners of the first aspect, the generating, by an electronic device, signature data according to a first parameter includes: the electronic equipment processes the first parameter and the first updating authentication parameter by using a preset Hash algorithm to obtain a first digital abstract; and signing the first digital abstract by adopting a preset encryption algorithm to obtain signature data. In this way, the first updated authentication parameter is generated according to the user personalized information such as the screen locking code, and the user personalized information cannot be forged, so that the signature data generated based on the first updated authentication parameter cannot be forged, and the authentication security can be ensured.
According to the first aspect, or any implementation manner of the first aspect above, before the electronic device receives the first parameter sent by the first server, the method further includes: the electronic equipment records a screen locking code change event and a screen locking code after change; and sending a screen locking code change notification to the first server. Therefore, the mode of changing the cloud screen locking code is timely informed, the master key ciphertext can be timely updated, and the problem that other equipment fails in ring adding verification based on the new screen locking code is solved.
According to the first aspect, or any implementation manner of the first aspect, before the receiving the first parameter sent by the first server in a case that the screen locking code of the electronic device is changed, the method further includes: the electronic equipment is used as first electronic equipment, receives a first screen locking code of the first electronic equipment input by a user, and generates a master key in a trusted execution environment of the first electronic equipment; encrypting the master key based on the first screen locking code to generate a first master key ciphertext of the first electronic device; generating a first authentication parameter based on the first screen locking code; and sending a ring creation request to the first server so that the first server creates a first trust ring corresponding to the first account, and adding the first master key ciphertext and the first authentication parameter to trust ring data of the first trust ring. The ring-creation request carries a first master key ciphertext and a first authentication parameter, and the first electronic device logs in a first account. According to the method for establishing the trust ring, the account-level main key MK is protected based on the user secret, and the cloud side cannot decrypt the managed main key ciphertext because the user secret is unknown to the cloud side, so that the risk of main key leakage is reduced, the safety of the main key MK is improved, the cloud side can clear the main key by self, and the method can provide support for data synchronization of service data with high safety requirements.
According to the first aspect, or any implementation manner of the first aspect, before the receiving the first parameter sent by the first server in a case that the screen locking code of the electronic device is changed, the method further includes: the electronic equipment is used as second electronic equipment and receives a second screen locking code of the second electronic equipment, which is input by a user, wherein the second electronic equipment logs in the first account; when the second screen locking code passes verification, receiving a first screen locking code of first electronic equipment input by a user, wherein the first electronic equipment is equipment in ring equipment information of a first trust ring corresponding to a first account acquired from a first server; when the identity verification of the first electronic equipment based on the first screen locking code passes, receiving a first master key ciphertext of the first electronic equipment, which is sent by a first server; decrypting the first master key ciphertext based on the first screen locking code to obtain a master key; encrypting the master key based on the second screen locking code to generate a second master key ciphertext of the second electronic device, and generating a second authentication parameter based on the second screen locking code; and sending a ring adding request to the first server so that the first server adds the second master key ciphertext and the second authentication parameter to the trust ring data of the first trust ring. According to the method for joining the trust ring, the cloud side sends the escrow master key ciphertext of the registered device to the ring-added device, the ring-added device decrypts the master key ciphertext of the registered device based on the user secret of the registered device to obtain the master key MK, and the user secret of the registered device is unknown to the cloud side and does not need to be forwarded by the cloud side, so that the cloud side cannot decrypt the master key ciphertext, and self-certification can be achieved.
According to the first aspect, or any implementation manner of the first aspect, the data protection method further includes: the electronic equipment derives a first service key based on the master key, and encrypts first service data by using the first service key to obtain a first service data ciphertext; and sending the first service data ciphertext to the second server so that the second server stores the first service data ciphertext. According to the mode that the business key derived based on the master key is synchronized to the cloud after the business data ciphertext is encrypted, the cloud end of the cloud business data ciphertext cannot be known due to the fact that the cloud end of the master key is unknown, the safety of the business data can be ensured, and the cloud end can be self-certified.
According to the first aspect, or any implementation manner of the first aspect, the data protection method further includes: the electronic equipment acquires a second service data ciphertext from the second server; deriving a first service key based on the master key; and decrypting the second service data ciphertext by using the first service key to obtain second service data. According to the method for obtaining the business data ciphertext from the cloud and then decrypting the business data ciphertext locally on the electronic equipment, even if the business data ciphertext transmitted between the cloud and the electronic equipment is intercepted, the business data obtained cannot be decrypted due to the fact that the rule that the main key and the main key derive the first business key cannot be obtained through interception and emulation, and the safety of the business data can be improved.
In a second aspect, the present application provides an electronic device, including a trust ring module and a trust ring service module; wherein: a trust ring service module to: under the condition that a screen locking code of the electronic equipment is changed, receiving a first parameter sent by a first server, wherein the electronic equipment logs in a first account, and trust ring data of a first trust ring of the first account stored by the first server comprise a first master key ciphertext and a first authentication parameter of the electronic equipment; a trust ring module to: in a trusted execution environment of the electronic equipment, encrypting a main key in the trusted execution environment based on the changed screen locking code to generate a first updated main key ciphertext of the electronic equipment; a trust ring service module further to: generating a first updating authentication parameter of the electronic equipment based on the changed screen locking code; generating signature data according to the first parameter; and sending the signature data, the second master key ciphertext and the second authentication parameter to the first server, so that the first server replaces the first master key ciphertext in the trust ring data of the first trust ring with the first updated master key ciphertext and replaces the first authentication parameter with the first updated authentication parameter after the first server passes the authentication of the electronic device based on the signature data.
According to a second aspect, the trusted ring module is configured to encrypt the master key in the trusted execution environment based on the changed screen locking code, and when generating a first updated master key ciphertext of the electronic device, specifically: receiving a first updated derivative key sent by the trust ring module, wherein the first updated derivative key is generated by the trust ring module according to the changed screen locking code; generating a second updated derivative key according to the first updated derivative key; and encrypting the main key according to the second updated derivative key to obtain a first updated main key ciphertext of the electronic equipment.
According to the second aspect, or any implementation manner of the second aspect, when the trust ring service module generates the first update authentication parameter of the electronic device based on the changed screen locking code, the trust ring service module is specifically configured to: generating a first updated derivative key according to the changed screen locking code; generating a first updated shared value according to the first updated derivative key; and encrypting the first update shared value according to the HSM public key generated by the first server side to obtain a first update authentication parameter.
According to the second aspect or any implementation manner of the second aspect, when the trust ring service module generates the signature data according to the first parameter, the trust ring service module is specifically configured to: processing the first parameter and the first updating authentication parameter by using a preset Hash algorithm to obtain a first digital abstract; and signing the first digital abstract by adopting a preset encryption algorithm to obtain signature data.
According to a second aspect, or any implementation manner of the second aspect above, the trust ring service module is further configured to: recording a screen locking code change event and a screen locking code after change; and sending a screen locking code change notification to the first server.
According to the second aspect, or any implementation manner of the second aspect above, when the electronic device is used as the first electronic device, the trust ring service module is configured to: receiving a first screen locking code of first electronic equipment input by a user, generating a first party key according to the first screen locking code, and sending the first party key to a trust ring module, wherein the first electronic equipment logs in a first account; a trust ring module to: generating a master key in a trusted execution environment, encrypting the master key based on a first derived key to generate a first master key ciphertext of the first electronic device, and sending the first master key ciphertext to a trust ring service module; a trust ring service module further to: generating a first authentication parameter based on the first derived key, sending a ring creation request to the first server to enable the first server to create a first trust ring corresponding to the first account, and adding the first master key ciphertext and the first authentication parameter to trust ring data of the first trust ring, wherein the ring creation request carries the first master key ciphertext and the first authentication parameter.
According to the second aspect, or any implementation manner of the second aspect above, when the electronic device is used as a second electronic device, the trust ring service module is configured to: receiving a second screen locking code of second electronic equipment input by a user, wherein the second electronic equipment logs in a first account; when the second screen locking code passes verification, receiving a first screen locking code of first electronic equipment input by a user, wherein the first electronic equipment is in-loop equipment information of a first trust loop corresponding to a first account acquired from a first server; when the identity verification of the first electronic equipment based on the first screen locking code passes, receiving a first master key ciphertext of the first electronic equipment, which is sent by a first server; sending the first master key ciphertext to a trust ring module; a trust ring module to: decrypting the first master key ciphertext based on the first screen locking code to obtain a master key; encrypting the master key based on the second screen locking code to generate a second master key ciphertext of the second electronic device; sending the second master key ciphertext to a trust ring service module; a trust ring service module further to: generating a second authentication parameter based on the second screen locking code; and sending a ring adding request to the first server so that the first server adds the second master key ciphertext and the second authentication parameter to the trust ring data of the first trust ring.
According to a second aspect, or any implementation manner of the second aspect above, the electronic device further includes: the system comprises a service data synchronization service module, a service data storage service module and a key management module; a trust ring service module further to: deriving a first service key based on the master key, and a service data storage service module, configured to: sending the first service data to a key management module; a key management module to: reading a first service key from the trust ring module, and encrypting first service data by using the first service key to obtain a first service data ciphertext; sending the first business data ciphertext to a business data storage service module; the business data storage service module is further used for: and sending the first service data ciphertext to the second server through the service data synchronization service module so that the second server stores the first service data ciphertext.
According to the second aspect, or any implementation manner of the second aspect, the service module for synchronizing service data is further configured to: acquiring a second service data ciphertext from the second server, and storing the second service data ciphertext into a service data storage service module; the business data storage service module is further used for: sending the second service data to a key management module; a key management module, further configured to: and reading the first service key from the trust ring module, decrypting the second service data by using the first service key to obtain second service data, and storing the second service data into a service data storage service module.
Any one implementation manner of the second aspect and the second aspect corresponds to any one implementation manner of the first aspect and the first aspect, respectively. For technical effects corresponding to any one of the implementation manners of the second aspect and the second aspect, reference may be made to the technical effects corresponding to any one of the implementation manners of the first aspect and the first aspect, and details are not described here.
In a third aspect, the present application provides a computer readable medium for storing a computer program comprising instructions for performing the method of the first aspect or any possible implementation manner of the first aspect.
In a fourth aspect, the present application provides a computer program comprising instructions for carrying out the method of the first aspect or any possible implementation manner of the first aspect.
Drawings
Fig. 1 is a schematic structural diagram of an exemplary electronic device 100;
fig. 2 is a block diagram illustrating a software structure of the electronic device 100 according to the embodiment of the present application;
FIG. 3 is a diagram illustrating information interaction in creating a trust ring;
FIG. 4 is a diagram illustrating interaction of a device with a cloud side in creating a trust ring;
FIG. 5A is an exemplary interface diagram illustrating entry into the My devices application with a logged in account;
FIG. 5B is an exemplary illustration of an interface for entering the My devices application without a logged in account;
FIG. 6 is an exemplary interface diagram illustrating the migration of a My devices application from a device A to a password safe synchronization application;
FIG. 7A is a schematic diagram illustrating an exemplary entry process into the "combination safe" interface with device A having a lock screen code set;
FIG. 7B is a schematic diagram illustrating an exemplary entry process into the "combination safe" interface without device A setting the lock screen code;
FIG. 8 is a schematic diagram illustrating the process of opening a "password safe synchronization" switch in the context of creating a trust ring;
FIG. 9 is a diagram illustrating an exemplary process of turning on a "synchronize to Rough Account" switch in the context of creating a trust ring;
FIG. 10 is a schematic diagram illustrating a process for creating a trust ring;
fig. 11 is a schematic diagram illustrating an example of device a synchronizing service data ciphertext to an account management server after creating a trust ring;
FIG. 12 is a schematic diagram illustrating exemplary module interactions for synchronizing business data ciphertexts;
FIG. 13 is a schematic diagram illustrating an interface of a synchronized business data ciphertext to an account management server;
FIG. 14 is a diagram illustrating information interaction during the process of joining a trust ring by device B;
FIG. 15 is an exemplary interface diagram illustrating the migration of a My devices application from device B to a password safe synchronization application;
FIG. 16A is a schematic diagram illustrating the process of entering the "combination safe" interface and opening the "combination safe synchronization" switch when device B has set the lock code;
FIG. 16B is a schematic diagram illustrating the process of entering the "combination safe" interface and opening the "combination safe synchronization" switch without the lock screen code being set by device B;
FIG. 17 is a diagram illustrating an exemplary process of turning on a "synchronize to glory account" switch in the scenario where device B joins the trust ring;
FIG. 18 is a flowchart illustrating device B joining a trust ring;
fig. 19 is a diagram illustrating synchronization of a service data ciphertext from an account management server after device B joins a trust ring;
fig. 20 is a schematic diagram illustrating an interface for synchronizing business data ciphertexts from an account management server;
FIG. 21 is a diagram illustrating information interaction during a process of joining a trust ring by device C;
fig. 22 is a flowchart illustrating an exemplary process of inputting a screen locking code of a device in a ring in the process of turning on a "synchronize to glory account" switch in a scenario where the device C joins a trust ring;
fig. 23 is a schematic diagram illustrating information interaction in the process of updating the master key ciphertext EMK by the device a;
FIG. 24 is an exemplary illustrative interface diagram for changing the lock screen code;
FIG. 25 is a state diagram illustrating an exemplary "lockbox synchronization" application in the networked state after a screen lock code change;
FIG. 26 is a flowchart illustrating the updating of the master key cryptogram EMK caused by a screen-lock change of device A in the networking state;
FIG. 27 is a state diagram illustrating an exemplary "synchronized safe" application in an un-networked state after a screen lock code change;
fig. 28 is a flowchart illustrating the updating of the master key ciphertext EMK caused by the screen lock change of device a in the non-networking state.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some, but not all, embodiments of the present application. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
The term "and/or" herein is merely an association relationship describing an associated object, and means that there may be three relationships, for example, a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone.
The terms "first" and "second," and the like, in the description and in the claims of the embodiments of the present application are used for distinguishing between different objects and not for describing a particular order of the objects. For example, the first target object and the second target object, etc. are specific sequences for distinguishing different target objects, rather than describing target objects.
In the embodiments of the present application, words such as "exemplary" or "for example" are used to mean serving as an example, instance, or illustration. Any embodiment or design described herein as "exemplary" or "e.g.," is not necessarily to be construed as preferred or advantageous over other embodiments or designs. Rather, use of the word "exemplary" or "such as" is intended to present concepts related in a concrete fashion.
In the description of the embodiments of the present application, the meaning of "a plurality" means two or more unless otherwise specified. For example, a plurality of processing units refers to two or more processing units; the plurality of systems refers to two or more systems.
Fig. 1 is a schematic structural diagram of an exemplary electronic device 100. It should be understood that the electronic device 100 shown in fig. 1 is only one example of an electronic device, and that the electronic device 100 may have more or fewer components than shown in the figures, may combine two or more components, or may have a different configuration of components. The various components shown in fig. 1 may be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and/or application specific integrated circuits.
The electronic device 100 may be a mobile phone, a tablet, or the like.
The electronic device 100 may include: the mobile terminal includes 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, an earphone interface 170D, a sensor module 180, a button 190, a motor 191, an indicator 192, a camera 193, a display screen 194, a Subscriber Identity Module (SIM) card interface 195, and the like. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air 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, and the like.
The software system of the electronic device 100 may employ a layered architecture, an event-driven architecture, a micro-core architecture, a micro-service architecture, or a cloud architecture. The embodiment of the present application takes an Android system with a hierarchical architecture as an example, and exemplarily illustrates a software structure of the electronic device 100.
The layered architecture of the electronic device 100 divides the software into several layers, each layer having a clear role and division of labor. The layers communicate with each other through a software interface. In some embodiments, the Android system is divided into three layers, namely an application layer, an application framework layer, and a kernel layer from top to bottom.
The application layer may include a series of application packages.
As shown in fig. 2, the application package may include applications such as sensors (which may also be referred to as desktop and wallpaper), HMS core, trust rings, password safes, and the like. For example, the sensor may monitor the user's sliding, pressing, etc. operation on the screen, and the HMS core provides a collection of electronic device side, cloud open capabilities. The trust ring application is used for creating and managing a trust ring for an account, wherein the management of the trust ring includes but is not limited to: adding equipment to the trust ring, deleting equipment from the trust ring, deleting the trust ring, freezing the trust ring, updating the master key ciphertext under the trust ring, and the like. The password safe box is used for managing service data synchronized by a user to an account management server, such as: a login account and a password for a certain service.
The application framework layer provides an Application Programming Interface (API) and a programming framework for the application program of the application layer. The application framework layer includes a number of predefined functions.
As shown in fig. 2, the application framework layer may include a window manager, a view system, an F interface, and a resource manager, etc.
The window manager is used for managing window programs. The window manager can obtain the size of the display screen, judge whether a status bar exists, lock the screen, intercept the screen, send an interface information display instruction to the view system and the like.
The view system includes visual controls such as controls to display text, controls to display pictures, and the like. The view system may be used to build applications. The display interface may be composed of one or more views. For example, the display interface including the short message notification icon may include a view for displaying text and a view for displaying pictures.
The resource manager provides various resources for the application, such as localized strings, icons, pictures, layout files, video files, and the like.
The F interface is an external service interface of the trust ring.
The application layer and the application framework layer run in a virtual machine. And executing java files of the application program layer and the application program framework layer into a binary file by the virtual machine. The virtual machine is used for performing the functions of object life cycle management, stack management, thread management, safety and exception management, garbage collection and the like.
The system library may include a plurality of functional modules. For example: a two-dimensional graphics engine (e.g., SGL), a key asset trust ring CA, a surface manager, etc.
The surface manager is used to manage the display subsystem and provide fusion of 2D and 3D layers for multiple applications. A two-dimensional graphics engine is a drawing engine for two-dimensional images.
The key asset trust ring CA may also be referred to as a trust ring service module, and is mainly used for message transparent transmission between an upper layer trust ring application and a lower layer key asset trust ring TA.
The kernel layer is a layer between hardware and software. The kernel layer contains at least a display driver, a sensor driver, a W-iFi driver, and a key asset trust ring TA. The display driver is used to drive the display screen 194, the Wi-Fi driver is used to drive the wireless communication module 160, and the sensor driver is used to drive the sensor module 180.
The key asset trust ring TA may also be referred to as a trust ring module, and is configured to implement a core security logic, provide a trusted execution environment, generate a master key in the trusted execution environment, encrypt the master key to generate a master key ciphertext, and the like. For specific functions of the key asset trust ring CA and the key asset trust ring TA, reference may be made to related introduction in the following description of creating a ring, adding a ring, deleting a ring, preventing a riot, taking a device off line in a trust ring, updating a master key ciphertext and the like.
It is understood that the components included in the system framework layer and the runtime layer shown in fig. 2 do not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, electronic device 100 may include more or fewer components than shown, or some components may be combined, some components may be split, or a different arrangement of components.
When using an electronic device, a user usually needs to memorize a lot of password data, such as a password of a mailbox account, a password of a network disk account, a password of a smart home control right, and the like. When the password data is large, if the user is allowed to independently record the password data of each service, great difficulty is caused to the user to memorize. Therefore, the user wants to upload the password data to the cloud side for storage through the data synchronization function, and the password data is directly acquired from the cloud side during use without being memorized by the user.
However, for such password data, the user has different security requirements from general data to be synchronized, for example, data such as pictures, address lists, short messages, and the like. Once leaked, this kind of password data will cause huge loss to users. Therefore, users have high security requirements for such cryptographic data. At this time, the data synchronized to the cloud side is reduced in security due to the defect that the cloud side cannot self-verify, and the high security requirement of the password data cannot be met.
The data protection method enabling the cloud side to be self-certified and self-cleared can provide support for data synchronization of service data with high security requirements, such as password data.
The data protection method of the present application is described in detail below with reference to the accompanying drawings.
Creating a trust ring
Fig. 3 is a schematic diagram illustrating information interaction in a process of creating a trust ring. Fig. 4 is an exemplary interaction diagram of a device and a cloud side in a process of creating a trust ring. FIG. 10 is a schematic diagram illustrating a process for creating a trust ring.
The process of creating a trust ring according to the embodiment of the present application will be described in detail below with reference to fig. 3, 4 and 10.
In the embodiment of the present application, a glory account of a device a is assumed as an account 1, and a process of creating a trust ring is described by taking the device a to initiate registration to a trust ring cloud for the first time and creating the trust ring 1 of the account 1 as an example. The application that can trigger the creation of the trust ring process may be any application under the glory account, and the example of triggering the creation of the trust ring process through the application of "password safe synchronization" under the glory account is described herein.
Herein, "registration" refers to the process of adding a device to a trust ring. When the first device registers, because the account number does not have a trust ring, the trust ring needs to be created first and then the device is added to the trust ring, and the process of first device registration is referred to as creating the trust ring. The registration of a non-first device requires only adding the device to an existing trust ring, and the process of registering a non-first device is referred to herein as joining a trust ring.
Assume herein that account 1 includes 3 devices under it, Rough V40 (i.e., device A), Rough V30 (denoted as device B), Rough V50 (denoted as device C).
It should be noted that the actions performed by the various clouds herein should be understood as the actions performed by the servers in the respective clouds. For example, the actions performed by the trust ring cloud are performed by the trust ring cloud server.
Referring to fig. 3, in the process of creating a trust ring, a device a sends a request for logging in an account 1 to an account management server, and after the account management server verifies the request for logging in the account 1, the device a returns a verification passing message; after receiving the verification passing message, the device a generates a master key ciphertext EMK11 of the device a and authentication parameters pawe 11 of the device a, and sends EMK11 and pawe 11 to the trust ring cloud, and after receiving the EMK11 and pawe 11 sent by the device a, the trust ring cloud creates a trust ring 1 for the account 1, and adds the device a to the trust ring 1.
Referring to fig. 10, in an embodiment of the present application, a process of creating a trust ring by a device a may include the following steps:
step S1: device a logs in to account 1.
This is illustrated here with device a as glory V40 handset. It should be understood that device a may be any electronic device that has installed the functionality of creating a trust ring in the present application, and the present application is not limited thereto.
Device a needs to initiate registration with the trust ring cloud to create a trust ring if it has logged in to the account. If the device A does not log in the account, the account needs to be logged in first.
FIG. 5A is an exemplary illustration of an interface to the My devices application with a logged in account. FIG. 5B is an exemplary illustration of an interface for entering the My devices application without a logged-in account. FIG. 6 is an exemplary interface diagram illustrating the migration of a My devices application from a device A to a password safe synchronization application.
Referring to fig. 5A and 6, in a case where the device a has logged in to account 1 (account 1 is assumed to be 1581991 xxx), the user may click on a "settings" application icon in the main interface of the device a (as shown in fig. 5A (a), and enter a "settings" interface shown in fig. 5A (b)). In the "setup" interface, the user clicks account 1 (i.e., 1581991 xxx), and proceeds to the "account center" interface shown in FIG. 5A (b). In the "account center" interface, the user clicks on "my device" and proceeds to the "my device" interface shown in fig. 6 (b). Find the current device in the My devices interface, Rough V40, click Rough V40 into the device information interface shown in FIG. 6 (c). In the "device information" interface, the user continues to click on the "password safe synchronization" application in the interface, and may enter the "password safe" interface. After a 'password safe box synchronization' switch is started on a 'password safe box' interface, a 'synchronization to glory account number' switch is clicked, and then a process of creating a trust ring is triggered. The process of entering the "safe deposit box" interface, turning on the "safe deposit box synchronization" switch, and turning on the "synchronization to glory account" switch will be described later.
It should be noted that if there is a trust ring under account 1, a "trusted device" is displayed under the devices that have been added to the trust ring on the "my devices" interface. The device identified as "trusted device" is a device that has joined the trust ring, i.e., a registered device, see the interface shown in subsequent fig. 15 (b). If there is no trust ring under account 1, for example, on the "my equipment" interface of equipment a shown in fig. 6 (b), none of the 3 glory equipment is a trusted equipment, which means that there is no trust ring under account 1 currently.
Referring to fig. 5A, 5B, and 6, in a case where the device a does not log in to the account 1, after clicking a "setting" application icon in the main interface of the device a (as shown in fig. 5A), the user enters a "setting" interface shown in fig. 5B (a). In the "setup" interface, the user clicks "login for a glory account" and proceeds to the glory account login interface shown in fig. 5B (B). In the glory account login interface, the user enters account 1(1581991 xxx) and a login password (assumed to be key1), and device a sends a request to the account management server to login account 1, with account 1(1581991 xxx) and login password key 1.
Referring to fig. 4, a user may send a request for logging in an account 1 to an account management server through an account management module of an application layer of the device a, so as to log in the account 1.
After the device a successfully logs in the account 1, the process of creating the trust ring is triggered according to the process in the case of the logged-in account, please refer to fig. 5A (c) and fig. 6, which are not described herein again.
Step S2: and the account management server returns a verification passing message.
The account management server pre-stores information of the account 1, which includes a login password corresponding to the account 1, and it is assumed that the login password of the account 1 stored by the account management server is key 0. After receiving the request for logging in the account 1 sent by the device a, the account management server verifies the request for logging in the account 1 according to the information of the account 1 locally stored by the account management server. If the password key1 of the login account 1 carried in the request for logging in the account 1 is consistent with the login password key0 of the account 1 locally stored by the account management server, the account management server determines that the login verification of the account 1 is passed. At this time, the account management server returns an authentication pass message to the device a.
If the password key1 of the login account 1 carried in the request for logging in the account 1 is inconsistent with the login password key0 of the account 1 locally stored by the account management server, the account management server determines that the login authentication of the account 1 fails. At this time, the account management server returns a verification failure message to the device a. At this time, the user needs to re-input the account and the login password through the diagram (B) of fig. 5B.
Referring to fig. 4 and 10, the device a receives a verification pass message or a verification fail message through the account management module.
S3: and sending a registration opening notice.
Referring to fig. 4 and 10, in a case that the account management module of the device a receives the verification passing message returned by the account management server, the account management module in the device a sends a registration opening notification to the trust ring service module of the application framework layer. The registration opening notification is used for indicating the trust ring service module to open the registration process.
Here, a process of entering the interface of "password safe" and opening the switch of "password safe synchronization" in the process of creating the trust ring by the device a will be described.
Fig. 7A is a schematic diagram illustrating an example process for entering a "combination safe" interface in the case where device a has set a lock screen code. Referring to fig. 7A, in a case that a user of device a has set a screen locking code (also referred to as a screen locking password) of device a, when the user clicks a "password safe synchronization" application in the interface on a "device information" interface (see fig. 7A), device a pops up a "screen locking password input" interface (see fig. 7 b). If the user enters the lock screen code at the "enter lock screen code" interface and the lock screen code is correct, the screen of device a enters the "password safe" interface (see fig. 7A (c)). At the moment, a 'password safe box synchronization' switch and a 'synchronization to glory account number' switch on the 'password safe box' interface are both in a closed state.
Fig. 7B is a schematic diagram illustrating an exemplary process for entering a "combination safe" interface without device a setting a lock screen code. Referring to fig. 7B, in a case where the user of the device a does not set the screen locking code of the device a, when the user clicks the "password safe synchronization" application in the interface on the "device information" interface (see fig. 7B (a)), the device a pops up the "set digital screen locking code" interface (see fig. 7B (B)). After the user inputs the lock screen code at the interface "set digital lock screen code" shown in fig. 7B (B), the device a pops up an interface for confirming the code "set digital lock screen code" (please refer to fig. 7B (c)). The user re-inputs the lock screen code on the interface shown in fig. 7B (c), and if the re-input lock screen code is identical to the lock screen code input by the user on the interface shown in fig. 7B (B), the screen of the device a enters the "password safe" interface shown in fig. 7B (d), which is the same as the interface shown in fig. 7A (c).
FIG. 8 is a schematic diagram illustrating the process of opening a "password safe synchronization" switch in the context of creating a trust ring. Referring to fig. 8, when the user clicks the "password safe synchronization" switch on the "password safe" interface (see fig. 8 (a)), the device a pops up a reminder interface shown in fig. 8 (b) on the screen, and the reminder interface is used to remind the user whether to approve the password safe synchronization service. When the user clicks the "agree" button on the reminder interface (see fig. 8 (b)), the "password safe synchronization" switch on the "password safe" interface is turned on (see fig. 8 (c)).
When receiving the registration opening notification, the trust ring service module cannot determine whether to open a process of creating a trust ring or a process of joining the trust ring, and needs to determine by detecting a registration state.
S4: the trust ring service module in device a detects the registration status of device a.
The registered state includes both unregistered and registered states. The unregistered state is used for indicating that the device is not currently registered to the trust ring, and the registered state is used for indicating that the device is currently registered to the trust ring.
S5: and when detecting that the registration state of the device A is unregistered, the device A sends a registration state comparison request to the trust ring cloud.
The registration state comparison request is used for indicating to obtain a comparison result between the registration state of the device A detected by the trust ring service module and the registration state of the device A stored in the trust ring cloud.
The registration state comparison request includes a UID (device identifier) of the device a and a UDID (account identifier) of an account to which the device a belongs.
S6: the trust ring cloud returns a first registration status confirmation message to the trust ring service module in device a.
Wherein the first registration status confirmation message is used to indicate that no trust ring exists under account 1.
After receiving a registration state comparison request of the device a, the trust ring cloud compares whether a trust ring exists under the account 1, and compares whether the device a is in the trust ring under the condition that the trust ring exists under the account 1. And when the trust ring does not exist under the account 1, the trust ring cloud generates a first registration state confirmation message and sends the first registration state confirmation message to the device A.
Based on a first registration state confirmation message returned by the trust ring cloud, the device a determines that the registration is executed to create the trust ring process.
S7: the trust ring service module in device a receives the user-entered screen locking code pw11 for device a.
Here, a process of turning on the "synchronize to glory account" switch in the process of creating the trust ring will be described.
Fig. 9 is a schematic diagram illustrating a process of turning on a "synchronize to glory account" switch in a scenario of creating a trust ring. Referring to fig. 9, when the user clicks the "synchronize to glory account" switch on the "password safe" interface in which the "password safe synchronization" switch is turned on (see fig. 9 (a)), the device a pops up a "enter lock screen password" interface on the screen (see fig. 9 (b)). If the user inputs the screen locking code of the device A on the screen locking password input interface, the trust ring service module in the device A receives the screen locking code of the device A input by the user. If the screen locking password of the device a input by the user is correct, after the device a executes the process of creating the trust ring, the device a enters a "password safe box" interface in which both a "password safe box synchronization" switch and a "synchronization to glory account" switch are in an open state (see fig. 9 (c)).
It should be noted that the operation of the user clicking the "synchronize to glory account" switch on the interface shown in fig. 9 (a) (see fig. 9 (a)) triggers the device a to execute the steps of the create trust ring program after step S3 and step S3 in fig. 10.
The screen locking code of the device A belongs to the user secret of the device A, and is unknown to the cloud side.
S8: the trust ring service module of device a verifies device a's lock screen code pw 11.
The process of verifying the screen locking code of device a may be: and the equipment A compares the screen locking code input by the user with the screen locking code pre-stored in the equipment A, if the screen locking code is consistent with the screen locking code, the verification is passed, and otherwise, the verification fails.
Here, the trust ring service module verifies the lock screen code of the device a input by the user on the interface shown in fig. 9 (b), and the subsequent step S9 is not performed until the verification is passed. If the verification fails, the device a will exit to the interface shown in fig. 9 (b) and prompt the input screen locking code error at the interface.
S9: the trust ring service module derives PWUATH11 based on the lock screen code of device a.
Assuming that the screen locking code input by the user this time is pw11, the trust ring service module derives PWUATH11 based on pw 11.
Since pw11 belongs to the user secret of device a, the cloud side cannot obtain pw11, and thus the cloud side cannot obtain pwuth 11 derived based on pw 11.
Pwuati 11 is unknown to the cloud side because pwuati 11 is generated based on the unknown user secret pw11 of the cloud side.
S10: the trust ring service module of device a sends PWAUTH11 to the trust ring module in the trusted execution environment of device a.
Subsequently, the trust ring module generates a master key ciphertext EMK11 and a parameter token 11 based on PWAUTH11, and the generation manners of EMK11 and token 11 are detailed in steps S11 to S14 of fig. 10.
S11: the trust ring module generates MK.
The device A generates MK, namely the master key through the trust ring module, the MK is stored in the trusted execution environment of the device A, and the MK cannot be stolen even if the device A is attacked, so that the safety is high.
S12: the trust ring module encrypts MK based on PWAUTH11, generating EMK 11.
EMK11 is the first master key ciphertext. The trust ring module derives a key KEK11 based on PWAUTH11, and encrypts MK based on the KEK11 to generate EMK 11.
S13: the trust ring module of device a sends the EMK11 to the trust ring service module of device a.
After the trust ring module generates the EMK11, the EMK11 is sent to the trust ring service module, and the salt _ enc11 is also sent to the trust ring service module while the EMK11 is sent.
S14: the trust ring service module in device a generates the parameter park 11 based on PWAUTH 11.
S15: the device A sends a ring creation request carrying the EMK11 and the PAKE11 to the trust ring cloud through the trust ring service module.
The device A sends a ring creation request to the trust ring cloud through the trust ring service module, and the PAKE11 parameter registration and EMK11 hosting can be completed through the ring creation request.
In order to improve the security of the EMK11, before the trust ring service module sends the EMK11, the trust ring service module may perform secondary encryption on the EMK11 based on the public key of the trust ring cloud HSM obtained during login, so as to obtain a two-layer ciphertext of the master key.
S16: the trust ring cloud creates a trust ring 1 for account 1 in response to the ring creation request, and adds device a to trust ring 1.
The trust ring cloud responds to a ring creation request sent by the device A, creates a trust ring 1 for the account 1, when other devices such as a device B and a device C under the account 1 send registration state comparison requests to the trust ring cloud, the trust ring cloud returns a confirmation message that the trust ring 1 exists but the device B and the device C are not in the trust ring, the device B and the device C execute a process of adding the trust ring, and the specific process of adding the trust ring can refer to a subsequent related description.
After the creation of the trust ring 1 is completed, the data of the trust ring 1 managed in the trust ring cloud is shown in table 1:
TABLE 1
UID UDID Parameter PAKE Master key ciphertext
Account number
1 Device A PAKE11 EMK11
S17: the trust ring cloud returns a ring creation success message to the trust ring service module of the device A.
The trust ring cloud creates a trust ring 1 for the account number 1, and after the device a is added to the trust ring 1, returns a ring creation success message to the device a, and after the device a receives the ring creation success message, opens a switch of "synchronize to a glory account number" in the password safe box interface, as shown in the diagram (c) of fig. 9. After the 'synchronization to a glory account' switch is turned on, a user can sense that the device A has successfully joined the trust ring, and service data in the password safe can be synchronized to the account management server, so that other devices in the trust ring 1 under the account 1 can share the service data.
At this point, the process of creating a trust ring is finished, and device a completes registration.
After the device a finishes registering, the trust ring service module of the device a modifies the registration state of the device a to be registered.
After the device a finishes registering, the trust ring service module of the device a modifies the registration state of the device a to be registered.
As can be seen from the process of creating the trust ring, the account-level master key MK is protected based on the user secret, and the cloud side cannot decrypt the managed master key ciphertext because the user secret is unknown to the cloud side, so that the risk of master key leakage is reduced, the security of the master key MK is improved, the cloud side can self-prove and clear, and support can be provided for data synchronization of service data with high security requirements.
It should be noted that the above-mentioned process should be understood as an illustrative example of the process of creating a trust ring in the present application, and is not intended to limit the present application.
Fig. 11 is a schematic diagram illustrating that device a synchronizes the business data cryptograph to the account management server after creating the trust ring. Fig. 12 is a schematic diagram illustrating exemplary interaction of modules for synchronizing business data ciphertext. Fig. 13 is a schematic diagram illustrating an interface of a synchronized service data ciphertext to an account management server. Referring to fig. 11, 12, and 13, in the case that the trust ring 1 of the account 1 has been created and the device a has been added to the trust ring 1, the device a may encrypt sensitive service data with MK to obtain a service data ciphertext, and upload the service data ciphertext to the account management server.
After the trust ring is created, the process of synchronizing the service data ciphertext to the account management server by the device A is as follows:
referring to fig. 12, a cryptographic safe of an application layer in a device a reads a service data plaintext, and then stores the service data plaintext into a service data storage service module of an application framework layer, where the service data storage service module sends the service data plaintext to a key management module in a trusted execution environment. And the trust ring module generates a service key dkey according to the MK, the key management module reads the dkey from the trust ring module, and the dkey is used for encrypting the service data to obtain a service data ciphertext Edata. And the business data storage service module uploads the business data ciphertext Edata to the account management server through the business data synchronization service module and an account management server synchronization frame of the application program layer.
It should be noted that the service keys dkey corresponding to different services are different, and the device a may generate the service keys of different services according to MK.
For example, referring to fig. 13, when the user uses service 1 on device a, the user needs to input the account and password of service 1, as shown in fig. 13 (a). After the account number and the password of the service 1 are input, the device a pops up information prompting whether to synchronize the account number and the password of the service 1 to the password safe, as shown in fig. 13 (b). If the user agrees, the device A takes the account and the password of the service 1 as the service data1 of the service 1, and uploads the ciphertext Edata1 of the data1 to the account management server according to the same synchronization process as the service data.
Therefore, in the embodiment of the application, the business data ciphertext in the account management server does not depend on account security completely, but also depends on MK security, and even if the account is stolen, the security of data on the cloud is not affected.
The business data of the user are encrypted based on the high-security master key, and then the business data ciphertext is synchronized to the account management server, so that the risk of leakage of the business data ciphertext is reduced, and the security of data synchronous backup is improved.
Joining a trust ring
On the basis that device a has created trust ring 1 for account 1, device B under account 1 may join trust ring 1 according to the join trust ring procedure in the following embodiment. Before device B joins trust ring 1, only device a, the ring device, is in trust ring 1.
Fig. 14 is a schematic diagram illustrating information interaction during the process of joining the trust ring by the device B. Fig. 18 is a flowchart illustrating the process of device B joining a trust ring.
The process of joining a trust ring according to the embodiment of the present application will be described in detail below with reference to fig. 14 and 18.
Referring to fig. 14, after device a registers as the first device, the process of creating the trust ring is completed, device a has uploaded the master key cryptogram EMK11 of device a, i.e., the first master key cryptogram, and the authentication parameter pave 11 of device a to the trust ring cloud, and thereafter, other devices, e.g., device B, register by joining the trust ring process. In the process that the device B joins the trust ring 1, the device B sends the authentication parameter PAKE12 of the device A in the trust ring 1 to the trust ring cloud, and after confirming that the PAKE12 is consistent with the authentication parameter PAKE11 of the device A stored in the trust ring 1, the trust ring cloud returns the master key ciphertext EMK11 of the device A to the device B. Device B then decrypts MK from EMK11, encrypts MK based on the lock screen code of device B, generates a master key ciphertext EMK21 of device B, i.e., a second master key ciphertext, and authentication parameters pawe 21 of device B, and sends EMK21 and pawe 21 to the trust ring cloud.
Referring to fig. 18, in the embodiment of the present application, the process of joining the trust ring by the device B may include the following steps:
s1: device B logs into account 1.
Like device a, device B logs in to account 1 by sending a request to the account management server to log in to account 1. For a detailed process of logging in the account 1 by the device B, refer to the foregoing description of the process of logging in the account 1 by the device a, and are not described herein again.
And S2, the account management server returns a verification passing message to the device B.
For the processing procedure of the request of the account management server for the device B to log in the account 1, reference is made to the processing procedure of the request of the account management server for the device a to log in the account 1, which is not described herein again.
After the device B successfully logs in the account 1, the user may enter the "account center" interface through the flow indicated by the diagrams (B) and (c) in fig. 5A to find the "my device" application.
S3: and sending a registration opening notice.
Referring to fig. 4 and fig. 18, in a case that the account management module of the device B receives a verification-passed message returned by the account management server, the account management module in the device B sends a registration-opening notification to the trust ring service module of the application framework layer. The registration opening notification is used for indicating the trust ring service module of the device B to open the registration process.
Here, a process of entering a "password safe" interface and opening a "password safe synchronization" switch during the process of joining the trust ring by the device B will be described.
FIG. 15 is an exemplary interface diagram illustrating the migration of a My devices application from device B to a password safe synchronization application. Comparing fig. 6, it can be seen that there is a trusted device glory V40 on the my devices interface of device B, device a, during the joining of the trust ring. This indicates that a ring of trust already exists under account 1.
FIG. 16A is a schematic diagram illustrating the process of entering the "combination safe" interface and opening the "combination safe synchronization" switch when device B has set the lock code. Referring to fig. 16A, in a case where the user of the device B has set the lock screen code of the device B, when the user clicks the "password safe synchronization" application in the interface on the "device information" interface (see fig. 16A), the device B pops up the "enter lock screen password" interface (see fig. 16B). If the user enters the lock screen code at the "enter lock screen code" interface and the lock screen code is correct, the screen of device B enters the "password safe" interface (see fig. 16A (c)). At the moment, a 'password safe box synchronization' switch and a 'synchronization to glory account number' switch on the 'password safe box' interface are both in a closed state. Different from the process of creating the trust ring by the device a, in the process of joining the trust ring by the device B, when the user clicks the "password safe synchronization" switch on the "password safe" interface shown in the diagram (c) of fig. 16A, the screen of the device B is directly switched to the interface shown in the diagram (d) of fig. 16A, that is, the interface where the "password safe synchronization" switch is turned on and the "synchronization to the glory account" is not turned on.
FIG. 16B is a schematic diagram illustrating the process of entering the "combination safe" interface and opening the "combination safe synchronization" switch without the lock screen code being set by device B. Referring to fig. 16B, a process of entering the interface of the "password safe" and opening the switch of the "password safe synchronization" when the device B does not set the lock screen code is different from a process of entering the interface of the "password safe" and opening the switch of the "password safe synchronization" when the device B has set the lock screen code shown in fig. 16A in that the lock screen code needs to be set (see fig. 16B (B)) and the lock screen code needs to be confirmed (see fig. 16B (c)) when the device B does not set the lock screen code, and other processes are the same as those in the case of having set the lock screen code, and are not described again here.
S4: the trust ring service module in device B detects the registration status of device B.
For the description of this step, refer to the foregoing description of step S4 in fig. 10, and will not be described herein again.
S5: and when the registration state of the device B is detected to be unregistered, sending a registration state comparison request.
For the description of this step, refer to the foregoing description of step S5 in fig. 10, and will not be described herein again.
S6: and returning a second registration state confirmation message, namely the second registration state confirmation message.
Wherein the second registration status confirmation message is used to indicate that trust ring 1 exists under account 1, but device B is not on trust ring 1.
After receiving the registration state comparison request of the device B, the trust ring cloud first compares whether a trust ring exists under the account 1. At this point, since the trust ring has created trust ring 1 for account 1 at the time of device a registration, it is confirmed that there is a trust ring under account 1. Then, the trust ring cloud confirms that the device B is not in the trust ring according to the trust ring data of the account 1 shown in table 1, and at this time, the trust ring cloud generates a second registration state confirmation message and sends the second registration state confirmation message to the device B.
Based on a second registration state confirmation message returned by the trust ring cloud, the device B determines that the registration is executed and the process of joining the trust ring is executed.
S7: the trust ring service module in device B receives the user-entered screen locking code pw21 for device B.
Fig. 17 is a schematic diagram illustrating a process of turning on a "synchronize to glory account" switch in a scenario where device B joins a trust ring. Referring to fig. 17, when the user clicks the "synchronize to glory account" switch on the "password safe" interface in which the "password safe synchronization" switch is turned on (see fig. 17 (a)), the device B pops up a "enter lock screen password" interface on the screen (see fig. 17 (B)). If the user inputs the screen locking code of the device B on the screen locking password input interface, the trust ring service module in the device B receives the screen locking code of the device B input by the user.
S8: the trust ring service module of device B verifies device B's lock screen code pw21, deriving PWAUTH21 based on device B's lock screen code pw 21.
Please refer to the aforementioned process of verifying the screen locking code pw11 of device a for the process of verifying the screen locking code pw21 of device B, which is not described herein again.
S9: the trust ring service module of device B obtains the list of devices in trust ring 1.
The trust ring service module of the device B may send an acquisition request of the device list in the trust ring 1 to the trust ring cloud, and after receiving the request, the trust ring cloud returns the device list in the trust ring 1 to the trust ring service module of the device B.
S10: the trust ring cloud returns the list of devices in trust ring 1 to the trust ring service module of device B.
All devices that have currently joined the trust ring 1 are included in the device list in trust ring 1. In the embodiment of the present application, since the device a is a device that creates the trust ring 1, and the device B is a device that first joins the trust ring 1, in the process of joining the device B in the trust ring 1, the device list in the trust ring 1 returned by the trust ring cloud includes only one device of the device a.
S11: the trust ring service module of the device B displays a screen locking code input interface of the device A, receives a screen locking code pw12 of the device A input by a user, and generates a parameter PAKE12 based on the screen locking code pw 12.
Referring to fig. 17, if the screen-locking code of device B entered by the user at the interface shown in fig. 17 (B) is correct, the screen of device B pops up the interface "enter other glory device screen-locking code" (see fig. 17 (c)), and the "other glory device" in fig. 17 (c) is glory V40, i.e., device a. The user inputs the screen locking code pw12 of the device a on the interface "input other glory device screen locking password", and if the screen locking code pw12 of the device a input by the user is correct, the device B enters the interface "password safe box" in which the switch "password safe box synchronization" and the switch "synchronization to glory account" are both in the on state after the device B completes the trust loop process (see (d) diagram of fig. 17).
It should be noted that the operation of the user clicking the "synchronize to glory account" switch on the interface shown in fig. 17 (a) (see fig. 17 (a)) triggers the device a to execute the join trust ring program steps after step S3 and step S3 in fig. 18.
The screen locking code of the device B belongs to the user secret of the device B, and is unknown to the cloud side.
The principle of generating the parameter park 12 is the same as that of generating the parameter park 11, and is not described herein again.
S12: the trust ring service module of device B sends the parameter park 12 to the trust ring cloud.
In the process that the device B joins the trust ring 1, the trust ring cloud needs to verify the identity of the device in the trust ring 1, when the verification is passed, the device is allowed to join the trust ring 1, otherwise, the trust ring cloud forbids the device B to join the trust ring 1.
S13: after the authentication of the device a by the trust ring cloud based on the parameter PAKE12 is passed, the EMK11 of the device a is returned to the trust ring service module of the device B.
S14 the trust ring service module of device B sends EMK11 and PWAUTH21 to the trust ring module of device B.
The trust ring module is located in the trusted execution environment of device B, which needs to decrypt EMK11 in the trusted execution environment to fetch MK, and encrypt MK based on PWAUTH21 in the trusted execution environment, resulting in EMK 21.
S15, the trust ring module of the device B decrypts the EMK11 to obtain MK, and encrypts the MK based on PWAUTH21 to obtain EMK 21.
S16: the trust ring module of device B sends the EMK21 to the trust ring service module of device B.
S17: device B generates parameter park 21 based on PWAUTH 21.
S18: the trust ring service module of device B sends a ring add request carrying EMK21 and parameter pawe 21 to the trust ring cloud.
S19: the trust ring cloud adds device B to trust ring 1 in response to the ring add request.
After device B joins trust ring 1, the trust ring 1 data managed in the trust ring cloud is shown in table 2:
TABLE 2
UID UDID Parameter PAKE Master key ciphertext
Account number
1 Device A PAKE11 EMK11
Account number
1 Device B PAKE21 EMK21
S20: and the trust ring cloud returns a ring adding success message to the trust ring service module of the device B.
After the trust ring cloud adds the device B to the trust ring 1, a ring adding success message is returned to the device B, and after receiving the ring adding success message, the device B opens a switch of synchronizing to a glory account number in a password safe interface, as shown in (d) of fig. 17. After the 'synchronization to a glory account' switch is turned on, the user can sense that the device B has successfully joined the trust ring, and the service data in the password safe can be synchronized to the account management server, so that other devices in the trust ring 1 under the account 1 can share the service data.
At this point, the process of the device B joining the trust ring 1 is completed, and the device B completes registration.
After the device B completes registration, the trust ring service module of the device B modifies the registration state of the device B to be registered.
The method comprises the steps that a cloud side sends a managed master key ciphertext of a registered device to a ring-added device, the ring-added device decrypts the master key ciphertext of the registered device based on a user secret of the registered device to obtain a master key MK, and the user secret of the registered device is unknown to the cloud side and does not need to be forwarded by the cloud side, so that the cloud side cannot decrypt the master key ciphertext and can self-verify the clearness.
It should be noted that the above-mentioned process should be understood as an illustrative example of the trust ring process added in the present application, and is not intended to limit the present application.
Fig. 19 is a schematic diagram exemplarily illustrating synchronization of a service data ciphertext from an account management server after device B joins a trust ring. Fig. 20 is a schematic diagram illustrating an interface for synchronizing a business data cryptogram from an account management server. Referring to fig. 19, 12 and 20, in the case that the trust ring 1 of the account 1 is created, the device a has been added to the trust ring 1, and the device a has uploaded the service data ciphertext Edata to the account management server, the device B may synchronize the service data ciphertext Edata from the account management server to the device B, and decrypt it locally with MK to obtain the service data plaintext data.
After the trust ring is added, the process of synchronizing the service data ciphertext from the account management server by the device B is as follows:
referring to fig. 12, a service data synchronization service module in the device B obtains a service data ciphertext Edata from an account management server through an account management server synchronization framework of an application layer. Then, the service data synchronization service module in the device B sends the service data ciphertext Edata to the service data storage service module in the device B, and the service data storage service module sends the service data ciphertext Edata to the key management module in the information execution environment in the device B. And the trust ring module generates a service key dkey according to MK, the key management module reads the dkey from the trust ring module, and the service data ciphertext Edata is decrypted by using the dkey to obtain the service data plaintext data. And then, the key management module returns the service data plaintext data to the service data storage service module, and the service data storage service module stores the service data plaintext data.
For example, referring to fig. 20, when the user uses service 1 on device B, the user needs to input the account and password of service 1. On the account number and password input interface of the service 1, as shown in fig. 20 (a), the device B pops up information prompting whether to use the account number and password of the service 1 with which the password safe has been synchronized. If the user agrees, device B automatically populates the interface shown in fig. 20 (a) with the account number and password of service 1 with synchronized password safe, as shown in fig. 20 (B). Therefore, the user does not need to independently record passwords for each service, and the user experience is improved.
It should be noted that, after the device B is added to the trust ring 1, the service data in the device B may also be encrypted by the master key MK and then synchronized to the account management server, and for this synchronization process, reference is made to the foregoing description of synchronizing the service data to the account management server by the device a, which is not described herein again.
On the basis that the device a has created the trust ring 1 of the account 1 and the device B has joined the trust ring 1 through the join trust ring process shown in fig. 18, the device C under the account 1 may also join the trust ring 1 according to the join trust ring process shown in fig. 18. For a detailed process of joining the device C into the trust ring 1, refer to the foregoing description of the process of joining the device B into the trust ring 1, and are not described herein again.
Unlike device B, there are two ring devices, device a and device B, in trust ring 1 before device C joins trust ring 1. Thus, upon verifying that the old device (which herein refers to an on-ring device, i.e., a device that has registered with a trust ring) is locked, device C may select either one of the two on-ring devices, device a, device B, as the old device. That is, in the process of joining the trust ring 1 by the device C, the device list returned by the trust ring cloud to the device C in step S10 shown in fig. 18 includes 2 trusted devices, i.e., device a (see the glory V40 in fig. 22 (B)) and device B (see the glory V30 in fig. 22 (B)). In the "enter other glory device lockscreen password" interface popped up by the device C, the lockscreen password of the first registered device (device a in the embodiment of the present application) is entered by default, as shown in fig. 17 (C), that is, the "other device" in this interface is glory V40 (device a). At this time, the device C can select to input the screen locking code of the other old device, for example, the device B, through the "select authentication device" operation option on the interface shown in fig. 17 (C). The procedure for device C to change the authentication device is described below with reference to fig. 22.
Fig. 22 is a flowchart illustrating an exemplary input of a screen locking code of a device in a ring in the process of turning on a "synchronize to glory account" switch in a scenario where the device C joins a trust ring. Referring to fig. 22, in the process of joining the trust ring, after entering the interface shown in fig. 17 (C), the user clicks "select authentication device" on the interface, as shown in fig. 22 (a). Thus, the device C enters the interface of "select authentication device", as shown in fig. 22 (b). Since there are already 2 devices in the ring of trust 1 at this time (device A and device B), there are 2 devices in the "select verification device" interface, namely glory V40 (device A) and glory V30 (device B). The user clicks "glory V30", indicating that the user selected device B as the old device for authentication. Upon clicking, device C pops up an "enter other glory device lockscreen password" interface, and the "other device" in this interface changes to glory V30, as shown in FIG. 22 (C). When the screen locking code of the device B input by the user on the interface shown in fig. 22 (c) is correct, the "synchronize to glory account" switch is turned on.
Fig. 21 is a schematic diagram illustrating information interaction during the process of joining the trust ring by the device C. Referring to fig. 21, in the process that the device C joins the trust ring 1, the device C selects the device B as an old device, inputs a screen locking code pw22 of the device B when the screen locking code pw is input, generates an authentication parameter pay 22 of the device B based on the screen locking code pw22, and then sends the authentication parameter pay 22 of the device B to the trust ring cloud. After confirming that the token 22 is consistent with the authentication parameter token 21 of the device B stored in the trust ring 1, the trust ring cloud returns the master key ciphertext EMK21 of the device B to the device C. Then, device C decrypts MK from EMK21, encrypts MK based on lock screen code pw31 of device C, generates master key ciphertext EMK31 of device C, i.e., third master key ciphertext, and generates authentication parameter pase 31 of device C based on lock screen code pw31 of device C, and then device C sends EMK31 and pase 31 to trust ring cloud, which adds device C to trust ring 1. At this point, the process of joining the trust ring 1 by the device C is completed, and the device C completes registration.
After device C joins trust ring 1, the trust ring 1 data managed in the trust ring cloud is shown in table 3:
TABLE 3
UID UDID Parameter PAKE Master key ciphertext
Account number
1 Device A PAKE11 EMK11
Account number
1 Device B PAKE21 EMK21
Account number
1 Device C PAKE31 EMK31
After the device C joins the trust ring 1, the service data in the device C may be encrypted by the master key MK and then synchronized to the account management server, or other data synchronized in the account management server in the ring device may be synchronized to the device C. For the process of synchronizing service data to the account management server, reference is made to the foregoing description of the process of synchronizing service data to the account management server by the device a, and for the process of synchronizing service data to the device C by the account management server, reference is made to the foregoing description of the process of synchronizing service data to the local device B by the device B from the account management server, which is not described herein again.
Master key ciphertext EMK update
Under the condition that the screen locking code of the registered equipment is changed, the equipment and the trust ring cloud which change the screen locking code can update the master key ciphertext EMK. The following describes a process of updating the master key ciphertext EMK, taking the device a as an example. Those skilled in the art will appreciate that the process of device a performing master key cryptogram EMK updates is equally applicable to other registered devices in the trust ring.
Fig. 23 is a schematic diagram illustrating information interaction in the process of updating the master key ciphertext EMK by the device a. Referring to fig. 23, in the process of updating the master key ciphertext EMK by the device a, the device a sends a screen locking change notification of the device a to the trust ring cloud, the trust ring cloud obtains a screen locking change event of the device a, returns a parameter challenge to the device a, and the device a sends, to the trust ring cloud, a new authentication parameter pay 13 and a new master key ciphertext EMK13 corresponding to a new screen locking pw13 of the device a.
FIG. 24 is an exemplary interface diagram illustrating changing a lock screen code. Referring to fig. 24, when the device a needs to change the screen locking code, the user clicks the "set" application icon on the main interface of the device a, as shown in fig. 24 (a), and after clicking, the user enters the "set" interface shown in fig. 24 (b). At the "setup" interface, the user clicks on the "biometric and password" option, and proceeds to the "biometric and password" interface shown in fig. 24 (c). And in the interface of biological identification and password, the user clicks the option of changing the screen locking password to execute the operation of changing the screen locking password.
FIG. 25 is a state diagram illustrating an exemplary "lockbox synchronization" application in the networked state after a screen lock code change. Referring to fig. 25, after the screen locking code is changed in the device a networking state, when the user clicks the "safe synchronization with password" application option in the interface shown in fig. 25 (a), the user enters the "safe synchronization with password" interface shown in fig. 25 (b), and at this time, both the "safe synchronization with password" switch and the "synchronization to jazzing account" switch are in the on state. Therefore, the process of updating the authentication parameters and the master key ciphertext by the device a caused by changing the screen locking code is not sensible to the user.
Fig. 26 is a flowchart illustrating updating of the master key cryptogram EMK caused by a screen lock change of the device a in the networking state. Referring to fig. 26, in the networking state of device a, the process of updating the master key cryptogram EMK caused by the screen locking code change of device a includes the following steps:
and S1, when the screen locking code of the device A is changed, the trust ring service module in the device A records the screen locking code change event and the changed screen locking code pw 13.
S2, the trust ring service module in device a sends a screen locking code change notification to the trust ring cloud.
S3, the trust ring cloud returns a third registration status confirmation message and a parameter challenge to the trust ring service module in device a.
The trust ring cloud generates an HSM public key and an HSM private key, and returns the HSM public key to the device A while returning the parameter challenge to the trust ring service module in the device A.
The third registration status confirmation message is used to indicate that there is trust ring 1 under account 1 and that device a is already on trust ring 1.
S4, the trust ring service module in device a derives PWAUTH13 based on the new lock screen pw13, and generates pave 13 based on PWAUTH 13.
Device a also derives base13 based on PWAUTH 13. The trusted salt value used in generating PAKE13 is salt _ auth 13.
For the generation processes of PWAUTH13 and park 13, please refer to the generation processes of PWAUTH11 and park 11, which are not described herein again.
S5, the trust ring service module in device A sends PWAUTH13 to the trust ring module in device A.
The trust ring module generates a new cryptographic salt _ enc 13.
S6, the trust ring module in the device A encrypts MK based on PWAUTH13 to obtain a new master key ciphertext EMK 13.
The trust ring module encrypts MK based on PWAUTH13 and the encryption salt value salt _ enc13 to obtain a new master key ciphertext EMK 13.
S7, the trust ring module in device a returns the new master key ciphertext EMK13 and other update parameters to the trust ring service module.
Other update parameters include salt enc 13.
S8, the trust ring service module in device A gets the signature data based on PAKE13 and challenge.
The trust ring service module in the device a calculates digests for the sake 13 and challenge using a hash algorithm to obtain a first digital digest, and signs the first digital digest using an ECC (elliptic cryptosystem) private key to obtain signature data. And the ECC public key corresponding to the ECC private key is sent to the trust ring cloud by the equipment in the equipment registration process.
S9, the trust ring service module in device a sends the signature data and the data such as EMK13, pave 13 encrypted with HSM public key to the trust ring cloud.
Data encrypted with the HSM public key include EMK13, salt _ enc13, salt _ auth13, base13, and pave 13.
S10, in case that the device a passes the verification, the trust ring cloud replaces the EMK11 and the pay 11 stored in the trust ring 1 with the EMK13 and the pay 13, respectively.
The verification process of the trust ring cloud is as follows:
decrypting EMK13, salt _ enc13, salt _ auth13, base13, PAKE13 from data encrypted with the HSM public key using the HSM private key;
obtaining a first digital digest from the signature data by using an ECC public key;
using a hash algorithm to digest according to the decrypted PAKE13 and the local challenge to obtain a second digital digest;
if the second digital digest is identical to the first digital digest, the verification is passed. Otherwise, if the second digital digest is not identical to the first digital digest, the verification fails.
S11, the trust ring cloud returns an update success message to the trust ring service module in device a.
After the update process of the master key ciphertext EMK of the device a is completed, the trust ring 1 data managed in the trust ring cloud is as shown in table 4:
TABLE 4
UID UDID Parameter PAKE Master key ciphertext
Account number
1 Device A PAKE13 EMK11
Account number
1 Device B PAKE21 EMK21
Account number
1 Device C PAKE31 EMK31
FIG. 27 is a state diagram illustrating an exemplary "lockbox synchronization" application in an unconnected state after a screen lock code change. Referring to fig. 27, after the screen locking code is changed in the state that the device a is not networked, when the user clicks the "password safe synchronization" application option in the "device information" interface shown in (a) of fig. 27, the interface shown in (b) of fig. 27 is entered, that is, the screen of the device a still stays on the "device information" interface, and a prompt message of "network unconnected" pops up on the screen of the device a.
Fig. 28 is a flowchart illustrating updating of the master key ciphertext EMK caused by a screen lock change of the device a in an unconnected state. Referring to fig. 28, in the state that the device a is not networked, the process of updating the master key ciphertext EMK caused by the screen locking code change of the device a includes the following steps:
and S1, when the screen locking code of the device A is changed, the trust ring service module in the device A records the screen locking code change event and the changed screen locking code pw 13.
S2, the trust ring service module in device a derives PWAUTH13 based on the new lock screen pw13, and generates pave 13 based on PWAUTH 13.
S3, the trust ring service module in device a sends PWAUTH13 to the trust ring module in device a.
S4, the trust ring module in the device A encrypts MK based on PWAUTH13 to obtain a new master key ciphertext EMK 13.
S5, the trust ring module in device a returns the new master key ciphertext EMK13 and other update parameters to the trust ring service module.
Other update parameters include salt enc 13.
Therefore, in the state that the device a is not networked, the process of updating the master key ciphertext EMK caused by the change of the screen locking code of the device a only includes the processing of the single side of the device a, and the step of interacting with the trust ring cloud needs to be performed after the device a is networked.
As can be seen from the updating process of the master key ciphertext EMK, the method and the device for updating the master key ciphertext EMK managed by the cloud side can update the master key ciphertext EMK managed by the cloud side based on the updating of the screen locking code, so that the difficulty of breaking the master key is increased, and the safety of the master key MK is improved. Meanwhile, the changed screen locking code is still unknown to the cloud side, and the cloud side cannot decrypt the master key ciphertext EMK, so that the cloud side can self-verify and clear, and can provide support for data synchronization of service data with high safety requirements.
The electronic device, the computer storage medium, the computer program product, or the chip provided in this embodiment are all configured to execute the corresponding method provided above, so that the beneficial effects achieved by the electronic device, the computer storage medium, the computer program product, or the chip may refer to the beneficial effects in the corresponding method provided above, and are not described herein again.
Through the description of the above embodiments, those skilled in the art will understand that, for convenience and simplicity of description, only the division of the above functional modules is used as an example, and in practical applications, the above function distribution may be completed by different functional modules as needed, that is, the internal structure of the device may be divided into different functional modules to complete all or part of the above described functions.
In the several embodiments provided in the present application, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the above-described embodiments of the apparatus are merely illustrative, and for example, a module or a unit may be divided into only one logic function, and may be implemented in other ways, for example, a plurality of units or components may be combined or integrated into another apparatus, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
Units described as separate parts may or may not be physically separate, and parts displayed as units may be one physical unit or a plurality of physical units, may be located in one place, or may be distributed to a plurality of different places. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit may be implemented in the form of hardware, or may also be implemented in the form of a software functional unit.
Any contents of the respective embodiments of the present application, and any contents of the same embodiment, can be freely combined. Any combination of the above is within the scope of the present application.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a readable storage medium. Based on such understanding, the technical solutions of the embodiments of the present application may be essentially or partially contributed to by the prior art, or all or part of the technical solutions may be embodied in the form of a software product, where the software product is stored in a storage medium and includes several instructions to enable a device (which may be a single chip, a chip, or the like) or a processor (processor) to execute all or part of the steps of the methods of the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
While the present embodiments have been described with reference to the accompanying drawings, it is to be understood that the invention is not limited to the precise embodiments described above, which are meant to be illustrative and not restrictive, and that various changes may be made therein by those skilled in the art without departing from the spirit and scope of the invention as defined by the appended claims.

Claims (19)

1. A data protection method is applied to electronic equipment, and the method comprises the following steps:
under the condition that a screen locking code of electronic equipment is changed, receiving a first parameter sent by a first server, wherein the electronic equipment logs in a first account, and trust ring data of a first trust ring of the first account, which is stored by the first server, comprises a first master key ciphertext and a first authentication parameter of the electronic equipment;
encrypting a master key in the trusted execution environment based on the changed screen locking code in the trusted execution environment of the electronic equipment to generate a first updated master key ciphertext of the electronic equipment;
generating a first updating authentication parameter of the electronic equipment based on the changed screen locking code;
generating signature data according to the first parameter;
and sending the signature data, the second master key ciphertext and the second authentication parameter to the first server, so that the first server replaces the first master key ciphertext in the trust ring data of the first trust ring with the first updated master key ciphertext and replaces the first authentication parameter with the first updated authentication parameter after the first server passes the identity verification of the electronic device based on the signature data.
2. The method of claim 1, wherein encrypting the master key in the trusted execution environment based on the changed lockscreen code to generate a first updated master key cryptogram for the electronic device comprises:
generating a first updated derivative key according to the changed screen locking code;
generating a second updated derivative key based on the first updated derivative key;
and encrypting the master key according to the second updated derivative key to obtain a first updated master key ciphertext of the electronic equipment.
3. The method of claim 1, wherein generating a first updated authentication parameter for the electronic device based on the altered screen locking code comprises:
generating a first updated derivative key according to the changed screen locking code;
generating a first updated shared value from the first updated derivative key;
and encrypting the first update shared value according to the HSM public key generated by the first server side to obtain the first update authentication parameter.
4. The method of claim 1, wherein generating signature data based on the first parameter comprises:
processing the first parameter and the first updating authentication parameter by using a preset Hash algorithm to obtain a first digital abstract;
and signing the first digital abstract by adopting a preset encryption algorithm to obtain signature data.
5. The method of claim 1, wherein before receiving the first parameter sent by the first server, the method further comprises:
recording a screen locking code change event and a screen locking code after change;
and sending a screen locking code change notification to the first server.
6. The method of claim 1, wherein in case of a screen locking code change of the electronic device, before receiving the first parameter sent by the first server, the method further comprises:
the electronic equipment serves as first electronic equipment and receives a first screen locking code of the first electronic equipment, which is input by a user, wherein the first electronic equipment logs in a first account;
generating a master key in a trusted execution environment of the first electronic device;
encrypting the master key based on the first screen locking code to generate a first master key ciphertext of the first electronic device;
generating a first authentication parameter based on the first screen locking code;
sending a ring creation request to a first server to enable the first server to create a first trust ring corresponding to the first account, and adding the first master key ciphertext and the first authentication parameter to trust ring data of the first trust ring. And the ring creation request carries the first master key ciphertext and the first authentication parameter.
7. The method of claim 1, wherein before receiving the first parameter sent by the first server in case of a screen locking code change of the electronic device, further comprising:
the electronic equipment serves as second electronic equipment and receives a second screen locking code of the second electronic equipment, which is input by a user, wherein the second electronic equipment logs in a first account;
when the second screen locking code passes verification, receiving a first screen locking code of first electronic equipment input by a user, wherein the first electronic equipment is equipment in ring equipment information of a first trust ring corresponding to the first account acquired from a first server;
when the identity verification of the first electronic equipment based on the first screen locking code passes, receiving a first master key ciphertext of the first electronic equipment, which is sent by the first server;
decrypting the first master key ciphertext based on the first screen locking code to obtain a master key;
encrypting the master key based on the second screen locking code to generate a second master key ciphertext of the second electronic device, and generating a second authentication parameter based on the second screen locking code;
sending a ring addition request to a first server to cause the first server to add the second master key ciphertext and a second authentication parameter to trust ring data of the first trust ring.
8. The method of claim 1, further comprising:
deriving a first service key based on the master key, and encrypting first service data by using the first service key to obtain a first service data ciphertext;
and sending the first service data ciphertext to a second server so that the second server stores the first service data ciphertext.
9. The method of claim 8, further comprising:
acquiring a second service data ciphertext from a second server;
deriving a first traffic key based on the master key;
and decrypting the second service data ciphertext by using the first service key to obtain second service data.
10. An electronic device comprising a trust ring module and a trust ring service module; wherein:
the trust ring service module is configured to:
receiving a first parameter sent by a first server under the condition that a screen locking code of electronic equipment is changed, wherein the electronic equipment logs in a first account, and trust ring data of a first trust ring of the first account, which is stored by the first server, comprises a first master key ciphertext and a first authentication parameter of the electronic equipment;
the trust ring module is configured to:
encrypting a master key in the trusted execution environment based on the changed screen locking code in the trusted execution environment of the electronic equipment to generate a first updated master key ciphertext of the electronic equipment;
the trust ring service module is further configured to:
generating a first updating authentication parameter of the electronic equipment based on the changed screen locking code;
generating signature data according to the first parameter;
and sending the signature data, the second master key ciphertext and the second authentication parameter to the first server, so that the first server replaces the first master key ciphertext in the trust ring data of the first trust ring with the first updated master key ciphertext and replaces the first authentication parameter with the first updated authentication parameter after the first server passes the identity verification of the electronic device based on the signature data.
11. The electronic device according to claim 10, wherein the trust ring module is configured to, when encrypting the master key in the trusted execution environment based on the changed lock screen code and generating a first updated master key ciphertext of the electronic device, specifically:
receiving a first updated derivative key sent by a trust ring module, wherein the first updated derivative key is generated by the trust ring module according to the changed screen locking code;
generating a second updated derivative key according to the first updated derivative key;
and encrypting the main key according to the second updated derivative key to obtain a first updated main key ciphertext of the electronic equipment.
12. The electronic device of claim 10, wherein when the trust ring service module generates the first updated authentication parameter of the electronic device based on the changed screen locking code, the trust ring service module is specifically configured to:
generating a first updated derivative key according to the changed screen locking code;
generating a first updated shared value from the first updated derivative key;
and encrypting the first update shared value according to the HSM public key generated by the first server side to obtain the first update authentication parameter.
13. The electronic device of claim 10, wherein when the trust ring service module generates signature data according to the first parameter, the trust ring service module is specifically configured to:
processing the first parameter and the first updating authentication parameter by using a preset Hash algorithm to obtain a first digital abstract;
and signing the first digital abstract by adopting a preset encryption algorithm to obtain signature data.
14. The electronic device of claim 10, wherein the trust ring service module is further configured to:
recording a screen locking code change event and a screen locking code after change;
and sending a screen locking code change notification to the first server.
15. The electronic device of claim 10, wherein the electronic device is configured as a first electronic device,
the trust ring service module is configured to:
receiving a first screen locking code of first electronic equipment input by a user, generating a first party key according to the first screen locking code, and sending the first party key to the trust ring module, wherein the first electronic equipment logs in a first account;
the trust ring module is configured to:
generating a master key in a trusted execution environment, encrypting the master key based on the first derived key, generating a first master key ciphertext of the first electronic device, and sending the first master key ciphertext to the trust ring service module;
the trust ring service module is further configured to:
generating a first authentication parameter based on the first derived key, sending a ring creation request to a first server to enable the first server to create a first trust ring corresponding to the first account, and adding the first master key ciphertext and the first authentication parameter to trust ring data of the first trust ring, wherein the ring creation request carries the first master key ciphertext and the first authentication parameter.
16. The electronic device of claim 10, wherein the electronic device acts as a second electronic device,
the trust ring service module is configured to:
receiving a second screen locking code of second electronic equipment input by a user, wherein the second electronic equipment logs in a first account;
when the second screen locking code passes verification, receiving a first screen locking code of first electronic equipment input by a user, wherein the first electronic equipment is in-loop equipment information of a first trust loop corresponding to the first account acquired from a first server;
when the identity verification of the first electronic equipment based on the first screen locking code passes, receiving a first master key ciphertext of the first electronic equipment, which is sent by the first server;
sending the first master key ciphertext to the trust ring module;
the trust ring module is configured to:
decrypting the first master key ciphertext based on the first screen locking code to obtain a master key;
encrypting the master key based on the second screen locking code to generate a second master key ciphertext of the second electronic device;
sending the second master key ciphertext to the trust ring service module;
the trust ring service module is further configured to:
generating a second authentication parameter based on the second screen locking code;
sending a ring addition request to a first server to cause the first server to add the second master key ciphertext and a second authentication parameter to trust ring data of the first trust ring.
17. The electronic device of claim 10, further comprising: the system comprises a service data synchronization service module, a service data storage service module and a key management module;
the trust ring service module is further configured to:
deriving a first traffic key based on the master key,
the service data storage service module is used for:
sending the first service data to the key management module;
the key management module is configured to:
reading the first service key from the trust ring module, and encrypting the first service data by using the first service key to obtain a first service data ciphertext; sending the first business data cipher text to the business data storage service module;
the service data storage service module is further configured to:
and sending the first service data ciphertext to a second server through the service data synchronization service module so that the second server stores the first service data ciphertext.
18. The electronic device of claim 17,
the service data synchronization service module is further configured to:
acquiring a second service data ciphertext from the second server, and storing the second service data ciphertext to the service data storage service module;
the service data storage service module is further configured to:
sending second service data to the key management module;
the key management module is further configured to:
and reading the first service key from the trust ring module, decrypting the second service data by using the first service key to obtain second service data, and storing the second service data into the service data storage service module.
19. A computer-readable storage medium, characterized by comprising a computer program which, when run on an electronic device, causes the electronic device to perform the data protection method according to any one of claims 1-9.
CN202111399157.2A 2021-11-19 2021-11-19 Data protection method and electronic equipment Active CN115037450B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111399157.2A CN115037450B (en) 2021-11-19 2021-11-19 Data protection method and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111399157.2A CN115037450B (en) 2021-11-19 2021-11-19 Data protection method and electronic equipment

Publications (2)

Publication Number Publication Date
CN115037450A true CN115037450A (en) 2022-09-09
CN115037450B CN115037450B (en) 2023-04-14

Family

ID=83117750

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111399157.2A Active CN115037450B (en) 2021-11-19 2021-11-19 Data protection method and electronic equipment

Country Status (1)

Country Link
CN (1) CN115037450B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016192715A (en) * 2015-03-31 2016-11-10 株式会社東芝 Encryption key management system and encryption key management method
CN106571915A (en) * 2016-11-15 2017-04-19 中国银联股份有限公司 Terminal master key setting method and apparatus
CN108134789A (en) * 2017-12-21 2018-06-08 北京深思数盾科技股份有限公司 The method and Cloud Server of data synchronization between devices are carried out by cloud

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016192715A (en) * 2015-03-31 2016-11-10 株式会社東芝 Encryption key management system and encryption key management method
CN106571915A (en) * 2016-11-15 2017-04-19 中国银联股份有限公司 Terminal master key setting method and apparatus
CN108134789A (en) * 2017-12-21 2018-06-08 北京深思数盾科技股份有限公司 The method and Cloud Server of data synchronization between devices are carried out by cloud

Also Published As

Publication number Publication date
CN115037450B (en) 2023-04-14

Similar Documents

Publication Publication Date Title
US11297055B2 (en) Multifactor contextual authentication and entropy from device or device input or gesture authentication
US10826882B2 (en) Network-based key distribution system, method, and apparatus
EP3748900A1 (en) System access using a mobile device
CN107251035B (en) Account recovery protocol
US11233647B1 (en) Digital identity authentication system
US10432600B2 (en) Network-based key distribution system, method, and apparatus
US11831753B2 (en) Secure distributed key management system
KR20150052261A (en) Method and system for verifying an access request
CN108605034A (en) Radio firmware updates
JP2017152880A (en) Authentication system, key processing coordination method, and key processing coordination program
US9323911B1 (en) Verifying requests to remove applications from a device
US9443069B1 (en) Verification platform having interface adapted for communication with verification agent
CN115037451B (en) Data protection method and electronic equipment
CN115037453B (en) Data protection method and system and electronic equipment
CN115021894B (en) Data protection method, system and electronic equipment
CN115037450B (en) Data protection method and electronic equipment
CN115037455B (en) Data protection method and system and electronic equipment
CN115021895B (en) Data protection method and system and electronic equipment
CN115037454B (en) Data protection method and electronic equipment
CN115037456B (en) Data protection method, system and electronic equipment
CN115037452B (en) Data protection method, system and electronic equipment
Culnane et al. Formalising Application-Driven Authentication & Access-Control based on Users’ Companion Devices
CN114490552A (en) Data transmission method and device and electronic equipment
Smelt et al. IRMA Verified Assurer

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant