Data flow method and device based on distributed file system and storage medium
By using a distributed file system to establish data ownership through hash values and storing data hash values on the blockchain, the problems of data copyright ownership and circulation are solved, blockchain performance and data circulation are improved, and data sharing is incentivized.
Patent Information
- Application Number
- CN202310147745.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-22
- Publication Date
- 2026-02-17
- Estimated Expiration
- 2043-02-22
AI Technical Summary
Existing technologies cannot simultaneously meet the needs of data copyright confirmation, data circulation, and data storage, especially since directly storing large file data on the blockchain is inefficient and lacks a quantitative evaluation mechanism.
By using a distributed file system to determine data ownership through hash values and storing the hash values of the determined data on the blockchain, large file data can be avoided by directly storing them. At the same time, data sharing nodes can share the profits, increasing users' willingness to share.
It improves blockchain performance, enhances data circulation, ensures the confirmation and storage of data copyright, incentivizes data sharing, and realizes the assetization of data circulation.
Smart Images

Figure CN116305000B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of information technology, in particular to a data circulation method and device based on a distributed file system and a storage medium. BACKGROUND
[0002] Data has become the fifth production factor in addition to land, capital, labor and technology, and plays a decisive role in digital production. As an integration of asymmetric encryption, distributed computing, hash pointer, Merkle tree and digital signature, blockchain can run through the whole life cycle of data right, storage, circulation and use. Most of the existing digital copyright technologies extract the feature code of digital copyright as the ID of the copyright and store it in the blockchain. Then, the feature code of the digital resource extracted by the whole network is compared with the feature code stored in the blockchain, and the high similarity is judged as plagiarism. However, for all copyright data, especially large file data, direct storage in the blockchain has the problem of low efficiency, and the storage and circulation value of copyright data lacks a quantitative evaluation mechanism. In the prior art, the BitSwap protocol in the IPFS (InterPlanetary File System) and other distributed file systems defines data exchange rules, manages the distribution of data, and promotes a tradable data market through an incentive mechanism. BitSwap can provide a data-level solution for data storage and circulation, but it still lacks a mechanism for assetization of digital copyright right and circulation.
[0003] In view of the technical problems in the prior art that data copyright right, data circulation and data storage cannot be satisfied at the same time, no effective solution has been proposed so far. SUMMARY
[0004] Embodiments of the present application provide a data circulation method and device based on a distributed file system and a storage medium to at least solve the technical problem in the prior art that data copyright right, data circulation and data storage cannot be satisfied at the same time.
[0005] According to one aspect of an embodiment of the present application, a data circulation method based on a distributed file system is provided, comprising: a first data owner node performing right confirmation on data copyright of a first data owned by the first data owner node through a distributed file system; the first data owner node storing the right-confirmed first data to a blockchain system; and a data user node acquiring data copyright of the first data according to right confirmation information of the first data.
[0006] According to another aspect of an embodiment of the present application, a storage medium is also provided, which comprises a stored program, wherein the program is executed by a processor when the program is running to perform the method of any one of the above.
[0007] According to another aspect of the embodiments of the present application, a data circulation device based on a distributed file system is also provided, comprising: a data right confirmation module, configured to confirm, by a first data owner node, data copyright of owned first data through a distributed file system; a data storage module, configured to store, by the first data owner node, the confirmed first data to a block chain system; and a data copyright acquisition module, configured to acquire, by a data user node, the data copyright of the first data according to the confirmation information of the first data.
[0008] According to another aspect of the embodiments of the present application, a data circulation device based on a distributed file system is also provided, comprising: a processor; and a memory connected with the processor, configured to provide the processor with instructions for processing the following processing steps: confirming, by a first data owner node, data copyright of owned first data through a distributed file system; storing, by the first data owner node, the confirmed first data to a block chain system; and acquiring, by a data user node, the data copyright of the first data according to the confirmation information of the first data.
[0009] In the embodiments of the present application, the data to be confirmed is confirmed by using the comparison of hash values through a distributed file system, and the hash value of the confirmed data is stored on a block chain, thereby avoiding the direct storage of large file data and improving the performance of the block chain. Moreover, the technical solution improves the willingness of users to share data by means of the sharing of nodes, thereby enhancing the data circulation. Further, the technical problem of being unable to simultaneously satisfy data copyright confirmation, data circulation and data storage in the prior art is solved. BRIEF DESCRIPTION OF DRAWINGS
[0010] The accompanying drawings, which are included to provide a further understanding of the present application, constitute a part of the present application and illustrate the illustrative embodiments of the present application and their description serve to explain the present application, and do not constitute improper limitations on the present application. In the drawings:
[0011] Figure 1 is a hardware structure block diagram of a computing device for implementing the method according to the first embodiment of the present application;
[0012] Figure 2 is a schematic diagram of the data circulation system based on the distributed file system according to the first embodiment of the present application;
[0013] Figure 3 is a flowchart of the data circulation method based on the distributed file system according to the first aspect of the first embodiment of the present application;
[0014] Figure 4a is another partial flowchart of the data circulation method based on the distributed file system according to the first aspect of the first embodiment of the present application;
[0015] Figure 4b is another another part flow diagram of the data flow method based on the distributed file system according to the first aspect of the embodiment 1 of the present application;
[0016] Figure 5 is a schematic diagram of the data flow device based on the distributed file system according to the embodiment 2 of the present application; and
[0017] Figure 6 is a schematic diagram of the data flow device based on the distributed file system according to the embodiment 3 of the present application. DETAILED DESCRIPTION
[0018] In order to make the personnel in the technical field better understand the technical solutions of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below in combination with the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by the person skilled in the art without making creative labor should belong to the scope of protection of the present application.
[0019] It should be noted that the terms "first", "second" and the like in the specification and claims of the present application and the above-described drawings are used to distinguish similar objects, and do not necessarily indicate a specific order or a chronological sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method, system, product or device including a series of steps or units does not have to be limited to those steps or units clearly listed, but can include other steps or units not clearly listed or inherent to these processes, methods, products or devices.
[0020] Embodiment 1
[0021] According to the present embodiment, a method embodiment of a data flow method based on a distributed file system is provided. It should be noted that the steps shown in the flowchart of the drawings can be executed in a computer system such as a set of computer executable instructions, and although the logical order is shown in the flowchart, in some cases, the steps shown or described herein can be executed in an order different from that herein.
[0022] The method embodiment provided by the present embodiment can be executed in a mobile terminal, a computer terminal, a server or a similar computing device. Figure 1A hardware structure block diagram of a computing device for implementing a data flow method based on a distributed file system is shown. As shown in Figure 1 the computing device can include one or more processors (the processor can include but not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory for storing data, and a transmission device for communication functions. In addition, it can also include a display, an input / output interface (I / O interface), a universal serial bus (USB) port (which can be included as one of the ports of the I / O interface), a network interface, a power supply and / or a camera. Those skilled in the art can understand that Figure 1 the structure shown is only schematic, which does not limit the structure of the above-mentioned electronic device. For example, the computing device can include more or fewer components than those shown in Figure 1 or have a different configuration than that shown in Figure 1 .
[0023] It should be noted that the one or more processors and / or other data processing circuits described above can be referred to herein as "data processing circuits" in general. The data processing circuit can be embodied in whole or in part as software, hardware, firmware or any other combination. In addition, the data processing circuit can be a single independent processing module, or all or part of it can be incorporated into any one of the other elements in the computing device. As referred to in the embodiments of the present application, the data processing circuit serves as a processor to control (for example, selection of a variable resistance terminal path connected to an interface).
[0024] The memory can be used to store software programs and modules of application software, such as program instructions / data storage means corresponding to the data flow method based on a distributed file system in the embodiments of the present application. The processor executes various functional applications and data processing by running the software programs and modules stored in the memory, that is, implements the data flow method based on a distributed file system of the application program described above. The memory can include a high-speed random access memory, and can also include a non-volatile memory such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory can further include a memory remotely located with respect to the processor, which can be connected to the computing device through a network. Examples of the above-mentioned network include but are not limited to the Internet, an intranet, a local area network, a mobile communication network and a combination thereof.
[0025] The transmission device is configured to receive or transmit data via a network. The network can include, for example, a wireless network provided by a communication provider of the computing device. In one example, the transmission device includes a network interface controller (NIC) that can connect to other network devices through a base station to communicate with the Internet. In one example, the transmission device can be a radio frequency (RF) module that is configured to communicate with the Internet wirelessly.
[0026] The display can be, for example, a touch screen liquid crystal display (LCD) that enables a user to interact with a user interface of the computing device.
[0027] It is noted that in some alternative embodiments, the above-described Figure 1 The computing device can include hardware elements (including circuitry), software elements (including computer code stored on a computer readable medium), or a combination of both hardware and software elements. It should be noted that in some embodiments, one or more of the functions described above can be implemented using software instructions that can be stored in memory and executed by a processing element of the computing device. Figure 1 is merely one example of a particular implementation and is intended to illustrate the types of components that can be present in the computing device described above.
[0028] Figure 2 is a schematic diagram of a data flow system based on a distributed file system according to the present embodiment. Referring to Figure 2 The system includes a distributed file system 100 and a blockchain system 200. The distributed file system 100 can be, for example, an InterPlanetary File System (IPFS) that includes nodes 110-140. The nodes 110 and 140 are data owner nodes, the node 120 is a data user node, and the node 130 is an issuing agent node.
[0029] The data owner nodes 110 and 140 are configured to authenticate data that they need to publish, share the authenticated data that they own to the data user node 120 and the issuing agent node 130, and collect copyright fees from nodes that need to obtain the data through the blockchain system 200.
[0030] The data user node 140 is configured to obtain data from the data owner nodes 110 and 140 or the issuing agent node 130 and pay the corresponding copyright fees through the blockchain system 200.
[0031] The issuing agent node 130 is configured to obtain data from the data owner nodes 110 and 140 and send the data to the data user node 120.
[0032] The data owner nodes 110 and 140, the data user node 120, and the issuing agent node 130 are all nodes in the distributed file system 100, and the roles of the nodes are not unique. For example, the node 110 in the scenario of the embodiment can be a data owner node, but can also be a data user node or an issuing agent node in other scenarios. The node 120 in the scenario of the embodiment can be a data user node, and can also be a data owner node or an issuing agent node. The node 130 can be an issuing agent node, and can also be a data owner node or a data user node.
[0033] The blockchain system 200 is configured to store the data authorized by the data owner nodes 110 and 140, and to record the copyright fees of the nodes in the distributed file system 100.
[0034] It should be noted that the distributed file system 100 and the blockchain system 200 in the system can all adopt the hardware structure described above.
[0035] In the above operating environment, according to a first aspect of the embodiment, a data circulation method based on a distributed file system is provided. Figure 3 A flowchart of the method is shown. As shown in Figure 3 The method comprises the following steps.
[0036] S302: The first data owner node authorizes the data copyright of the first data owned by the first data owner node through the distributed file system.
[0037] S304: The first data owner node stores the authorized first data in the blockchain system; and
[0038] S306: The data user node acquires the data copyright of the first data according to the authorization information of the first data.
[0039] Specifically, the node 110 (i.e., the first data owner node) owns a certain data (i.e., the first data), and then the node 110 (i.e., the first data owner node) publishes the first data in the distributed file system 100 by authorizing the data copyright of the first data. The distributed file system 100 is, for example, an IPFS distributed file system.
[0040] More specifically, the node 110 (i.e., the first data owner node) generates a hash value of the first data, and searches in the distributed file system 100 according to the hash value of the first data, so as to determine whether there is the same data as the first data in the distributed file system 100. When the node 110 (i.e., the first data owner node) does not search the same data as the first data in the distributed file system 100, the data copyright of the first data is certified. When the node 110 (i.e., the first data owner node) searches the same data as the first data in the distributed file system 100, it is determined that the first data has data copyright in the distributed file system 100 (S302).
[0041] Further, after the node 110 (i.e., the first data owner node) certifies the data copyright of the first data, the hash value of the certified first data and the ID of the node 110 (i.e., the first data owner node) are stored in the blockchain system (S304).
[0042] Further, for example, the node 110 (i.e., the first data owner node) has certified the first data in the distributed file system 100, thereby completing the publishing of the first data in the distributed file system 100. After that, the node 110 (i.e., the first data owner node) broadcasts the information that the first data has been published, and then other nodes receive the information that the first data has been certified, so that other nodes can request the node 110 (i.e., the first data owner node) to obtain the first data.
[0043] When the node 120 (i.e., the data user node) needs to obtain the first data, it will pay the corresponding copyright fee to the node 110 (i.e., the first data owner node) to obtain the first data. The copyright fee paid by the node 120 (i.e., the data user node) to obtain the first data is set by the node 110 (i.e., the first data owner node). And in the case that the node 120 (i.e., the data user node) obtains the first data, it can also share the first data as an issuing agent to other nodes. For example, other nodes obtain the first data from the node 120, and the node 120 shares the first data with the node, and charges the node a copyright fee for sharing the first data, thereby obtaining a share of the first data (S306).
[0044] As described in the background, data has become the fifth production factor in addition to land, capital, labor and technology, and plays a decisive role in digital production. As an integration of asymmetric encryption, distributed computing, hash pointer, Merkle tree and digital signature, blockchain can run through the whole life cycle of data rights, storage, circulation and use. Most of the existing digital copyright technologies extract the feature code of digital copyright as the ID of the copyright and store it in the blockchain. Then, the feature code of the digital resource extracted by crawling the entire network is compared with the feature code stored in the blockchain. If the similarity is high, it is judged as plagiarism. However, for all copyright data, especially larger file data, direct storage in the blockchain has the problem of low efficiency, and the storage and circulation value of copyright data lacks a quantitative evaluation mechanism. In the existing technology, the BitSwap protocol in the IPFS distributed file system defines data exchange rules to manage data distribution and promote a tradable data market through an incentive mechanism. BitSwap can provide a data-level solution for data storage and circulation, but it still lacks a mechanism for assetization of digital copyright rights and circulation.
[0045] To solve the above technical problems, the technical solution of the embodiments of the present application uses a distributed file system to right the data that needs to be righted by comparing hash values, and stores the hash values of the righted data on the blockchain system, thereby avoiding direct storage of larger file data and improving the performance of the blockchain. Moreover, the technical solution improves the willingness of users to share data by sharing the profits of the nodes participating in sharing data, thereby enhancing the circulation of data. Thus, the technical problems of the prior art that cannot simultaneously satisfy data copyright rights, data circulation and data storage are solved.
[0046] Optionally, the first data owner node performs the operation of righting the data copyright of the first data owned by the first data owner node through the distributed file system, including: the first data owner node righting the data copyright of the first data according to the hash value of the first data through the distributed file system; and storing the hash value of the first data to the blockchain system.
[0047] Specifically, reference is made to Figure 4a and Figure 4bAs shown, the node 110 (i.e., the first data owner node) intends to publish the first data and to right the data copyright of the first data, the node 110 (i.e., the first data owner node) generates a hash value of the first data according to the first data. Then the node 110 (i.e., the first data owner node) acquires hash values of all data in the distributed file system 100, and compares the acquired hash values of all data with the hash value of the first data in sequence, so that the node 110 (i.e., the first data owner node) can search for hash values of other data identical with the hash value of the first data in the distributed file system 100 according to the hash value of the first data, so as to find whether the same data as the first data is stored in the distributed file system 100.
[0048] Further, when the node 110 (i.e., the first data owner node) does not search for the same data as the first data in the distributed file system 100, it is indicated that the same data as the first data has not been righted, so that the node 110 (i.e., the first data owner node) rights the data copyright of the first data.
[0049] Further, the node 110 (i.e., the first data owner node) stores the hash value of the first data, the data version ID of the righted first data, and the author ID (i.e., the data owner node ID) of the first data to the blockchain system 200.
[0050] Thus, the technical solution compares the hash values of the data to be righted by the distributed file system, stores the hash values of the righted data on the blockchain system, so as to avoid directly storing large file data, and improves the performance of the blockchain system.
[0051] Optionally, the method further comprises: determining, by the second data owner node, second data identical with the first data through the distributed file system according to the hash value of the first data; comparing the time stamp of the second data identical with the first data with the time stamp of the first data; and righting the data copyright of the first data in the case that the time stamp of the second data is not identical with the time stamp of the first data.
[0052] Specifically, reference is made to Figure 4a and Figure 4bAs shown, the node 140 (the second data owner node) needs to publish the data (i.e., the second data) in the distributed file system 100, so as to authorize the second data, the node 140 (the second data owner node) obtains the hash value of the second data, and searches for the hash value of the data same as the hash value of the second data in the distributed file system 100. When the node 140 (the second data owner node) searches for the data same as the second data as the first data in the distributed file system 100, the time stamp of the first data at the time of authorization is obtained from the blockchain system 200, and the time stamp of the second data is obtained, and then the node 140 (the second data owner node) compares the time stamp corresponding to the first data with the time stamp corresponding to the second data. When the time stamp corresponding to the first data is before the time stamp of the second data, it means that the first data has been authorized before the second data is authorized, so that the second data fails to be authorized. Since the second data is the same as the first data, the data copyright of the second data published by the node 140 (the second data owner node) still belongs to the data owner 110, and the node 140 can use the first data same as the second data as a data user node.
[0053] In addition, after the first data is authorized, the node 110 (the first data owner node) updates the first data, so as to obtain a new version of the first data. Then the node 110 (the first data owner node) records the association relationship between the first data version and the second data version of the first data in the blockchain system 200. In addition, the node 110 (the first data owner node) also stores the private information of itself into the blockchain system 200.
[0054] Therefore, the technical solution avoids the data copyright conflict of different versions of data by authorizing the data, updating the data version, and associating different versions of data through the distributed file system. In addition, the private data such as the personal information of the author is stored in the blockchain system, and only the author ID participates in the authorization of the first data, so as to ensure the privacy of the user data.
[0055] Optionally, the operation of the data user node obtaining the data copyright of the first data according to the authorization information of the first data includes: the data user node pays the copyright fee to the data owner node according to the first data; and the data user node obtains the corresponding first data from the first data owner node.
[0056] Specifically, referring to Figure 4a and Figure 4bAs shown, when the node 120 (i.e., the data user node) wants to obtain the first data of the node 110 (i.e., the first data owner node), the node 120 (i.e., the data user node) sends a data obtaining request to the node 110 (i.e., the first data owner node), and the node 120 (i.e., the data user node) pays a copyright fee for obtaining the first data to the node 110 (i.e., the first data owner node) through the blockchain system 200. More specifically, the node 110 (i.e., the first data owner node) generates a transaction about the data copyright of the first data in the blockchain system 200, and then the blockchain system 200 broadcasts the transaction in the blockchain system 200, so that the participating nodes in the blockchain system 200 receive the broadcast, and then the participating nodes in the blockchain system 200 time-stamp the transaction and store it in the block. Then, each participating node determines a verification node through the calculation of the proof of work. Then, the verification node broadcasts its block to other participating nodes, each participating node verifies and connects the block, and other participating nodes confirm whether the transaction contained in the block chain is valid, is not repeated, and has a valid digital signature, and then accept the block, at this time, the block is connected to the block chain.
[0057] Thus, the blockchain system 200 completes the record of the copyright fee received by the node 120 (i.e., the data user node) and the copyright fee paid by the node 120 (i.e., the data user node).
[0058] Further, after the node 120 (i.e., the data user node) pays the copyright fee, the node 120 (i.e., the data user node) obtains the corresponding first data from the node 110 (i.e., the first data owner node).
[0059] Thus, the present technical solution obtains data by paying a copyright fee, protects the legitimate rights and interests of the data owner, and encourages the data owner to share data.
[0060] Optionally, the operation of the data user node obtaining the corresponding first data from the first data owner node includes: the data user node sends a data obtaining request for obtaining the first data to the data owner node; and in the case that the data owner node detects that the data user node has obtained the data copyright of the first data according to the data obtaining request, the data user node obtains the first data from the data owner node.
[0061] Specifically, referring to Figure 4a and Figure 4bAs shown, when the node 120 (i.e., the data user node) wants to acquire the first data, it sends a query request to the adjacent node for querying the node to which the first data belongs. If the adjacent node does not own the data copyright of the first data, it sends a query request to other adjacent nodes for querying the node to which the first data belongs, until the node 110 (i.e., the first data owner node) owning the data copyright of the first data is queried. Then the node 110 (i.e., the first data owner node) returns response information to the node 120 (i.e., the data user node) through the adjacent node. The response information includes the ID of the node 110 (i.e., the first data owner node).
[0062] Further, the node 120 (i.e., the data user node) sends a query request to the blockchain system 200 for querying whether it has acquired the data copyright of the first data. After receiving the query request, the blockchain system 200 queries whether the node 120 (i.e., the data user node) has acquired the data copyright of the first data according to the ID of the data copyright of the first data in the data table. The data table is stored in the blockchain system 200, and is used to record the conditions of each node in the distributed file system 100, including the node ID and the data copyright owned by the node, etc.
[0063] For example, the blockchain system 200 queries whether the node 120 (i.e., the data user node) has acquired the data copyright of the first data from the data table, and then sends the query result to the node 120 (i.e., the data user node). If the query result is that the node 120 (i.e., the data user node) has not acquired the data copyright of the first data, the node 120 (i.e., the data user node) pays the node 110 (i.e., the first data owner node) for the data copyright of the first data through the blockchain system 200.
[0064] Afterwards, the node 120 (i.e., the data user node) sends a data acquisition request for acquiring the first data to the node 110 (i.e., the first data owner node), and the node 110 (i.e., the first data owner node) receives the data acquisition request and sends a query request for querying whether the node 120 (i.e., the data user node) has acquired the data copyright of the first data to the blockchain system 200. After the blockchain system 200 receives the query request, the blockchain system 200 queries in the data table whether the node 120 (i.e., the data user node) has paid the copyright fee and acquired the data copyright of the first data, and then sends the query result to the node 110 (i.e., the first data owner node). When the query result is that the node 120 (i.e., the data user node) has paid the copyright fee and acquired the data copyright of the first data, the node 110 (i.e., the first data owner node) sends the first data to the node 120 (i.e., the data user node) in the distributed file system 100. When the query result is that the node 120 (i.e., the data user node) has not paid the copyright fee and thus has not acquired the data copyright of the first data, the node 110 (i.e., the first data owner node) refuses to send the first data to the node 120 (i.e., the data user node).
[0065] Therefore, in the technical solution, by detecting whether the data user node has paid the copyright fee, the data security is ensured.
[0066] Optionally, the method further includes: in the case that the data user node detects the issuance agent node related to the first data, comparing the performance of the issuance agent node with the performance of the first data owner node; and in the case that the performance of the issuance agent node is superior to the performance of the first data owner node, acquiring the first data from the issuance agent node.
[0067] Specifically, after the node 130 as the data user node acquires the data copyright of the first data from the node 110 (i.e., the first data owner node), the node 130 applies to become the issuance agent node to the blockchain system 200, and the blockchain system 200 determines whether the node 130 has acquired the data copyright of the first data according to the application request of the node 130. When the blockchain system 200 determines that the node 130 has acquired the data copyright of the first data, the blockchain system 200 agrees to the application request of the node 130 to become the issuance agent node and registers the information of the node 130 in the data table for storing the information of the issuance agent node. Therefore, the node 130 becomes the issuance agent node that can proxy the issuance of the first data.
[0068] Further, with reference to Figure 4a and Figure 4bAs shown, before the node 120 (i.e., the data user node) acquires the data copyright of the first data, a query request for querying whether there exists an issuing agent node for proxy issuing the first data is sent to the blockchain system 200. After the blockchain system 200 receives the query request, whether there exists an issuing agent node for proxy issuing the first data is queried from the data table according to the ID of the data copyright of the first data, and the query result is returned to the node 120 (i.e., the data user node). The issuing agent node is also a data user node, that is, when the data user node applies for proxy issuing data to the blockchain system 200, it can become an issuing agent node.
[0069] Further, when the query result is that the blockchain system 200 queries that there exists an issuing agent node for proxy issuing the first data, the node 120 (i.e., the data user node) acquires a node list from a neighboring node. The node list includes index information such as transmission rate of the node.
[0070] Then, the node 120 (i.e., the data user node) acquires the index information of the node 110 (i.e., the first data owner node) and the index information of the issuing agent node (for example, the node 130) from the node list, and calculates the performance value of the node 110 (i.e., the first data owner node) and the performance value of the node 130 (i.e., the issuing agent node) according to the index information respectively by using a pre-set weight. Then, the node 120 (i.e., the data user node) compares the performance value of the node 110 (i.e., the first data owner node) and the performance value of the node 130 (i.e., the issuing agent node).
[0071] When the node 120 (i.e., the data user node) determines that the performance of the node 130 (i.e., the issuing agent node) is better than that of the node 110 (i.e., the first data owner node), a data acquisition request for acquiring the first data is sent to the node 130 (i.e., the issuing agent node). After the node 130 (i.e., the issuing agent node) receives the data acquisition request, a query request for querying whether the node 120 (i.e., the data user node) has acquired the data copyright of the first data is sent to the blockchain system 200. After the blockchain system 200 receives the query request, whether the node 120 (i.e., the data user node) has acquired the data copyright of the first data is queried from the data table, and then the query result is sent to the node 130 (i.e., the issuing agent node). When the query result is that the node 120 (i.e., the data user node) has acquired the data copyright of the first data, the node 130 (i.e., the issuing agent node) sends the first data to the node 120 (i.e., the data user node). When the query result is that the node 120 (i.e., the data user node) has not acquired the data copyright of the first data, the node 130 (i.e., the issuing agent node) refuses to send the first data to the node 120 (i.e., the data user node).
[0072] When the node 120 (i.e., the data user node) determines that the performance of the node 110 (i.e., the first data owner node) is better than that of the node 130 (i.e., the issuing agent node), the data acquisition request for acquiring the first data is sent to the node 110 (i.e., the first data owner node). After the node 110 (i.e., the first data owner node) receives the data acquisition request, the node 110 (i.e., the first data owner node) sends a query request for querying whether the node 120 (i.e., the data user node) has acquired the data copyright of the first data to the blockchain system 200. After the blockchain system 200 receives the query request, the blockchain system 200 queries whether the node 120 (i.e., the data user node) has acquired the data copyright of the first data in the data table, and then sends the query result to the node 110 (i.e., the first data owner node). When the query result is that the node 120 (i.e., the data user node) has acquired the data copyright of the first data, the node 110 (i.e., the first data owner node) sends the first data to the node 120 (i.e., the data user node). When the query result is that the node 120 (i.e., the data user node) has not acquired the data copyright of the first data, the node 110 (i.e., the first data owner node) refuses to send the first data to the node 120 (i.e., the data user node).
[0073] Therefore, the technical solution can improve the efficiency and speed of acquiring data by acquiring the first data through the node with the best performance.
[0074] Optionally, the method further comprises: after the data user node acquires the first data from the first data owner node, paying data credit points to the first data owner node.
[0075] Specifically, the blockchain system is pre-provided with a credit rule. The credit rule is that sending data to other nodes can increase the credit value, and receiving data from other nodes can reduce the credit value. Therefore, when the node 110 (i.e., the first data owner node) sends the first data to the node 120 (i.e., the data user node), the blockchain system 200 reduces the corresponding credit points of the node 120 (i.e., the data user node) and increases the corresponding credit points of the node 110 (i.e., the first data owner node) in the ledger.
[0076] Therefore, the technical solution can promote the nodes to share data by the rule that sending data to other nodes can increase the credit value, and receiving data from other nodes can reduce the credit value.
[0077] Optionally, the method further comprises: the issuing agent node acquires the first data from the first data owner; and the issuing agent node acquires the corresponding share from the first data owner node in the case of sharing the first data.
[0078] Specifically, after acquiring the first data, node 140 sends an application to blockchain system 200 to become a distribution agent node for the first data. Blockchain system 200, upon receiving the application, checks whether node 140 has paid the copyright fee for acquiring the first data and whether node 140 has obtained the first data from node 110 (i.e., the first data owner node). When blockchain system 200 finds that node 140 has both paid the corresponding copyright fee and obtained the first data, it records node 140 as a distribution agent node for the first data. When other nodes also want to acquire the first data, they can obtain it from the data user node. Simultaneously, node 140 (i.e., the distribution agent node) will collect copyright fees from the other nodes that need to acquire the first data. The copyright fees collected by node 140 (i.e., the distribution agent node) represent the share of revenue that the data owner gives to the data user.
[0079] Therefore, in this technical solution, the data owner node relinquishes a portion of its copyright revenue to incentivize the distribution agent node to share the data, thereby enabling the positive dissemination of data and promoting the author's copyright revenue.
[0080] In addition, refer to Figure 1 As shown, according to a second aspect of this embodiment, a storage medium is provided. The storage medium includes a stored program, wherein, when the program is executed, a processor performs any of the methods described above.
[0081] Therefore, according to this embodiment, data requiring ownership verification is verified by comparing hash values through a distributed file system. The hash values of the verified data are then stored on the blockchain, thus avoiding the direct storage of large file data and improving blockchain performance. Furthermore, this technical solution increases users' willingness to share data by distributing profits among nodes participating in data sharing, thereby enhancing data flow. This solves the technical problem in existing technologies that cannot simultaneously satisfy data copyright verification, data flow, and data storage.
[0082] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that the present invention is not limited to the described order of actions, because according to the present invention, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to the present invention.
[0083] Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be realized by means of software on a general hardware platform as necessary, and of course can also be realized by hardware, but in many cases the former is a better embodiment. Based on such understanding, the technical solutions of the present application can be embodied in the form of a software product in essence or in the form of a part of the prior art that makes a contribution, and the computer software product is stored in a storage medium (such as a ROM / RAM, a magnetic disk, or an optical disk), and includes a plurality of instructions for causing an end device (which can be a mobile phone, a computer, a server, or a network device) to execute the method described in each embodiment of the present application.
[0084] Embodiment 2
[0085] Figure 5 A data flow device 500 based on a distributed file system according to the first aspect of the present embodiment is shown, which corresponds to the method according to the first aspect of Embodiment 1. Referring to the figure, the device 500 includes: a data right module 510 for a first data owner node to right the data copyright of the owned first data through a distributed file system; a data storage module 520 for the first data owner node to store the righted first data to a blockchain system; and a data copyright acquisition module 530 for a data user node to acquire the data copyright of the first data according to the right information of the first data. Figure 5
[0086] Optionally, the data right module 510 includes: a data right submodule for the first data owner node to right the data copyright of the first data according to the hash value of the first data through a distributed file system; and a data storage submodule for storing the hash value of the first data to a blockchain system.
[0087] Optionally, the device 500 further includes: a first determination module for a second data owner node to determine the same second data as the first data through a distributed file system according to the hash value of the first data; a data comparison module for comparing the timestamp of the same second data as the first data with the timestamp of the first data; and a first right module for righting the data copyright of the first data in the case that the timestamp of the second data is not the same as the timestamp of the first data.
[0088] Optionally, the data copyright acquisition module 530 includes: a fee payment submodule for a data user node to pay a copyright fee to a data owner node according to the first data; and a data acquisition submodule for a data user node to acquire the corresponding first data from the first data owner node.
[0089] Optionally, the data obtaining submodule comprises: a request sending unit, the data user node sends a data obtaining request for obtaining the first data to the data owner node; and a data obtaining unit, in a case where the data owner node detects that the data user node has obtained the data copyright of the first data according to the data obtaining request, the data user node obtains the first data from the data owner node.
[0090] Optionally, the apparatus 500 further comprises: a first comparison module, in a case where the data user node detects the issuing agent node related to the first data, comparing the performance of the issuing agent node with the performance of the first data owner node; and a first obtaining module, in a case where the performance of the issuing agent node is superior to the performance of the first data owner node, obtaining the first data from the issuing agent node.
[0091] Optionally, the apparatus 500 further comprises: a point payment module, after the data user node obtains the first data from the first data owner node, paying the data credit points to the first data owner node.
[0092] Optionally, the apparatus 500 further comprises: a second obtaining module, for the issuing agent node to obtain the first data from the first data owner; and a third obtaining module, for the issuing agent node to obtain the corresponding share from the first data owner node in a case where the issuing agent node shares the first data.
[0093] According to the embodiment, the data requiring copyright confirmation is confirmed by comparing the hash values through the distributed file system, and the hash values of the confirmed data are stored on the block chain, thereby avoiding directly storing large file data and improving the performance of the block chain. Moreover, the technical solution improves the willingness of users to share data by sharing the nodes participating in sharing data, thereby enhancing the data circulation. Further, the technical problem of being unable to simultaneously satisfy data copyright confirmation, data circulation and data storage in the prior art is solved.
[0094] Embodiment 3
[0095] Figure 6 The distributed file system-based data circulation apparatus 600 according to the first aspect of the embodiment is shown, which corresponds to the method according to the first aspect of embodiment 1. Referring to Figure 6As shown, the apparatus 600 comprises a processor 610; and a memory 620 connected with the processor 610, for providing the processor 510 with instructions to process the following processing steps: the first data owner node authenticates the data copyright of the owned first data through the distributed file system; the first data owner node stores the authenticated first data to the blockchain system; and the data user node acquires the data copyright of the first data according to the authentication information of the first data.
[0096] Optionally, the operation of the first data owner node authenticating the data copyright of the owned first data through the distributed file system comprises: the first data owner node authenticates the data copyright of the first data through the distributed file system according to the hash value of the first data; and the hash value of the first data is stored to the blockchain system.
[0097] Optionally, the apparatus 600 further comprises: the second data owner node determines the second data identical to the first data through the distributed file system according to the hash value of the first data; compares the timestamp of the second data identical to the first data with the timestamp of the first data; and authenticates the data copyright of the first data in the case that the timestamp of the second data is not identical to the timestamp of the first data.
[0098] Optionally, the operation of the data user node acquiring the data copyright of the first data according to the authentication information of the first data comprises: the data user node pays the copyright fee to the data owner node according to the first data; and the data user node acquires the corresponding first data from the first data owner node.
[0099] Optionally, the operation of the data user node acquiring the corresponding first data from the first data owner node comprises: the data user node sends a data acquisition request for acquiring the first data to the data owner node; and the data user node acquires the first data from the data owner node in the case that the data owner node detects that the data user node has acquired the data copyright of the first data according to the data acquisition request.
[0100] Optionally, the apparatus 600 further comprises: in the case that the data user node detects the issuing agent node related to the first data, comparing the performance of the issuing agent node with the performance of the first data owner node; and acquiring the first data from the issuing agent node in the case that the performance of the issuing agent node is superior to the performance of the first data owner node.
[0101] Optionally, the apparatus 600 further comprises: paying the data credit points to the first data owner node after the data user node acquires the first data from the first data owner node.
[0102] Optionally, the apparatus 600 further comprises: the issuing agent node obtaining the first data from the first data owner; and the issuing agent node obtaining a corresponding share from the first data owner node in the case of sharing the first data.
[0103] According to the embodiment, the data to be authorized is authorized by using the comparison hash value through the distributed file system, and the hash value of the authorized data is stored on the block chain, thereby avoiding direct storage of large file data and improving the performance of the block chain. Moreover, the technical solution improves the willingness of users to share data by sharing the nodes participating in the data sharing, thereby enhancing the data circulation. Thus, the technical problems of the prior art that cannot simultaneously satisfy data copyright authorization, data circulation and data storage are solved.
[0104] The above-mentioned serial numbers of the embodiments of the application are only for description, and do not represent the advantages or disadvantages of the embodiments.
[0105] In the above-mentioned embodiments of the application, the description of each embodiment has its own emphasis, and the parts not described in detail in a certain embodiment can be referred to the related description of other embodiments.
[0106] In several embodiments provided in the present application, it should be understood that the disclosed technical content can be implemented by other ways. Among them, the above-mentioned device embodiments are only schematic, for example, the division of the units is only a logical function division, and actual implementation can have another division way, for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the displayed or discussed each other can be through some interface, indirect coupling or communication connection between units or modules, which can be electrical or other forms.
[0107] The units described as separate components can or can not be physically separated, and the components shown as units can or can not be physical units, that is, they can be located in one place, or they can be distributed on a plurality of network units. According to actual needs, part or all of the units can be selected to achieve the purpose of the embodiment.
[0108] In addition, each functional unit in each embodiment of the application can be integrated in a processing unit, or each unit can exist physically, or two or more units can be integrated in one unit. The above integrated unit can be realized in the form of hardware or in the form of software functional unit.
[0109] The integrated unit, if implemented in the form of a software function unit and sold or used as an independent product, can be stored in a computer readable storage medium. Based on such understanding, the technical solutions of the present application, essentially or in other words, the part that contributes to the prior art or the whole or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium, including a number of instructions to make a computer device (which can be a personal computer, a server or a network device, etc.) execute all or part of the steps of the methods described in various embodiments of the present application. The aforementioned storage medium includes: a U disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a mobile hard disk, a magnetic disk or an optical disk, and various media that can store program codes.
[0110] The above is only the preferred embodiment of the present application, it should be pointed out that, for those skilled in the art, without departing from the principles of the present application, can make a number of improvements and refinements, these improvements and refinements should also be considered as the protection scope of the present application.
Claims
1. A data circulation method based on a distributed file system, characterized in that, include: The first data owner node confirms the data copyright of the first data it owns through the distributed file system; The first data owner node stores the confirmed first data data in the blockchain system; as well as Data user nodes obtain the data copyright of the first data based on the ownership information of the first data, wherein The first data owner node owns the first data, and then the first data owner node publishes the first data in the distributed file system by confirming the data copyright of the first data, wherein the distributed file system is the IPFS distributed file system; The first data owner node generates a hash value for the first data and searches the distributed file system based on the hash value to determine if there is data identical to the first data in the distributed file system. If the first data owner node does not find data identical to the first data in the distributed file system, it confirms the data copyright of the first data. If the first data owner node finds data identical to the first data in the distributed file system, it determines that the first data already has data copyright in the distributed file system. After confirming the data copyright of the first data, the first data owner node stores the hash value of the confirmed first data and the ID of the first data owner node in the blockchain system; The first data owner node has confirmed the ownership of the first data in the distributed file system, thereby completing the publication of the first data in the distributed file system. After that, the first data owner node broadcasts the information that the first data has been published. Other nodes, upon receiving the information that the ownership of the first data has been confirmed, request the first data owner node to obtain the first data. When the data user node needs to obtain the first data, it will pay the corresponding copyright fee to the first data owner node to obtain the first data. The copyright fee paid by the data user node to obtain the first data is set by the first data owner node. Furthermore, after the data user node obtains the first data, it will act as a distribution agent node to share the first data with the other nodes, thereby obtaining a share of the revenue from sharing the first data.
2. The method according to claim 1, characterized in that, The first data owner node performs the operation of confirming the data copyright of the first data it owns through the distributed file system, including: The first data owner node confirms the data copyright of the first data based on the hash value of the first data through the distributed file system; and The hash value of the first data is stored in the blockchain system.
3. The method according to claim 2, characterized in that, Also includes: The second data owner node determines the second data that is the same as the first data through the distributed file system based on the hash value of the first data. Compare the timestamp of the second data that is identical to the first data with the timestamp of the first data; as well as If the timestamp of the second data is different from the timestamp of the first data, the copyright of the first data shall be confirmed.
4. The method according to claim 1, characterized in that, The operation of a data user node to obtain the data copyright of the first data based on the ownership information of the first data includes: The data user node pays copyright fees to the data owner node based on the first data; and The data user node obtains the corresponding first data from the first data owner node.
5. The method according to claim 4, characterized in that, The operation of the data user node obtaining the corresponding first data from the first data owner node includes: The data user node sends a data acquisition request to the data owner node to obtain the first data; and If the data owner node detects that the data user node has acquired the data copyright of the first data based on the data acquisition request, the data user node acquires the first data from the data owner node.
6. The method according to claim 5, characterized in that, Also includes: If the data user node detects a distribution agent node related to the first data, the performance of the distribution agent node is compared with the performance of the first data owner node. as well as If the performance of the distribution agent node is better than that of the first data owner node, the first data is obtained from the distribution agent node.
7. The method according to claim 5, characterized in that, Also includes: After the data user node obtains the first data from the first data owner node, it pays data credit points to the first data owner node.
8. The method according to claim 1, characterized in that, Also includes: The issuing agent node obtains the first data from the first data owner; as well as When the issuing agent node shares the first data, it obtains a corresponding share from the first data owner node.
9. A storage medium, characterized in that, The storage medium includes a stored program, wherein, when the program is executed, the method described in any one of claims 1 to 8 is performed by a processor.
10. A data circulation device based on a distributed file system, characterized in that, include: The data ownership confirmation module is used by the first data owner node to confirm the data copyright of the first data it owns through the distributed file system; The data storage module is used by the first data owner node to store the confirmed first data data into the blockchain system; as well as The data copyright acquisition module is used by data user nodes to acquire the data copyright of the first data based on the ownership information of the first data. The first data owner node owns the first data, and then the first data owner node publishes the first data in the distributed file system by confirming the data copyright of the first data, wherein the distributed file system is the IPFS distributed file system; The first data owner node generates a hash value for the first data and searches the distributed file system based on the hash value to determine if there is data identical to the first data in the distributed file system. If the first data owner node does not find data identical to the first data in the distributed file system, it confirms the data copyright of the first data. If the first data owner node finds data identical to the first data in the distributed file system, it determines that the first data already has data copyright in the distributed file system. After confirming the data copyright of the first data, the first data owner node stores the hash value of the confirmed first data and the ID of the first data owner node in the blockchain system; The first data owner node has confirmed the ownership of the first data in the distributed file system, thereby completing the publication of the first data in the distributed file system. After that, the first data owner node broadcasts the information that the first data has been published. Other nodes, upon receiving the information that the ownership of the first data has been confirmed, request the first data owner node to obtain the first data. When the data user node needs to obtain the first data, it will pay the corresponding copyright fee to the first data owner node to obtain the first data. The copyright fee paid by the data user node to obtain the first data is set by the first data owner node. Furthermore, after the data user node obtains the first data, it will act as a distribution agent node to share the first data with the other nodes, thereby obtaining a share of the revenue from sharing the first data.
Citation Information
Patent Citations
Digital rights protection method based on block chain
CN111641707A
Digital content copyright protection method and device based on block chain platform
CN112364305A