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, the 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 run on Xooa servers. However, by extending it, you can make the network distributed. Centralized databases are easier to experiment with and are 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 gain 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. For observing peers, this will allow all parties to keep in-sync with the ledger, while for endorsing peers, this will allow them to take part in endorsement.
  • Endorsement policies: Extending the network with an endorsing 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 of 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 the 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 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 that the peer is associated with.
  • Go to the Nodes tab.
  • Scroll down to Peers.
  • Find the observing peer that you want to convert to an endorsing peer.
  • Click on 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 the failed test feels like a mistake or if 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 and 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 that 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 importing a 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 importing a Hyperledger Fabric network deployed on Oracle.

Step 1
  • Go to the Oracle Blockchain Platform Console.
  • Click on the 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 the CA Servers.
Step 4
  • Provide a name for the network to identify on Xooa.
  • Provide the Channel name used while configuring the network on Oracle.
  • Click Save.

IBM Blockchain Network

A simple guide to importing a Hyperledger Fabric network deployed on IBM.

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

Prepare an AWS Managed Blockchain for integration with Xooa

Guide to importing a 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 the TLS certificates
  • Obtain the 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 orderers, CAs, 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 the DLT.
  • Provide the 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 transactions.
CA Servers
  • Select the organization that the CA server is associated with. You’ll need 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 need at least 1 available organization to add a 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 importing networks from popular cloud providers or networks exported from Xooa itself.

Export

Exporting a network allows you to export the configuration of the entire network including the 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 that you can on 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. They won’t, however, 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: August 26, 2020