Tracking Payment Flows in Ethereum. Michael Fröwis

Size: px
Start display at page:

Download "Tracking Payment Flows in Ethereum. Michael Fröwis"

Transcription

1 Tracking Payment Flows in Ethereum Michael Fröwis

2 Overview Content: This talk explains the differences of money-flow tracking between Bitcoin and Ethereum. We outline challenges for forensic investigations in Ethereum. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

3 What is Ethereum? Second most relevant blockchain system by market valuation Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

4 What is Ethereum? Second most relevant blockchain system by market valuation Built-in currency called Ether (ETH) Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

5 What is Ethereum? Second most relevant blockchain system by market valuation Built-in currency called Ether (ETH) Online since July 30th, 2015 Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

6 What is Ethereum? Second most relevant blockchain system by market valuation Built-in currency called Ether (ETH) Online since July 30th, second block time Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

7 Tracking Payment Flows: From Bitcoin to Ethereum Transaction graph T I T III T II T V T IV Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

8 Tracking Payment Flows: From Bitcoin to Ethereum Transaction graph Address graph T I T III T II T IV T V Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

9 Tracking Payment Flows: From Bitcoin to Ethereum Transaction graph Address graph Entity graph T I T III A C T II T IV T V B Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

10 Tracking Payment Flows: From Bitcoin to Ethereum Transaction graph Address graph Entity graph usefulness T I T II T III T IV T V A C B Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

11 Tracking Payment Flows: From Bitcoin to Ethereum Bitcoin Transaction graph Address graph Entity graph usefulness T I T II T III T IV T V A C B Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

12 Tracking Payment Flows: From Bitcoin to Ethereum Bitcoin Transaction graph Address graph Entity graph usefulness T I T II T III T IV T V A C B Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

13 Tracking Payment Flows: From Bitcoin to Ethereum Bitcoin Transaction graph Address graph Entity graph usefulness T I T II T III T IV T V A C B Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

14 Tracking Payment Flows: From Bitcoin to Ethereum Bitcoin Transaction graph Address graph Entity graph usefulness T I T II T III T IV T V A C B Ethereum Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

15 Tracking Payment Flows: From Bitcoin to Ethereum Bitcoin Transaction graph Address graph Entity graph usefulness T I T II T III T IV T V A C B Ethereum Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

16 Tracking Payment Flows: From Bitcoin to Ethereum Bitcoin Transaction graph Address graph Entity graph usefulness T I T II T III T IV T V A C B Ethereum Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

17 Ethereum Account model: Analogy std. bank transfer, accounts have balances Externally Owned Account (EOA): Alice (EOA) Balance: 3 ETH Bob (EOA) Balance: 6 ETH Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

18 Ethereum Account model: Analogy std. bank transfer, accounts have balances Externally Owned Account (EOA): Alice (EOA) Balance: 3 1 ETH tx 1 from: Alice to: Bob value: 1 ETH data: sign: Alice Bob (EOA) Balance: ETH Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

19 Ethereum Account model: Analogy std. bank transfer, accounts have balances Externally Owned Account (EOA): Alice (EOA) Balance: 3 1 ETH tx 1 from: Alice to: Bob value: 1 ETH data: sign: Alice Bob (EOA) Balance: ETH Code Account (CA) aka Smart Contract : Alice (EOA) Balance: 2 ETH The Company (CA) State Balance: 6 ETH Donations: 1 Rules IF data = donate THEN ADD 1 TO Donations Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

20 Ethereum Account model: Analogy std. bank transfer, accounts have balances Externally Owned Account (EOA): Alice (EOA) Balance: 3 1 ETH tx 1 from: Alice to: Bob value: 1 ETH data: sign: Alice Bob (EOA) Balance: ETH Code Account (CA) aka Smart Contract : Alice (EOA) Balance: 2 1 ETH tx 2 from: Alice to: Company value: 1 ETH data: donate sign: Alice The Company (CA) State Balance: Donations: ETH Rules IF data = donate THEN ADD 1 TO Donations Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

21 Ethereum Account model: Analogy std. bank transfer, accounts have balances Externally Owned Account (EOA): Alice (EOA) Balance: 3 1 ETH tx 1 from: Alice to: Bob value: 1 ETH data: sign: Alice Bob (EOA) Balance: ETH Code Account (CA) aka Smart Contract : Alice (EOA) Balance: 2 1 ETH tx 2 from: Alice to: Company value: 1 ETH data: donate sign: Alice The Company (CA) State Balance: Donations: ETH Rules IF data = donate THEN ADD 1 TO Donations Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

22 Ethereum Account model: Analogy std. bank transfer, accounts have balances Externally Owned Account (EOA): Alice (EOA) Balance: 3 1 ETH tx 1 from: Alice to: Bob value: 1 ETH data: sign: Alice Bob (EOA) Balance: ETH Code Account (CA) aka Smart Contract : Alice (EOA) Balance: 2 1 ETH tx 2 from: Alice to: Company value: 1 ETH data: donate sign: Alice The Company (CA) State Balance: ETH Donations: Rules IF data = donate THEN ADD 1 TO Donations Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

23 What Can Code Accounts Do? Activated on receipt of a transaction Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

24 What Can Code Accounts Do? Activated on receipt of a transaction Store and modify local state Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

25 What Can Code Accounts Do? Activated on receipt of a transaction Store and modify local state Arbitrary computations Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

26 What Can Code Accounts Do? Activated on receipt of a transaction Store and modify local state Arbitrary computations Create transactions: communicate, transfer Ether Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

27 What Can Code Accounts Do? Activated on receipt of a transaction Store and modify local state Arbitrary computations Create transactions: communicate, transfer Ether Why is this useful? Gambling services, decentralized exchanges, prediction markets, wallets, state channels and payment channels,... But most prominently token systems. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

28 What Is a Token System? Token: Jargon for exchangeable virtual asset, fungible or non-fungible. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

29 What Is a Token System? Token: Jargon for exchangeable virtual asset, fungible or non-fungible. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

30 What Is a Token System? Token: Jargon for exchangeable virtual asset, fungible or non-fungible. Token system: CA keeping track of token ownership and transfers. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

31 What Is a Token System? Token: Jargon for exchangeable virtual asset, fungible or non-fungible. Token system: CA keeping track of token ownership and transfers. Use-cases: Sub-VCs, crowdfunding, shares, votes, reward systems,... Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

32 How Does a Token System Work? Alice (EOA) Balance: 3 ETH My Token (CA) State Balance: Alice: 2 Bob: 0 Rules 0 ETH IF data = send ;to;val AND from val THEN SUB val FROM from ADD val TO to Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

33 How Does a Token System Work? Alice (EOA) Balance: 3 ETH My Token (CA) State Balance: Alice: 2 Bob: 0 Rules 0 ETH IF data = send ;to;val AND from val THEN SUB val FROM from ADD val TO to Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

34 How Does a Token System Work? Alice (EOA) Balance: 3 ETH tx 3 from: Alice to: My Token value: 0 ETH data: send; Bob; 2 sign: Alice My Token (CA) State Balance: Alice: 2 Bob: 0 Rules 0 ETH IF data = send ;Bob;2 AND Alice 2 THEN SUB 2 FROM Alice ADD 2 TO Bob Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

35 How Does a Token System Work? Alice (EOA) Balance: 3 ETH tx 3 from: Alice to: My Token value: 0 ETH data: send; Bob; 2 sign: Alice My Token (CA) State Balance: 0 ETH Alice: 2 2 Bob: Rules IF data = send ;Bob;2 AND Alice 2 THEN SUB 2 FROM Alice ADD 2 TO Bob Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

36 What Does It Take to Create a Token System? Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

37 What Does It Take to Create a Token System? Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

38 What Does It Take to Create a Token System? Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

39 What Does It Take to Create a Token System? Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

40 What Does It Take to Create a Token System? Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

41 What Does It Take to Create a Token System? Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

42 What Does It Take to Create a Token System? Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

43 What Does It Take to Create a Token System? You are now the owner of your own token system! Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

44 Code Reuse in Ethereum # Instances 10 K all instances Top 20 token templates busy instances Source: own research, data until May 30th, 2018 Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

45 Why Are Token Systems Interesting? Market valuation: Top Token Systems e 28 billion > Total Ether e 20 billion Sources: Etherscan, coinmarketcap.com, October 9th, 2018 Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

46 Why Are Token Systems Interesting? Alice Bob Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

47 Why Are Token Systems Interesting? 10 ETH 20 ETH Alice ETH 0.5 ETH 4 ETH 4 5 Bob Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

48 Why Are Token Systems Interesting? 10 ETH 20 ETH Alice ETH 100 VEN 40 AE 0.5 ETH 6 BNB 4 ETH 42 OMG 4 5 Bob Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

49 Why Are Token Systems Interesting? 10 ETH 20 ETH Alice ETH 100 VEN 40 AE 0.5 ETH 6 BNB 4 ETH 42 OMG 4 5 Bob Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

50 Tracking Payment Flows: From Bitcoin to Ethereum Transaction graph Address graph Entity graph usefulness T I T II T III T IV T V A C B Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

51 Challenges Only considering Ether flows gives an incomplete picture. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

52 Challenges Only considering Ether flows gives an incomplete picture. Upside: Many CAs follow standards to make them more observable. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

53 Challenges Only considering Ether flows gives an incomplete picture. Upside: Many CAs follow standards to make them more observable. Challenges: But there is no obligation for CAs to be transparent. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

54 Challenges Only considering Ether flows gives an incomplete picture. Upside: Many CAs follow standards to make them more observable. Challenges: But there is no obligation for CAs to be transparent. Automatic identification of the purpose of a system is a research topic. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

55 Take Home Messages Privacy was not a design goal of Ethereum Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

56 Take Home Messages Privacy was not a design goal of Ethereum Identifiers are more sticky than in Bitcoin. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

57 Take Home Messages Privacy was not a design goal of Ethereum Identifiers are more sticky than in Bitcoin. Ethereum wallets are built for one identifier per person. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

58 Take Home Messages Privacy was not a design goal of Ethereum Identifiers are more sticky than in Bitcoin. Ethereum wallets are built for one identifier per person. But there are efforts to improve privacy. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

59 Take Home Messages (cont d) Tracking Ether is easy, but... Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

60 Take Home Messages (cont d) Tracking Ether is easy, but... incomplete. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

61 Take Home Messages (cont d) Tracking Ether is easy, but... incomplete. tokens and other services must be considered. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

62 Take Home Messages (cont d) Tracking Ether is easy, but... incomplete. tokens and other services must be considered. programmers of CAs decide what is easily observable. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

63 Take Home Messages (cont d) Tracking Ether is easy, but... incomplete. tokens and other services must be considered. programmers of CAs decide what is easily observable. we lack adequate tools for investigations and monitoring. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

64 Take Home Messages (cont d) Why should regulators care? Ethereums is not criminals first choice. But... Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

65 Take Home Messages (cont d) Why should regulators care? Ethereums is not criminals first choice. But... everyone can issue their own financial products. Security regulation Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

66 Take Home Messages (cont d) Why should regulators care? Ethereums is not criminals first choice. But... everyone can issue their own financial products. Security regulation there are shady services and business practices. Consumer protection Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

67 Take Home Messages (cont d) Why should regulators care? Ethereums is not criminals first choice. But... everyone can issue their own financial products. Security regulation there are shady services and business practices. Consumer protection Ethereum is relevant and different. Regulators who take Bitcoin as a model may miss important aspects. Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

68 Tracking Payment Flows in Ethereum Thank you for your attention Michael Fröwis Symposium on Post-Bitcoin Cryptocurrencies - October 19th,

69 Fungible vs. Non-fungible Asset Fungible Non-fungible Symposium on Post-Bitcoin Cryptocurrencies - October 19th,