Skip to content

Latest commit

 

History

History
394 lines (245 loc) · 36.8 KB

README.md

File metadata and controls

394 lines (245 loc) · 36.8 KB

FAQ

General questions about Echo’s Network

What is Echo?

Echo is a Layer-2 overlay network that integrates with existing blockchains to provide interoperability and new advanced scripting features for crypto assets. Similar to how the internet is built in different communication layers and protocols, Echo creates an entirely new layer of communication enabling high-speed assets transfers and runs new types of decentralized applications or "smart contracts" to interact with existing cryptocurrencies like Bitcoin and Ethereum. Bitcoin and Ethereum are the most used, most valuable, and most liquid cryptocurrency. Rather than competing with them as a store of value or currency, Echo integrates with Bitcoin and Ethereum to enable new types of complex applications.

Which blockchains does Echo work with?

Currently, Echo interoperates with Bitcoin, Ethereum, and Ethereum assets such as ERC-20 tokens. In the future, Echo can connect to and support various Layer-1 blockchains.

What is Layer 2 and why is Echo different from alternative solutions?

Layer 2 is used to describe projects and protocols that build on the foundation of existing blockchains to provide new functionalities and transaction logic mechanisms. Alternative examples include the Lightning Network for Bitcoin and Plasma for Ethereum. While many popular Layer-2 solutions such asLightning focus on off-chain transactions or transfers using a singular asset, Echo links multiple parentchains to enable all functions to harmoniously interoperate on one execution layer.

What are the utilities of this network?

Modular Interoperability | Echo enables Bitcoin, Ethereum, and established ERC-20 tokens to securely integrate into the network, leveraging prebuilt Apps, Decentralized exchanges and innovative solutions.

Upgraded Asset Performance | Echo provides network Sidechains and token migrators higher throughput and reduced transaction fees fostering a better environment for product feasibility.

Sophisticated Permissioning | Echo’s flexible smart contract permissions model allows developers to deploy custom frameworks within the ecosystem.

Parallel Architecture | Echo implements the Ethereum Virtual Machine (EVM) and supports smart contracts compiled in Solidity natively. This virtually makes Bitcoin and other asset migrators compatible with most utilities developed on Ethereum.

Supersonic Consensus | The network consensus maintains a 3 second confirmation time. The mechanism uses an Algorand inspired verifiable random function (VRF) to randomly select a pool of block producers and verifiers prioritizing the highest stakers. Hence Proof of Weighted Randomness PoWR.

Procedural Decentralization | Echo sustains decentralization through an efficient mechanism that tracks participation rate and dynamically adjusts block creation reward to incentivizes node diversity.

How do end-users benefit from Echo?

Echo enables a new layer of communication featuring high-speed assets transfers supporting decentralized applications and smart contracts that supports both Bitcoin and Ethereum.

The key benefits of Echo are as follows:

  • Echo's blockchain provides low-cost computational resources with higher throughput than its predecessors.

  • Echo's dual Bitcoin and Ethereum sidechains enables the interoperability of the two networks to expand on the decentralized finance(Defi) ecosystem’s innovative feasibility.

  • Echo is designed for scaling an ever-growing decentralized economy where users are independent payment processors with confirmation finality met by distributed consensus. Every Echo node is rewarded in the dynamic decision-making process proportional to the amount of cryptocurrency it holds.

  • Echo supports Solidity & EthereumVM allowing for effortless migration and deployment of decentralized applications, lowering the barrier towards optimizing services for efficiency.

  • Echo has a high resistance to blockchain forks and reorganizations, and strength to any malicious actions by any network actors, including failure to propagate messages and sending contradictory messages for network security.

How does Bitcoin and Ethereum interexchange to eBTC and eETH?

Echo implements a 2-way pegged sidechain ("bridge") that allows users to deposit and withdraw Bitcoin and Ethereum for applications on the Echo network. Echo's sidechains work through a 2-way peg to the native blockchain. For example, for Bitcoin, this means that BTC is deposited into a specialized multisig address and a corresponding amount of Echo BTC, or eBTC, is cryptographically issued on the Echo blockchain to the user who initiated the deposit. The new eBTC can be used to interact with a smart contract, traded on a decentralized exchange, or transferred to another user. When the eBTC needs to be converted back to BTC, it can be locked into a contract and the corresponding amount of BTC will be released on the Bitcoin parent chain. This proof of possession protocol ensures that the same BTC cannot be valid on both blockchains at the same time. The same processing corresponds for Ethereum, and the eETH asset

Does Echo have a token?

Echo supports a wide range of assets and tokens, including native assets, sidechain assets, and contract-controlled tokens. Echo has a core asset, the ECHO token, which is used for the security and governance mechanism of the consensus algorithm. ECHO tokens are also used as a type of “gas” fee currency.

Who controls Echo? How can I get more information to participate?

Echo is developed by Pixelplex, a leading international blockchain development firm. Since 2013, Pixelplex has been developing smart contract protocols including Bitshares, Qtum, and Vechain. After building 50 different projects on different protocols including Bitcoin, Ethereum, Bitshares, Qtum and EOS, the Pixelplex team created Echo to enable deeper interoperability between these platforms. Echo is led by by Alex Dulub, the founder of PixelPlex and Tyler Evans, the co-founder of BTC. Echo Network is controled by Echo Committee members. Members of the committee is carefully selected. Since network development depends on the actions of the committee, all committee members should be interested in the successful development of the sidechain in particular and the project in general. One of the main factors here is the need for all committee members to keep a certain amount of Echo tokens staked in the system. Each active committee member must maintain the Echo blockchain and the Bitcoin/Ethereum blockchains (full node) in active and synchronized state. This means that the node of each active committee member oversees the main chain network and checks blocks for transactions that are affecting the sidechain. The committee members are not only responsible for ensuring the stable operation of the sidechain mechanism, but also have to sustain an up-to-date status of the committee itself. It is the committee members themselves who decide which of the participants should be added to the committee, or who should be excluded from it using Echo blockchain special operations. You may also participate in Echo Network as Committee member, Producer or Verifier by trying the Echo wallet, joining the network with running your own Echo node, contributing to our open source repositories, or by building your first application using Echo according to "How to" tutorial. The full list of current Committee members you can see on the Echo Explorer portal.

Is Echo decentralized? How can I get more information to participate?

Similar to existing blockchain protocols, the Echo Mainnet is a globally permissionless decentralized operation. We rely on you, the public to diversify and validate the network by operating Echo nodes and preserving our security. Anyone can become an Echo validator or block producer through our lightweight client. We urge anyone with extra computation to spare, from Raspberry Pi's to sophisticated Homelabs, to aid in securing and distributing Echo’s network.

Echo’s sidechains uses a dynamic, open committee rather than a fixed (private/permissioned) federation of public parties to secure the sidechain confirmations. These committee members actively validate the integration of new participants and exclusions utilizing Echo's governance functions.

The full list of current Committee members and registration applications are made public on the Echo Explorer portal.

Is there a set date for Echo and it’s sidechains to go live?

Today, the Echo network is running on a stable test network ("testnet") that has been active for 6 months. The Echo mainnet will launch October 2020.

Do I need ECHOs to use the Echo Network?

No, you can download the Echo wallet and begin sending and receiving other assets without requiring any ECHO. Transaction fees can be paid in many different currencies and are converted into ECHO by the protocol’s underlying fee pools. Additionally, decentralized applications in Echo can pay for their own execution, so that users aren’t required to individually pay transaction fees.

What is staking and how do I start using it?

Staking means you contribute to transactions validation before they are added to a block. Thus, you participate in the consensus mechanism. Any Echo account holding a minimum-required balance of tokens can do staking if it runs an echo_node with an authorized account attached to it.

What is ‘Echo delegate’ and how to become one?

Your account can delegate another account to send messages on your behalf. This consensus algorithm is called ‘Delegated Proof-of-Stake’. Under it, you delegate an authorised node to send messages for you and get your share of the reward for it. You can view this delegate’s ID in the object of your account. By default, your delegate is the account that registered you, but you can change this delegate for another one.

How to lock your Echo funds to participate in staking?

To increase your chances to get a reward, you have to lock (freeze) your funds in the system for a certain period of time. The more you lock and the longer is this period, the bigger are your chances to participate in the process.

How to register a token in the Echo network?

First, you have to create an ERC20 token on the Ethereum blockchain. Then, you can register this token in the Echo network. For it, call the method register_erc20_token. For this purpose you should specify the account that will be the owner of the token, the address of the contract in Ethereum, the name of the token in Echo, which token will have an abbreviated name in Echo and precision. That to check the registered token, please, use the following methods get_erc20_token and check_erc20_token.

How Echo's block rewards work?

When valid block occurs in Echo chain, producer and verifiers of previous block will obtain a block reward.

Block rewards consist of:

  1. Emission per block.
  2. Fee of all transactions in block. May be in ECHO, EBTC or EETH assets also.
  3. Incentives.

Certain percentage of block reward paid to producer of block. Remaining part of reward paid to verifiers of block reward in equal parts.

Economy parameters economy_config stored in global_property_object.chain_parameters. To get global_property_object call the method get_global_properties.

Fields of economy_config:

  1. block_emission_amount is emission per block.
  2. block_producer_reward_ratio is producer part of rewards in percentage.
  3. blocks_in_interval is target amount of blocks from network maintenance to next one.
  4. pool_divider is just divider total amount of rewards in pool.

Incentives increase if some blocks in Echo or some verifiers of block was missed. Network calculate every block how many blocks was missed from the last block and collected rewards of this blocks in rewards pool. After that network calculate incentives according to this formula: incentive = total_rewards_in_pool / blocks_in_interval / pool_divider. This value of incentives stores in incentives_object and adds to next block reward. To get incentives_object call method get_current_incentives_info.

Bitcoin and Ethereum Sidechains

What is a sidechain?

A sidechain is a method of representing an asset (such as Bitcoin) from it's native blockchain onto a new blockchain infrastructure. A sidechain is typically created through a 2-way peg, where some assets are locked on the original chain before the corresponding assets are created on the destination chain. Examples of other sidechains include Liquid and RSK for Bitcoin and the POA and OMG Networks for Ethereum.

How does Echo’s sidechains work?

Echo's sidechains work through a 2-way peg to the native blockchain. For Bitcoin, this means that BTC is deposited into a multisignature address and a corresponding amount of Echo BTC, or eBTC, is minted on the Echo blockchain to the user who initiated the deposit. The new eBTC can be used to interact with a smart contract, traded on an exchange, or transferred to another user. When the eBTC needs to be converted back to BTC, it will be broadcasted to the network and the corresponding amount of BTC will be released on the bitcoin core blockchain. The protocol ensures that the same BTC cannot be valid on both blockchains at the same time.

Read further into the sidechain mechanism here: technologies/sidechains

Is Echo compatible with Bitcoin?

Yes, Echo supports BTC through a federated, pegged sidechain.

Is Echo compatible with Ethereum?

Yes, Echo currently supports ETH and it's corresponding Echo asset - eETH.

Is Echo compatible with ERC-20 tokens?

Yes. Echo supports all ERC-20 standard Ethereum assets and allows them to be transferred on and off Echo through the Ethereum sidechain.

How does the Bitcoin and Ethereum sidechains work?

Echo Bitcoin sidechain allows Echo account owners to exchange their BTC with the corresponding asset in the Echo network (eBTC). User operations on the Echo chain and transactions on the Bitcoin chain trigger the processes inside the sidechain which result in various Echo operations and Bitcoin transactions signed and sent by the committee members. Echo Ethereum sidechain allows Echo accounts owners to exchange their Ether and ERC20 tokens with the corresponding eETH asset or tokens on Echo network. A special smart contract is deployed into the Ethereum network by committee members which controls the deposited funds and tokens and provides an interface to manage them. The Ethereum sidechain tracks the events emitted by this contract and performs corresponding operations on the Echo side after the block where the transaction with the emitting call is located and confirmed on the Ethereum network. In order to transfer ERC20 tokens from and to the Echo chain, ERC20 tokens should be registered in Echo network. Registration of the Ethereum ERC20 token deploys an ERC20 smart contract in Echo network and informs the sidechain to listen to the events of the connected ERC20 token on the Ethereum side. When a token is transferred to a deposit address on the Ethereum chain, a corresponding amount of related tokens on the Echo side will be transferred to the user’s account.

Why are these sidechains federated? What are the Echo benefits?

Bitcoin and Ethereum are the most popular and secured sidechains backed by fiat currencies. They have their own pros and cons which are increased and covered for users by Echo Networks. Bitcoin can be implemented in an environment where participants absolutely do not trust each other, anyone can join the network, as it is a permissionless blockchain, but at the same time BTC has high costs of computing resources, low transaction speed (up to 10 min), whereas, for comparison, Echo Network has a low cost of computing resources, high transaction speed (up to 3 sec), and a fixed inflation value at 10% per annum. Despite the fact that one of the main functional blocks of Echo is implemented on the basis of Ethereum (EVM) which not need complicated and unnecessary calculations and has high performance, the projects have significant differences. First of all, there is a consensus. The Echo consensus (EchoRand) has a number of differences from classic PoW or PoS, the purpose of consensus is to minimize the entry threshold for participants in this consensus. EchoRand does not require significant capacity or frozen large sums in order to be a member of the consensus. The result of this approach is a high level of decentralization of the network and at the same time low fees. Another feature of Echo that distinguishes it from Ethereum is the Dual Payment Layer mechanism. The "classic" ERC20 token is a unique solution for a large number of tasks. However, this approach has a serious drawback - the transfer of tokens requires an additional payment in Ethereum, and, accordingly, the presence of only one token in the user does not allow him to use it. To solve this problem in Echo, there are two mechanisms - the ability to create your own assets with the ability to pay a commission in them, as well as the ability to create a Contract Fee Pool to pay a commission for using the contract by other users. Both of these mechanisms are described in more detail in the Whitepaper. In addition, do not forget about Sidechains - a mechanism for decentralized connection of third-party blockchains to the Echo network.

How does Echo blockchain compare with other close and similar blockchain projects such as EOS, Cosmos, Polkadot and Algorand?

EOS

Echo is not a computing power lease unlike EOS. The goal of the system is a high level of decentralization while maintaining high transaction processing speed. The role of the committee in Echo is more of an observer than an executive - the committee is empowered to maintain the network in the event that the number of active participants at the moment does not allow the network to operate independently.

Cosmos and Polkadot

Echo is not a third-party gateway for providing inter-blockchain connectivity, regardless of what it may be, while Cosmos and Polkadot blockchains only serve as third-party gateways. Echo is a full-fledged blockchain with its own consensus, virtual machine and assets. Unlike direct gateways between blockchains, Echo provides the ability to use blockchain connectivity in order to implement business logic at the junction of different consensus and cryptocurrencies, and not on the side of one of them.

Algorand

When comparing Algorand and Echo, it is worth assuming a comparison of the consensus mechanisms (Algorand and EchoRand), since the rest of the functional block is very different. EchoRand is based on Algorand, but has a number of additions and changes to make the network more resilient to the decline in active network members. In particular, the key difference is the ability to delegate participation in the consensus, the participation of the committee in the formation of the block, as well as the optimization of network interaction between nodes.

How does Echo compare with other projects such as Rootstock, Liquid and Lightning Network?

The purpose of the Rootstock (RSK) sidechain is to provide the ability to use smart contracts for the Bitcoin network via a 2-way peg as a linking mechanism between the two chains. RSK has a different consensus mechanism from Echo - merge-mining, which makes it possible to maintain the operation of the network through the use of capacities when mining Bitcoin.

Liquid as a second layer for the Bitcoin network enables fast yet secure Bitcoin transfers. Apart from a different consensus, the fundamental difference between these projects and Echo is the visibility that the sidechain provides to the connected blockchain.

Echo is suitable for higher scaled payments in volume and frequency, and expanding the fiscal logic and interoperability via smart contracts for both Bitcoin and Ethereum.

How can Echo's key performance metrics compare with other blockchains?

Transactions per second (TPS)

Echo - 1000.00

Bitcoin - 3.81

Ethereun - 13.39

Minimum time between blocks

Echo - 5 s

Bitcoin - 608 s

Ethereun - 13 s

Maximum blocks per day

Echo - 17 280

Bitcoin - 142

Ethereun - 6 529

Can more eBTC and eETH be issued than there are BTC and ETH on the network?

No, More or less eBTC and eETH cannot be issued on the Echo network than BTC and ETH on the network, their amount doesn't change.

What happens to held assets if Echo’s Network stops functioning?

In case all Echo's Network participants stop their nodes and do not participate in the formation of blocks, the EchoRand consensus will continue to work as long as the Committee members are active. The Echo Failover mechanism implies the possibility of delegating the release of blocks to the accounts of committee members at the very least.

Technical Address

How does Echo’s PoWR consensus mechanism work?

The Proof of Weighted Randomness (PoWR) is a Byzantine agreement protocol, where a small committee of block producers or block validators are chosen randomly from the entire set of network actors. Verifiable random functions (VRFs) are leveraged to select block producers and block validators, enabling consensus to be achieved quickly without a requirement for every node to independently execute all computation, lowering the resources required for each validating node. The likelihood of being randomly selected for the committee is proportional to a user’s balance of tokens. This committee exists only for a single block, and a new committee is randomly chosen for each new block of transactions. The network remains secure as long as at least 33% of tokens are held by honest actors. The major goal for the EchoRand consensus mechanism is to reduce the amount of explicit synchronization needed for reaching consensus in a distributed ledger. EchoRand allows for a greater degree of decentralization through the involvement of all users in the consensus process, produces trust through verifiable randomness and delivers performance by limiting the proportion of users required for consensus in each round. EchoRand consists of three main steps:

  • Cryptographic Sortition
  • Block Generation
  • Best Block Voting and Application EchoRand also introduces a novel incentive and delegation scheme to increase network security. See more about Echo PoWR Consensus in Whitepaper link.

How is EchoRand different from DPoS blockchains?

Unlike traditional delegated proof of stake (DPoS) blockchains, there is no superset of elected or delegated "supernodes" that produce and validate each block. Instead, every node in the network participates in block production and verification when chosen randomly, according to it's account balance.

How does Echo address the "nothing at stake" problem?

Because EchoRand selects only a small subset of nodes to verify each block, those nodes must reach byzantine agreement about the validity of the block. That means that it is not possible for nodes to "stake" for different competing blocks simultaneously, mitigating the "nothing at stake" scenario. If the block verifiers don't reach byzantine agreement or general consensus about which block to add, no block is appended to the chain.

What languages does/will Echo support?

Echo compatible with the following programming languages: Ada, C/C++, D, Eiffel, Go, Haskell, Pascal, Python, Rust, Solidity, and more.

How many transactions per second will the Echo Network withstand?

1000+ TPS.

What is the current block size?

A 1mb block size limit is currently implemented, which allows for approximately 10,000 transactions per block.

What are the requirements to run an Echo node?

The Echo node software can be run on any consumer grade hardware, including a Raspberry Pi. Current minimum resource requirements are 1+ GHz CPU, 1 GB RAM and 10 GB of storage, as well as a 5mbps internet connection. View instructions for running an Echo node here.

What is the transaction confirmation time?

5 sec.

Network Security

How is the Echo blockchain secured?

Echo uses a dynamic, open committee rather than a fixed (private/permissioned) federation of known companies to secure the sidechain. Because of this, Echo improves the trust model and security of the Bitcoin and Ethereum bridge.

Like many byzantine fault tolerant (BFT) consensus algorithms, Echo requires an honest majority of 2/3 + 1 to reach consensus and confirm a given block. If that consensus is not met, an empty block is added to the chain and a new set of block producers and verifiers are chosen for the next block. Rather than an attacker with 51% of hash power being able to disrupt or cause a reorganization as in proof of work blockchains, an attacker would need to acquire a 67% of the total ECHO balance, and the probability of this case is extremely low. The security of the Echo Sidechain with respect to the double waste of funds (on the main chain side or the sidechain side) point is based on two aspects:

  1. To avoid possible main chain forks all blocks should be processed with reasonable lag, 12 blocks for the Bitcoin chain and 20 blocks for the Ethereum chain. Hereinafter we will refer to the transaction as confirmed in the main chain if it has received the above mentioned number of confirmations in the chain.

  2. From the Echo side, this security is guaranteed by EchoRand, which reduces the probability of network forks to an extremely low level.

How does the blockchain secure pegged sidechain assets and mitigate exploitation?

At any time, you can independently verify that the amount of a sidechain asset like eBTC or eETH matches the amount of secured on the Bitcoin and Ethereum chains. The loss of access to funds (on the main chain side or the sidechain side) situation is covered with the ability to manually create transactions and transfer funds out of the address/account controlled by the committee and 24 hours delay in processing the deposits/withdrawals. In addition to that sidechain, it includes decreasing after some predefined time the number of signatures required to withdraw funds and ability to cancel the deposit transaction during 24 hours for the Bitcoin sidechain.

How does the blockchain prevent double spend attacks?

The security of the Echo Sidechain with respect to double spending (on the main chain side or the sidechain side) point is mitigated by two functions:

  1. To avoid possible main chain forks all blocks should be processed with reasonable lag, 12 blocks for the Bitcoin chain and 20 blocks for the Ethereum chain. Hereinafter we will refer to the transaction as confirmed in the main chain if it has received the above mentioned number of confirmations in the chain.

  2. From the Echo side, this security is guaranteed by EchoRand, which reduces the probability of network forks to an extremely low level.

How does the blockchain prevent loss of access to funds?

The loss of access to funds (on the main chain side or the sidechain side) situation is covered with the ability to manually create transactions and transfer funds out of the address/account controlled by the committee and 24 hours delay in processing the deposits/withdrawals. In addition to that sidechain, it includes decreasing after some predefined time the number of signatures required to withdraw funds and ability to cancel the deposit transaction during 24 hours for the Bitcoin sidechain.

How many confirmations are required for consensus? Why are the lower requirements enough?

Echo requires an honest majority of 2/3 + 1 to reach consensus and confirm a given block. If that consensus is not met, an empty block is added to the chain and a new set of block producers and verifiers are chosen for the next block.

The likelihood of being randomly selected for the committee is proportional to a user’s balance of tokens. This committee exists only for a single block, and a new committee is randomly chosen for each new block of transactions. The network remains secure as long as at least 33% of tokens are held by honest actors.

What are Echo’s plans to diversify nodes to avoid network centralization?

Echo Network provides an opportunity to participate in Consensus for almost any account, and due to the delegation mechanism, everyone can recruit additional accounts for themselves. Accordingly, the incentive to launch nodes is the opportunity to earn more.

Also, Echo's Token Economy implies itself that if blocks are skipped due to the lack of a transaction or an insufficient number of verifiers, the "unplayed" reward will be distributed over time, so the maximum profit can be potentially obtained by staying in Echo Network for a long time.

What are the identifiable differences between on-chain and sidechain wallet addresses?

Sidechain addresses are addresses on the network from which the sidechain operates. Echo uses an account model with the additional possibility to generate an alias for receiving funds to the address.

Agenda for Adoption

What type of innovations will Echo projects add to the industry?

Echo aims to accelerate our decentralized economy by making digitized commercial services and blockchain web payments more efficient. In addition to providing Bitcoin smart contract functionalities and Ethereum with scalability, the primary applications of the protocol will include:

  • Stablecoins
  • Derivatives
  • Collateralized Loans
  • Asset Tokenization
  • Decentralized Identities
  • And entirely new innovations that we are excited to see in the future.

What type of relationship will Echo have with other blockchains?

Echo’s mission is to ensure individuals worldwide the freedom to self-organize, communicate, and transact freely. Echo does this by building an overlay network that enables existing cryptocurrencies to interact with user-friendly decentralized applications.

Echo's overlay network is the infrastructure and developer platform necessary to create and deploy high-performing and user-friendly decentralized applications that build on top of leading protocols. Echo supports honest partnerships in the blockchain industry and aims to compliment parentchains.

Can the average non-technical person get involved in any way?

Yes, everybody can download the Echo Desktop Wallet or Echo mobile wallet today to begin sending and receiving assets, deploying and interacting with decentralized applications, and participating in Echo Network validation without requiring any ECHO balance.

How can people stay up to date on Echo?

People may stay up to date on Echo by joining the Echo community discourse or following Echo in social media.

Who's building Echo?

Echo is the product of a global team of engineers, researchers, designers and crypto lovers. Echo was developed by Pixelplex, a leading international blockchain development firm. Since 2013, Pixelplex has been developing blockchain technology from protocols to multicurrency wallets to decentralized applications. After building over 50 different projects on different protocols including Bitcoin, Ethereum, Bitshares, Qtum and EOS, the Pixelplex team began researching the opportunities for integration between the many protocols and the best architectural features of each. Learn more about the Echo team here.