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.

Blockchain and IoT / Atlanta BlockChainConf

Ethereum based blockchains as a protocol for IoT networks

  • Login to see the comments

  • Be the first to like this

Blockchain and IoT / Atlanta BlockChainConf

  1. 1. 1 Blockchain is for Robots i.e not for Humans Igor Artamonov ETCDEV Atlanta, GA, 2018
  2. 2. 2 Software engineer, distributed systems, data processing, security, Java Followed Ethereum Classic blockchain when Ethereum ETH made the fork in 2016, which violated base principles of public blockchain. Founder of ETCDEV, a leading Ethereum Classic development company with a strong focus on decentralized computing providing long term support for the ETC blockchain. Igor Artamonov
  3. 3. Going to talk about what is blockchain, smart contracts, IoT 3
  4. 4. What is Smart Contract? 4
  5. 5. 5 Token • A code that keeps track of a balance of its users • User A can send X tokens to user B • getBalance(A) • transfer(A, B, X) -> • balance A minus X • balance B add X
  6. 6. 6
  7. 7. 7
  8. 8. A function that operates data stored on blockchain. No UI, no external dependencies, just blockchain. 8
  9. 9. 9 "A smart contract is a computer protocol intended to digitally facilitate, verify, or enforce the negotiation or performance of a contract.» From Wikipedia Smart contracts were first proposed by Nick Szabo, who coined the term in 1994
  10. 10. Examples of Legal Smart Contracts 10
  11. 11. 11 Insurance You pay to a Smart Contract and in the event of a covered loss you get compensation from that contract. But the event happens offline, people are trusted parties in that schema. And then can talk to each other w/o blockchain
  12. 12. 12 Tokens A Smart Contract provides you a functionality of sending/receiving some digital assets
  13. 13. 13
  14. 14. Most of the people understand Smart Contract in legal terms. Not always true, sometimes it is just a code executed on blockchain. In many cases humans are not involved. In most cases there are no legal agreement and it’s not enforceable. 14
  15. 15. Smart Contracts is a program executed on blockchain, but the term «Contract» influenced the industry too much, everyone is trying to issue a token or make some legal agreement on blockchain now :( IBM Hyperledger has term «chaincode» which maybe better represents the idea 15
  16. 16. Maybe it’s not for humans? 16
  17. 17. A machine-to-machine protocol for communication and agreements? Robotics/autonomous cars/home automation? 17
  18. 18. EVM Ethereum Virtual Machine 18
  19. 19. JVM & Java were invented for devices Write Once, Run Anywhere 19
  20. 20. Unfortunately it was also Write Once, Debug Everywhere 20
  21. 21. 21
  22. 22. No Timezones in EVM 22
  23. 23. No Filesystem in EVM 23
  24. 24. No Networking in EVM 24
  25. 25. No Random Values in EVM 25
  26. 26. No Floating Point in EVM 26
  27. 27. Sometimes to move into one directions you need to be limited in may other directions 27
  28. 28. 28 Ethereum Virtual machine is close to mathematical function, code executed in it will always produce exactly same result for same inputs, and it works in a fully isolated environment. It’s a fully deterministic, architecture neutral, portable and secure. Can recover from issues, data loss. Easy to debug. Easy to build fault tolerant systems.
  29. 29. 29 SputnikVM
 A standalone & embeddable EVM, compatible with most of Ethereum based blockchains. IoT is one of the main targets Open Source, Apache 2
  30. 30. What problems of IoT can be solved or what can be improved? 30
  31. 31. Hardware Difference 31 Basically what what proposed by JVM, a developer shouldn’t care about underlying hardware. A developer writes, tests and debugs code using one OS + hardware, run on another platform and it works in exactly same way
  32. 32. What blockchain really provides? 32
  33. 33. Blockchain is extremely slow Database 33
  34. 34. Blockchain is extremely slow VM 34
  35. 35. Using blockchain you’re paying a high price Price of what? 35
  36. 36. Decentralization 36
  37. 37. Centralisation in IoT??? 37
  38. 38. 38
  39. 39. 39
  40. 40. 40
  41. 41. 41
  42. 42. 42
  43. 43. 43
  44. 44. Hardware + OS 44 It’s hard to write code for different hardware (and operating system) Easier to outsource as much as possible to a central server with more comfortable environment EVM can be that comfortable environment to execute business logic
  45. 45. Security 45 Security is hard, especially when device is not under your control Easier to have central server with all security stuff Blockchain is designed for insecure environments
  46. 46. Updates 46 End users never do updates, automatic updates are hard Central server is always up-to-date Smart contract based logic easier to update
  47. 47. Blockchain based design 47
  48. 48. 48 • Separate blockchain for a network of devices, maybe private and isolated, maybe a sidechain • Proof-of-Work is too expensive for such kind of applications, so some trusted setup • Some devices can’t afford a full node, but can be powerful enough to send transactions to the network • With trusted local network you can listen to events on EVM running on another device
  49. 49. 49
  50. 50. 50
  51. 51. 51
  52. 52. 52
  53. 53. Thank You 53
  54. 54. 54 ETCDEV Ethereum Classic Igor Artamonov @splix