WO2022252845A1 - 一种用户数据管理方法以及相关设备 - Google Patents

一种用户数据管理方法以及相关设备 Download PDF

Info

Publication number
WO2022252845A1
WO2022252845A1 PCT/CN2022/086983 CN2022086983W WO2022252845A1 WO 2022252845 A1 WO2022252845 A1 WO 2022252845A1 CN 2022086983 W CN2022086983 W CN 2022086983W WO 2022252845 A1 WO2022252845 A1 WO 2022252845A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
request
storage device
data storage
access
Prior art date
Application number
PCT/CN2022/086983
Other languages
English (en)
French (fr)
Inventor
严学强
赵明宇
吴建军
颜敏
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2022252845A1 publication Critical patent/WO2022252845A1/zh
Priority to US18/514,095 priority Critical patent/US20240086562A1/en

Links

Images

Classifications

    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • 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
    • 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
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures

Definitions

  • the embodiments of the present application relate to the field of data processing, and in particular, to a user data management method and related equipment.
  • User data management is one of the core functions of a mobile communication network. Both the provision of user services and the normal operation of the network depend on user data management entities and related processes.
  • the user data management entity of the mobile network stores user and service subscription related data, key information, etc., and is the key to realize user authentication, authorization, and access control.
  • each user has a lot of information, such as subscription information, secret key information and business information, etc., and these user information are all in a centralized single-point user data management device.
  • the user data management device is connected to other control panel network entities or application servers to provide services such as data access and access.
  • user information is managed by User Data Management (UDM), which manages network user data in a single element, and it can be paired with a user data repository, which stores user information
  • UDM is located in the control plane and is used to implement communication between the user plane and the control plane.
  • the encryption methods adopted for the data transfer between the user data management device and the user data repository are usually asymmetric encryption and symmetric key encryption.
  • Embodiments of the present application provide a user data management method and related equipment, which are used to improve the security of user data.
  • the first aspect of the embodiment of the present application provides a user data management method, which is applied to the user data management system to manage user data.
  • the system includes a data request device, a data storage device and a block chain platform.
  • the data request device needs When accessing the data storage device, the user data management system performs corresponding operations.
  • the method includes: the data requesting device sends a first request to the blockchain platform, and the first request indicates that the data requesting device needs to access the data storage device.
  • the first request includes: The signature information of the data requesting device, the type of access, and the private key signature of the operator; the data requesting device receives the first permission information sent by the blockchain platform, and the first permission information indicates whether the data requesting device has the right to access the data storage device, the permission It is related to the signature information of the data requesting device, the type of access, and the operator's public key.
  • the operator's public key corresponds uniquely to the operator's private key; if the first permission information indicates that the data requesting device has the right to access the data storage device, the data requesting The device sends a second request to the data storage device, where the second request includes the address to be accessed and the operator's private key signature.
  • the data requesting device accesses the data storage device, it needs to obtain the blockchain platform to confirm that the data requesting device has corresponding permissions. Since the blockchain platform has the characteristics of decentralization and non-tampering, Therefore, the blockchain platform with authentication and authorization functions has no risk of single point of failure, and relatively little data is lost when it is attacked by distributed denial of service, so user data has higher security. On the other hand, the information transfer between the data requesting device, the data storage device and the blockchain platform is signed by the operator's key, which ensures the security of the information.
  • the type of access includes writing data and reading data. If the type of access is writing data, the first request also includes the address of the access and the user public key; if the access The type of is to read data, then the first permission information includes the address of the access and the user public key.
  • the method further includes: the data requesting device receives confirmation information sent by the data storage device, and the confirmation information indicates that the data storage The device has already executed the task corresponding to the second request.
  • the data requesting device can know whether the data storage device has executed the task corresponding to the second request, so that a corresponding response can be made accordingly, which increases the information acquisition of the data requesting device.
  • the method before the data requesting device sends the first request to the blockchain platform, the method further includes: the data requesting device receives a third request sent by the user equipment, and the third request indicates that the data The requesting device sends the first request to the blockchain platform, and the third request includes the user public key.
  • the user public key of the user equipment is signed by the operator's key, which ensures information security.
  • the signature information of the data requesting device includes signature information of the user equipment.
  • the first permission information includes the user public key
  • the method further includes: the data requesting device The private key determines the symmetric encryption key.
  • the confirmation information includes encrypted user data
  • the method further includes: the data requesting device decrypts the encrypted user data according to a symmetric encryption key.
  • the second aspect of the embodiment of the present application provides a user data management method.
  • the method is applied to a user data management system to manage user data.
  • the system includes a data request device, a data storage device and a block chain platform.
  • the data request device needs When accessing the data storage device, the user data management system performs corresponding operations.
  • the method includes: the data storage device receives the second request from the data requesting device, and the second request includes the address to be accessed and the private key signature of the operator;
  • the blockchain platform sends an access verification request, and the access verification request instructs the data requesting device to send a second request to the data storage device;
  • the data storage device receives the second permission information sent by the blockchain platform, and the second permission information indicates whether the data storage device can Execute the task corresponding to the second request; if the second permission information indicates that the data storage device can perform the task corresponding to the second request, the data storage device executes the corresponding task according to the second request.
  • the blockchain platform has the characteristics of decentralization and non-tampering, Therefore, the blockchain platform with authentication and authorization functions has no risk of single point of failure, and relatively little data is lost when it is attacked by the network, so user data has higher security.
  • the first request includes the type of access, which further refines the access information, so that the blockchain platform can more accurately determine the authority corresponding to the first request; at the same time, since only the relevant information of user data is stored in In the blockchain platform, user data is stored in the data storage device, thereby avoiding the "blockchain expansion problem", “privacy problem” and the “right to forget problem” caused by the data cannot be tampered with.
  • the type of access is user data storage
  • the data storage device performs corresponding tasks according to the second request, including: the data storage device encrypts user data according to a symmetric encryption key; The device stores the encrypted user data to the accessed address.
  • the method further includes: the data storage device sends response information to the blockchain platform, and the response information indicates that the data storage device has Execute the task corresponding to the second request.
  • the method further includes: the data storage device sends confirmation information to the data requesting device, and the confirmation information indicates that the data storage device has executed the task.
  • the task corresponding to the second request after the data storage device executes the corresponding task according to the second request, the method further includes: the data storage device sends confirmation information to the data requesting device, and the confirmation information indicates that the data storage device has executed the task. The task corresponding to the second request.
  • the confirmation information includes encrypted user data.
  • the third aspect of the embodiment of the present application provides a user data management method, which is applied to a user data management system to manage user data.
  • the system includes a data request device, a data storage device and a block chain platform.
  • the data request device needs When accessing the data storage device, the user data management system performs corresponding operations.
  • the method includes: the block chain platform receives the first request sent by the data requesting device, the first request indicates that the data requesting device needs to access the data storage device, and the first request Including the signature information of the data requesting device, the type of access, and the operator's private key signature; the blockchain platform determines whether the data requesting device can access the data storage device based on the signature information of the data requesting device, the type of access, and the operator's private key signature; The blockchain platform sends the first permission information to the data requesting device, and the first permission information indicates whether the data requesting device has the authority to access the data storage device; the blockchain platform receives the access verification request sent by the data storage device, and the access verification request indicates that the data The requesting device sends a second request to the data storage device; if the block chain platform determines that the data requesting device can access the data storage device, the block chain platform sends the second permission information to the data storage device, and the second permission information indicates that the data storage device can Execute the task corresponding to the second request.
  • the data requesting device Before the data requesting device accesses the data storage device, it needs to obtain the blockchain platform to confirm that the data requesting device has the corresponding authority. Since the blockchain platform has the characteristics of decentralization and non-tampering, it has authentication and authorization functions. The blockchain platform has no risk of single point of failure, and relatively little data is lost when it is attacked by the network, so user data has higher security.
  • the first request includes the type of access, which further refines the access information, so that the blockchain platform can more accurately determine the authority corresponding to the first request.
  • the method further includes: the blockchain platform receives the response information sent by the data storage device, and the response information indicates that the data The storage device has executed the task corresponding to the second request; the blockchain platform records the data storage device has executed the task corresponding to the second request into the distributed ledger according to the response message.
  • the first permission information includes the address of the access.
  • the fourth aspect of the embodiment of the present application provides a user data management method, which is applied to a user data management system to manage user data.
  • the system includes a data request device, a data storage device and a block chain platform.
  • the user data management system performs corresponding operations.
  • the method includes: the blockchain platform receives the first key update request sent by the data requesting device, and the first key update request indicates that the data requesting device needs data storage.
  • the device updates the first user data related to the user's first key to the second user data related to the user's second key; the key update request includes the signature information of the data requesting device, the type of access, and the operator's private key.
  • Encrypted user's second public key and user's root private key signature the blockchain platform determines whether the data requesting device has the ability to let the data storage device update the first user's data to the second user's Data authority; if the blockchain platform determines that the data requesting device has authority, the blockchain platform sends a second key update request to the data storage device, and the second key update request instructs the data storage device to send the second key update request to the blockchain platform.
  • the block chain platform receives the first response message sent by the data storage device, the first response message includes the first user data; the block chain platform updates the first user data encrypted by the first symmetric encryption key to be encrypted by the second The second user data encrypted by two symmetric encryption keys, the first symmetric encryption key is related to the user’s first key, and the second symmetric encryption key is related to the user’s second key; the blockchain platform sends the data to the data storage device A third request, the third request includes the second user data, and the third request instructs the data storage device to store the second user data.
  • the method further includes: the blockchain platform receives the second response message sent by the data storage device, and the second The response message indicates that the data storage device has stored the second user data; the blockchain platform records the second user data stored in the data storage device into the distributed ledger.
  • the method further includes: the block chain platform sends a confirmation message to the data requesting device, and the confirmation message indicates that the block chain platform has updated the first user data to the second user data .
  • the fifth aspect of the embodiment of the present application provides a user data management method, which is applied to a user data management system to manage user data.
  • the system includes a data request device, a data storage device and a block chain platform.
  • the data request device needs When accessing the data storage device, the user data management system performs corresponding operations.
  • the method includes: the method includes: the data requesting device sends a first key update request to the blockchain platform, and the first key update request indicates that the data requesting device needs to The data storage device updates the first user data encrypted by the user's first key to the second user data encrypted by the user's second key; the first key update request includes the signature information of the data requesting device, the type of access, and the The user's new public key encrypted by the merchant's private key and the user's root private key are signed; the data requesting device receives the confirmation message sent by the blockchain platform, and the confirmation message indicates that the data storage device has updated the first user data to the second user data.
  • a sixth aspect of the present application provides a data requesting device, where the data requesting device has a function of implementing the method of the above-mentioned first aspect or any possible implementation manner of the first aspect.
  • This function may be implemented by hardware, or may be implemented by executing corresponding software on the hardware.
  • the hardware or software includes one or more modules corresponding to the above functions, for example: a first sending module.
  • a seventh aspect of the present application provides a data storage device, where the data storage device has a function of implementing the method of the second aspect or any possible implementation manner of the second aspect.
  • This function may be implemented by hardware, or may be implemented by executing corresponding software on the hardware.
  • the hardware or software includes one or more modules corresponding to the above functions, for example: a first receiving module.
  • the eighth aspect of the present application provides a block chain platform device, the block chain platform device has the function of realizing the method of the above third aspect or any possible implementation manner of the third aspect.
  • This function may be implemented by hardware, or may be implemented by executing corresponding software on the hardware.
  • the hardware or software includes one or more modules corresponding to the above functions, for example: a first receiving module.
  • the ninth aspect of the present application provides a block chain platform device, which has the function of implementing the method of the fourth aspect or any possible implementation manner of the fourth aspect.
  • This function can be realized by hardware, and can also be realized by executing corresponding software by hardware.
  • the hardware or software includes one or more modules corresponding to the above functions, for example: a first receiving module.
  • a tenth aspect of the present application provides a data requesting device, where the data requesting device has a function of implementing the fifth aspect or the method of any possible implementation manner of the fifth aspect.
  • This function may be implemented by hardware, or may be implemented by executing corresponding software on the hardware.
  • the hardware or software includes one or more modules corresponding to the above functions, for example: a first sending module.
  • the eleventh aspect of the present application provides a data requesting device, the data requesting device includes at least one processor, memory, input/output (input/output, I/O) interface and stored in the memory and can run on the processor
  • the computer executes the instructions, and when the computer executes the instructions are executed by the processor, the processor executes the method according to the above first aspect or any one of the possible implementation manners of the first aspect.
  • the twelfth aspect of the present application provides a data storage device, the data storage device includes at least one processor, a memory, an input/output (input/output, I/O) interface, and an The computer-executable instructions, when the computer-executable instructions are executed by the processor, the processor executes the method according to the above-mentioned second aspect or any possible implementation manner of the second aspect.
  • the thirteenth aspect of the present application provides a block chain platform device
  • the data storage device includes at least one processor, memory, input/output (input/output, I/O) interface and stored in the memory and can be stored in the processor
  • the computer running on the computer executes the instructions, and when the computer executes the instructions are executed by the processor, the processor executes the method according to the above third aspect or any possible implementation manner of the third aspect.
  • the fourteenth aspect of the present application provides a block chain platform device
  • the data storage device includes at least one processor, memory, input/output (input/output, I/O) interface and stored in the memory and can be stored in the processor
  • the computer running on the computer executes the instructions, and when the computer executes the instructions are executed by the processor, the processor executes the method according to the fourth aspect or any possible implementation manner of the fourth aspect.
  • the fifteenth aspect of the present application provides a data requesting device, the data requesting device includes at least one processor, memory, input/output (input/output, I/O) interface and stored in the memory and can run on the processor computer-executable instructions, and when the computer-executable instructions are executed by the processor, the processor executes the method according to the fifth aspect or any possible implementation manner of the fifth aspect.
  • the data requesting device includes at least one processor, memory, input/output (input/output, I/O) interface and stored in the memory and can run on the processor computer-executable instructions, and when the computer-executable instructions are executed by the processor, the processor executes the method according to the fifth aspect or any possible implementation manner of the fifth aspect.
  • the sixteenth aspect of the present application provides a computer-readable storage medium that stores one or more computer-executable instructions.
  • the processor executes any one of the above-mentioned first aspect or the first aspect. method of implementation.
  • the seventeenth aspect of the present application provides a computer-readable storage medium that stores one or more computer-executable instructions.
  • the processor executes any one of the above-mentioned second aspect or second aspect. method of implementation.
  • the eighteenth aspect of the present application provides a computer-readable storage medium that stores one or more computer-executable instructions.
  • the processor executes any of the possibilities of the third aspect or the third aspect. method of implementation.
  • the nineteenth aspect of the present application provides a computer-readable storage medium that stores one or more computer-executable instructions.
  • the processor executes any one of the possibilities of the fourth aspect or the fourth aspect. method of implementation.
  • the twentieth aspect of the present application provides a computer-readable storage medium that stores one or more computer-executable instructions.
  • the processor executes any one of the fifth aspect or the fifth aspect. method of implementation.
  • the twenty-first aspect of the present application provides a computer program product that stores one or more computer-executable instructions.
  • the processor executes any one of the above-mentioned first aspect or the first aspect. method of implementation.
  • the twenty-second aspect of the present application provides a computer program product that stores one or more computer-executable instructions.
  • the processor executes any one of the above-mentioned second aspect or the second aspect. method of implementation.
  • the twenty-third aspect of the present application provides a computer program product that stores one or more computer-executable instructions.
  • the processor executes any one of the possible functions of the third aspect or the third aspect. method of implementation.
  • the twenty-fourth aspect of the present application provides a computer program product that stores one or more computer-executable instructions.
  • the processor executes any one of the possible functions of the fourth aspect or the fourth aspect. method of implementation.
  • the twenty-fifth aspect of the present application provides a computer program product that stores one or more computer-executable instructions.
  • the processor executes any one of the possible tasks of the fifth aspect or the fifth aspect. method of implementation.
  • a twenty-sixth aspect of the present application provides a chip system, the chip system includes at least one processor, and the at least one processor is configured to implement the functions involved in the above-mentioned first aspect or any possible implementation manner of the first aspect.
  • the system-on-a-chip may also include a memory, which is used to store necessary program instructions and data of the device for processing the artificial intelligence model.
  • the system-on-a-chip may consist of chips, or may include chips and other discrete devices.
  • a twenty-seventh aspect of the present application provides a chip system, the chip system includes at least one processor, and the at least one processor is configured to implement the functions involved in the above second aspect or any possible implementation manner of the second aspect.
  • the system-on-a-chip may further include a memory, which is used to store necessary program instructions and data of the device for data processing based on the artificial intelligence model.
  • the system-on-a-chip may consist of chips, or may include chips and other discrete devices.
  • a twenty-eighth aspect of the present application provides a chip system, the chip system includes at least one processor, and the at least one processor is configured to implement the functions involved in the above third aspect or any possible implementation manner of the third aspect.
  • the system-on-a-chip may further include a memory, which is used to store necessary program instructions and data of the device for data processing based on the artificial intelligence model.
  • the system-on-a-chip may consist of chips, or may include chips and other discrete devices.
  • the twenty-ninth aspect of the present application provides a chip system, the chip system includes at least one processor, and the at least one processor is configured to implement the functions involved in the above third aspect or any possible implementation manner of the third aspect.
  • the system-on-a-chip may further include a memory, which is used to store necessary program instructions and data of the device for data processing based on the artificial intelligence model.
  • the system-on-a-chip may consist of chips, or may include chips and other discrete devices.
  • the thirtieth aspect of the present application provides a chip system, the chip system includes at least one processor, and the at least one processor is configured to implement the functions involved in the above-mentioned first aspect or any possible implementation manner of the first aspect.
  • the system-on-a-chip may also include a memory, which is used to store necessary program instructions and data of the device for processing the artificial intelligence model.
  • the system-on-a-chip may consist of chips, or may include chips and other discrete devices.
  • the embodiment of the present application has the following advantages: before the data requesting device accesses the data storage device, it needs to obtain the block chain platform to confirm that the data requesting device has the corresponding authority. Therefore, the blockchain platform with authentication and authorization functions has no risk of single point of failure, and relatively little data is lost when it is attacked by distributed denial of service, so user data has higher security. safety. On the other hand, the information transfer between the data requesting device, the data storage device and the blockchain platform is signed by the operator's key, which ensures the security of the information.
  • FIG. 1 is a schematic diagram of a network architecture of a user data architecture of a 2G/3G/4G/IMS network;
  • FIG. 2 is a schematic diagram of a network architecture of a user data architecture of a 5G network
  • FIG. 3 is a schematic diagram of a scenario of a user data management method in an embodiment of the present application.
  • FIG. 4 is a schematic flow diagram of a method for managing user data in an embodiment of the present application.
  • FIG. 5 is another schematic flow diagram of the user data management method in the embodiment of the present application.
  • FIG. 6 is another schematic flowchart of the user data management method in the embodiment of the present application.
  • FIG. 7 is a schematic structural diagram of a data requesting device in an embodiment of the present application.
  • FIG. 8 is a schematic structural diagram of a data storage device in an embodiment of the present application.
  • FIG. 9 is a schematic structural diagram of a block chain platform device in an embodiment of the present application.
  • Fig. 10 is another schematic structural diagram of the blockchain platform device in the embodiment of the present application.
  • FIG. 11 is another schematic structural diagram of the data requesting device in the embodiment of the present application.
  • FIG. 12 is another schematic structural diagram of the data requesting device in the embodiment of the present application.
  • FIG. 13 is another schematic structural diagram of a data storage device in an embodiment of the present application.
  • Fig. 14 is another schematic structural diagram of the block chain platform device in the embodiment of the present application.
  • Fig. 15 is another schematic structural diagram of the block chain platform device in the embodiment of the present application.
  • FIG. 16 is another schematic structural diagram of the data requesting device in the embodiment of the present application.
  • Fig. 17 is a schematic structural diagram of the user data management system in the embodiment of the present application.
  • FIG. 18 is another schematic structural diagram of the user data management system in the embodiment of the present application.
  • Embodiments of the present application provide a user data management method and related equipment, which are used to improve the security of user data.
  • User data management is one of the core functions of a mobile communication network. Both the provision of user services and the normal operation of the network depend on user data management entities and related processes.
  • the user data management entity of the mobile network stores user and service registration-related data, key information, etc., and is the key to realizing user authentication, authorization, and access control.
  • each user has a lot of information, such as subscription information, key information and business information, etc., and these user information are all stored together in a centralized single-point user data management device.
  • the user data management device is connected to other control panel network entities or application servers to provide services such as data access and access.
  • the subscriber data management entities in 2G, 3G, 4G and Internet Protocol Multimedia System (IP Multimedia Subsystem, IMS) architectures are Home Location Register (Home Location Register, HLR) and Home Subscriber Server ( Home Subscriber Server, HSS), these entities interface with other control plane network functional entities or application servers to provide access and access services.
  • IMS Internet Protocol Multimedia Subsystem
  • UDM Unified Data Management
  • the data repository stores user information
  • UDM is on the control plane.
  • the embodiment of the present application provides a user data management method, the method is applied to the user data management system, the user data management system in the present application includes a data request device, a block chain platform and a data storage device,
  • the data request device is a device that needs to perform corresponding operations on the user's data. It can be a data subject (Data Subject, DS), a data control device (Data Controller, DC) and a data processing device (Data Processor, DP). It can be user equipment, access network equipment, and core network elements.
  • the user equipment can be a notebook computer, tablet computer, computer, LTE assistance terminal, NR assistance terminal, assistant, semi-active tag, active tag, wireless relay station , LTE mobile phone and NR mobile phone and other terminal equipment;
  • the access network equipment can be macro base station, pole base station, long term evolution (long term evolution, LTE) base station, evolved (evolved NodeB, eNB) base station, wireless relay (Relay) Station, Femto base station, Pico base station, and next generation (next generation NodeB, gNB) base station and other access network equipment;
  • the core network element can be a core network element such as an identity verification server, a session management server, etc.
  • the blockchain platform is used to store data operations, policy management transactions, and data pointers, which point to user data stored in data storage devices; specifically, the blockchain platform realizes decentralization and access authentication on the one hand. , authentication and authorization, and access control logic. On the other hand, all data operations and policy management records are recorded on an immutable distributed ledger.
  • the access records include storage addresses and access policies for personal user data.
  • the centralized trust model is eliminated, that is, the blockchain platform assumes the role of authentication and authorization server, and aims at All operations of the data requesting device are authenticated and authorized by the blockchain platform; and the smart contract deployed on the blockchain undertakes automated access control management; and the blockchain undertakes a non-tamperable log system to record any Access to off-chain data.
  • the data storage device is used to store the user's personal data, and the user's personal data is not stored on the blockchain platform, thereby solving the "blockchain expansion problem", “privacy problem” and data immutable belt of the blockchain platform.
  • the user data management system in the embodiment of this application can be divided into user-side equipment and network service provider-side equipment, that is, operator-side equipment.
  • the user-side equipment is configured with a user root key pair, user public-private key pair and the operator’s public key, the user’s root key pair includes the user’s root public key and the user’s root private key, the user’s public-private key pair includes the user’s public key and the user’s private key; the device on the operator’s side
  • the operator's public-private key pair and the user's public key are configured, and the operator's public-private key pair includes the operator's public key and the operator's private key.
  • the user-side equipment includes user equipment in user request equipment, and the operator-side equipment includes core network equipment, access network equipment, blockchain platforms, and data storage equipment in data request equipment.
  • the device that sends the information signs the information that needs to be transmitted or stored with the private key of the operator, and the device that receives the message can, after receiving the message, The above signature is verified according to the operator's public key.
  • the user-side device when the user-side device transmits information to the operator-side device, the user-side device will use the user's private key to sign the information to be transmitted or stored, and the operator-side device that receives the message can The public key verifies the above signature; correspondingly, when the operator-side device transmits information to the user-side device, the operator-side device will use the operator's private key to sign the information to be transmitted or stored, and receive The user-side device of the message can verify the above-mentioned signature according to the operator's public key.
  • the operator-side device and the user-side device in the embodiment of the present application can perform data signature authentication according to the above method every time data is transmitted, or do not perform data signature authentication, and only transmit the information that needs to be transmitted or stored. Specifically, there is no limitation here.
  • a flow of the user data management method in the embodiment of the present application includes:
  • the user equipment sends a third request to the data requesting device.
  • the user equipment When the user equipment needs the data storage device to perform a corresponding task, the user equipment sends a third request to the data requesting device, and the third request instructs the data requesting device to send the first request to the block chain platform, and the third request includes the user Signature information of the device and user public key.
  • the third request in the embodiment of the present application may also include user equipment information, data pointer, that is, the data address of the data that the user equipment wants to access in the data storage device, the type of data access, that is, the policy of data access, and the root public key of the user And the user's public key, the user's root public key is the user's only unchangeable key.
  • the user equipment sends a registration request to the data requesting equipment such as the CRM equipment and the BOSS, and the registration request is the third request.
  • the user equipment also calculates a first symmetric encryption key, and the first symmetric encryption key is related to the user private key and the operator's public key.
  • the data requesting device sends a first request to the blockchain platform.
  • the data requesting device sends a first request to the blockchain platform, the first request indicates that the data requesting device needs to access the data storage device, the first request includes the signature information of the data requesting device, the type of access and the operator's private key signature, the The signature information of the data requesting device is used by the blockchain platform to determine the authority corresponding to the first request.
  • the type of access can be data writing, data deletion, and data reading.
  • the type of access in this embodiment of the application can also be other types, such as data modification, etc. Specifically, There is no limit.
  • the first request includes the signature information of the data requesting device, the operator's private key signature, and the type of access.
  • the first request in the embodiment of the present application may include user equipment information, or user
  • the device needs information about the tasks performed by the data storage device, and may also include data pointers, that is, the data address of the data that the user device wants to access in the data storage device, the type of data access, that is, the data access policy, the user's root public key and The user's public key; for example, when the type of access is data writing, the first request also includes the address of the access, which can be a data pointer; for example, if the type of access is writing data, the first request It also includes the accessed address and user public key, which are not limited here.
  • the signature information of the data requesting device may include the signature information of the data requesting device, may also include the signature information of the user device, may also include the electronic signature information of the data requesting device and the signature information of the user device, or It can be other information that can indicate the data requesting device or user equipment, which is not limited here; in this embodiment of the application, the signature information can be an electronic signature, or identification information such as ID, which is not limited here.
  • the data requesting device is a device other than user equipment, such as a core network element, an access network device, and a network functional entity.
  • the data requesting device can also be a user such as a terminal device, if the data requesting device is a user device, step 401 is not performed, and the user device, as a data requesting device, directly sends the first request to the blockchain platform, which is not limited here.
  • the data access is initiated by the user equipment.
  • it can also be initiated by a core network element, an access network device, or a network functional entity. If the core network element, access network If it is initiated by a device or a network function entity, step 401 is not performed, and the details are not limited here.
  • the CRM device and BOSS as a data request device send a first request to the blockchain platform to initiate a registration transaction.
  • the first request includes the user The identification of the device, the information of the user equipment, the data pointer, the data access policy, the root public key of the user equipment and the public key of the user.
  • the first request that is, the registration transaction, is signed by the private key of the operator.
  • the network function device when a network function device needs to access user data, the network function device as a data request device sends a first request to the blockchain platform, and the first request Indicating that the network function device needs to access user data in the data storage device, the first request includes relevant information of the user, and the first request is signed by the private key of the operator.
  • the blockchain platform sends the first permission information to the data requesting device.
  • the blockchain platform determines whether the data requesting device can access the data storage device, and then the blockchain platform sends first permission information to the data requesting device, the first permission information indicating whether the data requesting device can access the data storage device.
  • the first permission information when the type of access is to read data, the first permission information also includes the address of the access, and the address of the access can be a data pointer; if the type of access is to read data, the first permission information A license information includes access address and user public key.
  • the blockchain platform determines the first request according to the signature information of the data requesting device included in the first request, the signature of the operator's private key, and the type of access. authority, the blockchain platform can use the pre-configured operator’s public key to verify whether the first request is signed by the operator’s private key, because the digital signature information has unique authenticity, that is, the digital signature can uniquely determine the Data request device, the digital signature is used by the blockchain platform to determine whether the request is initiated by the user device, that is, to determine the authenticity of the first request, and to determine whether the first request is known and confirmed by the user device , so that the authority corresponding to the first request can be determined, that is, it can be determined whether the data requesting device sending the first request has the authority to access the data storage device and make the data storage device perform corresponding tasks.
  • the blockchain platform After the blockchain determines that the data requesting device can access the data storage device, that is, the first request has corresponding permissions, the blockchain platform sends the first permission information to the data requesting device, and the first permission information indicates that the data request The device can access the data storage device, that is, the first request has the authority corresponding to the corresponding task.
  • the block chain platform when the network function device needs to access user data, after the block chain platform receives the first request, the block chain platform will query the latest transaction information of the user device in the distributed ledger, Obtain the user's public key from the transaction information; then the blockchain platform determines the authority of the first request according to the signature information of the data requesting device included in the first request, the signature of the operator's private key and the type of access, and then sends the data to the The requesting device sends a first request message. If the first permission information indicates that the data requesting device has the right to access the data storage device, the first permission information includes a data access address and a user public key.
  • the data requesting device sends a second request to the data storage device.
  • the data requesting device After the data requesting device receives the first permission information, if the first permission information indicates that the data requesting device has the authority to access the data storage device, the data requesting device knows that the blockchain platform has determined that the data requesting device can access the data storage device Afterwards, the data requesting device sends a second request to the data storage device, and the second request instructs the data storage device to perform a task corresponding to the second request.
  • the second request may include user equipment identifier, user equipment information, user information, data pointer, data access type, user public key and operator private key signature.
  • the data storage device confirms a symmetric encryption key according to the user public key, and the symmetric encryption key is related to the user public key and the operator private key.
  • the data storage device sends an access verification request to the blockchain platform.
  • the data storage device After the data storage device receives the second request sent by the data requesting device, since the second request instructs the data storage device to perform the corresponding task, the data storage device needs to confirm whether the second request has the authority corresponding to the task, Then the data storage device sends an access verification request to the blockchain platform, and the access verification request indicates that the data requesting device has sent a second request to the data storage device, and the access verification request includes the relevant information of the second request, so that the block The chain platform confirms the permission information of the second request according to the relevant information of the second request.
  • the blockchain platform sends the second permission information to the data storage device.
  • the blockchain platform After the blockchain platform receives the access verification request sent by the data storage device, the blockchain platform confirms whether the second request has the corresponding authority according to the relevant information of the second request in the access verification request, that is, whether the data storage device can After accessing the data storage device, the blockchain platform sends second permission information to the data storage device, and the second permission information can indicate whether the data storage device can perform the task corresponding to the second request.
  • the data storage device receives the second permission information and executes a task corresponding to the second request.
  • the data storage device receives the second permission information sent by the blockchain platform, the second permission information indicates whether the data storage device can perform the task corresponding to the second request, that is, the user device corresponding to the signature information contained in the second request Whether the authority it has can enable the data storage device to execute the task corresponding to the second request.
  • the data storage device can use the pre-configured operator public key to check whether the second request is signed by the operator's private key. If the second permission information indicates that the data storage device can perform the task corresponding to the second request, the data storage device receives the After receiving the second permission information, the task corresponding to the second request can be executed.
  • the data storage device when the user equipment needs to register a service, after the data storage device receives the second permission information, if the second permission information indicates that the data storage device can perform the task, and the signature of the operator's private key in the second request passes the verification of the data storage device based on the operator's public key, then the data storage device encrypts the user data according to the symmetric encryption key and saves it to the address corresponding to the data pointer , the symmetric encryption key is related to the user public key and the operator's private key, for example, the symmetric encryption key may be the product of the user's public key and the operator's private key.
  • the data storage device sends response information to the blockchain platform.
  • the data storage device After the data storage device completes the task corresponding to the second request, it sends a response message to the blockchain platform, and the response message indicates that the data storage device has completed the task corresponding to the second request.
  • the response information includes relevant information of the task, such as result information of the task, identification information of the user who initiates the task, execution strategy of the task, and relevant information of the data storage device executing the task.
  • the blockchain platform receives the response information and records it in the distributed ledger.
  • the blockchain platform receives the response information sent by the data storage device, and the response information indicates that the data storage device has completed the task corresponding to the second request.
  • the response information includes the relevant information of the task, such as the result information of the task, The identification information of the user who initiated the task, the execution policy of the task, and the relevant information of the data storage device that executes the task; then the blockchain platform can broadcast the relevant information of the task to each node of the blockchain platform, in all After the nodes reach a consensus, the blockchain platform records the relevant information of the task in the non-tamperable distributed ledger of the blockchain platform.
  • Each node of the blockchain platform records complete information about the task, and the storage of each node is independent and of the same status.
  • the data storage device sends confirmation information to the data requesting device.
  • the data storage device sends a confirmation message to the data requesting device, where the confirmation message indicates that the data storage device has completed the task corresponding to the second request.
  • the confirmation message includes encrypted user data
  • the data requesting device can pair The encrypted user data is decrypted, thereby obtaining user data.
  • the data storage device may perform step 408 first, and then step 410.
  • step 410 may be performed first, and then step 408 may be performed, or both steps may be performed at the same time, which is not limited here.
  • the data storage device sends task result information to the user equipment.
  • the data storage device sends task result information to the user equipment, where the task result information indicates whether the data storage requesting device has completed the task corresponding to the third request.
  • the device that sends the information signs the information that needs to be transmitted or stored with the private key of the operator, and the device that receives the message can, after receiving the message, The above signature is verified according to the operator's public key.
  • the user-side device when the user-side device transmits information to the operator-side device, the user-side device will use the user's private key to sign the information to be transmitted or stored, and the operator-side device that receives the message can The public key verifies the above signature; correspondingly, when the operator-side device transmits information to the user-side device, the operator-side device will use the operator's private key to sign the information to be transmitted or stored, and receive The user-side device of the message can verify the above-mentioned signature according to the operator's public key.
  • the operator-side device and the user-side device in the embodiment of the present application can perform data signature authentication according to the above method every time data is transmitted, or do not perform data signature authentication, and only transmit the information that needs to be transmitted or stored.
  • the operator-side equipment in the embodiment of the present application includes a data requesting equipment (when not a user equipment), a blockchain platform, and a data storage device, and the user-side equipment includes a user equipment.
  • the data requesting device initiates an access request for user data.
  • the data requesting device can also initiate an update request for the user key, which will be described in detail below:
  • FIG. 6 another process of the user data management method in the embodiment of the present application includes:
  • the data requesting device determines the user's second key pair and the second symmetric encryption key
  • the data requesting device generates the user's second key pair, the user's second key pair includes the user's second public key and the user's second private key, the user's second key pair is a new key pair, and is used to replace the user's second key pair A key pair is the old key pair. Then, the data requesting device determines a second symmetric encryption key according to the user's second private key and the operator's public key, the second symmetric encryption key is used to replace the first symmetric encryption key, and the first symmetric encryption key is the same as The user's first private key is related to the operator's public key.
  • the data requesting device sends a first key update request to the blockchain platform.
  • the data request device sends a key update request to the blockchain platform, and the key update request indicates that the data request device needs the data storage device to update the first user data related to the user's first key to the second user data related to the user's second key.
  • the key update request includes the signature information of the data requesting device, the type of access, the user's second public key encrypted by the operator's private key, and the user's root private key.
  • the key update request is signed by the user's root private key sign.
  • the blockchain platform determines the authority of the data requesting device.
  • the blockchain device After the blockchain platform receives the first key update request sent by the data requesting device, the blockchain device determines whether the requesting device has corresponding permissions.
  • the blockchain platform queries the user's latest transaction information, and obtains the user's root public key and the user's previous public key, that is, the user's first public key according to the transaction information;
  • the public key checks whether the key update request is signed by the user's root private key, and the blockchain platform determines according to the signature information of the data requesting device included in the first key update request, the signature of the operator's private key, and the type of access
  • the authority of the first key update request because the digital signature information has unique authenticity, that is, the digital signature can uniquely determine the data requesting device, and the digital signature is used by the blockchain platform to determine whether it is the user device
  • the request initiated is to determine the authenticity of the first key update request, determine whether the first key update request is known by the user equipment and has been confirmed by the user equipment, so that the authority corresponding to the first key update request can be determined , that is, determine whether the data requesting device that sends the first request has permission to access the data storage device and make the data storage device perform a corresponding task.
  • the blockchain platform sends a second key update request to the data storage device.
  • the block chain platform determines that the data requesting device has corresponding authority, the block chain platform sends a second key update request to the data storage device, and the second key update request instructs the data storage device to send the key update request to the block chain platform.
  • first user data The second key update request includes a data address corresponding to the first user data.
  • the blockchain platform receives the first response message sent by the user data storage device.
  • the blockchain platform receives the first response message sent by the data storage device, where the first response message includes first user data.
  • the blockchain platform updates the first user data to the second user data.
  • the blockchain platform updates the first user data encrypted by the first symmetric encryption key to the second user data encrypted by the second symmetric encryption key.
  • the user data is decrypted, and then the decrypted user data is encrypted with a second symmetric encryption key to generate second user data.
  • the first symmetric encryption key is related to the user's first key and the operator's public key
  • the second symmetric encryption key is related to the user's second key and the operator's public key.
  • the blockchain platform sends a third request to the data storage device.
  • the blockchain platform sends a third request to the data storage device, the second request includes the second user data and the corresponding data pointer, and the third request instructs the data storage device to store the second user data to the address corresponding to the pointer.
  • the blockchain platform receives the second response message sent by the data storage device.
  • the block chain platform receives the second response message sent by the data storage device, and the second response message indicates that the data storage device has stored the second user data.
  • the blockchain platform receives the second response information and records it in the distributed ledger.
  • the blockchain platform receives the second response information sent by the data storage device, the response information indicates that the data storage device has completed the task corresponding to the third request, and correspondingly, the response information includes the relevant information of the task, such as the result of the task information, the identification information of the user who initiated the task, the execution strategy of the task, and the relevant information of the data storage device performing the task; then the blockchain platform can broadcast the relevant information of the task to each node of the blockchain platform, After all nodes reach a consensus, the blockchain platform records the relevant information of the task in the non-tamperable distributed ledger of the blockchain platform. Each node of the blockchain platform records complete information about the task, and the storage of each node is independent and of the same status.
  • the blockchain platform sends a confirmation message to the data requesting device.
  • the blockchain platform sends a confirmation message to the data requesting device, and the confirmation message indicates that the blockchain platform has updated the first user data to the second user data.
  • the data requesting device may be the data requesting device in the above-mentioned FIGS.
  • the requesting device 700 includes:
  • the first sending module 701 is configured to send a first request to the blockchain platform, the first request indicates that the data requesting device needs to access the data storage device, and the first request includes the signature information of the data requesting device, the type of access and the private key of the operator Signature; for the specific implementation, please refer to the first request sent by the data requesting device to the blockchain platform in step 402 in Figure 4, which will not be repeated here.
  • the first receiving module 702 is configured to receive the first permission information sent by the blockchain platform, the first permission information indicates whether the data requesting device has the right to access the data storage device, the permission and the signature information of the data requesting device, the type of access and
  • the operator's public key is related, and the operator's public key is uniquely corresponding to the operator's private key; for the specific implementation method, please refer to the first permission information sent by the blockchain platform to the data requesting device in step 403 in Figure 4, and will not be repeated here.
  • the second sending module 703 is configured to send a second request to the data storage device if the first permission information indicates that the data requesting device has permission to access the data storage device, and the second request includes an address to be accessed and a private key signature of an operator.
  • the second request sent by the data requesting device to the data storage device in step 404 in FIG. 4 please refer to the second request sent by the data requesting device to the data storage device in step 404 in FIG. 4 , which will not be repeated here.
  • the second receiving module 704 is configured to receive confirmation information sent by the data storage device, where the confirmation information indicates that the data storage device has executed the task corresponding to the second request.
  • the confirmation information sent by the data storage device please refer to the confirmation information sent by the data storage device to the data requesting device in step 410 in FIG. 4 , which will not be repeated here.
  • the third receiving module 705 is configured for the data requesting device to receive the third request sent by the user device, the third request instructs the data requesting device to send the first request to the blockchain platform, and the third request includes the user public key.
  • the third request sent by the user equipment to the data requesting equipment in step 401 in FIG. 4 please refer to the third request sent by the user equipment to the data requesting equipment in step 401 in FIG. 4 , which will not be repeated here.
  • a determining module 706, configured to determine a symmetric encryption key according to the user public key and the operator's private key. For a specific implementation manner, please refer to the third request sent by the user equipment to the data requesting equipment in step 401 in FIG. 4 , which will not be repeated here.
  • a decryption module 707 configured for the data requesting device to decrypt the encrypted user data according to the symmetric encryption key.
  • the confirmation information sent by the data storage device to the data requesting device in step 410 in FIG. 4 please refer to the confirmation information sent by the data storage device to the data requesting device in step 410 in FIG. 4 , which will not be repeated here.
  • the device that sends the information signs the information that needs to be transmitted or stored with the private key of the operator, and the device that receives the message can, after receiving the message, The above signature is verified according to the operator's public key.
  • the user-side device when the user-side device transmits information to the operator-side device, the user-side device will use the user's private key to sign the information to be transmitted or stored, and the operator-side device that receives the message can The public key verifies the above signature; correspondingly, when the operator-side device transmits information to the user-side device, the operator-side device will use the operator's private key to sign the information to be transmitted or stored, and receive The user-side device of the message can verify the above-mentioned signature according to the operator's public key.
  • the operator-side device and the user-side device in the embodiment of the present application can perform data signature authentication according to the above method every time data is transmitted, or do not perform data signature authentication, and only transmit the information that needs to be transmitted or stored.
  • the operator-side equipment in the embodiment of the present application includes a data requesting equipment (when not a user equipment), a blockchain platform, and a data storage device, and the user-side equipment includes a user equipment.
  • the data requesting device 700 may perform the operations performed by the data requesting device in the embodiments shown in any one of FIG. 4 to FIG. 5 , and details are not repeated here.
  • a data storage device 800 provided in the embodiment of the present application.
  • the data storage device may be the data storage device in the above-mentioned FIGS.
  • Storage device 800 includes:
  • the first receiving module 801 is used to receive the second request from the data requesting device, the second request includes the address to be accessed and the private key signature of the operator; for the specific implementation, please refer to the data requesting device sending the data storage device in step 404 in Figure 4 The second request is sent, which will not be repeated here.
  • the first sending module 802 is used to send an access verification request to the block chain platform, and the access verification request indicates that the data requesting device sends a second request to the data storage device; for the specific implementation, please refer to the data storage device in step 405 in Figure 4.
  • the blockchain platform sends an access verification request, which will not be repeated here.
  • the second receiving module 803 is configured to receive the second permission information sent by the blockchain platform, and the second permission information indicates whether the data storage device can perform the task corresponding to the second request; for the specific implementation method, please refer to step 406 in FIG. 4
  • the blockchain platform sends the second permission information to the data storage device, which will not be repeated here.
  • the executing module 804 is configured to execute the corresponding task according to the second request if the second permission information indicates that the data storage device can execute the task corresponding to the second request.
  • the second permission information indicates that the data storage device can execute the task corresponding to the second request.
  • step 407 in FIG. 4 please refer to step 407 in FIG. 4 where the data storage device receives the second permission information and executes the task corresponding to the second request, which will not be repeated here.
  • the second sending module 805 is configured to send response information to the blockchain platform, where the response information indicates that the data storage device has executed the task corresponding to the second request.
  • the response information indicates that the data storage device has executed the task corresponding to the second request.
  • the third sending module 806 is configured to send confirmation information to the data requesting device, where the confirmation information indicates that the data storage device has executed the task corresponding to the second request.
  • confirmation information indicates that the data storage device has executed the task corresponding to the second request.
  • the data storage device 800 may perform the operations performed by the data storage device in the embodiments shown in any one of FIG. 4 to FIG. 5 , and details are not repeated here.
  • a block chain platform device 900 provided in the embodiment of the present application can be the above-mentioned Fig. 4 to Fig. 5
  • the blockchain platform equipment 900 includes:
  • the first receiving module 901 is configured to receive the first request sent by the data requesting device, the first request indicates that the data requesting device needs to access the data storage device, and the first request includes the signature information of the data requesting device, the type of access and the private key of the operator Signature; for the specific implementation, please refer to the first request sent by the data requesting device to the blockchain platform in step 402 in Figure 4, which will not be repeated here.
  • the determining module 902 is used to determine whether the data requesting device can access the data storage device according to the signature information of the data requesting device, the type of access and the private key signature of the operator; for the specific implementation, please refer to the block chain platform in step 403 in Figure 4 Send the first permission information to the data requesting device, which will not be repeated here.
  • the first sending module 903 is configured to send the first permission information to the data requesting device, and the first permission information indicates whether the data requesting device has the right to access the data storage device; for the specific implementation, please refer to the block chain in step 403 in Figure 4
  • the platform sends the first permission information to the data requesting device, which will not be repeated here.
  • the second receiving module 904 is configured to receive the access verification request sent by the data storage device, and the access verification request instructs the data requesting device to send a second request to the data storage device; for the specific implementation, please refer to the data storage device in step 405 in FIG.
  • the blockchain platform sends an access verification request, which will not be repeated here.
  • the second sending module 905 is configured to send second permission information to the data storage device if the blockchain platform determines that the data requesting device can access the data storage device, and the second permission information indicates that the data storage device can perform the task corresponding to the second request .
  • the second permission information sent by the blockchain platform to the data storage device in step 406 in FIG. 4 please refer to the second permission information sent by the blockchain platform to the data storage device in step 406 in FIG. 4 , which will not be repeated here.
  • the third receiving module 906 is configured to receive the response information sent by the data storage device, and the response information indicates that the data storage device has executed the task corresponding to the second request; for the specific implementation, please refer to the block sent by the data storage device in step 408 in FIG. 4
  • the chain platform sends response information, which will not be repeated here.
  • the recording module 907 is used for the blockchain platform to record the task corresponding to the second request performed by the data storage device into the distributed ledger according to the response message.
  • the blockchain platform receives the response information and records it in the distributed ledger, and details will not be repeated here.
  • the block chain platform device 900 can perform the operations performed by the block chain platform device in any of the embodiments shown in any one of FIG. 4 to FIG. 5 , and details will not be repeated here.
  • the blockchain platform equipment 1000 includes:
  • the first receiving module 1001 is configured to receive the first key update request sent by the data requesting device, the first key updating request indicates that the data requesting device needs the data storage device to update the first user data related to the user's first key as The second user data related to the user's second key; the key update request includes the signature information of the data requesting device, the type of access, the user's second public key encrypted by the operator's private key, and the signature of the user's root private key; specific implementation For the method, please refer to step 602 in FIG. 6: the data requesting device sends the first key update request to the blockchain platform, which will not be repeated here.
  • Determining module 1002 configured to determine whether the data requesting device has the authority to let the data storage device update the first user data to the second user data according to the user's root public key and the user's first public key; for specific implementation, please refer to FIG. 6 In step 603: the block chain platform determines the authority of the data requesting device, which will not be repeated here.
  • the first sending module 1003 is used to send a second key update request to the data storage device if the block chain platform determines that the data requesting device has authority, and the second key update request instructs the data storage device to send the second key update request to the block chain platform.
  • User data for specific implementation, please refer to step 604 in Figure 6: the block chain platform sends a second key update request to the data storage device, which will not be repeated here.
  • the second receiving module 1004 is used to receive the first response message sent by the data storage device, the first response message includes the first user data; for specific implementation, please refer to step 605 in Figure 6: block chain platform receives user data storage device The first response message sent will not be repeated here.
  • An update module 1005 configured to update the first user data encrypted by the first symmetric encryption key to the second user data encrypted by the second symmetric encryption key, the first symmetric encryption key is related to the user's first key, the first The two symmetric encryption keys are related to the user's second key; for the specific implementation, please refer to step 606 in Figure 6: the block chain platform updates the first user data to the second user data, which will not be repeated here.
  • the second sending module 1006 is configured to send a third request to the data storage device, the third request includes the second user data, and the third request instructs the data storage device to store the second user data; for the specific implementation, please refer to the steps in Figure 6 607:
  • the blockchain platform sends a third request to the data storage device, which will not be repeated here.
  • the third receiving module 1007 is used to receive the second response message sent by the data storage device, the second response message indicates that the data storage device has stored the second user data; for specific implementation, please refer to step 608 in Figure 6: block chain platform Receive the second response message sent by the data storage device, which will not be repeated here.
  • the storage module 1008 is configured to record the second user data stored in the data storage device into the distributed ledger.
  • the block chain platform receives the response information and records it in the distributed ledger, which will not be repeated here.
  • the third sending module 1009 is configured to send a confirmation message to the data requesting device, the confirmation message indicating that the blockchain platform has updated the first user data to the second user data.
  • the block chain platform sends a confirmation message to the data requesting device, which will not be repeated here.
  • the block chain platform device 1000 can perform the operations performed by the block chain platform device in the embodiment shown in FIG. 6 , and details will not be repeated here.
  • a data requesting device 1100 provided in the embodiment of the present application.
  • the data requesting device may be the data requesting device in FIG. 6 above, and the data requesting device 1100 include:
  • the sending module 1101 is configured to send a first key update request to the block chain platform, the first key update request indicates that the data requesting device needs the data storage device to update the first user data encrypted by the user's first key to be encrypted by the user's second key.
  • the second user data encrypted by the second key; the first key update request includes the signature information of the data requesting device, the type of access, the user's new public key encrypted by the operator's private key and the user's root private key signature; the specific implementation method, Please refer to step 601 in FIG. 6: the data requesting device determines the user's second key pair and the second symmetric encryption key, and details are not repeated here.
  • the receiving module 1102 is configured for the data requesting device to receive a confirmation message sent by the blockchain platform, the confirmation message indicating that the data storage device has updated the first user data to the second user data.
  • the block chain platform sends a confirmation message to the data requesting device, which will not be repeated here.
  • FIG. 12 is a schematic structural diagram of a data requesting device provided by an embodiment of the present application.
  • the data requesting device 1200 may include one or more central processing units (central processing units, CPU) 1201 and a memory 1205, which stores a or more than one application or data.
  • CPU central processing units
  • the storage 1205 may be a volatile storage or a persistent storage.
  • the program stored in the memory 1205 may include one or more modules, and each module may include a series of instructions to operate on the data requesting device.
  • the central processing unit 1201 may be configured to communicate with the memory 1205 , and execute a series of instruction operations in the memory 1205 on the data requesting device 1200 .
  • the central processing unit 1201 is used to execute the computer program in the memory 1205, so that the data request device 1200 is used to execute: the data request device sends a first request to the block chain platform, and the first request indicates that the data request device needs to access the data storage device, the first request includes the signature information of the data requesting device, the type of access, and the private key signature of the operator; the data requesting device receives the first permission information sent by the blockchain platform, and the first permission information indicates whether the data requesting device owns the access data
  • the authority of the storage device the authority is related to the signature information of the data requesting device, the type of access, and the operator's public key, and the operator's public key is uniquely corresponding to the operator's private key; if the first permission information indicates that the data requesting device has access to the data storage device permission, the data requesting device sends a second request to the data storage device, and the second request includes the address to be accessed and the private key signature of the operator.
  • the data request device sends a first request to
  • the data requesting device 1200 may also include one or more power sources 1202, one or more wired or wireless network interfaces 1203, one or more input and output interfaces 1204, and/or, one or more operating systems, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
  • one or more operating systems such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
  • the data requesting device 1200 may perform the operations performed by the data requesting device in any one of the embodiments shown in FIGS.
  • FIG. 13 is a schematic structural diagram of a data storage device provided by an embodiment of the present application.
  • the data storage device 1300 may include one or more central processing units (central processing units, CPU) 1301 and a memory 1305, and a memory 1305 stores a or more than one application or data.
  • central processing units central processing units, CPU
  • the storage 1305 may be a volatile storage or a persistent storage.
  • the program stored in the memory 1305 may include one or more modules, and each module may include a series of instructions to operate on the data storage device.
  • the central processing unit 1301 may be configured to communicate with the memory 1305 , and execute a series of instruction operations in the memory 1305 on the data storage device 1300 .
  • the central processing unit 1301 is used to execute the computer program in the memory 1305, so that the data storage device 1300 is used to execute: the data storage device receives the second request from the data request device, and the second request includes the address of the access and the private key of the operator Signature; the data storage device sends an access verification request to the blockchain platform, and the access verification request instructs the data requesting device to send a second request to the data storage device; the data storage device receives the second permission information sent by the blockchain platform, and the second permission information Indicating whether the data storage device can perform the task corresponding to the second request; if the second permission information indicates that the data storage device can perform the task corresponding to the second request, the data storage device performs the corresponding task according to the second request.
  • steps 401-411 in the embodiment shown in FIG. 4 which will not be repeated here.
  • the data storage device 1300 may also include one or more power sources 1302, one or more wired or wireless network interfaces 1303, one or more input and output interfaces 1304, and/or, one or more operating systems, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
  • one or more operating systems such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
  • the data storage device 1300 may perform the operations performed by the data storage device in any one of the embodiments shown in FIGS. 4-5 , which will not be detailed here.
  • FIG. 14 is a schematic structural diagram of a block chain platform device provided by an embodiment of the present application.
  • the block chain platform device 1400 may include one or more central processing units (central processing units, CPU) 1401 and memory 1405.
  • the memory 1405 There are one or more applications or data stored in it.
  • the storage 1405 may be a volatile storage or a persistent storage.
  • the program stored in the memory 1405 may include one or more modules, and each module may include a series of instruction operations on the blockchain platform device.
  • the central processing unit 1401 can be configured to communicate with the memory 1405 , and execute a series of instruction operations in the memory 1405 on the blockchain platform device 1400 .
  • the central processing unit 1401 is used to execute the computer program in the memory 1405, so that the blockchain platform device 1400 is used to execute: the blockchain platform receives the first request sent by the data requesting device, and the first request indicates that the data requesting device needs To access the data storage device, the first request includes the signature information of the data requesting device, the type of access, and the signature of the private key of the operator; the blockchain platform determines the data request based on the signature information of the data requesting device, the type of access, and the signature of the private key of the operator Whether the device can access the data storage device; the block chain platform sends the first permission information to the data requesting device, and the first permission information indicates whether the data requesting device has the right to access the data storage device; the block chain platform receives the access data sent by the data storage device Verification request, the access verification request instructs the data requesting device to send a second request to the data storage device; if the blockchain platform determines that the data requesting device can access the data storage device, the blockchain platform sends the second
  • the block chain platform device 1400 can also include one or more power supplies 1402, one or more wired or wireless network interfaces 1403, one or more input and output interfaces 1404, and/or, one or more operating systems, such as Windows ServerTM , Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
  • one or more operating systems such as Windows ServerTM , Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
  • the block chain platform device 1400 can execute the operations performed by the block chain platform device in any one of the embodiments shown in FIGS. 4-5 , and details will not be repeated here.
  • Figure 15 is a schematic structural diagram of a block chain platform device provided by an embodiment of the present application
  • the block chain platform device 1500 may include one or more central processing units (central processing units, CPU) 1501 and memory 1505, the memory 1505 There are one or more applications or data stored in it.
  • CPU central processing units
  • the storage 1505 may be a volatile storage or a persistent storage.
  • the program stored in the memory 1505 may include one or more modules, and each module may include a series of instruction operations on the blockchain platform device.
  • the central processing unit 1501 can be configured to communicate with the memory 1505 , and execute a series of instruction operations in the memory 1505 on the blockchain platform device 1500 .
  • the central processing unit 1501 is used to execute the computer program in the memory 1505, so that the block chain platform device 1500 is used to execute: the block chain platform receives the first key update request sent by the data request device, the first key update request The request indicates that the data requesting device needs the data storage device to update the first user data related to the user's first key to the second user data related to the user's second key; the key update request includes signature information of the data requesting device, access type, signed by the user's second public key encrypted by the operator's private key, and the user's root private key; the blockchain platform determines whether the data requesting device has the ability to let the data storage device store the first One user data is updated to the authority of the second user data; if the blockchain platform determines that the data requesting device has authority, the blockchain platform sends a second key update request to the data storage device, and the second key update request indicates that the data storage The device sends the first user data to the block chain platform; the block chain platform receives the first response message sent by the data storage device
  • the block chain platform device 1500 can also include one or more power supplies 1502, one or more wired or wireless network interfaces 1503, one or more input and output interfaces 1504, and/or, one or more operating systems, such as Windows ServerTM , Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
  • one or more operating systems such as Windows ServerTM , Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
  • the block chain platform device 1500 can perform the operations performed by the block chain platform device in any one of the embodiments shown in FIG. 6 , and details will not be repeated here.
  • FIG. 16 is a schematic structural diagram of a data requesting device provided by an embodiment of the present application.
  • the data requesting device 1600 may include one or more central processing units (central processing units, CPU) 1601 and a memory 1605, and the memory 1605 stores a or more than one application or data.
  • central processing units central processing units, CPU
  • the storage 1605 may be a volatile storage or a persistent storage.
  • the program stored in the memory 1605 may include one or more modules, and each module may include a series of instructions to operate on the data requesting device.
  • the central processing unit 1601 may be configured to communicate with the memory 1605 , and execute a series of instruction operations in the memory 1605 on the data requesting device 1600 .
  • the central processing unit 1601 is used to execute the computer program in the memory 1605, so that the data request device 1600 is used to perform: the data request device sends a first key update request to the blockchain platform, and the first key update request indicates that the data
  • the requesting device needs the data storage device to update the first user data encrypted by the user's first key to the second user data encrypted by the user's second key; the first key update request includes the signature information of the data requesting device, the type of access 1.
  • the user's new public key encrypted by the operator's private key and the user's root private key are signed; the data requesting device receives the confirmation message sent by the blockchain platform, and the confirmation message indicates that the data storage device has updated the first user data to the second User data.
  • steps 601-610 in the embodiment shown in FIG. 6 please refer to steps 601-610 in the embodiment shown in FIG. 6 , which will not be repeated here.
  • the data requesting device 1600 may also include one or more power sources 1602, one or more wired or wireless network interfaces 1603, one or more input and output interfaces 1604, and/or, one or more operating systems, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
  • one or more operating systems such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
  • the data requesting device 1600 may perform the operations performed by the data requesting device in any one of the embodiments shown in FIG. 6 , and details are not repeated here.
  • FIG 17 is a schematic structural diagram of a user data management system 1700 provided by an embodiment of the present application.
  • the user data management system 1700 may include a data request device 1701, a data storage device 1702, and a blockchain platform device 1703.
  • the data request device 1701 The operations performed by the data requesting device in any of the embodiments shown in the foregoing Figures 4-5 can be performed; Operations performed: the block chain platform device 1703 can perform the operations performed by the block chain platform device in any one of the embodiments shown in FIGS. 4-5 .
  • FIG. 18 is a schematic structural diagram of a user data management system 1800 provided by an embodiment of the present application.
  • the user data management system 1800 may include a data request device 1801, a data storage device 1802, and a blockchain platform device 1803.
  • the data request device 1801 The operations performed by the data requesting device in any one of the embodiments shown in FIGS. 4-8 can be performed; the data storage device 1802 can perform the operations performed by the data storage device in any one of the embodiments shown in FIG. ;
  • the block chain platform device 1803 can perform the operations performed by the block chain platform device in any one of the embodiments shown in FIG. 6 .
  • the disclosed system, device and method can be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components can be combined or May be integrated into another system, or some features may be ignored, or not implemented.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Part or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, each unit may exist separately physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units.
  • the integrated unit is realized in the form of a software function unit and sold or used as an independent product, it can be stored in a computer-readable storage medium.
  • the technical solution of the present application is essentially or part of the contribution to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium , including several instructions to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (ROM, read-only memory), random access memory (RAM, random access memory), magnetic disk or optical disc, etc., which can store program codes. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

本申请实施例提供了一种用户数据管理方法以及相关设备,用于提升用户数据的安全性。本申请实施例方法包括:数据请求设备向区块链平台发送第一请求,第一请求指示数据请求设备需要访问数据存储设备;数据请求设备接收区块链平台发送的第一许可信息,第一许可信息指示数据请求设备是否拥有访问数据存储设备的权限,该权限与数据请求设备的签名信息、访问的类型和运营商公钥有关;若第一许可信息指示数据请求设备拥有访问数据存储设备的权限,则向数据存储设备发送第二请求,第二请求包括访问的地址和运营商私钥签名。

Description

一种用户数据管理方法以及相关设备
本申请要求于2021年06月04日提交中国专利局、申请号为202110627247.6、发明名称为“一种用户数据管理方法以及相关设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请实施例涉及数据处理领域,尤其涉及一种用户数据管理方法以及相关设备。
背景技术
用户数据管理是移动通信网络最核心功能之一。用户业务的提供和网络的正常运营都需要依赖于用户数据管理实体和相关流程。移动网络的用户数据管理实体,存储用户和业务订阅相关数据,密钥信息等,是实现用户鉴权认证、授权以及访问控制的关键。
在目前的2G到5G核心网架构中,每一个用户都有着许多信息,例如签约信息、秘钥信息和业务信息等等,这些用户信息都是在一个集中式的单点用户数据管理设备中一起进行处理,该用户数据管理设备与其他控制面板网络实体或应用服务器连接,从而提供数据的访问和存取等服务。例如在5G网络的核心网架构中,用户信息由统一数据管理(User Data Management,UDM),UDM在单个元素中管理网络用户数据,它可以与用户数据存储库配对,用户数据存储库存储用户信息,UDM位于控制平面,用来实现在用户平面和控制平面之间进行通信。另一方面,用户数据管理设备与用户数据存储库之间的数据传递所采用的加密方法通常是非对称加密和对称密钥加密。
由于用户的信息都由集中式的单点用户数据管理设备进行管理,所以有着单点失效和被网络攻击的风险,因此具有较高的数据安全风险;同时,用户数据管理设备与用户数据存储库之间的数据传递所采用的加密方法的安全性较低,非对称加密算法存在效率低、加密耗时长和加密速度慢的缺点,而且无法确认公钥的合法性和完整性;对称密钥加密最大的确定就是很难实现共享密钥的安全传递。
发明内容
本申请实施例提供了一种用户数据管理方法以及相关设备,用于提升用户数据的安全性。
本申请实施例第一方面提供了一种用户数据管理方法,该方法应用于用户数据管理系统管理用户的数据,该系统包括数据请求设备、数据存储设备和区块链平台,当数据请求设备需要访问数据存储设备时,用户数据管理系统执行对应的操作,具体该方法包括:数据请求设备向区块链平台发送第一请求,第一请求指示数据请求设备需要访问数据存储设备,第一请求包括数据请求设备的签名信息、访问的类型和运营商私钥签名;数据请求设备接收区块链平台发送的第一许可信息,第一许可信息指示数据请求设备是否拥有访问数据存储设备的权限,权限与数据请求设备的签名信息、访问的类型和运营商公钥有关,运营商公钥与运营商私钥唯一对应;若第一许可信息指示数据请求设备拥有访问数据存储设备的权限,则数据请求设备向数据存储设备发送第二请求,第二请求包括访问的地址和运营商私钥签名。
该种可能的实现方式中,数据请求设备在访问数据存储设备之前,需要获得区块链平台确认该数据请求设备具有相应的权限,由于区块链平台具有去中心化和不可篡改性等特性,因此具有鉴权和授权功能的区块链平台的没有单点失效的风险,受到分布式拒绝服务攻击时损失的数据相对也很少,因此用户数据具有更高的安全性。另一方面,数据请求设备、数据存储设备和区块链平台之间的信息传递都由运营商的密钥签名,保障了信息的安全性。
在第一方面的一种可能的实现方式中,访问的类型包括写入数据和读取数据,若访问的类型为写入数据,则第一请求还包括访问的地址和用户公钥;若访问的类型为读取数据,则第一许可信息包括访问的地址和用户公钥。
在第一方面的一种可能的实现方式中,在上述数据请求设备向数据存储设备发送第二请求之后,该方法还包括:数据请求设备接收数据存储设备发送的确认信息,确认信息指示数据存储设备已经执行第二请求对应的任务。
该种可能的实现方式中,使得数据请求设备可以得知数据存储设备是否已经执行第二请求对应的任务,从而可以据此作出相应的响应,增加了数据请求设备的信息获取。
在第一方面的一种可能的实现方式中,在数据请求设备向区块链平台发送第一请求之前,该方法还包括:数据请求设备接收用户设备发送的第三请求,第三请求指示数据请求设备向区块链平台发送第一请求,第三请求包括用户公钥。
该种可能的实现方式中,用户设备的用户公钥通过运营商的密钥签名,保障了信息的安全性。
在第一方面的一种可能的实现方式中,数据请求设备的签名信息包括用户设备的签名信息。
在第一方面的一种可能的实现方式中,第一许可信息包括用户公钥,在数据请求设备向数据存储设备发送第二请求之前,方法还包括:数据请求设备根据用户公钥和运营商私钥确定对称加密密钥。
在第一方面的一种可能的实现方式中,确认信息包括经过加密的用户数据,方法还包括:数据请求设备根据对称加密密钥对经过加密的用户数据解密。
本申请实施例第二方面提供了一种用户数据管理方法,该方法应用于用户数据管理系统管理用户的数据,该系统包括数据请求设备、数据存储设备和区块链平台,当数据请求设备需要访问数据存储设备时,用户数据管理系统执行对应的操作,具体该方法包括:数据存储设备接收数据请求设备的第二请求,第二请求包括访问的地址和运营商私钥签名;数据存储设备向区块链平台发送访问验证请求,访问验证请求指示数据请求设备向数据存储设备发送第二请求;数据存储设备接收区块链平台发送的第二许可信息,第二许可信息指示数据存储设备是否可以执行第二请求对应的任务;若第二许可信息指示数据存储设备可以执行第二请求对应的任务,则数据存储设备根据第二请求执行对应的任务。
该种可能的实现方式中,数据请求设备在访问数据存储设备之前,需要获得区块链平台确认该数据请求设备具有相应的权限,由于区块链平台具有去中心化和不可篡改性等特性,因此具有鉴权和授权功能的区块链平台的没有单点失效的风险,被网络攻击时损失的数据相对也很少,因此用户数据具有更高的安全性。另一方面,该第一请求中包括访问的类型,进一步细化了访问信息,从而使得区块链平台可以更精准地确定第一请求对应的权限;同时, 由于只有用户数据的相关信息存储在区块链平台中,用户数据都存储在数据存储设备中,从而避免了“区块链膨胀问题”、“隐私问题”和数据不可篡改带来的“遗忘权问题”。
在第二方面的一种可能的实现方式中,访问的类型为用户数据存储,数据存储设备根据第二请求执行对应的任务,包括:数据存储设备根据对称加密密钥将用户数据加密;数据存储设备将加密后的用户数据存储到访问的地址。
在第二方面的一种可能的实现方式中,在数据存储设备根据第二请求执行对应的任务之后,方法还包括:数据存储设备向区块链平台发送响应信息,响应信息指示数据存储设备已经执行第二请求对应的任务。
在第二方面的一种可能的实现方式中,在数据存储设备根据第二请求执行对应的任务之后,方法还包括:数据存储设备向数据请求设备发送确认信息,确认信息指示数据存储设备已经执行第二请求对应的任务。
在第二方面的一种可能的实现方式中,确认信息包括经过加密的用户数据。
本申请实施例第三方面提供了一种用户数据管理方法,该方法应用于用户数据管理系统管理用户的数据,该系统包括数据请求设备、数据存储设备和区块链平台,当数据请求设备需要访问数据存储设备时,用户数据管理系统执行对应的操作,具体该方法包括:区块链平台接收数据请求设备发送的第一请求,第一请求指示数据请求设备需要访问数据存储设备,第一请求包括数据请求设备的签名信息、访问的类型和运营商私钥签名;区块链平台根据数据请求设备的签名信息、访问的类型和运营商私钥签名确定数据请求设备是否可以访问数据存储设备;区块链平台向数据请求设备发送第一许可信息,第一许可信息指示数据请求设备是否拥有访问数据存储设备的权限;区块链平台接收数据存储设备发送的访问验证请求,访问验证请求指示数据请求设备向数据存储设备发送第二请求;若区块链平台确定数据请求设备可以访问数据存储设备,则区块链平台向数据存储设备发送第二许可信息,第二许可信息指示数据存储设备可以执行第二请求对应的任务。
数据请求设备在访问数据存储设备之前,需要获得区块链平台确认该数据请求设备具有相应的权限,由于区块链平台具有去中心化和不可篡改性等特性,因此具有鉴权和授权功能的区块链平台的没有单点失效的风险,被网络攻击时损失的数据相对也很少,因此用户数据具有更高的安全性。另一方面,该第一请求中包括访问的类型,进一步细化了访问信息,从而使得区块链平台可以更精准地确定第一请求对应的权限。
在第三方面的一种可能的实现方式中,在区块链平台向数据存储设备发送第二许可信息之后,方法还包括:区块链平台接收数据存储设备发送的响应信息,响应信息指示数据存储设备已经执行第二请求对应的任务;区块链平台根据响应消息将数据存储设备已经执行第二请求对应的任务记入分布式账本。
在第三方面的一种可能的实现方式中,若访问的类型为读取数据,则第一许可信息包括访问的地址。
本申请实施例第四方面提供了一种用户数据管理方法,该方法应用于用户数据管理系统管理用户的数据,该系统包括数据请求设备、数据存储设备和区块链平台,当数据请求设备需要访问数据存储设备时,用户数据管理系统执行对应的操作,具体该方法包括:区块链平台接收数据请求设备发送的第一密钥更新请求,第一密钥更新请求指示数据请求设备需要数 据存储设备将与用户第一密钥相关的第一用户数据更新为与用户第二密钥相关的第二用户数据;密钥更新请求包括数据请求设备的签名信息、访问的类型、通过运营商私钥加密的用户第二公钥和用户根私钥签名;区块链平台根据用户的根公钥和用户第一公钥确定数据请求设备是否具有让数据存储设备将第一用户数据更新为第二用户数据的权限;若区块链平台确定数据请求设备具有权限,则区块链平台向数据存储设备发送第二密钥更新请求,第二密钥更新请求指示数据存储设备向区块链平台发送第一用户数据;区块链平台接收数据存储设备发送的第一响应消息,第一响应消息包括第一用户数据;区块链平台将由第一对称加密密钥加密的第一用户数据更新为由第二对称加密密钥加密的第二用户数据,第一对称加密密钥与用户第一密钥相关,第二对称加密密钥与用户第二密钥相关;区块链平台向数据存储设备设备发送第三请求,第三请求包括第二用户数据,第三请求指示数据存储设备存储第二用户数据。
在第四方面的一种可能的实现方式中,在区块链平台向数据存储设备设备发送第三请求之后,方法还包括:区块链平台接收数据存储设备发送的第二响应消息,第二响应消息指示数据存储设备已经存储第二用户数据;区块链平台将数据存储设备已经存储第二用户数据记入分布式账本。
在第四方面的一种可能的实现方式中,方法还包括:区块链平台向数据请求设备发送确认消息,所示确认消息指示区块链平台已经将第一用户数据更新为第二用户数据。
本申请实施例第五方面提供了一种用户数据管理方法,该方法应用于用户数据管理系统管理用户的数据,该系统包括数据请求设备、数据存储设备和区块链平台,当数据请求设备需要访问数据存储设备时,用户数据管理系统执行对应的操作,具体该方法包括:方法包括:数据请求设备向区块链平台发送第一密钥更新请求,第一密钥更新请求指示数据请求设备需要数据存储设备将由用户第一密钥加密的第一用户数据更新为由用户第二密钥加密的第二用户数据;第一密钥更新请求包括数据请求设备的签名信息、访问的类型、通过运营商私钥加密的用户新公钥和用户根私钥签名;数据请求设备接收区块链平台发送的确认消息,所示确认消息指示数据存储设备已经将第一用户数据更新为第二用户数据。
本申请第六方面提供一种数据请求设备,该数据请求设备具有实现上述第一方面或第一方面任意一种可能实现方式的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块,例如:第一发送模块。
本申请第七方面提供一种数据存储设备,该数据存储设备具有实现上述第二方面或第二方面任意一种可能实现方式的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块,例如:第一接收模块。
本申请第八方面提供一种区块链平台设备,该区块链平台设备具有实现上述第三方面或第三方面任意一种可能实现方式的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块,例如:第一接收模块。
本申请第九方面提供一种区块链平台设备,该区块链平台设备具有实现上述第四方面或第四方面任意一种可能实现方式的方法的功能。该功能可以通过硬件实现,也可以通过硬件 执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块,例如:第一接收模块。
本申请第十方面提供一种数据请求设备,该数据请求设备具有实现上述第五方面或第五方面任意一种可能实现方式的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块,例如:第一发送模块。
本申请第十一方面提供一种数据请求设备,该数据请求设备包括至少一个处理器、存储器、输入/输出(input/output,I/O)接口以及存储在存储器中并可在处理器上运行的计算机执行指令,当计算机执行指令被处理器执行时,处理器执行如上述第一方面或第一方面任意一种可能的实现方式的方法。
本申请第十二方面提供一种数据存储设备,该数据存储设备包括至少一个处理器、存储器、输入/输出(input/output,I/O)接口以及存储在存储器中并可在处理器上运行的计算机执行指令,当计算机执行指令被处理器执行时,处理器执行如上述第二方面或第二方面任意一种可能的实现方式的方法。
本申请第十三方面提供一种区块链平台设备,该数据存储设备包括至少一个处理器、存储器、输入/输出(input/output,I/O)接口以及存储在存储器中并可在处理器上运行的计算机执行指令,当计算机执行指令被处理器执行时,处理器执行如上述第三方面或第三方面任意一种可能的实现方式的方法。
本申请第十四方面提供一种区块链平台设备,该数据存储设备包括至少一个处理器、存储器、输入/输出(input/output,I/O)接口以及存储在存储器中并可在处理器上运行的计算机执行指令,当计算机执行指令被处理器执行时,处理器执行如上述第四方面或第四方面任意一种可能的实现方式的方法。
本申请第十五方面提供一种数据请求设备,该数据请求设备包括至少一个处理器、存储器、输入/输出(input/output,I/O)接口以及存储在存储器中并可在处理器上运行的计算机执行指令,当计算机执行指令被处理器执行时,处理器执行如上述第五方面或第五方面任意一种可能的实现方式的方法。
本申请第十六方面提供一种存储一个或多个计算机执行指令的计算机可读存储介质,当计算机执行指令被处理器执行时,处理器执行如上述第一方面或第一方面任意一种可能的实现方式的方法。
本申请第十七方面提供一种存储一个或多个计算机执行指令的计算机可读存储介质,当计算机执行指令被处理器执行时,处理器执行如上述第二方面或第二方面任意一种可能的实现方式的方法。
本申请第十八方面提供一种存储一个或多个计算机执行指令的计算机可读存储介质,当计算机执行指令被处理器执行时,处理器执行如上述第三方面或第三方面任意一种可能的实现方式的方法。
本申请第十九方面提供一种存储一个或多个计算机执行指令的计算机可读存储介质,当计算机执行指令被处理器执行时,处理器执行如上述第四方面或第四方面任意一种可能的实现方式的方法。
本申请第二十方面提供一种存储一个或多个计算机执行指令的计算机可读存储介质,当计算机执行指令被处理器执行时,处理器执行如上述第五方面或第五方面任意一种可能的实现方式的方法。
本申请第二十一方面提供一种存储一个或多个计算机执行指令的计算机程序产品,当计算机执行指令被处理器执行时,处理器执行如上述第一方面或第一方面任意一种可能的实现方式的方法。
本申请第二十二方面提供一种存储一个或多个计算机执行指令的计算机程序产品,当计算机执行指令被处理器执行时,处理器执行如上述第二方面或第二方面任意一种可能的实现方式的方法。
本申请第二十三方面提供一种存储一个或多个计算机执行指令的计算机程序产品,当计算机执行指令被处理器执行时,处理器执行如上述第三方面或第三方面任意一种可能的实现方式的方法。
本申请第二十四方面提供一种存储一个或多个计算机执行指令的计算机程序产品,当计算机执行指令被处理器执行时,处理器执行如上述第四方面或第四方面任意一种可能的实现方式的方法。
本申请第二十五方面提供一种存储一个或多个计算机执行指令的计算机程序产品,当计算机执行指令被处理器执行时,处理器执行如上述第五方面或第五方面任意一种可能的实现方式的方法。
本申请第二十六方面提供了一种芯片系统,该芯片系统包括至少一个处理器,至少一个处理器用于实现上述第一方面或第一方面任意一种可能的实现方式中所涉及的功能。在一种可能的设计中,芯片系统还可以包括存储器,存储器,用于保存处理人工智能模型的装置必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
本申请第二十七方面提供了一种芯片系统,该芯片系统包括至少一个处理器,至少一个处理器用于实现上述第二方面或第二方面任意一种可能的实现方式中所涉及的功能。在一种可能的设计中,芯片系统还可以包括存储器,存储器,用于保存基于人工智能模型的数据处理的装置必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
本申请第二十八方面提供了一种芯片系统,该芯片系统包括至少一个处理器,至少一个处理器用于实现上述第三方面或第三方面任意一种可能的实现方式中所涉及的功能。在一种可能的设计中,芯片系统还可以包括存储器,存储器,用于保存基于人工智能模型的数据处理的装置必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
本申请第二十九方面提供了一种芯片系统,该芯片系统包括至少一个处理器,至少一个处理器用于实现上述第三方面或第三方面任意一种可能的实现方式中所涉及的功能。在一种可能的设计中,芯片系统还可以包括存储器,存储器,用于保存基于人工智能模型的数据处理的装置必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
本申请第三十方面提供了一种芯片系统,该芯片系统包括至少一个处理器,至少一个处 理器用于实现上述第一方面或第一方面任意一种可能的实现方式中所涉及的功能。在一种可能的设计中,芯片系统还可以包括存储器,存储器,用于保存处理人工智能模型的装置必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
从以上技术方案可以看出,本申请实施例具有以下优点:数据请求设备在访问数据存储设备之前,需要获得区块链平台确认该数据请求设备具有相应的权限,由于区块链平台具有去中心化和不可篡改性等特性,因此具有鉴权和授权功能的区块链平台的没有单点失效的风险,受到分布式拒绝服务攻击时损失的数据相对也很少,因此用户数据具有更高的安全性。另一方面,数据请求设备、数据存储设备和区块链平台之间的信息传递都由运营商的密钥签名,保障了信息的安全性。
附图说明
图1为2G/3G/4G/IMS网络的用户数据架构的一个网络架构示意图;
图2为5G网络的用户数据架构的一个网络架构示意图;
图3为本申请实施例中用户数据管理方法的一个场景示意图;
图4为本申请实施例中用户数据管理方法的一个流程示意图;
图5为本申请实施例中用户数据管理方法的另一个流程示意图;
图6为本申请实施例中用户数据管理方法的另一个流程示意图;
图7为本申请实施例中数据请求设备的一个结构示意图;
图8为本申请实施例中数据存储设备的一个结构示意图;
图9为本申请实施例中区块链平台设备的一个结构示意图;
图10为本申请实施例中区块链平台设备的另一个结构示意图;
图11为本申请实施例中数据请求设备的另一个结构示意图;
图12为本申请实施例中数据请求设备的另一个结构示意图;
图13为本申请实施例中数据存储设备的另一个结构示意图;
图14为本申请实施例中区块链平台设备的另一个结构示意图;
图15为本申请实施例中区块链平台设备的另一个结构示意图;
图16为本申请实施例中数据请求设备的另一个结构示意图;
图17为本申请实施例中用户数据管理系统的一个结构示意图;
图18为本申请实施例中用户数据管理系统的另一个结构示意图。
具体实施方式
本申请实施例提供了一种用户数据管理方法以及相关设备,用于提升用户数据的安全性。
下面结合附图,对本申请的实施例进行描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可 以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
用户数据管理是移动通信网络最核心功能之一。用户业务的提供和网络的正常运营都需要依赖于用户数据管理实体和相关流程。移动网络的用户数据管理实体,存储用户和业务注册相关数据,密钥信息等,是实现用户鉴权认证、授权以及访问控制的关键。
在目前的2G到5G核心网架构中,每一个用户都有着许多信息,例如签约信息、密钥信息和业务信息等等,这些用户信息都是在一个集中式的单点用户数据管理设备中一起进行处理,该用户数据管理设备与其他控制面板网络实体或应用服务器连接,从而提供数据的访问和存取等服务。如图1所示,例如在2G、3G、4G以及网际互连协议多媒体系统(IP Multimedia Subsystem,IMS)架构中的用户数据管理实体是归属位置寄存器(Home Location Register,HLR)和归属用户服务器(Home Subscriber Server,HSS),这些实体与其他控制面网络功能实体或应用服务器接口,提供访问和存取服务。如图2所示,例如在5G网络的核心网架构中,用户信息由统一数据管理(Unified Data Management,UDM),UDM在单个元素中管理网络用户数据,它可以与用户数据存储库配对,用户数据存储库存储用户信息,UDM位于控制平面。
基于上述移动通信网络,下面对本申请实施例中的用户数据管理方法进行描述:
如图3所示,本申请实施例提供了一种用户数据管理方法,该方法应用于用户数据管理系统,本申请中的用户数据管理系统包括数据请求设备、区块链平台和数据存储设备,数据请求设备为需要对用户的数据进行相应的操作的设备,可以是数据主体(Data Subject,DS)、数据控制设备(Data Controller,DC)和数据处理设备(Data Processor,DP)等设备,也可以是用户设备、接入网设备和核心网网元,该用户设备可以是笔记本电脑、平板电脑、计算机、LTE协助终端、NR协助终端、协助器、半有源标签、有源标签、无线中继站、LTE手机和NR手机等终端设备;该接入网设备可以是宏基站、杆基站、长期演进(long term evolution,LTE)基站、演进型(evolved NodeB,eNB)基站、无线中继(Relay)站、Femto基站、Pico基站和下一代(next generation NodeB,gNB)基站等接入网设备;该核心网网元可以是身份验证服务器、会话管理服务器等核心网网元。
区块链平台用来存储数据操作、策略管理交易以及数据指针,该数据指针指向数据存储设备的存储的用户数据;具体地,区块链平台一方面实现了去中心化,实现了访问的认证、鉴权和授权以及访问控制逻辑,另一方面将所有数据操作和策略管理记录都记录在不可篡改的分布式账本上,该访问记录包括个人用户数据的存储地址和访问策略。本申请实施例中,通过区块链平台的去中心化、不可篡改性、可追溯性和透明性等特性,消除集中式信任模式,即区块链平台承担鉴权和授权服务器的角色,针对数据请求设备的所有操作由区块链平台进行鉴权和授权;并且由部署在区块链的智能合约承担自动化的访问控制管理;并且由区块链承担不可篡改日志系统,用于记录任何对链下数据的访问操作。
数据存储设备用来存储用户的个人数据,用户的个人数据并不存储在区块链平台上,从而解决的区块链平台的“区块链膨胀问题”、“隐私问题”和数据不可篡改带来的“数据遗忘 权问题”。
另一方面,本申请实施例中的用户数据管理系统可以分为用户侧的设备和网络服务提供商侧的设备即运营商侧设备,用户侧的设备配置有用户根密钥对、用户的公私密钥对和运营商的公钥,该用户根密钥对包括用户根公钥和用户根私钥,该用户的公私密钥对包括用户的公钥和用户的私钥;运营商侧的设备配置有运营商的公私密钥对和用户的公钥,该运营商的公私密钥对包括运营商的公钥和运营商的私钥。该用户侧的设备包括用户请求设备中的用户设备,该运营商侧设备包括数据请求设备中的核心网设备、接入网设备、区块链平台和数据存储设备。
本申请实施例中,运营商侧设备的设备在传递信息时,发送该信息的设备用运营商私钥对需要传递或存储的信息进行签名,接收该消息的设备在接收到该消息后,可以根据运营商公钥对上述签名进行验证。相应地,用户侧的设备在给运营商侧设备的设备传递信息时,用户侧的设备会用用户私钥对需要传递或存储的信息进行签名,接收该消息的运营商侧设备在可以根据用户公钥对上述签名进行验证;相应地,运营商侧设备的设备再给用户侧的设备传递信息时,运营商侧设备的设备会用运营商私钥对需要传递或存储的信息进行签名,接收该消息的用户侧设备在可以根据运营商公钥对上述签名进行验证。本申请实施例中的运营商侧设备的设备和用户侧的设备在每一次传递数据时都可以根据上述方法进行数据签名认证,也可以不执行数据签名认证,只传递需要传递或存储的信息,具体此处不做限定。
如图4所示,本申请实施例中用户数据管理方法的一个流程包括:
401、用户设备向数据请求设备发送第三请求。
当用户设备需要数据存储设备执行对应的任务时,用户设备就向数据请求设备发送第三请求,该第三请求指示该数据请求设备向区块链平台发送第一请求,第三请求中包括用户设备的签名信息和用户公钥。本申请实施例中的第三请求还可以包括用户设备信息、数据指针即用户设备想要访问的数据在数据存储设备中的数据地址、数据访问的类型即数据访问的策略、用户的根公钥和用户的公钥,该用户的根公钥为该用户唯一的不可改变的密钥。
具体地,一种可能的实现方式中,当用户需要销户时,可执行如下步骤:用户设备向数据请求设备例如CRM设备和BOSS发送注册请求,该注册请求即为第三请求。
一种可能的实现方式中,该用户设备还会计算第一对称加密密钥,该第一对称加密密钥与用户私钥和运营商公钥相关,例如该第一对称加密密钥Ken可以是Ken=用户私钥*运营商公钥,具体此处不做限定。
402、数据请求设备向区块链平台发送第一请求。
数据请求设备向区块链平台发送第一请求,该第一请求指示数据请求设备需要访问数据存储设备,该第一请求包括数据请求设备的签名信息、访问的类型和运营商私钥签名,该数据请求设备的签名信息用于区块链平台确定第一请求对应的权限。
本申请实施例中,该访问的类型可以是数据写入、数据删除和数据读取,除此之外,本申请实施例中的访问的类型也可以是其他类型,例如数据修改等,具体此处不做限定。
本申请实施例中,该第一请求包括数据请求设备的签名信息、运营商私钥签名和访问的类型,除此之外,本申请实施例中该第一请求可以包括用户设备信息、或者用户设备需要数据存储设备执行的任务的相关信息,还可以包括数据指针即用户设备想要访问的数据在数据 存储设备中的数据地址、数据访问的类型即数据访问的策略、用户的根公钥和用户的公钥;例如当访问的类型为数据写入时,该第一请求还包括访问的地址,该访问的地址可以是一个数据指针;例如若访问的类型为写入数据,则第一请求还包括访问的地址和用户公钥,具体此处不做限定。
本申请实施例中,该数据请求设备的签名信息可以包括该数据请求设备的签名信息,也可以包括用户设备的签名信息,也可以包括数据请求设备的电子签名信息和用户设备的签名信息,也可以是其他可以指示数据请求设备或用户设备的信息,具体此处不做限定;本申请实施例中,该签名信息可以是电子签名,也可以是ID等标识信息,具体此处不做限定。
本申请实施例中,该数据请求设备为用户设备之外的设备,例如核心网网元、接入网设备和网络功能实体,除此之外,该数据请求设备也可以是终端之类的用户设备,若该数据请求设备为用户设备,则不执行步骤401,用户设备作为数据请求设备直接向区块链平台发送第一请求,具体此处不做限定。
本申请实施例中,该数据访问是由用户设备发起的,除此之外,也可以是由核心网网元、接入网设备或网络功能实体发起的,若是核心网网元、接入网设备或网络功能实体发起的,则不执行步骤401,具体此处不做限定。
具体地,一种可能的实现方式中,当用户设备需要注册业务时,作为数据请求设备的CRM设备和BOSS就向区块链平台发送第一请求即发起注册交易,该第一请求中包括用户设备的标识、用户设备的信息、数据指针、数据访问策略、用户设备的根公钥和用户的公钥,该第一请求即注册交易由运营商私钥签名。
具体地,一种可能的实现方式中,如图5所示,当网络功能设备需要访问用户数据时,作为数据请求设备的网络功能设备就向区块链平台发送第一请求,该第一请求指示该网络功能设备需要访问数据存储设备中的用户数据,该第一请求中包括用户的相关信息,并且由该第一请求由运营商私钥签名。
403、区块链平台向数据请求设备发送第一许可信息。
区块链平台确定数据请求设备是否可以访问数据存储设备,然后区块链平台向数据请求设备发送第一许可信息,该第一许可信息指示数据请求设备是否可以访问数据存储设备。
一种可能的实现方式中,当访问的类型为读取数据时,该第一许可信息还包括访问的地址,该访问的地址可以是一个数据指针;若访问的类型为读取数据,则第一许可信息包括访问的地址和用户公钥。
具体地,该区块链平台在接收到数据请求设备发送的第一请求之后,根据该第一请求中包括的数据请求设备的签名信息、运营商私钥签名和访问的类型确定该第一请求的权限,区块链平台可以用预先配置的运营商公钥检验该第一请求是否由运营商私钥签名,由于该数字签名信息具有唯一的真实可靠性,即该数字签名可以唯一的确定该数据请求设备,该数字签名用于区块链平台确定是不是该用户设备发起的请求,即确定第一请求的真实性,确定该第一请求是不是该用户设备知晓并经过该用户设备确认的,从而可以确定第一请求对应的权限,即确定发送该第一请求的数据请求设备有没有权限去访问该数据存储设备并使得数据存储设备执行相应的任务。当该区块链确定该数据请求设备可以访问数据存储设备之后,即该第一请求具有相应的权限,区块链平台向数据请求设备发送第一许可信息,该第一许可信息指示 该数据请求设备可以访问数据存储设备,即该第一请求具有其对应的任务相应的权限。
具体地,一种可能的实现方式中,当网络功能设备需要访问用户数据时,区块链平台在接收到第一请求之后,区块链平台会查询分布式账本中用户设备最新的交易信息,从该交易信息中获取用户公钥;然后区块链平台根据该第一请求中包括的数据请求设备的签名信息、运营商私钥签名和访问的类型确定该第一请求的权限,再向数据请求设备发送第一请求消息。若该第一许可信息指示数据请求设备拥有访问数据存储设备的权限,则该第一许可信息中包括数据访问的地址和用户公钥。
404、数据请求设备向数据存储设备发送第二请求。
数据请求设备在收到第一许可信息之后,若该第一许可信息指示数据请求设备拥有访问数据存储设备的权限则数据请求设备得知区块链平台已经确定该数据请求设备可以访问数据存储设备之后,该数据请求设备向数据存储设备发送第二请求,该第二请求指示数据存储设备执行第二请求对应的任务。该第二请求中可以包括用户设备的标识、用户设备的信息、用户的信息、数据指针、数据访问的类型、用户公钥和运营商私钥签名。
一种可能的实现方式中,若该第一许可信息中还包括用户公钥,数据存储设备根据用户公钥确认对称加密密钥,该对称加密密钥与用户公钥和运营商私钥相关。
数据存储设备向区块链平台发送访问验证请求。
数据存储设备在接收到数据请求设备发送的第二请求之后,由于该第二请求指示数据存储设备执行对应的任务,该数据存储设备就需要确认该第二请求是否有与该任务对应的权限,则该数据存储设备向区块链平台发送访问验证请求,该访问验证请求指示数据请求设备向数据存储设备发送了第二请求,该访问验证请求包括该第二请求的相关信息,以使得区块链平台根据该第二请求的相关信息确认该第二请求的权限信息。
406、区块链平台向数据存储设备发送第二许可信息。
区块链平台在接收数据存储设备发送的访问验证请求之后,区块链平台根据该访问验证请求中第二请求的相关信息确认该第二请求是否具有相应的权限,即该数据存储设备是否可以访问该数据存储设备,然后该区块链平台向数据存储设备发送第二许可信息,该第二许可信息可以指示该数据存储设备是否可以执行第二请求对应的任务。
407、数据存储设备接收第二许可信息并执行第二请求对应的任务。
数据存储设备接收区块链平台发送的第二许可信息,该第二许可信息指示该数据存储设备是否可以执行第二请求对应的任务,即该第二请求中包含的签名信息所对应的用户设备具有的权限是否可以使该数据存储设备执行第二请求对应的任务。数据存储设备可以用预先配置的运营商公钥检验该第二请求是否由运营商私钥签名,若该第二许可信息指示该数据存储设备可以执行第二请求对应的任务,数据存储设备在接收到第二许可信息之后就可以执行第二请求对应的任务。
具体地,一种可能的实现方式中,当用户设备需要注册业务时,数据存储设备在接收到第二许可信息后,若该该第二许可信息指示该数据存储设备可以执行第二请求对应的任务,且该第二请求中的运营商私钥签名通过了数据存储设备根据运营商公钥的检验,则该数据存储设备根据对称加密密钥对用户数据进行加密并保存到数据指针对应的地址,该对称加密密钥与用户公钥和运营商私钥相关,例如该对称加密密钥可以是用户公钥与运营商私钥的乘积。
408、数据存储设备向区块链平台发送响应信息。
数据存储设备在执行完第二请求对应的任务之后,就向区块链平台发送响应信息,该响应信息指示数据存储设备已经完成了第二请求对应的任务。该响应信息中包括该任务的相关信息,例如任务的结果信息、发起该任务的用户的标识信息、任务的执行策略和执行该任务的数据存储设备的相关信息。
409、区块链平台接收响应信息并记录在分布式账本中。
区块链平台接收数据存储设备发送的响应信息,该响应信息指示数据存储设备已经完成了第二请求对应的任务,相应地,该响应信息中包括该任务的相关信息,例如任务的结果信息、发起该任务的用户的标识信息、任务的执行策略和执行该任务的数据存储设备的相关信息;然后区块链平台可以将该任务的相关信息广播给区块链平台的每个节点,在所有节点达成共识后,区块链平台将该任务的相关信息记录在区块链平台的不可篡改的分布式账本中。该区块链平台的每个节点都记录了完整的该任务的相关信息,且每个节点的存储都是独立的地位相同的。
410、数据存储设备向数据请求设备发送确认信息。
数据存储设备向数据请求设备发送确认消息,该确认消息指示数据存储设备已经完成了第二请求对应的任务。
具体地,一种可能的实现方式中,若访问的类型为读取数据,该确认消息中包括加密的用户数据,数据请求设备在接收到该加密的用户数据后,可根据对称加密密钥对该加密的用户数据进行解密,从而获得用户数据。
本申请实施例中,数据存储设备可以先执行步骤408,再执行步骤410.也可以先执行步骤410,再执行步骤408,也可以两个两个步骤同时执行,具体此处不做限定。
411、数据存储设备向用户设备发送任务结果信息。
数据存储设备向用户设备发送任务结果信息,该任务结果信息指示数据存请求设备是否已经完成了第三请求对应的任务。
本申请实施例中,运营商侧设备的设备在传递信息时,发送该信息的设备用运营商私钥对需要传递或存储的信息进行签名,接收该消息的设备在接收到该消息后,可以根据运营商公钥对上述签名进行验证。相应地,用户侧的设备在给运营商侧设备的设备传递信息时,用户侧的设备会用用户私钥对需要传递或存储的信息进行签名,接收该消息的运营商侧设备在可以根据用户公钥对上述签名进行验证;相应地,运营商侧设备的设备再给用户侧的设备传递信息时,运营商侧设备的设备会用运营商私钥对需要传递或存储的信息进行签名,接收该消息的用户侧设备在可以根据运营商公钥对上述签名进行验证。
本申请实施例中的运营商侧设备的设备和用户侧的设备在每一次传递数据时都可以根据上述方法进行数据签名认证,也可以不执行数据签名认证,只传递需要传递或存储的信息,具体此处不做限定。本申请实施例中的运营商侧设备的设备包括数据请求设备(不是用户设备时)、区块链平台和数据存储设备,用户侧的设备包括用户设备。
本申请实施例中,数据请求设备发起对于用户数据的访问请求,除此之外,数据请求设备也可以发起对于用户密钥的更新请求,下面具体进行说明:
如图6所示,本申请实施例中用户数据管理方法的另一个流程包括:
601、数据请求设备确定用户第二密钥对和第二对称加密密钥;
数据请求设备生成用户第二密钥对,该用户第二密钥对包括用户第二公钥和用户第二私钥,该用户第二密钥对为新的密钥对,用来替换用户第一密钥对即旧的密钥对。然后,该数据请求设备根据用户第二私钥和运营商公钥确定第二对称加密密钥,该第二对称加密密钥用来替换第一对称加密密钥,该第一对称加密密钥与用户第一私钥和运营商公钥相关。
602、数据请求设备向区块链平台发送第一密钥更新请求。
数据请求设备向区块链平台发送密钥更新请求,密钥更新请求指示数据请求设备需要数据存储设备将与用户第一密钥相关的第一用户数据更新为与用户第二密钥相关的第二用户数据;密钥更新请求包括数据请求设备的签名信息、访问的类型、通过运营商私钥加密的用户第二公钥和用户根私钥签名,该密钥更新请求由用户的根私钥签名。
603、区块链平台确定数据请求设备的权限。
区块链平台在接收到数据请求设备发送的第一密钥更新请求之后,区块链设备确定该请求设备是否有对应的权限。
具体地,该区块链平台查询该用户最新的交易信息,根据该交易信息获取该用户的根公钥和用户之前的公钥即用户第一公钥;然后区块链平台根据该用户的根公钥检验该密钥更新请求是否由用户的根私钥签名,该区块链平台根据该第一密钥更新请求中包括的数据请求设备的签名信息、运营商私钥签名和访问的类型确定该第一密钥更新请求的权限,由于该数字签名信息具有唯一的真实可靠性,即该数字签名可以唯一的确定该数据请求设备,该数字签名用于区块链平台确定是不是该用户设备发起的请求,即确定第一密钥更新请求的真实性,确定该第一密钥更新请求是不是该用户设备知晓并经过该用户设备确认的,从而可以确定第一密钥更新请求对应的权限,即确定发送该第一请求的数据请求设备有没有权限去访问该数据存储设备并使得数据存储设备执行相应的任务。区块链平台还会用运营商私钥对通过运营商私钥加密的用户第二公钥进行解密,从而获得未加密的用户第二公钥。
604、区块链平台向数据存储设备发送第二密钥更新请求。
若区块链平台确定该数据请求设备具有相应的权限,则区块链平台向数据存储设备发送第二密钥更新请求,该第二密钥更新请求指示数据存储设备向该区块链平台发送第一用户数据。该第二密钥更新请求包括第一用户数据所对应的数据地址。
605、区块链平台接收用户数据存储设备发送的第一响应消息。
区块链平台接收数据存储设备发送的第一响应消息,该第一响应消息包括第一用户数据。
606、区块链平台将第一用户数据更新为第二用户数据。
区块链平台将由第一对称加密密钥加密的第一用户数据更新为由第二对称加密密钥加密的第二用户数据,具体地,区块链平台根据第一对称加密密钥对第一用户数据进行解密,然后再将解密后的用户数据通过第二对称加密密钥进行加密从而生成第二用户数据。第一对称加密密钥与用户第一密钥和运营商公钥相关,第二对称加密密钥与用户第二密钥和运营商公钥相关。
607、区块链平台向数据存储设备设备发送第三请求。
区块链平台向数据存储设备设备发送第三请求,第二请求包括第二用户数据和对应的数据指针,第三请求指示数据存储设备将第二用户数据存储到该指针对应的地址。
608、区块链平台接收数据存储设备发送的第二响应消息。
区块链平台接收数据存储设备发送的第二响应消息,第二响应消息指示数据存储设备已经存储第二用户数据。
609、区块链平台接收第二响应信息并记录在分布式账本中。
区块链平台接收数据存储设备发送的第二响应信息,该响应信息指示数据存储设备已经完成了第三请求对应的任务,相应地,该响应信息中包括该任务的相关信息,例如任务的结果信息、发起该任务的用户的标识信息、任务的执行策略和执行该任务的数据存储设备的相关信息;然后区块链平台可以将该任务的相关信息广播给区块链平台的每个节点,在所有节点达成共识后,区块链平台将该任务的相关信息记录在区块链平台的不可篡改的分布式账本中。该区块链平台的每个节点都记录了完整的该任务的相关信息,且每个节点的存储都是独立的地位相同的。
610、区块链平台向数据请求设备发送确认消息。
区块链平台向数据请求设备发送确认消息,该确认消息指示区块链平台已经将第一用户数据更新为第二用户数据。
下面对本申请实施例中的数据请求设备进行描述,请参阅图7,本申请实施例提供的一种数据请求设备700,该数据请求设备可以为上述图4至图5中数据请求设备,该数据请求设备700包括:
第一发送模块701,用于向区块链平台发送第一请求,第一请求指示数据请求设备需要访问数据存储设备,第一请求包括数据请求设备的签名信息、访问的类型和运营商私钥签名;具体实现方式,请参考图4中步骤402中数据请求设备向区块链平台发送第一请求,此处不再赘述。
第一接收模块702,用于接收区块链平台发送的第一许可信息,第一许可信息指示数据请求设备是否拥有访问数据存储设备的权限,权限与数据请求设备的签名信息、访问的类型和运营商公钥有关,运营商公钥与运营商私钥唯一对应;具体实现方式,请参考图4中步骤403中区块链平台向数据请求设备发送第一许可信息,此处不再赘述。
第二发送模块703,用于若第一许可信息指示数据请求设备拥有访问数据存储设备的权限,则向数据存储设备发送第二请求,第二请求包括访问的地址和运营商私钥签名。具体实现方式,请参考图4中步骤404中数据请求设备向数据存储设备发送第二请求,此处不再赘述。
第二接收模块704,用于接收数据存储设备发送的确认信息,确认信息指示数据存储设备已经执行第二请求对应的任务。具体实现方式,请参考图4中步骤410中数据存储设备向数据请求设备发送确认信息,此处不再赘述。
第三接收模块705,用于数据请求设备接收用户设备发送的第三请求,第三请求指示数据请求设备向区块链平台发送第一请求,第三请求包括用户公钥。具体实现方式,请参考图4中步骤401中用户设备向数据请求设备发送第三请求,此处不再赘述。
确定模块706,用于根据用户公钥和运营商私钥确定对称加密密钥。具体实现方式,请参考图4中步骤401中用户设备向数据请求设备发送第三请求,此处不再赘述。
解密模块707,用于数据请求设备根据对称加密密钥对经过加密的用户数据解密。具体 实现方式,请参考图4中步骤410中数据存储设备向数据请求设备发送确认信息,此处不再赘述。
本申请实施例中,运营商侧设备的设备在传递信息时,发送该信息的设备用运营商私钥对需要传递或存储的信息进行签名,接收该消息的设备在接收到该消息后,可以根据运营商公钥对上述签名进行验证。相应地,用户侧的设备在给运营商侧设备的设备传递信息时,用户侧的设备会用用户私钥对需要传递或存储的信息进行签名,接收该消息的运营商侧设备在可以根据用户公钥对上述签名进行验证;相应地,运营商侧设备的设备再给用户侧的设备传递信息时,运营商侧设备的设备会用运营商私钥对需要传递或存储的信息进行签名,接收该消息的用户侧设备在可以根据运营商公钥对上述签名进行验证。
本申请实施例中的运营商侧设备的设备和用户侧的设备在每一次传递数据时都可以根据上述方法进行数据签名认证,也可以不执行数据签名认证,只传递需要传递或存储的信息,具体此处不做限定。本申请实施例中的运营商侧设备的设备包括数据请求设备(不是用户设备时)、区块链平台和数据存储设备,用户侧的设备包括用户设备。
本实施例中,数据请求设备700可以执行前述图4至图5中任一项所示实施例中数据请求设备所执行的操作,具体此处不再赘述。
下面对本申请实施例中的数据存储设备进行描述,请参阅图8,本申请实施例提供的一种数据存储设备800,该数据存储设备可以为上述图4至图5中数据存储设备,该数据存储设备800包括:
第一接收模块801,用于接收数据请求设备的第二请求,第二请求包括访问的地址和运营商私钥签名;具体实现方式,请参考图4中步骤404中数据请求设备向数据存储设备发送第二请求,此处不再赘述。
第一发送模块802,用于向区块链平台发送访问验证请求,访问验证请求指示数据请求设备向数据存储设备发送第二请求;具体实现方式,请参考图4中步骤405中数据存储设备向区块链平台发送访问验证请求,此处不再赘述。
第二接收模块803,用于接收区块链平台发送的第二许可信息,第二许可信息指示数据存储设备是否可以执行第二请求对应的任务;具体实现方式,请参考图4中步骤406中区块链平台向数据存储设备发送第二许可信息,此处不再赘述。
执行模块804,用于若第二许可信息指示数据存储设备可以执行第二请求对应的任务,则根据第二请求执行对应的任务。具体实现方式,请参考图4中步骤407中数据存储设备接收第二许可信息并执行第二请求对应的任务,此处不再赘述。
第二发送模块805,用于向区块链平台发送响应信息,响应信息指示数据存储设备已经执行第二请求对应的任务。具体实现方式,请参考图4中步骤408中数据存储设备向区块链平台发送响应信息,此处不再赘述。
第三发送模块806,用于向数据请求设备发送确认信息,确认信息指示数据存储设备已经执行第二请求对应的任务。具体实现方式,请参考图4中步骤48中数据存储设备向数据请求设备发送确认信息,此处不再赘述。
本实施例中,数据存储设备800可以执行前述图4至图5中任一项所示实施例中数据存储设备所执行的操作,具体此处不再赘述。
下面对本申请实施例中的区块链平台设备进行描述,请参阅图9,本申请实施例提供的一种区块链平台设备900,该区块链平台设备可以为上述图4至图5中区块链平台设备,该区块链平台设备900包括:
第一接收模块901,用于接收数据请求设备发送的第一请求,第一请求指示数据请求设备需要访问数据存储设备,第一请求包括数据请求设备的签名信息、访问的类型和运营商私钥签名;具体实现方式,请参考图4中步骤402中数据请求设备向区块链平台发送第一请求,此处不再赘述。
确定模块902,用于根据数据请求设备的签名信息、访问的类型和运营商私钥签名确定数据请求设备是否可以访问数据存储设备;具体实现方式,请参考图4中步骤403中区块链平台向数据请求设备发送第一许可信息,此处不再赘述。
第一发送模块903,用于向数据请求设备发送第一许可信息,第一许可信息指示数据请求设备是否拥有访问数据存储设备的权限;具体实现方式,请参考图4中步骤403中区块链平台向数据请求设备发送第一许可信息,此处不再赘述。
第二接收模块904,用于接收数据存储设备发送的访问验证请求,访问验证请求指示数据请求设备向数据存储设备发送第二请求;具体实现方式,请参考图4中步骤405中数据存储设备向区块链平台发送访问验证请求,此处不再赘述。
第二发送模块905,用于若区块链平台确定数据请求设备可以访问数据存储设备,则向数据存储设备发送第二许可信息,第二许可信息指示数据存储设备可以执行第二请求对应的任务。具体实现方式,请参考图4中步骤406中区块链平台向数据存储设备发送第二许可信息,此处不再赘述。
第三接收模块906,用于接收数据存储设备发送的响应信息,响应信息指示数据存储设备已经执行第二请求对应的任务;具体实现方式,请参考图4中步骤408中数据存储设备向区块链平台发送响应信息,此处不再赘述。
记入模块907,用于区块链平台根据响应消息将数据存储设备已经执行第二请求对应的任务记入分布式账本。具体实现方式,请参考图4中步骤409中区块链平台接收响应信息并记录在分布式账本中,此处不再赘述。
本实施例中,区块链平台设备900可以执行前述图4至图5中任一项所示实施例中区块链平台设备所执行的操作,具体此处不再赘述。
下面对本申请实施例中的区块链平台设备进行描述,请参阅图10,本申请实施例提供的一种区块链平台设备1000,该区块链平台设备可以为上述图6中区块链平台设备,该区块链平台设备1000包括:
第一接收模块1001,用于接收数据请求设备发送的第一密钥更新请求,第一密钥更新请求指示数据请求设备需要数据存储设备将与用户第一密钥相关的第一用户数据更新为与用户第二密钥相关的第二用户数据;密钥更新请求包括数据请求设备的签名信息、访问的类型、通过运营商私钥加密的用户第二公钥和用户根私钥签名;具体实现方式,请参考图6中步骤602:数据请求设备向区块链平台发送第一密钥更新请求,此处不再赘述。
确定模块1002,用于根据用户的根公钥和用户第一公钥确定数据请求设备是否具有让数据存储设备将第一用户数据更新为第二用户数据的权限;具体实现方式,请参考图6中步骤 603:区块链平台确定数据请求设备的权限,此处不再赘述。
第一发送模块1003,用于若区块链平台确定数据请求设备具有权限,则向数据存储设备发送第二密钥更新请求,第二密钥更新请求指示数据存储设备向区块链平台发送第一用户数据;具体实现方式,请参考图6中步骤604:区块链平台向数据存储设备发送第二密钥更新请求,此处不再赘述。
第二接收模块1004,用于接收数据存储设备发送的第一响应消息,第一响应消息包括第一用户数据;具体实现方式,请参考图6中步骤605:区块链平台接收用户数据存储设备发送的第一响应消息,此处不再赘述。
更新模块1005,用于将由第一对称加密密钥加密的第一用户数据更新为由第二对称加密密钥加密的第二用户数据,第一对称加密密钥与用户第一密钥相关,第二对称加密密钥与用户第二密钥相关;具体实现方式,请参考图6中步骤606:区块链平台将第一用户数据更新为第二用户数据,此处不再赘述。
第二发送模块1006,用于向数据存储设备设备发送第三请求,第三请求包括第二用户数据,第三请求指示数据存储设备存储第二用户数据;具体实现方式,请参考图6中步骤607:区块链平台向数据存储设备设备发送第三请求,此处不再赘述。
第三接收模块1007,用于接收数据存储设备发送的第二响应消息,第二响应消息指示数据存储设备已经存储第二用户数据;具体实现方式,请参考图6中步骤608:区块链平台接收数据存储设备发送的第二响应消息,此处不再赘述。
存储模块1008,用于将数据存储设备已经存储第二用户数据记入分布式账本。具体实现方式,请参考图6中步骤609:区块链平台接收响应信息并记录在分布式账本中,此处不再赘述。
第三发送模块1009,用于向数据请求设备发送确认消息,所示确认消息指示区块链平台已经将第一用户数据更新为第二用户数据。具体实现方式,请参考图6中步骤610:区块链平台向数据请求设备发送确认消息,此处不再赘述。
本实施例中,区块链平台设备1000可以执行前述图6所示实施例中区块链平台设备所执行的操作,具体此处不再赘述。
下面对本申请实施例中的数据请求设备进行描述,请参阅图11,本申请实施例提供的一种数据请求设备1100,该数据请求设备可以为上述图6中数据请求设备,该数据请求设备1100包括:
发送模块1101,用于向区块链平台发送第一密钥更新请求,第一密钥更新请求指示数据请求设备需要数据存储设备将由用户第一密钥加密的第一用户数据更新为由用户第二密钥加密的第二用户数据;第一密钥更新请求包括数据请求设备的签名信息、访问的类型、通过运营商私钥加密的用户新公钥和用户根私钥签名;具体实现方式,请参考图6中步骤601:数据请求设备确定用户第二密钥对和第二对称加密密钥,此处不再赘述。
接收模块1102,用于数据请求设备接收区块链平台发送的确认消息,所示确认消息指示数据存储设备已经将第一用户数据更新为第二用户数据。具体实现方式,请参考图6中步骤610:区块链平台向数据请求设备发送确认消息,此处不再赘述。
图12是本申请实施例提供的一种数据请求设备结构示意图,该数据请求设备1200可以 包括一个或一个以上中央处理器(central processing units,CPU)1201和存储器1205,该存储器1205中存储有一个或一个以上的应用程序或数据。
其中,存储器1205可以是易失性存储或持久存储。存储在存储器1205的程序可以包括一个或一个以上模块,每个模块可以包括对数据请求设备中的一系列指令操作。更进一步地,中央处理器1201可以设置为与存储器1205通信,在数据请求设备1200上执行存储器1205中的一系列指令操作。
其中,中央处理器1201用于执行存储器1205中的计算机程序,以使得数据请求设备1200用于执行:数据请求设备向区块链平台发送第一请求,第一请求指示数据请求设备需要访问数据存储设备,第一请求包括数据请求设备的签名信息、访问的类型和运营商私钥签名;数据请求设备接收区块链平台发送的第一许可信息,第一许可信息指示数据请求设备是否拥有访问数据存储设备的权限,权限与数据请求设备的签名信息、访问的类型和运营商公钥有关,运营商公钥与运营商私钥唯一对应;若第一许可信息指示数据请求设备拥有访问数据存储设备的权限,则数据请求设备向数据存储设备发送第二请求,第二请求包括访问的地址和运营商私钥签名。具体实现方式,请参考图4所示实施例中步骤401-411,此处不再赘述。
数据请求设备1200还可以包括一个或一个以上电源1202,一个或一个以上有线或无线网络接口1203,一个或一个以上输入输出接口1204,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
该数据请求设备1200可以执行前述图4-图5所示的任一个实施例中数据请求设备所执行的操作,具体此处不再赘述。
图13是本申请实施例提供的一种数据存储设备结构示意图,该数据存储设备1300可以包括一个或一个以上中央处理器(central processing units,CPU)1301和存储器1305,该存储器1305中存储有一个或一个以上的应用程序或数据。
其中,存储器1305可以是易失性存储或持久存储。存储在存储器1305的程序可以包括一个或一个以上模块,每个模块可以包括对数据存储设备中的一系列指令操作。更进一步地,中央处理器1301可以设置为与存储器1305通信,在数据存储设备1300上执行存储器1305中的一系列指令操作。
其中,中央处理器1301用于执行存储器1305中的计算机程序,以使得数据存储设备1300用于执行:数据存储设备接收数据请求设备的第二请求,第二请求包括访问的地址和运营商私钥签名;数据存储设备向区块链平台发送访问验证请求,访问验证请求指示数据请求设备向数据存储设备发送第二请求;数据存储设备接收区块链平台发送的第二许可信息,第二许可信息指示数据存储设备是否可以执行第二请求对应的任务;若第二许可信息指示数据存储设备可以执行第二请求对应的任务,则数据存储设备根据第二请求执行对应的任务。具体实现方式,请参考图4所示实施例中步骤401-411,此处不再赘述。
数据存储设备1300还可以包括一个或一个以上电源1302,一个或一个以上有线或无线网络接口1303,一个或一个以上输入输出接口1304,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
该数据存储设备1300可以执行前述图4-图5所示的任一个所示实施例中数据存储设备所执行的操作,具体此处不再赘述。
图14是本申请实施例提供的一种区块链平台设备结构示意图,该区块链平台设备1400可以包括一个或一个以上中央处理器(central processing units,CPU)1401和存储器1405,该存储器1405中存储有一个或一个以上的应用程序或数据。
其中,存储器1405可以是易失性存储或持久存储。存储在存储器1405的程序可以包括一个或一个以上模块,每个模块可以包括对区块链平台设备中的一系列指令操作。更进一步地,中央处理器1401可以设置为与存储器1405通信,在区块链平台设备1400上执行存储器1405中的一系列指令操作。
其中,中央处理器1401用于执行存储器1405中的计算机程序,以使得区块链平台设备1400用于执行:区块链平台接收数据请求设备发送的第一请求,第一请求指示数据请求设备需要访问数据存储设备,第一请求包括数据请求设备的签名信息、访问的类型和运营商私钥签名;区块链平台根据数据请求设备的签名信息、访问的类型和运营商私钥签名确定数据请求设备是否可以访问数据存储设备;区块链平台向数据请求设备发送第一许可信息,第一许可信息指示数据请求设备是否拥有访问数据存储设备的权限;区块链平台接收数据存储设备发送的访问验证请求,访问验证请求指示数据请求设备向数据存储设备发送第二请求;若区块链平台确定数据请求设备可以访问数据存储设备,则区块链平台向数据存储设备发送第二许可信息,第二许可信息指示数据存储设备可以执行第二请求对应的任务。具体实现方式,请参考图4所示实施例中步骤401-411,此处不再赘述。
区块链平台设备1400还可以包括一个或一个以上电源1402,一个或一个以上有线或无线网络接口1403,一个或一个以上输入输出接口1404,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
该区块链平台设备1400可以执行前述图4-图5所示的任一个实施例中区块链平台设备所执行的操作,具体此处不再赘述。
图15是本申请实施例提供的一种区块链平台设备结构示意图,该区块链平台设备1500可以包括一个或一个以上中央处理器(central processing units,CPU)1501和存储器1505,该存储器1505中存储有一个或一个以上的应用程序或数据。
其中,存储器1505可以是易失性存储或持久存储。存储在存储器1505的程序可以包括一个或一个以上模块,每个模块可以包括对区块链平台设备中的一系列指令操作。更进一步地,中央处理器1501可以设置为与存储器1505通信,在区块链平台设备1500上执行存储器1505中的一系列指令操作。
其中,中央处理器1501用于执行存储器1505中的计算机程序,以使得区块链平台设备1500用于执行:区块链平台接收数据请求设备发送的第一密钥更新请求,第一密钥更新请求指示数据请求设备需要数据存储设备将与用户第一密钥相关的第一用户数据更新为与用户第二密钥相关的第二用户数据;密钥更新请求包括数据请求设备的签名信息、访问的类型、通过运营商私钥加密的用户第二公钥和用户根私钥签名;区块链平台根据用户的根公钥和用户第一公钥确定数据请求设备是否具有让数据存储设备将第一用户数据更新为第二用户数据的权限;若区块链平台确定数据请求设备具有权限,则区块链平台向数据存储设备发送第二密钥更新请求,第二密钥更新请求指示数据存储设备向区块链平台发送第一用户数据;区块链平台接收数据存储设备发送的第一响应消息,第一响应消息包括第一用户数据;区块链平台 将由第一对称加密密钥加密的第一用户数据更新为由第二对称加密密钥加密的第二用户数据,第一对称加密密钥与用户第一密钥相关,第二对称加密密钥与用户第二密钥相关;区块链平台向数据存储设备设备发送第三请求,第三请求包括第二用户数据,第三请求指示数据存储设备存储第二用户数据。具体实现方式,请参考图6所示实施例中步骤601-610,此处不再赘述。
区块链平台设备1500还可以包括一个或一个以上电源1502,一个或一个以上有线或无线网络接口1503,一个或一个以上输入输出接口1504,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
该区块链平台设备1500可以执行前述图6所示的任一个实施例中区块链平台设备所执行的操作,具体此处不再赘述。
图16是本申请实施例提供的一种数据请求设备结构示意图,该数据请求设备1600可以包括一个或一个以上中央处理器(central processing units,CPU)1601和存储器1605,该存储器1605中存储有一个或一个以上的应用程序或数据。
其中,存储器1605可以是易失性存储或持久存储。存储在存储器1605的程序可以包括一个或一个以上模块,每个模块可以包括对数据请求设备中的一系列指令操作。更进一步地,中央处理器1601可以设置为与存储器1605通信,在数据请求设备1600上执行存储器1605中的一系列指令操作。
其中,中央处理器1601用于执行存储器1605中的计算机程序,以使得数据请求设备1600用于执行:数据请求设备向区块链平台发送第一密钥更新请求,第一密钥更新请求指示数据请求设备需要数据存储设备将由用户第一密钥加密的第一用户数据更新为由用户第二密钥加密的第二用户数据;第一密钥更新请求包括数据请求设备的签名信息、访问的类型、通过运营商私钥加密的用户新公钥和用户根私钥签名;数据请求设备接收区块链平台发送的确认消息,所示确认消息指示数据存储设备已经将第一用户数据更新为第二用户数据。具体实现方式,请参考图6所示实施例中步骤601-610,此处不再赘述。
数据请求设备1600还可以包括一个或一个以上电源1602,一个或一个以上有线或无线网络接口1603,一个或一个以上输入输出接口1604,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
该数据请求设备1600可以执行前述图6所示的任一个实施例中数据请求设备所执行的操作,具体此处不再赘述。
图17是本申请实施例提供的一种用户数据管理系统1700的结构示意图,该用户数据管理系统1700可以包括数据请求设备1701、数据存储设备1702和区块链平台设备1703,该数据请求设备1701可以执行前述图4-图5所示的任一个实施例中数据请求设备所执行的操作;该数据存储设备1702可以执行前述图4-图5所示的任一个所示实施例中数据存储设备所执行的操作;该区块链平台设备1703可以执行前述图4-图5所示的任一个实施例中区块链平台设备所执行的操作。
图18是本申请实施例提供的一种用户数据管理系统1800的结构示意图,该用户数据管理系统1800可以包括数据请求设备1801、数据存储设备1802和区块链平台设备1803,该数据请求设备1801可以执行前述图4-8所示的任一个实施例中数据请求设备所执行的操作;该 数据存储设备1802可以执行前述图6所示的任一个所示实施例中数据存储设备所执行的操作;该区块链平台设备1803可以执行前述图6所示的任一个实施例中区块链平台设备所执行的操作。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-only memory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (27)

  1. 一种用户数据管理方法,其特征在于,所述方法包括:
    数据请求设备向区块链平台发送第一请求,所述第一请求指示所述数据请求设备需要访问数据存储设备,所述第一请求包括数据请求设备的签名信息和访问的类型;
    所述数据请求设备接收所述区块链平台发送的第一许可信息,所述第一许可信息指示所述数据请求设备是否拥有访问所述数据存储设备的权限,所述权限与所述数据请求设备的签名信息和所述访问的类型有关;
    若所述第一许可信息指示所述数据请求设备拥有访问所述数据存储设备的权限,则所述数据请求设备向所述数据存储设备发送第二请求,所述第二请求包括访问的地址。
  2. 根据权利要求1所述的方法,其特征在于,所述访问的类型包括写入数据和读取数据;
    若所述访问的类型为写入数据,则所述第一请求还包括访问的地址;
    若所述访问的类型为读取数据,则所述第一许可信息包括所述访问的地址。
  3. 根据权利要求1或2所述的方法,其特征在于,在所述数据请求设备向数据存储设备发送第二请求之后,所述方法还包括:
    所述数据请求设备接收所述数据存储设备发送的确认信息,所述确认信息指示所述数据存储设备已经执行所述第二请求对应的任务。
  4. 根据权利要求3所述的方法,其特征在于,在所述数据请求设备向区块链平台发送第一请求,所述方法还包括:
    所述数据请求设备接收用户设备发送的第三请求,所述第三请求指示所述数据请求设备向区块链平台发送第一请求。
  5. 根据权利要求4所述的方法,其特征在于,所述数据请求设备的签名信息包括所述用户设备的签名信息。
  6. 一种用户数据管理方法,其特征在于,所述方法包括:
    数据存储设备接收数据请求设备的第二请求,所述第二请求包括访问的地址;
    所述数据存储设备向区块链平台发送访问验证请求,所述访问验证请求指示所述数据请求设备向所述数据存储设备发送第二请求;
    所述数据存储设备接收所述区块链平台发送的第二许可信息,所述第二许可信息指示所述数据存储设备是否可以执行所述第二请求对应的任务;
    若所述第二许可信息指示所述数据存储设备可以执行所述第二请求对应的任务,则所述数据存储设备根据所述第二请求执行对应的任务。
  7. 根据权利要求6所述的方法,其特征在于,在所述数据存储设备根据所述第二请求执行对应的任务之后,所述方法还包括:
    所述数据存储设备向所述区块链平台发送响应信息,所述响应信息指示所述数据存储设备已经执行所述第二请求对应的任务。
  8. 根据权利要求6或7所述的方法,其特征在于,在所述数据存储设备根据所述第二请求执行对应的任务之后,所述方法还包括:
    所述数据存储设备向所述数据请求设备发送确认信息,所述确认信息指示所述数据存储设备已经执行所述第二请求对应的任务。
  9. 一种用户数据管理方法,其特征在于,所述方法包括:
    区块链平台接收数据请求设备发送的第一请求,所述第一请求指示所述数据请求设备需要访问数据存储设备,所述第一请求包括数据请求设备的签名信息和访问的类型;
    所述区块链平台根据所述数据请求设备的签名信息和访问的类型确定所述数据请求设备是否可以访问所述数据存储设备;
    所述区块链平台向所述数据请求设备发送第一许可信息,所述第一许可信息指示所述数据请求设备是否可以访问所述数据存储设备;
    所述区块链平台接收所述数据存储设备发送的访问验证请求,所述访问验证请求指示所述数据请求设备向所述数据存储设备发送第二请求;
    若所述区块链平台确定所述数据请求设备可以访问所述数据存储设备,则所述区块链平台向所述数据存储设备发送第二许可信息,所述第二许可信息指示所述数据存储设备可以执行所述第二请求对应的任务。
  10. 根据权利要求9所述的方法,其特征在于,在所述区块链平台向所述数据存储设备发送第二许可信息之后,所述方法还包括:
    所述区块链平台接收所述数据存储设备发送的响应信息,所述响应信息指示所述数据存储设备已经执行所述第二请求对应的任务;
    所述区块链平台根据所述响应消息将所述数据存储设备已经执行所述第二请求对应的任务记入分布式账本。
  11. 根据权利要求9或10所述的方法,其特征在于,若所述访问的类型为读取数据,则所述第一许可信息包括所述访问的地址。
  12. 一种数据请求设备,其特征在于,所述数据请求设备包括:
    第一发送模块,用于向区块链平台发送第一请求,所述第一请求指示所述数据请求设备需要访问数据存储设备,所述第一请求包括数据请求设备的签名信息和访问的类型;
    第一接收模块,用于接收所述区块链平台发送的第一许可信息,所述第一许可信息指示所述数据请求设备是否拥有访问所述数据存储设备的权限,所述权限与所述数据请求设备的签名信息和所述访问的类型有关;
    第二发送模块,用于若所述第一许可信息指示所述数据请求设备拥有访问所述数据存储设备的权限,则向所述数据存储设备发送第二请求,所述第二请求包括访问的地址。
  13. 根据权利要求12所述的数据请求设备,其特征在于,所述访问的类型包括写入数据和读取数据;
    若所述访问的类型为写入数据,则所述第一请求还包括访问的地址;
    若所述访问的类型为读取数据,则所述第一许可信息包括所述访问的地址。
  14. 根据权利要求12或13所述的数据请求设备,其特征在于,所述数据请求设备还包括:
    第二接收模块,用于接收所述数据存储设备发送的确认信息,所述确认信息指示所述数据存储设备已经执行所述第二请求对应的任务。
  15. 根据权利要求14所述的数据请求设备,其特征在于,所述数据请求设备还包括:
    第三接收模块,用于接收用户设备发送的第三请求,所述第三请求指示所述数据请求设备向区块链平台发送第一请求。
  16. 一种数据存储设备,其特征在于,所述数据存储设备包括:
    第一接收模块,用于接收数据请求设备的第二请求,所述第二请求包括访问的地址;
    第一发送模块,用于向区块链平台发送访问验证请求,所述访问验证请求指示所述数据请求设备向所述数据存储设备发送第二请求;
    第二接收模块,用于接收所述区块链平台发送的第二许可信息,所述第二许可信息指示所述数据存储设备是否可以执行所述第二请求对应的任务;
    执行模块,用于若所述第二许可信息指示所述数据存储设备可以执行所述第二请求对应的任务,则根据所述第二请求执行对应的任务。
  17. 根据权利要求16所述的数据存储设备,其特征在于,所述数据存储设备还包括:
    第二发送模块,用于向所述区块链平台发送响应信息,所述响应信息指示所述数据存储设备已经执行所述第二请求对应的任务。
  18. 根据权利要求16或17所述的数据存储设备,其特征在于,所述数据存储设备还包括:
    第三发送模块,用于向所述数据请求设备发送确认信息,所述确认信息指示所述数据存储设备已经执行所述第二请求对应的任务。
  19. 一种区块链平台设备,其特征在于,所述区块链平台设备包括:
    第一接收模块,用于接收数据请求设备发送的第一请求,所述第一请求指示所述数据请求设备需要访问数据存储设备,所述第一请求包括数据请求设备的签名信息和访问的类型;
    确定模块,用于根据所述数据请求设备的签名信息和访问的类型确定所述数据请求设备是否可以访问所述数据存储设备;
    第一发送模块,用于向所述数据请求设备发送第一许可信息,所述第一许可信息指示所述数据请求设备是否可以访问所述数据存储设备;
    第二接收模块,用于接收所述数据存储设备发送的访问验证请求,所述访问验证请求指示所述数据请求设备向所述数据存储设备发送第二请求;
    第二发送模块,用于若所述区块链平台设备确定所述数据请求设备可以访问所述数据存储设备,则向所述数据存储设备发送第二许可信息,所述第二许可信息指示所述数据存储设备可以执行所述第二请求对应的任务。
  20. 根据权利要求19所述的区块链平台设备,其特征在于,所述区块链平台设备还包括:
    第三接收模块,用于接收所述数据存储设备发送的响应信息,所述响应信息指示所述数据存储设备已经执行所述第二请求对应的任务;
    记入模块,用于根据所述响应消息将所述数据存储设备已经执行所述第二请求对应的任务记入分布式账本。
  21. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括指令或代码,当所述指令在计算机上执行时,使得所述计算机执行如权利要求1-5任一项所述的方法。
  22. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括指令或代码,当所述指令在计算机上执行时,使得所述计算机执行如权利要求6-8任一项所述的方法。
  23. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括指令或代码,当所述指令在计算机上执行时,使得所述计算机执行如权利要求9-11任一项所述的方法。
  24. 一种计算机程序产品,其特征在于,所述计算机程序包括程序代码,当所述计算机程 序代码被计算机运行时,使得所述计算机执行如权利要求1-5任一项所述的方法。
  25. 一种计算机程序产品,其特征在于,所述计算机程序包括程序代码,当所述计算机程序代码被计算机运行时,使得所述计算机执行如权利要求6-8任一项所述的方法。
  26. 一种计算机程序产品,其特征在于,所述计算机程序包括程序代码,当所述计算机程序代码被计算机运行时,使得所述计算机执行如权利要求9-11任一项所述的方法。
  27. 一种用户数据管理系统,其特征在于,所述用户数据管理系统包括权利要求12-15任一项所述的数据请求设备、权利要求16-18任一项所述的数据存储设备和权利要求19-20任一项所述的区块链平台设备。
PCT/CN2022/086983 2021-06-04 2022-04-15 一种用户数据管理方法以及相关设备 WO2022252845A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/514,095 US20240086562A1 (en) 2021-06-04 2023-11-20 User data management method and related device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110627247.6A CN115438353A (zh) 2021-06-04 2021-06-04 一种用户数据管理方法以及相关设备
CN202110627247.6 2021-06-04

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/514,095 Continuation US20240086562A1 (en) 2021-06-04 2023-11-20 User data management method and related device

Publications (1)

Publication Number Publication Date
WO2022252845A1 true WO2022252845A1 (zh) 2022-12-08

Family

ID=84240456

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/086983 WO2022252845A1 (zh) 2021-06-04 2022-04-15 一种用户数据管理方法以及相关设备

Country Status (3)

Country Link
US (1) US20240086562A1 (zh)
CN (1) CN115438353A (zh)
WO (1) WO2022252845A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116386798B (zh) * 2023-05-23 2023-08-25 肇庆市高要区人民医院 医院信息数据监控系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109509518A (zh) * 2018-10-27 2019-03-22 平安医疗健康管理股份有限公司 电子病历的管理方法、服务器及计算机存储介质
CN111327568A (zh) * 2018-12-14 2020-06-23 中国电信股份有限公司 身份认证方法和系统
CN111428269A (zh) * 2020-03-24 2020-07-17 北京金山云网络技术有限公司 数据访问方法、装置和终端设备
US20200344234A1 (en) * 2019-04-25 2020-10-29 Comcast Cable Communications, Llc Blockchain folding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109509518A (zh) * 2018-10-27 2019-03-22 平安医疗健康管理股份有限公司 电子病历的管理方法、服务器及计算机存储介质
CN111327568A (zh) * 2018-12-14 2020-06-23 中国电信股份有限公司 身份认证方法和系统
US20200344234A1 (en) * 2019-04-25 2020-10-29 Comcast Cable Communications, Llc Blockchain folding
CN111428269A (zh) * 2020-03-24 2020-07-17 北京金山云网络技术有限公司 数据访问方法、装置和终端设备

Also Published As

Publication number Publication date
US20240086562A1 (en) 2024-03-14
CN115438353A (zh) 2022-12-06

Similar Documents

Publication Publication Date Title
KR102117584B1 (ko) 로컬 디바이스 인증
KR101730689B1 (ko) 전자 액세스 클라이언트들을 저장하기 위한 장치 및 방법들
US8059818B2 (en) Accessing protected data on network storage from multiple devices
US9853965B2 (en) Authentication service for third party applications
KR102318637B1 (ko) 데이터 전송 방법, 데이터의 사용 제어 방법 및 암호 장치
JP7421771B2 (ja) Iotサービスを実施するための方法、アプリケーションサーバ、iot装置および媒体
JP2019536329A (ja) デバイスを認証および認可するためのシステムおよび方法
CN110489996B (zh) 一种数据库数据安全管理方法及系统
EP2767029B1 (en) Secure communication
TW201215070A (en) Key Management Systems and methods for shared secret ciphers
EP1999567A2 (en) Proactive credential distribution
JP5992535B2 (ja) 無線idプロビジョニングを実行するための装置及び方法
CN107920081A (zh) 登录认证方法及装置
Xue et al. A blockchain based user subscription data management and access control scheme in mobile communication networks
US20240086562A1 (en) User data management method and related device
KR20130039745A (ko) 인증 연동 시스템 및 방법
US20230007491A1 (en) Managing a subscription identifier associated with a device
WO2022227799A1 (zh) 设备注册方法及装置、计算机设备、存储介质
WO2023273279A1 (zh) 机器人网络认证系统及方法
TWM585941U (zh) 帳戶資料處理系統
WO2022252912A1 (zh) 一种用户数据管理方法以及相关设备
US20220353073A1 (en) Method for authenticating an end-user account, method for single authenticating within a cluster of hsm, and method for implementing access control
JP6293617B2 (ja) 認証制御システム、制御サーバ、認証制御方法、プログラム
WO2023284549A1 (zh) 一种用户数据管理方法以及相关设备
TW202219803A (zh) 可動態調整資料授權政策的去中心化資料授權控管系統

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22814892

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22814892

Country of ref document: EP

Kind code of ref document: A1