An introduction into the Exzo Network Software Specifications that are the infrastructure of the blockchain ecosystem.
The document defines the understanding of the general objectives for the creation of the project “Exzo Network - innovative blockchain platform - (hereinafter - the software product, System, Platform, “Exzo Network”). The document sets out the main requirements for the software product, defines the scope of this product, the purpose of implementation, restrictions and strategic decisions on project implementation, agreed between the Customer and the Developer. The Software Requirement Specification document is the basis for the software product development process.
This document was created and should be used within the “ExzoCoin” project.
All persons mentioned in this document, to some extent, participate in the project or are interested in its implementation.
This document should indicate only the main functions and features of the product, and only those that have been agreed upon by all stakeholders. Functions and features that do not have the status of accepted but are only developments for the future - can not be included in this document without the appropriate designations.
SRS - Software Requirements Specification - this document.
UI - User Interface.
AWS - Amazon Web Services cloud environment.
“ExzoCoin” project includes two main components:
1.4.1. A web-based application that will provide a platform for decentralized cross-chain conversion of digital assets based on 1INCH API. This application will have the similar design and functionality as the 1INCH app (https://app.1inch.io/). The process of interacting with the application could be described in the following simplified steps:
188.8.131.52. Navigate to the swap application from ExzoCoin website
184.108.40.206. Connect wallet with Metamask or WalletConnect
220.127.116.11. Buy cryptocurrency via MoonPay
18.104.22.168. Use bridges to move coins cross-chain
22.214.171.124. Select the chain
126.96.36.199. Set the direction of exchange
188.8.131.52. View the details of the deal (rate, fees)
184.108.40.206. Set additional parameters (gas limit, slippage)
220.127.116.11. Confirm the deal
1.4.2. A blockchain network based on Fantom blockchain fork that will provide an ecosystem for creating customized blockchains, deploying smart contracts, with full support of Solidity smart contracts. This solution will allow users to perform the following use cases:
18.104.22.168. Use Exzo Network official wallet
22.214.171.124. Use Exzo Network native coin ExzoCoin
126.96.36.199. Connect with Metamask to the testnet and mainnet
188.8.131.52. Run a validator node
184.108.40.206. Run a read-only node
220.127.116.11. Stake native ExzoCoin and get a reward
18.104.22.168. Deploy a smart contract written in Solidity
22.214.171.124. Create a fixed-cap asset
126.96.36.199. Create a variable-cap asset
188.8.131.52. Create a local test network
184.108.40.206. Explore the network for transactions and other on-chain data
Fig.1. ExzoSwap High-Level Architecture
1.5.1. ExzoSwap FE App is a standalone React application. This application is built into several js and CSS files and is meant to be served from the s3 bucket using cloud front.
1.5.2. ExzoSwap App is integrated with 1INCH API through a secured VPN connection.
1.5.3. A user interacts with ExzoSwap App from their web browser using Metamask extension (or Wallet Connect integration) for making transactions.
Fig.2. Exzo Network High-Level Architecture
1.6.1. A Validator node consists of three components: state machine, consensus and networking.
1.6.2. An application can communicate to a node via CLI. Opera network supports auditing by permitting participants to join in post-validation mode.
1.6.3. An observer (or Monitor) node consists of a state machine, post validation component and networking component.
1.6.4. The network supports three types of participants: users, validators and monitors.
1.6.5. Each validating node can create new event blocks. Generation of a new event block indicates that the new block and all of its ancestors have been validated by the creator node of that new event block.