With the basics of Corda under your belt we will take you to the next level of your Corda distributed application (CorDapp). In this boot camp we’ll help you learn how to use tokens capabilities.
Tokens give developers the ability to represent fungible assets on the ledger. The token SDK does much of the heavy lifting for you on the logic needed for issuance and management of tokens. This capability gives developers a fast way to create tokenized assets on Corda with real-world business use cases supported.
Learn more about Corda: www.corda.net
Join our community: slack.corda.net
2. Quick Recap: Components of a CorDapp
2. Contract:
Verify the transactions
3. Flow:
Execute the business logic
1. State:
The object in Corda State
1. Get consumed
2. Get updated
3. Get stored
3. What is Token…
• A token is a representation of an asset.
Physical Tokens Digital Tokens
Cryptocurrencies Tokenized Asset
4. What is Token on Corda?
• It is not a cryptocurrency
• A digital representation of asset ownership
• A bearer instrument represents liability between
the issuer and owner
5. A Tokenized Economy on Corda…
• Maximum Security
• Peer-to-peer transactions over a decentralized network providing the
highest security.
• Simple Traceability
• Users can retrieve a credible history of any ledger asset with confidence.
• Increased liquidity & Market Access
• Illiquid assets can now be represented and traded (as a whole or
fractionally) over markets, enabling new sets of owners.
6. Under the hood of Corda TokenSDK
• TokenSDK Overview
• Fixed vs Evolvable Tokentype
• Fungible vs Non-fungible Tokens
• Token Management
7. Corda TokenSDK
• TokenSDK provides a standard library to create and manage tokens in Corda.
ISSUE
MOVE
REDEEM
CREATE Creates the underlying TokenType for the token (Fixed or Evolvable)
Issues the tokens to the designated holders
Moves the tokens around the network
Destroys the token representation and claims the asset itself
token-contracts token-workflows token-money
10. = = +
Issuing Tokens: Fungible vs Non-fungible Tokens
ContractState
FungibleToken NonFungibleToken
AbstractToken
Let’s go to IntelliJ…
11. TokenSDK Built in SubFlows provided for you
Create
CreateEvolvableTokens
CreateEvolvableTokensHandler
Move
MoveFungibleTokens
MoveFungibleTokensHandler
MoveNonFungibleTokens
MoveNonFungibleTokensHandler
Update
UpdateEvolvableToken
UpdateEvolvableTokenHandler
Issue
IssueTokens
IssueTokensHandler
Redeem
RedeemFungibleTokens
RedeemFungibleTokensHandler
RedeemNonFungibleTokens
RedeemNonFungibleTokensHandler
12. Fungible Non-fungible
Evolvable Tokenized real-estate property
rentals (fractional ownership)
Tokenized real-estate property
(unique-ownership)
Fixed Type CBDC, Digital dollars Tokenized gold brick
On Ledger
Ledger assets on Corda
Off-Ledger
Real world physical assets
A security issued on a Corda network A house in Manhattan
Potential Use Cases of Corda TokenSDK
• Types of Tokens
• Types of asset
13. Try It Yourself…
• Java version: https://github.com/corda/samples-java/tree/master/Tokens
• Kotlin version: https://github.com/corda/samples-kotlin/tree/master/Tokens
• Corda TokenSDK Source Code: https://github.com/corda/token-sdk
Fungible House Token:
This CorDapp serves as a basic example to create, issue, move fungible tokens in Corda utilizing the
TokenSDK.
Stock Pay Dividend:
This CorDapp aims to demonstrate the usage of TokenSDK representing stock. The StockState stores the
stock details(dividends percentage) which can be updated over time.
Bike Market:
This sample CorDapp demonstrate create, move, and redeem actions of the tokenized asset.
14. • Free Training Site: training.corda.net
• Slack: slack.corda.net
• Corda docs: docs.corda.net
• Github Repository: github.com/corda
• Email Contact: devrel@r3.com
• Twitter: @Cordablockchain @inside_r3, hashtags #Corda, #r3;
• Youtube: youtube.com/cordablockchain
Ready to build? We're here to help
15. London
2 London Wall Place,
London, EC2Y 5AU
San Francisco
655 Montgomery St., 6th floor
San Francisco, CA 94111
www.r3.com | corda.net
Thank you
New York
11 West 42nd Street, 8th Floor
New York, NY 10036
Singapore
18 Robinson Road, Level #14-02
Singapore, 048547
Dublin
Lennox Building
50 Richmond St South
Saint Kevin’s, Dublin,
D02FK02
Hong Kong
Bonham Strand, 7F Office 18-
121
Hong Kong
São Paulo
Av. Angélica, 2529
Bela Vista- 6th Floor
São Paulo - SP, 01227-200, Brazil
Mumbai
01A108, WeWork Enam Samhav, C-
20, G Block, Bandra Kurla Complex,
Mumbai, 400051, India
Tokyo
Izumi Garden Tower 19F,
1–6-1 Roppongi, Minato-ku,
Tokyo 106-6019, JAPAN
Headquarters:
@inside_r3 | @cordablockchain
linkedin.com/company/r3cev-llc
Regional: