What is Ethereum Mining? [The Most Comprehensive Step-by-Step Guide]

Updated on: April 24th, 2020
This content has been Fact-Checked.
ethereum mining

Ethereum, como Bitcoin, atualmente usa o mecanismo de consenso de prova de trabalho (POW). A mineração é a força vital de todas as criptomoedas baseadas em Pow. A mineração de Ethereum envolve mineiros de todo o mundo usando seu tempo e poder de processamento para resolver enigmas criptograficamente difíceis. Se bem sucedidos, os mineiros poderão adicionar blocos à cadeia de blocos Ethereum e ganhar uma recompensa em troca.

Compreendendo a mineração Ethereum e a necessidade de um modelo híbrido de estar/prova de trabalho

Para entender a mineração Ethereum, você precisa entender o que é POW e por que foi necessário em primeiro lugar. Uma rede descentralizada como Ethereum requer mecanismos de consenso para que ele tome decisões. Antes de Satoshi Nakamoto criar Bitcoin e seu algoritmo de POW subjacente, houve várias tentativas de criar um sistema de moeda digital peer-to-peer descentralizado legítimo. No entanto, todos eles foram mal sucedidos porque eles não conseguiram responder o “Problema do General Bizantino”.

Qual é o problema do general bizantino?

Understanding Ethereum Mining and the Need for Proof of Stake

Imagem Cortesia: Médio

Ok, então imagine que há um grupo de generais bizantinos e eles querem atacar uma cidade. Eles estão enfrentando dois problemas muito distintos:

Os generais e seus exércitos estão muito distantes, então a autoridade centralizada é impossível, o que torna um ataque coordenado muito difícil.

A cidade tem um enorme exército e a única maneira que eles podem ganhar é se todos atacarem ao mesmo tempo.

A fim de fazer uma coordenação bem sucedida, os exércitos à esquerda do castelo enviam um mensageiro para os exércitos à direita do castelo com uma mensagem que diz “ATTAQUE quarta-feira”. No entanto, suponha que os exércitos da direita não estejam preparados para o ataque e digam: “NÃO. ATAQUE SEXTA” e enviar de volta o mensageiro através da cidade de volta para os exércitos à esquerda. É aqui que enfrentamos um problema. Várias coisas podem acontecer com o pobre mensageiro. Ele pode ser capturado, comprometido, morto e substituído por outro mensageiro pela cidade. Isso levaria os exércitos a serem adulterados com informações que podem resultar em um ataque descoordenado e derrota.

Isso também tem referências claras a blockchain. A cadeia é uma rede enorme; como você pode confiar neles? Se você estivesse enviando alguém 4 Ether da sua carteira, como você saberia com certeza que alguém na rede não vai adulterá-lo e mudar 4 para 40 Ether?

Satoshi Nakamoto foi capaz de contornar o problema do general bizantino inventando o protocolo de prova de trabalho. É assim que funciona. Suponha que o exército à esquerda queira enviar uma mensagem chamada “ATTAQUE SEGUNDA” para o exército à direita, eles vão seguir certos passos.

Em primeiro lugar, eles anexarão um “nonce” ao texto original. O nonce pode ser qualquer valor hexadecimal aleatório.

Depois disso, eles hash o texto anexado com um nonce e ver o resultado. Suponha que, hipoteticamente falando, os exércitos decidiram apenas compartilhar mensagens que, em hash, dá um resultado que começa com 5 zeros.

Se as condições de hash forem satisfeitas, eles enviarão o messenger com o hash da mensagem. Caso contrário, eles continuarão alterando o valor do nonce aleatoriamente até obterem o resultado desejado. Esta ação é extremamente tediosa e demorado e requer muito poder de computação.

Se o mensageiro for pego pela cidade e a mensagem for adulterada, de acordo com as propriedades da função hash, o próprio hash será alterado drasticamente. Se os generais no lado direito, ver que a mensagem hash não está começando com a quantidade necessária de 0s, então eles podem simplesmente cancelar o ataque.

No entanto, existe uma possível brecha.

Nenhuma função hash é 100% livre de colisão. Então, e se a cidade recebe a mensagem, adulterá-la e, em seguida, mudar o nonce até obter o resultado desejado que tem o número necessário de 0s? Isso será extremamente demorado, mas ainda é possível. Para contrariar isso, os generais vão usar força em números.

Suponha que, em vez de apenas um general à esquerda enviando mensagens para um general à direita, há 3 generais à esquerda que têm que enviar uma mensagem para os da direita. Para fazer isso, eles podem fazer sua própria mensagem e, em seguida, hash da mensagem cumulativa e, em seguida, anexar um nonce para o hash resultante e hash -lo novamente. Desta vez, eles querem uma mensagem que começa com seis 0s.

Obviamente, isso vai ser extremamente demorado, mas desta vez, se o mensageiro for pego pela cidade, a quantidade de tempo que eles levarão para adulterar a mensagem cumulativa e, em seguida, encontrar o nonce correspondente para o hash será infinitamente mais. Pode até levar anos. Então, por exemplo, se em vez de um mensageiro, os generais enviarem vários mensageiros, quando a cidade estiver a meio do processo de cálculo, eles serão atacados e destruídos.

Os generais da direita têm tudo muito fácil. Tudo o que eles precisam fazer é anexar a mensagem com o nonce correto que será dado a eles, hash -los, e ver se o hash corresponde ou não. Hashing uma string é muito fácil de fazer. Esse é, em essência, o processo por trás da prova de trabalho.

O processo por trás de encontrar o nonce para o destino hash apropriado deve ser extremamente difícil e demorado.

No entanto, o processo de verificação do resultado para verificar se nenhuma negligência foi cometida deve ser muito simples.

Ok, então agora você sabe qual é o princípio fundamental por trás da mineração. Agora vamos ver como isso realmente acontece.

Os diferentes tipos de mineração

CPU Mining: Esta é a forma mais básica de mineração. A idéia por trás da mineração de CPU é simples. Qualquer um, em qualquer lugar pode usar seu computador para o meu. Embora este método não seja mais aplicável, é um bom ponto de entrada

Mineração GPU: Em seguida, temos mineração GPU. A GPU, ou unidade de processamento gráfico, é uma parte do sistema de renderização de vídeo de um computador. A função típica de uma GPU é ajudar na renderização de gráficos 3D e efeitos visuais para que a CPU não precise. As GPUs oferecem um sistema muito mais forte para mineração do que a CPU. Algumas moedas resistentes a ASIC como Monero são extraídas via gpu.Bitcoin/Ethereum costumava ser extraído originalmente assim, no entanto, isso tornou-se cada vez mais difícil, à medida que a dificuldade aumentou. Vamos falar mais sobre dificuldade mais tarde no guia.

Mineração FPGA: FPGA ou Field Programmable Gate Array Mining é o próximo passo da mineração de GPU. De acordo com este artigo da Free Learner, FPGA “é um dispositivo que tem uma série de matrizes de portas (obviamente) que criam tabelas de verdade para calcular entradas a partir de um fluxo de dados, e saída de um resultado desejado. No setor, você pode usar isso para otimizar um processo do setor, como cortar 2x4s de um registro, fornecer aprendizado de máquina ou até mesmo realizar sequenciamento de DNA. O Excel do FPGA em qualquer tarefa que possa ser feita em um processo paralelo, como um hash de mineração para criar uma saída resultando em um hash bem-sucedido, e se você tiver sorte um bloco bem-sucedido.”

ASIC Mining: ASIC significa Circuito Integrado Específico da Aplicação e foi criado com o propósito específico de mineração Bitcoin e Litecoin. A idéia de ter máquinas especificamente projetadas para mineração estava à frente de seu tempo, tanto que quando a KncMiner lançou suas pré-encomendas para ASICs eles receberam US $25 milhões em pedidos nas primeiras 5 horas. Bitcoin e Litecoin agora são extraídos exclusivamente através de ASICs. Bitmain lançou recentemente ASICs para Ethereum.

Como construir uma plataforma de mineração Ethereum

Certo, agora que passamos pelos diferentes tipos de mineração, vamos configurar sua plataforma de mineração Ethereum!

Antes de continuar um enorme grito para este artigo de Antonio Madeira para Crypto Compare.

Você precisará das seguintes peças de hardware.

Placa-mãe.

GPU.

Disco rígido.

CARNEIRO.

Unidade de fonte de alimentação.

Placa-mãe

A placa-mãe é a base da plataforma de mineração. A quantidade de GPUs que você pode usar está diretamente relacionada ao número de slots de GPU que sua placa-mãe tem. Quanto mais GPUs você pode anexar à sua placa-mãe, mais sua taxa de hash, ou seja, a taxa na qual você está computando hashes.

Alguns exemplos de boas motherboards mineração são:

Asus B250 Especialista em Mineração:

Understanding Ethereum Mining and the Need for Proof of Stake

ASRock H110 Pro BTC+

Understanding Ethereum Mining and the Need for Proof of Stake

GPU

Antes de obter GPUs, você precisa fazer duas perguntas a si mesmo:

Quão poderoso você quer que sua plataforma seja?

Quanto você quer gastar?

Certifique-se de obter GPUs eficientes.

Aqui está um gráfico dos níveis de desempenho de diferentes GPUs na mineração Ethereum como visto por NiceHashMiner:

Understanding Ethereum Mining and the Need for Proof of Stake

Disco Rígido

Agora, você precisará de algo para armazenar seu sistema operacional e software de mineração. Para isso, você precisa de um disco rígido. Para isso, um disco rígido SSD padrão (unidade de estado sólido) fará.

Então, quão grande deve ser o seu disco rígido? Se você está planejando baixar toda a cadeia de blocos, então você deve ter espaço suficiente para compensar o crescimento futuro.

CARNEIRO

RAM ou memória de acesso aleatório é necessária para cálculo rápido e computação de informações. Uma RAM de 4 GB deve ser mais do que suficiente.

Unidade de fonte de alimentação

O tamanho da unidade de fonte de alimentação (PSU) depende de quantas GPUs você está usando. Então, primeiro você precisa resumir o consumo de energia de suas GPUs e todos os outros componentes para garantir que a capacidade da PSU seja maior do que a soma de suas GPUs. Portanto, se você estiver usando GPUs de 2 220 Watts e outros componentes estão consumindo 250 Watts, sua PSU deve ter mais de (2* 220 + 250) 690 Watts.

Understanding Ethereum Mining and the Need for Proof of Stake

imagem Crédito: HARDWARE de Tom

Software para mineração

Em primeiro lugar, obviamente, você precisará ter um sistema operacional.

Você pode baixar EthOS que é um APP especificamente projetado para Ethereum Mining. É uma distribuição linux de 64 bits que mina o Ethereum fora da caixa, permitindo que você controle todas as suas plataformas a partir de um único local, e faça drill-down para GPUs específicas quando necessário. O ethOS suporta eth-proxy/stratum imediatamente após a instalação

Você pode fazer o checkout do EthOS aqui.

Configurando MyEtherWallet

Depois de configurar tudo, você precisa criar uma Carteira Ethereum. Não vale a pena extrair todas estas moedas se não estiver a tomar medidas adequadas. Você pode ler nosso guia sobre carteiras criptográficas aqui mesmo. Minha carteira Ethereum é uma das melhores carteiras lá fora, embora eles tenham enfrentado alguns problemas ultimamente.

A seguir estão as etapas necessárias para configurar sua MyEtherWallet:

Primeiro, vá para Myetherwallet.com.

Understanding Ethereum Mining and the Need for Proof of Stake

Em seguida, clique na guia Ajuda.

Understanding Ethereum Mining and the Need for Proof of Stake

Role para baixo e clique na opção 5:

Agora abra o link destacado aqui:

Understanding Ethereum Mining and the Need for Proof of Stake

Depois disso, baixe este arquivo zip em seu computador:

Understanding Ethereum Mining and the Need for Proof of Stake

Agora abra o arquivo zip em seu computador e clique no arquivo index.html. Antes de fazer isso, desligue sua internet para que você esteja off-line.

Understanding Ethereum Mining and the Need for Proof of Stake

Agora crie uma nova senha e gere sua carteira, certifique-se de que você está colocando uma senha forte:

Understanding Ethereum Mining and the Need for Proof of Stake

Agora você terá que baixar seu arquivo keystore que é basicamente seu arquivo wallet. Certifique-se de manter uma cópia de segurança deste ficheiro. Depois de terminar com esse clique em “Eu entendo. Continue.”

Understanding Ethereum Mining and the Need for Proof of Stake

E aí está, sua carteira foi gerada. O que você vê aqui é sua chave particular. NÃO compartilhe isso com ninguém.

Understanding Ethereum Mining and the Need for Proof of Stake

Agora você deve imprimir sua carteira clicando no botão “Imprimir”. Isto é o que você vai ter. Observe que você pode ver suas chaves privadas e públicas aqui:

Understanding Ethereum Mining and the Need for Proof of Stake

E aí vai você. É assim que você cria uma carteira de papel Ethereum.

Ethereum Mining Solo vs Pools de Mineração

Tudo bem, então você tem todo o sistema e sua carteira configurados. Agora você precisa decidir como você vai para o meu.

Você vai para a mina sozinho ou vai para a mina em uma piscina?

Você pode, claro, meu solo, mas há uma razão pela qual ninguém mina Ethereum solo mais. É extremamente impraticável e você não verá nenhum resultado.

É por isso que as pessoas preferem piscinas de mineração.

O que são piscinas de mineração?

(NOTA: Nesta seção, vamos falar exclusivamente wrt BTC).

Toda a cadeia de blocos funciona por causa de uma rede de “mineiros”. Os mineiros basicamente “minam” para novos blocos na cadeia de blocos resolvendo quebra-cabeças criptográficos complexos usando seu poder computacional. Como resultado disso, eles recebem uma recompensa de mineração que é 12,5 BTC.

Uma vez que eles mineram com sucesso um bloco, eles ganham o poder de colocar em transações dentro do bloco. É basicamente assim que as transações acontecem em todas as criptomoedas, um mineiro coloca no registro da transação dentro do bloco.

Agora lembre-se de uma coisa, há apenas um número limitado de bitcoins que foram criados (21 milhões de moedas). Satoshi Nakamoto, o criador de bitcoins, previu que, à medida que mais e mais mineiros entravam, a taxa de mineração de bitcoin aumentaria exponencialmente, tanto que todos os bitcoins disponíveis poderiam ser extraídos em alguns anos!

Agora, isso pode ser um desastre para bitcoins, porque, como todas as commodities econômicas, o valor do bitcoin está na oferta e na demanda. Se o fornecimento de bitcoins aumenta de repente, então isso diminuiria a demanda, o que, por sua vez, prejudicaria seu valor. A relação oferta e demanda é um dos conceitos econômicos mais críticos, o seguinte é o que o gráfico suprimento e demanda se parece:

Understanding Ethereum Mining and the Need for Proof of Stake

Para evitar que o fornecimento de bitcoins saia do controle e para torná-lo um modelo mais sustentável, Satoshi implementou um sistema de ajuste de dificuldade.

O que é o ajuste de dificuldade? À medida que mais e mais blocos são extraídos, a dificuldade dos enigmas criptográficos aumenta exponencialmente. Basicamente, quanto mais bitcoins você extrai, mais difícil o processo de mineração se torna. Mineiros logo descobriram que eles não podem realmente minar de forma eficiente por si mesmos mais, o processo estava ficando cada vez mais caro. Então, eles decidiram unir seus recursos e formar cliques e grupos para minerar bitcoin de forma mais eficiente. Esses grupos de mineiros são chamados de “piscinas de mineração”.

Vantagens e desvantagens de piscinas de mineração

Vantagens

Os pools são geridos por gerentes de pool. É muito mais fácil atualizar a rede geral porque em vez de coordenar com mineiros independentes aleatórios, os gerentes de pool podem simplesmente atualizar a rede por si mesmos.

Reduz a variação nas recompensas de mineração: uma das maiores razões pelas quais os mineiros se juntam a piscinas é reduzir a variação em suas recompensas de mineração. Para entender o que a variância significa e como isso afeta os mineiros, precisaremos fazer alguma matemática. Crédito a L.M. Goodman e seu artigo médio pela explicação.

Primeiro, vamos entender o que é a distribuição Bernoulli. A distribuição de Bernoulli basicamente afirma que para cada distribuição discreta que tem dois resultados “sucesso” e “fracasso” se a probabilidade de sucesso é p (onde, 0 p 1), então a probabilidade de falha é 1-p.

Agora, vamos aplicar isso em bitcoin. Se um mineiro controla uma fração “p” do poder mineiro total e, como resultado, tem uma probabilidade p de mineração de um novo bloco onde 0 p 1, então, ao aplicar a distribuição de Bernoulli, ele/ela tem a probabilidade de (1-p) de NÃO minerar um novo bloco.

Na distribuição de Bernoulli: variância = p* (1-p)

Agora, vamos ver quantos blocos são extraídos em um ano.

A cada 10 minutos, um bloco é minado. O que significa que cada hora 6 blocos, todos os dias 24 * 6 blocos e todos os anos 365*24*6 blocos são minados.

Basicamente, para um mineiro que tem “p” probabilidade de mineração de um bloco, é esperado para minar 365*24*6*p blocos por ano. É o retorno esperado deles.

Da mesma forma, a variância padrão global que eles estarão enfrentando todo o ano é: 365*24*6*p* (1-p).

Agora, vamos definir “desvio padrão”. Desvio padrão é um termo que define por quanto são os membros de um determinado grupo distribuído variando da média do grupo.

No contexto da cadeia de blocos e neste exemplo, o desvio padrão é por quanto a recompensa desse mineiro terá se desviado da recompensa esperada.

Desvio padrão = variância [sqrt]/retorno esperado.

Agora, como sabemos:

variância = 365*24*6*p* (1-p)

retorno esperado = 365*24*6*p

Então, ao substituir esses valores, obtemos:

Desvio padrão = [sqrt] (365*24*6*p* (1-p))/365*24*6*p

Agora vamos dar um exemplo.

Suponha que um mineiro possua 0,01% da taxa de hash na rede. (Significado p=0,0001).

Se você substituir os valores de acordo com a equação de desvio padrão, então você obterá um desvio padrão de 0,4364 OU 43,6%!!

Um desvio de 43,6% da recompensa esperada ou um mineiro que possui 0,01% de taxa de hash.

A única solução para diminuir esse desvio e variância é agrupar recursos para juntos para aumentar a porcentagem geral da taxa de hash, que é exatamente o que os pools de mineração oferecem.

Contras

Muito depende da ética do gerente da piscina.

Centralização: Falaremos mais sobre isso mais tarde.”

Vantagens de se tornar um mineiro

Então, por que você deveria se tornar um mineiro?

Tens de ter o Éter! Em primeiro lugar, a razão mais óbvia. Você tem o seu próprio Éter. Além disso, no momento em que você mina um bloco, você começa a cobrar taxas de transação para todas as transações que vão dentro dele.

Se você acredita em Ethereum ou Cryptocurrency em geral, então você começa a ter uma voz na rede através da mineração.

Finalmente, enquanto Ethereum passa para Prova de Estaca, construir um grande depósito de Ethereum agora através da Prova de Trabalho será definitivamente útil.

O que é a prova de estaca?

Então, falando em Prova de Estaca (POS), o que exatamente isso significa e por que Ethereum vai avançar para isso? Vamos nos concentrar na primeira parte da pergunta por enquanto.

A prova de estaca tornará todo o processo de mineração virtual e substituirá os mineiros por validadores.

É assim que o processo funcionará:

Os validadores terão que bloquear algumas de suas moedas como participação.

Depois disso, eles começarão a validar os blocos. Ou seja, quando eles descobrem um bloco que eles pensam que pode ser adicionado à cadeia, eles vão validá-lo colocando uma aposta nele.

Se o bloco for anexado, os validadores receberão uma recompensa proporcional às suas apostas.

Understanding Ethereum Mining and the Need for Proof of Stake

O POS tornará a mineração completamente virtual e reduzirá grandemente o desperdício que virá através do POW.

A implementação do POS do Ethereum é chamada de protocolo Casper.

Por que o Casper era necessário? Acontece que há um grande problema quando se trata de implementação POS.

O maior obstáculo à prova de estaca

Desenvolvedores Ethereum sempre planejou eventualmente passar para a prova de estaca, que era sempre o seu plano. No entanto, antes de o poderem fazer, tiveram de resolver uma das maiores falhas de prova de estaca (POS).

Considere este cenário por um momento:

Understanding Ethereum Mining and the Need for Proof of Stake

Suponha que temos uma situação como a acima. Há uma corrente azul principal e uma cadeia vermelha que se ramifica do próprio principal. O que há para impedir um mineiro malicioso de mineração nos blocos vermelhos e forçar um garfo duro?

Em um sistema de prova de trabalho (POW), esse risco pode ser mitigado.

Suponha que a maliciosa mineira Alice queira o meu na cadeia vermelha. Mesmo que ela dedique todo o seu poder de haxixe a ele, ela não vai conseguir que nenhum outro mineiro se junte a ela na nova cadeia. Todos os outros continuarão a minar na cadeia azul porque é mais rentável e livre de riscos para mina na cadeia mais longa.

Lembrem-se, o POW é extremamente caro em termos de recursos.

Não faz sentido para um mineiro desperdiçar tanto recurso em um bloco que será rejeitado pela rede de qualquer maneira. Assim, as divisões de cadeia são evitadas em um sistema de prova de trabalho por causa da quantidade de dinheiro que o atacante terá que desperdiçar.

No entanto, as coisas parecem um pouco diferentes quando você traz PDV.

Se você é um validador, então você pode simplesmente colocar seu dinheiro na cadeia vermelha e na cadeia azul sem qualquer medo de repercussão. Não importa o que aconteça, você sempre ganhará e não terá nada a perder, apesar de quão maliciosas suas ações possam ser.

Isso é chamado de problema “Nada em jogo”, e isso é algo que Ethereum teve que abordar.

Precisavam de um protocolo que pudesse implementar o POS e mitigar o problema do “Nada em jogo”.

Ethereum Mineração: Entre Casper

Casper é o protocolo POS que Ethereum escolheu seguir. Embora tenha havido uma equipe inteira ocupada criando-o, Vlad Zamfir é muitas vezes creditado como sendo o “Face of Casper”.

Understanding Ethereum Mining and the Need for Proof of Stake

Crédito de imagem: Blocknomi.

Então, como Casper é diferente de outros protocolos de Prova de Estaca?

Casper implementou um processo pelo qual eles podem punir todos os elementos maliciosos. É assim que o POS sob Casper funcionaria:

Os validadores apostam uma parte de seus Éteres como estaca.

Depois disso, eles começarão a validar os blocos. Ou seja, quando eles descobrem um bloco que eles pensam que pode ser adicionado à cadeia, eles vão validá-lo colocando uma aposta nele.

Se o bloco for anexado, os validadores receberão uma recompensa proporcional às suas apostas.

No entanto, se um validador agir de forma maliciosa e tentar fazer um “nada em jogo”, eles serão imediatamente repreendidos e toda a sua participação será cortada.

Como você pode ver, Casper foi projetado para trabalhar em um sistema sem confiança e ser mais tolerante a falhas bizantino.

Qualquer um que age de forma maliciosa e bizantina será imediatamente punido por ter sua estaca cortada. Este é o lugar onde ele difere da maioria dos outros protocolos POS. Elementos maliciosos têm algo a perder, por isso é impossível que não haja nada em jogo.

Este não é o único lugar onde Casper pune os validadores.

Como Hudson James e Joris Bontje observam em suas respostas em “StackExchange”, Casper projeta incentivos mais severos para garantir a segurança da rede, incluindo punir mineiros que ficam off-line, involuntariamente ou não.

Isso significa que os validadores terão que ter cuidado com seu tempo de atividade do nó. Descuido ou preguiça levarão a perder sua participação. Esta propriedade reduz a censura de transações e disponibilidade geral.

Junto com tudo isso, a propriedade “cortando” também empresta casper uma vantagem distinta sobre os protocolos normais de prova de trabalho.

Vamos trazer de volta nosso diagrama de corrente novamente:

Understanding Ethereum Mining and the Need for Proof of Stake

Em um protocolo de prova de trabalho, não importa se um mineiro minou na corrente azul ou na corrente vermelha. Tanto o mineiro honesto como o mineiro malicioso teriam gasto a mesma quantidade de recursos.

Em Casper, no entanto, se um validador honesto minas na cadeia azul, em seguida, eles receberiam recompensa proporcional à sua aposta, no entanto, um mineiro malicioso terá sua participação cortada por apostar na cadeia vermelha.

Ok, então isso é tudo muito bom, mas como é que o Ethereum vai garantir que os mineiros vão passar de POW para POS?

Eles planejam fazer isso através de uma bomba-relógio difícil.

O que é a Bomba Tempo de Dificuldade?

O que há para incentivar os mineiros a passar de um protocolo de prova de trabalho para um protocolo de prova de estaca?

Mineiros compram milhares de dólares em equipamento para que possam minar por blocos. No momento em que o POS vem a bordo, todo esse equipamento torna-se inútil. Imagine gastar tanto dinheiro e ter piscinas super complexas montadas, e tudo isso se tornando completamente inútil.

Se for esse o caso, então o que há para impedir que os mineiros permaneçam na antiga cadeia de provas de trabalho e continuem a minerar nela? Isto irá, em essência, criar três moedas Ethereum: Ethereum Classic, Ethereum Prova de Trabalho e Ethereum Prova de Estaca. Isso vai ser um pesadelo absoluto.

Isso não só irá diminuir significativamente o valor econômico e a credibilidade do Ethereum, como também irá diluir a taxa de hash da cadeia geral, o que pode torná-lo vulnerável a ataques de hackers.

A fim de se certificar de que há um incentivo adequado para os mineiros para se juntarem à nova cadeia, os desenvolvedores Ethereum introduziram a bomba tempo dificuldade. A bomba-relógio foi introduzida em 7 de setembro de 2015. Para entender como funciona a bomba de tempo dificuldade, é importante entender como funciona difícil e mineração.

O que é dificuldade e como funciona?

O conceito de dificuldade começou com bitcoin. Quando o bitcoin foi introduzido pela primeira vez, a mineração era extremamente simples e qualquer um poderia fazê-lo usando seu PC. No entanto, à medida que o bitcoin se tornou cada vez mais popular, o número de mineiros na rede aumentou. Isso levantou uma possibilidade muito real de mineiros ficarem fora de controle e extrair todos os bitcoins restantes no espaço de um ano. Satoshi Nakamoto previu isso acontecendo e, portanto, introduziu o sistema de “dificuldade”.

O sistema de dificuldade funciona assim: Mineiros gastam seu poder computacional para resolver enigmas criptográficos. A maneira como eles fazem isso é que eles anexam aleatoriamente uma string aleatória (chamada nonce) para o hash do bloco e, em seguida, eles hash toda a string. Se o número resultante for menor que um determinado número fixo, então ele é considerado bem-sucedido e o novo bloco é adicionado à cadeia de blocos. Encontrar este “nonce” é extremamente difícil e aleatório e que é o coração de toda a mineração.

Se fôssemos recapitular todo o processo, então seria assim:

O hash do conteúdo do novo bloco é tomado.

Um nonce (string aleatória) é anexado ao hash.

A nova string é hash novamente.

O hash final é então comparado com o nível de dificuldade e visto se é realmente menor do que isso ou não.

Caso contrário, o nonce é alterado e o processo se repete novamente.

Se sim, então o bloco é adicionado à cadeia e o razão público é atualizado e alertado sobre a adição.

Os mineiros responsáveis por isso dada a recompensa do bloco.

A dificuldade é ajustada a cada bloco 2016.

O nível de dificuldade é diretamente proporcional à taxa em que os blocos estão sendo extraídos. Bitcoin tem um tempo médio de bloco de 10 minutos.

Se o tempo de bloqueio for abaixo disso, o nível de dificuldade é aumentado, se ele subir, então o tempo de dificuldade diminui. Isso é feito para garantir que o tempo de bloqueio do bitcoin permaneça ~10 minutos.

Isto é basicamente como a mineração bitcoin funciona e Ethereum segue o mesmo protocolo, bem como, a diferença é que um bloco é extraído a cada 15 segundos em Ethereum.

Gráfico a seguir mostra a dificuldade crescente em Ethereum:

Understanding Ethereum Mining and the Need for Proof of Stake

Então, o que a bomba relógio de dificuldade fará?

A bomba de dificuldade aumentará exponencialmente a dificuldade tanto que a mineração se tornará impossível.

Como já dissemos antes, o nível de dificuldade ajusta de acordo com a taxa a que os blocos estão sendo extraídos. O algoritmo de ajuste de dificuldade Ethereum é assim:

block_diff = parent_diff + parent_diff // 2048 * max (1 — (block_timestamp — parent_timestamp) // 10, -99) + int (2** ((block.number // 100000) — 2))

(Aqui “//” é o operador de divisão tal que 6//2 = 3 e 9//2 = 4.)

Então, vamos entender o que isso significa basicamente em inglês simples:

Block_TimeTap = a hora em que o bloco foi extraído.

parent_timestamp = a hora em que o bloco pai também conhecido como o bloco antes de este ser minado.

Se (block_timestamp — parent_timestamp) 10 segundos, então um fator de “parent_diff // 2048 * 1” é adicionado à dificuldade.

Se (block_timestamp — parent_timestamp) estiver entre 10-19 segundos, então a dificuldade é mantida da mesma forma.

Se (block_timestamp — parent_timestamp) 20 segundos, então a dificuldade é reduzida em “parent_diff // 2048 * -1” para um máximo de “parent_diff // 2048 * -99”.

É assim que o algoritmo de ajuste de dificuldade funcionou na versão Homestead do Ethereum. A idéia é manter o tempo de bloqueio ~15 segundos.

Então, o que a bomba de dificuldade vai fazer é que aumentará a dificuldade por uma quantidade tão exponencial sem ajustá-la que levará mais e mais tempo para resolver os enigmas criptográficos. Eventualmente, será quase impossível minerar na cadeia. Este fenômeno é chamado de “Ethereum Ice Age”, o tempo todo o estilo POW mineração torna-se impossível.

Quando isso acontecer, os mineiros não terão opção, mas para ir a nova cadeia de Ethereum que tem prova de estaca nele.

Certo, então por que isso é desejado? Quais são os problemas que enfrentamos com a Prova de Trabalho que a Prova de Estaca procura resolver?

Por que o POS é Necessário sobre POW?

Existem várias vantagens de implementar a prova de estaca. Todos eles podem ser amplamente listados para baixo entre as seguintes categorias. (Grande gritaria para Jon Choi e seu artigo).

Ajuda a alcançar a descentralização.

Eficiência energética.

Segurança económica.

Escalando.

Transição para POS.

Ethereum Mining: Alcançando a Descentralização

Como vimos acima, protocolos POW não são realmente descentralização amigável mais. Vamos verificar o gráfico de distribuição de hashrate para bitcoin:

Understanding Ethereum Mining and the Need for Proof of Stake

E aqui está a distribuição de hashrate das piscinas de mineração em Ethereum:

Understanding Ethereum Mining and the Need for Proof of Stake

Imagem Cortesia: EtherChain.org

Como você pode ver, a maioria do hashrate está concentrada dentro de algumas piscinas específicas e isso significa que não importa o que aconteça, eles sempre terão uma chance maior de mineração de blocos e obter recompensas do que qualquer outra pessoa.

Como eles podem obter mais dinheiro, eles podem, portanto, pagar ASICs melhores e mais rápidos. Isso significa basicamente, não importa o que aconteça, grandes piscinas de mineração sempre terão uma vantagem sobre indivíduos e piscinas menores. Em outras palavras, os ricos sempre ficarão mais ricos.

A prova de estaca torna isso completamente irrelevante, tornando a mineração completamente virtual. No entanto, essa não é a única maneira que o POS mitiga os efeitos da centralização. Para entender isso, primeiro precisamos saber o que significa “Economias de Escala”. (Obrigado ACDCleadership canal youtube para os dados).

Quando se trata de produção, existem dois tipos:

Produção Short Run.

Produção Long Run.

Na produção de curto prazo, pelo menos os recursos de entrada são fixos. Considere uma pizzaria de pequeno tempo que tem apenas um forno. Não importa se eles têm que produzir 1 pizza de 25, há o único forno que eles podem usar para criar essas pizzas.

Numa produção a longo prazo, todos os recursos são variáveis, e é aí que entram economias de escala.

Então, em uma produção de longo prazo onde a quantidade de recursos de entrada é variável, o que acontece se você dobrar a entrada? Há apenas três resultados neste cenário específico. Chamamos isso de “retorna à escala”.

A saída mais do que dobra. Significa que há um retorno crescente à escala.

A saída dobra. Significa que há um retorno fixo à escala.

A saída não duplica. Significa que há retornos decrescente à escala.

O seguinte mostrará uma representação gráfica das economias de escala.

Understanding Ethereum Mining and the Need for Proof of Stake

Imagem Cortesia: Wikipédia

O que exatamente está acontecendo aqui?

Quando a produção é aumentada de Q para T2, o custo total da produção diminui de C para C1. Isto é chamado de Economias de escala.

Depois disso, ele se equilibra um pouco. É aqui que você obtém retornos constantes à escala.

E então, quando você vai além disso, o custo aumenta à medida que você aumenta a saída além do Q2.

O que isso significa é que as grandes corporações podem diminuir o custo médio de seus produtos aumentando o número de suas saídas! (Até um limite)

De certo modo... mais é menos!

Vamos dar um exemplo real disso.

Os custos iniciais de um padeiro pequeno serão obviamente inferiores aos de uma grande empresa de panificação porque a empresa terá que investir em muitas máquinas. No entanto, a longo prazo, o custo médio de cada pão será muito menor para a empresa do que para o padeiro.

Ok, tudo isso é bom, mas como isso se aplica a piscinas de mineração?

Tal como as grandes corporações, piscinas de mineração maiores podem diminuir o custo de seus recursos de entrada:

Amortizando um custo fixo em uma operação maior.

Ter poder de negociação, operando como uma entidade maior.

O que isso basicamente significa é que uma grande piscina de mineração influente pode, dólar por dólar, gerar mais taxa de hash do que outra piscina, mesmo que gastem a mesma quantidade de dinheiro.

Este problema é completamente atenuado na prova de estaca por causa de uma simples razão. Em POS você investe uma participação. Você não pode simplesmente agrupar e tornar sua aposta mais valiosa por dólar. No final do dia, 1 dólar = 1 dólar. Economias de escala não funcionam aqui.

Eficiência energética

O maior problema da prova de trabalho é o desperdício de energia. A pior parte é que se trata de um desperdício de energia por causa do desperdício de energia. Bitcoin, em particular, é voraz em seu apetite por energia. Veja isto:

Understanding Ethereum Mining and the Need for Proof of Stake

Imagem Cortesia: Digicnomista

Que tal mais alguns números (cortesia Digicmonist)

Understanding Ethereum Mining and the Need for Proof of Stake

Há dois números nos quais você deve se concentrar:

Os custos anuais de mineração global do bitcoin é de US $1.423.794.674.

Bitcoin sozinho consome anualmente 28,48 TWh de eletricidade. O país do Equador consumiu cerca de 21 TWh!

Na verdade, vamos comparar o consumo de energia do bitcoin quando comparado com alguns países:

Understanding Ethereum Mining and the Need for Proof of Stake

Bitcoin consome mais poder do que a Irlanda, Bahrein e República Eslovaca!

Ok, vamos até o campo de jogo.

E se compararmos Bitcoin com outros sistemas de pagamento? Diga... visto.

Como o consumo de energia do bitcoin se compara ao do visto?

Understanding Ethereum Mining and the Need for Proof of Stake

Sim... não é bom.

Portanto, é óbvio que o bitcoin come muito poder, e há muito dinheiro gasto nos recursos. No entanto, e quanto aos custos externos? O efeito que essa quantidade de consumo de energia tem no meio ambiente deve ser imenso.

Embora não haja dúvida de que bitcoin e POW fizeram muitas mudanças sociais positivas, devemos pelo menos ver o que um sistema POS de grande escala pode fazer e se funciona tão bem sem consumir tanta energia.

Segurança Econômica

A maior vantagem que o POS, e especialmente Casper, tem é a sua segurança económica. Pense nisso, suponha que você é um validador e você tem seu próprio dinheiro armazenado como uma participação na rede. É do seu próprio interesse agir no melhor interesse da rede. Por que agiria maliciosamente sabendo que há uma grande parte da sua estaca que pode ser cortada e assumida se o fizer?

Por que você atacaria uma rede e prejudicaria o valor da moeda quando você tem tanto da sua moeda trancada nela?

Além disso, este “efeito de corte” remove a chance de um “ataque de acampamento de desova” como Vitalik o moedas:

Understanding Ethereum Mining and the Need for Proof of Stake

Imagem Cortesia: Vitalik Buterin Twitter.

Os ataques de Spawn podem ser evitados no POS pelo simples fato de que apenas um ataque levará ao corte e remoção da estaca investida. E se você não tem nenhuma participação investida, você não pode participar da validação de PDV.

Escalando

A maneira mais óbvia que o POS ajudará a escalabilidade é habilitando o fragmento.

Como diz Vlad Zamfir, fragmentação com POW não é impossível, mas é difícil.

O que é fragmentação?

Fragmentação é um termo que foi retirado de sistemas de banco de dados. Vamos ver o que fragmentação significa em relação ao banco de dados. Suponha que você tenha um enorme banco de dados volumoso para o seu site. Ter um banco de dados volumoso não só torna a pesquisa de dados mais lenta, mas também dificulta sua escalabilidade. Então, o que você faz neste caso?

E se você fizer uma partição horizontal em seus dados e transformá-los em tabelas menores e armazená-los em servidores de banco de dados diferentes?

Understanding Ethereum Mining and the Need for Proof of Stake

Imagem cortesia: Dzone

Assim?

Agora, você pode estar se perguntando, por que uma partição horizontal e não uma partição vertical? Isso é devido à forma como as tabelas são projetadas:

Considere isto. Suponha que esta seja a nossa tabela principal:

Understanding Ethereum Mining and the Need for Proof of Stake

Agora, se fôssemos particionar esta tabela verticalmente:

Understanding Ethereum Mining and the Need for Proof of Stake

Vê o que acontece? Quando você particiona verticalmente uma tabela eles tendem a se tornar duas tabelas completamente diferentes.

No entanto, se fôssemos particioná-los horizontalmente:

Understanding Ethereum Mining and the Need for Proof of Stake

Vês? É a mesma tabela/banco de dados, mas com dados menores. Esses bancos de dados menores são conhecidos como fragmentos do banco de dados maior. Cada fragmento deve ser idêntico com a mesma estrutura da tabela.

Então, o que acontecerá se implementarmos o fragmento em um protocolo POW?

Fragmentação tornará o processamento mais rápido dividindo um estado em fragmentos diferentes. No entanto, se estamos usando POW, os fragmentos menores estarão em perigo de serem tomados por mineiros maliciosos devido à sua baixa taxa de hash. Na verdade, esta é a maior razão pela qual os blockchains de POW nunca podem implementar o fragmento, qualquer e todos os pequenos fragmentos podem ser facilmente assumidos.

Este risco é completamente mitigado no POS, uma vez que não tem o conceito de mineração.

Conclusão de mineração Ethereum

Como podem ver, as coisas vão mudar imensamente quando a Prova de Estaca for implementada. No entanto, qualquer um que queira entrar no jogo de mineração POW em Ethereum ainda tem muito tempo para fazê-lo.

Like what you read? Give us one like or share it to your friends and get +16

281
Hungry for knowledge?
New guides and courses each week
Looking to invest?
Market data, analysis, and reports
Just curious?
A community of blockchain experts to help

Get started today

Already have an account? Sign In