High-Level System Architecture

Introduction

The FLUXNET architecture is designed to efficiently bring real-time, on-demand data to blockchain applications. This high-level overview explains the core components and their interactions within the FLUXNET system, enabling developers and businesses to build innovative decentralized applications (dApps) with ease.

Core Components

1. Consumer Contract

  • Definition: A smart contract deployed on the blockchain that requires external data to execute its functions.

  • Role: Initiates data requests to the FLUXNET network and utilizes the received data within its logic.

2. Oracle Contract

  • Definition: An intermediary smart contract on the blockchain that manages data requests and responses between consumer contracts and off-chain data providers.

  • Role:

    • Receives data requests from consumer contracts.

    • Emits events signaling new data requests.

    • Processes and delivers data responses back to consumer contracts.

3. FLUXNET Nodes (Off-Chain Programs)

  • Definition: Decentralized nodes operated by participants in the FLUXNET network.

  • Role:

    • Monitor the blockchain for data request events emitted by the oracle contract.

    • Fetch the requested data from external data sources.

    • Process and verify the data.

    • Send the data back to the oracle contract for delivery to the consumer contract.

4. External Data Sources

  • Definition: APIs, databases, and other off-chain systems that provide real-world data.

  • Role: Supply the necessary data as requested by the FLUXNET nodes.

Data Flow Overview

Step 1: Data Request Initiation

  • Consumer Contract: Calls a function on the oracle contract to request specific data, passing necessary parameters.

Step 2: Event Emission

  • Oracle Contract: Emits an event indicating a new data request.

  • FLUXNET Nodes: Continuously listen for such events on the blockchain.

Step 3: Data Retrieval

  • FLUXNET Nodes:

    • Detect the data request event.

    • Fetch the required data from external data sources.

    • Perform data verification to ensure accuracy and integrity.

Step 4: Data Submission

  • FLUXNET Nodes: Send the retrieved and verified data back to the oracle contract, often including cryptographic proofs.

Step 5: Data Delivery

  • Oracle Contract: Receives the data from the FLUXNET nodes and updates the consumer contract accordingly.

  • Consumer Contract: Utilizes the received data to execute its intended logic.

Key Architectural Features

Pull-Based Oracle Design

  • On-Demand Data Retrieval: Data is fetched only when requested by a consumer contract.

  • Efficiency: Reduces unnecessary on-chain transactions, lowering gas costs and network congestion.

  • Customization: Allows for specific data requests tailored to application needs.

Decentralization

  • Distributed Nodes: Multiple FLUXNET nodes prevent single points of failure and enhance data availability.

  • Trustless Environment: Eliminates reliance on a single data provider, increasing security and reliability.

Security and Verification

  • Data Integrity: Use of cryptographic proofs ensures data has not been tampered with.

  • On-Chain Verification: Consumer contracts can verify the authenticity of the data received.

Scalability

  • Efficient Data Handling: Capable of handling a growing number of data requests without compromising performance.

  • Node Participation: New nodes can join the network to expand capacity and resilience.

Benefits of the Architecture

  • Speed: Provides real-time data delivery suitable for applications that require immediate information.

  • Cost-Effectiveness: Minimizes gas fees by reducing unnecessary transactions and data storage on-chain.

  • Flexibility: Supports a wide range of data types and sources.

  • Accessibility: Democratizes data access, enabling developers and businesses of all sizes to utilize the network.

Last updated