Data processing method, device, computer equipment and storage medium
By building a dynamic view of encrypted data and performing multi-layer drill-down processing, the problem of searching for encrypted data on the blockchain is solved, complete visual analysis of blockchain data is achieved, and the integrity of the visual interface is ensured.
Patent Information
- Application Number
- CN202310184306.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-20
- Publication Date
- 2025-09-05
- Estimated Expiration
- 2043-02-20
AI Technical Summary
Existing technologies do not support searching for encrypted data on the blockchain, resulting in missing content in the multi-relationship graph in the visualization interface, affecting the integrity of the multi-relationship graph.
By building a dynamic view of encrypted data, using encrypted data tables and encrypted dynamic tables, combined with a set of CryptoSQL statements, multi-layer drill-down processing is performed on the encrypted data, the drill-down results at each level are obtained, and the blockchain data visualization interface is displayed with the permission of the encrypted data owner.
It enables visual analysis of encrypted data on the blockchain, ensures the integrity of the content in the visual interface, and completes the authorization of encrypted data without user participation, ensuring that complete data is obtained for each business problem.
Smart Images

Figure CN116069952B_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the field of computer technology, and specifically relates to a data processing method, apparatus, computer equipment, and storage medium. Background Art
[0002] Knowledge graphs can use data mining, information processing, knowledge measurement, and graphing on blockchain data to reveal the dynamic development patterns of knowledge domains. In blockchain visualization applications, knowledge graphs are typically presented as multi-relational graphs composed of nodes and edges, making it easy for users to view and interact with them in a graphical visualization interface.
[0003] In related technologies, since the blockchain visualization system of the knowledge graph is a knowledge graph triple constructed based on data on the blockchain to display the relationship between addresses, transactions, and nodes, if data authorization is not implemented, the search for encrypted data on the blockchain is not supported, resulting in the missing content of the multi-relationship graph in the visualization interface, affecting the integrity of the multi-relationship graph. Summary of the Invention
[0004] The embodiments of the present application provide a data processing method, apparatus, computer device, and storage medium, which can solve the problem that the prior art does not support searching for encrypted data on the blockchain, resulting in missing content of the multi-relationship graph in the visualization interface and affecting the integrity of the multi-relationship graph.
[0005] In a first aspect, an embodiment of the present application provides a data processing method, which may include:
[0006] Receive a data visualization request sent by a user terminal, where the data visualization request includes a business scenario corresponding to the user terminal;
[0007] Based on the business scenario, a business problem and an encrypted data table and an encrypted dynamic table corresponding to the business problem are obtained. The encrypted data table includes an encrypted index keyword and data ownership. The encrypted dynamic table is used to describe the storage node to which the encrypted sealed sector with the encrypted index keyword belongs, the owner of the encrypted data, and the traceable block of the encrypted data. The encrypted index keyword is associated with the encrypted data.
[0008] Based on the encrypted data table and the encrypted dynamic table, a dynamic view of encrypted data with N levels is constructed, where N is an integer greater than 1;
[0009] Through the aggregation algorithm related to the business problem, drill down to N levels in the dynamic view of encrypted data to obtain the drill down results of each level in the N levels;
[0010] When the drill-down result indicates that the encrypted data owner allows the user terminal to use the encrypted data corresponding to the business problem, a blockchain data visualization interface is displayed based on the encrypted data corresponding to the drill-down result.
[0011] In a second aspect, an embodiment of the present application provides a data processing device, which may include:
[0012] A receiving module is used to receive a data visualization request sent by a user terminal, where the data visualization request includes a business scenario corresponding to the user terminal;
[0013] An acquisition module is configured to acquire, based on a business scenario, a business problem and an encrypted data table and an encrypted dynamic table corresponding to the business problem. The encrypted data table includes an encrypted index keyword and data ownership. The encrypted dynamic table is configured to describe the storage node to which the encrypted sealed sector with the encrypted index keyword belongs, the encrypted data owner, and the traceable block of the encrypted data. The encrypted index keyword is associated with the encrypted data.
[0014] A construction module is used to construct an encrypted data dynamic view with N levels based on the encrypted data table and the encrypted dynamic table, where N is an integer greater than 1;
[0015] A processing module is used to perform drilling processing on N levels in the dynamic view of encrypted data by using an aggregation algorithm corresponding to the business problem, and obtain drilling results for each level in the N levels;
[0016] The display module is configured to display a blockchain data visualization interface based on the encrypted data corresponding to the drill result when the drill result indicates that the owner of the encrypted data allows the user terminal to use the encrypted data corresponding to the business problem. In a third aspect, an embodiment of the present application provides a computing device, the computing device comprising: a processor and a memory storing computer program instructions;
[0017] When the processor executes the computer program instructions, the data processing method shown in the first aspect is implemented.
[0018] In a fourth aspect, an embodiment of the present application provides a computer storage medium having computer program instructions stored thereon, which, when executed by a processor, implements the data processing method shown in the first aspect.
[0019] In a fifth aspect, an embodiment of the present application provides a chip, which includes a processor and a communication interface, the communication interface and the processor are coupled, and the processor is used to run programs or instructions to implement the data processing method shown in the first aspect.
[0020] In a sixth aspect, an embodiment of the present application provides a computer program product, which is stored in a storage medium and is executed by at least one processor to implement the data processing method as shown in the first aspect.
[0021] The data processing method, apparatus, computer equipment, and storage medium of the embodiments of the present application receive a data visualization request sent by a user terminal, where the data visualization request includes a business scenario corresponding to the user terminal, and based on the business scenario, obtains a business problem of the business scenario and an encrypted data table and an encrypted dynamic table corresponding to the business problem, wherein the encrypted data table includes an encrypted index keyword and data ownership, and the encrypted dynamic table is used to describe the storage node, the encrypted data owner, and the traceable block of the encrypted data to which the encrypted sealed sector with the encrypted index keyword belongs; based on the encrypted data table and the encrypted dynamic table, a dynamic view of encrypted data with N levels is constructed; through an aggregation algorithm corresponding to the business problem, the N levels in the dynamic view of encrypted data are drilled through to obtain a drill result for each level in the N levels; when the drill result indicates that the encrypted data owner allows the user terminal to use the encrypted data corresponding to the business problem, a blockchain data visualization interface is displayed based on the encrypted data corresponding to the drill result. In this way, the business problem corresponding to the business scenario of the data visualization request sent by the user is determined, and an encrypted data table and an encrypted dynamic table are constructed according to the salesperson's problem. Then, based on the encrypted data table and the encrypted dynamic table, an encrypted data dynamic view with N levels is constructed. In this way, according to the aggregation algorithm of the business problem, the constructed encrypted data dynamic view is multi-layered drilled, that is, the encrypted data owner of the encrypted data corresponding to the business problem in each level is asked whether the user side can use the encrypted data in the level. If the encrypted data owner allows the user side to use the encrypted data corresponding to the business problem, the blockchain data visualization interface is displayed according to the encrypted data corresponding to the drill result, thereby completing the visualization analysis of the blockchain data. In this way, in the process of executing the data visualization request sent by the user side, the authorization of the encrypted data can be completed without the user's participation, and the use of the encrypted data on the blockchain can be realized, so that relatively complete data can be obtained for each business problem, ensuring the integrity of the content displayed in the blockchain data visualization interface. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0023] Figure 1 A schematic diagram of the structure of a data processing system provided in an embodiment of the present application;
[0024] Figure 2 A schematic diagram of a process for parsing data in a data processing method provided in an embodiment of the present application;
[0025] Figure 3 A flowchart of a data processing method provided in an embodiment of the present application;
[0026] Figure 4 This is a structural diagram of a data processing device provided by an embodiment of the present application;
[0027] Figure 5 It is a structural diagram of a computer device provided in one embodiment of the present application. DETAILED DESCRIPTION
[0028] The features and exemplary embodiments of various aspects of the present application will be described in detail below. In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain the present application, rather than to limit the present application. For those skilled in the art, the present application can be implemented without the need for some of these specific details. The following description of the embodiments is merely to provide a better understanding of the present application by illustrating the examples of the present application.
[0029] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or device comprising the element.
[0030] To better understand the data processing method provided by this application, the technical background involved in this application is explained below. Blockchain address visualization involves analyzing the blockchain's shared ledger, block by block, labeling addresses, distinguishing between traced and monitored addresses, and leveraging a rich tag library to enhance the readability of address analysis. For example, exchange logos, contract address icons, and celebrity tags are displayed visually alongside address details. Users can select different addresses on the display interface, and the address details will change accordingly. Address health is embedded in the visualization of blockchain addresses, allowing users to directly understand the risk level of blockchain addresses while querying them. The on-chain data monitoring and transaction behavior analysis model traces transactions for blockchain addresses, constructs a transaction graph, and prioritizes entity tags and large transactions of interest to users. The transaction path of the address is analyzed, displaying details such as the smart contract, transaction hash, address, and token ID, and presenting charts of transaction data. By analyzing newly generated blocks in real time, on-chain data is monitored and an analysis model for transaction behavior is established. The blockchain address timeline is monitored and transaction graphs are displayed using a link diagram. Data visualization analysis models involve users performing basic data processing and model building, selecting and processing data based on their needs, and then performing multidimensional analysis using drag-and-drop operations based on self-service datasets, displaying the data on a data dashboard. Within the display interface, users can select the required data with a simple drag-and-drop operation. OLAP multidimensional analysis features such as drill-down, roll-up, rotation, and linkage are supported, allowing for a more vivid display of their data. Data visualization analysis displays include bar charts, line charts, scatter plots, radar charts, GIS maps, and Gantt charts. Furthermore, blockchain knowledge graphs can be visualized. Knowledge graphs can visualize complex knowledge domains through data mining, information processing, knowledge measurement, and graphical rendering on blockchain data, revealing the dynamic development patterns of knowledge domains and providing practical and valuable reference for disciplinary research. These knowledge bases possess a directed graph structure. By effectively processing, handling, and integrating complex data and converting it into data relationships, a large amount of knowledge can be aggregated, thereby achieving rapid response and reasoning of knowledge; in the visualization application of blockchain, the knowledge graph is presented as a multi-relational graph, which allows users to view and interact in a graphical interface.
[0031] In related technologies, blockchain visualization systems based on knowledge graphs can construct knowledge graph triples for blockchain data, enabling blockchain visualization and displaying relationships between addresses, transactions, and nodes. However, without data ownership confirmation or authorization, encrypted data searches are not supported, resulting in a lack of content in the visualization and affecting the integrity of the multi-relationship graph. Furthermore, the graphical representation of "node" and "edge" triplets in knowledge graphs is not suitable for expressing multi-level data relationships or data mining, making visualization processing less applicable.
[0032] Based on this, in order to solve the above-mentioned problems, the data processing method provided by the embodiment of the present application can include three stages, namely the data authorization stage, the data mining stage, and the stage of displaying the corresponding interface of the data. Specifically, the data processing system can automatically capture user data based on different user scenarios of at least one end (the user end and the user end corresponding to the owner of the encrypted data), generate index keywords (or receive the encrypted index keywords set by the user for the data) according to the frequency and weight of the words, and sign and encrypt its data using the user's private key on the user end, and submit the signed and encrypted data to the distributed encrypted storage system. The distributed encrypted storage system mixes, slices, and calculates encryption proofs on the data and the encrypted index keywords to generate an encrypted sealed sector (256M), and uploads the Merkle root (256 bytes) of the encrypted sealed sector to the blockchain. The distributed encrypted storage system randomly extracts the Merkle root (256 bytes) on the blockchain at regular intervals and verifies whether the encrypted sector of this Merkle root is effectively stored. Based on this, an encrypted data table can be constructed based on the encrypted index keywords and data ownership to prepare for the construction of a multi-level encrypted view.
[0033] Thus, upon receiving a data visualization request from any client, the business problem is obtained based on the business scenario in the data visualization request, and the business problem is analyzed based on the business scenario to obtain the business logic corresponding to the business problem (e.g., the pre- and post-calculation logic for answering the business problem, and the data required for each calculation of the business problem). An encrypted dynamic table is constructed using a set of CryptoSQL statements converted from the business logic. Based on the encrypted dynamic table and the encrypted data table, the encrypted data range, data hierarchy, and aggregation algorithm of the data associated with the client's business problem are summarized. Based on the summarized encrypted data range, data hierarchy, and aggregation algorithm of the data associated with the client's business problem, an encrypted data dynamic view is constructed. Aggregation algorithms, such as level calculation, metric aggregation calculation, dimension aggregation calculation, and encrypted dynamic table calculation, are then used to perform hierarchical drilling on the encrypted data dynamic view. Business encrypted data corresponding to the encrypted index keyword is obtained from the encrypted sealed sector, the storage node to which it belongs, and the traceable block of the encrypted data. After decrypting the data, the data calculation results of the business problem are obtained. The calculation results are aggregated to the business data dashboard of the blockchain data visualization interface, completing the visualization analysis of the blockchain data and presenting it to the user.
[0034] The present application embodiment provides a data processing system. Figure 1 and Figure 2 , the data processing system provided in the embodiment of the present application is described in detail.
[0035] like Figure 1 As shown, the data processing system 10 may include a business side and a storage side. The storage side may include a distributed storage blockchain system module, an encrypted sealed sector module, and an encrypted index and data ownership mapping module. The business side may include an encrypted dynamic table module, a business problem decomposition algorithm module, a multi-layer view construction module, and a data dashboard module.
[0036] Based on this, the storage side can receive the encrypted index keywords set by the user for the data and then encrypt the data using the user's private key. The encrypted data is then encapsulated into 256MB encrypted sealed sectors. The encrypted and sealed calculation process and storage information are recorded on the blockchain in the form of a "proof" string. Periodically, the distributed encrypted storage network system will randomly check the "proof" string on the blockchain to verify that the sealed sector storing the encrypted data is still valid. On the business side, the user's business problem is analyzed through business scenarios and converted into business logic. Analysis strategies such as analysis scope, level of detail (LOD), and field aggregation are generated. Using a set of CryptoSQL statements, an encrypted data dynamic view with N levels is constructed based on the encrypted data table and encrypted dynamic table. The analysis strategy is then parsed into calculation methods such as level calculation, metric aggregation calculation, dimension aggregation calculation, and encrypted dynamic table calculation. Multi-level drilling is performed on the generated encrypted data dynamic view to obtain drill-down results for each of the N levels. Then, based on the drill-down results for each of the N levels, a data dashboard is generated, completing the visual analysis of blockchain data.
[0037] The above modules are described below respectively.
[0038] The distributed storage blockchain system module is used to receive data from the user end and encrypt and store it based on the blockchain. It is responsible for the encryption and sealing calculation of the data. It is a distributed encryption storage network. Many peer-to-peer encryption storage nodes form a network, accept data encryption storage requests from users, associate and map encryption index keywords with user-end data, use the user-end private key to encrypt the user-end data, and seal the user's data in the sealed sectors of certain encryption storage nodes. The encryption and sealing calculation process and storage information are recorded in the blockchain in the form of a "proof" string (proof). At regular intervals, the distributed encryption storage network system will randomly check the "proof" string (proof) on the blockchain to verify whether the sealed sector storing the encrypted data is still effectively stored.
[0039] The business problem decomposition algorithm module is used to summarize business scenarios into several business problems and form business logic. It is responsible for generating the data range, hierarchy, aggregation method and CryptoSQL statement set that describe the business problems. It is a module for user data analysis on the business side. The business problem decomposition algorithm module summarizes business scenarios into several business problems. Each business problem contains two types of fields, one is a description field (classification field) and the other is an aggregation field (quantification field). The classification field describes that the data are different from each other, and it describes the type of data and is the dimension of the data. The quantitative field describes the quantity, which is the precise answer to the problem and the measurement of the data. The business problem decomposition algorithm module can also be used to summarize the business logic according to the business scenario, as well as to classify the data that may be generated, summarize the data type, and then determine the data type as dimensional data or measurement data, and convert the business logic into a CryptoSQL statement set. The business problem decomposition algorithm module can also be used, such as Figure 2 As shown, according to the CryptoSQL statement set, the encrypted dynamic table module is called to create an encrypted dynamic table, and the encrypted index keywords and data ownership in the encrypted data table are combined to parse the data set (range), n-layer LOD (hierarchy), and aggregation algorithm (aggregation).
[0040] The encryption index and data ownership mapping module is used to establish an encryption homomorphic mapping relationship table for business scenarios. It is responsible for implementing the links between the encryption index keywords, encryption sector identifiers, encryption data owners, and encryption sector-related blocks of encrypted data through a set of CryptoSQL statements. It is the calculation module that completes the encryption index and data ownership mapping.
[0041] A blockchain data visualization and analysis system using a hierarchical drill-down algorithm is used to create a cryptographically homomorphic mapping relationship table for encrypted data's encrypted index keywords, encrypted sector identifiers, encrypted data owners, and encrypted sector-related blocks. The cryptographically homomorphic mapping relationship table describes the storage node, owner, and traceable block to which the encrypted sector with the encrypted keyword belongs. Furthermore, the blockchain data visualization and analysis system using a hierarchical drill-down algorithm can link encrypted data's encrypted index keywords, encrypted sector identifiers, encrypted data owners, and encrypted sector-related blocks using a set of CryptoSQL statements. CryptoSQL statements are custom SQL statements that add encrypted keyword indexes, data ownership, sector IDs, and hierarchical levels of detail (LODs) to the blockchain data visualization and analysis system based on the hierarchical drill-down algorithm. CryptoSQL statements support interactive control of data samples, computational filtering of data samples, generation of encrypted data views, and data drill-down calculations supporting multiple levels of detail (LODs).
[0042] The encrypted data syntax of CryptoSQL statements is as follows: Here, the CryptoSQL statement set in the embodiments of the present application includes: 1) a SELECT DATA_OWNER CREAT statement, used to select ownership confirmation data from a dynamic encrypted table in a distributed encrypted database to create an encrypted data table. 2) a SELECT DATA_OWNER WHERE statement, used to select ownership confirmation data from a dynamic encrypted table in a distributed encrypted database. 3) a SELECT DATA_OWNER JOIN statement, used to link different encrypted data tables and encrypted dynamic tables to construct a new dynamic view of encrypted data. 4) a SELECT DATA_OWNER CHECK statement, used to check user ownership in an encrypted data table or encrypted dynamic table. Furthermore, the blockchain data visualization analysis system with a hierarchical drilling algorithm is further configured to receive an encrypted data set (range), n-level LOD (level of detail), and aggregation algorithm (aggregation) from the business problem decomposition algorithm module, and generate an encrypted dynamic table based on the encrypted index keywords, encrypted sector identifiers, encrypted data owners, and encrypted sector-related blocks in the existing encrypted data set. The encrypted dynamic table is an encrypted data set that describes the range, level, aggregation, and ownership of the encrypted data. The blockchain data visualization and analysis system using the hierarchical drilling algorithm can also be used to construct dynamic views of encrypted data based on encrypted data sets (ranges), n-level levels of dimension (LOD), and aggregation algorithms (aggregations). Dynamic views of encrypted data are a type of dynamic data table. Level 0 dynamic tables are automatically generated by the blockchain data visualization and analysis system using the hierarchical drilling algorithm. Levels 1, 2, ..., n dynamic data tables can be referred to as dynamic views of encrypted data.
[0043] The Encrypted Dynamic Table module generates encrypted dynamic tables and provides encrypted data for the Encrypted Index and Data Ownership Mapping modules. It serves as an encryption data support module. The Encrypted Sealed Sector module also seals data and performs mixing, slicing, and cryptographic proof calculations on user data and encrypted indexes. It serves as a data encryption processing module. The Encrypted Sealed Sector module also mixes, slices, and cryptographic proof calculations on user data and encrypted indexes to generate encrypted sealed sectors (256MB) and uploads the Merkle root (256 bytes) of the encrypted sealed sectors to the blockchain.
[0044] The multi-layer view construction module is used to construct N-level dynamic views of encrypted data based on encrypted data tables and encrypted dynamic tables. It is responsible for the construction and maintenance of multi-layer views and serves as an intermediate module for multi-layer drilling of encrypted data. Furthermore, the multi-layer view construction module is used to, within a specific encrypted data set, use CryptoSQL statements to process a dynamic table of encrypted data at level 0 and output encrypted dynamic views at levels 1, 2, ...n. Based on the aggregation algorithm for the business problem, encrypted data samples are interactively controlled and computationally filtered, with calculations performed step by step from the n-th level of encrypted dynamic views to the first level. During the n-level drill-down calculation process for encrypted data, the owner of the relevant encrypted data is continuously queried to determine whether the data is permitted to be used. Finally, the calculation results of the business problem are output and transmitted back to the user in the form of encrypted data.
[0045] The data dashboard module displays a blockchain data visualization interface, including the calculation results of business problems. This interface is responsible for visually displaying these results, serving as a data visualization analysis and display module. Furthermore, during the n-level drill-down calculation process, the business problem continuously queries the owner of the relevant encrypted data for permission to use the data, ultimately outputting the calculation results. Users can perform multidimensional analysis of the business problem's calculation results by dragging and dropping, and the data is displayed on the data dashboard. OLAP multidimensional analysis features such as drill-down, roll-up, rotation, and linkage are utilized, along with a variety of chart types and styles to present user data in a more vivid manner. Data visualization analysis displays include bar charts, line charts, scatter plots, radar charts, GIS maps, Gantt charts, and more.
[0046] It should be noted that the data processing system in the embodiments of this application can be applied to data scenarios with massive users, data, and terminals, taking into account factors such as the integration of blockchain storage functions, data security, data stability, system scalability, performance, and cost. Furthermore, it can be applied to high-performance computing scenarios, big data video cloud scenarios, and big data analysis application scenarios. Specifically, in high-performance computing scenarios, user-side data may include data from fields such as meteorology and climate, geological exploration, aerospace, engineering computing, and materials engineering. The user's business scenarios require high-performance computing. Businesses in high-performance computing scenarios place high performance demands on back-end storage systems, including unified storage space, efficient file retrieval, high-bandwidth throughput, and highly reliable data security. In big data video cloud scenarios, the widespread adoption of high-definition and ultra-high-definition video technologies, and video big data application scenarios such as safe cities, broadcasting and television media assets, film and television production, and video websites, place demands on storage devices for large capacity, high read / write performance, high reliability, low latency, and scalability. These requirements constitute the foundation of big data video cloud scenarios, providing technologically advanced and high-performance back-end data storage support for big data video cloud farms.
[0047] Therefore, in high-performance computing scenarios, big data video cloud scenarios, and big data analysis application scenarios, the required storage space size (PB), encrypted storage reading speed (GB / hour), file retrieval efficiency (files / hour), business keyword set and other parameters are input to decompose the algorithm module into business problems. After business scenario analysis, it is converted into business logic, and analysis strategies such as analysis scope, level of detail (LOD), and field aggregation are generated. The CryptoSQL statement set is used to construct a dynamic encrypted view for the dynamic encrypted data table. At the same time, the analysis strategy is parsed into calculation methods such as level calculation, metric aggregation calculation, dimension aggregation calculation, and encrypted dynamic table calculation. Multi-layer drilling is performed on the generated encrypted dynamic view to obtain the data calculation results of the business problem, and the data calculation results are generated into a data dashboard to complete the visual analysis of blockchain data.
[0048] Based on the above data processing system and application scenario, the embodiment of the present application provides a data processing method, device, equipment and storage medium. Figure 3 Figure 5 , describes in detail the data processing methods, devices, equipment and storage media of the embodiments of the present application. It should be noted that these embodiments are not intended to limit the scope of disclosure of the present application.
[0049] The following combination Figure 3 The data processing method provided in the embodiments of the present application is described in detail.
[0050] Figure 3A flowchart of a data processing method provided in an embodiment of the present application.
[0051] like Figure 3 As shown, the data processing method can be applied to Figure 1 The data processing system shown in FIG. 1 may include the following steps:
[0052] Step 310: Receive a data visualization request sent by the user terminal, where the data visualization request includes a business scenario corresponding to the user terminal; Step 320: Obtain a business problem of the business scenario and an encrypted data table and an encrypted dynamic table corresponding to the business problem based on the business scenario, where the encrypted data table includes an encrypted index keyword and data ownership; the encrypted dynamic table is used to describe the storage node, encrypted data owner, and traceable block of the encrypted data to which the encrypted sealed sector with the encrypted index keyword belongs, and the encrypted index keyword is associated with the encrypted data; Step 330: Construct an encrypted data dynamic view with N levels based on the encrypted data table and the encrypted dynamic table, where N is an integer greater than 1; Step 340: Drill down the N levels in the encrypted data dynamic view through an aggregation algorithm corresponding to the business problem to obtain a drill down result for each of the N levels; Step 350: Display a blockchain data visualization interface based on the encrypted data corresponding to the drill down result when the drill down result indicates that the encrypted data owner allows the user terminal to use the encrypted data corresponding to the business problem.
[0053] Therefore, according to the aggregation algorithm of business problems, multi-layer drilling is performed on the constructed dynamic view of encrypted data, that is, the encrypted data owner of the encrypted data corresponding to the business problem in each layer is asked whether the user terminal can use the encrypted data in the layer. If the encrypted data owner allows the user terminal to use the encrypted data corresponding to the business problem, the blockchain data visualization interface is displayed according to the encrypted data corresponding to the drill-down result, thereby completing the visualization analysis of the blockchain data. In this way, in the process of executing the data visualization request sent by the user terminal, the authorization of the encrypted data can be completed without the user's participation, and the use of the encrypted data on the blockchain can be realized, so that relatively complete data can be obtained for each business problem, ensuring the integrity of the content displayed in the blockchain data visualization interface.
[0054] The above steps are described in detail below.
[0055] First, step 320 is involved. In one or more possible embodiments, step 320 may specifically include:
[0056] Step 3201: Obtain N business problems corresponding to the business scenario based on the business scenario. The business problem includes a description field and an aggregation field. The description field is used to represent the type of data required by the business scenario, and the aggregation field is used to represent the amount of data required by the business scenario.
[0057] Step 3202: Classify N business issues based on the description field and the aggregation field;
[0058] Step 3203: Summarize the business logic between business scenarios according to the data types classified by the business problems;
[0059] Step 3204: Determine the encrypted data table and encrypted dynamic table corresponding to the business problem through business logic.
[0060] In this way, without user participation, multiple business problems corresponding to each business scenario can be counted. Then, by analyzing the business logic between multiple business problems, the business logic between business scenarios can be summarized, so that the encrypted data table and encrypted dynamic table corresponding to the business problem can be determined based on the automatically analyzed business logic.
[0061] Based on this, the steps involved in determining the encrypted data table and encrypted dynamic table corresponding to the business problem through business logic are described below. Here, the encrypted dynamic table in the embodiment of the present application can be a database table composed of a series of encrypted fields, with attributes such as dimensions, measurements, aggregations, and data ownership.
[0062] Based on the above, step 3204 may specifically include the following possibilities. In one or more possible embodiments, the process of determining the encrypted data table may be as follows, that is, step 3204 may specifically include:
[0063] According to the business logic, the data ownership of the business encrypted data required for each business problem is checked step by step. Data ownership is used to represent the authority information of the encrypted data owner who holds the business encrypted data.
[0064] According to the association information between the preset user terminal and the preset encrypted index keyword, the encrypted index keyword corresponding to the data ownership is obtained from the distributed storage blockchain system;
[0065] Build an encrypted data table based on data ownership and encrypted index keywords.
[0066] For example, after determining the business problem and business logic, the data ownership of the business encrypted data required for each business problem is gradually queried to determine the permissions of the encrypted data owner with respect to the business encrypted data. Next, based on the association between the preset user end and the preset encrypted index keyword, the encrypted index keyword corresponding to the data ownership is obtained from the distributed storage blockchain system to construct an encrypted data table.
[0067] It should be noted that, before this step, the data processing method provided in the embodiment of the present application may further include:
[0068] receiving a data encryption storage request sent by at least one user terminal, the data encryption storage request including user data and an encryption index keyword corresponding to the user data, the at least one terminal including a user terminal and a user terminal corresponding to an owner of the encrypted data, and the user data including business encrypted data;
[0069] Sign the user data according to the user's private key to obtain encrypted data;
[0070] Through the distributed encryption storage network, the encryption index keywords are associated with the encrypted data to obtain the association information between the preset encryption index keywords and the preset encrypted data;
[0071] The encrypted data is stored in an encrypted sealed sector, and the associated information of the proof string, the preset encryption index keyword and the preset encrypted data is recorded in the blockchain of the distributed storage blockchain system, where the proof string is used to represent the encryption information and storage information corresponding to the encrypted data.
[0072] For example, according to different business scenarios, the user-side data can be automatically captured according to the frequency and weight of the data in the business scenarios to generate encrypted index keywords, or according to different business scenarios, the user-side data can be automatically captured to receive encrypted index keywords set by the user side.
[0073] In one or more other possible embodiments, the process of determining the encryption dynamic table may be as follows, that is, step 3204 may specifically include:
[0074] Furthermore, the above step 3204 may specifically include:
[0075] Through the CryptoSQL statement set converted by business logic, according to the encryption index keyword, the storage node to which the encrypted sealed sector with the encryption index keyword belongs, the encrypted data owner and the traceable block of the encrypted data are obtained from the distributed storage blockchain system;
[0076] The mapping relationship between the storage node to which the encrypted sealed sector with the encryption index keyword belongs, the owner of the encrypted data and the traceable block of the encrypted data is determined as an encryption dynamic table.
[0077] For example, the data processing method provided in the embodiments of this application can support a CryptoSQL statement set for encrypted data authorization. This CryptoSQL statement set enables linking of encrypted data's encrypted index keywords, encrypted sector identifiers, encrypted data owners, and encrypted sector-related blocks. The CryptoSQL statement set is a customized SQL statement that adds encrypted keyword indexes, data ownership, sector IDs, and hierarchical LODs.
[0078] Here, the CryptoSQL statement set in the embodiments of the present application includes: 1) a SELECT DATA_OWNER CREAT statement, which is used to select ownership confirmation data from a dynamic encrypted table in a distributed encrypted database to create an encrypted data table. 2) a SELECT DATA_OWNER WHERE statement, which is used to select ownership confirmation data from a dynamic encrypted table in a distributed encrypted database. 3) a SELECT DATA_OWNER JOIN statement, which is used to link different encrypted data tables and encrypted dynamic tables to construct a new dynamic view of encrypted data. 4) a SELECT DATA_OWNER CHECK statement, which is used to check user ownership in an encrypted data table or encrypted dynamic table.
[0079] It should be noted that an encryption dynamic table with encryption index keywords refers to a table composed of encryption index keywords and data ownership in an existing encryption data table, as well as encryption sector identifiers, encryption data owners, and encryption sector-related blocks. An encryption dynamic table is an encrypted data set that describes the scope, hierarchy, aggregation, and ownership of encrypted data. An encryption data table is a data set that describes encryption index keywords and data ownership.
[0080] Furthermore, regarding step 330, in one or more possible embodiments, step 330 may specifically include:
[0081] According to the encryption index keywords, the data ownership, the storage node to which the encrypted sealed sector belongs, the encrypted data owner, and the traceable block of the encrypted data are associated to obtain data related to the user's business problem;
[0082] According to the fields in the data associated with the business problem on the user side, summarizing the encrypted data range, data hierarchy and aggregation algorithm of the data associated with the business problem on the user side, the fields in the data associated with the business problem on the user side include categorical fields and quantitative fields;
[0083] According to the encrypted data scope, data hierarchy and aggregation algorithm, the data associated with the user's business problems are divided into N levels of encrypted data dynamic views.
[0084] For example, Figure 2 As shown, based on the data type to which the data classification belongs, dimensions and measures are summarized, based on the dimensions, classification fields are summarized, and based on the measures, quantitative fields are summarized. Then, based on the classification fields and quantitative fields, the analysis scope, hierarchical LOD, and field aggregation are summarized. A dynamic encrypted view is constructed from the dynamic encrypted data table through a CryptoSQL statement set (such as the SELECT DATA_OWNERJOIN statement). At the same time, the analysis strategy is parsed into calculation methods such as level calculation, measure aggregation calculation, dimension aggregation calculation, and encrypted dynamic table calculation, and multi-layer drilling is performed on the generated encrypted dynamic view.
[0085] Furthermore, regarding step 340, in one or more possible embodiments, the aggregation algorithm includes at least one of the following: a level algorithm, a metric aggregation algorithm, a dimension aggregation algorithm, and an encrypted dynamic table algorithm. Based on this, step 340 includes:
[0086] Using the aggregation algorithm corresponding to the business problem, starting from the i-th level in the N levels, in the direction of i=i+1 levels, a permission query request is sent to the encrypted data owner of each level. The permission query request is used to inquire whether the encrypted data owner allows the user end to use the encrypted data corresponding to the business problem, i∈[0,N];
[0087] Upon receiving confirmation information fed back by the owner of the encrypted data, a drill-down result is generated.
[0088] For example, Figure 1 As shown, from N being 3, the dynamic view of encrypted data with 3 levels can include "Level n" of the 1st level, "Level n-1" of the 2nd level and "Level 1" of the 3rd level. At this time, if i is 1, it is possible to start from the 1st level, i.e., level n, and send a permission query request to the encrypted data owner of the encrypted data at each level in the direction of i=i+1 level, i.e., drill down to obtain the drill results of each level.
[0089] Then, referring to step 350, in one or more possible embodiments, before step 350, the method may further include:
[0090] According to the association information between the preset encryption index keyword and the preset encrypted data, the business encrypted data corresponding to the encryption index keyword is obtained from the encryption sealed sector, the storage node to which it belongs, and the traceable block of the encrypted data;
[0091] Based on this, step 350 may specifically include:
[0092] Calculate the business answer corresponding to the business question based on the encrypted data corresponding to the drill-down result;
[0093] Through the multi-dimensional analysis algorithm of online analytical processing, the business answers are displayed in the blockchain data visualization interface in a preset display format.
[0094] Here, it should be noted that the encrypted data corresponding to the drill-down result can be the business encrypted data corresponding to the encrypted index keyword. In summary, the data processing method provided by the embodiment of the present application can receive a data visualization request sent by the user end, the data visualization request includes a business scenario corresponding to the user end, and according to the business scenario, obtain the business problem of the business scenario and the encrypted data table and encrypted dynamic table corresponding to the business problem, the encrypted data table includes the encrypted index keyword and data ownership, and the encrypted dynamic table is used to describe the storage node, encrypted data owner and traceable block of the encrypted data to which the encrypted sealed sector with the encrypted index keyword belongs; based on the encrypted data table and the encrypted dynamic table, construct an encrypted data dynamic view with N levels; through the aggregation algorithm corresponding to the business problem, drill down the N levels in the encrypted data dynamic view to obtain the drill-down result of each level in the N levels; when the drill-down result indicates that the encrypted data owner allows the user end to use the encrypted data corresponding to the business problem, the blockchain data visualization interface is displayed according to the encrypted data corresponding to the drill-down result. In this way, the business problem corresponding to the business scenario of the data visualization request sent by the user is determined, and an encrypted data table and an encrypted dynamic table are constructed according to the salesperson's problem. Then, based on the encrypted data table and the encrypted dynamic table, an encrypted data dynamic view with N levels is constructed. In this way, according to the aggregation algorithm of the business problem, the constructed encrypted data dynamic view is multi-layered drilled, that is, the encrypted data owner of the encrypted data corresponding to the business problem in each level is asked whether the user side can use the encrypted data in the level. If the encrypted data owner allows the user side to use the encrypted data corresponding to the business problem, the blockchain data visualization interface is displayed according to the encrypted data corresponding to the drill result, thereby completing the visualization analysis of the blockchain data. In this way, in the process of executing the data visualization request sent by the user side, the authorization of the encrypted data can be completed without the user's participation, and the use of the encrypted data on the blockchain can be realized, so that relatively complete data can be obtained for each business problem, ensuring the integrity of the content displayed in the blockchain data visualization interface.
[0095] Based on the same inventive concept, the present application also provides a data processing device. Figure 4 Provide detailed explanation.
[0096] Figure 4It is a structural diagram of a data processing device provided by an embodiment of the present application.
[0097] In some embodiments of the present application, Figure 4 The data processing device shown can be arranged in Figure 1 The data processing system shown.
[0098] like Figure 4 As shown, the data processing device 40 may specifically include:
[0099] A receiving module 401 is configured to receive a data visualization request sent by a user terminal, where the data visualization request includes a business scenario corresponding to the user terminal;
[0100] Acquisition module 402 is configured to acquire, based on the business scenario, a business problem and an encrypted data table and an encrypted dynamic table corresponding to the business problem. The encrypted data table includes an encrypted index keyword and data ownership. The encrypted dynamic table describes the storage node to which the encrypted sealed sector with the encrypted index keyword belongs, the encrypted data owner, and the traceable block of the encrypted data. The encrypted index keyword is associated with the encrypted data.
[0101] A construction module 403 is configured to construct an encrypted data dynamic view having N levels based on the encrypted data table and the encrypted dynamic table, where N is an integer greater than 1;
[0102] The processing module 404 is configured to perform drilling processing on N levels in the dynamic view of the encrypted data by using an aggregation algorithm corresponding to the business problem, and obtain drilling results for each level in the N levels;
[0103] The display module 405 is used to display a blockchain data visualization interface based on the encrypted data corresponding to the drill result when the drill result indicates that the owner of the encrypted data allows the user terminal to use the encrypted data corresponding to the business problem.
[0104] The data processing device 40 in the embodiments of the present application is described in detail below.
[0105] In one or more optional embodiments, the data processing device 40 in the embodiment of the present application further includes a classification module and a first induction module; wherein,
[0106] The acquisition module 402 may also be used to acquire N business problems corresponding to the business scenario based on the business scenario. The business problem includes a description field and an aggregation field. The description field is used to represent the type of data required by the business scenario, and the aggregation field is used to represent the amount of data required by the business scenario.
[0107] The classification module is used to classify N business problems based on the description field and aggregation field;
[0108] The first induction module is used to summarize the business logic between business scenarios according to the data types classified by business problems;
[0109] The construction module 403 can also be used to create an encrypted dynamic table through the CryptoSQL statement set converted by the business logic.
[0110] In another or more optional embodiments, the data processing device 40 in the embodiment of the present application further includes a determination module; wherein,
[0111] The acquisition module 402 may also be used to acquire, through a CryptoSQL statement set, the storage node to which the encrypted sealed sector having the encrypted index keyword belongs, the owner of the encrypted data, and the traceable block of the encrypted data;
[0112] The determination module is used to determine the mapping relationship between the storage node to which the encryption sealed sector with the encryption index keyword belongs, the owner of the encryption data and the traceable block of the encryption data as an encryption dynamic table.
[0113] In one or more optional embodiments, the data processing device 40 in the embodiment of the present application further includes a second summarization module and a division module; wherein,
[0114] The association module is used to associate data ownership, the storage node to which the encrypted sealed sector belongs, the encrypted data owner, and the traceable block of the encrypted data according to the encryption index keyword to obtain data related to the user's business problem;
[0115] a second summarizing module, configured to summarize, based on fields in the data associated with the business problem of the user side, an encrypted data range, a data hierarchy, and an aggregation algorithm of the data associated with the business problem of the user side, wherein the fields in the data associated with the business problem of the user side include categorical fields and quantitative fields;
[0116] The partitioning module is used to partition the data associated with the business problems of the user side into dynamic views of encrypted data with N levels according to the encrypted data range, data hierarchy and aggregation algorithm.
[0117] In one or more optional embodiments, the aggregation algorithm includes at least one of the following: a level algorithm, a metric aggregation algorithm, a dimension aggregation algorithm, and an encrypted dynamic table algorithm. Based on this, the data processing device 40 in the embodiment of the present application further includes a sending module and a generating module; wherein,
[0118] The sending module is used to send a permission query request to the encrypted data owner of each level of encrypted data using an aggregation algorithm corresponding to the business problem, starting from the i-th level among the N levels and in the direction of i=i+1 levels. The permission query request is used to inquire whether the encrypted data owner allows the user end to use the encrypted data corresponding to the business problem, i∈[0,N];
[0119] The generating module is used to generate the drilling result when receiving the confirmation information fed back by the owner of the encrypted data.
[0120] In one or more optional embodiments, the data processing device 40 in the embodiment of the present application further includes a computing module; wherein,
[0121] A calculation module, configured to calculate a business answer corresponding to the business question based on the encrypted data corresponding to the drill-down result;
[0122] The display module 405 is further configured to display the business answers in a preset display format on the blockchain data visualization interface through a multi-dimensional analysis algorithm of online analytical processing.
[0123] In one or more optional embodiments, the acquisition module 402 may also be used to acquire the data ownership of the owner of the business encrypted data according to the business encrypted data required by the business problem.
[0124] The acquisition module 402 may also be configured to, based on the owner's data ownership, obtain the encrypted index keyword corresponding to the business encrypted data from the distributed storage blockchain system according to the association information between the preset user identifier and the preset encrypted index keyword;
[0125] According to the association information between the preset encryption index keyword and the preset encryption sealed sector, the encryption sealed sector corresponding to the encryption index keyword is obtained;
[0126] According to the association information between the preset encryption index keyword and the preset encryption data, the business encryption data corresponding to the encryption index keyword is obtained from the encryption sealed sector.
[0127] In one or more optional embodiments, the data processing device 40 in the embodiment of the present application further includes an encryption module, a mapping module and a storage module; wherein,
[0128] The receiving module 401 is further configured to receive a data encryption storage request sent by at least one end, the data encryption storage request including user data and an encryption index keyword corresponding to the user data, the at least one end including a user end and a user end corresponding to the holder, and the user data including service encryption data;
[0129] The encryption module is used to sign the user data according to the private key of the user end to obtain the encrypted data;
[0130] A mapping module is used to associate and map the encrypted index keywords with the encrypted data through a distributed encrypted storage network to obtain association information between the preset encrypted index keywords and the preset encrypted data;
[0131] A storage module is used to store encrypted data in an encrypted sealed sector, and to record the associated information of a proof string, a preset encryption index keyword, and preset encrypted data in a blockchain of a distributed storage blockchain system, wherein the proof string is used to represent the encryption information and storage information corresponding to the encrypted data.
[0132] Therefore, the data processing device in the embodiment of the present application can receive a data visualization request sent by the user terminal, and the data visualization request includes a business scenario corresponding to the user terminal, and according to the business scenario, obtains the business problem of the business scenario and the encrypted data table and encrypted dynamic table corresponding to the business problem, the encrypted data table includes encrypted index keywords and data ownership, and the encrypted dynamic table is used to describe the storage node, encrypted data owner and traceable block of encrypted data to which the encrypted sealed sector with the encrypted index keyword belongs; based on the encrypted data table and the encrypted dynamic table, construct an encrypted data dynamic view with N levels; through the aggregation algorithm corresponding to the business problem, drill down the N levels in the encrypted data dynamic view to obtain the drill results of each level in the N levels; when the drill result indicates that the encrypted data owner allows the user terminal to use the encrypted data corresponding to the business problem, the blockchain data visualization interface is displayed according to the encrypted data corresponding to the drill result. In this way, the business problem corresponding to the business scenario of the data visualization request sent by the user is determined, and an encrypted data table and an encrypted dynamic table are constructed according to the salesperson's problem. Then, based on the encrypted data table and the encrypted dynamic table, an encrypted data dynamic view with N levels is constructed. In this way, according to the aggregation algorithm of the business problem, the constructed encrypted data dynamic view is multi-layered drilled, that is, the encrypted data owner of the encrypted data corresponding to the business problem in each level is asked whether the user side can use the encrypted data in the level. If the encrypted data owner allows the user side to use the encrypted data corresponding to the business problem, the blockchain data visualization interface is displayed according to the encrypted data corresponding to the drill result, thereby completing the visualization analysis of the blockchain data. In this way, in the process of executing the data visualization request sent by the user side, the authorization of the encrypted data can be completed without the user's participation, and the use of the encrypted data on the blockchain can be realized, so that relatively complete data can be obtained for each business problem, ensuring the integrity of the content displayed in the blockchain data visualization interface.
[0133] Based on the same inventive concept, the present application also provides a computer device. Figure 5 Provide detailed explanation.
[0134] Figure 5 It is a structural diagram of a computer device provided in one embodiment of the present application.
[0135] like Figure 5 As shown, the computer device may include an electronic device or a server. The computer device may include a processor 501 and a memory 502 storing computer program instructions.
[0136] Specifically, the processor 501 may include a central processing unit (CPU), or an application-specific integrated circuit (ASIC), or may be configured to implement one or more integrated circuits of the embodiments of the present application.
[0137] The memory 502 may include a large capacity memory for data or instructions. By way of example and not limitation, the memory 502 may include a hard disk drive (HDD), a floppy disk drive, a flash memory, an optical disk, a magneto-optical disk, a magnetic tape, or a universal serial bus (USB) drive, or a combination of two or more of these. Where appropriate, the memory 502 may include a removable or non-removable (or fixed) medium. Where appropriate, the memory 502 may be inside or outside the integrated gateway disaster recovery device. In a specific embodiment, the memory 502 is a non-volatile solid-state memory. In a specific embodiment, the memory 502 includes a solid-state memory (ROM). Where appropriate, the ROM may be a mask-programmed ROM, a programmable ROM (PROM), an erasable PROM (EPROM), an electrically erasable PROM (EEPROM), an electrically rewritable ROM (EAROM), or a flash memory, or a combination of two or more of these.
[0138] The processor 501 implements any one of the data processing methods in the above embodiments by reading and executing computer program instructions stored in the memory 502 .
[0139] In one example, the data processing device may further include a communication interface 503 and a bus 510. Figure 5 As shown, the processor 501, the memory 502, and the communication interface 503 are connected via a bus 510 and communicate with each other.
[0140] The communication interface 503 is mainly used to implement communication between various modules, devices, units and / or equipment in the embodiments of the present application.
[0141] Bus 510 comprises hardware, software or both, and the parts of flow control device are coupled to each other.For example, and not limitation, bus can comprise accelerated graphics port (AGP) or other graphics bus, enhanced industry standard architecture (EISA) bus, front side bus (FSB), hypertransport (HT) interconnection, industry standard architecture (ISA) bus, infinite bandwidth interconnection, low pin count (LPC) bus, memory bus, micro channel architecture (MCA) bus, peripheral component interconnection (PCI) bus, PCI-Express (PCI-X) bus, serial advanced technology attachment (SATA) bus, video electronics standard association local (VLB) bus or other suitable bus or two or more of these combinations.In suitable cases, bus 510 can comprise one or more buses.Although the present application embodiment describes and shows specific bus, the application considers any suitable bus or interconnection.
[0142] The data processing device can execute the data processing method in the embodiment of the present application, thereby realizing the combination Figures 1 to 4 Described data processing method and device.
[0143] In addition, in conjunction with the data processing methods in the above embodiments, embodiments of the present application may provide a computer-readable storage medium for implementation. The computer-readable storage medium stores computer program instructions; when the computer program instructions are executed by a processor, any one of the data processing methods in the above embodiments is implemented.
[0144] It should be understood that the present application is not limited to the specific configurations and processes described above and illustrated in the figures. For the sake of brevity, a detailed description of known methods is omitted here. In the above embodiments, several specific steps are described and illustrated as examples. However, the method process of the present application is not limited to the specific steps described and illustrated. Those skilled in the art can make various changes, modifications, and additions, or change the order of the steps after understanding the spirit of the present application.
[0145] The functional blocks shown in the above block diagram can be implemented as hardware, software, firmware or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of the present application are programs or code segments that are used to perform the required tasks. Programs or code segments can be stored in machine-readable media, or transmitted on a transmission medium or a communication link by a data signal carried in a carrier wave. "Machine-readable media" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROMs, flash memories, erasable ROMs (EROMs), floppy disks, CD-ROMs, optical disks, hard disks, optical fiber media, radio frequency (RF) links, etc. The code segments can be downloaded via computer networks such as the Internet, intranets, etc.
[0146] It should also be noted that the exemplary embodiments mentioned in this application describe some methods or systems based on a series of steps or devices. However, this application is not limited to the order of the above steps. In other words, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.
[0147] The above is only a specific implementation method of the present application. Those skilled in the art can clearly understand that for the convenience and brevity of description, the specific working processes of the systems, modules and units described above can refer to the corresponding processes in the aforementioned method embodiments, and will not be repeated here. It should be understood that the scope of protection of the present application is not limited to this. Any technician familiar with this technical field can easily think of various equivalent modifications or replacements within the technical scope disclosed in this application, and these modifications or replacements should be included in the scope of protection of this application.
Claims
1. A data processing method, characterized in that: include: Receive a data visualization request sent by a user terminal, where the data visualization request includes a business scenario corresponding to the user terminal; According to the business scenario, a business problem of the business scenario and an encrypted data table and an encrypted dynamic table corresponding to the business problem are obtained, wherein the encrypted data table includes an encrypted index keyword and data ownership; the encrypted dynamic table is used to describe the storage node to which an encrypted sealed sector having the encrypted index keyword belongs, the owner of the encrypted data, and a traceable block of the encrypted data; the encrypted index keyword is associated with the encrypted data; Based on the encrypted data table and the encrypted dynamic table, construct an encrypted data dynamic view with N levels, where N is an integer greater than 1; Performing drilling processing on N levels in the dynamic view of the encrypted data by using an aggregation algorithm corresponding to the business problem, and obtaining drilling results for each level in the N levels; In a case where the drill-down result indicates that the owner of the encrypted data allows the user terminal to use the encrypted data corresponding to the business problem, a blockchain data visualization interface is displayed based on the encrypted data corresponding to the drill-down result.
2. The method according to claim 1, characterized in that The step of obtaining, according to the business scenario, a business problem of the business scenario and an encrypted data table and an encrypted dynamic table corresponding to the business problem includes: According to the business scenario, N business problems corresponding to the business scenario are obtained, where the business problem includes a description field and an aggregation field, where the description field is used to represent the type of data required by the business scenario, and the aggregation field is used to represent the amount of data required by the business scenario; Classify the N business issues according to the description field and the aggregation field; Summarize the business logic between the business scenarios according to the data types classified by the business problems; The encrypted data table and the encrypted dynamic table corresponding to the business problem are determined through the business logic.
3. The method according to claim 2, characterized in that The step of determining the encrypted data table and the encrypted dynamic table corresponding to the business problem through the business logic includes: According to the business logic, the data ownership of the business encrypted data required for each business problem is checked step by step. The data ownership is used to represent the authority information of the owner of the business encrypted data over the business encrypted data; According to the association information between the preset user terminal and the preset encrypted index keyword, the encrypted index keyword corresponding to the data ownership is obtained from the distributed storage blockchain system.
4. The method according to claim 3, characterized in that The step of determining the encrypted data table and the encrypted dynamic table corresponding to the business problem through the business logic includes: Using the CryptoSQL statement set converted by the business logic, and based on the encryption index keyword, obtaining the storage node, the encrypted data owner, and the traceable block of the encrypted data to which the encrypted sealed sector with the encryption index keyword belongs from the distributed storage blockchain system; The mapping relationship between the storage node to which the encrypted sealed sector having the encryption index keyword belongs, the owner of the encrypted data and the traceable block of the encrypted data is determined as the encryption dynamic table.
5. The method according to claim 1, wherein The step of constructing an encrypted data dynamic view having N levels based on the encrypted data table and the encrypted dynamic table includes: According to the encryption index keyword, the data ownership, the storage node to which the encryption sealed sector belongs, the owner of the encrypted data, and the traceable block of the encrypted data are associated to obtain data associated with the business problem of the user end; Summarizing, based on fields in the data associated with the business problem of the user end, an encrypted data range, a data hierarchy, and an aggregation algorithm of the data associated with the business problem of the user end, wherein the fields in the data associated with the business problem of the user end include classification fields and quantification fields; According to the encrypted data range, data hierarchy and aggregation algorithm, the data associated with the business problem of the user end is divided into a dynamic view of encrypted data with N levels.
6. The method according to claim 5, characterized in that The aggregation algorithm includes at least one of the following: a level algorithm, a metric aggregation algorithm, a dimension aggregation algorithm, and an encrypted dynamic table algorithm; The drilling process is performed on the N levels in the dynamic view of the encrypted data by using the aggregation algorithm corresponding to the business problem to obtain the drilling results of each level in the N levels, including: Using an aggregation algorithm corresponding to the business problem, starting from the i-th level among the N levels and in the direction of level i=i+1, a permission query request is sent to the encrypted data owner of each level of encrypted data, wherein the permission query request is used to query the encrypted data owner whether to allow the user end to use the encrypted data corresponding to the business problem, i∈[0,N]; When confirmation information fed back by the owner of the encrypted data is received, a drilling result is generated.
7. The method according to claim 6, characterized in that Before displaying the blockchain data visualization interface based on the encrypted data corresponding to the drill-down result, the method further includes: According to the association information between the preset encryption index keyword and the preset encryption data, the business encryption data corresponding to the encryption index keyword is obtained from the encryption sealed sector, the storage node to which it belongs, and the traceable block of the encryption data; and according to the encrypted data corresponding to the drill-down result, the blockchain data visualization interface is displayed, including: Calculating a business answer corresponding to the business question based on the encrypted data corresponding to the drill-down result; The business answer is displayed on the blockchain data visualization interface in a preset display format through a multi-dimensional analysis algorithm of online analytical processing.
8. The method according to claim 7, characterized in that Before acquiring the business encrypted data corresponding to the encryption index keyword from the encryption sealed sector, its storage node, and the traceable block of the encrypted data based on the association information between the preset encryption index keyword and the preset encrypted data, the method further includes: receiving a data encryption storage request sent by at least one client, the data encryption storage request including user data and an encryption index keyword corresponding to the user data, the at least one client including the client and a client corresponding to an owner of the encrypted data, the user data including the business encrypted data; Signing the user data according to the private key of the user terminal to obtain encrypted data; By means of a distributed encryption storage network, the encryption index keyword is associated with the encrypted data to obtain association information between the preset encryption index keyword and the preset encrypted data; The encrypted data is stored in an encrypted sealed sector, and the proof string and the associated information of the preset encryption index keyword and the preset encrypted data are recorded in the blockchain of the distributed storage blockchain system, wherein the proof string is used to represent the encryption information and storage information corresponding to the encrypted data.
9. A data processing device, characterized in that: The device comprises: A receiving module, configured to receive a data visualization request sent by a user terminal, wherein the data visualization request includes a business scenario corresponding to the user terminal; an acquisition module, configured to acquire, based on the business scenario, a business problem of the business scenario and an encrypted data table and an encrypted dynamic table corresponding to the business problem, wherein the encrypted data table includes an encrypted index keyword and data ownership; the encrypted dynamic table is configured to describe the storage node to which an encrypted sealed sector having the encrypted index keyword belongs, the owner of the encrypted data, and a traceable block of the encrypted data; the encrypted index keyword is associated with the encrypted data; A construction module, configured to construct an encrypted data dynamic view having N levels based on the encrypted data table and the encrypted dynamic table, where N is an integer greater than 1; A processing module, configured to perform drilling processing on N levels in the dynamic view of the encrypted data by using an aggregation algorithm corresponding to the business problem, and obtain drilling results for each level in the N levels; The display module is configured to display a blockchain data visualization interface based on the encrypted data corresponding to the drill result, if the drill result indicates that the owner of the encrypted data allows the user terminal to use the encrypted data corresponding to the business problem.
10. A computer device, comprising: a processor and a memory storing computer program instructions; When the processor executes the computer program instructions, the data processing method according to any one of claims 1 to 8 is implemented.
11. A storage medium storing computer program instructions, wherein the computer program instructions, when executed by a processor, implement the data processing method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Service management system and method of executing a policy
CN102084620A
Multimedia resource searching method and device and storage medium
CN111241309A