Um experimento de mineração de criptomoeda

Vamos falar sobre como eu explorei o Bitcoin na minha escola para uma experiência de aprendizado.

O começo

Meu professor de engenharia de software recebeu dinheiro de subsídio para ministrar um curso sobre segurança cibernética. Ele utilizou o dinheiro para reabastecer as máquinas antigas através da compra e construção de um conjunto de computadores para os alunos. Ele construiu duas máquinas extras com o dinheiro sobrando, para realizar experimentos. Como fiquei intrigado com o Bitcoin, mas nunca entendi seus detalhes técnicos, pensei que aqui é minha oportunidade de ouro!

E fora de pesquisa …

Na época, eu só sabia da existência do popular Cryptocurrency, Bitcoin. No entanto, minha pesquisa levou-me a aprofundar neste assunto do que eu esperava.

O que é criptomoeda?

  1. Criptomoeda é um novo conceito de moeda moldada em torno da moderna tecnologia informática. A diferença entre essa moeda e a moeda convencional (monetária) que comumente usamos é que ela é armazenada digitalmente. Esses dígitos armazenados (1s e 0s) são valores intangíveis que são regidos pela tecnologia Blockhain. O objetivo inicial da implementação da tecnologia Blockchain era conseguir um sistema financeiro descentralizado.
  2. Por ser uma entidade independente, não controlada por uma parte ou indivíduo específico, as transações são tornadas públicas por meio de um "livro-razão público" (Blockchain).
  3. Criptomoedas, assim como todas as outras formas de moeda são armazenadas em uma carteira. No caso do Cryptocurrency, “wallets” são aplicativos virtuais que vêm em várias formas, permitindo diferentes níveis de segurança e suporte para Cryptocurrencies e platform (s).

Como pode Cryptocurrency ser extraído?

Em resumo, o software de mineração fornece instruções para o processador (CPU, GPU, ASIC). Estas instruções dizem ao processador para resolver problemas matemáticos. Com base na quantidade de problemas resolvidos, o minerador é recompensado com uma quantidade de Cryptocurrency. Nós entraremos no material técnico mais tarde quando discutirmos algoritmos.

Isso requer uma combinação de vários componentes (Hardware / Software / Manutenção):

Hardware

  • O criptomínio em sua tenra idade poderia ser alcançado usando CPUs de baixo custo, como as da ARM. No entanto, como a rede de mineração cresceu, o mesmo aconteceu com a concorrência. Isso levou a um aumento no “nível de dificuldade” para resolver os problemas, exigindo maior poder de processamento e levando à adaptação de GPUs de ponta.
  • Atualmente, a mineração é mais eficiente e lucrativa através do ASIC (Application Specific Integrated Chip) s. Esses processadores são projetados para uma finalidade; Criptomoagem.

Programas

  • Softwares de mineração, como o NiceHash Miner, comunicam instruções de mineração ao processador.
  • Software de carteira, como o Electrum, armazena a Criptomoeda minada.

Manutenção

  • O calor é um problema que exige que os mineiros estejam atentos às operações, especialmente àquelas que executam as fazendas de criptomineragem. Muitas vezes, os ventiladores de caixa são usados ??para resfriar as máquinas nessas situações. Para os mineiros médios que não estão executando uma fazenda Cryptomining, os sistemas de refrigeração com o software de monitoramento de temperatura são usados ??para estabilizar o calor gerado pela carga de trabalho da mineração.
  • A conexão à Internet adequada é outro fator chave na mineração, uma vez que o software de mineração tem que ser capaz de se comunicar com o Blockchain / Pool, passando os dados necessários para determinar a quantidade de moeda que será recompensada.

Software de mineração

O software de mineração tem várias tarefas em mãos. Primeiro, ele deve se conectar a um pool ou ao blockchain (dependendo do usuário). Em seguida, ele escolhe um algoritmo (dependendo do software de mineração). Existem mineiros que podem alternar dinamicamente entre algoritmos, como o NiceHash e aqueles que usam um algoritmo específico (ideal em fazendas).

Piscina versus mineração Solo

Uma piscina consiste em um grupo de mineiros, conectados através de um servidor que os meus juntos. Há mineradores que se mineram através da conexão direta com a rede Blockchain. Ambos os métodos têm vantagens e desvantagens; no entanto, a mineração de solo é para mineiros avançados que têm experiência com rede, roteamento, banco de dados e uma série de outras variáveis. Ao contrário da mineração em uma piscina, as recompensas quando a mineração solo também é inconsistente.

Algoritmos

Como mencionado, o software de mineração trabalha com algoritmos que fazem a pesada tarefa de interações entre o hardware e o Blockchain / Pool.

Aqui está um pseudocódigo que descreve a essência de como os algoritmos de criptomineração funcionam:

P: = O hash do bloco minado anteriormente

B: = um bloco de transações

H: = uma função hash

D: = Nível de Dificuldade

0 Recuperar P

1 Construir / Modificar B

2 SE H (P, B, Algum Número Aleatório) produz um número> D END (Bloco é adicionado à rede)

3 Se a saída do passo 2 for falsa, GOTO passo 1

Passo 0 – Recupere o hash do bloco anterior da rede.

Passo 1 – Reúna uma lista de potenciais transações conhecidas como “block”. Esta lista de transações vem da rede bitcoin peer-to-peer [dentro do Blockchain].

B: = um bloco de transações

0

B: = um bloco de transações

1

B: = um bloco de transações

2

O experimento real

Comecei criando primeiro uma carteira Bitcoin usando o Electrum. Em seguida, escolho o primeiro software de mineração Bitcoin que a pesquisa do Google trouxe e foi fácil de instalar chamado Bitcoin Miner. Em terceiro lugar, liguei o endereço da carteira ao mineiro, para que todos os ganhos fossem enviados para a carteira.

Bitcoin Miner

Embora seja fácil de configurar, descobri que esse software era altamente ineficaz para gerar lucro (se algum). Ele estava minerando a uma taxa de alguns milhares de Satoshis / hora (também conhecido como mBitcoin). Para colocá-lo em dólares, são alguns centavos por dia, tornando o mineiro desvantajoso.

NiceHash Miner

Alguns dias depois, encontrei o NiceHash Miner. É um software de mineração que contém uma lista de algoritmos que pode alternar com base em alguns fatores:

uma. Demanda de compradores

b. Lucratividade do algoritmo

c. Eficiência do algoritmo

d. Quantidade mínima de ganhos definida pelo usuário

Mais sobre NiceHash: https://www.nicehash.com/sell

Demorou alguns tentativa e erro para obter este mineiro para trabalhar. Mas uma vez trabalhando, os resultados foram drasticamente diferentes. A taxa de ganho subiu para US $ 0,33 / hora, a partir de apenas US $ 0,01 / hora. Isso é um aumento de 330%!

US $ 0,33 pode parecer uma quantia minúscula para você e a pergunta se torna por quê? Eu não mencionei sobre a compra e construção de plataformas de alto desempenho? Bem, eu também mencionei anteriormente, a relação entre "nível de dificuldade" para resolver problemas de matemática para a competição. Quanto mais mineiros mineiros, a dificuldade de resolver os problemas de matemática aumenta. Outro ponteiro é o próprio mercado. Como essa forma de moeda não é comercial, seu mercado, portanto, é volátil. Por exemplo, se uma Criptomoeda for vendida mais do que comprada, o valor da moeda pode cair drasticamente em termos de valor monetário. Por essa razão, os céticos classificam o investimento nesse sistema financeiro como uma aposta, já que ninguém pode prever o resultado após o investimento.

Controle de temperatura

Inicialmente, eu não estava interessado em monitorar o calor causado pelo processo de mineração. Eu acreditava que as configurações de controle de temperatura por padrão deveriam cuidar disso. Percebi que o software de controle de temperatura não estava configurado para mineração depois que meu professor de engenharia de software me avisou. Ele monitorava ativamente a operação sempre que tinha a chance. Ele configurou as configurações do ventilador no software de controle de temperatura. Uma vez configurado, a experiência correu suavemente por alguns meses até que o NiceHash Miner não pudesse mais se conectar ao servidor do pool.

Problema de conexão

Meu julgamento foi que o Departamento de Educação (DOE) descobriu essa atividade e bloqueou qualquer conexão com o pool da NiceHash e com qualquer um de seus outros serviços. Para minha consciência, abri um navegador para o site da NiceHash e com certeza a página estava na lista negra.

Ansioso para continuar meu experimento, instalei um serviço de VPN. Este serviço gratuito durou algumas semanas até que também não conseguiu se conectar. Neste momento, avaliei se vale a pena dedicar mais tempo ao experimento.

E eu senti que deveria continuar …

Na minha busca para encontrar outros serviços VPN confiáveis ??e gratuitos, senti-me satisfeito com os resultados e decidi não prosseguir. Muitas vezes, os serviços VPN gratuitos fornecem apenas uma quantidade limitada de uso de dados por mês. O valor alocado não é suficiente para a quantidade de uso de dados que a mineração requer. Não era ideal para desinstalar serviços expirados e substituí-los por outros serviços VPN. No entanto, o Cryptomining foi uma experiência única que me ensinou muito sobre o futuro, bem como as capacidades da atual tecnologia de computação.

Pilha de criptografia

A partir da minha experiência de aprendizado, anotei um “Cryptomining Stack” que ajuda a visualizar visualmente o aspecto geral da mineração.