Study Open Source Blockchain : Corda
What is Corda?
What is Corda used for?
Why is Corda not a Blockchain?
How is Corda different from Hyperledger?
Is Corda
a Cryptocurrency?
What is
Corda and R3?
What is Corda?
· Corda blockchain is best defined as an open
source that solves business problems by providing an interoperable (Able to
exchange and use information)
blockchain network.
· Its key features include strict privacy, efficiency, and direct transactions using
smart contract technology.
· The smart contracts used in Corda can be
written using JVM
languages or Java. The dApps within the Corda platform is known as
CorDapps.
· Also, they offer peer-to-peer nodes network with the ability to use
Notary infrastructure.
· The infrastructure is used to validate and sequence
transactions without needing to broadcast the transaction details
to every peer on the network.
Another important component used by the
blockchain includes the Flow
framework, which manages the negotiation and communication among participants.
· Corda
Ledger is not like the
ledger system utilized by traditional blockchain technologies.
o That’s why there is need to
have a clear grasp of how it works and understand it from both its functional
point of view and data perspective.
· The
Corda ledger works like a
graph.
o All the nodes in a
graph are connected through each other, either directly or through some other
nodes.
o All nodes can
communicate with each other if they want to.
o The use of the graph means
that there is no need to
broadcast the transaction globally.
· Means,
how do the nodes discover each other?
o
They use a
Network map to find each other.
o
It can think as like a phone book.
o
The Network map contains the metadata to locate each of
these services and hence provides a nice way for map discovery.
·
The biggest challenge in a non-global
broadcast blockchain network is consensus. So, how do the nodes know about each other and
verify that information?
·
The answer here is shared facts.
o
Each node overlaps any other
node in some way or another.
o
The shared
facts are stored in the Corda ledger, which can then be used to verify the information.
o
The Corda ledger contains a set of these sets.
o
As there is no central node, these nodes act proxy when there is a need to
verify things.
o
To store that information, each node has a vault that contains the fact which cannot be changed.
o
This is how developers implement blockchain.
· States
in the Corda blockchain are immutable.
o They are used to store
shared facts about a
transaction, agreement, or contract at a specific point of time.
·
Sounds technical? Let’s try to break it
down in simpler words.
·
Let’s take two people using the Corda ledger and let’s name them Mr. A and Mr. B.
o
Both of them have a shared fact.
o
The shared fact is an IOU (I Own You).
o
IOU is used when a lender has money due to the loan provider.
o
To make the fact shared, both of them
have the same shared
information represented in the IOU.
·
States can be used to represent anything.
o
This means that it can store any form of information for
different corda use cases.
o
As a developer, it can use states to store KYC information,
financial instruments, syndicated loans, and so on.
·
Also, states can be used to store multiple attributes.
o
But there is a limitation for states.
o
The limitation is that once a state is given a type, its type
cannot be changed.
o
If one can create an IOU state, then it will have to state the
IOU state for the rest of its life.
·
States are created to be immutable.
o
However, their immutability is concerning time.
o
A state is presented at a given time.
·
This means that a new state can be created in addition to the
original state.
o
It is done when there is a new change made to the state that
needs to be stored.
o
The old state is then termed as historical.
For
example, if Mr. A pays off its debt to Mr. B, then a new state will be created,
citing the fact
that Mr. A has cleared the debt. Also, if the state is completed, the IOU will
expire.
In
simple terms, the life cycle of the state, in this case, is as follows:
1.
A
first state is created to showcase that Mr. A is under debt to Mr. B. This
states also share more information about the IoU,
including the date, time, interest rate, the amount lent, and other useful
information required for the IoU.
2.
Now,
when Mr. A resolve the debt, a new state is created that updates the new
information. The old state is not touched in any way as it is immutable.
3.
The
new state is now updated in the shared facts among the two users.
4.
Now,
the old state is termed as
historic. There can be multiple historical states in one single
transaction. This can lead to creating a sequence of states.
5.
A
sequence head is created, which refers to the latest state. Also, the latest states are also
termed as unconsumed.