2022-08-05 18:13:58 UPDATED


Cardano is a blockchain platform for changemakers, innovators, and visionaries, with the tools and technologies required to create possibility for the many, as well as the few, and bring about positive global change.







What is Cardano ?

Cardano is a decentralized third-generation proof-of-stake blockchain platform and home to the ada cryptocurrency. It has been designed from the ground up by a team of top engineers and academic experts.

Cardano has a strong focus on sustainability, scalability, and transparency and is a fully open source project that aims to deliver an inclusive, fair, and resilient infrastructure for financial and social applications on a global scale. It is powered by Ouroboros, the ground-breaking proof-of-stake consensus protocol.

Cardano is an open source proof-of-stake blockchain project that began in 2015 to address existing blockchain challenges in the design and development of cryptocurrencies. It aims to provide a more balanced and sustainable ecosystem that better accounts for the needs of its users as well as other systems seeking integration.

The first generation of blockchains (like Bitcoin) offered decentralized ledgers for secure cryptocurrency transfer. However, such blockchains did not provide a functional environment for complex deal settlement and decentralized application (DApp) development. As blockchain technology matured, the second generation (like Ethereum) provided more enhanced solutions for writing and executing smart contracts, application development, and the creation of different token types. On the other hand, the second generation of blockchains often faces issues in terms of scalability.

Cardano is conceived as the third-generation blockchain as it combines the properties of the prior generations and evolves to meet all the arising needs of users. When comparing blockchain properties, many aspects should be considered. Thus, the best solution must ensure the highest security, scalability (transaction throughput, data scale, network bandwidth), and functionality (besides transaction processing, the blockchain should provide all means for business deal settlement). Moreover, it is important to ensure that blockchain technology is constantly developing in terms of sustainability and is interoperable with other blockchains and financial institutions.

To address these needs, Cardano focuses on such core concepts as:

  • Scalability — ensures that the Cardano ledger is capable of processing a large number of transactions without affecting network performance. Scalability also provides higher bandwidth capabilities to allow transactions to carry a significant amount of supportive data that can be easily managed within the network. For these needs, Cardano is implementing various techniques (like data compression for instance) and is working to introduce Hydra, which will enable multiple side chains functionality.
  • Interoperability — ensures the most multi-functional environment for financial, business, or commercial operations by enabling users to interact not only with one type of currency, but with multiple currencies across various blockchains. Moreover, interoperability with centralized banking entities is as important to grant legitimacy and convenience of use. Cardano is being developed to support cross-chain transfers, multiple token types, and commonly used smart contracts languages.
  • Sustainability — designing a proof-of-stake blockchain means it is vital to ensure that the system is self-sustainable. To drive growth and maturity in a truly decentralized manner, Cardano is built to allow the community to maintain its continuous development by participating, proposing, and implementing system improvements. To ensure sustainability, the treasury system is controlled by the community and is refilled constantly from potential sources such as newly-minted coins being held back as funding, a percentage of stake pool rewards, and transaction fees.

Cardano advantages

  • Academic research — formal methods, such as mathematical specifications, property-based tests, and proofs, are the best way to deliver high assurance software systems and give confidence to users for the management of digital funds. Cardano has been built using formal methods to achieve strong guarantees on the functional correctness of core components of the system. All of the research and technical specifications that underpin Cardano are publicly available, and all Cardano development activity is published online.
  • System design — Cardano is written in Haskell, a secure functional programming language that encourages building a system using pure functions, which leads to a design where components are conveniently testable in isolation. Furthermore, advanced features of Haskell enable us to employ a whole range of powerful methods for ensuring correctness of the code, such as basing the implementation on formal and executable specifications, extensive property-based testing, and running tests in simulation.
  • Security — Ouroboros (the Cardano proof-of-stake protocol) establishes rigorous security guarantees; it was delivered with several peer-reviewed papers presented in top-tier conferences and publications in the area of cybersecurity and cryptography.
  • Power consumption — Cardano is a proof-of-stake blockchain. In contrast to proof-of-work blockchains, Cardano requires much less energy and computational power. The Bitcoin network grows through computers doing ever-more-energy-intensive computations – proof of work – which is unsustainable in the long term. Cambridge University has an online tool that shows the computers powering Bitcoin already consume twice as much energy as Switzerland every year.
  • Seamless upgrades — traditionally, blockchains upgrade using hard forks. When conducting a hard fork, the current protocol would stop operating, new rules and changes would be implemented, and the chain would restart – with its previous history being erased. Cardano handles hard forks differently. Instead of implementing radical changes, the Cardano hard-fork combinator technology ensures a smooth transition to a new protocol while saving the history of the previous blocks and not causing any disruptions for end users.
  • Decentralization — Cardano is maintained by almost 3,000 distributed stake pools that are operated by the community. All blocks and transactions are validated by network participants without any reliance on a centralized authority.
  • Functional environment for business use cases — Cardano is establishing a foundation for global, decentralized finance to develop a range of DApps that can run using functional and domain-specific smart contracts, providing multi-asset tokens for any needs.

Cardano development themes

Cardano’s development journey has been split into five main themes focusing on such core functionalities as:

  • Byron — foundation establishment
  • Shelley — decentralization
  • Goguen — smart contracts
  • Basho — scalability
  • Voltaire — governance

Each theme is centered around a set of functionalities that are being delivered across multiple code releases. While these development streams are delivered sequentially, the work for each happens in parallel – with research, prototyping, and development often in progress all at once across the different stages. Let’s take a closer look at these development themes.


Byron set the foundation for Cardano development allowing users to buy and sell ada on a proof-of-stake blockchain network. Initially, the Cardano ledger was established as a federated network, where block production and transaction validation were maintained by Input Output Global (the company that develops Cardano technology) and Emurgo (the company that drives Cardano commercial adoption) stake pools. Byron saw the delivery of Daedalus and Yoroi wallets, and also provided users with a Block Explorer ‒ a tool specifically designed for browsing the blockchain.


The Shelley development theme introduced a decentralized ledger creating a completely new economic system, which drives the network’s growth and gradual optimization. Shelley evolved from Byron’s federated network maintenance, with more and more blocks being produced by the distributed stake pool operator community. This theme focuses on a number of critical steps that ensure enhanced user experience in terms of stake pool operation, delegation preferences, and incentives. As a proof-of-stake network, Cardano Shelley introduced the Incentivized Testnet (ITN) which proved that the blockchain can be sustainable in the long term by relying exclusively on community-managed pools.


Goguen development focuses on the establishment of a global, financial and multi-functional system for decentralized application (DApp) building, smart contract support, and custom token issuance. Goguen is a key building block to establish a versatile platform to build solutions around such application domains as supply chain, track and trace, finance, medical records, identity voting, property registration, P2P payments, and many others.


Basho will focus on Cardano’s optimization in terms of improving the scalability and interoperability of the network. Whereas other development stages focus on decentralization and new functionality, Basho is about improving the underlying performance of the Cardano network to better support growth and adoption for applications with high transaction volume.


Decentralized governance and decision making lie at the heart of Voltaire granting the Cardano community an ability to vote on network development updates, technical improvements, and project funding. For the Cardano network to become truly decentralized, it requires not only the distributed infrastructure introduced during Shelley but also the capacity to be maintained and improved over time in a decentralized way.

Why use Cardano?

Cardano Nodes

The Cardano node is the top-level component within the network. Network nodes connect to each other within the networking layer, which is the driving force for delivering information exchange requirements. This includes new block diffusion and transaction information for establishing a better data flow. Cardano nodes maintain connections with peers that have been chosen via a custom peer-selection process. By running a Cardano node, you are participating in and contributing to the network.

How does it work?

Stake pools use the Cardano node to validate how the pool interacts with the network and are responsible for transaction processing and block production. They act as reliable server nodes that hold and maintain the combined stake of various stakeholders in a single entity.

Producing a block

The goal of blockchain technology is the production of an independently-verifiable and cryptographically-linked chain of records (blocks). A network of block producers works to collectively advance the blockchain. A consensus protocol provides transparency and decides which candidate blocks should be used to extend the chain.

Submitted valid transactions might be included in any new block. A block is cryptographically signed by its producer and linked to the previous block in the chain. This makes it impossible to delete transactions from a block, alter the order of the blocks, remove a block from the chain (if it already has a number of other blocks following it), or to insert a new block into the chain without alerting all the network participants. This ensures the integrity and transparency of the blockchain expansion.

Slots and epochs

The Cardano blockchain uses the Ouroboros Praos protocol to facilitate consensus on the chain. Ouroboros Praos divides time into epochs. Each Cardano epoch consists of a number of slots, where each slot lasts for one second. A Cardano epoch currently includes 432,000 slots (5 days). In any slot, zero or more block-producing nodes might be nominated to be the slot leader. On average, one node is expected to be nominated every 20 seconds, for a total of 21,600 nominations per epoch. If randomly elected slot leaders produce blocks, one of them will be added to the chain. Other candidate blocks will be discarded.

Slot leader election

The Cardano network consists of a number of stake pools that control the aggregated stake of their owners and other stakeholders, also known as delegators. Slot leaders are randomly elected from among the stake pools. The more stake a pool controls, the greater the chance it has of being elected as a slot leader to produce a new block that is accepted into the blockchain. This is the basic concept of proof of stake (PoS). To maintain a level playing field, and prevent a situation where a small number of very large pools control the majority of stake, Cardano has an incentive system that discourages delegation to pools that already control a large portion of the total stake.

Transaction validation

When validating a transaction, a slot leader needs to ensure that the sender has included enough funds to pay for that transaction and must also ensure that the transaction’s parameters are met. Assuming that the transaction meets all these requirements, the slot leader will record it as a part of a new block, which will then be connected to other blocks in the chain.

Note: we are not making any investment advice. Please consider conducting your own research and due diligence, or consult your financial advisor before making any investment decisions.

Like any other cryptocurrency, ada can be purchased using one of the available exchanges.

We do not recommend any particular exchange, as there are many great options. However, you can find a list of exchanges listing ADA on Cardano markets.

Step 1 Download a wallet

  1. First, you need to download and install a cryptocurrency wallet that supports ada.
  2. Create a new wallet and name it.
  3. Then, activate your new wallet and ensure to write down your new passwords. Note that your passwords are the only way you can access your wallet; keep them in a safe place and don’t lose them. You will have a spending password (which is the one used for transacting), and a 12- or 24-word passphrase depending on the wallet you chose.
  4. Recreate your passphrase and accept the terms and conditions. The wallet should be now all set.
  5. Click ‘Receive’ and copy a wallet address or download a PDF file with the QR code. You will need to use this address to receive your cryptocurrency later.

Step 2 Choose an exchange

  1. Explore cryptocurrency exchanges and choose the one that supports ada.
  2. Create an account. To create an account, exchanges typically require such personal information as:
    • full name
    • address
    • email address and phone number
    • payment method (to fund your account)
    • a document that identifies your personality (passport, driver’s license, ID, etc)

We recommend setting up 2FA verification for enhanced security and funds safety. It usually takes from several minutes to several days for an account to be activated. This depends on the chosen exchange.

Step 3 Purchase ada

  1. Sign in to your exchange account.
  2. Select a Buy/Sell option, which is usually at the top menu.
  3. Click Buy, enter ADA (Cardano) as the cryptocurrency you wish to purchase.
  4. Indicate the amount of ada you would like to purchase and select a payment method (whether it is a wire transfer, credit or debit card). Each exchange will offer you available options, please read them carefully and follow the outlined steps.
  5. Confirm your purchase. You will typically have to confirm it via email and enter the 2FA code (in case you have set it up). You will then receive your ada on the exchange account.
  6. Withdraw ada to your personal wallet. If this is the first time you are making a withdrawal, try smaller amounts to verify that everything works. Note that it is highly not recommended to store ada (or any other cryptocurrency) on the exchange account. To transfer your ada, choose the ‘Withdraw’ option, paste your wallet address (the one you copied earlier from your wallet) and submit your transfer.
  7. Check you have received your funds. Go to your wallet and check the balance. You can also track recent transactions using different explorer tools.

You can now store ada in your personal wallet, transact between different addresses, receive more ada as payment for services (for example), or delegate it to earn rewards.

How to purchase ada?

About the Cardano network

The Cardano network is a technical infrastructure combining Cardano nodes and their relative interactions in one unified system. It consists of a collection of nodes that communicate with each other to maintain the distributed ledger. These nodes are the actors on Cardano that validate blocks, add blocks to the chain, and distribute transactions.

The networking layer is the driving force for delivering information exchange requirements, which includes new blocks diffusion and transaction information for establishing a better data flow. Cardano nodes maintain connections with peers that have been chosen via a custom peer selection process.

Follow these links to find detailed specifications of:

Data flow between and within nodes

To understand how nodes communicate with each other, let’s suppose that node A is connected to node B. Then, the Ouroboros protocol schedules a node N to generate a new block in a given time slot. Depending on the location of nodes AB, and N in the network topology, and whether a new block arrives first at A or B, node A can be either upstream or downstream of node B.

A set of mini protocols is used to enable communication between different nodes. Each mini protocol implements a basic information exchange requirement, such as informing peers of the latest block, sharing blocks as needed, or sharing new transactions around the Cardano network. For connection purposes, mini protocols are determined by the version of the network protocol. For example, there are two protocol suites: node-to-node and node-to-client. The node-to-client protocol suite is used by wallets and chain consumers. Protocol suites use different sets of mini protocols and the version is negotiated when a new connection is established using a specific protocol (protocols are described in the following sections).

Clients can also choose which node-to-client mini-protocols to use, but it is important to note that the node needs to be able to reply to all of them to support different use cases. For example, to communicate, node A runs its client-side instance of the chain-sync mini protocol that talks with a server instance of the chain-sync mini protocol at node B. Such a situation is similar to the functionality of other mini protocols.

The scheme below illustrates how data flows within a node. Circles represent protocol threads and internal threads that are responsible for running the client and server processes within the respective mini protocols.


Two types of data flow exist:

  1. Mini protocols communicate with mini protocols of other nodes by sending and receiving messages across a public network (internet); this flow is not covered within the scheme above but will be potentially designed for better understanding.
  2. Within a node, mini-protocols communicate with each other by reading from, and writing to, a shared mutable variable, which is represented by boxes in the scheme. Arrows indicate whether a thread has read or write access to the shared state.

Addressing network complexities and constraints

To design an efficient and robust networking architecture, a number of potential issues regarding complexity and constraints have been evaluated.

Congestion control is one such feature and is used to deal with system overload. Congestion control is vital to ensure that the system is robust enough while operating high workloads. Within the networking design, it is common that the number of transactions that occur can be higher than the number that can be actually processed for inclusion in the blockchain. Therefore, it is important to ensure that the increasing rate of transaction submission into a block does not decrease the performance of blockchain.

The actual node has a limit to the amount of data it can process. In particular, a node might have to share its processing power with other processes that run on the same machine or operating system instance. This means that a node can slow down and result in the system not being able to process all the available data from the network.

To address these issues, the congestion control feature has been designed to operate appropriately in such a situation and recover from transient conditions. In any case, a node must not exceed its memory limits so there must be defined memory limits, breaches of which are treated as protocol violations. These factors mean that the system will be able to meet performance goals.

Real-time constraints and coordinated universal time are other aspects that have been considered while designing the networking architecture. In Cardano, Ouroboros consensus protocols model the passage of physical time as an infinite sequence of time slots, assigning slot leaders to create a new block in those time slots. Choosing a slot time, however, might cause certain complexities in terms of the slot length, as it should be long enough for a new block to have a good chance to reach the next slot leader in time. Therefore, a chosen value for the slot length was initially set to 20 seconds in the Byron era. With Ouroboros Praos now implemented in the Shelley era, a slot length of 1 second is chosen but, on average, only 0.05 of slots will produce a block (and thus on average, there will be 20-second intervals between blocks). It is assumed that the clock skews between local clocks of the nodes is small with respect to the slot length. Possible clock inaccuracies should still be taken into consideration, especially when dealing with time-stamped incoming blocks. It is important to differentiate whether there is a time difference or whether the node considers an adversarial behavior of another node.

Utilizing mini-protocols

Mini protocols are used to communicate between multiple nodes while implementing information exchange requirements. A mini protocol is a defined modular building block of the network protocol. Structuring the network protocol around mini protocols helps to manage the overall complexity of the design while ensuring useful flexibility.

Mini protocols describe both the initiator and the responder within the communication stream. The initiator is the dual element of the responder and vice versa. A node typically runs many instances of mini protocols, which includes many instances of the same mini protocol. Each mini protocol instance of the node then communicates with the dual instance of the exact peer. All mini protocols that communicate with the same peer share a single communication channel (pipe or socket). A multiplexer or de-multiplexer is used to multiplex respective protocols over that channel.

The set of mini protocols that is used for connection between two participants of the system depends on the role of these participants, for instance, whether the node acts as a full node or a blockchain consumer (for example, a wallet).

It is also worth noting that the implementation of mini protocols uses a generic framework for state machines. This framework uses correct-by-construction techniques to guarantee the implementation of several properties of the protocol. In particular, this technique assures that no deadlocks occur and communication is cancelled in the following scenarios:

  • when one side is expected to transmit the next message, and the other side is awaiting the message, and both sides agree that the protocol has been terminated
  • when either side receives a message that is not expected according to the protocol

All mini protocols based on this framework include the following information in their description:

  • an informal description of the protocol
  • state machine states
  • exchanged messages
  • a transition graph of the state machine global view
  • the client’s implementation of the protocol
  • the server implementation of the protocol

Example mini protocols

This section outlines some examples of mini protocols.

Ping Pong protocol

This is a simple protocol for testing that a client can use to check that the server is responsive. The Ping-Pong protocol is very simple because the messages do not carry any data and the Ping-Pong client, as well as the Ping-Pong server, do not access the internal state of the node.

Request Response protocol

The request response protocol is polymorphic in the request and response data that is being transmitted. This means that there are different possible applications of this protocol and the application of the protocol determines the types of requests sent and responses received.

Chain Synchronisation protocol

The chain synchronization protocol is used by a blockchain consumer to replicate the producer’s blockchain locally. A node communicates with several upstream and downstream nodes and runs an independent client instance and an independent server instance for each node with which it communicates.

The chain synchronization protocol is polymorphic. The node-to-client protocol uses an instance of the chain synchronization protocol that transfers full blocks, while the node-to-node instance only transfers block headers. In the node-to-node scenario, the block fetch protocol is used to transfer full blocks.

Block Fetch protocol

The block-fetching protocol enables a node to download a range of blocks.

Local Transaction Submission mini protocol

The local transaction submission mini protocol is used by local clients, for example, wallets or CLI tools, to submit transactions to a local node. The protocol is not used to forward transactions from one core node to another. The protocol follows a simple request-response pattern:

  1. the client sends a request with a single transaction.
  2. the server either accepts the transaction (returning a confirmation), or rejects it (returning the reason).

Node-to-Node Transaction Submission protocol

The node-to-node transaction submission protocol is used to transfer transactions between full nodes. The protocol follows a pull-based strategy where the initiator asks for new transactions and the responder replies with transactions. It is suitable for a trustless setting where both sides need to guard against resource consumption attacks from the other side. The implementation of the node-to-node transaction mini protocol is based on a generic mini protocol framework (the same as for all other mini protocols). For technical reasons, the roles of the initiator and the responder are reversed in this case compared to the way other mini protocols are implemented in the framework. In other words, the server is the initiator who requests new transactions, and the client is the responder who replies with transactions.

Handshake mini protocol

The handshake mini protocol is used to negotiate the protocol version and the protocol parameters that are used by the client and the server. It is used first when a new connection is initialized and consists of a single request from the client and a single reply from the server. The handshake mini protocol is a generic protocol that can negotiate any kind of protocol parameters. It assumes that protocol parameters can be encoded to, and decoded from Concise Binary Object Representation (CBOR) terms. A node that runs the handshake protocol must instantiate it with the set of supported protocol versions and callback functions for handling the protocol parameters. These callback functions are specific for the supported protocol versions.


AVATAR (0/59)


Please enter a valid username



Investment Risk


Long-Term expectations


We are not associated with any of the above metaverses, nor do we have any relationship. We do not own the rights to any of the logos nor do we intend to infringe the copyright of any of the logos. Their use is for informational purposes only. You can contact with us here
We always try to ensure that the information is official, verified and up to date. But this may not be the case. If you think it is not, please contact us here.
We are not responsible if the information on this website is incorrect or outdated. Nor for any damage or loss that this information may cause you.