Many people think that blockchain and distributed ledger technology are the same things. But as you will realize in this article, blockchain is one type of distributed ledger technology. There is no doubt that blockchain outshines all other types of distributed ledgers. After all, blockchain’s first application was Bitcoin – which is, to put it like this: a celebrity digital currency.
Distributed ledger technology provides several benefits – one of them being decentralization. Decentralization removes a single point of failure in systems, as well as granting all participants of a network equal access to data.
The R3 Corda project takes advantage of distributed ledger technology to create an open-source enterprise-grade platform on which businesses can transact with each other in a private, affordable, and efficient smart contract platform.
The R3 blockchain consortium was formed in 2013 and has over 200 members from diverse sectors.
The Corda Model
The Corda platform model is underpinned by three core concepts, which are:
i) State Objects: These represent an agreement between two or more parties. State objects are governed by what is known as a Contract Code – whose work is implemented in portions of human-readable legal text.
ii) Transactions: These are activities that oversee a state object from start to completion.
iii) Flow Framework: This is the infrastructure that enables parties to coordinate activities without the need for a central controller.
Business Principles of Corda
- Inclusion. Members can discover and transact with each other in a free, single, and open network.
- Assured Identity. Parties will have the knowledge of who is who in the network
- Privacy. The only parties who will be privy to the details of a transaction are the involved parties only.
- Shared logic. All characteristics of an agreement managed by the system will be described in computer code that is shared among concerned parties to ensure the consistency and validity of agreements.
- Legal footing. Any deal that is recorded on the ledger is admissible evidence and legally binding for all parties involved – in case of any dispute.
- Authoritative. Any information on the ledger is considered authoritative. There are no ‘shadows’ of authoritative data that are kept somewhere else. What parties see is what they get.
- Immutability. Data entered on the ledger is final and cannot be deleted. In case of any errors, parties will wait until the next transaction to address it.
- Open. The system is open in every aspect: open source, participation, development, governance, and standards so that it balances its diverse user needs in a transparent fashion.
The R3 Corda’s Architectural Vision
R3 Corda aims to create a blockchain environment that is underpinned by the following features:
i) Scale. The network will scale to support billions of transactions daily across industries
ii) Longevity. Different versions of Corda will be able to run side by side, and applications can run on later versions, without having to change any code.
iii) Secure. The platform will operate as though expecting an adversary at any time. So, security settings are forever on high alert.
iv) Stable. The network will evolve carefully, with each version maintaining consensus critical network standards to avoid bugs.
v) Interoperable. On the platform, multiple applications will be able to coexist and interact with each other.
Corda aims to achieve more scalability than the existing distributed ledgers, including blockchain, as well as provide much more security than the one found on blockchains.
The platform will achieve this by including “Notaries” in their network. Notaries on Corda function much like miners on the blockchain, but without the massive energy costs associated with mining. Notaries validate transactions by time-stamping them. Only after a transaction has been time-stamped can it be recorded on the immutable ledger.
Notaries can either be centralized (in which case they will be R3 nodes themselves or banks) or distributed (in which case they will use a consensus algorithm, mostly the Practical Byzantine Fault-tolerance Programming.)
Corda and Smart Contracts
Corda enforces its business logic via the use of smart contracts. A smart contract on the R3 Corda platform is a simple function through which a user can accept or reject a proposal. Users can also compose smart contracts using simple and reusable tools.
A transaction is valid when and only if the contract code is associated with a state agrees. A transaction’s initiator has to construct a transaction that adheres to the constraints of that transaction.
Corda uses the Java Virtual Machine6 –- which has a wealth of libraries and a large skill base, for the creation of smart contracts.
How Corda Achieves a Global Distributed Consensus
Corda has three main tools to help it achieve a globally distributed consensus:
- Smart Contract Logic – Which specifies constraints to ensure transactions are valid as per pre-set rules and procedures.
- Uniqueness and timestamping of services known as notary pools that order transactions temporarily and eliminate conflicts
- A ‘Flow Framework’ that simplifies complex protocols between and among distrusting parties
Not a Blockchain
Corda is an implementation of distributed ledger technology by a company called R3. The implementation is modeled after Bitcoin’s UTXO model.
Corda is not a blockchain. It has some similarities with blockchain, but it’s leaner and enables a plug-and-play model. Mike Hearn, a member of the leading team, writes: “There is no blockchain…Corda is not tied to any particular consensus algorithm.”
Corda’s approach makes it stands out as one of the leading consortia in the DLT/blockchain space.
CorDapps are the Corda platform’s version of decentralized applications. Developers can create their own CorDapps from scratch using the Java CorDapp Template or the Kotlin CorDapp Template.
Corda has also developed a set of CorDapp examples that can serve as templates for developers. These templates are free for access and will demonstrate to developers how to implement core functionalities of CorDapps.
Here are some examples of Cordapp Projects
Auction CorDapp – A CorDapp that allows users to carry out public or private auctions
Be-Well – A CorDapp that allows clients to purchase wellness services via brokers
Cordite – An open-source, enterprise-ready and finance grade CorDapp that provides decentralized economics and governance services
Delivery vs. Payment Asset Transfers – A CorDapp that lets users develop delivery-vs-payment of an asset coordinated by a clearinghouse
Oraclize API – An oracle service that uses authenticity proofs to prove that data fetched from the original source has retained its integrity.
What’s In It for Businesses?
By signing up on the R3 Corda platform, organizations can:
- Streamline complex processes and hence reduce operational costs and risks
- Acquire new, cutting-edge ways of doing business and hence gain a competitive advantage in the market
- Increase revenue by a connecting to and monetizing new networks
- Create a climate of trust between various players
The Corda project is showing the world the power of distributed ledger technology. It’s right up there with other projects that rely on blockchain, like the Hyperledger project. Corda provides a great solution for businesses to streamline processes, reduce overhead costs, and achieve business results faster. Through its CorDapps platform, users can create decentralized apps that create useful solutions for society.