Cardano
Interoperability | Scalability | Sustainability
Ouroboros Consensus Protocol | Scholarly academic Research | Peer Review
NFTs | Smart Contracts | Cardano Components
Proof of Work
(Bitcoins uses proof of work)
(Bitcoins uses proof of work)
VS
Proof of Stake
(Cardano uses proof of stake)
(Cardano uses proof of stake)
What actually makes Cardano a 3rd Generation Blockchain?
Cardano was the first Proof of stake blockchain network.
What is Cardano?
[Click Me to learn More!]
[Click Me to learn More!]
Cardano is a public blockchain platform. It is open-source and decentralized,
with consensus achieved using proof of stake. It can facilitate peer-to-peer
transactions with its internal cryptocurrency, ADA.
Cardano was founded in 2015
by Ethereum co-founder
Charles Hoskinson.
Can Cardano Be Mined?
Cardano cannot be mined since it's not part of the PoW consensus. You can only stake it by simply keeping your Cardano wallet (like Daedalus) online. You'll get a certain percentage of your already owned ADA coins as payment.
How do you accumulate Cardano?
The ability to delegate or pledge a stake is fundamental to how Cardano works. There are two ways an ADA holder can earn rewards: by delegating their stake to a stake pool run by someone else, or by running their own stake pool.
What Are Cardano's
Three Goals?
Three Goals?
Interoperability
Scalability
Sustainability
Secure, scalable, and interoperable
Security is one of the founding principles of Cardano. As it is written in the functional language Haskell, it uses pure functions to build the system, where components
can be tested in isolation. More advanced features of Haskell, such as
basing the implementation on formal and executable
specifications, extensive property-based testing,
and running tests in simulation provides a
range of powerful methods for
ensuring code
correctness.
Interoperability
"Interoperability is the ability of computer systems or software to
exchange and make use of information."
Another problem Cardano wants to solve is the lack of proper interoperability
among blockchains. Most blockchain networks are independent
and cannot communicate with each other because they
use different architectures and coding languages.
Scalability
(Scaling Cardano in 2022)
(Scaling Cardano in 2022)
Ouroboros consensus protocol
The Cardano platform runs on the Ouroboros consensus protocol. Ouroboros, created
by Cardano in its foundation phase, is the first PoS protocol that was proved
to be secure. When choosing to invest in Cardano,
the success of the Ouroboros
protocol is a huge plus.
Ouroboros consensus protocol
The Cardano platform runs on the Ouroboros consensus protocol. Ouroboros, created
by Cardano in its foundation phase, is the first PoS protocol that was proved
to be secure. When choosing to invest in Cardano,
the success of the Ouroboros
protocol is a huge plus.
Scholarly academic research
Cardano’s development has been unique in that it has been informed by scholarly academic research. Each of Cardano’s development phases is supported by
a research-based framework, incorporating peer-reviewed insights with
evidence-based methods. This creates a strong foundation from
which to make progress toward the future of both the
blockchain network and the Ada token.
High Priority and immense efforts invested
into Top of Class Blockchain
Security with the End
goal being to
obtain a
"Trustless World"
Cardano makes it possible for any actors that do not know each other - and have no reason to trust one another - to interact and transact, securely. It’s a platform
for building trust where none might naturally exist, opening up whole new
markets and opportunities. Through Ouroboros, Cardano is prove-ably
secure against bad actors and Sybil attacks. Every transaction,
interaction, and exchange is immutably and
transparently recovered, and securely
validated using multi-signature
and a pioneering extended
UTXO model.
Cardano Components
Cardano Explorer
Cardano Node
Cardano Wallet
Cardano Rosetta
Cardano Rosetta
Cardano DB Sync
Cardano GraphQL
High level architecture of Cardano
The following diagram outlines the interaction between
the system components of Cardano
Cardano System components
The current implementation of Cardano is highly modular.
It includes the following components
(different deployment use cases will use different combinations of components)
Node
Command line interface (CLI) | Daedalus wallet | Cardano db-sync
GraphQ API server (Apollo) | REST API components | SMASH server
You can only trust nodes run by you or your organization.
This is why Daedalus runs a node in the background.
Node process
The cardano-node is the top level for the node and consists of
the other subsystems, of which the most significant
are consensus, ledger & networking
with ancillary configuration,
CLI, logging, and
monitoring.
Node-to-Node IPC Protocol
node-to-node IPC protocol: Purpose
"To allow for the exchange of
blocks & transactions
between nodes"
(As part of the Ouroboros Consensus Algorithm)
"To allow for the exchange of
blocks & transactions
between nodes"
(As part of the Ouroboros Consensus Algorithm)
Node-to-Node Protocol: Mini-Protocols
Composite protocol consisting
of three mini protocols
Composite protocol consisting
of three mini protocols
tx-submission
Used for forwarding transactions.
chain-sync
Used for following
the chain & getting block headers.
block-fetch:
Used for getting block bodies.
These mini-protocols are multiplexed on a single long-running Transmission Control Protocol (TCP) connection between nodes.
They can be run in both directions on
the same TCP connection to allow for peer-to-peer (P2P) settings.
"Overall protocol and each mini-protocol are designed trustless.
Both sides guard against Denial-of-service (DoS) Attacks"
For example, each mini-protocol uses consumer-driven control
flow, so a node only requests more work when
it is ready, rather than having
work pushed
upon
it.
Let's break this one down and find the keywords to simplify it a bit.
The protocol design is modular & evolvable.
Version negotiation is used to agree on the set of mini-protocols to use.
Protocol design
is
modular & evolvable.
Version negotiation
is used to agree on
mini-protocols
to use.
Version negotiation allows adding
mini-protocols overtime
without causing
compatibility issues
AKA
Protocol Design
- Is Modular
- Is Evolvable
2. Version negotiation
- Is how mini-protocols to use are agreed upon
- Overtime, allows mini-protocols to be
=> added without causing compatibility issues
=> updated without causing compatibility issues
Node-to-Client IPC
Protocol
Node-to-Client Protocol: Purpose
To allow local applications to interact with blockchain by way of/via the node.
This includes apps like wallet backends & blockchain explorers.
Node-to-Client IPC protocol: ENABLES
local applications ability to
ACCESS raw blockchain data
QUERY the current ledger state
SUBMIT new transactions to system
Node-To-Client Protocol: Design
node-to-client protocol
design
is same as
node-to-node protocol
EXCEPT
Local Pipes
replace
(TCP connections)
AND
Node-to-Client Protocol Mini-Protocols
(chain-sync | local-tx-submission | local-state-query)
replace
Node-to-Node Protocol Mini-Protocols
(chain-sync | local-tx-submission | block-fetch)
Node-to-client Protocol: Mini-Protocols
chain-sync
Used for following
the chain & getting blocks.
local-tx-submission
Used for submitting transactions.
local-state-query:
Used for querying
ledger state.