Software

An introduction into the Ethereal Software Specifications that are the infrastructure of the blockchain ecosystem.

1.1. Purpose

The document defines the understanding of the general objectives for the creation of the project “Ethereal - innovative blockchain platform - (hereinafter - the software product, System, Platform, “Ethereal”). 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.

1.2. Scope

This document was created and should be used within the “Ethereal” 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.

1.3. Definitions and Acronyms

SRS - Software Requirements Specification - this document.UI - User Interface.AWS - Amazon Web Services cloud environment.

1.4. Overall Description

“Ethereal” 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:1.4.1.1. Navigate to the swap application from Ethereal website1.4.1.2. Connect wallet with Metamask or WalletConnect1.4.1.3. Buy cryptocurrency via MoonPay1.4.1.4. Use bridges to move coins cross-chain1.4.1.5. Select the chain1.4.1.6. Set the direction of exchange1.4.1.7. View the details of the deal (rate, fees)1.4.1.8. Set additional parameters (gas limit, slippage)1.4.1.9. Confirm the deal1.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:1.4.2.1. Use Ethereal official wallet1.4.2.2. UseEthereal native coin Ethereal1.4.2.3. Connect with Metamask to the testnet and mainnet1.4.2.4. Run a validator node1.4.2.5. Run a read-only node1.4.2.6. Stake native Ethereal and get a reward1.4.2.7. Deploy a smart contract written in Solidity1.4.2.8. Create a fixed-cap asset1.4.2.9. Create a variable-cap asset1.4.2.10. Create a local test network1.4.2.11. Explore the network for transactions and other on-chain data

1.5. Ethereal High-Level Solution Architecture

​Fig.1. Ethereal High-Level Architecture1.5.1. Ethereal 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. Ethereal App is integrated with 1INCH API through a secured VPN connection.1.5.3. A user interacts with Ethereal App from their web browser using Metamask extension (or Wallet Connect integration) for making transactions.

1.6. Ethereal High-Level Solution Architecture

​Fig.2. Ethereal High-Level Architecture1.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.1.6.6. The consensus mechanism is inherited from the Fantom’s Opera Network and described in the Lachesis Whitepaper (https://arxiv.org/pdf/2108.01900.pdf)