• Forum has been upgraded, all links, images, etc are as they were. Please see Official Announcements for more information

Aviso de Segurança em relação ao CoinShuffle e ao DarkWallet

raganius

cryptoPag.com
Foundation Member
Masternode Owner/Operator
É fato notório que o anonimato da Bitcoin pode ser quebrado de modo trivial, e muitos projetos foram iniciados com o intuito de trazer anonimato àquela moeda digital, visando proteger consumidores e empresas.

A Darkcoin é a primeira moeda digital focada na privacidade. Criada em 2014, A Darkcoin se utiliza de sua tecnologia denominada Darksend para manter seguros os fundos de seus usuários, e tornar o blockchain protegido para o uso quotidiano, para que não venha a ser rastreado em algum momento no futuro. O Darksend usa uma segundo nível de rede conhecido como rede Masternode, a qual provê o serviço de mixing. Por meio dessa tecnologia, os usuários são capazes de alcançar um alto nível de anonimato. O Darksend é trustless, descentralizado, e de uso quase que gratuito.

Por sua vez, o CoinShuffle e o DarkWallet são tecnologias novas visando prover anonimato à rede Bitcoin. O CoinShuffle foi criado por pesquisadores da Universidade do Sarre, dentre eles, Tim Ruffing, Pedro Moreno-Sanchez, e Aniket Kate. Seu artigo científico pode ser encontrado em http://crypsys.mmci.uni-saarland.de/projects/CoinShuffle/coinshuffle.pdf.

A DarkWallet foi criada em 2013 por Amir Taaki e Cody Wilson, mas desde então foi adotada por um grupo de programadores open source.

O problema com a CoinShuffle surge com a necessidade de se devolver o change para os participantes. O change precisa ser tratado com o maior cuidado em situações em que o anonimato é crucial. O change é muito importante pois pode expor a risco o anonimato das transações se o procedimento for incorreto. Isso pode ocorrer através ao se observar o que foi feito com o change após completa a transação anônima.

Ao se criar uma tecnologia de anonimato, faz-se necessário atentar para o fato que o blockchain pode ser rastreado bidirecionalmente. Esse tipo de vulnerabilidade se deve ao fato que, se num dado momento você anonimiza 1BTC, e posteriormente você gasta uma parte desse saldo, mais tarde o change resultante precisará ser mantido separado de quaisquer outras transações identificáveis, sob pena se ser possível simplesmente voltar no tempo através das transações, desde aquela identificável, até chegar àquela que deveria ser anônima.

Segundo o artigo, traduzido:
"O uso do change address é possível com o CoinShuffle: Os participantes podem anunciar change addresses adicionais na fase 1, se eles não contam com um endereço contendo exatamente o valor B ν submetido a mixing. Na fase 5, cada participante adiciona todos os change addresses como outputs no tx da transação de mixing antes de ser assinada. CoinShuffle continuará preservando a impossibilidade de se relacionar os endereços de input aos endereços (regulares) de output de participantes honestos.”
Há dois problemas relacionados ao manejo incorreto do change. Originalmente, Mario Müller (usuário Aswan da DarkcoinTalk) descobriu esse problema no Darksend. Atualmente tal falha foi solucionada no Darksend, que não é mais vulnerável a esse tipo de ataque.

1. Vulnerabilidade da CoinShuffle:
Correlacionamento por meio do Change posterior



Neste exemplo, Alice anonimiza 1,2BTC, os quais vão para 2 outputs, 1BTC e 0,2BTC. Ela então gasta 0,7BTC a partir do output de 1BTC, recebendo o change de 0,3BTC. Esses 0,3BTC então vão para uma fonte identificável, confirmando que Alice também gastou os 0,7BTC na transação anterior.

Para identificar o remetente da transação anônima, basta iniciar pela transação na “Coinbase” e ir voltando no blockchain até você atingir o “Alice envia 0,7BTC anonimamente”. No papel de Coinbase, você sabe que foi seu usuário que recentemente adquiriu algo de forma anônima, quebrando assim o anonimato por completo.

2. Correlacionamento Através do Change:


No segundo exemplo, Alice compra 1,2BTC na Coinbase, e em seguida anonimiza parte desse valor para um output de 1BTC. Ela então gasta esse 1BTC, recebendo um change no valor de 0,3BTC, combina esse change ao change anterior de 0,2BTC.

Ao combinar o change da transação anônima (0,3BTC) ao change que ela recebeu da transação CoinShuffle, pode-se correlacionar todo o histórico anterior e posterior, quebrando-se por completo o anonimato.

Solução:

Todas as falhas apresentadas aqui podem ser solucionadas, mas demandam inputs e outputs denominados. Assim como o Dólar dos Estados Unidos, o qual tem denominações de US$1, US$5, US$10 e US$20, o Darksend usa 0,1DRK, 1DRK, 10DRK e 100DRK. Ao fazer o mixing na rede, os usuários podem enviar e receber apenas essas denominações. Em seguida, as transações são protegidas através da combinação das denominações de modo a que seja pago um valor um pouco acima do necessário.

Por exemplo, se um usuário precisa pagar 1,17DRK de forma anônima, ele utilizará 1DRK + 0,1DRK + 0,1DRK, o que resultará numa transação que pagará exatamente 1.17DRK ao recipiente, pagando uma mining fee de 0,03DRK, eliminando a possibilidade de rastreio com base no change.

3. Vulnerabilidade da DarkWallet:
Quantias Identificáveis por sua Singularidade


Esse mixer foi construído de tal forma que diversos usuários (ou mixing bots ociosos) sejam pareados com outros usuários que desejem enviar recursos em tempo real. É uma tarefa trivial a de se quebrar o anonimato de quaisquer transações feitas através da DarkWallet, por conta dos diferentes valores singulares das quantias nas transações.



Por exemplo:

Nessa transação, 0,05BTC foi enviado através do mixer. Para identificar a origem do dinheiro, basta simplesmente ir somando os valores à direita até que o resultado corresponda a algum dos valores à esquerda.

0,05+0,0499+0,0001(fee) = 0,10BTC.
0,0499+0,05940182+0,0001(fee) = 0,10940182BTC.


Essa tarefa vai se tornando exponencialmente mais difícil na medida que mais usuários são adicionados ao mixer. Entretanto, essas sessões podem ter o anonimato desvelado de maneira retroativa em qualquer momento no futuro.

Transações envolvidas:
https://blockchain.info/tx/4eb3b2f9fe597d0aef6e43b58bbaa7b8fb727e645fa89f922952f3e57ee6d603
https://blockchain.info/tx/1694122b34c8543d01ad422ce600d59f8d8fde495ac9ddd894edc7139aed7617


Solução:

Não há uma solução conhecida para esse problema.

4. Vulnerabilidade do CoinShuffle e do DarkWallet:
Ataque DOS


Tanto o CoinShuffle quanto o DarkWallet são suscetíveis de um ataque DOS em que um usuário malicioso simplesmente recuse assinar a transação final, ou se desconecte durante uma das fases finais. Já que uma assinatura é necessária para que a transação final seja bem sucedida, esse processo pode ser interrompido pela simples recusa em participar.

O DarkWallet e o CoinShuffle apresentaram diferentes sugestões visando a solução desse problema, mas todas essas soluções permitem que ataques iniciais ocorram na rede antes que alguma medida possa ser tomada para passar a proteger a rede.

Solução:

O Darksend usa uma abordagem nova na proteção da rede contra ataques, conhecida como transação colateral. Quando abre uma nova sessão de mixing, o usuário precisa criar uma transação completa e assinada para o Masternode no qual que ele deseje realizar o mix. Uma vez iniciado o processo, o usuário fica então obrigado a completar o processo por meio de respostas às demandas e da completude da sessão de mixing sob pena de ter a transação colateral realizada. Essa solução pode ser vista como algo similar a um depósito feito em garantia, e que no final o depositante mantém seu dinheiro ao agir em conformidade com o contrato.
 
Exemplo de transação Darksend:

Como exemplo o tipo de anonimato provido pela Darkcoin, está listada abaixo uma transação totalmente anônima. Essa transação passou por mais de 10 camadas de aprofundamento no anonimato (os fundos passaram pelo processo de mix em mais de 10 Masternodes separados, cada qual com um total de três participantes). Pode-se perceber que não há change que permita o rastreamento das transações, e que cada participante, em cada fase, usa as mesmas denominações.

http://explorer.darkcoin.io/tx/14be41bfbcda630615be6a7e7df5d2391f60c570bc2280763e22349f689f6474 (enviados 3,2DRK de forma anônima)
http://explorer.darkcoin.io/tx/1d7072ab9448d8b59b453fcb53f49f3601f4418e21adc00b03a9bf46cbad7955
http://explorer.darkcoin.io/tx/d71ba5edd833e0a13cc3f4f828e7ae8bdebb7b8eeabc3a780099695d0bde9525
http://explorer.darkcoin.io/tx/327c39874c5e6bb981001b5ac4e14a59549007d202bc42bf404b9232944c1255
http://explorer.darkcoin.io/tx/05be05e35917043ec128fffac6d1c18832f62ed93616cfc805cca1de18b152f7
http://explorer.darkcoin.io/tx/fd946e98a4e4168ba426e69d0a7d2c8a871973c013698900aa4a3c9e23722d5d
http://explorer.darkcoin.io/tx/de8be67ed9a45ded8c179d5cb9e4ca5dc958a57804645cc83ad30a57229bfe05
http://explorer.darkcoin.io/tx/5ce1b10d8d39ee12fada352f646a0bc7fd10e5c68be3657b7e1f25daa96445ec
http://explorer.darkcoin.io/tx/d438fbdc1cd08a9335d0d85705cca1b4b16ae02ccf4c912202288750fa3d3a06
http://explorer.darkcoin.io/tx/12d0d2f81eabc990556126e8e86abd7f6587ce9a252e697d49babe02e1e0784d
http://explorer.darkcoin.io/tx/faa07d6d48cbaabc6cf7f6167cd851b722d8b5d56ed5b45be4c221cd54a4dc7f
http://explorer.darkcoin.io/tx/278ac690ed283b2f8c6d27173fb45d777198b612b3a67484724fea5c340b1b35
http://explorer.darkcoin.io/tx/0c1c8796010c466d340c209bf3804d14f8ded70e523fa92baa25d938491625d7
http://explorer.darkcoin.io/tx/990e5d83a66fa189241af04492496f7d1d2ea7ebb958cc7e3a75185525b94116
http://explorer.darkcoin.io/tx/01edb919d043e7f34a54e58714cd0e4796a7752132d7d7498938b6b9c2ec4595
http://explorer.darkcoin.io/tx/6b32a47efebf9c2d8ed4fd97f6f3787cb01b47100a51fc38cd63457ffe254a05
http://explorer.darkcoin.io/tx/0c16df3800da43b22cfb1caeeedb6ac77e919a8609d0a863337a992f7c9757a6
http://explorer.darkcoin.io/tx/e5a084b5ca7d0f98b80f142fc4a216b5f210e29d5a1c143ac376416240d09074
http://explorer.darkcoin.io/tx/bd2f5435ef5a3ba2ff9c873606745d2ced11854977119a017dbe6ad150cfafde
http://explorer.darkcoin.io/tx/a8452f95817a42531f42440dc5ff489eda0fcf76c3219847cb6bb4e99c0e5d88
http://explorer.darkcoin.io/tx/54e885792b0d7e07604ed3d2915f6b86499b932ebc2c888125ab68b48720abd4
http://explorer.darkcoin.io/tx/26906bef4c41e02565561a54dcdaf9e242d3830921b0ba4d5e5bfa085579a0de
http://explorer.darkcoin.io/tx/1777adc8c015d8282c562d9401902330e9db1ffb18c830222d51c4f7e7c4388b
http://explorer.darkcoin.io/tx/2edccdb8e9544d6d096b0369c02db7b4c8d3350465ca5b7b772609746a27b15c
http://explorer.darkcoin.io/tx/15383602cf81ed5e3ddfac17211b5078cbbd1dcec882c4ec8d0a8ce7e6902496
http://explorer.darkcoin.io/tx/37ec592c7b609e837a6265d7ba28e944e43319a072528e3e6c9e6d39a67a569d
http://explorer.darkcoin.io/tx/995c8ad4347d7157683a3ac40625d366e1f5f8773e5dc8ac2c3a8148aa4cd423
http://explorer.darkcoin.io/tx/b8d1475ca6d43934f4d6ce3d4b2cc7e2a01782c506a4e73e036ed4f83c3cdcf7
http://explorer.darkcoin.io/tx/32ee32b2c2458100a64ee04679c3961f7b714ba3a58e5c425c9ec9d5c4c5b670
http://explorer.darkcoin.io/tx/4162c8bf1704a2eb3d1e8a4e81dfcae144d231c52e33f992814c0a1d381c3eb7
http://explorer.darkcoin.io/tx/59f9bfb8d822b8044e143a8a2c32e753aaa50cc34e179579314a0ca85f200faa
http://explorer.darkcoin.io/tx/57a403abac5e3c244b2206101d4419bf21ede3aee79a69a49eb9bf91dfc4d2ea
http://explorer.darkcoin.io/tx/e00181d3a04aca647501cea5970b84e932838a71e4bbd4e1ed4a0c850d81d26c
http://explorer.darkcoin.io/tx/92c4774c1459b71a111ed9dc04eac80a287040797a179c2618590455a3475114
http://explorer.darkcoin.io/tx/bbba3c932ce873be4d7fcc99832f289e24e94e85dd4fe267d5f9a9daed055228
http://explorer.darkcoin.io/tx/c802ef9a3c7bf82fa95a6bd9afd05eb8ce656e6a292246c2600ae47298d9aefc
http://explorer.darkcoin.io/tx/741b07d77cc42c586228a4704bb9c25e2552277399f443c79e08c1af41004e04
http://explorer.darkcoin.io/tx/fd2f659f41239383bd3ff48062adfee3735c5c35155d2bee045cb044f4f4218e (origem)

É importante notar que o Darksend provê o anonimato de grandes porções de darkcoins ao mesmo tempo, então, uma sessão de mixing como a apresentada acima pode ao final ser usada para enviar diversas transações anônimas.

Conclusão:

Sugerimos que CoinShuffle e a DarkWallet não sejam utilizadas para qualquer tipo de transação confidencial, por conta das graves falhas aqui apontadas. Os problemas aqui levantados se aplicam a uma grande parcela das transações submetidas ao processo de anonimização, resultando na completa perda do anonimato dos usuários envolvidos.
 
Very Cool !!
(Portugal/ Brazil on 2nd place, very nice !! :wink:)

Please post in your local outlets when possible
Tx
 
Back
Top