Aleš Janda - Deanonymizace blockchainu. Ve veřejné databázi bitcoinových transakcí, tzv. blockchainu, po sobě trvale účastníci zanechávají mnoho indicií, které je mohou s určitou pravděpodobností pomoci identifikovat. – Je Bitcoin skutečně anonymní? Jakým způsobem lze blockchain analyzovat a co lze ze znalosti pouhé bitcoinové adresy? Jak fungují mixovací služby? Můžeme se jejich použitím chránit proti sledování?
2. DEANONYMIZACE - CO TO JE?
Co může být bráno jako narušení soukromí?
• kolik člověk vlastní bitcoinů
• kde je vzal
• kolik bitcoinů posílá
• komu je odesílá
• účel jednotlivých plateb
• kde se nachází, jakého klienta používá apod.
4. MOTIVACE
Proč by někdo měl chtít zjišťovat účastníky transakce?
• jen tak, protože může :-)
• stopuje, kam jdou peníze po nějaké krádeži
• šmírování zákazníků
• zjišťování příjmů finančním úřadem
• vytipovávání zajímavých cílů
6. ZPŮSOBY DEANONYMIZACE
Jak zjistit majitele a další infomace o adrese?
• zkusíme adresu vygooglovat (příp. hledání různých v diskusích)
• tag na Blockchain.info a podobných stránkách
• podle transakcí v blockchainu
• podle trafficu na síti
10. JAK FUNGUJÍ TRANSAKCE
tx 111
aaa:1 1. 1xyz, 1 BTC
bbb:5 2. 1ABC, 2 BTC
ccc:3
tx 222
ddd:2 1. 1ABC, 0,5 BTC
eee:1 2. 1zyx, 0,3 BTC
111:2 1DEF, 2,25 BTC
222:1 1ghi, 0,25 BTC
Vstupy do transakce jsou výstupy z předchozích transakcí.
Vstup je utracen vždy vcelku. Případné přebytky jdou na
tzv. change adresu. Poplatek těžařovi je rozdíl vstupu a výstupu.
Coinbase transakce (odměna těžařovi) nemá vstupy, pouze výstupy.
11. TEST ROZPOZNÁNÍ
Kolik a kam se posílá bitcoinů?
TxID: 8cd58bdc6b27fd9b664e2499e9ae7d8fd8ab61757a14e9face89b1d3ce72e8d4
1LATvNyAt2ouTQyv3uNEVm8yR8KbEGxvJr 0,068 BTC
A 14mypXzXo5Y6mkeZBscFSWq9b1NTxDcJvy 0,02 BTC
B 1LATvNyAt2ouTQyv3uNEVm8yR8KbEGxvJr 0,048 BTC
Poplatek: 0 BTC
12. TEST ROZPOZNÁNÍ
Kolik a kam se posílá bitcoinů?
TxID: 3f4735eb3beb164150000b90fba6055bcff7a08ecba9352b7d29f404a658d2c9
1suji4XFc68v87uJJwsFUSewyJTvE8FrQ 0,01369061 BTC
1suji4XFc68v87uJJwsFUSewyJTvE8FrQ 0,02896546 BTC
1suji4XFc68v87uJJwsFUSewyJTvE8FrQ 0,00174269 BTC
1suji4XFc68v87uJJwsFUSewyJTvE8FrQ 0,02712181 BTC
1suji4XFc68v87uJJwsFUSewyJTvE8FrQ 0,06895527 BTC
1suji4XFc68v87uJJwsFUSewyJTvE8FrQ 0,10085985 BTC
1suji4XFc68v87uJJwsFUSewyJTvE8FrQ 0,15348351 BTC
1suji4XFc68v87uJJwsFUSewyJTvE8FrQ 0,04114497 BTC
1suji4XFc68v87uJJwsFUSewyJTvE8FrQ 0,99588886 BTC
A 1EmBiFTJKSjTFfHn7VJ1AM9VRC1Fk5SoCk 1 BTC
B 1suji4XFc68v87uJJwsFUSewyJTvE8FrQ 0,43165303 BTC
Poplatek: 0,0002 BTC
13. TEST ROZPOZNÁNÍ
Kolik a kam se posílá bitcoinů?
TxID: 80f6247937daa9ffd866e616abd337177d734a35f847669c41ec358817f3a7e8
1Chn6PqrsZqtNUDehV8FNMJRsjKL2jGjXd 0,0709 BTC
A 18tErV8Tg3ZPrBg7m3cjDZkajEtvfzWYfh 0,0708 BTC
Poplatek: 0,0001 BTC
14. TEST ROZPOZNÁNÍ
Kolik a kam se posílá bitcoinů?
TxID: a52997fa37fee82c0bf16638f5ec66bb0df999034c6b21bf9b8747c1abed994f
1ErNhAgXpoySZputneMZYetiVSsb8FqdyM 2,0291 BTC
A 1QJiPuNVFACQpa34ah3GRZ7Qy237GjYADK 0,9291 BTC
B 1Dev6rTow1XgJDAdVTxTf8FC55Xoe4tY5D 1,1 BTC
Poplatek: 0 BTC
15. TEST ROZPOZNÁNÍ
Kolik a kam se posílá bitcoinů?
TxID: 697699797160497048258d35a491929772d3afdb4d39e2f3b1215f69f34f95e4
1JrCD4qRwUoQdqsRN1VrH7E29znWE3zaoa 0,00464126 BTC
1JrCD4qRwUoQdqsRN1VrH7E29znWE3zaoa 0,04006348 BTC
1sXxhNAt7Dz1Pxf4f6meKvUa8sEedoqGE 0,01005986 BTC
1BYDgLewPsz2NvDorje8AAQKy3WDio5NNm 0,0100522 BTC
1JrCD4qRwUoQdqsRN1VrH7E29znWE3zaoa 0,04614828 BTC
A 1DouQpqg3Q5Go7FULMsZtVa2dc6nrVJKHh 0,01002758 BTC
B 16S5kyMHqNdZBnJKDtvpBt5BqpGEB2MQ5K 0,1009375 BTC
Poplatek: 0 BTC
16. TEST ROZPOZNÁNÍ
Kolik a kam se posílá bitcoinů?
TxID: bd919071552bad554528adfc5c61cd77cc25e15ae0f69c8d3e65aee9ec8adc20
1MF7WyMz4H2kdE33yPfMTdLeRMp7xTHSrQ 1,6
1Cn1HeoFkqXJMrnvrzNQgEGH4qZGGFZdzn 188,56317119 BTC
A 1GHTmHChcQGrP5m3kZdFV2knSJekmiNP9e 4,2061 BTC
B 1Ks1z4Mkb4CATRoTuiSqNbTXeiUYufxtSv 185,95688319 BTC
Poplatek: 0,000188 BTC
17. TEST ROZPOZNÁNÍ
Kolik a kam se posílá bitcoinů?
TxID: 5a0ce1166ff8e6800416b1aa25f1577e233f230bd21204a6505fa6ee5a9c5fc6
18GZnvp1pEbQNN7vvVtUwFteY9j7P9jZpX 42,4 BTC
A 14WQLoMpHc4rGm46HUkE76sW1mPjpXXXr4 8,52355579 BTC
B 1AtHtytt5mUTHRGnkioZe33EpRfLKg3Wyx 33,87644421 BTC
Poplatek: 0 BTC
18. TEST ROZPOZNÁNÍ
Kolik a kam se posílá bitcoinů?
TxID: 15796981d90b9ecbce09a9e8a7b4f447566f2f859b808f4e940fb3b6ac17d3d5
18j1Gzce92GCMkHVfqqj6ywywPBsvDDpgB 0,01 BTC
139Yd9DyRcjePmttwdUkz3pk2kkrKEAMRc 0,045 BTC
17hAdyVKbbPbrmi2DCEQaNGzdNwwGr2Hyd 0,01 BTC
1HbFrgL3wJzU1UYpUjJMMi4YrXewUN5REJ 1,33602445 BTC
A 1MjM6JZvFeAMiNcnLQ3nJeYxv8kJG1agqi 0,025 BTC
B 1GdFxJLwGSUYkM4f9gBwi6eVYBmm3mwqzx 0,231 BTC
C 12eyrxmvjvKkw4hvigbVECMmT9qT46MWjE 0,51 BTC
D 1FEZkEhKtFZ9hz1cyrUaMc9mmnmT3LAYUL 0,63502445 BTC
Poplatek: 0 BTC
19. TYPY PENĚŽENEK
Jak lze nakládat s adresami?
• soukromá peněženka
• peněženka pouze s jednou adresou (mobilní klienti)
• více adres, ale pouze na vyžádání, drobné jde na jednu z nich
(MultiBit, blockchain.info)
• change adresa je vždy nová (Bitcoin Core, Electrum, Armory)
• online služba
• jedna/několik veřejně známých adres (Satoshi Dice)
• každý uživatel dostane svoji adresu, ale ty se recyklují (BitPay)
• každý uživatel má pouze svoji adresu, nebo více adres
20. PASIVNÍ SLEDOVÁNÍ
Praktiky, které usnadňují sledování
• používání jedné adresy pro více plateb
• spojování adres na vstup jedné transakce
• posílání zaokrouhlených nebo jinak odvoditelných částek
• příjem částek o stejné výši
• nestandardní výše poplatku
• vanity adresy
• netradiční (nebo stále stejný) počet vstupů/výstupů, typů adres
• utrácení dosud nepotvrzených výstupů
• vytváření transakcí v typických časech (zvyky, časové pásmo)
• dělat obchody s lidma, kteří anonymitu nedodržují (!)
22. AKTIVNÍ SLEDOVÁNÍ
Jak zjistit identitu účastníka na neaktivní adrese?
• poslat zlomek bitcoinu a čekat, až se spojí s jinou adresou
(lze opakovaně)
• posílat zlomky bitcoinů na adresy „okolo“ sledované adresy
(upřesnění transakcí, popř. dalších spojení)
23. DALŠÍ MOŽNOSTI SLEDOVÁNÍ
Pomocí externích serverů:
• „lehcí“ klienti, kteří nestahují blockchain, se musí na příchozí
platby ptát externích serverů, kterým tímto dají seznam adres
• o sobě též prozrazujeme různým webovým blockchain explorerům
- člověk většinou prochází vlastní adresy, nebo adresy „z okolí“
24. TIPY A TRIKY PROTI SLEDOVÁNÍ
Jak být co nejvíce anonymní?
• na každou příchozí platbu vždy použít jinou adresu
• pokud už se stane, že na jednu adresu přijde více plateb, při
odesílání utratit všechny příchozí platby najednou (v rámci jedné
transakce)
• používat klienta, který change posílá na novou adresu
• používat klienta, který umí Coin Control a vstupy do transakce
manuálně vybírat/kontrolovat (zejména pozor na peněženky, které
vstupy vybírají příliš deterministicky)
• pokud je nutné vstupy spojit, je lepší spojovat příchozí transakce
od stejné osoby, anebo change adresy
• když by na change adresu šlo málo, je možno takové zůstatky
posílat na externí službu (anonymní!) a časem vybrat
25. TIPY A TRIKY PROTI SLEDOVÁNÍ
Jak být co nejvíce anonymní?
• bitcoiny občas proprat přes nějakou centralizovanou službu nebo
rovnou mixér
• použít CoinJoin, blockchain.info „shared send“, DarkWallet apod.
• ultimátní je poslat bitcoiny na anonymní směnárnu, převést na
jinou měnu (ideálně nějakou s integrovaným mícháním), poslat na
jinou směnárnu a vybrat bitcoiny
• používat některou z anonymnějších alternativ (Monero, Darkcoin,
BitcoinDark…)
• pokud na starou adresu dorazí cizí drobáky, nechat je tam
(maximálně je spálit přes OP_RETURN)
26. TIPY A TRIKY PROTI SLEDOVÁNÍ
Jak ověřit anonymitu?
Webové nástroje typu WalletExplorer.com: