Ergo was created in response to stagnation in the blockchain area. It implements various technical and economic ready-to-use ideas that add value but do not reduce the known advantages of blockchain systems. Ergo’s primary focus is to provide an efficient and secure way to implement financial contracts, which are the most widely used application of blockchain technology. It is created to provide an easy way to use financial contracts by ordinary people, that should be able to use them in a decentralized manner without any trust. Unlike the traditional financial system, no bailouts, blacklists or other forms of discrimination should be possible on the core level of Ergo protocol. Ergo protocol is designed to be survivable in the long-term, making it useful to implement contracts for a period of a person’s life and also enabling it to be a good store of value. Read teaser for details.
Consensus protocol of Ergo — Autolykos — is based on the well-known Proof-of-Work (“PoW”) consensus algorithm. PoW was chosen for several reasons including that PoW protocols are widely studied, have high security guarantees, and are friendly to light clients. However, Autolykos has several meaningful differences from Bitcoin's PoW. First, it is memory-hard reducing the disparity between specialized hardware (ASICs) and commodity GPUs, allowing ordinary people to participate in mining to secure the network and receive the reward. Second, Autolykos is the first production implementation of pool-resistant mining, which forces users to perform solo mining, thus keeping the network decentralized and without mining pools.
It is almost impossible to use existing cryptocurrencies without the help of trusted third-parties. To receive even a small amount of coins in a trustless fashion, a client must download and process gigabytes of data to synchronize with the network, which may take several weeks even on high-end hardware, not to mention mobile devices. It is, therefore, no surprise that most users prefer to use trusted solutions for wallets, exchanges, block explorers and so on.
Ergo was designed to be maximally user-friendly in the sense of decentralization. One of the important properties of PoW is that it enables verification of the work done without downloading the full chain. Ergo blocks support NiPoPoW proofs, allowing light clients to synchronize with the network by downloading less than a megabyte of data. Also, Ergo uses authenticated state, and for any transaction included, a client may download proof of its correctness. Thus, regardless of the blockchain size, a regular user with a smart-phone can join the network and start using Ergo with the same security guarantees as a full node.
To survive in the long-term, Ergo prefers well-tested solutions. If there isn't already a well-tested solution for some problem, we perform our own research, and the number of peer-reviewed papers from the Ergo development team is already extensive.
A resilient network should adapt to changing environment without the intervention of trusted parties (such as a ``core developer`` team). Ergo's on-chain miner voting protocol allows gradual changes in a large number of parameters including maximum block size, storage fee factor and more.
For more fundamental changes Ergo is going to follow a soft-forkability approach --- if an overwhelming majority of the network accepts a new feature, it is activated, however, old nodes which do not upgrade continue to operate normally and just skip over this feature validation. Thus disruptive hard forks should not be required in Ergo.
To achieve survivability, Ergo provides economic improvements in addition to the technical ones, most central of which is a storage fee component which plays an important role for Ergo‘s stability: if an output remains in the state for 4 years without being moved, a miner may charge a small fee for every byte kept in the state. This idea is similar to regular cloud storage services, but it's application to blockchain systems has several significant consequences. First, Ergo mining will always be stable, unlike Bitcoin and other PoW currencies, in which mining may become unstable after the emission period. Second, state size growth becomes controllable and predictable reducing hardware requirements for Ergo miners. Third, by collecting storage fees from outdated boxes, miners return lost coins to circulation preventing a steady decrease of circulating supply due to lost keys. This also establishes a long‐term unique use case for Ergo’s native token (“Erg”) as the only token on the Ergo blockchain that can be used to pay for storage rent, despite the expected presence of a large number of non‐native tokens that may be issued on the Ergo blockchain in order to benefit from its strong security and decentralization qualities and Contractual Money functionality.
Ergo DApps and offchain protocols may be implemented in a truly decentralized way due to light clients, however, they also require a flexible and safe smart contract language. Ergo smart contracts are based on a Bitcoin-like UTXO model, where every output is protected by some script. If the scripting language is rich enough, it enables writing of Turing-complete contracts while avoiding ad-hoc solutions for program halting like gas in Ethereum. While having significantly more versatility than Bitcoin script, Ergo script also contains operations, that allow accurate estimation of script complexity before execution, which prevents various DoS attacks and the “halting” problem. However, this instructions set is still sufficient enough to write any possible program — ErgoScript has been proven to be Turing complete. The cryptographic part of Ergo script is based on sigma protocols and naturally supports threshold m- of-n signatures, ring signatures and more. Keeping all this in mind, we expect ErgoScript and Ergo’s design to make it uniquely useful as Contractual Money with countless applications possible.