What you should know about Cardano. Part 1
I will make a summary about the data and metrics of the Cardano blockchain, which you should know to understand the importance of this development in the crypto industry.
Cardano is a blockchain platform with too much content, I will only present in this article the most important ones for the community. The idea is to tell you what you need to know. To drive your vehicle you don’t need to understand all the automotive mechanics, just the basics. Developers need more information than this.
I will present the article sorted by subject, so you can understand it better.
Cardano was founded by Charles Hoskinson, who was also one of the co-founders of the Ethereum network. He is the CEO of IOHK, the developer company. Founded in 2015 by Charles Hoskinson and Jeremy Wood, IOHK is one of the world’s leading blockchain infrastructure research and engineering companies.
In addition, two other pillars, EMURGO and the Cardano Foundation, are part of building Cardano.
EMURGO develops, supports and incubates business opportunities and helps integrate companies into the blockchain system. It is essentially the for-profit arm of Cardano.
The Cardano Foundation is an independent body that oversees the advancement of Cardano and its ecosystem. As the legal custodian of the protocol and owner of the Cardano brand, the Foundation works to drive adoption and partnerships, grow the Cardano community globally, shape legislation and business rules. It has an ambassador program, made up of community members, who voluntarily spread the values of the ecosystem.
The name was chosen in honor of Gerolamo Cardano, (or Girolamo), who was an Italian Renaissance physician and mathematician, astrologer and a scholar of chance, (September 24, 1501 — September 21, 1576).
Augusta Ada King, Countess of Lovelace, known as Ada Lovelace (1815–1852), was an English mathematician and writer who wrote the first algorithm used in a computer, making her the first computer programmer. To honor her vision, the creators of Cardano decided to name the cryptocurrency “ADA,” its ₳ token, and “Lovelace” its smallest sub-unit, valued at ₳0.000001.
The Cardano blockchain started on 2017–09–28 at 21:44:51, and here you can see the genesis block.
The structure of the blockchain
From the outset, Cardano opted for a different approach to all the solutions and efforts it pursues. It takes a scientific approach to the fundamentals that guide its goals. Everything done at Cardano is based on these three design principles:
Scalability: number of transactions per second and network cost.
Interoperability: ability of one blockchain to interact with other blockchains
Sustainability: Treasury system to pay for future developments and growth.
Scalability is related to the design of two layers:
Cardano Settlement Layer (CSL): where the ledger is located with its balances, and is the layer where transactions are settled, and the Ouroboros consensus algorithm is executed.
Cardano Computation Layer (CCL): where the execution of smart contracts takes place.
The languages used to develop on the Cardano platform are Haskell and Plutus. Haskell is an old functional programming language, and Plutus is a new language developed by Cardano based on Haskell. The main advantage of having a functional programming paradigm is that each piece of code can be verified mathematically and this means that it is much more difficult to introduce errors when programming smart contracts.
The evolution of Cardano is determined by 5 eras where each one has a goal, Byron was the foundational era, Shelley the decentralization era, Goguen the smart contract era, Basho the scalability era and Voltaire the governance era. The eras develop over time, some of them in parallel. The beginning of each era is triggered by a programmed hard fork event, with the Hard Fork Combinator technology (IOHK invention). In this infographic of my authorship, I show you the times:
The blockchain divides its time into blocks, epochs and slots. Each epoch lasts 5 days, and includes 432,000 slots, (5 days x 24 hours x 60 minutes x 60 seconds). On average, one node is expected to be nominated every 20 seconds, for a total of 21,600 nominations per epoch. If randomly chosen slot leaders produce blocks, each block will be added to the chain. The remaining candidate blocks will be discarded.
Thus, approximately 21,600 blocks are created in each epoch, but due to the randomness implemented in the protocol more or fewer blocks may be created. At the time of writing this article, 6,119,920 have been created, with an average of 21,473 per epoch.
The consensus algorithm used in Cardano is called Ouroboros, and is a version of Cardano’s own Proof of Stake (PoS). A slot leader is randomly selected, proportionally to the number of tokens it owns (stake), to have the opportunity to create a new block.
The choice of slot leader is a lottery, where the community delegates in the stake pool increases the chances of being chosen.
Since there is no race to mine a block, there is no waste of energy or computational resources. In that sense, Ouroboros is a more efficient and economical protocol than the Bitcoin protocol, while maintaining all the security guarantees.
The protocol provides security, mathematically verifiable against attacks, since to hack the consensus and steal coins, it is necessary that 51% of the participation is in the hands of one or more dishonest participants who collude. This is why the selection of leaders to forge blocks is random. Today, for a Sybil attack (greater than 50% of circulating holdings) would require a minimum of ₳11,790,056,714 of staking holdings, on total staking of ₳23,117,758,263 (do the math at the USD rate).
This year 2021, the delegation has grown, and as of February it has sustained over 70% of the circulating currency, which is considered significant, since not all of the circulating currency is in the hands of the community to increase the validation flow, as part of it is in the Treasury. It is worth noting that it is not possible to have 100% of the circulating funds in delegation.
The distribution of the delegation can currently be considered healthy. There are 2,055 single stake pool operators with 21.84% of the consensus power, and 175 stake pools of operators with more than one stake pool. The fact to note is the concentration in 6 pools, which account for 28.73% of the validation power, Binance (BNP) + 1 Percent Pool (1PCT) + ADAlite (ADLT) + eTORO (ETORO) + Moonstake (MS) + New Girl.
The protocol continues to evolve in its various versions:
Then they will come:
The Ouroboros protocol configuration has calculation parameters from the minimum fixed cost to be registered by the stake pools, the pledge incidence, the size of the blocks, the maximum size for transactions, the deposit per staking key, etc. All of them can be modified to generate the desired changes.
All parameters are: nOpt, a0, minPoolCost, decentralisationParam, maxBlockBodySize, maxBlockHeaderSize, maxTxSize, tau, rho, poolDeposit, keyDeposit, minFeeB, minFeeA, minUTxOValue, extraEntropy, tag, eMax.
You can see them here, with their values:
The best known, because of their impact on the rewards, are:
- a0, which is a value that determines the amount of rewards granted per block signed according to the pledge guaranteed by each stake pool, and as it is currently very low, it does not generate much difference, and.
- k (described as nOpt) which indicates the desirable number of pools that can sign blocks at the same time, currently k=500. Thus, parameter k establishes the so-called saturation point, i.e. from how much staking in a pool the rewards start to decrease, and the more the saturation point is exceeded, the more they decrease. To obtain the saturation amount the circulating supply is divided by the parameter k, currently saturation = ₳32,982,237,587 / 500 = ~₳65,964,475.
Reward calculation algorithm.
These elements are defined as follows:
- R — total available rewards for this epoch
- a0 — pledge influence factor (can be between 0 and infinity)
- z0 — relative pool saturation size, i.e. 0.5% based on a number of desired pools (k=500)
- σ — stake delegated to the pool (including stake pledged by the owners and stake delegated by others)
- σ’ = min(σ, z0) — as σ, but capped at z0
- s — stake pledged by the owners
- s’ = min(s, z0) — as s, but capped at z0
The accounting system used in Cardano (as in Bitcoin and other blockchains) is Unspent Transaction Output.
With this method, instead of removing from the address only the amount of cryptocurrencies to be transferred, the total of that address is subtracted leaving it at zero, and the portion of money is transferred to the destination address and the balance is deposited in a new address created by the protocol for the holder who made the expenditure. This system avoids double spending.
For example, if you have 1000 ADAs in address #1 of your wallet and you want to spend 100 ADAs, the ledger (blockchain registry) will register the sending of the 100 ADAs to the destination address and the balance of the 900 ADAs will send them to a new address of your wallet, say #2, leaving #1 empty but susceptible to be used again, although it is not advisable because it unveils the entire transaction history.
The eUTXO model is an evolution of the original, it includes:
- Implementing a more powerful smart contract language than Bitcoin Script.
- Providing smart contract developers with an area within UTXOs to store the state of their smart contract protocols.
- Allow native first-class assets to be stored within UTXOs in addition to the base network asset.
How do transaction fees work?
Every time someone wants to transfer an amount of ADA, the network fee is calculated. For the transaction to be valid, a minimum fee must be included (although the sender is free to pay higher fees if they wish). All transaction fees are collected in a virtual fund and then distributed among the consensus participants.
Minimum fee. A transaction of 200 bytes in size (a fairly typical size) costs:
0.155381 ADA + 0.000043946 ADA/byte × 200 byte = 0.1641702 ADA.
The minimum fees for a transaction are calculated according to the formula: a + b × size.
- a: is a special constant, currently 0.155381 ADA;
- b: is a special constant, currently 0.000043946 ADA/byte;
- size: is the size of the transaction in bytes.
To define the values of parameters “a” and “b”, we consider:
- How much does a byte of computer memory cost?
- How many transactions are there on average per second?
- What is the average size of a transaction?
- How much does it cost to run a complete node?
Simple transactions, with low UTxO, typically have a weight between 0.03 and 0.10 KB. The weight increases with increasing UTxO, also with added metadata, or with NFT.
The protocol has maximum parameters per block, it supports up to 65,536 bytes per block, or 64 KB (1,024 bytes = KB), i.e. no more tx can be validated than this total weight in each one. Each tx cannot weigh more than 16,384 (16 KB). The header of each block has a maximum of 1,100 bytes (1.07 KB).
This is why the maximum weight of a transaction will be:
0.155381 ADA + 0.000043946 ADA/byte × 16,384 byte = ₳0.875392264.
The total stated supply is 45 billion ADAs that will be in circulation. It will never change, thus making ADA coins a precious resource because of their scarcity. Currently the circulating supply amounts to almost ₳32.9 billion.
Approximately 2.5 billion ADA were allocated to IOHK once the network was launched, another 2.1 billion to EMURGO, and 648 million were given to the Cardano Foundation.
Two issues are addressed with the coin circulator:
- The need to offer rewards to individuals who participate in the network, and
- Funding the treasury.
Participation rewards for delegators and stake pool operators come from transaction fees and monetary issuance.
The monetary expansion is the ρ value of 0.22% on the balance of reserves, and means that, as they get smaller and smaller, only half of the remaining reserves will be used every four to five years, resulting in a sort of halving as in Bitcoin. Twenty percent of the fund is sent to the treasury (τ), and the rest is used as vintage rewards.
This system is designed to ensure that the share of rewards drawn from reserves is high at the beginning, when the number of transactions is still relatively low. This incentivizes early users to move quickly to benefit from high initial rewards. Over time, as the number of transactions increases, the additional fees will compensate for the lower monetary issuance.
This mechanism also ensures that the rewards available are predictable and do not vary dramatically. The fixed percentage taken from the remaining reserves at each epoch ensures a smooth exponential decline.
The Voltaire era is Cardano governance. Treasury funding is aimed at the provision of funds to develop Cardano’s activities through the voting process.
Cardano’s treasury system is transparent, and is funded from:
- 20% of the rewards of each epoch,
- 20% of the monetary expansion of each epoch, and
The Treasury began funding with the Shelley era, epoch 208, on July 29, 2020, and to date totals ₳559,301,254 or USD1,230,462,758.
Currently in progress is the Catalyst project, which has started in September 2020, and 165 projects have already been funded out of 851 submitted, in the 4 FUNDs so far, with total 611,412 votes, (FUND1 is excluded because it was not open to the community).
Cardano Catalyst Announcements Telegram channel https://t.me/cardanocatalyst
In a future article I will write what you should know about staking.