Valentino Di Donato - Bitcoin is a digital currency whose transactions are stored into a public ledger, called blockchain, that can be viewed as a directed graph with more than 70 million nodes, where each node represents a transaction and each edge represents Bitcoins flowing from one transaction to the other. We describe a system for the visual analysis of how and when a flow of Bitcoins mixes with others in the transaction graph. Such a system relies on high-level metaphors for the representation of the graph and the size and characteristics of transactions, allowing for high level analysis of big portions of it
BitConeView: Visualization of Flows in the Bitcoin Transaction Graph
1. BitConeView: Visualization of Flows
in the Bitcoin Transaction Graph
G. Di Battista1 · V. Di Donato1 · M. Patrignani1
M. Pizzonia1 · V. Roselli1 · R. Tamassia2
1 DEPARTMENT OF ENGINEERING
ROMA TRE UNIVERSITY
2 DEPARTMENT OF COMPUTER SCIENCE
BROWN UNIVERSITY
Work partially supported by
Italian National Project
Algorithms for Massive
and Networked Data
2. Vu Pham
Valentino Di Donato
Background on Bitcoin
Bitcoin anonymity
BitConeView: Requirements
BitConeView: key concepts and metaphors
Experiments
Conclusions
Outline
3. Vu Pham
Valentino Di Donato
Background
Data Driven Innovation 201605/21/2016
Peer-to-peer
transactions
2008 S. Nakamoto. Bitcoin: A peer-to-peer electronic cash
system. Whitepaper on a popular cryptography mailing list
2009 released the first bitcoin software that launched the
network and the first units of the bitcoin cryptocurrency
Worldwide
payments
Low
processing fees
No need
for third parties
4. Vu Pham
Valentino Di Donato
The numbers
Avg # ~every 10 min
Market price (USD)
Total # Txs (M)
Blockchain size (GB)
Data Driven Innovation 201605/21/2016
5. Vu Pham
Valentino Di Donato
Background
Transactions (tx)
Blockchain
Bitcoins are trasferred by means of Transactions (Txs)
All transactions are recorded in a public ledger called Blockchain
n n + 1 n + 2Block height
Data Driven Innovation 201605/21/2016
7. Vu Pham
Valentino Di Donato
Once a tx has been processed,
the only way to spend its outputs
is to use them as inputs for other txs
n.b. some outputs may be
unspent (UTXOs)
Txs define a directed
acyclic multi-graph
Background
𝑜2
𝑖1 𝑖2
𝑜1
1
2
Data Driven Innovation 201605/21/2016
8. Vu Pham
Valentino Di Donato
Identity behind Bitcoin addresses is revealed
during a purchase for delivery purposes
when buying USD at exchanges
Third parties may be able to
track your future transactions
trace your previous activity
Bitcoin anonymity
Bitcoin is not always anonymous
Data Driven Innovation 201605/21/2016
9. Vu Pham
Valentino Di Donato
Mixing services to improve anonymity
BitLaundry
Bitcoin Fog
Bitcoin Mixer
Bitcomix
BitSafe
…
Mixing and Laundering
Thousands of
Transactions
Side effect
Mixing services facilitate money laundering
Data Driven Innovation 201605/21/2016
10. Vu Pham
Valentino Di Donato
Starting from one (or more) transaction(s)
Follow Bitcoins over time
Reveal flow patterns of interest
• Accumulation, distribution, mixing
Understand when Bitcoins are mixed up
• Understand the degree of mixing of Bitcoins over time
Evaluate effectiveness of mixing websites
BitConeView: Requirements
Data Driven Innovation 201605/21/2016
11. Vu Pham
Valentino Di Donato
Graph Server
BitConeView
P2P Network
BitConeView: System Architecture and prototype
VizSec 201510/26/2015
Bitcoin
full node
API Level DB
Server
…
Client
DEMO available at:
http://www.bitconeview.info
12. Vu Pham
Valentino Di Donato
The BitCone or cone of a transaction S is the subgraph
reachable from S within a given time limit T
Intruders are (grey) inputs coming
from outside the cone and are
responsible for the mixing
UTXOs may be unspent
at time T (grey)
at present time (black)
Other (white)
outputs are spent
BitConeView: Some key concepts
VizSec 201510/26/2015
S
T
13. Vu Pham
Valentino Di Donato
One starting tx S through its 64 digits hash
An ending date (time limit T)
BitConeView: inputs
Data Driven Innovation 201605/21/2016
14. Vu Pham
Valentino Di Donato
BitConeView
B1
S
B2
B2
B4
B6
B6
T
The system will start computing cone(S, T):
But it will not draw it as is
Data Driven Innovation 201605/21/2016
15. Vu Pham
Valentino Di Donato
Inputs of starting tx, and UTXO
BitConeView
B1
S
Block height
BTCs
Purity
0.2
1
T
0.08
BTCs entering the cone until B1
BTCs unspent until B1
0
0
B1
B2
Data Driven Innovation 201605/21/2016
16. Vu Pham
Valentino Di Donato
Intruders and UTXOs (unspent up to T or never-spent)
BitConeView
B1
S
0.7
B1
BTCs
Purity
B2
0.5
B2
B2
BTCs entering the cone until B2
BTCs unspent until B2
0.7 1
10 m
T
0
0
Block height
Data Driven Innovation 201605/21/2016
17. Vu Pham
Valentino Di Donato
Another intruder and another UTXO (unspent up to T)
BitConeView
B1
S
0.9
BTCs
Purity
0.7
B2
B2
BTCs entering the cone until B4
BTCs unspent until B4
B4
B4
1
10 m
20 m
0.6
T
0
0
B1
B2
Block height
Data Driven Innovation 201605/21/2016
18. Vu Pham
Valentino Di Donato
No intruders, more unspent outputs
BitConeView
B1
S
0.9
BTCs
Purity1
0.7
B2
B2
BTCs entering the cone until B6
BTCs unspent until B6
B4
B6
B6
10 m
20 m
20 m
0.6
T
0
0
Block
height
B4
B1
B2
B6
Data Driven Innovation 201605/21/2016
19. Vu Pham
Valentino Di Donato
BitConeView
[USAGE VIDEO]
Data Driven Innovation 201605/21/2016
20. Vu Pham
Valentino Di Donato
Experiments with BitLaundry
Starting txs from [Moser et al. 2013]
(a) the injected Bitcoins are mixed after ~10 h
(b) BitLaundry is less effective
(a) (b)
Data Driven Innovation 201605/21/2016
21. Vu Pham
Valentino Di Donato
Experiments with Bitcoin Fog
[Moser et al. 2013]
BTCs used as payout by
mixing services often come
from txs that are part of
long chains in which each
tx distributes small
amounts of BTCs
At the apex of the chains is
common to find very large
txs that bundle Bitcoins
40,000 BTCs > 10M USD!
Data Driven Innovation 201605/21/2016
22. Vu Pham
Valentino Di Donato
Accumulation pattern
~150 inputs in txs falling in the same block
1 final transaction bundling 1000 Bitcoins
Twice!
Data Driven Innovation 201605/21/2016
23. Vu Pham
Valentino Di Donato
Conclusions
We presented a system for the visual analysis
of flows in the Blockchain
We introduced the concept of purity of Bitcoins
We analyzed many real money laundering
processes
Conclusions
Data Driven Innovation 201605/21/2016
24. Vu Pham
Valentino Di Donato
Want to know more about Blockchain/Bitcoin?
Blockchain Education Network Italia
Dedicated to students
• Facebook: https://www.facebook.com/BlockchainEduIT
• Twitter: https://twitter.com/BlockchainEduIT
• Sito Web: http://blockchainedu.net/
• Email: info@blockchainedu.net
• Talk to: Emiliano Palermo
Blockchain Education Network Italia
Data Driven Innovation 201605/21/2016