Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Smart Contracts on Cardano


Published on

Gerard Moroney of gave a great presentation on his work on the Cardano compute and smart contract layer, as well as other developments and milestones for Cardano, formal verification and the upcoming test network release of their register virtual machine IELE network in July.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Smart Contracts on Cardano

  1. 1. A Primer On Smart Contracts About The Technology & Smart Contracts Development At IOHK DISCLAIMER: The views here expressed are that of the author and do not necessarily reflect the company view of IOHK, its affiliates or related legal and commercial entities.
  2. 2. Hello Ger Moroney PMO Team | IOHK
  3. 3. ‹#› INPUT | OUTPUT AGENDA Distributed Ledgers, Blockchains & Smart Contracts Project Goguen Q+A
  4. 4. ‹#› INPUT | OUTPUT What Is A Distributed Ledger? • A type of data structure which resides across multiple computer devices, generally spread across locations or regions. • Distributed Ledger Technology (DLT) includes blockchain technologies and smart contracts.
  5. 5. ‹#› INPUT | OUTPUT What Is A Blockchain? • A subset of distributed ledger technologies, which constructs a chronological chain of blocks, hence the name 'block-chain’ • Permssionless or permissioned • Public or private
  6. 6. ‹#› INPUT | OUTPUT What Is A Blockchain? Merkel Tree (Binary Hash Tree) • Stores hashes of the individual data to make the verification efficient. • Anti-tamper mechanism to ensure that the large dataset has not been changed (digital fingerprint) • Efficient process to verify whether a transaction is included in block.
  7. 7. ‹#› INPUT | OUTPUT What Is A Blockchain? Consensus • Process of achieving agreement among the network participants as to the correct state of data on the system • Leads to all nodes sharing the exact same data • Ensures that the data on the ledger is the same for all the nodes in the network • Prevents malicious actors from manipulating the data • POW, POS, SBFT, POA, POET etc.
  8. 8. ‹#› INPUT | OUTPUT What Is A Smart Contract? Smart contracts are computer programs that execute predefined actions when certain conditions within the system are met.
  9. 9. ‹#› INPUT | OUTPUT When To Use? • Need for a shared common database • Parties conflicting incentives or do not have trust • Multiple parties involved or writers to a database • Cryptography is currently being used or should be • Data in many different databases along the lifecycle • Uniform rules governing participants in the system • Decision making of the parties is transparent • Need for an objective immutable history • Transaction frequency < 10,000/s
  10. 10. ‹#› INPUT | OUTPUT When Not To Use? • Involves confidential data • Lot of static data or dataset large • High transaction frequency • Use of external services to gather/store data
  11. 11. ‹#› INPUT | OUTPUT Challenges With Existing Technology • Scalability • Interoperability • Limitations of existing languages • Not considering business vertical needs • Not fun
  12. 12. ‹#› INPUT | OUTPUT Project | Overview Name – Goguen GOAL - “Deliver Smart Contract (SC) capability for Cardano (Computational Layer)“ Workstreams – Sidechains, Accounting, Multi-Currency, Plutus, Marlowe, IELE, End-User & External Developer, Integration Output – Computational Layer, Tools, Training & Documentation.
  13. 13. ‹#› INPUT | OUTPUT Project | Workstreams • Sidechains - Move tokens between blockchains without third party • Accounting – Support UTXO and account-based transactions • Multi Currency – Multiple cryptocurrencies on single ledger • Plutus - General purpose language for writing smart contracts • Marlowe - SC language designed for financial transactions • IELE – Virtual machine with universal language framework for SC transactions • End Users – Allow users to execute smart contracts • External Developers – Tools to develop smart contracts
  14. 14. ‹#› INPUT | OUTPUT Project | Update ü Academic research on accounting, multiple currency and sidechains mature; stage starting formal methods (models, prototypes) ü Plutus - develop core and specification ü Marlowe - develop (constructs, embed within Plutus) ü Launched KEVM & Prepare IELE Testnet ü End-User & External Developer – Analysis ü Integration - Target architecture agreed; considering support and education.
  15. 15. ‹#› INPUT | OUTPUT Project | Dates • 28TH May 2018 – KEVM testnet released • End July 2018 – IELE testnet scheduled for release
  16. 16. Thank you IOHK.IO You have been watching an IOHK presentation.