Geological basic data management service platform based on block chain
By using a data management platform based on blockchain and IPFS, the inefficiency and insecurity of traditional geological data management methods have been solved, enabling efficient and secure sharing of geological data and visualization analysis of complex structures.
Patent Information
- Application Number
- CN202511219064.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-28
- Publication Date
- 2026-01-09
AI Technical Summary
Traditional geological data management methods rely on paper documents and local servers, which cannot meet the efficiency and security requirements of modern geological research.
A blockchain-based geological basic data management service platform will be built, combining blockchain and IPFS distributed storage technologies, and using user trust assessment and data confidentiality level matching mechanisms to achieve secure sharing and protection of geological data.
It improves the efficiency and security of geological data management, ensures data integrity and privacy, and supports the visualization analysis and efficient storage of complex geological structures.
Smart Images

Figure CN121302385A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of geological data management service technology, and in particular to a blockchain-based geological basic data management service platform. Background Technology
[0002] With the rapid development of geological science and information technology, the geological field has accumulated a wealth of data resources, covering geophysical exploration, drilling, geochemical exploration, mineral resources, hydrology, testing, and many other aspects. Geological big data is characterized by its diverse types, complex structures, long time spans, and wide geographical distribution; it is a valuable asset for geological research and geological resource management.
[0003] Traditional geological data management methods mainly rely on paper documents and local servers, which are clearly insufficient in terms of management efficiency, security and data sharing capabilities, and cannot meet the high efficiency and security requirements of modern geological research. Summary of the Invention
[0004] To address the technical problem that existing geological data management methods rely primarily on paper documents and local servers, failing to meet the efficiency and security requirements of modern geological research, this invention aims to provide a blockchain-based geological basic data management service platform. By introducing blockchain and IPFS distributed storage technologies, an efficient, secure, and reliable geological basic data management service platform is constructed, enabling the sharing and protection of geological data.
[0005] The objective of this invention is achieved through the following technical solution:
[0006] This invention provides a blockchain-based geological basic data management service platform. The system architecture of the geological basic data management service platform includes an application layer, a business layer, a contract layer, a service layer, and a storage layer. The storage layer includes a blockchain and an IPFS storage system, and the IPFS storage system stores encrypted geological data.
[0007] The geological basic data management service platform, based on blockchain, implements geological data sharing through the following steps:
[0008] Obtain a data retrieval request initiated by a user, the data retrieval request including keywords and a private key;
[0009] When a user's role login is successfully verified, the user's trust level is calculated.
[0010] A trapdoor is generated based on the aforementioned keyword and private key;
[0011] Request the set of indexes of the blockchain and use the trapdoor for matching;
[0012] When a match is successful, the confidentiality level of the encrypted geological data accessed by the data retrieval request is obtained;
[0013] When the level of confidentiality matches the user's level of trust, the blockchain returns the corresponding on-chain encrypted data to the user.
[0014] The encrypted data on the chain is decrypted to obtain the data storage address of the encrypted geological data in the IPFS storage system.
[0015] Preferably, the geological basic data management service platform also performs an initialization step:
[0016] Public and private keys are generated based on an initialization algorithm;
[0017] Assign users a pre-defined role identifier and a unique identifier for task attributes;
[0018] A first random number is randomly selected as the task key for symmetric encryption, and the task key corresponds to the unique identifier of the task attribute;
[0019] Assign the corresponding public key, private key, and task key to the user.
[0020] Preferably, the geological basic data management service platform performs the data upload step:
[0021] A second random number is randomly selected as the key for symmetric encryption to encrypt the geological data, resulting in ciphertext of the geological data.
[0022] The encrypted geological data is uploaded to the IPFS storage system, and the data storage address returned by the IPFS storage system after successful upload is received.
[0023] Perform a hash operation on the encrypted geological data to obtain the verification hash value of the encrypted geological data;
[0024] Obtain preset index keywords corresponding to the geological data;
[0025] Combine the second random number and the data storage address to generate combined data;
[0026] The combined data is encrypted using the task key to obtain on-chain ciphertext data for use in the blockchain.
[0027] Set the confidentiality level of the on-chain data ciphertext and set the task attributes in the smart contract;
[0028] The on-chain data encryption, confidentiality level, and task attributes are broadcast to the blockchain, and the index key is stored in the blockchain's index set.
[0029] Preferably, the encrypted geological data is hashed, specifically, the BLAKE3 algorithm is used to hash the encrypted geological data, and the hash length of the BLAKE3 algorithm is 512 bits.
[0030] Preferably, the confidentiality levels of the on-chain data ciphertext include a first confidentiality level, a second confidentiality level, a third confidentiality level, a fourth confidentiality level, and a fifth confidentiality level;
[0031] The trust level rating includes visitor users, basic trusted users, trusted users, data auditors, and data administrators;
[0032] The calculation of user trust level specifically involves using a machine learning model to calculate the user's trust score and determining a rating based on the trust score.
[0033] Preferably, the on-chain encrypted data is decrypted to obtain the data storage address of the geological data encrypted data in the IPFS storage system, specifically including:
[0034] The task key is used to decrypt the encrypted data on the chain to obtain a combination of data including a second random number and the data storage address.
[0035] Send the data storage address to the IPFS storage system to download encrypted geological data;
[0036] The geological data is obtained by decrypting the encrypted geological data using a second random number.
[0037] Preferably, the geological basic data management service platform is used to identify data tampering in geological data, including the following steps:
[0038] The BLAKE3 algorithm is used to perform a hash operation on the encrypted geological data to obtain the hash calculation result;
[0039] The hash calculation result is compared with the verification hash value of the encrypted geological data.
[0040] When the comparison is inconsistent, the output will show the identification result that the geological data has been tampered with.
[0041] Preferably, the contract layer achieves data sharing through smart contracts and compiles smart contracts based on Solidity.
[0042] Preferably, the storage layer further includes a graph database, which is used to store and query the spatial, hierarchical and logical relationships between geological data, so as to realize the visualization and map analysis of complex geological structures.
[0043] Preferably, the application layer is used to provide a user interface and front-end function display, and the application layer is implemented using the Vue framework, ElementUI component library, TypeScript and WebSocket.
[0044] Compared with the prior art, the present invention has at least the following beneficial effects:
[0045] This invention provides a blockchain-based geological basic data management service platform. The system architecture of the platform includes an application layer, a business layer, a contract layer, a service layer, and a storage layer. The storage layer includes a blockchain and an IPFS storage system, where the IPFS storage system stores encrypted geological data. The geological basic data management service platform implements geological data sharing based on the blockchain, including the following steps: 1. Obtaining a data retrieval request initiated by a user, the request including keywords and a private key. 2. Calculating the user's trust level upon successful user login verification. 3. Generating a trapdoor based on the keywords and private key. 4. Requesting the blockchain's index set and matching it using the trapdoor. 5. Obtaining the confidentiality level of the encrypted geological data accessed by the data retrieval request. 6. When the confidentiality level matches the user's trust level, the blockchain returns the corresponding on-chain encrypted data to the user. 7. Decrypting the on-chain encrypted data to obtain the data storage address of the encrypted geological data in the IPFS storage system.
[0046] This technology, by introducing blockchain and IPFS distributed storage technologies, constructs an efficient, secure, and reliable geological basic data management service platform, realizing the sharing and protection of geological data. Furthermore, through a user trust-based access control mechanism and encrypted storage, it ensures the confidentiality of geological data, prevents unauthorized access, and improves data security. Attached Figure Description
[0047] Figure 1 This is a system architecture diagram of a blockchain-based geological basic data management service platform according to the present invention;
[0048] Figure 2 This is a flowchart illustrating the initialization steps of a blockchain-based geological basic data management service platform according to the present invention.
[0049] Figure 3 This is a flowchart illustrating the data upload steps of a blockchain-based geological basic data management service platform according to the present invention.
[0050] Figure 4 This is a flowchart illustrating the geological data sharing steps of a blockchain-based geological basic data management service platform according to the present invention. Detailed Implementation
[0051] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided to make this application more comprehensive and complete, and to fully convey the concept of the exemplary embodiments to those skilled in the art.
[0052] Furthermore, the described features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. Numerous specific details are provided in the following description to give a thorough understanding of embodiments of this application. However, those skilled in the art will recognize that the technical solutions of this application can be practiced without one or more of the specific details, or other methods, components, apparatuses, steps, etc., can be employed. In other instances, well-known methods, apparatuses, implementations, or operations are not shown or described in detail to avoid obscuring various aspects of this application.
[0053] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities can be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.
[0054] The flowcharts shown in the accompanying drawings are merely illustrative and do not necessarily include all content and operations / steps, nor do they necessarily have to be performed in the described order. For example, some operations / steps can be broken down, while others can be combined or partially combined; therefore, the actual execution order may change depending on the specific circumstances.
[0055] Example 1
[0056] Figure 1 The diagram illustrates a system architecture of a blockchain-based geological basic data management service platform to which the technical solutions of the embodiments of this application can be applied.
[0057] like Figure 1 As shown, a blockchain-based geological basic data management service platform is presented. The system architecture of the geological basic data management service platform includes an application layer, a business layer, a contract layer, a service layer, and a storage layer.
[0058] This technology, based on blockchain and IPFS distributed storage, constructs a geological basic data management service platform. Through a multi-layered architecture, it achieves secure encrypted storage and sharing of geological data. The platform utilizes a combination of user trust levels and data confidentiality levels, along with a keyword-generated trapdoor mechanism, to enable secure retrieval and access to encrypted geological data. This ensures data integrity, privacy, and access control, effectively improving the efficiency and reliability of geological data management and meeting the needs of modern geological research and resource management. Specifically, the system architecture of the geological basic data management service platform is described below:
[0059] The application layer is the user interface that interacts with the system. It provides an intuitive and easy-to-use front-end interface, enabling users to easily access and manage geological foundation data. The application layer provides the user interface and front-end functionality, and it is implemented using the Vue framework, ElementUI component library, TypeScript, and WebSocket. By combining Vue, ElementUI, TypeScript, and WebSocket, the application layer delivers an efficient, reliable, and user-friendly front-end interface. This approach not only improves development efficiency but also ensures application quality and user experience.
[0060] It's worth noting that Vue is a progressive JavaScript framework for building user interfaces. ElementUI is a desktop component library based on Vue, providing a series of pre-built UI components. TypeScript is a superset of JavaScript, offering strong typing support and enhancing code readability and maintainability. WebSocket is a network communication protocol that provides full-duplex communication capabilities, suitable for real-time data transmission.
[0061] In some possible implementations, the application layer is used to provide end users with visual operation interfaces such as data retrieval, data submission, relationship graph browsing, and permission management, and supports collaborative operation between PC and mobile terminals.
[0062] The business layer handles specific business logic, including data authorization management, role assignment and task keys, key distribution, data encryption, data upload, data download, and data sharing. This layer ensures data security and compliance while providing necessary business functions.
[0063] Regarding the contract layer, it is the core of blockchain technology, responsible for defining smart contracts and implementing functions such as data retrieval, dynamic authorization, and node selection. Smart contracts automatically execute predefined rules, ensuring the transparency and immutability of data management.
[0064] In one possible implementation, the contract layer utilizes smart contracts implemented in Solidity, enabling the geological basic data management service platform to effectively manage and share geological data. The smart contract layer not only improves the efficiency and security of data sharing but also reduces human error and intervention through automated execution, providing a reliable and transparent solution for the management and sharing of geological data.
[0065] Regarding the service layer, it provides the system's foundational services, including data exchange, FISCO BCOS, and Webase. This layer ensures the efficient transmission and processing of data between different components and services.
[0066] Regarding the storage layer, it is responsible for persistent data storage and includes blockchain, IPFS storage systems, database systems, and graph databases. This layer ensures data reliability and availability, and supports efficient data querying and management.
[0067] In some specific implementations, the database system can adopt a distributed multimodal database, such as the domestically developed BoLiu distributed multimodal database. On the other hand, the blockchain can be a domestically developed blockchain, such as the BoLiu blockchain.
[0068] In some possible implementations, the IPFS storage system stores encrypted geological data. IPFS is a high-performance, highly reliable distributed file system, well-suited for storing large amounts of data.
[0069] In this application, a graph database is used to store and query the spatial, hierarchical, and logical relationships between geological data to achieve the visualization and map analysis of complex geological structures. For example, the graph database is used to store the spatial, hierarchical, and logical relationships between geological entities (such as strata, faults, ore bodies, and hydrological units) for the visualization and map analysis of complex geological structures.
[0070] In some possible implementations, the graph database includes:
[0071] Geological entity relationship modeling module: Standardizes and abstracts entities such as strata, faults, ore bodies, and hydrological units in geological data into nodes in the graph database, and constructs edges in the graph database based on geological relationships such as spatial contact, hierarchical nesting, and logical evolution.
[0072] In some implementations, key entities, such as strata, faults, ore bodies, and hydrological units, are identified from geological data. These entities are then abstracted as nodes (vertices) in a graph database. Based on geological principles, spatial contacts, hierarchical nesting, and logical evolutionary relationships between these entities are defined, and corresponding edges (connectors) are constructed in the graph database.
[0073] The map structure construction module automatically generates geological structure maps. Based on the fusion of multi-source data (such as borehole data, profile maps, and remote sensing images), it generates spatially-hierarchically-logically unified maps through a rule engine and graph algorithms.
[0074] In some implementations, multi-source data, such as borehole data, profile maps, and remote sensing imagery, are integrated. A rule engine is used to process the data and extract key information. Graph algorithms are applied to generate geological structure maps, achieving a unified spatial, hierarchical, and logical representation.
[0075] Geological evolution logic reasoning module: Based on the path relationships and time annotations in the graph structure, it uses graph traversal and causal reasoning algorithms to realize the identification of the temporal evolution chain of geological structures.
[0076] In some implementations, path relationships within the graph structure are analyzed, and time markers are added to the graph. Graph traversal and causal reasoning algorithms are employed to identify the temporal evolution chains of geological structures.
[0077] Visualization module: Generates interactive 3D geological structure maps using graph database query results, supporting functions such as clicking on nodes to view attributes, highlighting relationships, and dynamic evolution animations.
[0078] In some implementations, graph database query results are used to generate interactive 3D geological structure maps. These maps also support viewing attributes by clicking on nodes, highlighting relationships, and displaying dynamic evolution animations.
[0079] Intelligent Analysis Module: Supports querying complex logical relationships such as "all underlying aquifers affected by a fault" or "all structural units traversed by a ore body", and outputs map paths and explanations.
[0080] Some implementations support complex queries, such as "the area affected by a certain fault" or "the distribution of a certain ore body." Intelligent analysis algorithms, such as machine learning and data mining, are applied to perform in-depth analysis of geological data.
[0081] By introducing a graph database, geological entities are abstracted as "nodes" in the graph, and the relationships between entities (such as contact, overlay, fracture, connection, tunneling, etc.) are abstracted as "edges". This constructs a structural directed graph, enabling a unified expression and intelligent analysis of geological spatial structure, hierarchical structure, and evolutionary logic.
[0082] Understandably, in a blockchain-based geological data management service platform, graph databases can not only store and manage the spatial, hierarchical, and logical relationships within geological data, but also support the visualization and map analysis of complex geological structures. The integration of graph databases into the blockchain-based geological data management service platform makes the management, analysis, and application of geological data more efficient and intuitive.
[0083] In summary, this technology constructs a geological basic data management service platform based on blockchain, IPFS, and graph databases. Through a multi-layered architecture, it achieves secure storage, sharing, and intelligent management of geological data. The platform utilizes blockchain to ensure data tamper-proofing and traceability, IPFS to achieve distributed storage of encrypted geological data, and graph databases to store and query the spatial, hierarchical, and logical relationships between geological data, supporting the visualization and map analysis of complex geological structures. The system controls access permissions through trust mechanisms and confidentiality levels, combined with trapdoors generated based on private keys and keywords, enabling secure retrieval and precise access to geological data, comprehensively improving the management efficiency, sharing capabilities, and application value of geological data.
[0084] This technology integrates advanced technologies such as blockchain, distributed storage, and graph databases to construct a data management and sharing platform for the geological industry, enabling trusted storage, secure access, and visualized analysis of relationships in basic geological data. Specific benefits include:
[0085] (a) Enhance data security and anti-tampering capabilities
[0086] By leveraging the distributed ledger and immutability of blockchain, the integrity and credibility of geological data can be ensured during the recording, sharing, and access processes.
[0087] (ii) Improve the efficiency and controllability of data sharing
[0088] By combining user trust assessment with data confidentiality level matching mechanism, we can achieve hierarchical management and on-demand authorized sharing of sensitive geological information.
[0089] (iii) Support for modeling and visualization analysis of complex geological relationships
[0090] The graph database module expresses the spatial, hierarchical, and logical relationships between geological entities, providing support for the construction of geological structure maps, simulation of evolution processes, and relationship query analysis.
[0091] (iv) Enhance the storage and access capabilities for massive amounts of data
[0092] By using the IPFS distributed storage system to store encrypted geological data, the system's scalability and disaster recovery capabilities are improved, supporting the distributed management of large-scale geological data.
[0093] Example 2
[0094] Figure 2 , Figure 3 and Figure 4The diagram illustrates a flowchart of the initialization steps, data upload steps, and geological data sharing steps of a blockchain-based geological basic data management service platform according to an embodiment of this application. These initialization steps, data upload steps, and geological data sharing steps can be executed by the blockchain-based geological basic data management service platform. Specifically, they can be implemented by... Figure 1 The diagram shows the business layer implementation of a blockchain-based geological basic data management service platform.
[0095] Reference Figure 2 As shown, this initialization step includes at least steps S210 to S240, which are described in detail below:
[0096] Step S210: Generate public and private keys based on the initialization algorithm.
[0097] In this application, a pair of keys is created for the user for encrypting and decrypting data, ensuring the security of data transmission and storage.
[0098] In some possible implementations, a public and private key pair is generated using a secure encryption algorithm (such as RSA, ECDSA, or EdDSA). The public key is used to encrypt data, and the private key is used to decrypt data. For example, a preset algorithm... Calculate the public key and private key .
[0099] In some specific implementations, an encryption system based on bilinear mappings is introduced: the order of two multiplicative groups G1 and G2 that satisfy the bilinear mapping is set to a prime number. . It is an efficient bilinear mapping, and the choice is... For a generator of G1, select a random number. As a private key public key Then construct two hash functions, namely... , .
[0100] Step S220: Assign a preset role identifier and a unique identifier for the task attribute to the user.
[0101] In this application, unique identifiers are assigned to users based on their roles (such as data owner, data requester, data administrator, etc.) and task attributes (such as data upload, data download, etc.). This ensures the uniqueness of each user's role identifier and task attributes, preventing identity confusion and abuse of permissions.
[0102] In some possible implementations, role identifiers are assigned. Unique identifier for task attributes .
[0103] In some specific implementations, under a bilinear pair access control encryption system, the unique identifier of the task attribute Instead of being expressed directly in plain text, it is generated through the following steps:
[0104] Step 1: Extract the original task attribute information. Obtain the set of basic attribute information of the task from the platform, denoted as:
[0105] ;
[0106] Each of them This indicates the specific attribute fields of the task, such as task type (upload, download), user ID, initiation timestamp, and data category number.
[0107] Step 2: Construct a task identifier string by concatenating the above task attributes into an ordered bit string:
[0108] ;
[0109] In this context, || indicates that the components are joined in a preset order to ensure consistency.
[0110] Step 3: Perform a hash mapping on the task identifier string using a hash function. Hash the concatenated task identifier string to generate a unique identifier for the task attribute. :
[0111] ;
[0112] Step S230: Randomly select a first random number as the task key for symmetric encryption, wherein the task key corresponds to the unique identifier of the task attribute.
[0113] In some possible implementations, a secure key is created for a specific task to ensure the security of task data. For example, a first random number is selected. As the key for symmetric encryption of the task, it serves as a unique identifier for the task's attributes. Corresponding to the first random number .
[0114] Step S240: Assign the corresponding public key, private key and task key to the user.
[0115] In this application, the generated public key, private key, and task key are distributed to the corresponding users. This ensures that users possess all the keys required to access and operate the platform, while protecting the security of the keys and preventing unauthorized access.
[0116] Reference Figure 3As shown, the data upload process includes at least steps S310 to S380, which are detailed below:
[0117] Step S310: Randomly select a second random number as the key for symmetric encryption to encrypt the geological data and obtain the ciphertext of the geological data.
[0118] In some possible implementations, a second random number is randomly selected. The geological data C is then encrypted using the symmetric encryption key to obtain the ciphertext C' of the geological data.
[0119] Step S320: Upload the encrypted geological data to the IPFS storage system and receive the data storage address returned by the IPFS storage system after successful upload.
[0120] This application utilizes the distributed storage features of IPFS to ensure reliable storage and convenient access to geological data. Upon successful transmission of encrypted geological data, the IPFS storage system returns the data storage address.
[0121] Step S330: Perform a hash operation on the encrypted geological data to obtain the verification hash value of the encrypted geological data.
[0122] In this step, the integrity and consistency of the data are verified through hash values to ensure that the data has not been tampered with.
[0123] In some possible implementations, the encrypted geological data is hashed, specifically using the BLAKE3 algorithm, which has a hash length of 512 bits.
[0124] In a blockchain-based geological data management service platform, the BLAKE3 algorithm is used to hash encrypted geological data to ensure data integrity and security. Hash operations enable rapid data verification of consistency, while the immutability of blockchain enhances data security and traceability. This provides strong technical support for the secure storage and sharing of geological data.
[0125] Step S340: Obtain preset index keywords corresponding to the geological data.
[0126] In some possible implementations, the index key is set by the data owner, choosing a random number. Use public key to calculate key Then select a random number to obtain the index key. , .
[0127] Step S350: Combine the second random number and the data storage address to generate combined data.
[0128] For example, the content of the combined data m is .
[0129] Step S360: Encrypt the combined data using the task key to obtain the on-chain data ciphertext for use in the blockchain.
[0130] In this application, the combined data m is encrypted using a task key to obtain on-chain data ciphertext m' for use on the blockchain. Encryption with the task key further protects the data and ensures its security on the blockchain.
[0131] Step S370: Set the confidentiality level of the on-chain data ciphertext and set the task attributes in the smart contract.
[0132] In some possible implementations, the confidentiality levels of the on-chain data ciphertext include a first confidentiality level, a second confidentiality level, a third confidentiality level, a fourth confidentiality level, and a fifth confidentiality level. .
[0133] For example, security levels are used to identify the sensitivity and importance of encrypted data on the blockchain, with different security levels corresponding to different access permissions and protection measures. The specific classifications are as follows:
[0134] First level of security: The lowest level of security, usually used for public data or data with low security requirements.
[0135] Second level of security: medium to low level of security, suitable for internal use, with certain security requirements for external use.
[0136] Third level of security: Medium level of security, suitable for relatively sensitive but non-core data.
[0137] Fourth level of security: A higher level of security, used for important data, requiring strict control over access permissions.
[0138] Fifth Security Level: The highest security level, used for extremely sensitive and important data, with the strictest protection measures.
[0139] In some possible implementations, task state attributes are set in the smart contract. Data uploaders can control data requests by changing the task status.
[0140] Step S380: Broadcast the on-chain data encryption, confidentiality level, and task attributes to the blockchain, and store the index key in the blockchain's index set.
[0141] In some possible implementations, the above data is broadcast to the blockchain system. The data stored on the blockchain is... and index keywords Record to a collection that stores all indexed keys .
[0142] Reference Figure 4 As shown, this geological data sharing process includes at least steps S410 to S460, which are detailed below:
[0143] Step S410: Obtain the data retrieval request initiated by the user, the data retrieval request including keywords and private keys.
[0144] In some possible implementations, when a data requester in a real-world scenario issues a data request, the geological basic data management service platform needs to verify the user's role login. If the login fails, the user is logged out of the geological basic data management service platform.
[0145] Step S420: When the user's role login is successfully verified, calculate the user's trust level.
[0146] In some possible implementations, to ensure the reasonable allocation of data access permissions and improve platform security, the system sets up a user trust rating mechanism. Preferably, the trust rating includes the following five levels: visitor user, basic trusted user, trusted user, data auditor, and data administrator. Each level of user has different data access permissions and operation permissions; the higher the trust level, the wider the scope of permissions.
[0147] Trust ratings are used to assess users' trustworthiness and reliability with the platform. Different ratings correspond to different permissions and access levels. The specific divisions are as follows:
[0148] 1. Guest users: Lowest level of trust, usually only have permission to access public data.
[0149] 2. Basic Trusted Users: Users have a certain level of trust and can access some non-sensitive data.
[0150] 3. Trusted User: Higher level of trust, can access most data, including some sensitive data.
[0151] 4. Data Auditor: Highly trusted, responsible for auditing and processing sensitive data.
[0152] 5. Data Administrator: Highest level of trust, with authority to manage all data.
[0153] In some possible implementations, calculating a user's trust level specifically involves using a machine learning model to calculate a user's trust score and determining a rating based on that score. The following example illustrates the implementation process of this invention using a Random Forest model to calculate a user's trust score and determine a rating.
[0154] In this embodiment, the geological basic data management service platform constructs feature vectors based on users' historical behavior data on the platform, uses a trained random forest classification model to quantitatively evaluate user trust levels, and assigns user rating levels based on trust scores.
[0155] I. Data Acquisition and Feature Extraction:
[0156] The system collects user behavior data from on-chain or off-chain log systems, mainly including but not limited to the following feature dimensions:
[0157] F1: Account registration time (days);
[0158] F2: Login frequency (within the last 30 days);
[0159] F3: Number of data access requests (within the last 30 days);
[0160] F4: Number of valid data uploaded;
[0161] F5: Percentage of uploaded data accepted;
[0162] F6: Number of historical violations;
[0163] F7: Average response time for users to external requests;
[0164] F8: Stability score of user behavior (e.g., regularity of access time);
[0165] F9: Ratings of this user's behavior by other users on the platform (such as the ratio of likes to complaints).
[0166] Based on the above characteristics, the system constructs a feature vector X = [F1, F2, ..., F9] for each user.
[0167] II. Model Training and Trust Prediction:
[0168] The administrator of the geological basic data management service platform pre-constructs a training dataset based on historical data. This dataset includes user feature vectors and manually labeled trust levels. Using this as a foundation, a random forest classification model is trained to obtain a model capable of predicting the trust level of new users.
[0169] In practical applications, for the feature vector X input by the current user, it is input into the model and outputs a trust score S. This score is usually a floating-point number between 0 and 1, representing the user's overall trust level.
[0170] III. Trust Rating Classification:
[0171] The system presets the following rating range, mapping the trust score S to the corresponding trust level:
[0172]
[0173] Step S430: Generate a trapdoor based on the keyword and private key.
[0174] In some possible implementations, based on the user's private key Generate a trapdoor , .
[0175] Step S440: Request the set of indexes of the blockchain and match them using the trapdoor.
[0176] In some possible implementations, the index set of the blockchain is requested. Using trapdoors Perform a match.
[0177] In some possible implementations, when the keyword is matched with the index set A certain index key Corresponding keywords If they are the same, the match is successful. The matching process is as follows:
[0178] .
[0179] Step S440: When a match is successful, obtain the confidentiality level of the encrypted geological data accessed by the data retrieval request.
[0180] Step S450: When the confidentiality level matches the user's level of trust, the blockchain returns the corresponding on-chain encrypted data to the user.
[0181] For details on the matching relationship between confidentiality level and trust level, please refer to the above description.
[0182] Step S460: Decrypt the encrypted data on the chain to obtain the data storage address of the encrypted geological data in the IPFS storage system.
[0183] In some possible implementations, the on-chain data ciphertext is decrypted to obtain the data storage address of the geological data ciphertext in the IPFS storage system, specifically including:
[0184] Step S461: Decrypt the encrypted data on the chain using the task key to obtain combined data including the second random number and the data storage address.
[0185] In some possible implementations, the task key is used to decrypt the ciphertext of the on-chain data to obtain a second random number. and data storage address The combined data m.
[0186] Step S462: Send the data storage address to the IPFS storage system and download the encrypted geological data.
[0187] Step S463: Decrypt the ciphertext of the geological data using a second random number to obtain the geological data.
[0188] In some preferred embodiments, the geological basic data management service platform is used to identify data tampering in geological data, including the following steps:
[0189] Step S470: Use the BLAKE3 algorithm to perform a hash operation on the encrypted geological data obtained in step S462 to obtain the hash calculation result.
[0190] Step S480: Compare the hash calculation result with the verification hash value of the geological data ciphertext.
[0191] Step S490: When the comparison is inconsistent, output the identification result of the geological data being tampered with.
[0192] In some possible implementations, the general operation flow of the blockchain-based geological basic data management service platform of this application is shown from the perspective of data owner and data requester.
[0193] (a) Data Owner Operation Process
[0194] Before uploading geological data, the data owner must first encrypt the data using a symmetric key. Then, the encrypted data is uploaded to the IPFS server through the system, and the corresponding download address is obtained. Next, a hash function is used to calculate the hash value of the encrypted geological data. Furthermore, a security level for the geological data must be set to ensure that only users with a certain level of trust have permission to access the data.
[0195] The data storage address, data hash value, and data symmetric key returned by IPFS are integrated into a data digest, which is then symmetrically encrypted using the task key. A keyword index is generated using a public-key searchable algorithm, and this keyword index is associated with the ciphertext of the data digest, the security level, and the task ID. Finally, this information is uploaded to the blockchain system.
[0196] (II) Data Requester Operation Process
[0197] Combination Figure 4 When a data requester applies for data, the geological data management system determines whether they have the corresponding data retrieval permissions based on pre-defined permission rules. During the data retrieval process, the data requester needs to generate a trapdoor using a public-key search algorithm and then match indexed keywords by calling a smart contract in the blockchain.
[0198] If the match is successful, the system first verifies the task status. If the task has already ended, the secondary encrypted data cannot be returned to the data requester. If the task status is normal, the system further verifies whether the data requester's trust level meets the file's confidentiality level. Only when the trust level meets the requirements will the encrypted data digest be returned to the data requester. The data requester then uses the task key to decrypt the encrypted data digest, thereby obtaining the data storage address. With this address, the data requester can download the encrypted data from IPFS, verify the data integrity using the hash value, and finally decrypt the data into plaintext using a symmetric encryption key.
[0199] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. A blockchain-based geological basic data management service platform, characterized in that, The system architecture of the geological basic data management service platform includes an application layer, a business layer, a contract layer, a service layer, and a storage layer; the storage layer includes a blockchain and an IPFS storage system, and the IPFS storage system stores encrypted geological data. The geological basic data management service platform, based on blockchain, implements geological data sharing through the following steps: Obtain a data retrieval request initiated by a user, the data retrieval request including keywords and a private key; When a user's role login is successfully verified, the user's trust level is calculated. A trapdoor is generated based on the aforementioned keyword and private key; Request the set of indexes of the blockchain and use the trapdoor for matching; When a match is successful, the confidentiality level of the encrypted geological data accessed by the data retrieval request is obtained; When the level of confidentiality matches the user's level of trust, the blockchain returns the corresponding on-chain encrypted data to the user. The encrypted data on the chain is decrypted to obtain the data storage address of the encrypted geological data in the IPFS storage system.
2. The blockchain-based geological basic data management service platform as described in claim 1, characterized in that, The geological basic data management service platform also performs an initialization step: Public and private keys are generated based on an initialization algorithm; Assign users a pre-defined role identifier and a unique identifier for task attributes; A first random number is randomly selected as the task key for symmetric encryption, and the task key corresponds to the unique identifier of the task attribute; Assign the corresponding public key, private key, and task key to the user.
3. The blockchain-based geological basic data management service platform as described in claim 2, characterized in that, The geological basic data management service platform performs the following data upload steps: A second random number is randomly selected as the key for symmetric encryption to encrypt the geological data, resulting in ciphertext of the geological data. The encrypted geological data is uploaded to the IPFS storage system, and the data storage address returned by the IPFS storage system after successful upload is received. Perform a hash operation on the encrypted geological data to obtain the verification hash value of the encrypted geological data; Obtain preset index keywords corresponding to the geological data; Combine the second random number and the data storage address to generate combined data; The combined data is encrypted using the task key to obtain on-chain ciphertext data for use in the blockchain. Set the confidentiality level of the on-chain data ciphertext and set the task attributes in the smart contract; The on-chain data encryption, confidentiality level, and task attributes are broadcast to the blockchain, and the index key is stored in the blockchain's index set.
4. The blockchain-based geological basic data management service platform as described in claim 3, characterized in that: The encrypted geological data is hashed using the BLAKE3 algorithm, which has a hash length of 512 bits.
5. The blockchain-based geological basic data management service platform as described in claim 3, characterized in that: The confidentiality levels of the on-chain data ciphertext include a first confidentiality level, a second confidentiality level, a third confidentiality level, a fourth confidentiality level, and a fifth confidentiality level; The trust level rating includes visitor users, basic trusted users, trusted users, data auditors, and data administrators; The calculation of user trust level specifically involves using a machine learning model to calculate the user's trust score and determining a rating based on the trust score.
6. The blockchain-based geological basic data management service platform as described in claim 3, characterized in that, Decrypting the on-chain encrypted data yields the data storage address of the geological data encrypted in the IPFS storage system, specifically including: The task key is used to decrypt the encrypted data on the chain to obtain a combination of data including a second random number and the data storage address. Send the data storage address to the IPFS storage system to download encrypted geological data; The geological data is obtained by decrypting the encrypted geological data using a second random number.
7. A blockchain-based geological basic data management service platform as described in claim 6, characterized in that, The geological basic data management service platform is used to identify data tampering in geological data, including the following steps: The BLAKE3 algorithm is used to perform a hash operation on the encrypted geological data to obtain the hash calculation result; The hash calculation result is compared with the verification hash value of the encrypted geological data. When the comparison is inconsistent, the output will show the identification result that the geological data has been tampered with.
8. The blockchain-based geological basic data management service platform as described in claim 1, characterized in that: The contract layer achieves data sharing through smart contracts and compiles smart contracts based on Solidity.
9. A blockchain-based geological basic data management service platform as described in claim 1, characterized in that: The storage layer also includes a graph database, which is used to store and query the spatial, hierarchical and logical relationships between geological data, so as to realize the visualization and map analysis of complex geological structures.
10. A blockchain-based geological basic data management service platform as described in claim 1, characterized in that: The application layer is used to provide user interaction interface and front-end function display. The application layer is implemented using the Vue framework, ElementUI component library, TypeScript and WebSocket.