O que é extraído? Transação ou bloqueio?
Até hoje, pensei que as transações eram apenas reunidas até grandes o suficiente para construir um bloco. Uma vez construído, o minerador de ethereum irá correr para encontrar um nonce secreto, e o bloco estará disponível na rede principal.
Mas hoje, ao ler o livro "Mastering Ethereum" de Andreas e Gavin, cheguei à seguinte frase. “Em poucos segundos, a nova transação será explorada pelas mineradoras de Ropsten” .
Agora, a questão é: o que é extraído? É cada transação ou cada bloco?
Depois de enviar ether para a conta x, esta transação irá para um bloco não verificado ou o quê? Como esse processo funciona exatamente? E os contratos inteligentes? Ele também precisa ser verificado antes de aparecer no blockchain?
Respostas
Agora, a questão é: o que é extraído? É cada transação ou cada bloco?
É ambos. Um bloco é extraído quando adicionado à cadeia uma vez que o consenso seja alcançado. Uma transação é considerada minerada quando é incluída no blockchain em um novo bloco. Portanto, um bloco minerado possui várias transações mineradas.
Depois de enviar ether para a conta x, esta transação irá para um bloco não verificado ou o quê? Como esse processo funciona exatamente?
As transações são propagadas para a rede de acordo com um protocolo P2P e incluídas na blockchain seguindo um algoritmo de consenso.
- Propagação de transação
A transação vai primeiro para o pool de transações do seu nó. Este irá verificar fazendo algumas verificações básicas (assinatura correta, nonce correto, codificação RLP correta, etc). Se a transação for válida, o nó a transmite para seus pares que irão repetir o processo (verificar e transmitir a transação). Em alguns segundos, a transação é propagada para toda a rede.
- Mineração
Cada minerador constrói seu próprio bloco, escolhendo transações válidas (favorecendo aquelas com um preço de gás mais alto) e executando-as. Depois de ter constituído seu bloco, os mineiros iniciam a resolução do algoritmo de consenso PoW (encontre o nonce). O primeiro minerador a encontrar a solução transmite seu bloco candidato à rede. Os outros nós verificarão a validade da solução e executarão todas as transações incluídas no bloco. Se a maioria dos mineiros concordar, o novo bloco é adicionado ao blockchain e um novo estado é alcançado.
E os contratos inteligentes? Ele também precisa ser verificado antes de aparecer no blockchain?
Sim, como criações de contratos inteligentes são transações. Todas as mudanças de estado vêm de uma transação e cada transação precisa ser minada.