A blockchain-based data collaboration method and system
By building blockchain nodes within the user's end and uploading data based on contribution, and adjusting the analysis results based on credibility, the problem of poor performance in blockchain data collaboration is solved, and security and credibility are improved.
Patent Information
- Application Number
- CN202210468391.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-29
- Publication Date
- 2025-11-14
- Estimated Expiration
- 2042-04-29
AI Technical Summary
In blockchain-based data collaboration, each node can access all block data, leading to the same collaborative results and thus poor performance.
Blockchain nodes are built on multiple user terminals, and different amounts of data are uploaded according to the contribution level. Blockchain bars are set up through blockchain technology. The user terminal obtains the corresponding amount of data according to the contribution level, and the analysis results are adjusted based on the credibility.
It improves the security and effectiveness of data collaboration, protects users' rights, reduces losses from malicious forgery and tampering of data, and enhances the credibility of data collaboration.
Smart Images

Figure CN115203732B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of data collaboration technology, and specifically to a data collaboration method and system based on blockchain. Background Technology
[0002] Data collaboration can combine data provided by multiple parties, increasing the amount of data while combining data dimensions under different business scenarios to carry out data analysis, evaluation, risk control, and other tasks, thereby improving the accuracy or breadth of data analysis and processing.
[0003] Data collaboration requires addressing trust issues and ensuring data security. Blockchain, with its advantages of decentralization, high trustworthiness, and traceability, is being applied in the field of data collaboration.
[0004] Currently, while blockchain-based data collaboration ensures privacy and security during data flow and use within the blockchain, the fact that each node can access all block data within the blockchain means that nodes contributing different data can obtain the same collaborative results, leading to a technical problem of poor data collaboration effectiveness. Summary of the Invention
[0005] This application provides a blockchain-based data collaboration method and system to address the technical problem in existing technologies where different contributing nodes can obtain the same data collaboration results in poor data collaboration effectiveness when blockchain is applied to data collaboration.
[0006] In view of the above problems, this application provides a data collaboration method and system based on blockchain.
[0007] The first aspect of this application provides a blockchain-based data collaboration method, applied to a blockchain-based data collaboration system. The system includes multiple user terminals, among which a first user terminal is included. The method includes: the first user terminal constructing a first node; constructing a first blockchain based on the nodes within the multiple user terminals; wherein the multiple user terminals collaborate based on a first data collaboration relationship; based on the first data collaboration relationship, the first user terminal uploads data for data collaboration to the first blockchain through the first node; the first user terminal obtains at least a portion of the data uploaded by other user terminals through the first blockchain; performs data collaboration analysis based on the data uploaded by other user terminals to obtain a first analysis result; obtains multiple trust levels for other user terminals based on the first analysis result; and adjusts the first analysis result based on the multiple trust levels to obtain a second analysis result.
[0008] A second aspect of this application provides a blockchain-based data collaboration system, the system comprising: a first construction unit, configured to construct a first node on a first user terminal, and construct a first blockchain based on nodes within multiple user terminals, wherein the multiple user terminals collaborate based on a first data collaboration relationship; a first processing unit, configured to upload data for data collaboration to the first blockchain through the first node based on the first data collaboration relationship; a first obtaining unit, configured to obtain at least a portion of the data uploaded by other user terminals through the first blockchain by the first user terminal; a second processing unit, configured to perform data collaboration analysis based on the data uploaded by other user terminals to obtain a first analysis result; a second obtaining unit, configured to obtain multiple trust levels of other user terminals based on the first analysis result; and a third processing unit, configured to adjust the first analysis result based on the multiple trust levels to obtain a second analysis result.
[0009] A third aspect of this application provides an electronic device comprising: a processor coupled to a memory for storing a program, wherein when the program is executed by the processor, the electronic device performs the steps of the method as described in the first aspect.
[0010] A fourth aspect of this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the method described in the first aspect.
[0011] One or more technical solutions provided in this application have at least the following technical effects or advantages:
[0012] The technical solution provided in this application embodiment constructs blockchain nodes in multiple user terminals that need to perform data collaboration, and then builds a blockchain. Based on their different contributions to the data collaboration relationship, each user terminal can upload data of different sizes to the blockchain through the corresponding node for data collaboration. Blocks are set to form blockchain bars. Each user terminal can obtain data uploaded by other user terminals of corresponding sizes in the blockchain according to its own contribution, use it for its current data collaboration, obtain analysis results, and obtain the credibility of other user terminals in the current data collaboration based on the current analysis results. The credibility is used to adjust the current analysis results to obtain the final data collaboration analysis result. In this application's embodiment of data collaboration based on blockchain, users contribute a certain amount of data according to their contribution level. Correspondingly, they can only obtain data contributed by other users in a corresponding amount based on their contribution level. This ensures that the collaborative data obtained by a user is commensurate with their own contribution. Furthermore, specific methods are set to prevent users from falsifying the amount of data they obtain, avoiding the acquisition of data that is disproportionate to their contribution, protecting users' rights in data collaboration, and improving the security and effectiveness of data collaboration. Additionally, by analyzing the credibility of users in data collaboration, the data collaboration analysis results are adjusted based on the credibility level, reducing the losses caused to other users by malicious forgery or tampering of data outside the blockchain, further enhancing the credibility and effectiveness of data collaboration. This achieves the technical effect of improving the security and effectiveness of data collaboration.
[0013] The above description is only an overview of the technical solution of this application. In order to better understand the technical means of this application and to implement it in accordance with the contents of the specification, and to make the above and other objects, features and advantages of this application more obvious and understandable, the following are specific embodiments of this application. Attached Figure Description
[0014] Figure 1 This application provides a schematic diagram of a blockchain-based data collaboration method.
[0015] Figure 2 A schematic diagram illustrating the process of obtaining an analytical data set in a blockchain-based data collaboration method provided in this application;
[0016] Figure 3 A schematic diagram illustrating the process of obtaining the trustworthiness of multiple user terminals in a blockchain-based data collaboration method provided in this application;
[0017] Figure 4 This application provides a schematic diagram of a blockchain-based data collaboration system architecture;
[0018] Figure 5 This is a schematic diagram of the structure of an exemplary electronic device of this application.
[0019] Explanation of reference numerals in the attached drawings: First building unit 11, first processing unit 12, first obtaining unit 13, second processing unit 14, second obtaining unit 15, third processing unit 16, electronic device 300, memory 301, processor 302, communication interface 303, bus architecture 304. Detailed Implementation
[0020] This application provides a blockchain-based data collaboration method and system to address the technical problem in existing blockchain applications for data collaboration, where different contributing nodes can obtain the same data collaboration results, leading to poor data collaboration effectiveness.
[0021] Application Overview
[0022] Data collaboration can combine data provided by multiple parties, increasing the amount of data while combining data dimensions under different business scenarios to carry out data analysis, evaluation, risk control, and other tasks, thereby improving the accuracy or breadth of data analysis and processing.
[0023] Data collaboration requires addressing trust issues and ensuring data security. Traditional privacy protection technologies sacrifice data usability to varying degrees, leading to reduced data availability in collaborative work. While ensuring data security, they also compromise the accuracy required for collaborative work. Blockchain, due to its advantages of decentralization, high trustworthiness, and traceability, is being applied to the field of data collaboration, ensuring data security without compromising data usability.
[0024] Currently, while blockchain-based data collaboration ensures privacy and security during data flow and use within the blockchain, the fact that each node can access all block data within the blockchain means that nodes contributing different data can obtain the same collaborative results, leading to a technical problem of poor data collaboration effectiveness.
[0025] To address the aforementioned technical problems, the overall approach of the technical solution provided in this application is as follows:
[0026] The technical solution provided in this application embodiment constructs blockchain nodes in multiple user terminals that need to perform data collaboration, and then builds a blockchain. Based on their different contributions to the data collaboration relationship, each user terminal can upload data of different sizes to the blockchain through the corresponding node for data collaboration. Blocks are set to form blockchain bars. Each user terminal can obtain data uploaded by other user terminals of corresponding sizes in the blockchain according to its own contribution, use it for its current data collaboration, obtain analysis results, and obtain the credibility of other user terminals in the current data collaboration based on the current analysis results. The credibility is used to adjust the current analysis results to obtain the final data collaboration analysis result.
[0027] After introducing the basic principles of this application, the technical solutions of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of the embodiments of this application. It should be understood that this application is not limited to the exemplary embodiments described herein. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application. It should also be noted that, for ease of description, only the parts related to this application are shown in the accompanying drawings, not all of them.
[0028] Example 1
[0029] like Figure 1 As shown, this application provides a blockchain-based data collaboration method. The method is applied to a blockchain-based data collaboration system, which includes multiple user terminals, among which a first user terminal is included. The method includes:
[0030] S100: The first user terminal constructs a first node, and based on the nodes within the multiple user terminals, constructs a first blockchain, wherein the multiple user terminals work collaboratively based on a first data collaboration relationship;
[0031] In this embodiment of the application, the multiple user terminals are multiple users who need to perform data collaboration. For example, the multiple user terminals can be cooperative enterprises or competing enterprises in the same industry field, multiple enterprises in the upstream and downstream of an industry chain, or multiple departments within an enterprise, etc.
[0032] The first user terminal can be any one of the multiple user terminals. There is a data collaboration relationship between the multiple user terminals. For example, each user terminal needs to contribute sales data and customer profiles to conduct collaborative data analysis on advertising placement plans, product adjustment plans, etc., but it is not limited to this.
[0033] Optionally, based on existing blockchain technology, blockchain nodes are constructed in multiple user terminals, with the first node constructed in the first user terminal. Each node is an electronic device with a certain amount of storage space and computing power to support the work of each user terminal in the blockchain.
[0034] Based on multiple nodes within multiple user terminals, the data used for data collaboration is set into blocks through processing operations in blockchain technology, thus forming blockchain strips, and thus forming the first blockchain mentioned above.
[0035] S200: Based on the first data collaboration relationship, the first user terminal uploads data for data collaboration to the first blockchain through the first node;
[0036] Specifically, based on the initial data collaboration relationship among multiple user terminals, the current first user uploads data to the first blockchain through its corresponding first node. Blockchain-based processing operations form blocks for storage. Other user terminals with corresponding permissions can access the data uploaded by the first user terminal and collaborate on data processing, without being able to tamper with, add to, or delete the data. If data is tampered with or added to, the information within the block formed by that data will also change, and all other user terminals will be aware of the data alteration or deletion, as well as the user terminal that performed the operation. Thus, blockchain technology ensures data security and prevents a single or a few user terminals from affecting the data collaboration of other user terminals.
[0037] In the process of uploading data through the first node, the first user terminal can also encrypt the data based on the encryption technology in blockchain technology. For example, asymmetric encryption is used to ensure the privacy of the data, so that other user terminals in the first blockchain can use the data but cannot know it.
[0038] Furthermore, multiple user terminals collaborate on data based on the first data collaboration relationship. Since each user terminal has a different scale, the amount of data stored for data collaboration in actual business also varies. For example, a larger user terminal needs to analyze more data than a smaller user terminal.
[0039] Therefore, the amount of data contributed by user terminals of different sizes when using the first blockchain for data collaboration varies, and user terminals can also set their own data contribution limits for collaboration. If their data collaboration needs are greater, they can contribute a larger amount of data. Thus, based on the current data size of the first user terminal and its own data collaboration needs, each user terminal sets its contribution level in the first data collaboration relationship, and then contributes and collaborates. Consequently, the amount of data uploaded by different user terminals through their respective nodes will vary.
[0040] S300: The first user terminal obtains at least a portion of the data uploaded by the other user terminals through the first blockchain;
[0041] Specifically, multiple user terminals participate in the aforementioned first blockchain. After each user terminal uploads the data used for data collaboration to the first blockchain through the corresponding node, each user terminal can obtain the data contributed and uploaded by other user terminals through the first blockchain to perform data collaboration.
[0042] In this embodiment of the application, when obtaining data contributed by other users, it is necessary to obtain all or part of the data contributed by other users based on the contribution level of the current first user terminal within the first data collaboration relationship. That is, the amount of data contributed by other users that the current first user terminal can obtain is related to the amount of data contributed by itself.
[0043] In this scenario, if the first user terminal contributes a large amount of data and its contribution is significant, it can obtain more or even all of the data contributed by other user terminals, enabling more comprehensive data collaboration. Conversely, if the first user terminal contributes a small amount of data and its contribution is insignificant, it can obtain a smaller portion of the data contributed by other users, resulting in less effective data collaboration.
[0044] In the process of acquiring data contributed and uploaded by other users, the amount of data acquired is related to the amount of data contributed by the first user. To ensure that the first user does not acquire excessive data during this process and to guarantee the fairness of data collaboration, in this embodiment, after acquiring data contributed by other users, the acquired data needs to be hashed and then a new block is constructed and stored in the first blockchain. This ensures that each user can only acquire data corresponding to its own contribution, and that the acquired data and acquisition time are recorded in the blockchain and cannot be tampered with, preventing users from acquiring data exceeding their own contribution and ensuring the fairness of data collaboration.
[0045] S400: Perform collaborative data analysis based on the data uploaded by the other user terminals to obtain a first analysis result;
[0046] Specifically, after acquiring at least a portion of the data uploaded by other user terminals based on the first blockchain, the current first user terminal combines the data contributed by other user terminals with its own business data to conduct data collaboration, such as user profiling analysis, adjusting technical research directions, and changing product architecture. By combining business data from other companies with similar businesses or supply relationships for data collaboration, the dimensionality, accuracy, and effectiveness of data processing can be improved.
[0047] After the first user terminal obtains at least a portion of the data contributed and uploaded by other user terminals corresponding to its own contribution data volume, it exemplarily uses this data to perform collaborative data analysis and obtains a first analysis result. This first analysis result includes multiple analysis results using data contributed by multiple user terminals and the first user terminal's own data, and these multiple analysis results are not entirely the same.
[0048] S500: Based on the first analysis result, obtain multiple credibility levels for other user terminals;
[0049] In this embodiment of the application, the first analysis result includes multiple analysis results of collaborative work of multiple user terminal data. In actual business, some user terminals may forge or tamper with some data to contribute in the data collaboration work with competitive relationships, so as to affect the data collaboration work effect of other user terminals and protect their own data security.
[0050] Therefore, after obtaining the initial analysis result, the first user terminal needs to assess the credibility of other user terminals and adjust the initial analysis result accordingly to avoid affecting its own data collaboration analysis. Conversely, other user terminals can also analyze the credibility of the first user terminal during data collaboration and adjust their own analysis results accordingly.
[0051] In this embodiment, the multiple user terminals are preferably multiple enterprises with similar businesses. In the data collaboration work, data collaboration is carried out based on the different data generated during the process of similar businesses on multiple user terminals.
[0052] Optionally, when specifically analyzing and judging the credibility of other user terminals, the analysis can be based on the difference between the analysis results of a particular user terminal's contribution data and the analysis results of other user terminals' contribution data in the first analysis results. For example, if the difference between the analysis results corresponding to a particular user terminal's contribution data and other analysis results is small, and the difference is due to different actual business operations, then the difference is valuable, and the credibility of that user terminal should not be adjusted. Conversely, if the difference between the analysis results corresponding to a particular user terminal's contribution data and other analysis results is large, and based on historical data experience, it is determined that the difference is not due to different actual business operations, then it can be considered that the user terminal is suspected of forging or tampering with data, and the credibility of that user terminal in the current data collaboration work needs to be adjusted and reduced.
[0053] When analyzing whether there is a significant discrepancy between the analysis results of each user's contribution data and other analysis results, a threshold can be set based on actual business experience. If the discrepancy is greater than the threshold, it can be considered that there is a credibility issue. The larger the discrepancy is from the threshold, the lower the credibility of that user can be adjusted. The specific degree of adjustment can be set according to the actual size of the difference and the actual business.
[0054] S600: Adjust the first analysis result according to the multiple confidence levels to obtain the second analysis result.
[0055] In this embodiment of the application, based on the credibility of multiple user terminals analyzed above, the analysis results obtained from the collaborative work of the data contributed by each user terminal are adjusted to obtain an adjusted second analysis result, which serves as the final data collaborative work result of the first user terminal for the first user terminal to refer to.
[0056] Optionally, in the specific process of adjusting the first analysis result, weights can be set according to the credibility of multiple user terminals, and the analysis results of the data contributed by multiple user terminals in the first analysis result can be weighted. For analysis results with smaller weights, their reference importance when used as reference data is reduced, thus obtaining the second analysis result.
[0057] In another possible embodiment of this application, a credibility threshold can be set according to the credibility levels of multiple user terminals. For analysis results and corresponding user terminals with credibility levels lower than the credibility threshold, the user terminal can be disregarded, and only analysis results with credibility levels higher than the credibility threshold can be used as the second analysis result.
[0058] The method of adjusting the first analysis result based on the credibility of multiple user terminals can also employ other adjustment methods in the existing technology, and no restrictions are placed on the adjustment methods here.
[0059] In this application's embodiment, during data collaboration based on blockchain, users contribute a certain amount of data according to their contribution level. Correspondingly, they can only obtain data contributed by other users in a corresponding amount based on their contribution level. This ensures that the collaborative data obtained by a user is commensurate with their own contribution. Furthermore, specific methods prevent users from falsifying the amount of data they obtain, avoiding situations where users acquire data that is disproportionate to their contribution. This protects the data collaboration process and the rights of users involved, enhancing the security and effectiveness of data collaboration. Additionally, by analyzing the user's credibility in data collaboration, the analysis results are adjusted accordingly, reducing the losses caused to other users by malicious forgery or tampering of data outside the blockchain. This further enhances the credibility and effectiveness of data collaboration, achieving the technical effect of improving the security and effectiveness of data collaboration.
[0060] Step S200 in the method provided in this application embodiment includes:
[0061] S210: Based on the first data collaboration relationship, the first user terminal obtains the first contribution degree within the first data collaboration relationship;
[0062] S220: The first user terminal obtains a first data set for uploading and data collaboration;
[0063] S230: Adjust the size of the first data set according to the first contribution level to obtain the second data set;
[0064] S240: Upload the second data set to the first blockchain through the first node.
[0065] Step S230 in the method provided in this application embodiment includes:
[0066] S231: Obtain the data scale information of the first user terminal based on the first data collaboration relationship;
[0067] S232: Based on the first contribution level, obtain the data collaboration requirement information of the first user terminal;
[0068] S233: Obtain adjustment parameters based on the data coordination requirement information;
[0069] S234: Adjust the size of the first data set using the adjustment parameters.
[0070] In this embodiment of the application, based on the first data collaboration relationship between multiple user terminals, the size of the first user terminal among the multiple user terminals is obtained. Specifically, the size of the first user terminal in the business corresponding to the data collaboration work required within the current first data collaboration relationship can be obtained. The larger the size, the larger the amount of data obtained in the actual business, and the greater the contribution of the first user terminal in contributing data.
[0071] Furthermore, based on the current needs of the first user terminal for data collaboration, the contribution levels in the initial above content are adjusted. If the first user terminal has a very high demand for the current data collaboration, it can contribute all data, increasing the amount of data it receives from other user terminals, thereby increasing the total amount of data in the data collaboration process. If the first user terminal has a relatively low demand for the current data collaboration, it can contribute only a portion of the data, using the analysis results of the data collaboration as a reference. The size of this demand can be determined based on the actual business needs of the first user terminal. In this way, the first user terminal's initial contribution level within the first data collaboration relationship is obtained; similarly, the contribution levels of other user terminals can also be obtained. Among the contributions from multiple user terminals, the contribution level is directly proportional to the amount of data that each user terminal can contribute.
[0072] Obtain all data from the first user terminal in the business corresponding to the first data collaboration relationship. All of this data can be used for data collaboration analysis and is used as the first data set.
[0073] Furthermore, the first contribution level mentioned above is used to adjust the size of the data in the first data set based on the first contribution level.
[0074] During the specific adjustment process, the data scale information of the first user terminal in the current data collaboration work can be obtained based on the scale of each user terminal in the relevant business in the first data collaboration relationship mentioned above.
[0075] Further, based on this first contribution, the data collaboration requirements of the first user terminal for the current data collaboration work are obtained. This requirement information is related to both the first contribution and the amount of data that the first user can contribute for data collaboration. Based on this data collaboration requirement information, an adjustment parameter is obtained to adjust the size of the first data set. The size of this adjustment parameter is positively correlated with the size of the first contribution.
[0076] The adjustment parameter is used to adjust the size of the data in the first data set, ensuring that the data size matches the data size information of the first user terminal. Then, an adjustment parameter related to the first contribution level is used for further adjustment. Specifically, if the adjustment parameter matches the initial contribution level mentioned above, meaning the first user terminal needs to contribute all data for data collaboration, then the size of the data in the first data set is not adjusted. If the adjustment parameter is small, the data size in the first data set is reduced. This can be achieved by randomly selecting a portion of the data in the first data set to reduce the data size and obtain the second data set.
[0077] In the process of reducing the amount of data in the first dataset based on the first contribution, the degree of data reduction can be set according to the size of the adjustment parameter and the contribution of other users.
[0078] After obtaining the second data set, the second data set is uploaded to the first blockchain through the first node. In the specific upload process, based on blockchain technology, the hash value corresponding to the data in the second data set is obtained through hash processing, and the block header is set according to the timestamp at the time of upload, etc., to upload the second data set and form a blockchain bar.
[0079] This application embodiment sets the contribution level of different user terminals in data collaboration work based on the relevant business data scale of different user terminals and the needs of different users in data collaboration work. It also sets the amount of data to be uploaded for contribution based on different contribution levels, so as to make different data contributions and thus obtain different data collaboration work results. This enables personalized data collaboration work and improves the effectiveness of data collaboration work.
[0080] like Figure 2 As shown, step S300 in the method provided in this application embodiment includes:
[0081] S310: Obtain a first proportional coefficient based on the ratio of the amount of data in the second data set to the amount of data in the first data set;
[0082] S320: Obtain a second proportion coefficient based on the proportion of the second data set in all the data uploaded by the users;
[0083] S330: Based on the first proportional coefficient and the second proportional coefficient, the first user terminal obtains at least a portion of the data uploaded by the other user terminals as an analysis data set;
[0084] S340: Set up analysis data blocks for the acquired analysis data set;
[0085] S350: The analysis data block is stored in the first blockchain through the first node.
[0086] Specifically, after all user terminals upload data for collaborative data work through their respective nodes and form a blockchain, each user can obtain the data contributed and uploaded by other user terminals based on blockchain technology and carry out collaborative data work.
[0087] Based on the foregoing, the amount of data contributed by each user terminal during the data contribution phase varies. Therefore, the amount of data contributed by other user terminals that each user terminal can obtain also varies and is related to its own contribution level. Thus, user terminals with lower contribution levels can obtain a smaller portion of the data contributed by other user terminals, while user terminals with higher contribution levels can obtain a larger portion or even all of the data contributed by other user terminals.
[0088] In this embodiment of the application, during the specific process of acquiring data contributed by other users, for the current first user terminal, a first proportional coefficient is first obtained based on the ratio of the amount of data in the second data set to the amount of data in the first data set. This first proportional coefficient is related to the aforementioned data collaboration requirement information. The first proportional coefficient is the ratio between the data contributed by the first user terminal and the data it possesses. The larger this proportional coefficient is, the greater the first user terminal's need for data collaboration, and the greater the effort it makes.
[0089] Furthermore, based on the proportion of the second data set in the total data uploaded by all users, a second proportional coefficient is obtained. This second proportional coefficient is the proportion of the data contributed by the first user in the total data contributed by all users. The larger the coefficient, the greater the contribution made by the first user in the current data collaboration work, and the more data contributed by other users can be obtained.
[0090] Based on the first and second proportional coefficients, the first user terminal obtains at least a portion of the data uploaded by other user terminals. Optionally, an average proportional coefficient can be calculated from all data uploaded by all user terminals. If the second proportional coefficient is greater than the average proportional coefficient, the first user terminal's contribution is significant, and all data contributed by other user terminals can be obtained. Conversely, if the second proportional coefficient is less than the average proportional coefficient, the first user terminal's contribution is below average, and only a portion of the data contributed by other user terminals can be obtained.
[0091] Furthermore, the second proportional coefficient is adjusted based on the first proportional coefficient. If the first proportional coefficient is close to 1, the second proportional coefficient is increased, but it cannot exceed the average proportional coefficient. This increases the proportion of data contributed by other user terminals that the first user terminal can obtain. However, since the total contribution of the first user terminal is relatively small, it still cannot obtain all the data. If the first proportional coefficient is small, or even close to 0, the first user terminal has a lower need for data collaboration. In this case, the second proportional coefficient is decreased, reducing the proportion of data contributed by other user terminals that the first user terminal can obtain. The specific degree of adjustment can be set according to the magnitude of the first and second proportional coefficients.
[0092] In this way, the first user terminal obtains at least a portion of the data contributed by other user terminals as an analysis data set for collaborative data analysis.
[0093] After obtaining the analysis data set, in order to ensure that the first user terminal cannot maliciously obtain more data than it is entitled to, the analysis data set is set up with analysis data blocks based on blockchain technology and stored on the aforementioned first blockchain.
[0094] Step S340 in the method provided in this application embodiment includes:
[0095] S341: Hash the analysis data set within the first node to obtain block identification information;
[0096] S342: Combine the analyzed dataset into block text;
[0097] S343: Use the time of acquiring the analysis data set as the block timestamp;
[0098] S344: Set the analysis data block according to the block identification information, block text and block timestamp.
[0099] Specifically, after the first user terminal obtains the set of analytical data it is entitled to in the data collaboration work, the data in the set of analytical data is hashed within the corresponding first node to obtain block identification information that can identify the data in the set of analytical data. After constructing the analytical data block based on the block identification information, if the first user terminal maliciously downloads data outside the set of analytical data through the first node, the block identification information will change, thereby making other user terminals aware that the first user terminal has violated the rules. In this way, the fairness and security of the data collaboration work are guaranteed.
[0100] Furthermore, based on blockchain technology, the analyzed dataset is compiled into block text, and the time when the first user terminal acquired the analyzed dataset is obtained is used as the block timestamp. Then, the analyzed data block is set by combining the block identification information, the block text, and the block timestamp. This can be combined with analyzed data blocks acquired by other user terminals to form a blockchain. In this way, the security of the data obtained by each user terminal according to their contribution is guaranteed.
[0101] The analysis data blocks from the first user terminal are stored in the first blockchain through the first node, and then distributed to the first user terminal through the first node for collaborative data processing. During storage, asymmetric encryption is used to ensure data security, and the data forms a blockchain chain with analysis data blocks from other user terminals, allowing for traceability and preventing tampering or deletion.
[0102] This application embodiment obtains at least a portion of the data contributed by other users based on the ratio of the amount of data contributed by each user in the data collaboration work to their own data ownership, as well as the ratio of their contributed data to the total amount of data contributed by all users. This allows for the personalized acquisition of different shares of analytical data based on the data scale of each user and the data collaboration needs, thereby improving the effectiveness of data collaboration. Furthermore, by using blockchain technology to store the obtained analytical data in blocks, it prevents malicious acquisition of excessive data and enhances the fairness of the data collaboration work.
[0103] like Figure 3 As shown, step S500 in the method provided in this application embodiment includes:
[0104] S510: Based on the first analysis result, obtain multiple analysis results of collaborative data analysis based on data uploaded by other user terminals;
[0105] S520: Construct a credibility analysis model;
[0106] S530: Input multiple analysis results into the credibility analysis model to obtain multiple credibility analysis results;
[0107] S540: Based on the multiple credibility analysis results, obtain multiple credibility levels for other user terminals.
[0108] Specifically, the first analysis result described above includes multiple analysis results obtained through data collaboration based on at least a portion of the data contributed by multiple users. In this embodiment of the application, a credibility analysis model is constructed to perform credibility analysis on each user end based on the differences between the multiple analysis results.
[0109] Step S520 in the method provided in this application embodiment includes:
[0110] S521: Based on the first analysis result, obtain the first feature dataset;
[0111] S522: Based on the first feature dataset, construct multi-level classification nodes of the first analysis tree model sequentially to obtain the first analysis tree model;
[0112] S523: Based on the first analysis result, obtain the second feature dataset;
[0113] S524: Based on the second feature dataset, construct multi-level classification nodes of the second analysis tree model sequentially to obtain the second analysis tree model;
[0114] S525: Repeatedly build to obtain multiple analysis tree models;
[0115] S526: Based on multiple analysis tree models, set up various confidence analysis results under supervision;
[0116] S527: Integrate multiple analysis tree models and construct the credibility analysis model based on the results of the various credibility analyses.
[0117] Specifically, the aforementioned first analysis result includes multi-dimensional analysis results obtained based on data uploaded and contributed by other users. For example, if the purpose of the current data collaboration is to build user profiles, the first analysis result includes multi-dimensional analysis results such as user age distribution, repurchase probability, average order value, and advertising recommendation methods. If data tampering or forgery occurs on a particular user's end, the multi-dimensional analysis results obtained from the analysis of data uploaded by that user will differ significantly from other analysis results, and a credibility analysis will be conducted based on this.
[0118] Specifically, based on the first analysis result, the first feature dataset is obtained. For example, when constructing a user profile based on data collaborative analysis, all analysis results data of the user repurchase probability dimension are obtained as the first feature dataset.
[0119] Based on the principle of decision trees, the first feature dataset is used to construct multi-level classification nodes of the first analysis tree model. Each level of classification node can perform binary classification on the input data. Specifically, based on the data values in the first feature dataset, a corresponding interval including all data values is set. Multiple values are randomly selected within this interval as classification thresholds in the multi-level classification nodes, and multiple binary classifications are performed.
[0120] When the first analysis result is input into the first analysis tree model, multi-level classification nodes can perform multiple classifications based on the first feature data within multiple analysis results to obtain the final classification result. Since the analysis results obtained from normal data after collaborative data analysis are relatively similar, while the analysis results obtained from forged or tampered abnormal data differ significantly from those corresponding to normal data, in the classification by multi-level classification nodes, the analysis results corresponding to abnormal data are more easily classified as individual data by lower-level classification nodes. Conversely, the analysis results of normal data have smaller and more closely related differences, making them difficult to classify as individual data, or requiring multiple levels of classification nodes to classify them as individual data. Therefore, by setting a level threshold for a classification node, individual analysis results obtained by classification nodes below that level threshold are considered abnormal data. These analysis results differ significantly from normal analysis results, and the data corresponding to these results may be tampered or forged, potentially leading to lower credibility on the user end.
[0121] Furthermore, based on the above steps, a second feature dataset is obtained according to the first analysis result. This second feature dataset is different from the first feature dataset. Multi-level classification nodes of the second analysis tree model are constructed based on the second feature dataset to obtain the second analysis tree model.
[0122] Based on the dimensions of the feature data within the first analysis result, and based on the aforementioned steps, multiple analysis tree models are constructed. Each of the multiple analysis tree models can classify multiple analysis results from multiple user terminals within the first analysis result multiple times based on feature data from multiple different dimensions, and detect analysis results that differ significantly from most analysis results.
[0123] Based on these multiple analytic tree models, and using supervised learning, various credibility analysis results are set. Specifically, for multiple analysis results classified by the multiple analytic tree models that differ significantly from other analysis results, the difference between these results and other normal analysis results is further calculated. Different credibility levels are assigned to the corresponding user endpoints based on the magnitude of the difference, with larger differences resulting in lower credibility. For analysis results deemed normal by the model analysis, no credibility level is adjusted for the corresponding user endpoint. In this way, setting multiple credibility analysis results enables accurate identification of analysis results that may have been obtained through data tampering or forgery based on the tree model.
[0124] By integrating the aforementioned multiple analytic tree models, an overall input and output layer is constructed. Multiple data channels connect these models, and based on the results of various credibility analyses, a final credibility analysis model is built for credibility analysis. During the analysis, the classification results from multiple analytic tree models, along with the discrepancies between the abnormal and normal analysis results obtained from the classification, are combined to arrive at the final credibility analysis result.
[0125] This application embodiment utilizes ensemble learning in machine learning to analyze data that may have been tampered with or forged using multiple tree-structured models. It identifies anomalous results based on the magnitude of the differences between the analysis results. In the classification results of the tree-structured models, the analysis results obtained from lower-level node classifications are considered anomalous. Furthermore, the credibility of the corresponding user terminal is adjusted and set, enabling accurate analysis and identification of user terminal credibility based on the analysis results. Moreover, the model construction process requires no supervision; only the setting of different credibility analysis results needs to be supervised, resulting in low computational cost for model construction.
[0126] Thus, by inputting multiple analysis results from the first analysis result into the credibility analysis model, the multiple analysis tree models within it can classify and identify the multiple analysis results according to features of different dimensions, obtain analysis results that may be abnormal and the differences between them and other normal analysis results. By combining the classification results of multiple analysis tree models, the credibility analysis results of each analysis result can be obtained, and thus the credibility analysis results of multiple user terminals can be obtained, ultimately obtaining the credibility of multiple user terminals.
[0127] In summary, in the process of data collaboration based on blockchain, users contribute a certain amount of data according to their contribution level. Correspondingly, they can only obtain data contributed by other users in a corresponding amount based on their contribution level. This ensures that the collaborative data obtained by users is commensurate with their own contribution. Furthermore, the data obtained by users is stored using blockchain technology, preventing users from falsifying the amount of data they obtain. This avoids users obtaining data amounts that do not match their contribution level, protects the rights and interests of users in data collaboration, and improves the security and effectiveness of data collaboration. In addition, by constructing a model to analyze the credibility of users in data collaboration, the data collaboration analysis results are adjusted based on the credibility, reducing the losses caused to other users by users maliciously forging or tampering with data outside the blockchain. This further enhances the credibility and effectiveness of data collaboration, achieving the technical effect of improving the security and effectiveness of data collaboration.
[0128] Example 2
[0129] Based on the same inventive concept as the blockchain-based data collaboration method in the foregoing embodiments, such as Figure 4 As shown, this application provides a blockchain-based data collaboration system, wherein the system includes:
[0130] The first construction unit 11 is used to build a first node on a first user terminal and to build a first blockchain based on the nodes in multiple user terminals, wherein the multiple user terminals work together based on a first data collaboration relationship;
[0131] The first processing unit 12 is used to upload data for data collaboration to the first blockchain through the first node based on the first data collaboration relationship;
[0132] The first obtaining unit 13 is used for the first user terminal to obtain at least a portion of the data uploaded by the other user terminals through the first blockchain;
[0133] The second processing unit 14 is used to perform collaborative data analysis based on data uploaded by other user terminals to obtain a first analysis result;
[0134] The second obtaining unit 15 is used to obtain multiple credibility levels of other user terminals based on the first analysis result;
[0135] The third processing unit 16 is used to adjust the first analysis result according to the multiple confidence levels to obtain the second analysis result.
[0136] Furthermore, the system also includes:
[0137] The third obtaining unit is used to obtain the first contribution degree within the first data collaboration relationship based on the first data collaboration relationship;
[0138] The fourth obtaining unit is used by the first user terminal to obtain a first data set for uploading and data collaboration.
[0139] The fourth processing unit is used to adjust the size of the first data set according to the first contribution level to obtain the second data set;
[0140] The fifth processing unit is used to upload the second data set to the first blockchain through the first node.
[0141] Furthermore, the system also includes:
[0142] The fifth obtaining unit is used to obtain the data scale information of the first user terminal based on the first data collaboration relationship;
[0143] The sixth obtaining unit is used to obtain the data collaboration requirement information of the first user terminal based on the first contribution level;
[0144] The sixth processing unit is used to obtain adjustment parameters based on the data coordination requirement information;
[0145] The seventh processing unit is used to adjust the size of the first data set using the adjustment parameters.
[0146] Furthermore, the system also includes:
[0147] The seventh obtaining unit is used to obtain a first proportional coefficient based on the ratio of the amount of data in the second data set to the amount of data in the first data set;
[0148] The eighth obtaining unit is used to obtain a second proportion coefficient based on the proportion of the second data set in all the data uploaded by the users.
[0149] The eighth processing unit is used to obtain at least a portion of the data uploaded by the other user terminals based on the first proportional coefficient and the second proportional coefficient, and to use it as an analysis data set.
[0150] The ninth processing unit is used to set analysis data blocks on the acquired analysis data set;
[0151] The tenth processing unit is used to store the analysis data block in the first blockchain through the first node.
[0152] Furthermore, the system also includes:
[0153] The eleventh processing unit is used to perform hash processing on the analysis data set within the first node to obtain block identification information;
[0154] The twelfth processing unit is used to convert the analysis dataset into block text.
[0155] The ninth obtaining unit is used to use the time of obtaining the analysis data set as the block timestamp;
[0156] The thirteenth processing unit is used to set the analysis data block according to the block identification information, the block text and the block timestamp.
[0157] Furthermore, the system also includes:
[0158] The tenth obtaining unit is used to obtain multiple analysis results based on the first analysis result and the collaborative data analysis performed on data uploaded by other user terminals;
[0159] The second building unit is used to build the credibility analysis model;
[0160] The eleventh obtaining unit is used to input multiple analysis results into the credibility analysis model to obtain multiple credibility analysis results;
[0161] The twelfth obtaining unit is used to obtain multiple credibility levels of other user terminals based on multiple credibility analysis results.
[0162] Furthermore, the system also includes:
[0163] The thirteenth obtaining unit is used to obtain the first feature dataset based on the first analysis result;
[0164] The third construction unit is used to construct multi-level classification nodes of the first analysis tree model sequentially based on the first feature dataset to obtain the first analysis tree model;
[0165] The fourteenth obtaining unit is used to obtain the second feature dataset based on the first analysis result;
[0166] The fourth construction unit is used to sequentially construct multi-level classification nodes of the second analysis tree model based on the second feature dataset to obtain the second analysis tree model;
[0167] The fifth building unit is used to repeatedly build and obtain multiple analysis tree models;
[0168] The fourteenth processing unit is used to set multiple confidence analysis results under supervision based on multiple analysis tree models;
[0169] The fifteenth processing unit is used to integrate multiple analysis tree models and construct the credibility analysis model based on the various credibility analysis results.
[0170] Example 3
[0171] Based on the same inventive concept as the blockchain-based data collaboration method in the foregoing embodiments, this application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method as described in Embodiment 1.
[0172] Exemplary electronic devices
[0173] The following is for reference. Figure 5 To describe the electronic device of this application,
[0174] Based on the same inventive concept as the blockchain-based data collaboration method in the foregoing embodiments, this application also provides an electronic device, including: a processor coupled to a memory for storing a program, wherein when the program is executed by the processor, the system performs the steps of the method described in Embodiment 1.
[0175] The electronic device 300 includes a processor 302, a communication interface 303, and a memory 301. Optionally, the electronic device 300 may also include a bus architecture 304. The communication interface 303, processor 302, and memory 301 can be interconnected via the bus architecture 304; the bus architecture 304 can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus architecture 304 can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 5 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.
[0176] Processor 302 may be a CPU, microprocessor, ASIC, or one or more integrated circuits used to control the execution of programs according to the present application.
[0177] Communication interface 303 uses any transceiver-like device for communicating with other devices or communication networks, such as Ethernet, radio access network (RAN), wireless local area network (WLAN), wired access network, etc.
[0178] Memory 301 can be ROM or other types of static storage devices capable of storing static information and instructions, RAM or other types of dynamic storage devices capable of storing information and instructions, or electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but not limited thereto. Memory can exist independently and be connected to the processor via bus architecture 304. Memory can also be integrated with the processor.
[0179] The memory 301 stores computer execution instructions for implementing the scheme of this application, and the processor 302 controls the execution. The processor 302 executes the computer execution instructions stored in the memory 301, thereby realizing the blockchain-based data collaboration method provided in the above embodiments of this application.
[0180] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to a computer or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state drive (SSD)).
[0181] Although this application has been described in conjunction with specific features and embodiments, it is obvious that various modifications and combinations can be made thereto without departing from the spirit and scope of this application. Accordingly, this specification and drawings are merely illustrative examples of this application and are considered to cover any and all modifications, variations, combinations, or equivalents within the scope of this application. Clearly, those skilled in the art can make various alterations and modifications to this application without departing from its scope. Thus, if such modifications and modifications fall within the scope of this application and its equivalents, this application intends to include such modifications and modifications.
Claims
1. A data collaboration method based on blockchain, characterized in that, The method is applied to a blockchain-based data collaboration system, the system including multiple user terminals, among which a first user terminal is included, and the method includes: The first user terminal constructs a first node, and based on the nodes within the multiple user terminals, constructs a first blockchain, wherein the multiple user terminals work collaboratively based on a first data collaboration relationship; Based on the first data collaboration relationship, the first user terminal uploads data for data collaboration to the first blockchain through the first node; The first user terminal obtains at least a portion of the data uploaded by the other user terminals through the first blockchain; Based on the data uploaded by other users, collaborative data analysis is performed to obtain the first analysis result; Based on the first analysis result, obtain multiple credibility levels for the other user terminals; The first analysis result is adjusted based on the multiple confidence levels to obtain the second analysis result; Based on the first data collaboration relationship, the first user terminal uploads data for data collaboration to the first blockchain through the first node, including: Based on the first data collaboration relationship, the first user terminal obtains the first contribution degree within the first data collaboration relationship; The first user terminal obtains a first data set for uploading and data collaboration. Based on the first contribution level, adjust the size of the first data set to obtain a second data set; The second data set is uploaded to the first blockchain through the first node; The step of adjusting the size of the first data set based on the first contribution includes: Based on the first data collaboration relationship, obtain the data scale information of the first user terminal; Based on the first contribution level, obtain the data collaboration requirements information of the first user terminal; Based on the data collaboration requirements, the adjustment parameters are obtained; The size of the first data set is adjusted using the aforementioned adjustment parameters.
2. The method according to claim 1, characterized in that, The step of obtaining at least a portion of the data uploaded by other user terminals through the first blockchain includes: A first proportionality coefficient is obtained based on the ratio of the amount of data in the second data set to the amount of data in the first data set; A second proportional coefficient is obtained based on the proportion of the second data set in the total amount of data uploaded by all the users. Based on the first proportional coefficient and the second proportional coefficient, the first user terminal obtains at least a portion of the data uploaded by the other user terminals as an analysis data set; Set up analysis data blocks for the acquired analysis data set; The analysis data block is stored in the first blockchain through the first node.
3. The method according to claim 2, characterized in that, Setting analysis data blocks for the acquired analysis data set includes: Within the first node, the analyzed data set is hashed to obtain block identification information; The analyzed dataset is compiled into block text; The time when the analysis data set is acquired is used as the block timestamp; The analysis data block is set according to the block identification information, the block text, and the block timestamp.
4. The method according to claim 1, characterized in that, The step of obtaining the credibility of other user terminals based on the first analysis result includes: Based on the first analysis result, multiple analysis results are obtained by performing collaborative data analysis based on data uploaded by other user terminals; Construct a credibility analysis model; Multiple analysis results are input into the credibility analysis model to obtain multiple credibility analysis results; Based on the multiple credibility analysis results, multiple credibility levels of other user terminals are obtained.
5. The method according to claim 4, characterized in that, The construction of the credibility analysis model includes: Based on the first analysis result, obtain the first feature dataset; Based on the first feature dataset, multi-level classification nodes of the first analysis tree model are constructed sequentially to obtain the first analysis tree model; Based on the first analysis result, obtain the second feature dataset; Based on the second feature dataset, multi-level classification nodes of the second analysis tree model are constructed sequentially to obtain the second analysis tree model; Multiple analysis tree models are obtained by repeatedly building the model; Based on multiple analysis tree models, various confidence analysis results are set under supervision; By integrating multiple analysis tree models and constructing the credibility analysis model based on the various credibility analysis results, the credibility analysis model is obtained.
6. A data collaboration system based on blockchain, characterized in that, The system includes: The first construction unit is used to build a first node on a first user terminal and to build a first blockchain based on the nodes within multiple user terminals, wherein the multiple user terminals work collaboratively based on a first data collaboration relationship; The first processing unit is configured to, based on the first data collaboration relationship, have the first user terminal upload data for data collaboration work to the first blockchain through the first node; The first obtaining unit is used to obtain at least a portion of the data uploaded by the other user terminals through the first blockchain; The second processing unit is used to perform collaborative data analysis based on data uploaded by other user terminals to obtain a first analysis result. The second obtaining unit is used to obtain multiple credibility levels of other user terminals based on the first analysis result; The third processing unit is used to adjust the first analysis result according to the multiple confidence levels to obtain the second analysis result; The third obtaining unit is used to obtain the first contribution degree within the first data collaboration relationship based on the first data collaboration relationship; The fourth obtaining unit is used by the first user terminal to obtain a first data set for uploading and data collaboration. The fourth processing unit is used to adjust the size of the first data set according to the first contribution level to obtain the second data set; The fifth processing unit is used to upload the second data set to the first blockchain through the first node; The fifth obtaining unit is used to obtain the data scale information of the first user terminal based on the first data collaboration relationship; The sixth obtaining unit is used to obtain the data collaboration requirement information of the first user terminal based on the first contribution level; The sixth processing unit is used to obtain adjustment parameters based on the data coordination requirement information; The seventh processing unit is used to adjust the size of the first data set using the adjustment parameters.
7. An electronic device, characterized in that, include: A processor coupled to a memory for storing a program that, when executed by the processor, causes an electronic device to perform the steps of the method as claimed in any one of claims 1 to 5.
8. A computer-readable storage medium, characterized in that, The storage medium stores a computer program, which, when executed by a processor, implements the steps of the method according to any one of claims 1 to 5.
Citation Information
Patent Citations
Multi-party cooperation system and method based on block chain and storage medium
CN111245886A
Multi-party data analysis method and device based on block chain, equipment and storage medium
CN112765649A