nikalexis nikos - nikalexis@gmailnikalexis nikos - [email protected] concept digital money...

63
Nikalexis Nikos - [email protected]

Upload: others

Post on 13-Jan-2020

17 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Page 2: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Blockchain

Page 3: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Page 4: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Page 5: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Page 6: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

A --> B 35

Page 7: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

A --> B 35A --> B 35

Page 8: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

A --> B 35A --> B 35

A --> B 35

A --> B 35

A --> B 35

A --> B 35

A --> B 35

Page 9: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

A --> B 35D --> E 42C --> F 78

NEXT BLOCK

Searching for a small hash...

NEXT BLOCK

Searching for a small hash...

A --> B 35D --> E 42

Page 10: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

A --> B 35D --> E 42C --> F 78

NEXT BLOCK

Solution found!

NEXT BLOCK

A --> B 35D --> E 42

Searching for a small hash...

Page 11: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

A --> B 35D --> E 42C --> F 78

NEXT BLOCK

A --> B 35D --> E 42C --> F 78

A --> B 35D --> E 42C --> F 78

A --> B 35D --> E 42C --> F 78

A --> B 35D --> E 42C --> F 78

A --> B 35D --> E 42C --> F 78

Abort searching

Solution found!

Page 12: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

~10 minutes

Page 13: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Page 14: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Value proposition

Page 15: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

= +● Optimizations

○ Fast transactions○ Upgradability

● Decentralized apps○ Programming language○ Smart contracts (API)

● Compute engine○ Storage / database○ Pay-as-you-go

● Ethereum foundation○ Users / devs community○ Constant development

Page 16: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Concept Digital money Decentralized applications

Transaction Send from Alice to Bob Send from Alice to Bob - On 1/6/2017 - If Bod’s balance < 10

Average block time ~10 minutes ~14 seconds

Founder Unknown Vitalik Buterin and team

Release method Early mining Crowdfunding $ 18M + 12M in ether

Development Uncertain / miners driven Ethereum foundation

Release date January 2009 July 2015

Market capitalization (25/5/2017)

$ ~43 billion $ ~18 billion

Page 17: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Smart contractsTrading example

Page 18: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

SELLERBUYER

Page 19: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

SELLERBUYER

Problems:Buyer could be a scammerSeller could be a scammer

Page 20: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

SELLERBUYER ESCROW

Page 21: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

SELLERBUYER ESCROW

Page 22: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

SELLERBUYER ESCROW

Problems:Escrow could be a scammerEscrow applies some fees

Page 23: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

SELLERBUYER

Page 24: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

BUYER SELLERSMART CONTRACT

Page 25: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

SELLERBUYER SMART CONTRACT

OK

Page 26: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

SELLERBUYER SMART CONTRACT

OK X

Page 27: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

BUYER SELLERSMART CONTRACT

executes:

i_am_the_buyer( )executes:

i_am_the_seller( )

Page 28: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

BUYER SELLERSMART CONTRACT

Page 29: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

BUYER SELLERSMART CONTRACT

Page 30: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

BUYER SELLERSMART CONTRACT

Page 31: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

BUYER SELLERSMART CONTRACT

received()

Page 32: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

BUYER SELLERSMART CONTRACT

received()

Page 33: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

BUYER SELLERSMART CONTRACT

X

Page 34: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

BUYER SELLERSMART CONTRACT

X

cancel()

Page 35: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

BUYER SELLERSMART CONTRACT

X

cancel()

Page 36: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Smart contractsDNS example

Page 37: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Acme Inc. DNSSMART

CONTRACT

Page 38: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Acme Inc. DNSSMART

CONTRACT

executes:register(“acme.com”, “2 Years”, )

Page 39: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Acme Inc. DNSSMART

CONTRACT

executes:register(“acme.com”, “2 Years”, )

executes:set_ns(“acme.com”, “1.2.3.4”)

Page 40: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Acme Inc. DNSSMART

CONTRACT

executes:register(“acme.com”, “2 Years”, )

executes:set_ns(“acme.com”, “1.2.3.4”)

executes:extend(“acme.com”, “1 Year”, )

Page 41: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Smart contractsBidding example

Page 42: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Bidder #1

DNSSMART

CONTRACT

executes:register_bid(“acme.com”, )

Page 43: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Bidder #1

DNSSMART

CONTRACT

executes:register_bid(“acme.com”, )

Bidder #2executes:register_bid(“acme.com”, )

Page 44: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Bidder #1

DNSSMART

CONTRACT

executes:register_bid(“acme.com”, )

Bidder #2executes:register_bid(“acme.com”, )

Bidder #3executes:register_bid(“acme.com”, )

Page 45: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

executes after bidding end period:bid_ended( )

Bidder #1

DNSSMART

CONTRACT

Bidder #2

Winner!

executes after bidding end period:bid_ended( )

executes after bidding end period:bid_ended( )

Page 46: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

executes after bidding end period:bid_ended( )

Bidder #1

DNSSMART

CONTRACT

Bidder #2

Winner!

executes after bidding end period:bid_ended( )

executes after bidding end period:bid_ended( )

now can execute:set_ns(“acme.com”, “1.2.3.4”)

Page 47: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Solidity language

Page 48: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

pragma solidity ̂ 0.4.0;

contract SimpleStorage { uint storedData;

function set(uint x) { storedData = x; }

function get() constant returns (uint) { return storedData; }}

Page 49: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

pragma solidity ̂ 0.4.0;

contract Coin { // The keyword "public" makes those variables // readable from outside. address public minter; mapping (address => uint) public balances;

// Events allow light clients to react on // changes efficiently. event Sent(address from, address to, uint amount);

// This is the constructor whose code is // run only when the contract is created. function Coin() { minter = msg.sender; }

function mint(address receiver, uint amount) { if (msg.sender != minter) return; balances[receiver] += amount; }

function send(address receiver, uint amount) { if (balances[msg.sender] < amount) return; balances[msg.sender] -= amount; balances[receiver] += amount; Sent(msg.sender, receiver, amount); }}

Page 50: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Tokens

Page 51: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

ether

Page 52: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

ether

Fiat currencies

Page 53: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Commodities

ether

Fiat currencies

Page 54: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Commodities

ether

Fiat currenciesStocks

Page 55: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Commodities

ether

Domain namesFiat currencies

Stocks

Page 56: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Commodities

ether

Domain names

IPv4/v6 ranges

Fiat currenciesStocks

Page 57: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Commodities

ether

Domain names

IPv4/v6 ranges

Fiat currencies Voting tokens / DAOsStocks

Page 58: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Commodities

ether

Domain names

IPv4/v6 ranges

Fiat currencies Voting tokens / DAOsStocks

Crowfunding /ICOs

Page 59: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Community

Page 60: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Ethereum Foundation

Page 61: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Users / Developers

Page 62: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

EEA MEMBERS

Page 63: Nikalexis Nikos - nikalexis@gmailNikalexis Nikos - nikalexis@gmail.com Concept Digital money Decentralized applications Transaction Send from Alice to Bob Send from Alice to Bob -

Nikalexis Nikos - [email protected]

Thank you!Questions?