Data storage method and device, storage medium and electronic device

CN116248275BActive Publication Date: 2025-08-22HAIER YOUJIA INTELLIGENT TECH (BEIJING) CO LTD +2
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310118789.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-01-30
Publication Date
2025-08-22
Estimated Expiration
2043-01-30

AI Technical Summary

Technical Problem

[0006]本发明实施例提供了一种数据存储方法及装置、存储介质及电子装置,以至少解决数据无法较为安全地进行存储的问题

Benefits of technology

[0017] The present invention determines, from a terminal set, a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition. The computing terminal is then instructed to use secret sharing technology to split the target data to be stored into N sub-data. The N sub-data are then sent to the N data storage terminals for storage. Because the data is split into N sub-data and stored in different terminals using secret sharing technology, even if the sub-data stored on some terminals is leaked, the data is protected from being leaked. This significantly improves data security and privacy, and resolves the issue of data being unable to be stored securely.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116248275B_ABST
    Figure CN116248275B_ABST
Patent Text Reader

Abstract

This application discloses a data storage method and device, a storage medium, and an electronic device, relating to the field of smart home technology. The data storage method includes: determining, from a terminal set, a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition, where N is a positive integer greater than 1; instructing the computing terminal to use a secret sharing technique to split the target data to be stored into the N sub-data; and instructing the computing terminal to send the N sub-data to the N data storage terminals for storage. The above technical solution solves the problem of data storage security issues.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of smart home technology, and more specifically, to a data storage method and device, a storage medium, and an electronic device. Background Art

[0002] With the rapid development of the Internet and the Internet of Things, smart terminals (including mobile devices and smart home devices) have rapidly become popular, and the variety and number of their applications have exploded. At the same time, the data on smart terminals is facing increasing security threats. Once the data is leaked, it will have immeasurable impact on individual users and smart terminal manufacturers. Therefore, protecting the security and privacy of user data is particularly important.

[0003] Currently, data storage and access face the following problems: 1) If data is stored on a single terminal, then if the terminal is lost or attacked by hackers, the security of the data will be difficult to guarantee; if the terminal (such as a home appliance) malfunctions, the data is likely to become inaccessible; 2) If data is uploaded to a third-party cloud platform, the security of the cloud platform cannot be guaranteed; 3) If data is stored on a device with higher security (such as a mobile hard drive), user access to the data will be cumbersome, resulting in a poor user experience.

[0004] With regard to the problem in related technologies that data cannot be stored relatively securely, no effective solution has been proposed so far.

[0005] Therefore, it is necessary to improve the related technology to overcome the above-mentioned defects in the related technology. Summary of the Invention

[0006] Embodiments of the present invention provide a data storage method and device, a storage medium, and an electronic device to at least solve the problem that data cannot be stored relatively securely.

[0007] According to one aspect of an embodiment of the present invention, a data storage method is provided, comprising: determining a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition from a terminal set, wherein N is a positive integer greater than 1; instructing the computing terminal to use a secret sharing technology to split the target data to be stored into the N sub-data; and instructing the computing terminal to send the N sub-data to the N data storage terminals respectively for storage.

[0008] In an exemplary embodiment, determining a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition from a terminal set includes: obtaining terminal information of each terminal in the terminal set, wherein the terminal information includes at least one of the following: hardware information, function information, and operation information; determining a plurality of alternative computing terminals that meet the first preset condition and Z alternative data storage terminals that meet the second preset condition from the terminal set based on the terminal information of each terminal, wherein Z is a positive integer greater than or equal to N; determining the computing terminal from the plurality of alternative computing terminals, and determining the N data storage terminals from the Z alternative data storage terminals.

[0009] In an exemplary embodiment, determining the computing terminal from the multiple alternative computing terminals, and determining the N data storage terminals from the Z alternative data storage terminals, includes: randomly determining an initial computing terminal from the multiple alternative computing terminals, and randomly determining N initial data storage terminals from the Z alternative data storage terminals; using data twin technology to generate a digital computing terminal corresponding to the initial computing terminal, and generating N digital storage terminals corresponding to the N initial data storage terminals, to obtain an initial digital terminal set, wherein the initial digital terminal set includes: the digital computing terminal and the N digital storage terminals; performing a simulation test on the initial digital terminal set to obtain a first test result; when the first test result indicates that the test passed, determining the initial computing terminal as the computing terminal, and determining the N initial data storage terminals as the N data storage terminals.

[0010] In an exemplary embodiment, after obtaining the first test result, the method further includes: when the first test result indicates that the test fails, repeating the following steps until the second test result indicates that the test passes, and determining the computing terminal and N data storage terminals corresponding to the initial digital terminal set: determining the first digital terminal that fails the test from the initial digital terminal set; determining a target terminal of the same terminal type as the first digital terminal from the multiple alternative computing terminals and the Z alternative data storage terminals, and generating a second digital terminal corresponding to the target terminal using data twin technology, wherein the second digital terminal is different from the terminals in the initial digital terminal set, and the terminal types include: computing type, data storage type; replacing the first digital terminal in the initial digital terminal set with the second digital terminal, and performing a simulation test on the initial digital terminal set to obtain a second test result.

[0011] In an exemplary embodiment, a simulation test is performed on the initial digital terminal set to obtain a first test result, including: obtaining first historical operating data of the initial computing terminal, second historical operating data corresponding to each of the N initial data storage terminals, and an operating scenario corresponding to the terminal set; simulating the operating scenario, and instructing the digital computing terminal to perform simulation operation according to the first historical operating data and each of the N digital storage terminals according to the corresponding second historical operating data under the operating scenario, and during the simulation operation of the digital terminals in the initial digital terminal set, instructing the digital computing terminal to use a secret sharing technology to split the target data into N sub-data and send the N sub-data to the N digital storage terminals for storage; monitoring the status of the digital computing terminal and each of the N digital storage terminals to obtain the first test result.

[0012] In an exemplary embodiment, instructing the computing terminal to use a secret sharing technology to split the target data to be stored into the N sub-data, including: determining a threshold value M used by the secret sharing technology, wherein, when the target data is split into N sub-data using the secret sharing technology using the M threshold value, the target data is allowed to be restored by M random sub-data among the N sub-data, and M is a positive integer less than or equal to N; instructing the computing terminal to use the secret sharing technology with the M threshold value to split the target data to be stored into the N sub-data.

[0013] In an exemplary embodiment, after instructing the computing terminal to send the N sub-data to the N data storage terminals for storage respectively, the method further includes: instructing the computing terminal to obtain M sub-data from M data storage terminals among the N data storage terminals when obtaining a data access instruction; using a secret sharing technology to restore the M sub-data into the target data; sending the target data to a display terminal, and displaying the target data on the display terminal, wherein the display terminal is a terminal determined from the terminal set that meets a third preset condition.

[0014] According to another aspect of an embodiment of the present invention, a data storage device is also provided, including: a determination module, used to determine a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition from a terminal set, wherein N is a positive integer greater than 1; a splitting module, used to instruct the computing terminal to use a secret sharing technology to split the target data to be stored into the N sub-data; and a sending module, used to instruct the computing terminal to send the N sub-data to the N data storage terminals respectively for storage.

[0015] According to another aspect of an embodiment of the present invention, a computer-readable storage medium is provided, in which a computer program is stored. The computer program is configured to execute the above data storage method when running.

[0016] According to another aspect of an embodiment of the present invention, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the data storage method through the computer program.

[0017] The present invention determines, from a terminal set, a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition. The computing terminal is then instructed to use secret sharing technology to split the target data to be stored into N sub-data. The N sub-data are then sent to the N data storage terminals for storage. Because the data is split into N sub-data and stored in different terminals using secret sharing technology, even if the sub-data stored on some terminals is leaked, the data is protected from being leaked. This significantly improves data security and privacy, and resolves the issue of data being unable to be stored securely. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0019] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0020] Figure 1 is a schematic diagram of a hardware environment for a data storage method according to an embodiment of the present application;

[0021] Figure 2 is a flowchart of a data storage method according to an embodiment of the present invention;

[0022] Figure 3 is a schematic diagram of a scenario of a data storage method according to an embodiment of the present invention;

[0023] Figure 4 is a structural block diagram of a data storage device according to an embodiment of the present invention (I);

[0024] Figure 5 2 is a structural block diagram of a data storage device according to an embodiment of the present invention. DETAILED DESCRIPTION

[0025] In order to enable those skilled in the art to better understand the present invention, the following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of this application.

[0026] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in a sequence other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0027] According to one aspect of the embodiment of the present application, a data storage method is provided. The data storage method is widely used in smart home (Smart Home), smart home, smart home device ecology, smart home (IntelligenceHouse) ecology and other whole-house intelligent digital control application scenarios. Optionally, in this embodiment, the above data storage method can be applied to Figure 1 In the hardware environment shown in FIG. 1 , which is composed of a terminal device 102 and a server 104. Figure 1 As shown, the server 104 is connected to the terminal device 102 via a network, and can be used to provide services (such as application services, etc.) for the terminal or the client installed on the terminal. A database can be set up on the server or independently of the server to provide data storage services for the server 104. Cloud computing and / or edge computing services can be configured on the server or independently of the server to provide data computing services for the server 104.

[0028] The aforementioned network may include, but is not limited to, at least one of the following: a wired network and a wireless network. The aforementioned wired network may include, but is not limited to, at least one of the following: a wide area network, a metropolitan area network, and a local area network. The aforementioned wireless network may include, but is not limited to, at least one of the following: Wi-Fi (Wireless Fidelity) and Bluetooth. The terminal device 102 may be, but is not limited to, a PC, a mobile phone, a tablet computer, a smart air conditioner, a smart range hood, a smart refrigerator, a smart oven, a smart stove, a smart washing machine, a smart water heater, a smart washing machine, a smart dishwasher, a smart projection device, a smart TV, a smart clothes drying rack, smart curtains, smart audio and video, a smart socket, a smart speaker, a smart fresh air device, smart kitchen and bathroom equipment, smart bathroom equipment, a smart sweeping robot, a smart window cleaning robot, a smart mopping robot, a smart air purifier, a smart steamer, a smart microwave oven, a smart kitchen treasure, a smart purifier, a smart water dispenser, a smart door lock, etc.

[0029] In order to solve the above problem, a data storage method is provided in this embodiment, including but not limited to being applied in the above terminal device 102 or server 104. Figure 2 is a flow chart of a data storage method according to an embodiment of the present invention, the flow comprising the following steps:

[0030] Step S202: determining a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition from the terminal set, where N is a positive integer greater than 1;

[0031] It should be noted that when the data storage method in the embodiments of the present application is applied to the terminal device 102, the terminal device 102 may be a control terminal in a terminal set, configured to collect terminal information (such as hardware information, function information, operating information, etc.) of other terminals in the terminal set and select computing terminals, data storage terminals, and display terminals from the terminal set. As an optional example, the control terminal may be the terminal with the strongest computing capability in the terminal set.

[0032] As an optional example, the first preset condition includes: the computing capability of the terminal meets the corresponding requirements. For example, multiple first hardware indicators related to computing can be set, then the first preset condition is that the terminal needs to simultaneously meet all or a first preset number of first hardware indicators; or the first preset condition is that the first weighted value corresponding to the terminal is greater than the first preset threshold, wherein the first weighted value is obtained by weighted calculation of multiple first hardware indicators.

[0033] As an optional example, the second preset condition includes: the terminal's storage capacity meets corresponding requirements. For example, multiple second hardware indicators related to storage capacity may be set, and the second preset condition is that the terminal must simultaneously meet all or a second preset number of the second hardware indicators; or the second preset condition is that the second weighted value corresponding to the terminal is greater than a second preset threshold, where the second weighted value is calculated by weighting the multiple second hardware indicators.

[0034] As an optional example, the number N may be set by a user, or may be determined based on terminals in the terminal set that meet the second preset condition.

[0035] In this embodiment, the computing terminal and the data storage terminal can be reasonably determined through the above method.

[0036] In an exemplary embodiment, the above step S202 can be implemented according to the following steps S11-S12:

[0037] Step S11: Acquire terminal information of each terminal in the terminal set, wherein the terminal information includes at least one of the following: hardware information, function information, and operation information;

[0038] As an optional example, hardware information includes but is not limited to: chip information, memory information, and storage space size; functional information includes but is not limited to: communication protocols used, interconnection functions, and data display functions; and operational information includes but is not limited to: operating time period and remaining operating time (i.e., the remaining service life of the terminal). As an optional example, terminal information may also include information on the terminal's security capabilities.

[0039] As an optional example, the chip information includes, but is not limited to, the chip model, processing performance, etc. Chips include, but are not limited to, the CPU. Memory information includes, but is not limited to, the memory model, memory read and write speed, etc. Interconnection functions are used to indicate which terminals a terminal is allowed to communicate with and which terminals the terminal is currently connected to.

[0040] Step S12: determining, from the terminal set according to the terminal information of each terminal, a plurality of candidate computing terminals that meet a first preset condition and Z candidate data storage terminals that meet a second preset condition, where Z is a positive integer greater than or equal to N;

[0041] As an optional example, the Z candidate data storage terminals may be all terminals in the terminal set that meet the second preset condition.

[0042] Step S13: Determine the computing terminal from the plurality of candidate computing terminals, and determine the N data storage terminals from the Z candidate data storage terminals.

[0043] In this embodiment, alternative computing terminals and alternative data storage terminals are determined from the terminal set through the terminal information of the terminal, and then the computing terminal and individual data storage terminals are determined from the alternative computing terminals and alternative data storage terminals, so that the determined computing terminals and data storage terminals are more reasonable.

[0044] In an exemplary embodiment, the above step S13 can be implemented by the following steps S131-S134:

[0045] Step S131: randomly determining an initial computing terminal from the plurality of candidate computing terminals, and randomly determining N initial data storage terminals from the Z candidate data storage terminals;

[0046] Step S132: Generate a digital computing terminal corresponding to the initial computing terminal and generate N digital storage terminals corresponding to the N initial data storage terminals using data twin technology, to obtain an initial digital terminal set, wherein the initial digital terminal set includes: the digital computing terminal and the N digital storage terminals;

[0047] It should be noted that digital twinning is a high-tech technology that uses digital means to construct a physical entity that is identical to the digital world, thereby enabling understanding, analysis, and optimization of the entity. Using digital twinning technology, a highly similar digital entity can be "cloned" without changing the original physical entity. The various characteristics of the physical entity can be visualized in the digital world, and different "what-if" scenarios can be simulated on the digital twin. Performance improvements can be made to the physical entity, allowing for advance knowledge of whether a decision will be feasible when applied to the physical entity. Therefore, digital twinning technology can significantly reduce trial and error costs.

[0048] Step S133: performing a simulation test on the initial digital terminal set to obtain a first test result;

[0049] It should be noted that in this embodiment, the purpose of generating an initial digital terminal set through digital twin technology and conducting simulation tests on the initial digital set is to determine whether the determined initial computing terminal and N initial data storage terminals can perform data storage tasks in actual application scenarios.

[0050] In an exemplary embodiment, the simulation test is performed on the initial digital terminal set to obtain the first test result, which can be achieved by the following steps S21-S23:

[0051] Step S21: Acquire the first historical operation data of the initial computing terminal, the second historical operation data corresponding to each of the N initial data storage terminals, and the operation scenario corresponding to the terminal set;

[0052] As an optional example, the first historical operation data can be used to determine the working mode of the initial computing terminal over a period of time, the corresponding working parameters under the working mode, and the control status of the initial computing terminal, etc. It should be noted that the second historical operation data is similar.

[0053] As an optional example, the operating scenarios corresponding to the terminal set include but are not limited to: home scenarios, etc.

[0054] Step S22: simulating the operation scenario, and instructing the digital computing terminal to perform simulation operation according to the first historical operation data and each of the N digital storage terminals to perform simulation operation according to the corresponding second historical operation data under the operation scenario, and instructing the digital computing terminal to use a secret sharing technology to split the target data into N sub-data and send the N sub-data to the N digital storage terminals for storage during the simulation operation of the digital terminals in the initial digital terminal set;

[0055] In this embodiment, the actual states of the initial computing terminal and the initial data storage terminal when performing data storage work can be truly simulated through the above steps S12 and S22.

[0056] Step S23: monitoring the status of the digital computing terminal and each of the N digital storage terminals to obtain a first test result.

[0057] As an optional example, the terminal status includes but is not limited to: terminal stability, terminal performance when performing data storage, etc., and the first test result is obtained based on the terminal status. The first test result is used to indicate which terminals passed the test and which terminals failed the test.

[0058] In this embodiment, the above method can make the first test result obtained more accurate.

[0059] Step S134: when the first test result indicates that the test is passed, the initial computing terminal is determined as the computing terminal, and the N initial data storage terminals are determined as the N data storage terminals.

[0060] It should be noted that if the first test result indicates a pass, this means that if the initial computing terminal is determined as a computing terminal and the N initial data storage terminals are determined as N data storage terminals, then they are capable of subsequently performing data storage. Furthermore, the initial computing terminal is determined as a computing terminal, and the N initial data storage terminals are determined as N data storage terminals.

[0061] In an exemplary embodiment, after executing the above step S133, the following step S135 is further performed:

[0062] Step S135: If the first test result indicates that the test fails, the following steps S1-S3 are repeatedly performed until the second test result indicates that the test passes, and the computing terminals and N data storage terminals corresponding to the initial digital terminal set are determined:

[0063] Step S1: determining a first digital terminal that fails the test from an initial set of digital terminals;

[0064] It should be noted that the first digital terminal is a digital computing terminal or a digital storage terminal.

[0065] Step S2: Determine a target terminal of the same terminal type as the first digital terminal from the multiple candidate computing terminals and the Z candidate data storage terminals, and generate a second digital terminal corresponding to the target terminal using data twin technology, wherein the second digital terminal is different from the terminals in the initial digital terminal set, and the terminal type includes: computing type and data storage type;

[0066] In short, if the first digital terminal is a digital computing terminal, a target terminal is determined from a plurality of candidate computing terminals, wherein the target terminal is different from an initial computing terminal corresponding to the data computing terminal.

[0067] If the first digital terminal is a digital storage terminal, a target terminal is determined from a plurality of candidate data storage terminals, wherein the target terminal is different from the initial data storage terminal corresponding to each digital storage terminal in the initial digital terminal set.

[0068] Step S3: replacing the first digital terminal in the initial digital terminal set with the second digital terminal, and performing a simulation test on the initial digital terminal set to obtain a second test result.

[0069] In this embodiment, the above method can be used to adjust the initial digital terminal set when the first test result indicates that the test fails, thereby quickly determining the computing terminal and N data storage terminals.

[0070] Step S204, instructing the computing terminal to split the target data to be stored into the N sub-data using a secret sharing technology;

[0071] It should be noted that secret sharing is a multi-party secure computing protocol, which means splitting secret information into several shards, which are stored separately by several participants. Through the cooperation of the participants, secure computing is performed on each shard of distributed storage. All shards or shards that reach a threshold number can recover the secret information based on multiple shares.

[0072] In an exemplary embodiment, the above step S204 can be implemented by the following steps S31-S32:

[0073] Step S31: determining a threshold value M used by the secret sharing technique, wherein, when the target data is split into N sub-data using the secret sharing technique using the M-threshold value, the target data is allowed to be restored by M random sub-data among the N sub-data, where M is a positive integer less than or equal to N;

[0074] Step S32: instructing the computing terminal to split the target data to be stored into the N sub-data using the secret sharing technology with an M threshold value.

[0075] In this embodiment, through the above steps S31-S32, it is possible to avoid the situation in which one of the N data storage terminals fails or is attacked during the data storage process, thereby losing the stored sub-data and making the target data unrecoverable.

[0076] Step S206: instruct the computing terminal to send the N sub-data to the N data storage terminals for storage respectively.

[0077] In an exemplary embodiment, after executing the above step S206, the following steps S41-S43 are further performed:

[0078] Step S41: instructing the computing terminal to obtain M sub-data from M data storage terminals among the N data storage terminals when a data access instruction is obtained;

[0079] As an optional example, M data storage terminals may be randomly determined from the N data storage terminals that have not experienced any failure or have been attacked.

[0080] Step S42: restoring the M sub-data into the target data using secret sharing technology;

[0081] Step S43: sending the target data to the display terminal, and displaying the target data on the display terminal, wherein the display terminal is a terminal that meets a third preset condition and is determined from the terminal set.

[0082] As an optional example, the third preset condition includes: the terminal having the best multimedia data display capabilities among the terminal set. Optionally, the display terminal is determined based on the data type of the target data. If the target data type is video, the display terminal is the terminal with the best video playback capabilities among the terminal set.

[0083] As an optional example, when determining the display terminal, as in the above embodiment, the corresponding digital display terminal may be generated first, and then the digital display terminal may be tested in a simulated scenario. The display terminal may be finally determined only if the test result passes.

[0084] For better understanding, Figure 3 Schematic diagram of a data storage method according to an embodiment of the present invention. Figure 3 As shown, after obtaining the target data, the computing terminal splits the target data into multiple sub-data and sends each sub-data to the corresponding data storage terminal for storage; when the computing terminal receives the data access instruction, it obtains the sub-data from multiple data storage terminals respectively, and restores the multiple sub-data into target data, and sends the target data to the display terminal for display.

[0085] Through the above steps, a computing terminal that meets the first preset condition and N data storage terminals that meet the second preset condition are determined from the terminal set. The computing terminal is then instructed to use secret sharing technology to split the target data to be stored into N sub-data, and the N sub-data are sent to the N data storage terminals for storage. Because the data is split into N sub-data and stored in different terminals using secret sharing technology, even if the sub-data stored by some terminals is leaked, the data is protected from being leaked, thereby greatly improving data security and privacy and resolving the problem of data being unable to be stored safely.

[0086] Obviously, the embodiments described above are only part of the embodiments of the present invention, rather than all the embodiments. In order to better understand the above method, the above process is described below in conjunction with the embodiments, but it is not intended to limit the technical solutions of the embodiments of the present invention. Specifically:

[0087] In an optional embodiment, the present application embodiment divides terminals into the following four types:

[0088] (1) Control terminal: collects information of other terminals, such as hardware information, function information, security capability information, etc., and performs calculations through simulated terminals to select computing terminals, display terminals, and shard storage terminals.

[0089] (2) Computing terminal: A terminal that performs secret sharing calculations. It performs secret sharing calculations on the original data (equivalent to the target data), shards the original data, and sends the shards (equivalent to the sub-data) to the shard storage terminal (equivalent to the data storage terminal in the above embodiment). When restoring data, it obtains the shards stored in the shard storage terminal, performs summary calculations on the shards to restore the original data, and sends the restored original data to the display terminal for display. It should be noted that the computing terminal can also be the shard storage terminal.

[0090] (3) Display terminal: displays the original data. It should be noted that the display terminal can also be a shard storage terminal.

[0091] (4) Shard storage terminal: stores the shards generated by the computing terminal.

[0092] In an exemplary embodiment, the present application embodiment has the following process:

[0093] 1. The control terminal obtains the terminal information of N terminals. The terminal information includes but is not limited to the following information:

[0094] a) Hardware parameters: chip type and model, chip security level, memory, available storage space, etc.

[0095] b) Functional parameters: data display function, supported communication protocols, and interconnection function (used to indicate which terminals to interconnect with).

[0096] c) Standby and running time periods (if the terminal is not powered on, the terminal will not be taken into account), and life expiration time.

[0097] 2. The control terminal calculates and selects a set of candidate terminals based on the terminal information;

[0098] a) Computing terminals and shard storage terminals in the candidate terminal set can be selected based on, but not limited to, the following indicators: chip computing power, chip security level, CPU, memory, available space, communication protocol support, and other requirements. Hard indicator values ​​can be set, and if one or more of these values ​​are not met, the terminal will not be considered as a candidate terminal. Alternatively, each indicator can be weighted, and terminals that meet a specific value will be considered as a candidate terminal, otherwise they will not be considered as a candidate terminal.

[0099] b) The display terminals in the candidate terminal set can be selected based on, but not limited to, the ability to display multimedia data such as video, images, and audio. For example, the display terminal can be selected based on the type of multimedia data to be processed and the usage scenario. For example, if audio information is to be displayed, a terminal that supports audio display is selected as the display terminal. Similarly, if video or image display is required, a terminal that supports video or image display is selected as the display terminal.

[0100] c) If a specific communication protocol is selected, there must be at least two terminals in the candidate terminal set that support the protocol.

[0101] d) The terminals in the candidate terminal set should be those with long standby time and long expected scrapping time.

[0102] 3. The control terminal simulates the standby terminal to perform secret sharing operations:

[0103] a) Use digital twin technology to generate digital terminals corresponding to alternative terminals.

[0104] b) Perform secret sharing calculations on digital terminals. Select at least one computing terminal that can satisfy the secret sharing calculation (sharding the original data and summarizing the shards to restore them to the original data).

[0105] c) Select the display terminal according to the scenario.

[0106] d) Select the shard storage terminal.

[0107] e) Select terminals to participate in secret sharing, including at least one computing terminal, one display terminal, and multiple shard storage terminals greater than the number of shards M.

[0108] 4. Control terminal automatically or through user selection of terminal;

[0109] It should be noted that it is necessary to ensure at least 1 computing terminal, 1 display terminal, and multiple shard storage terminals greater than the number of shards M.

[0110] 5. The computing terminal performs secret sharing calculations on the original data and divides the original data into M shards;

[0111] 6. The computing terminal sends the shards to the shard storage terminal respectively and establishes a correspondence between the shards and the shard storage terminal;

[0112] 7. The computing terminal receives a command to access the original data;

[0113] 8. The computing terminal requests the shard data from the shard storage terminal according to the corresponding relationship;

[0114] 9. The shard storage terminal sends the shards it has saved to the computing terminal;

[0115] 10. After receiving all the shards, the computing terminal aggregates and calculates to generate the original data;

[0116] 11. The computing terminal sends the original data to the display terminal for display.

[0117] For a better understanding, as an optional example, a home smart gateway can act as a control terminal to obtain information from users' mobile phones, watches, smart refrigerators, smart TVs, and other terminals. It then generates corresponding digital terminals and uses them to simulate the sharding and aggregated calculations, data transmission, and data storage processes involved in secret sharing. The mobile phone serves as the computing terminal (which can also be a sharding storage terminal), the watch and smart refrigerator serve as sharding storage terminals, and the smart TV serves as the display terminal. The mobile phone divides the original data into four slices, with the mobile phone, watch, refrigerator, and TV each storing one slice. When a user requests data, the mobile phone obtains the slices stored by the watch, refrigerator, and TV, performs aggregated calculations to restore them to the original data, and then sends the original data to the smart TV (display terminal) for display.

[0118] In short, in an embodiment of the present application, the control terminal obtains information of other terminals, generates a corresponding digital terminal, uses the digital terminal to simulate secret sharing calculation, data transmission, and data storage, and then selects the computing terminal, display terminal, and shard storage terminal based on the simulation results; the computing terminal performs secret sharing calculation on the original data and sends the shards to the shard storage terminal for storage; when restoring the original data, the computing terminal obtains the shards of the shard storage terminal, performs shard aggregation calculation to obtain the original data, and sends the original data to the display terminal for display.

[0119] The technical solution proposed in this application converts the original data into N copies of secret data and stores them in different terminals. When the data stored in some terminals is leaked, the complete original data will not be leaked. At the same time, the original data can only be accessed if specific requirements are met, thereby greatly improving the security and privacy of the original data.

[0120] Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for enabling a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods of various embodiments of the present invention.

[0121] In this embodiment, a data storage device is also provided, which is used to implement the above-mentioned embodiments and preferred embodiments. Details already described will not be repeated here. As used below, the term "module" may refer to a combination of software and / or hardware that implements a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, implementation using hardware, or a combination of software and hardware, is also possible and contemplated.

[0122] Figure 4 FIG1 is a block diagram of a data storage device according to an embodiment of the present invention (I), the device comprising:

[0123] A determination module 42 is configured to determine, from the terminal set, a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition, where N is a positive integer greater than 1;

[0124] a splitting module 44, configured to instruct the computing terminal to split the target data to be stored into the N sub-data using a secret sharing technique;

[0125] The sending module 46 is configured to instruct the computing terminal to send the N sub-data to the N data storage terminals for storage.

[0126] The above-described apparatus determines, from a terminal set, a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition. The computing terminal is then instructed to use secret sharing technology to split the target data to be stored into N sub-data. The N sub-data are then sent to the N data storage terminals for storage. Because the data is split into N sub-data and stored on different terminals using secret sharing technology, even if the sub-data stored on some terminals is leaked, the data is protected from further disclosure. This significantly improves data security and privacy, and resolves the issue of data being unable to be stored securely.

[0127] In an exemplary embodiment, the determination module 42 is further used to obtain terminal information of each terminal in the terminal set, wherein the terminal information includes at least one of the following: hardware information, function information, and operation information; determine a plurality of alternative computing terminals that meet a first preset condition and Z alternative data storage terminals that meet a second preset condition from the terminal set based on the terminal information of each terminal, wherein Z is a positive integer greater than or equal to N; determine the computing terminal from the plurality of alternative computing terminals, and determine the N data storage terminals from the Z alternative data storage terminals.

[0128] In an exemplary embodiment, the determination module 42 is also used to randomly determine an initial computing terminal from the multiple alternative computing terminals, and randomly determine N initial data storage terminals from the Z alternative data storage terminals; use data twin technology to generate a digital computing terminal corresponding to the initial computing terminal, and generate N digital storage terminals corresponding to the N initial data storage terminals to obtain an initial digital terminal set, wherein the initial digital terminal set includes: the digital computing terminal, the N digital storage terminals; perform a simulation test on the initial digital terminal set to obtain a first test result; when the first test result indicates that the test passed, determine the initial computing terminal as the computing terminal, and determine the N initial data storage terminals as the N data storage terminals.

[0129] In an exemplary embodiment, the determination module 42 is also used to, after obtaining the first test result, repeat the following steps when the first test result indicates that the test failed, until the second test result indicates that the test passed, and determine the computing terminal and N data storage terminals corresponding to the initial digital terminal set: determine the first digital terminal that failed the test from the initial digital terminal set; determine a target terminal with the same terminal type as the first digital terminal from the multiple alternative computing terminals and the Z alternative data storage terminals, and generate a second digital terminal corresponding to the target terminal using data twin technology, wherein the second digital terminal is different from the terminals in the initial digital terminal set, and the terminal types include: computing type, data storage type; replace the first digital terminal in the initial digital terminal set with the second digital terminal, and perform a simulation test on the initial digital terminal set to obtain a second test result.

[0130] In an exemplary embodiment, the determination module 42 is further used to obtain the first historical operation data of the initial computing terminal, the second historical operation data corresponding to each of the N initial data storage terminals, and the operation scenario corresponding to the terminal set; simulate the operation scenario, and instruct the digital computing terminal to perform simulation operation according to the first historical operation data and each of the N digital storage terminals according to the corresponding second historical operation data under the operation scenario, and during the simulation operation of the digital terminals in the initial digital terminal set, instruct the digital computing terminal to use secret sharing technology to split the target data into N sub-data and send the N sub-data to the N digital storage terminals for storage; monitor the status of the digital computing terminal and each of the N digital storage terminals to obtain a first test result.

[0131] In an exemplary embodiment, the splitting module 44 is further used to determine the threshold value M used by the secret sharing technology, wherein, when the target data is split into N sub-data using the secret sharing technology using the M threshold value, the target data is allowed to be restored by M random sub-data among the N sub-data, and M is a positive integer less than or equal to N; and instruct the computing terminal to use the secret sharing technology with the M threshold value to split the target data to be stored into the N sub-data.

[0132] In an exemplary embodiment, Figure 5 : is a structural block diagram (II) of a data storage device according to an embodiment of the present invention, the device also includes: a display module 48, which is used to instruct the computing terminal to send the N sub-data to the N data storage terminals for storage respectively, and then instruct the computing terminal to obtain M sub-data from M data storage terminals among the N data storage terminals when a data access instruction is obtained; use secret sharing technology to restore the M sub-data into the target data; send the target data to the display terminal, and display the target data on the display terminal, wherein the display terminal is a terminal determined from the terminal set that meets the third preset condition.

[0133] An embodiment of the present invention further provides a computer-readable storage medium, in which a computer program is stored. The computer program is configured to execute the steps of any one of the above method embodiments when running.

[0134] Optionally, in this embodiment, the storage medium may be configured to store a computer program for performing the following steps:

[0135] S1, determining a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition from a terminal set, where N is a positive integer greater than 1;

[0136] S2, instructing the computing terminal to split the target data to be stored into the N sub-data using a secret sharing technology;

[0137] S3, instructing the computing terminal to send the N sub-data to the N data storage terminals for storage respectively.

[0138] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk.

[0139] For specific examples in this embodiment, reference may be made to the examples described in the above embodiments and exemplary implementation modes, and this embodiment will not be described in detail here.

[0140] An embodiment of the present invention further provides an electronic device, comprising a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to execute the steps in any one of the above method embodiments.

[0141] Optionally, in this embodiment, the processor may be configured to execute the following steps through a computer program:

[0142] S1, determining a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition from a terminal set, where N is a positive integer greater than 1;

[0143] S2, instructing the computing terminal to split the target data to be stored into the N sub-data using a secret sharing technology;

[0144] S3, instructing the computing terminal to send the N sub-data to the N data storage terminals for storage respectively.

[0145] In an exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor, and the input / output device is connected to the processor.

[0146] For specific examples in this embodiment, reference may be made to the examples described in the above embodiments and exemplary implementation modes, and this embodiment will not be described in detail here.

[0147] Obviously, those skilled in the art will appreciate that the various modules or steps of the present invention described above can be implemented using a general-purpose computing device, can be centralized on a single computing device, or can be distributed across a network of multiple computing devices. They can be implemented using program code executable by the computing device, and thus, can be stored in a storage device and executed by the computing device. In some cases, the steps shown or described herein can be performed in a different order than that shown, or can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, the present invention is not limited to any particular combination of hardware and software.

[0148] The above is only a preferred embodiment of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.

Claims

1. A data storage method, characterized in that: include: Determining, from the terminal set, a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition, where N is a positive integer greater than 1; Instructing the computing terminal to split the target data to be stored into the N sub-data using a secret sharing technology; instructing the computing terminal to send the N sub-data to the N data storage terminals for storage respectively; The step of determining a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition from the terminal set includes: Acquire terminal information of each terminal in the terminal set, wherein the terminal information includes at least one of the following: hardware information, function information, and operation information; Determining, from the terminal set according to the terminal information of each terminal, a plurality of candidate computing terminals that meet a first preset condition and Z candidate data storage terminals that meet a second preset condition, where Z is a positive integer greater than N; Randomly determine an initial computing terminal from the plurality of candidate computing terminals, and randomly determine N initial data storage terminals from the Z candidate data storage terminals; Using data twin technology to generate a digital computing terminal corresponding to the initial computing terminal, and generating N digital storage terminals corresponding to the N initial data storage terminals, to obtain an initial digital terminal set, wherein the initial digital terminal set includes: the digital computing terminal and the N digital storage terminals; Acquire first historical operation data of the initial computing terminal, second historical operation data corresponding to each of the N initial data storage terminals, and an operation scenario corresponding to the terminal set; Simulating the operation scenario, and instructing the digital computing terminal to perform a simulation operation according to the first historical operation data and each of the N digital storage terminals to perform a simulation operation according to the corresponding second historical operation data under the operation scenario, and during the simulation operation of the digital terminals in the initial digital terminal set, instructing the digital computing terminal to use a secret sharing technology to split the target data into N sub-data and send the N sub-data to the N digital storage terminals for storage; monitoring a status of the digital computing terminal and each of the N digital storage terminals to obtain a first test result; In a case where the first test result indicates that the test is passed, the initial computing terminal is determined as the computing terminal, and the N initial data storage terminals are determined as the N data storage terminals.

2. The method according to claim 1, characterized in that After obtaining the first test result, the method further includes: If the first test result indicates that the test fails, the following steps are repeated until the second test result indicates that the test passes, and the computing terminal and N data storage terminals corresponding to the initial digital terminal set are determined: determining a first digital terminal from the initial set of digital terminals that fails the test; Determine a target terminal of the same terminal type as the first digital terminal from the multiple candidate computing terminals and the Z candidate data storage terminals, and generate a second digital terminal corresponding to the target terminal using data twin technology, wherein the second digital terminal is different from any terminal in the initial digital terminal set, and the terminal type includes: computing type and data storage type; The first digital terminal in the initial digital terminal set is replaced by the second digital terminal, and a simulation test is performed on the initial digital terminal set to obtain a second test result.

3. The method according to claim 1, characterized in that Instructing the computing terminal to split the target data to be stored into the N sub-data using a secret sharing technology includes: Determining a threshold value M used by the secret sharing technique, wherein, when the target data is split into N sub-data using the secret sharing technique using the M-threshold value, the target data can be restored by M random sub-data among the N sub-data, where M is a positive integer less than or equal to N; The computing terminal is instructed to use a secret sharing technology with an M threshold value to split the target data to be stored into the N sub-data.

4. The method according to claim 3, characterized in that After instructing the computing terminal to send the N sub-data to the N data storage terminals for storage, the method further includes: instructing the computing terminal to obtain M sub-data from M data storage terminals among the N data storage terminals when a data access instruction is obtained; Restoring the M sub-data into the target data using a secret sharing technique; The target data is sent to a display terminal, and the target data is displayed on the display terminal, wherein the display terminal is a terminal determined from the terminal set and meeting a third preset condition.

5. A data storage device, characterized in that include: a determination module, configured to determine, from the terminal set, a computing terminal that meets a first preset condition and N data storage terminals that meet a second preset condition, wherein N is a positive integer greater than 1; a splitting module, configured to instruct the computing terminal to split the target data to be stored into the N sub-data using a secret sharing technology; A sending module, configured to instruct the computing terminal to send the N sub-data to the N data storage terminals for storage; The determination module is further used to obtain terminal information of each terminal in the terminal set, wherein the terminal information includes at least one of the following: hardware information, function information, and operation information; determine from the terminal set a plurality of alternative computing terminals that meet a first preset condition and Z alternative data storage terminals that meet a second preset condition based on the terminal information of each terminal, wherein Z is a positive integer greater than N; randomly determine an initial computing terminal from the plurality of alternative computing terminals, and randomly determine N initial data storage terminals from the Z alternative data storage terminals; use data twin technology to generate a digital computing terminal corresponding to the initial computing terminal, and generate N digital storage terminals corresponding to the N initial data storage terminals to obtain an initial digital terminal set, wherein the initial digital terminal set includes: the digital computing terminal, the N digital storage terminals; obtain the first historical operation data of the initial computing terminal, the N The system comprises the following steps: first, a digital computing terminal and a plurality of digital storage terminals, each of which is a plurality of digital storage terminals in the initial data storage terminal set; second historical operating data corresponding to each initial data storage terminal in the initial data storage terminal, and an operating scenario corresponding to the terminal set; simulating the operating scenario, and instructing the digital computing terminal to perform a simulated operation according to the first historical operating data and each of the N digital storage terminals according to the corresponding second historical operating data under the operating scenario, and instructing the digital computing terminal to use a secret sharing technology to split the target data into N sub-data and send the N sub-data to the N digital storage terminals for storage during the simulated operation of the digital terminals in the initial digital terminal set; monitoring the status of the digital computing terminal and each of the N digital storage terminals to obtain a first test result; and when the first test result indicates that the test is passed, determining the initial computing terminal as the computing terminal, and determining the N initial data storage terminals as the N data storage terminals.

6. A computer-readable storage medium, characterized in that The computer-readable storage medium includes a stored program, wherein the program executes the method according to any one of claims 1 to 4 when executed.

7. An electronic device comprising a memory and a processor, characterized in that: A computer program is stored in the memory, and the processor is configured to execute the method according to any one of claims 1 to 4 through the computer program.

Citation Information

Patent Citations

  • Biological characteristic data distributed storage and authentication method and system

    CN114546246A

  • Image processing apparatus for checking unauthorized access to information and method of performing the same

    US20090158052A1