CDLA – Corda Distributed Ledger Architecture

  • Duration: 10 weeks
Categories:

Chapter 1: Getting Started with R3 Corda

  • Introduction
  • Java, Kotlin, and IntelliJ Backgrounder
  • Java Learning Resources
  • Kotlin Learning Resources
  • IntelliJ Learning Resources
  • Financial Backgrounder
  • Cryptography Basics
  • Cryptographic PRNG Algorithms
  • Cryptographic Hash Algorithms
  • Symmetric Cryptographic Algorithms
  • Asymmetric Cryptographic Algorithms
  • Digital Signature Algorithms
  • PKI, SSL/TLS and X.509
  • Authentication and Authorization
  • Firewalls and DMZs
  • Byzantine Fault Tolerance
  • PoW Consensus (Proof of Work)
  • PoS Consensus (Proof of Stake)
  • Other Consensus Mechanisms
  • Secure Enclaves
  • Merkle Trees
  • Distributed and Decentralized Ledgers
  • Ledger Terminology
  • Centralized Database Issues
  • Blockchain, Consensus, Immutability, and Trust
  • The UTXO Model
  • Account Reconciliation
  • R3 Corda vs Bitcoin
  • R3 Corda vs Ethereum
  • R3 Corda vs Hyperledger
  • Corda Peer-to-Peer Networks
  • Peer-to-Peer (P2P) Network Architectures
  • Network Protocols: TLS and AMQP/1.0
  • Corda Nodes and Network Topology
  • R3 Corda Network
  • Doorman Authentication Service
  • DemoBench

Lab 1:

  • DemoBench App
  • Launch DemoBench
  • Create Notaries
  • Create Nodes
  • Launch Node Explorer
  • View Corda Network
  • Create, invoke, and view Transactions
  • Query data in Vaults
  • Add and use custom CorDapps

Chapter 2: Intro R3 Corda Architecture

  • CorDapp Scenarios
  • Corda Whitepapers
  • Corda Components
  • States
  • Vaults
  • Contracts
  • Attachments
  • Commands
  • Transactions
  • Notaries
  • Flow Framework

Lab 2:

  • Hello World Tutorial
  • Use the R3 CorDapp Template
  • Explore States
  • Explore Contracts
  • Explore Commands
  • Explore Transactions
  • Explore Flows

Chapter 3: Intro to Corda Programming

  • Explore CorDapp project structure
  • Write Contracts
  • Write Transactions
  • Write Flows
  • Use the client RPC API

Lab 3:

  • R3 Example CorDapp Tutorial
  • Download the R3 Example CorDapp
  • Explore the example IOU Contract
  • Explore the example IOU Sate
  • Explore the example Flow
  • Interact with the example CorDapp

Chapter 4: Advanced R3 Corda Architecture

  • Sub-Flows
  • Time Windows
  • Oracles
  • Transaction Tear-Offs

Lab 4:

  • R3 CorDapp Samples on GitHub
  • Explore the “Yo!” example
  • Explore the “CordaChat” example
  • Explore the “Heartbeat” example

Chapter 5: Advanced Corda Programming

  • Code Style Guide
  • Unit Testing

Lab 5:

  • R3 Corda Training Code Example
  • Use the R3 CorDapp Training Code Example for Unit Testing
  • Implement States and State Unit Tests
  • Implement Flows and Flow Unit Tests

Chapter 6: R3 Corda Infrastructure

  • Client RPC and REST APIs
  • Object Serialization and AMQP over TLS
  • Artemis Message Queuing Middleware
  • Quasar and Asynchronous Programming
  • Corda Deployment

Lab 6:

  • Community Corda Samples
  • Explore the “Delivery vs Payment Asset Transfers” example
  • Explore the “Property Listing” example
  • Explore the “Insurance Claim” example
  • Review

Leave feedback about this