Data right confirmation method based on block chain, electronic equipment and storage medium
By splitting on-chain and off-chain data multiple times and obtaining a feature list, the ownership of off-chain data can be quickly determined, solving the problem of low confirmation efficiency caused by changes in off-chain data in existing technologies and achieving efficient data ownership confirmation.
Patent Information
- Application Number
- CN202410867663.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-01
- Publication Date
- 2026-02-10
AI Technical Summary
In existing technologies, blockchain-based data ownership confirmation methods struggle to guarantee consistency between on-chain and off-chain data when minor changes occur in off-chain data, resulting in low efficiency in confirming off-chain data ownership.
The on-chain evidence data and off-chain data are split multiple times on average to obtain a feature list of the sub-chain data after each split. By comparing the feature list, it is possible to quickly determine whether the ownership of the off-chain data is the same as that of the on-chain evidence data, avoiding the need for item-by-item comparison.
This improves the efficiency of confirming ownership of off-chain data, reduces computational load, and ensures the accuracy and efficiency of data consistency confirmation.
Smart Images

Figure CN121508784A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data ownership confirmation technology, and in particular to a data ownership confirmation method, electronic device and storage medium based on blockchain. Background Technology
[0002] With the rapid development of big data technology, a large amount of data requires data ownership confirmation. Data ownership confirmation involves empowering data processors and other stakeholders, granting them corresponding legal control over their data, thereby excluding infringements by others to a certain extent or scope. Data ownership confirmation aims to establish incentive mechanisms to promote data production, thereby better developing and utilizing data and better leveraging its role as a new factor of production. For example, the guiding rules for constructing data ownership authorization through a classification management approach state:
[0003] (1) Clarify the public data ownership and authorization mechanism: Public data is an expansion based on government data and is a common concept that has gradually formed in countries and regions such as China and the European Union. Relevant regulations clarify that data generated by government departments, enterprises and institutions at all levels in the course of performing their administrative duties or providing public services in accordance with the law belongs to public data. Departments with independent operation capabilities or those that have not yet carried out authorized operation should continue to strengthen the opening of public data. How to ensure the security of personal information and other data in the circulation and use of public data is also a difficult problem in the data element market. Promote the increase of supply of public data that does not involve personal information or public safety according to its purpose. The collection of public data is often to fulfill statutory duties and has a specific scope and purpose of use. When the development of public data exceeds the original scope and purpose, potential risks will arise.
[0004] (2) Exploring a mechanism for confirming and authorizing enterprise data rights: Enterprise data mainly refers to various types of data collected and processed by market entities in their production and operation activities that do not involve personal information or public interests, such as data generated from daily work records, data generated from the operation records of agricultural machinery and equipment, and statistical and anonymized data recorded on online platforms. For enterprise data that does not involve personal information or public interests, market entities have the right to legally hold, use, and benefit from data assets, ensuring that their labor and other factor contributions receive reasonable returns. For the large amount of mixed data that exists in practice, enterprises can only independently enjoy data rights after distinguishing it; otherwise, the mixed data will need to be subject to adjustments in the relevant rules for personal data and public data.
[0005] (3) Establishing a mechanism for confirming and authorizing personal information data rights: Technological development is centered on serving people, and data carrying personal information plays an irreplaceable role in training new artificial intelligence technologies, developing new forms of personal services, and forming new models of social governance. Every day, we upload and generate a large amount of personal data when using various Internet services. Faced with the massive generation of personal information and the diverse rights to personal information, users face the challenge of how to effectively and conveniently manage their personal information.
[0006] Currently, a common method for data ownership confirmation is to store the hash value of on-chain evidence data on the blockchain, and then confirm the ownership of off-chain data based on the hash value of the off-chain data to be confirmed and the hash value of the on-chain evidence data. However, when the off-chain data is adjusted or undergoes minor changes, the hash value of the off-chain data will change significantly, making it difficult to guarantee the consistency between on-chain evidence data and off-chain data. If each piece of data is compared, the computational load is large, resulting in low efficiency in confirming the ownership of off-chain data. Summary of the Invention
[0007] To address the aforementioned technical problems, the technical solution adopted by this invention is as follows:
[0008] According to a first aspect of this application, a blockchain-based data ownership confirmation method is provided, the method comprising the following steps:
[0009] S100, perform n average splits on the on-chain evidence storage data to obtain a sub-chain evidence storage data list set A = (A1, A2, ..., A...). i A n ), i=1, 2,...,n; where, A i A is the list of evidence stored on the subchain corresponding to the i-th split; i =(A i,1 A i,2 A i,j_i A i,f(i) ), j_i=1, 2,..., f(i); A i,j_i For the j_i-th subchain data obtained from the i-th split, f(i) represents the number of subchain data items obtained from the i-th split; the on-chain data items are sorted according to a preset rule; A r+1,j_i The size is less than A r,j_i The size of the r is r = 1, 2, ..., n-1.
[0010] S200, obtain the first feature of the evidence storage data on each subchain of A, so as to obtain the first feature list set HA = (HA1, HA2, ..., HA3) corresponding to A. i , ..., HA n ); where HA i For A iThe corresponding first feature list; HA i = (HA) i,1 HA i,2 , ..., HA i,j_i , ..., HA i,f(i) ); HA i,j_i For A i,j_i The corresponding first feature.
[0011] S300, perform n average splits on the off-chain data to be confirmed to obtain a sub-off-chain data list set B = (B1, B2, ..., B...). i B n ); where B i B is the list of data under the sub-chain corresponding to the i-th split; i = (B i,1 B i,2 B i,j_i B i,f(i) );B i,j_i This represents the j_i-th sub-chain data obtained from the i-th split; the sorting rules for the off-chain data are the same as those for the on-chain evidence data; B r+1,j_i The size is less than B r,j_i Size.
[0012] S400, obtain the second feature of the data under each subchain in B, so as to obtain the second feature list set HB = (HB1, HB2, ..., HB...) of B. i , ..., HB n ); where HB i For B i The corresponding second feature list; HB i =(HB) i,1 HB i,2 , ..., HB i,j_i , ..., HB i,f(i) ); HB i,j_i For B i,j_i The corresponding second feature.
[0013] S500, based on HA and HB, determines whether the ownership of the off-chain data to be confirmed is the same as the ownership of the on-chain evidence data corresponding to HA.
[0014] According to another aspect of this application, a non-transitory computer-readable storage medium is also provided, wherein at least one instruction or at least one program is stored in the storage medium, and the at least one instruction or at least one program is loaded and executed by a processor to implement the above-described blockchain-based data ownership confirmation method.
[0015] According to another aspect of this application, an electronic device is also provided, including a processor and the aforementioned non-transitory computer-readable storage medium.
[0016] The present invention has at least the following beneficial effects:
[0017] The data ownership confirmation method based on blockchain of the present invention splits the on-chain evidence data multiple times, and the size of the sub-on-chain evidence data becomes smaller with the increase of the number of splits; obtains the first feature corresponding to the sub-evidence data obtained in each split to obtain a list of first features; splits the off-chain data to be confirmed in the same way and obtains the second feature corresponding to each sub-off-chain data; since the on-chain evidence data and off-chain data are sorted according to the same rules, if the off-chain data and the on-chain evidence data are the same, it is possible to quickly determine whether the ownership of the off-chain data to be confirmed is the same as the ownership of the on-chain evidence data corresponding to HA based on the first feature and the second feature, without having to compare the off-chain data and the on-chain evidence data one by one, thus making the confirmation of the ownership of the off-chain data more efficient. Attached Figure Description
[0018] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0019] Figure 1 A flowchart of a blockchain-based data ownership confirmation method provided in an embodiment of the present invention. Detailed Implementation
[0020] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0021] It should be noted that, based on this disclosure, those skilled in the art will understand that one aspect described herein can be implemented independently of any other aspect, and two or more of these aspects can be combined in various ways. For example, any number of aspects set forth herein can be used to implement the device and / or practice the method. Furthermore, this device and / or practice the method can be implemented using other structures and / or functionalities besides one or more of the aspects set forth herein.
[0022] The following will refer to Figure 1 The flowchart shown illustrates a blockchain-based data ownership confirmation method, which introduces such a method.
[0023] This blockchain-based data ownership confirmation method may include the following steps:
[0024] S100, perform n average splits on the on-chain evidence storage data to obtain a sub-chain evidence storage data list set A = (A1, A2, ..., A...). i A n ), i=1, 2,...,n; where, A i A is the list of evidence stored on the subchain corresponding to the i-th split; i =(A i,1 A i,2 A i,j_i A i,f(i) ), j_i=1, 2,..., f(i); A i,j_i For the j_i-th subchain data obtained from the i-th split, f(i) represents the number of subchain data items obtained from the i-th split; the on-chain data items are sorted according to a preset rule; A r+1,j_i The size is less than A r,j_i The size of the r is r = 1, 2, ..., n-1.
[0025] In this embodiment, the whole data with rights, such as a whole piece of text data, which can be public data, enterprise data, personal information data, or other data that needs to be ordered or can be sorted according to certain rules, such as enterprise data property rights, data usufruct rights, usage records, etc., is split into multiple parts; each split involves selecting data blocks of different sizes.
[0026] It should be noted that the method in this embodiment is applied in the following scenarios: both on-chain and off-chain data are sorted according to preset rules. For example, both on-chain and off-chain data are personal data sorted in descending order of ID card number; the number of records corresponding to on-chain and off-chain data is the same; some records of off-chain data to be confirmed may undergo minor changes, but the number of records will not be reduced.
[0027] If the total number of on-chain evidence records cannot be evenly split, then A can be guaranteed. i,1 -A i,f(i)-1 The number of on-chain evidence records corresponding to the on-chain evidence records in each sub-chain is the same, and the remaining on-chain evidence records are allocated to A. i,f(i) Off-chain data is processed in the same way as on-chain evidence-based data.
[0028] It is understandable that, since the number of evidence data on the sub-chain obtained by each split is different in this embodiment, f(i) does not refer to a specific function or function result value, but to a possible value that varies with the specific value of i. For example, when i=1, f(i)=10; when i=2, f(i)=20; when i=3, f(i)=30.
[0029] Furthermore, we can set f(i) = 10 × i; n = 10; and we can split the on-chain evidence storage data. For example, if the total size of the on-chain evidence storage data is 1GB, the first split yields A1 = (A 1,1 A 1,2 A 1,j_1 A 1,10 ), A 1,j_1 The size is 0.1GB; the second split yields A2 = (A 2,1 A 2,2 A 2,j_2 A 2,20 ), A 2,j_2 The size is 0.05GB.
[0030] S200, obtain the first feature of the evidence storage data on each subchain of A, so as to obtain the first feature list set HA = (HA1, HA2, ..., HA3) corresponding to A. i , ..., HA n ); where HA i For A i The corresponding first feature list; HA i = (HA) i,1 HA i,2 , ..., HA i,j_i , ..., HA i,f(i) ); HA i,j_i For A i,j_i The corresponding first feature.
[0031] In this embodiment, the first feature can be a hash value or a semantic feature vector; it is possible to obtain the first feature corresponding to the evidence storage data on each sub-chain obtained by each split, thereby obtaining HA; it should be noted that those skilled in the art can use existing hash value acquisition methods to obtain the hash value corresponding to the evidence storage data on each sub-chain according to actual needs, which will not be elaborated here.
[0032] It should be noted that in this embodiment, steps S100-S200 can perform the same splitting and first feature acquisition operation on all on-chain evidence data sorted according to preset rules; for each on-chain evidence data, steps S200-S300 only need to be executed once, and then the acquired first feature is stored for subsequent comparison.
[0033] S300, perform n average splits on the off-chain data to be confirmed to obtain a sub-off-chain data list set B = (B1, B2, ..., B...). i B n ); where B i B is the list of data under the sub-chain corresponding to the i-th split; i = (B i,1 B i,2 B i,j B i,f(i) );B i,j This represents the j-th sub-chain data obtained from the i-th split; the sorting rules for the off-chain data are the same as those for the on-chain evidence storage data; B r+1,j The size is less than B r,j Size.
[0034] In this embodiment, the off-chain data to be confirmed is also sorted according to a preset rule. It should be noted that if the off-chain data to be confirmed is not sorted according to the preset rule, the off-chain data to be confirmed can be sorted according to the preset rule first, and then the splitting operation can be performed.
[0035] It is understandable that the splitting operation in step S300 is the same as the splitting operation in step S100, and will not be described in detail here.
[0036] S400, obtain the second feature of the data under each subchain in B, so as to obtain the second feature list set HB = (HB1, HB2, ..., HB...) of B. i , ..., HB n ); where HB i For B i The corresponding second feature list; HB i =(HB) i,1 HB i,2 , ..., HB i,j , ..., HB i,f(i) ); HB i,j For B i,j The corresponding second feature.
[0037] In this embodiment, the second feature can also be a hash value or a semantic feature vector. It should be noted that the first feature and the second feature are of the same type, that is, when the first feature is a hash value, the second feature is also a hash value. It can be understood that in the above splitting process, the first split is a relatively coarse split, that is, the number of data entries contained in the evidence storage data or data under the sub-chain obtained by the split is relatively large and the span is also large.
[0038] Furthermore, the corresponding on-chain evidence storage data can be determined based on the relevant attributes of the off-chain data to be verified. Specifically, this can include the following steps:
[0039] S410: Obtain the size and number of off-chain data items to be confirmed.
[0040] In this embodiment, the data is sorted according to a preset rule. Therefore, the off-chain data to be confirmed has a number of data entries, and the number of data entries corresponding to the off-chain data to be confirmed can be obtained.
[0041] S420, traverse each on-chain evidence data. If the size difference between any on-chain evidence data and the off-chain data to be confirmed is less than a preset size difference, and the difference in the number of data entries is less than a preset difference, then the on-chain evidence data is determined as the on-chain evidence data corresponding to the off-chain data to be confirmed.
[0042] In this embodiment, the above method can initially exclude a large amount of on-chain evidence data that is not related to the off-chain data to be confirmed. Subsequent comparison and confirmation of rights does not require comparison of the excluded on-chain evidence data. Therefore, it can further improve the efficiency of confirming the ownership of the off-chain data to be confirmed.
[0043] S500, based on HA and HB, determines whether the ownership of the off-chain data to be confirmed is the same as the ownership of the on-chain evidence data corresponding to HA.
[0044] Furthermore, step S500 may include the following steps:
[0045] S511, Obtain the first preset value M = 1 and the (M+1)th preset value W. M =0.
[0046] S512, Traverse HB M If HB M,j_M =HA M,j_M Then obtain W M =W M +1.
[0047] In this embodiment, if M = 1, HB 1,1 =HA 1,1 At that time, W M =1; HB 1,2 =HA 1,2 At that time, W M =2; by comparing them one by one, we can determine the number of times the second feature in HB1 is the same as the first feature in HA1.
[0048] S513, if W M =f(M), then the ownership of the off-chain data to be confirmed is the same as the ownership of the on-chain evidence data corresponding to HA.
[0049] In this embodiment, if W M =f(M), indicating that the second feature in HB1 and the first feature in HA1 are identical. Since the hash value can uniquely represent the corresponding data, the absence of a hash value indicates that the corresponding data has not changed. Therefore, it can be determined that the ownership of the off-chain data to be confirmed is the same as the ownership of the on-chain evidence data corresponding to HA. Thus, the ownership of the off-chain data to be confirmed can be determined with fewer feature comparisons, making the determination of the ownership of the off-chain data to be confirmed more efficient.
[0050] Furthermore, after step S513, the method may further include the following steps:
[0051] S521, if W M If <f(M), then obtain M = M + 1.
[0052] In this embodiment, if W M <f(M) indicates that the second feature in HB1 and the first feature in HA1 are not in a one-to-one correspondence. Therefore, it can be determined that there is a difference between the off-chain data to be confirmed and the on-chain evidence data. However, due to the large data span and coarse splitting during the first split, even a slight change in one piece of off-chain data will lead to W. M <f(M); At this point, the ownership of the off-chain data cannot be directly determined and further confirmation is required.
[0053] S522, traverse HB M If HB M,j_i =HA M,j_i Then obtain W M =W M +1.
[0054] In this embodiment, M is incremented by 1, and this step can determine HB. M The second feature in HA M The number W of the first feature is the same M .
[0055] S523, Obtain HB M With HA M Similarity λ between M =W M / f(M).
[0056] In this embodiment, for example: M = 2, f(M) = 20; if W M =16, then λ M =W M / f(M) = 0.8; Since the previous splits were relatively coarse, the similarity corresponding to the previous splits can only be used as a reference and cannot directly determine the ownership of the off-chain data to be confirmed.
[0057] S524, if If so, proceed to S521; otherwise, proceed to S525.
[0058] S525, if λ M ≤YZ M,1 Then it is determined that the ownership of the off-chain data to be confirmed is different from the ownership of the on-chain evidence data corresponding to HA; among them, YZ M,1 For HA M and HB M The corresponding first preset similarity threshold.
[0059] In this embodiment, each split corresponds to a first preset similarity threshold and a second similarity threshold; of course, the first split may or may not correspond to the first preset similarity threshold and the second similarity threshold; because unless the off-chain data and the on-chain evidence data are completely identical, subsequent splits need to be further compared and confirmed.
[0060] Theoretically speaking, if This indicates that a relatively fine-grained split has been found. At this point, if λ M ≤YZ M,1 For example: YZ M,1 =0.2; This indicates that there are still a large number of off-chain data and on-chain evidence data that are different; at this time, it can be directly determined that the ownership of the off-chain data to be confirmed is different from the ownership of the on-chain evidence data corresponding to HA.
[0061] S526, if λ M ≥YZ M,2 Then it is determined that the ownership of the off-chain data to be confirmed is the same as the ownership of the on-chain evidence data corresponding to HA; where YZ M,2 For HA M and HB M The corresponding second preset similarity threshold; YZ M,2 >YZ M,1 .
[0062] And if λ M ≥YZ M,2 For example: YZ M,2 =0.95; This indicates that the off-chain data and the on-chain evidence data are almost identical; In this case, it can be directly determined that the ownership of the off-chain data to be confirmed is the same as the ownership of the on-chain evidence data corresponding to HA.
[0063] Furthermore, in the above embodiments, YZa,1 <YZ a+1,1 YZ a,2 <YZ a+1,2 a = 2, 3, ..., n-1; that is, the first preset similarity threshold and the second preset similarity threshold both increase with the number of splits. This is because, in the case where the number of data entries that change in the off-chain data remains constant, the more detailed the split, the greater the corresponding similarity should be. Therefore, in this embodiment, the first preset similarity threshold and the second preset similarity threshold are set to increase sequentially to adapt to the above situation and make the data ownership determination result more accurate.
[0064] Furthermore, after step S526, the method may further include the following steps:
[0065] S531, if YZ M,1 <λ M <YZ M,2 Then we get M = M + 1.
[0066] When comparing the intermediate number of splits, in addition to the cases of particularly high and low similarity mentioned in the above embodiments, there is also YZ. M,1 <λ M <YZ M,2 In such cases, the ownership of the off-chain data to be confirmed cannot be directly determined, and comparisons need to be made for each split.
[0067] S532, Traverse HB M If HB M,j_i =HA M,j_i Then obtain W M =W M +1.
[0068] S533, Obtain HB M With HA M Similarity λ between M =W M / f(M).
[0069] S534, if M < n, then proceed to S532; otherwise, obtain the similarity list λ = (λ2, λ3, ..., λn). r , …, λ n ), r = 2, 3, ..., n; where λ r For HB r With HA r The similarity between them.
[0070] This step determines the similarity corresponding to each split, thus obtaining λ.
[0071] S535, if the similarity in λ increases sequentially and YZr,1 <λ r <YZ r,2 Then HA n HA n,j_n ≠HB n,j_n The corresponding subchain data is determined to be the subchain data to be determined.
[0072] In this embodiment, if the similarity in λ increases sequentially and YZ r,1 <λ r <YZ r,2 Then you can traverse HA. n and HB n Then HA n HA n,j_n ≠HB n,j_n The corresponding off-chain data is identified as off-chain data to be determined. It is understandable that each off-chain data to be determined contains several conditional off-chain data. Whether these data have a large number of identical cases with the on-chain evidence data needs further determination.
[0073] S536, the ownership of data under each sub-chain to be determined is determined manually.
[0074] In this embodiment, if the number of data entries contained in the data under the sub-chain to be determined is less than a preset threshold, the data can be further determined manually, one by one, to determine the ownership of the data under the sub-chain to be determined.
[0075] Furthermore, if the number of off-chain data entries contained in the data to be determined under the sub-chain is greater than or equal to a preset threshold, then each data entry under the sub-chain to be determined and the corresponding on-chain evidence data can be obtained.
[0076] Then, any off-chain data to be determined is identified as off-chain data to be confirmed, and the on-chain evidence data corresponding to the off-chain data to be determined is identified as on-chain evidence data. The method in the above embodiments is used to further split and determine the corresponding ownership.
[0077] This embodiment of the blockchain-based data ownership confirmation method involves splitting the on-chain evidence data multiple times, with the size of the resulting sub-on-chain evidence data decreasing as the number of splits increases. A first feature corresponding to each sub-evidence data obtained from each split is acquired to form a first feature list. The off-chain data to be confirmed is split in the same way, and a second feature corresponding to each sub-off-chain data is acquired. Since the on-chain and off-chain evidence data are sorted according to the same rules, if the off-chain and on-chain evidence data are identical, it is possible to quickly determine whether the ownership of the off-chain data to be confirmed is the same as the ownership of the on-chain evidence data corresponding to the HA based on the first and second features. This eliminates the need for a line-by-line comparison between the off-chain and on-chain evidence data, thus making the confirmation of off-chain data ownership highly efficient.
[0078] Furthermore, when the similarity is not extremely high or extremely low, the off-chain data and the corresponding on-chain evidence data with different first and second features are obtained, and then the same method is used to further determine the ownership of the off-chain data; thereby improving the accuracy of determining the ownership of the off-chain data to be confirmed.
[0079] Based on the method in this invention, it is also possible to clarify the public data ownership authorization mechanism, explore the enterprise data ownership authorization mechanism, and construct a personal information data ownership authorization mechanism.
[0080] Furthermore, although the steps of the method in this disclosure are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in that specific order, or that all the steps shown must be performed to achieve the desired result. Additional or alternative steps may be omitted, multiple steps may be combined into one step, and / or a step may be broken down into multiple steps.
[0081] Embodiments of the present invention also provide a non-transitory computer-readable storage medium that can be disposed in an electronic device to store at least one instruction or at least one program related to implementing a method in the method embodiments, wherein the at least one instruction or the at least one program is loaded and executed by the processor to implement the method provided in the above embodiments.
[0082] The program product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0083] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting programs for use by or in conjunction with an instruction execution system, apparatus, or device.
[0084] The program code contained on the readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.
[0085] Program code for performing the operations of this application can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, and conventional procedural programming languages such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0086] Embodiments of the present invention also provide an electronic device, including a processor and the aforementioned non-transitory computer-readable storage medium.
[0087] The electronic device is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments in this application.
[0088] Electronic devices are manifested in the form of general-purpose computing devices. Components of an electronic device may include, but are not limited to: at least one processor, at least one memory, and a bus connecting different system components (including memory and processor).
[0089] The memory stores program code that can be executed by the processor, causing the processor to perform the steps in the various embodiments described in this specification.
[0090] The memory may include readable media in the form of volatile memory, such as random access memory (RAM) and / or cache memory, and may further include read-only memory (ROM).
[0091] The memory may also include programs / utilities having a set (at least one) of program modules, including but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of these examples may include an implementation of a network environment.
[0092] A bus can represent one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, a graphics acceleration port, a processor, or a local bus that uses any of the various bus structures.
[0093] The electronic device can also communicate with one or more external devices (e.g., keyboards, pointing devices, Bluetooth devices, etc.), one or more devices that enable a user to interact with the electronic device, and / or any device that enables the electronic device to communicate with one or more other computing devices (e.g., routers, modems, etc.). This communication can be performed via input / output (I / O) interfaces. Furthermore, the electronic device can communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) via a network adapter. The network adapter communicates with other modules of the electronic device via a bus. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with the electronic device, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0094] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, terminal device, or network device, etc.) to execute the methods according to the embodiments of this disclosure.
[0095] Embodiments of the present invention also provide a computer program product including program code, which, when the program product is run on an electronic device, causes the electronic device to perform the steps of the methods described above in various exemplary embodiments of the present invention.
[0096] While specific embodiments of the invention have been described in detail by way of examples, those skilled in the art should understand that the examples are for illustrative purposes only and are not intended to limit the scope of the invention. Those skilled in the art should also understand that various modifications can be made to the embodiments without departing from the scope and spirit of the invention.
Claims
1. A data ownership confirmation method based on blockchain, characterized in that, The method includes the following steps: S100, perform n average splits on the on-chain evidence storage data to obtain a sub-chain evidence storage data list set A = (A1, A2, ..., A...). i A n ), i=1, 2,...,n; among them, A i A is the list of evidence stored on the subchain corresponding to the i-th split; i =(A i,1 A i,2 A i,j_i A i,f(i) ), j_i=1, 2,..., f(i); A i,j_i For the j_i-th subchain data obtained from the i-th split, f(i) represents the number of subchain data items obtained from the i-th split; the on-chain data items are sorted according to a preset rule; A r+1,j_i The size is less than A r,j_i The size of r, r = 1, 2, ..., n-1; S200, obtain the first feature of the evidence storage data on each subchain of A, so as to obtain the first feature list set HA = (HA1, HA2, ..., HA3) corresponding to A. i , ..., HA n ); where HA i For A i The corresponding first feature list; HA i = (HA) i,1 HA i,2 , ..., HA i,j_i , ..., HA i,f(i) ); HA i,j_i For A i,j_i The corresponding first feature; S300, perform n average splits on the off-chain data to be confirmed to obtain a sub-off-chain data list set B = (B1, B2, ..., B...). i B n ); where B i B is the list of data under the sub-chain corresponding to the i-th split; i = (B i,1 B i,2 B i,j_i B i,f(i) ); B i,j_i This represents the j_i-th sub-chain data obtained from the i-th split; the sorting rules for the off-chain data are the same as those for the on-chain evidence data; B r+1,j_i The size is less than B r,j_i Size; S400, obtain the second feature of the data under each subchain in B, so as to obtain the second feature list set HB = (HB1, HB2, ..., HB...) of B. i , ..., HB n ); where HB i For B i The corresponding second feature list; HB i =(HB) i,1 HB i,2 , ..., HB i,j_i , ..., HB i,f(i) ); HB i,j_i For B i,j_i The corresponding second feature; S500, based on HA and HB, determines whether the ownership of the off-chain data to be confirmed is the same as the ownership of the on-chain evidence data corresponding to HA.
2. The data ownership confirmation method based on blockchain according to claim 1, characterized in that, Step S500 includes the following steps: S511, Obtain the first preset value M = 1 and the (M+1)th preset value W. M =0; S512, Traverse HB M If HB M,j_M =HA M,j_M Then obtain W M =W M +1; S513, if W M =f(M), then the ownership of the off-chain data to be confirmed is the same as the ownership of the on-chain evidence data corresponding to HA.
3. The data ownership confirmation method based on blockchain according to claim 2, characterized in that, Following step S513, the method further includes the following steps: S521, if W M If f(M) < f(M), then obtain M = M + 1; S522, traverse HB M If HB M,j_i =HA M,j_i Then obtain W M =W M +1; S523, Obtain HB M With HA M Similarity λ between M =W M / f(M); S524, if Then proceed to S521; otherwise, proceed to S525. S525, if λ M ≤YZ M,1 Then it is determined that the ownership of the off-chain data to be confirmed is different from the ownership of the on-chain evidence data corresponding to HA; among them, YZ M,1 For HA M and HB M The corresponding first preset similarity threshold; S526, if λ M ≥YZ M,2 Then it is determined that the ownership of the off-chain data to be confirmed is the same as the ownership of the on-chain evidence data corresponding to HA; where YZ M,2 For HA M and HB M The corresponding second preset similarity threshold; YZ M,2 >YZ M,1 .
4. The data ownership confirmation method based on blockchain according to claim 3, characterized in that, Following step S526, the method further includes the following steps: S531, if YZ M,1 <λ M <YZ M,2 Then we get M = M + 1; S532, Traverse HB M If HB M,j_i =HA M,j_i Then obtain W M =W M +1; S533, Obtain HB M With HA M Similarity λ between M =W M / f(M); S534, if M < n, then proceed to S532; otherwise, obtain the similarity list λ = (λ2, λ3, ..., λn). r , …, λ n ), r = 2, 3, ..., n; where λ r For HB r With HA r The similarity between them; S535, if the similarity in λ increases sequentially and YZ r,1 <λ r <YZ r,2 Then HA n HA n,j_n ≠HB n,j_n The corresponding subchain data is identified as the subchain data to be determined. S536, the ownership of data under each sub-chain to be determined is determined manually.
5. The data ownership confirmation method based on blockchain according to claim 3 or 4, characterized in that, YZ a,1 <YZ a+1,1 ,YZ a,2 <YZ a+1,2 ;a=2,3,…,n-1。 6. The data ownership confirmation method based on blockchain according to claim 1, characterized in that, The first feature includes the hash value, and the second feature includes the hash value.
7. The data ownership confirmation method based on blockchain according to claim 1, characterized in that, f(i) = 10 × i; n = 10.
8. A non-transitory computer-readable storage medium, wherein the storage medium stores at least one instruction or at least one program segment, characterized in that, The at least one instruction or the at least one program segment is loaded and executed by the processor to implement the blockchain-based data ownership confirmation method as described in any one of claims 1-7.
9. An electronic device, characterized in that, Includes a processor and the non-transitory computer-readable storage medium as described in claim 8.