Author

Topic: História das Criptomoedas: Uma transação como você (provavelmente) nunca viu (Read 85 times)

legendary
Activity: 1862
Merit: 5154
**In BTC since 2013**
Eis que então acontece algo em 2017:

Pesquisadores do Google anunciam que encontraram (provocaram) a primeira colisão de SHA1 da história

~~
Voltando ao puzzle...

Dada essa notícia então, alguém muito ligeiro foi lá e usou os dados da pesquisa do Google para resolver então o puzzle do Peter Todd que naquela altura acumulava 2.48 BTC no seu endereço.

Bem, o puzzle teve inicio em 2013, e só foi resolvido, apos a descoberta de algumas falhas, em 2017. Até foi um tempo bem razoável.

Isto só prova que ainda podem existir falhas, que são desconhecidas por todos, e que podem demorar muitos anos a serem descobertas.
hero member
Activity: 1806
Merit: 916
Por acaso este tipo de desafios tem-me gerado algum interesse mas ainda não tenho conhecimentos suficientes sobre o protocolo para saber como participar neles.
Mas houve algo que não percebi do teu post. Os gajos da Google vieram aqui ao forum, viram este desafio e entraram nele, foi isso?
E outra coisa, pelo que percebi, alguem tinha bots à espera que este desafio fosse resolvido e que os fundos fossem transferidos para uma nova address para tentarem fazer um double-spend e roubarem o Bitcoin. Não percebi se isso chegou a acontecer ou não.

No caso ninguém sabe quem "resolveu" o puzzle. Pode até ter sido alguém da equipe que trabalhou pra resolver quebrar o SHA1 que também resgatou a recompensa. A princípio é só uma pessoa que viu o anúncio do Google e lembrou que existia esse desafio.

Sobre os bots eu expliquei ao final do post. Aparentemente quem tentou o double spend não teve sucesso não e quem solucionou o desafio pela primeira vez foi realmente quem conseguiu as moedas.

Muito interessante a história @Loganota!

Ontem eu vi outra história e pensei em criar um tópico de histórias aqui no fórum, mas acabei deixando para lá.. Será que posso/podemos usar seu tópico para compartilhar outras? ou fica mais organizado criar novos tópicos para cada uma?

Fica a vontade para postar aqui @sabotag3x  Cool. Mas acho que a sua histórias ou outras podem não ter as visualizações que merecem se forem postadas apenas aqui. Acho que seria interessante criar novos tópicos e ai a gente cria um tópico agregador reunindo todas as histórias. Tipo o "Guia Luso-Brasileiro de postagens no Bitcointalk".

Ai acredito que ficaria mais organizado  Grin
legendary
Activity: 2688
Merit: 2297
Os gajos da Google vieram aqui ao forum, viram este desafio e entraram nele, foi isso?

A proposta do Google não teve nada a ver com os bitcoins.. apenas queriam provar que o SHA-1 não era mais seguro..

Quem pegou os bitcoins foi outra pessoa, que acompanhou os testes do Google e usou os resultados deles para acessar tal carteira.



Muito interessante a história @Loganota!

Ontem eu vi outra história e pensei em criar um tópico de histórias aqui no fórum, mas acabei deixando para lá.. Será que posso/podemos usar seu tópico para compartilhar outras? ou fica mais organizado criar novos tópicos para cada uma?
hero member
Activity: 1274
Merit: 681
I rather die on my feet than to live on my knees
Por acaso este tipo de desafios tem-me gerado algum interesse mas ainda não tenho conhecimentos suficientes sobre o protocolo para saber como participar neles.
Mas houve algo que não percebi do teu post. Os gajos da Google vieram aqui ao forum, viram este desafio e entraram nele, foi isso?
E outra coisa, pelo que percebi, alguem tinha bots à espera que este desafio fosse resolvido e que os fundos fossem transferidos para uma nova address para tentarem fazer um double-spend e roubarem o Bitcoin. Não percebi se isso chegou a acontecer ou não.
hero member
Activity: 1806
Merit: 916
Como alguns de vocês sabem, eu sempre fui muito de pesquisar sobre as curiosidades a cerca das criptomoedas.  Gosto de visitar os posts antigos das lendas que já foram muito frequentes aqui no BitcoinTalk e ver a forma como eles pensavam sobre determinados assuntos, como corrigiram alguns problemas no código e como essa comunidade foi crescendo de algo que haviam poucos cypherpunks para pessoas que não fazem a mínima ideia qual é essa ideologia de vida.

Geralmente essas minhas pesquisas eu acabo guardando para mim. E vira e mexe eu solto quando alguém faz algum post relacionado com o assunto. Mas lembrei dessa história e me deu na telha de fazer um post para que mais gente que assim como eu gosta de saber de algumas curiosidades possa saber e pesquisar mais se achar interessante.

Então, vamos lá. O que eu venho compartilhar hoje começou lá em 2013 quando o Peter Todd, grande desenvolvedor do Bitcoin, lançou o seguinte desafio (cortei algumas partes para não ficar tão extenso):

Recompensas nos seguintes endereços P2SH estão disponíveis para qualquer pessoa capaz de demonstrar ataques de colisão contra algumas formas de algoritmos criptográficos. Você resgata sua recompensa demonstrando duas mensagens diferentes, mas que resultam no mesmo hash quando criptografadas. Essas mensagens são usadas em um scriptSig, que satisfaz o scriptPubKey que armazena as moedas, permitindo movê-las para um scriptPubKey (endereço Bitcoin) de sua escolha.

Doações adicionais para as recompensas são bem-vindas, especialmente para SHA1 - endereço 37k7toV1Nv4DfmQbmZ8KuZDQCYK9x5KpzP - onde se acredita que um ataque a um único valor de hash seja preciso um gasto estimado de US$ 2,77 milhões. (4)

SHA1:

$ btc decodescript 6e879169a77ca787
{
    "asm" : "OP_2DUP OP_EQUAL OP_NOT OP_VERIFY OP_SHA1 OP_SWAP OP_SHA1 OP_EQUAL",
    "type" : "nonstandard",
    "p2sh" : "37k7toV1Nv4DfmQbmZ8KuZDQCYK9x5KpzP"
}


SHA256:

$ btc decodescript 6e879169a87ca887
{
    "asm" : "OP_2DUP OP_EQUAL OP_NOT OP_VERIFY OP_SHA256 OP_SWAP OP_SHA256 OP_EQUAL",
    "type" : "nonstandard",
    "p2sh" : "35Snmmy3uhaer2gTboc81ayCip4m9DT4ko"
}


...


Notas:

1) Aconselhamos minerar o bloco no qual você mesmo coleta sua recompensa; scriptSigs que satisfazem os scriptPubKeys acima não assinam criptograficamente as saídas da transação. Se o valor da recompensa for suficientemente grande, outros mineradores poderão achar lucrativo reorganizar a cadeia para eliminar o seu bloco e receber a recompensa eles próprios. Isto é particularmente lucrativo para pools de mineração maiores e centralizados.

2) Observe que o valor da sua recompensa dos algoritmos SHA256, RIPEMD160, RIPEMD160(SHA256()) ou SHA256^2 pode ser diminuído pelo ato de coletá-la.

3) Devido às limitações da linguagem de script do Bitcoin, as recompensas só podem ser coletadas com soluções que usam mensagens com tamanho inferior a 521 bytes.

4) "Quando veremos colisões para SHA-1?" -Bruce Schneier -https://www.schneier.com/blog/archives/2012/10/when_will_we_se.html

O que ele acaba de criar com esse post? Basicamente ele criou um puzzle utilizando o Bitcoin em que a partir daquele momento não seria mais preciso a intervenção de ninguém para receber o prêmio. E para ganhar esse prêmio bastava ficar ligado em quando uma colisão de SHA1 fosse encontrada. Basicamente ele gerou um endereço P2SH (O que é P2SH?) em que o script que definia quando aqueles fundos poderiam ser gastos era o seguinte:

OP_2DUP OP_EQUAL OP_NOT OP_VERIFY OP_SHA1 OP_SWAP OP_SHA1 OP_EQUAL

Traduzindo seriam basicamente: pegue a mensagem 1, pegue a mensagem 2, verifique que eles não são iguais. Aplique a função hash em 1 e 2 e verifique que elas são iguais. Você pode estar pensando: é só isso? A questão é que para que uma coincidência dessa ocorra naturalmente a probabilidade é de 1 para 340 undecilhões, ou 1 em 2¹²⁸. Mas o que acontece é que várias pessoas estudam diversas técnicas de ataques à esses hashs, pois, a nossa vida digital como conhecemos hoje basicamente depende de funções assim. Deste modo, quando alguém encontra uma colisão, a ideia é abandonar essa forma de criptografia, pois ninguém na terra deve ter a capacidade de quebrá-la. É uma paranoia de segurança, mas é bem importante.

Eis que então acontece algo em 2017:

Pesquisadores do Google anunciam que encontraram (provocaram) a primeira colisão de SHA1 da história

Alguns dados desse anúncio:

6.500 anos de processamento de CPU para completar a primeira fase do ataque.
110 anos de processamento de GPU para completar a segunda fase.

Isso porque esse ataque eles fizeram é 100 mil vezes mais rápido do que um ataque de força bruta  Shocked

Voltando ao puzzle...

Dada essa notícia então, alguém muito ligeiro foi lá e usou os dados da pesquisa do Google para resolver então o puzzle do Peter Todd que naquela altura acumulava 2.48 BTC no seu endereço.
Essa é a transação que resgatou o puzzle: https://live.blockcypher.com/btc/tx/8d31992805518fd62daa3bdd2a5c4fd2cd3054c9b3dca1d78055e9528cff6adc/#advanced-details

O que ninguém esperava, ou somente os mais inocentes não esperavam é que como essa transação não necessitava de algum tipo de assinatura e todos os dados para gerar a transação estavam na própria transação, haviam bots que estavam monitorando esse tipo de transação para tentar fazer um gasto duplo e obter uma confirmação mais rápido que a pessoa que "resolveu" originalmente o puzzle. Felizmente o atacante não obteve sucesso e quem foi o experto que viu o anúncio do Google e já estava ligado no puzzle ninguém sabe, mas ele é parte de uma história interessante do nosso universo crypto.

Para quem se interessou no desafio e gostaria de ver como ele foi "montado" pelo Peter Todd segue um tutorial do BitcoinJS Guide que tenta replicar a mesma ideia  Cool
Jump to: