ulrich gallersdörfer, m.sc. 2018, sebis-day · money in blockchain networks (like bitcoin or...

12
Chair of Software Engineering for Business Information Systems (sebis) Faculty of Informatics Technische Universität München wwwmatthes.in.tum.de Research and Development in Blockchain Ulrich Gallersdörfer, M.Sc. 2018, Sebis-Day

Upload: others

Post on 14-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ulrich Gallersdörfer, M.Sc. 2018, Sebis-Day · Money in Blockchain networks (like Bitcoin or Ethereum) are easy to track Transactions reference to previous transactions Hardly a

Chair of Software Engineering for Business Information Systems (sebis)

Faculty of Informatics

Technische Universität München

wwwmatthes.in.tum.de

Research and Development in BlockchainUlrich Gallersdörfer, M.Sc. – 2018, Sebis-Day

Page 2: Ulrich Gallersdörfer, M.Sc. 2018, Sebis-Day · Money in Blockchain networks (like Bitcoin or Ethereum) are easy to track Transactions reference to previous transactions Hardly a

Outline

1. Analysis of Cross-Blockchain Transactions

2. Design Patterns in Solidity

3. Current (and future) Research

© sebis180920 Gallersdoerfer Blockchain @ Sebis 2

Page 3: Ulrich Gallersdörfer, M.Sc. 2018, Sebis-Day · Money in Blockchain networks (like Bitcoin or Ethereum) are easy to track Transactions reference to previous transactions Hardly a

Transactions in Blockchains are easy to track

© sebis180920 Gallersdoerfer Blockchain @ Sebis 3© sebis 3

Tx2

From To

Tx0

From To

Tx1

From To

Tx3

From To

▪ Money in Blockchain networks (like Bitcoin or

Ethereum) are easy to track

▪ Transactions reference to previous transactions

▪ Hardly a way to hide where the money came from

▪ Mixing services (which disguise the origin of coins)

are hardly used

➔ Scam and theft still a dominant problem without a possibility to efficiently track the money

Page 4: Ulrich Gallersdörfer, M.Sc. 2018, Sebis-Day · Money in Blockchain networks (like Bitcoin or Ethereum) are easy to track Transactions reference to previous transactions Hardly a

Coins are exchanged to other currencies

© sebis180920 Gallersdoerfer Blockchain @ Sebis 4

Why are we not able to efficiently track the money? ➔ Currencies are changed into other currencies.

Trading Platforms Instant Cryptocurrency Exchange

Trading platforms are not used, as an exchange is time consuming and requires user registration.

Instant Cryptocurrency Exchanges allow a direct exchange of two currencies.

1. Is it possible to detect a transaction for a instant cryptocurrency exchange?

2. Is it possible to track the flow of money across different currencies?

Page 5: Ulrich Gallersdörfer, M.Sc. 2018, Sebis-Day · Money in Blockchain networks (like Bitcoin or Ethereum) are easy to track Transactions reference to previous transactions Hardly a

We trace cross-blockchain transactions

© sebis180920 Gallersdoerfer Blockchain @ Sebis 5

• Transaction data from two Blockchains

• Exchange Rates based on prices,

exchange fees & transaction fees

• Exchange Duration based on Timestamps

• Known Exchange Addresses

Data usage

• Very high volume (200 Mio. / month)

• High detection rate of exchange

transactions (92%)

• Correct matching very hard due to

• Many possible exchange pairs

• Over 30 cryptocurrencies

• Very small transaction amounts

• However, high volume tx traceable

Findings

Page 6: Ulrich Gallersdörfer, M.Sc. 2018, Sebis-Day · Money in Blockchain networks (like Bitcoin or Ethereum) are easy to track Transactions reference to previous transactions Hardly a

Outline

1. Analysis of Cross-Blockchain Transactions

2. Design Patterns in Solidity

3. Current (and future) Research

© sebis180920 Gallersdoerfer Blockchain @ Sebis 6

Page 7: Ulrich Gallersdörfer, M.Sc. 2018, Sebis-Day · Money in Blockchain networks (like Bitcoin or Ethereum) are easy to track Transactions reference to previous transactions Hardly a

Smart Contract Software Engineering is hard

© sebis180920 Gallersdoerfer Blockchain @ Sebis 7

Contract-based

language

Notion

of money

One single bug can

be fatal

High computational

costs

Page 8: Ulrich Gallersdörfer, M.Sc. 2018, Sebis-Day · Money in Blockchain networks (like Bitcoin or Ethereum) are easy to track Transactions reference to previous transactions Hardly a

We collected 14 different patterns

© sebis180920 Gallersdoerfer Blockchain @ Sebis 8

Behavioral

Security

Upgradeability

Economic

1. Guard Check

2. State Machine

3. Oracle

4. Randomness

5. Access Restriction / Ownable

6. Check Effects Interactions

7. Secure Ether Transfer

8. Pull over Push

9. Emergency Stop

10.Proxy Delegate

11.Eternal Storage

12.String Equality Comparison

13.Tight Variable Packing

14.Memory Array Building

Page 9: Ulrich Gallersdörfer, M.Sc. 2018, Sebis-Day · Money in Blockchain networks (like Bitcoin or Ethereum) are easy to track Transactions reference to previous transactions Hardly a

We measure the usage of these patterns

© sebis180920 Gallersdoerfer Blockchain @ Sebis 9

• Increasing usage

• Doubled usage

from 10% to over

20% in only two

months

• >20% of contracts

Patterns are heavily used in Smart Contract development community!

With bytecode analysis, we are able to measure common standards.

Ownable Pattern

Page 10: Ulrich Gallersdörfer, M.Sc. 2018, Sebis-Day · Money in Blockchain networks (like Bitcoin or Ethereum) are easy to track Transactions reference to previous transactions Hardly a

Outline

1. Analysis of Cross-Blockchain Transactions

2. Design Patterns in Solidity

3. Current (and future) Research

© sebis180920 Gallersdoerfer Blockchain @ Sebis 10

Page 11: Ulrich Gallersdörfer, M.Sc. 2018, Sebis-Day · Money in Blockchain networks (like Bitcoin or Ethereum) are easy to track Transactions reference to previous transactions Hardly a

Data Analytics in Blockchain

© sebis180920 Gallersdoerfer Blockchain @ Sebis 11

Ethereum Bitcoin

Public Blockchains offer rich data sets

➔Data is highly diverse: Transaction Data, User

accounts, Smart Contracts (95% Bytecode, 5%

Source Code), Flow of money

These Data allows for various analytics

➔Usage of Software Patterns (current project)

➔ Trends in Blockchain

➔Meta-services (Origin of Money, Taxes, …)

➔ If data analytics is interesting for you, talk to me.

Size

Growth

100 GB 180 GB

8Gb/Month 4Gb/Month

Tx 309 Mio. 340 Mio.

Contracts 5,6 Mio. ---

Page 12: Ulrich Gallersdörfer, M.Sc. 2018, Sebis-Day · Money in Blockchain networks (like Bitcoin or Ethereum) are easy to track Transactions reference to previous transactions Hardly a

Technische Universität München

Faculty of Informatics

Chair of Software Engineering for Business

Information Systems

Boltzmannstraße 3

85748 Garching bei München

Tel +49.89.289.

Fax +49.89.289.17136

wwwmatthes.in.tum.de

Ulrich Gallersdörfer

M.Sc.

17137

[email protected]

Wissenschaftlicher Mitarbeiter