nikalexis nikos - nikalexis@gmailnikalexis nikos - nikalexis@gmail.com concept digital money...
Post on 13-Jan-2020
17 Views
Preview:
TRANSCRIPT
Nikalexis Nikos - nikalexis@gmail.com
Nikalexis Nikos - nikalexis@gmail.com
Blockchain
Nikalexis Nikos - nikalexis@gmail.com
Nikalexis Nikos - nikalexis@gmail.com
Nikalexis Nikos - nikalexis@gmail.com
Nikalexis Nikos - nikalexis@gmail.com
A --> B 35
Nikalexis Nikos - nikalexis@gmail.com
A --> B 35A --> B 35
Nikalexis Nikos - nikalexis@gmail.com
A --> B 35A --> B 35
A --> B 35
A --> B 35
A --> B 35
A --> B 35
A --> B 35
Nikalexis Nikos - nikalexis@gmail.com
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
Nikalexis Nikos - nikalexis@gmail.com
A --> B 35D --> E 42C --> F 78
NEXT BLOCK
Solution found!
NEXT BLOCK
A --> B 35D --> E 42
Searching for a small hash...
Nikalexis Nikos - nikalexis@gmail.com
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!
Nikalexis Nikos - nikalexis@gmail.com
~10 minutes
Nikalexis Nikos - nikalexis@gmail.com
Nikalexis Nikos - nikalexis@gmail.com
Value proposition
Nikalexis Nikos - nikalexis@gmail.com
= +● 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
Nikalexis Nikos - nikalexis@gmail.com
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
Nikalexis Nikos - nikalexis@gmail.com
Smart contractsTrading example
Nikalexis Nikos - nikalexis@gmail.com
SELLERBUYER
Nikalexis Nikos - nikalexis@gmail.com
SELLERBUYER
Problems:Buyer could be a scammerSeller could be a scammer
Nikalexis Nikos - nikalexis@gmail.com
SELLERBUYER ESCROW
Nikalexis Nikos - nikalexis@gmail.com
SELLERBUYER ESCROW
Nikalexis Nikos - nikalexis@gmail.com
SELLERBUYER ESCROW
Problems:Escrow could be a scammerEscrow applies some fees
Nikalexis Nikos - nikalexis@gmail.com
SELLERBUYER
Nikalexis Nikos - nikalexis@gmail.com
BUYER SELLERSMART CONTRACT
Nikalexis Nikos - nikalexis@gmail.com
SELLERBUYER SMART CONTRACT
OK
Nikalexis Nikos - nikalexis@gmail.com
SELLERBUYER SMART CONTRACT
OK X
Nikalexis Nikos - nikalexis@gmail.com
BUYER SELLERSMART CONTRACT
executes:
i_am_the_buyer( )executes:
i_am_the_seller( )
Nikalexis Nikos - nikalexis@gmail.com
BUYER SELLERSMART CONTRACT
Nikalexis Nikos - nikalexis@gmail.com
BUYER SELLERSMART CONTRACT
Nikalexis Nikos - nikalexis@gmail.com
BUYER SELLERSMART CONTRACT
Nikalexis Nikos - nikalexis@gmail.com
BUYER SELLERSMART CONTRACT
received()
Nikalexis Nikos - nikalexis@gmail.com
BUYER SELLERSMART CONTRACT
received()
Nikalexis Nikos - nikalexis@gmail.com
BUYER SELLERSMART CONTRACT
X
Nikalexis Nikos - nikalexis@gmail.com
BUYER SELLERSMART CONTRACT
X
cancel()
Nikalexis Nikos - nikalexis@gmail.com
BUYER SELLERSMART CONTRACT
X
cancel()
Nikalexis Nikos - nikalexis@gmail.com
Smart contractsDNS example
Nikalexis Nikos - nikalexis@gmail.com
Acme Inc. DNSSMART
CONTRACT
Nikalexis Nikos - nikalexis@gmail.com
Acme Inc. DNSSMART
CONTRACT
executes:register(“acme.com”, “2 Years”, )
Nikalexis Nikos - nikalexis@gmail.com
Acme Inc. DNSSMART
CONTRACT
executes:register(“acme.com”, “2 Years”, )
executes:set_ns(“acme.com”, “1.2.3.4”)
Nikalexis Nikos - nikalexis@gmail.com
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”, )
Nikalexis Nikos - nikalexis@gmail.com
Smart contractsBidding example
Nikalexis Nikos - nikalexis@gmail.com
Bidder #1
DNSSMART
CONTRACT
executes:register_bid(“acme.com”, )
Nikalexis Nikos - nikalexis@gmail.com
Bidder #1
DNSSMART
CONTRACT
executes:register_bid(“acme.com”, )
Bidder #2executes:register_bid(“acme.com”, )
Nikalexis Nikos - nikalexis@gmail.com
Bidder #1
DNSSMART
CONTRACT
executes:register_bid(“acme.com”, )
Bidder #2executes:register_bid(“acme.com”, )
Bidder #3executes:register_bid(“acme.com”, )
Nikalexis Nikos - nikalexis@gmail.com
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( )
Nikalexis Nikos - nikalexis@gmail.com
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”)
Nikalexis Nikos - nikalexis@gmail.com
Solidity language
Nikalexis Nikos - nikalexis@gmail.com
pragma solidity ̂ 0.4.0;
contract SimpleStorage { uint storedData;
function set(uint x) { storedData = x; }
function get() constant returns (uint) { return storedData; }}
Nikalexis Nikos - nikalexis@gmail.com
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); }}
Nikalexis Nikos - nikalexis@gmail.com
Tokens
Nikalexis Nikos - nikalexis@gmail.com
ether
Nikalexis Nikos - nikalexis@gmail.com
ether
Fiat currencies
Nikalexis Nikos - nikalexis@gmail.com
Commodities
ether
Fiat currencies
Nikalexis Nikos - nikalexis@gmail.com
Commodities
ether
Fiat currenciesStocks
Nikalexis Nikos - nikalexis@gmail.com
Commodities
ether
Domain namesFiat currencies
Stocks
Nikalexis Nikos - nikalexis@gmail.com
Commodities
ether
Domain names
IPv4/v6 ranges
Fiat currenciesStocks
Nikalexis Nikos - nikalexis@gmail.com
Commodities
ether
Domain names
IPv4/v6 ranges
Fiat currencies Voting tokens / DAOsStocks
Nikalexis Nikos - nikalexis@gmail.com
Commodities
ether
Domain names
IPv4/v6 ranges
Fiat currencies Voting tokens / DAOsStocks
Crowfunding /ICOs
Nikalexis Nikos - nikalexis@gmail.com
Community
Nikalexis Nikos - nikalexis@gmail.com
Ethereum Foundation
Nikalexis Nikos - nikalexis@gmail.com
Users / Developers
Nikalexis Nikos - nikalexis@gmail.com
EEA MEMBERS
Nikalexis Nikos - nikalexis@gmail.com
Thank you!Questions?
top related