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

Blockchain, Cryptocurrencies, Decentralized Applications and beyond.

Blockchain, Cryptocurrencies, Decentralized Applications and beyond.

The need for blockchain. What exactly is blockchain? How is the blockchain implemented? Mining, Consensus, Rewards and decentralization. Application of blockchain, problems to blockchain.

Satwik Kansal

April 16, 2018
Tweet

More Decks by Satwik Kansal

Other Decks in Technology

Transcript

  1. Blockchain
    Blockchain
    Understanding blockchain technologies
    from scratch.
    By
    Satwik Kansal
    (https://satwikkansal.xyz)

    View full-size slide

  2. A humble
    question
    How many of you have tried to
    learn blockchain in the past and
    found it to be a complicated and
    confusing technology?

    View full-size slide

  3. Purpose of the
    session...

    View full-size slide

  4. Blockchain is a very simple concept on
    it’s own.
    In the following slides, we’ll
    - Understand the “need” of blockchain
    - Learn how blockchain works
    interactively
    - See some real word applications and
    technology advancements.

    View full-size slide

  5. The present world we
    live in...

    View full-size slide

  6. Current state of internet-based apps
    - An integral part of our lives
    - Immense improvement in the past 10 years (BFC)
    However, there are problems
    - Too many middle-men
    - Black box operation of the apps
    - It’s centralized and concentrated!

    View full-size slide

  7. So most of the apps run
    on “trust”.

    View full-size slide

  8. But Satoshi had an

    View full-size slide

  9. Enter Bitcoin!
    - Whitepaper titled Bitcoin: A Peer-to-Peer Electronic
    Cash System
    - No need to trust a centralized authority (like
    banks) to make payments.
    - Combination of cryptography, peer-to-peer
    networks and several other concepts from the
    past to achieve all this.
    - The data was stored in a thing called “blockchain”

    View full-size slide

  10. What banks primarily do?
    - Maintain a record of transactions
    Bitcoin, did exactly this! And in a transparent and automated fashion!

    View full-size slide

  11. Okay enough, but
    what exactly is this
    “Blockchain”?

    View full-size slide

  12. Highest level definition of blockchain
    - It’s a way to store data.
    - The data can literally be anything!
    - In Bitcoin’s case, the data was “who paid how much to whom”, but it can
    even be virtual cats.
    - Blockchain offers highly desirable characteristics
    - Immutability
    - Un-hackablity
    - Persistence

    View full-size slide

  13. Tell me how blockchain
    is implemented!

    View full-size slide

  14. Blockchain is a “glorified”
    linked list!

    View full-size slide

  15. Linking via hashes in the blockchain

    View full-size slide

  16. Hash function
    The characteristics of an ideal hash
    function are:
    ● Easily computed
    ● High degree of randomness
    ● Not reversible

    View full-size slide

  17. What hashing and linking does?
    - Hashes serve as “fingerprint” of data.
    - It enables us to
    - Detect modifications to the data
    - Make hacker do extra work if he intends to manipulate the data.
    But guess what?, there’s a problem :(

    View full-size slide

  18. Making the “extra work” difficult
    - a.k.a Proof of work.
    - Adding constraints to acceptable block hashes.
    - Let’s see “Hashcash” with a live example.

    View full-size slide

  19. Uh, wait! There is still a
    problem.

    View full-size slide

  20. Beyond blockchain

    View full-size slide

  21. Enter Decentralization
    Peer-to-Peer
    Client-server
    (centralized)

    View full-size slide

  22. Immutability
    Un-hackablity
    Persistence
    Elimination of “trust”?
    Summing up till now

    View full-size slide

  23. Concerns with Bitcoin
    - 51% attack
    - Network congestion
    - High fees
    - Energy sustainability
    - Quantum attacks
    - Limited application (payments, and
    storage of wealth)

    View full-size slide

  24. Technological Advancements: Smart
    contracts
    It became possible to entirely automate the
    processes of trust like voting, maintaining
    ownership of an asset (car, property, posts,
    etc), replacing intermediaries with
    automatically executing pieces of code.

    View full-size slide

  25. Smart
    Contracts
    example

    View full-size slide

  26. Blockchain 3.0: Other Technological
    Advancements
    ● Smart contracts
    ● Proof of Stake
    ● Block-DAGs
    ● Permissioned
    chains
    ● Gossip protocol
    and the quest
    continues...

    View full-size slide

  27. Blockchain 3.0: A promising future?
    - Governance through blockchain (DecisionToken)
    - Digital identity (Civic Platform)
    - Supply chain management (Modum)
    - Renewable Energy Trading (Power Ledger)
    - Distributed computation (GridCoin, Golem Network)
    - Distributed storage (StorJ)

    View full-size slide

  28. A few roadblocks, however
    - Regulations? Good or bad?
    - Threat to centralization
    - Wide adoption
    - Solutions looking for problems
    - INSANITY! (Shitcoins, shilling, FOMO and FUD)

    View full-size slide

  29. Developing stuff with blockchain
    - Shameless Plug: Implementing a blockchain app from scratch in
    Python https://github.com/satwikkansal/ibm_blockchain
    OLIDITY
    Serpent
    Lisp Like Language

    View full-size slide

  30. Thank you!
    A bit more about me...
    - Freelance Developer (Data Science and
    Blockchain Technologies)
    - Author, IBM developerWorks, "What the
    f*ck Python?"
    - GSoC 17 student, GCI 17 and GSoC 18
    mentor
    - Rank 1 Github python developer in India
    [email protected]
    Handle: @satwikkansal

    View full-size slide