INTRODUCTION TO BLOCKCHAIN AND CORDA – GTBCC
UPCOMING TRAINING COURSES:
BELFAST 8th May 2018 presented by Ben Evans | Contact Us to book
In this course, we introduce the fundamentals of blockchain and distributed ledger technologies. We will discuss when to apply these approaches to existing or greenfield architectures.
Attendees will be able to see the power of the approach by building and working with a simple blockchain from scratch. With this context, we will move on to discuss the Bitcoin network and currency in detail and the design choices that it makes.
The second half of the course introduces the Corda distributed ledger and distributed apps. These are written either in Java or Kotlin, so we briefly introduce this up-and-coming language with a lab-driven approach.
We discuss the Corda ledger, shared facts and CorDapps before turning to the transaction lifecycle and flow. Finally, we look at Corda nodes and operation aspects of running a Corda network and private distributed ledger.
Attendees must already be experienced programmers. Any knowledge of blockchains, cryptography or cryptocurrencies is a notable advantage.
You will be required to bring a laptop to attend this course. Your laptop will need to be preloaded with an IDE (ideally Java 8) and the ability to install new software.
Course Outline Summary
A: BLOCKCHAIN BOOTCAMP
1. Fundamental Concepts
- Public Key cryptography
- Hash chaining (e.g. Git)
- Cryptographic glossary
2. An introductory blockchain
- Append-only ledgers
- Proof of work and difficulty
- Specification for a simple example – FirstBlockchain
Lab: Build & implement FirstBlockchain
Lab: Try to forge entries in someone else’s implementation of FirstBlockchain
- Bitcoin concepts
- Full nodes, mining and PoW
- Addresses, wallets & client tools
Lab: Setting up Bitcoin Wallets
- Economics of Bitcoin
- Future Directions
C. R3 CORDA
- Core Corda Concepts
- Introduction to Kotlin
Lab: Introduction to Kotlin
- Shared facts and agreements on the ledger
- Corda Smart Contracts
- Simple smart contracts
- Transaction Lifecycle
Lab: Writing a Corda smart contract
- Running a Corda network
- Corda Nodes
- Corda Network