Sign in now

Xooa may be used with a blockchain network hosted and managed entirely outside of Xooa, or on internal networks hosted and managed by Xooa (easier).

Most of Xooa’s features including custom smart contracts, managed apps, API-Gateway, identity orchestration with API tokens, the middleware, the ledger explorer, and cloud-to-cloud integrations are available on external networks through Xooa.

To use Xooa with the internal blockchain network, there is no need to configure a network and this section may be skipped. You may extend the Xooa network using the instructions below and run peers outside of Xooa.

Xooa Managed Networks

Xooa provides 3 internal networks hosted and managed by Xooa.

  1. Xooa Custom Smart Contracts: This network is used (as the name suggests) while deploying a custom smart contract from the Xooa platform. This network is shared among all the tenants of the Xooa platform. This is a Hyperledger Fabric network.
  2. Xooa Ledger: This network is used to deploy XLDB, a Xooa-managed app, or any of the templates that Xooa provides. This network is shared among all the tenants of the Xooa platform. This is a Hyperledger Fabric network.
  3. XooaNetPublic: This is an Ethereum Network available for Solidity-based smart contracts.

To use Xooa with an external network, the external blockchain network should first be operational, then the network connection information and credentials should be added to Xooa.

Extend a Xooa-Managed Hyperledeger Fabric Network

Extending a network allows you to distribute the network.

You start with a Xooa-managed network which is centralized because all the nodes are run on Xooa servers. However, by extending it you can make the network distributed. Centralized databases are easier to experiment with and suited more for early stages such as rapid prototyping, demos, and POCs. distributed databases are normally used for later stages, such as go-live, when trust is facilitated through decentralization by using blockchain.

You can have multiple benefits from extending the network

  • Backup: Keep a backup of your ledger outside of Xooa.
  • Multi-party trust: You can have a node running by each party involved in a contract. This will allow all parties to keep in-sync with the ledger and can also take part in endorsement.
  • Endorsement policies: Extending the network with an endorsement peer allows the peer to participate in an endorsement policy for each transaction.

Create a custom Organization and Peer

Extending a network allows you to disseminate blockchain data outside Xooa. Once syncing is complete, all your data will be available on the external peer.

Extend a network by following these steps:

  • Click on Extend.
  • Provide Organization and Peer names.
  • The peer is now ready to be downloaded.
  • Follow the instructions on the Xooa console to deploy the external peer on-premise or to on any of the leading cloud providers.

Orchestrate a Peer

We provide only limited crypto material for bootstrapping a peer to connect to the Xooa network and sync your blockchain ledger.

The peer can be deployed on:

  • On-prem or any docker environment
  • Popular cloud services using preconfigured templates and orchestration steps
    • AWS EC2
    • Azure Compute
    • Google Compute Engine
    • IBM Cloud Compute
    • Oracle Cloud Compute

The downloaded peer is coupled with the blockchain ledger. It can be used to view transactions by visiting http://<peer ip>:8080/.

Observing Peer

Every orchestrated peer is by default an observing peer. An observing peer syncs up with the ledger data. It provides access to the ledger explorer on an external peer node.

Endorsing Peer

You can convert an observing peer to an endorsing peer by going through the following steps. This will allow the organization to take part in an endorsement policy.

Make Endorsing Peer(Optional)

  • Navigate to the network the peer is associated with.
  • Go to Nodes tab.
  • Scroll down to Peers.
  • Find the peer you want to make endorsing.
  • Click Options for that peer.
  • Click Make endorsing.
  • Provide the Request and Event URLs for the peer.
  • Click Test and Save.

If the test of the peer fails, recheck the provided URLs. Retest a peer if failed test feels like a mistake or you have made corrections in the peer deployment.

Endorsement Policy The endorsement policy can be defined for each app. You can navigate to the Manage tab of any app to define its endorsement policy. Learn more about endorsement policies on Xooa here.

 

Note

Deleting an organization will revoke the access of all the associated external peers. It will no longer sync with Xooa. Access to already synced data will remain available with the external peer.

Add an External Hyperledger Fabric Network

Prerequisites

You can connect a Hyperledger Fabric Network to Xooa which is functioning and accessible over the internet. The network should be outside of Xooa.

Import Managed Blockchain service Network definitions of major BaaS providers

Azure Blockchain Network

A simple guide to import the Hyperledger Fabric network deployed on Azure.

Step 1
Step 2
  • Upload the Azure blockchain connection profile JSON files.
  • Upload Admin Crypto JSON files.
Step 3
  • Upload Private Key file of organization admins.
  • Provide Registrar credentials of CA Servers.
Step 4
  • Provide a name for the network to identify on Xooa.
  • Provide Channel name used while configuring the network on Azure.
  • Click Save.

Oracle Blockchain Network

A simple guide to import the Hyperledger Fabric network deployed on Oracle.

Step 1
  • Go to Oracle Blockchain Platform Console.
  • Click on Developer Tools tab and navigate to Application Development.
  • Under the OBP section, click on Download the development package.
Step 2
  • Upload the zip file containing the Oracle Development Package.
Step 3
  • Provide Registrar credentials of CA Servers.
Step 4
  • Provide a name for the network to identify on Xooa.
  • Provide Channel name used while configuring the network on Oracle.
  • Click Save.

IBM Blockchain Network

A simple guide to import the Hyperledger Fabric network deployed on IBM.

Step 1
  • Retrieve IBM node files from your network in IBP.
Step 2
  • Upload the IBM node files for the peer, CA, and the orderer.
Step 3
  • Upload the wallet configuration files.
  • Provide the registrar details for CA servers.
Step 4
  • Provide a name for the network to identify on Xooa.
  • Provide Channel name used while configuring the network on IBM.
  • Click Save.

Prepare an AWS Managed Blockchain for integration with Xooa

Guide to import Hyperledger Fabric network deployed on AWS.

Step 1
  • Create an AWS Managed Blockchain network with:
    • A channel on the network
    • At least one peer
  • Obtain TLS certificates
  • Obtain MSP admin certificates
Step 2
  • Create a cloud formation stack:
    • Use template: https://xooa-awsblockchain.s3.amazonaws.com/envoyCF.json
    • CA endpoint:
      • Select the network created in the AWS Managed Blockchain network
      • Go to the Members tab
      • Select the member
      • Copy the CA URL
      • Remove the port number
    • Orderer endpoint:
      • Select the network created in the AWS Managed Blockchain network
      • Go to the Details tab
      • Copy the ordering service endpoint
      • Remove the port number
    • Peer endpoint:
      • Select the network created in the AWS Managed Blockchain network
      • Go to the Members tab
      • Select the member
      • Select the node
      • Copy the peer endpoint
      • Remove the port number
Step 3
  • Create DNS entry in Route53:
    • Obtain IPV4 public IP:
      • Go to the Resources tab from the stack you just created
      • Navigate to the physical ID of EC2 instance
      • Copy IPV4 public IP from the description tab
    • Create a record set for each of the orderer, CA and peer subdomains
    • Enter the instance’s IPV4 public IP in the value field while creating the record set
Step 4
  • Continue with the process described below for Hyperledger Fabric networks to connect the AWS network to Xooa.

Manually add Hyperledger Fabric Nodes and Keys to a Network

Connect an external network to your Xooa account. All the nodes will run on your DLT provider and will be connected to Xooa’s architecture.

Choose this option if your outside network is established on an AWS Managed Blockchain or on-prem. This will allow you to manually enter configuration details for the orderers, organizations, CA servers, and peers. Make sure to obtain information about the nodes from the DLT provider of your Hyperledger Fabric network.

  • Select Hyperledger Fabric as DLT.
  • Provide Name for the network to identify on Xooa.
  • Provide the channel ID that you want the network to connect to on the DLT provider.
Orderers
  • Enter the name of the orderer (For AWS: Enter ordering service endpoint without the port number).
  • Enter the URL of the orderer (For AWS: Enter the URL created for the ordering service in Route53. Add 7050 as the port number).
  • You will be asked for a TLS certificate too if the GRPCS URL is entered.
Organizations
  • Enter the name and MSP of the organization to be added (For AWS: Enter Member ID as name and MSP).
  • Upload the private key and signed certificate of the organization.
  • Select the organization you want to make the default for all the transactions.
CA Servers
  • Select the organization for the CA server to be associated with. You’ll require at least 1 available organization to add a peer.
  • Enter the name of the CA server (For AWS: Enter Member ID).
  • Enter the URL of the CA server (For AWS: Enter the URL created for the CA server in Route53. Add 7054 as the port number).
  • Enter the Enrollment ID and Enrollment Secret of the registrar of the CA server.
Peers
  • Select the organization that the peer will be associated with. You’ll require at least 1 available organization to add peer.
  • Enter the name of the peer (For AWS: Enter the peer endpoint without the port number).
  • Enter the request URL of the peer (Enter the URL created for the peer in Route53. Add 7051 as the port number).
  • Enter the event URL of the peer (Enter the URL created for the peer in Route53. Add 7053 as the port number).

Add Ethereum Network Managed Outside of Xooa

Configure an Ethereum client and a wallet, if not already available with you, to get started on Ethereum network:

Using Ethereum Client: You can run Geth to start your own node or use Infura.io which provides instant access to Ethereum.

Creating a wallet: Some of the popular wallets you can choose are: Mist or MetaMask to get an account on the Ethereum network.

  • Select Ethereum as DLT.
  • Provide a name for the network to identify on Xooa.

Add MainNet or TestNet

  • URL: Use URL from Geth node or provided by Infura.
  • WS URL: Use WS URL from Geth node or provided by Infura.
  • Funding Account address: Use Wallet Address of the account created on a wallet.
  • Funding Account Private Key: Use Private Key of the account created on a wallet. Your Ethereum wallet will hold your ether. Xooa will use the ether from your wallet, which will be required to run the smart contract.

Add other Ethereum Networks

You can add other ethereum networks to Xooa as well. It can be either a public or a private network.

URL

Enter the GRPC URL of the Ethereum Network to be added to Xooa. You may specify the URL of any private network.

WS URL

Enter the Web Socket URL of the Ethereum Network node that Xooa will interact with.

Funding Account address

Address of the funding account for ether (gas). This account will be used to collect ether for deploying apps and running smart contracts.

Funding Account PrivateKey

PrivateKey of the funding account. This is required to debit the ether from the funding account for app deployment and running the smart contracts.

Actions

Import Xooa Exported Network

Xooa offers an easy and simple approach to import networks from popular cloud providers or networks exported from Xooa itself.

Export

Exporting a network allows you to export the configuration of the whole network including orderers, organizations, CA servers, and peers in a JSON format. The exported file may be edited or shared with other Xooa users.

Clone

Cloning a network allows you to make a replica of a network. You can perform all the actions on a cloned network similar to the original network.

Invite

You can invite users to your network using their email ID. This will share your network with them and allow them to deploy apps on it. However, they won’t be able to make any changes to the network itself.

Ledger

Ledger allows you to browse activity on your Xooa ledger, custom smart contract ledger, and shared ledgers.

You can:

  • Get an overview of activity
  • View and search transactions and blocks
  • View block signatures
  • Dashboard: Overview of current and recent activity on the ledger.
  • Blocks: Details about blocks generated in the ledger.
  • Transactions: Details of transactions.

screenshot

Last updated: July 20, 2020