Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Building a Blockchain

Building a Blockchain

Investigating Hyperledger Sawtooth with Docker - Talk at the December Edinburgh Docker Meetup

Andrew Kennedy

December 14, 2017
Tweet

More Decks by Andrew Kennedy

Other Decks in Technology

Transcript

  1. Building a Blockchain
    Investigating Hyperledger Sawtooth with Docker
    Andrew Donald Kennedy
    December 2017

    View Slide

  2. Agenda
    Blockchain
    Hyperledger
    Sawtooth
    Ethereum
    Docker Compose
    Dockerfile
    Apache Brooklyn
    Results...
    2
    @grkvlt

    View Slide

  3. Blockchain
    Exciting, buzzword-compliant
    Alternative to databases!
    Details are a whole other talk...
    Lots of interest in Bitcoin and Ethereum
    Private blockchains as an alternative
    Any questions now?
    @grkvlt

    View Slide

  4. Hyperledger
    Another part of the Linux Foundation
    Various Blockchain implementations
    Open source code from IBM and Intel
    Fabric, Sawtooth, Burrow
    @grkvlt

    View Slide

  5. Sawtooth
    Originally Intel Blockchain
    Donated to Hyperledger as Sawtooth
    New PoET consensus mechanism
    Proof of Elapsed Time
    Uses Skylake SGX secure enclave feature
    No burning the energy equivalent of a small country
    Pluggable consensus mechanism
    Various different transaction families
    @grkvlt

    View Slide

  6. Ethereum
    Public and open EVM specification
    Reference implementation as Ethereum
    Solidity code for Smart Contracts
    Execute logic to determine if transaction is accepted
    Also ERC-20 standard for tokens/coins
    Code for EVM from Burrow
    Seth transaction family implements EVM
    @grkvlt

    View Slide

  7. Docker Compose
    Simple prototyping on a single machine
    Compose YAML files supplied in Sawtooth repository
    Extend these to build custom deployment
    Using Docker with clustered networking
    Just add SDN driver of your choice or Overlay
    @grkvlt

    View Slide

  8. Dockerfile
    Issues with Sawtooth Docker images
    Designed for development
    Need GitHub repository mounted as volume
    Huge images, multi Gigabyte
    Broken builds and repository code in flux
    Create new Dockerfiles for extra images needed
    @grkvlt

    View Slide

  9. Apache Brooklyn
    Orchestrate Docker across multiple VMs
    Same functionality as Compose, almost
    Define containers and their relationships
    Inject various bits of configuration
    Easier than building a lot more custom Docker images
    Allows simple scaling, but see Swarm and services
    Eventually want to use more features like policies
    @grkvlt

    View Slide

  10. Orchestrate Docker across multiple VMs
    Same functionality as Compose, almost
    Define containers and their relationships
    Inject various bits of configuration
    Easier than building a lot more custom Docker images
    Allows simple scaling, but see Swarm and services
    Eventually want to use more features like policies
    © Cloudsoft Corporation Dec-17 10

    View Slide

  11. Results
    Work in Progress
    Demo of injecting transactions
    Show CLI access to containers
    @grkvlt

    View Slide

  12. References
    github.com/hyperledger/sawtooth-core
    github.com/hyperledger/sawtooth-seth
    hyperledger.org/projects/sawtooth
    ethereum.github.io/yellowpaper/paper.pdf
    theethereum.wiki/w/index.php/ERC20_Token_Standard
    @grkvlt

    View Slide

  13. 13
    Questions?

    View Slide