Files
smom-dbis-138/docs/operations/integrations/FIREFLY_INTEGRATION.md
defiQUG 1fb7266469 Add Oracle Aggregator and CCIP Integration
- Introduced Aggregator.sol for Chainlink-compatible oracle functionality, including round-based updates and access control.
- Added OracleWithCCIP.sol to extend Aggregator with CCIP cross-chain messaging capabilities.
- Created .gitmodules to include OpenZeppelin contracts as a submodule.
- Developed a comprehensive deployment guide in NEXT_STEPS_COMPLETE_GUIDE.md for Phase 2 and smart contract deployment.
- Implemented Vite configuration for the orchestration portal, supporting both Vue and React frameworks.
- Added server-side logic for the Multi-Cloud Orchestration Portal, including API endpoints for environment management and monitoring.
- Created scripts for resource import and usage validation across non-US regions.
- Added tests for CCIP error handling and integration to ensure robust functionality.
- Included various new files and directories for the orchestration portal and deployment scripts.
2025-12-12 14:57:48 -08:00

3.0 KiB

Hyperledger Firefly Integration

Overview

Hyperledger Firefly is integrated into the Besu network for tokenization and asset management. Firefly provides a high-level API for managing tokens, NFTs, and data on the blockchain.

Architecture

Components

  1. Firefly Core: Main Firefly service
  2. PostgreSQL: Database for Firefly
  3. IPFS: Distributed storage for Firefly data
  4. Besu Connector: Connects Firefly to Besu network

Network Integration

  • Chain ID: 138 (DeFi Oracle Meta Mainnet)
  • RPC Endpoint: Besu RPC nodes
  • WebSocket Endpoint: Besu WebSocket nodes

Deployment

Prerequisites

  • Kubernetes cluster (AKS)
  • Besu network deployed
  • RPC endpoints accessible

Deploy Firefly

# Deploy Firefly
./scripts/deployment/deploy-firefly.sh

# Or manually
kubectl apply -f k8s/firefly/

Verify Deployment

# Check Firefly status
kubectl get pods -n firefly

# Check Firefly API
curl http://firefly-api.firefly.svc.cluster.local:5000/api/v1/status

Configuration

Firefly Configuration

Firefly is configured via ConfigMap (k8s/firefly/configmap.yaml):

  • Database: PostgreSQL
  • Blockchain: Ethereum (Besu)
  • RPC: Besu RPC endpoints
  • Chain ID: 138
  • IPFS: IPFS service for data storage

Environment Variables

  • FF_DATABASE_TYPE: postgres
  • FF_DATABASE_URL: PostgreSQL connection string
  • FF_BLOCKCHAIN_TYPE: ethereum
  • FF_BLOCKCHAIN_RPC: Besu RPC URL
  • FF_BLOCKCHAIN_WS: Besu WebSocket URL
  • FF_CHAIN_ID: 138

Usage

Create Token Pool

curl -X POST http://firefly-api.firefly.svc.cluster.local:5000/api/v1/tokens/pools \
  -H "Content-Type: application/json" \
  -d '{
    "name": "MyToken",
    "symbol": "MTK",
    "type": "fungible"
  }'

Mint Tokens

curl -X POST http://firefly-api.firefly.svc.cluster.local:5000/api/v1/tokens/mint \
  -H "Content-Type: application/json" \
  -d '{
    "pool": "pool-id",
    "amount": "1000",
    "to": "0x..."
  }'

Create NFT

curl -X POST http://firefly-api.firefly.svc.cluster.local:5000/api/v1/tokens/nfts \
  -H "Content-Type: application/json" \
  -d '{
    "pool": "pool-id",
    "tokenId": "1",
    "uri": "ipfs://...",
    "to": "0x..."
  }'

Integration with Besu

Firefly connects to Besu via:

  1. RPC Endpoint: HTTP JSON-RPC
  2. WebSocket Endpoint: WebSocket JSON-RPC
  3. Chain ID: 138

Besu-Firefly Connector

The Besu-Firefly connector (connectors/besu-firefly/connector.py) provides:

  • Network registration
  • Contract deployment
  • Status monitoring

Tokenization

Firefly enables tokenization of:

  • Financial Files: ISO-20022, SWIFT FIN
  • Assets: Real-world assets
  • Data: Any digital data

See Financial Tokenization Service for details.

References