Blockchain

A usabilidade do blockchain

Autor(a): Me. Miki Sangawa
Revisor: Luis Fernando Conduta

Tempo de leitura do conteúdo estimado em 58 minutos.

Introdução

Olá, estudante! Seja bem-vindo(a) à unidade sobre blockchain .

Nesta unidade, você conhecerá um pouco mais sobre a tecnologia blockchain . Abordaremos seu funcionamento, como ocorrem as formações dos blocos que constituem a cadeia blockchain e os requisitos para que eles sejam conectados à rede, bem como a tecnologia por trás da tecnologia, que garante as características que a tornam imutável e segura.

E por falar em segurança, abordaremos, também, os meios de proteger suas moedas virtuais e os cuidados necessários para preservar esses valores.

Por fim, você conhecerá como as transações com blockchain são autorizadas.

Está preparado(a)? Boa leitura e bons estudos!

Como o blockchain funciona

O blockchain é uma tecnologia capaz de registrar todas as transações em um ledger , que é um livro digital inviolável e compartilhado entre vários computadores pertencentes à cadeia blockchain , em vez de em um único local centralizado. Até chegar ao estágio do registro dessas transações, existem inúmeros processos que iremos conhecer ao longo deste tópico. Vamos lá?

Toda vez que um usuário da tecnologia blockchain gera uma transação, é criado um token que contém um desafio matemático criptográfico hash com certa dificuldade e uma assinatura do usuário que o gerou. Para sua resolução, esse desafio matemático criptográfico com hash é lançado na rede e leva cerca de 10 minutos para ser validado, em um processo chamado de prova de trabalho ( proof-of work ), que é o resultado da mineração de dados (LAGO, 2017). Veja, no box a seguir, como funciona a mineração.

A mineração é executada pelos membros da rede blockchain que instalam um software do tipo full nodes (nó de rede completo) em seus computadores para interconectar outros “nós de redes completos”, para aceitar os blocos e as transações de qualquer membro pertencente ao blockchain , dando suporte à rede.

Fonte: Andrii Torianyk / 123RF.

É importante destacar que, ao instalar o software full nodes , o usuário abdica de ter uma carteira de criptomoeda no mesmo dispositivo por dois motivos: primeiro, pela incompatibilidade dos softwares, e, depois, por se tornar um “validador” das transações que irão ocorrer na cadeia blockchain , por meio da execução de algoritmos, e ser recompensado por essa tarefa.

Assim, após assumir essa tarefa, esse usuário passa a ser denominado minerador , cabendo, ainda, a responsabilidade de montar os blocos da cadeia a partir das transações espalhadas na rede (GHIRARDI, 2020).

Para isso, os mineradores do full nodes baixam parte da cadeia do blockchain , na prática, devido ao elevado tempo em que os blocos gerados por ele levam para serem adicionados.

Agora, para continuar nossos estudos sobre o blockchain , que tal nos aprofundarmos um pouco mais em como os blocos formam uma cadeia?

Blocos da cadeia

Vimos que um bloco é o resultado do agrupamento de transações. No entanto, para ser conectado aos demais blocos para formar a cadeia de blocos, é preciso atender a algumas regras para ser aprovado. Vamos conhecê-las?

A aprovação de um bloco no blockchain é obtida por meio de cálculos matemáticos realizados pelos mineradores , para resolver um enigma e obter um resultado alfanumérico ideal e único, formado pela combinação de dois elementos: um hash e um nonce , que só pode ser usado uma vez. Por exemplo, se a rede aceita apenas um hash igual 4, esse bloco só é autorizado a se conectar aos demais quando um minerador encontra um nonce que torne o hash 4.

A partir dessa autorização , o bloco pode ser integrado à cadeia de blocos, iniciando um processo de validação com todos os blocos anteriores já pertencentes à cadeia, por meio do hash . Para entender melhor como isso funciona, observe a figura seguir:

a figura representa como é formada a conexão entre os blocos no blockchain e o papel do hash no processo de validação dos blocos. Ela é formada por três blocos, sendo representados por retângulos cuja base de apoio é o menor lado. Dentro do primeiro bloco, temos um quadrado com a informação dados + HASH 0 demonstrando a relação, ou melhor, a conexão existente entre o bloco 1 e o bloco 2 e, embaixo desse quadrado, um outro quadrado, com a informação HASH 1. No último bloco, seguindo a lógica de conexão existente entre os blocos 1 e 2, temos, no bloco 3, um quadrado com a informação dados + HASH 1, demonstrando a relação, ou melhor, a conexão existente entre o bloco 1 e o bloco 2 e, embaixo desse quadrado, outro quadrado com a informação HASH 2.
Figura 3.1 – Funcionamento do bloco em uma transação envolvendo blockchain
Fonte: Adaptado de Nakamoto (2008).

#PraCegoVer : a figura representa como é formada a conexão entre os blocos no blockchain e o papel do hash no processo de validação dos blocos. Ela é formada por três blocos, sendo representados por retângulos cuja base de apoio é o menor lado. Dentro do primeiro bloco, temos um quadrado com a informação dados + HASH 0 demonstrando a relação, ou melhor, a conexão existente entre o bloco 1 e o bloco 2 e, embaixo desse quadrado, um outro quadrado, com a informação HASH 1. No último bloco, seguindo a lógica de conexão existente entre os blocos 1 e 2, temos, no bloco 3, um quadrado com a informação dados + HASH 1, demonstrando a relação, ou melhor, a conexão existente entre o bloco 1 e o bloco 2 e, embaixo desse quadrado, outro quadrado com a informação HASH 2.

Na Figura 3.1, perceba que o novo bloco, o 3, ao ser integrado à cadeia, recebe um número de registro das transações realizadas pelo bloco anterior, sob a forma de um hash , para validar todas as informações contidas nos blocos anteriores a ele. Com isso, uma espécie de identificação é obtida por cada um dos blocos, garantindo, assim, sua validação . Por esse motivo, existem dois tipos de hash no bloco: um próprio, que valida suas informações, e outro que valida as informações anteriores a sua entrada na cadeia, para que não sejamos capazes de criar blocos que não estejam na mesma cadeia.

Saiba Mais

Caro(a) estudante, quer saber mais sobre o funcionamento da criptomoeda bitcoin e sobre sua relação com a criptografia para que ocorra a validação dos blocos?

Nesse sentido, os autores do artigo indicado explicam o passo a passo, em termos transacionais, de como um bitcoin é transferido para outra pessoa, bem como o papel da criptografia nesse processo.

Quer saber mais sobre o assunto? Acesse o artigo a seguir:

https://revista.fatectq.edu.br/index.php/interfacetecnologica/article/view/194

Fonte: Donato e Bertolete Neto (2017).

Por fim, cabe destacar que esse modelo de validação garante maior clareza, segurança e a imutabilidade da tecnologia, já que todas as transações são mantidas públicas, podendo ser rastreadas desde a sua origem até o momento em que foram inseridas, garantindo a transparência do processo. Além disso, é impossível enganar os usuários da rede blockchain com blocos aleatórios ou blocos com transações alteradas, pelo processo requerer uma validação de confirmação dos dados inseridos nele e, assim, confirmar sua existência. Ainda não avançamos muito, mas vamos fixar o que já vimos até aqui. Vamos lá!

Conhecimento
Teste seus Conhecimentos
(Atividade não pontuada)

Dez minutos é o tempo médio que uma transação de bitcoin leva para ser concluída. Isso porque o sistema precisa lidar com inúmeros processos até que a transferência esteja completa. Com base nesse tema, é correto afirmar que esse período necessário para que a transação seja aprovada é conhecido como:

Parabéns! Respostas enviadas. Aguarde.
Oops! Something went wrong while submitting the form.
Como funciona o hashing no blockchain

Vimos que a tecnologia blockchain utiliza o hash para validar, encadear e autorizar os blocos que são interligados, para garantir a integridade da cadeia. Mas você deve estar se perguntando, o que é hash ?

Hash é um elemento identificador único de uma mensagem obtido por uma função matemática, mais conhecida como hash criptográfico, que homogeniza o tamanho dos dados, após sua conversão criptográfica, independentemente do volume de entrada de dados, em um conjunto alfanumérico de caracteres, aparentemente aleatórios, dos dados de entrada, sejam eles: senhas, vídeos, textos, documentos, qualquer tipo de transação etc.

A unicidade do hash , alinhada a sua baixa capacidade de processo computacional, garante a integridade dos dados transacionados no blockchain porque, na ocorrência de mudanças não previstas no envio dos dados de entrada, por mais que seja um ponto ou uma vírgula, a transação é submetida à função de hashing novamente para ser criptografada (MORAES, 2010).

Veja, no elemento a seguir, um resumo das características da função hashing .

Baixa complexidade no processo de cálculo – a eficiência dos algoritmos de hash é percebida com a baixa exigência do poder computacional para transformar qualquer informação na forma de um bloco de dados em uma série de caracteres de tamanho fixo.
Tamanho fixo – o resultado da função é sempre uma sequência de caracteres alfanuméricos de comprimento fixo, chamada digest , independentemente da entrada de dados. Por exemplo: o tamanho de saída da SHA-256 é 64, mas pode ser de 128 ou 512 bits;
Livre de colisões – um mesmo texto não pode ter o mesmo hash , logo, é impossível calcular um hash que permita encontrar outro hash igual;
Unidirecional – por ser unidirecional, é irreversível, ou seja, mesmo que uma pessoa possua um hash e obtenha os dados que o originaram, na prática, é impossível.

A partir dessa breve abordagem sobre as características do hash , podemos avançar e conhecer o seu funcionamento, representado pelo esquema do infográfico a seguir.

#PraCegoVer : o infográfico interativo tem título “Função Hash” e três itens em cima e três itens abaixo, todos clicáveis, formando duas linhas de três itens cada. Em cima, o primeiro é um ícone de “Play”, que é uma seta simples, na cor vermelha, em forma de triângulo para o lado, apontada para a direita. Ao clicar, temos o seguinte conteúdo: “Entrada de dados, que podem ser senha, documentos, mídia”. Desse ícone, sai uma seta verde que leva ao ícone do meio, que é um cadeado prata aberto, que, ao clicar, mostra o seguinte conteúdo: “Processo de criptografia dos dados de entrada”. Dele, sai outra seta que direciona ao código “01fa43f134567f32”, que, ao clicar, apresenta o seguinte conteúdo: “Saída: conjunto de letras e números de tamanhos fixos”. Na linha abaixo, o esquema é o mesmo, porém, o primeiro ícone é um papel com o texto “TXT”, que, ao clicar, temos o seguinte conteúdo: “Funcionamento da função hash em que, na entrada, dados, vídeos ou textos, após a aplicação da função criptográfica hash, são convertidos (transformados) em códigos de tamanho único”. Em seguida, uma seta leva a um cadeado também prata, em que há o seguinte conteúdo: “Processo de criptografia dos dados de entrada”. Por fim, a seta nos leva ao código “01fa43f3e3456r7f”, que, ao clicar, mostra o seguinte conteúdo: “Saída: conjunto de letras e números de tamanhos fixos”.

No esquema que você pode ver no infográfico, observe que existem diferentes formas de entrada de dados , inclusive quanto ao seu tamanho, representado por um vídeo e um documento em texto que, ao serem submetidos à função hash , transformam-se em uma sequência alfanumérica, um hash de comprimento único. A mudança do comprimento do hash varia apenas conforme o algoritmo adotado, que, em geral, é de 128 bits ou 512 bits, sendo os mais conhecidos o SHA 1 e o MD5.

A função hash aplicada ao blockchain

Vimos que a função hash é responsável por transformar qualquer tipo de dado de entrada em um conjunto alfanumérico de comprimento fixo. Mas qual a utilidade dessa funcionalidade para o blockchain ?

Primeiramente, temos que ter em mente que a função hash não se limita a resumir dados, ela também verifica a integridade de arquivos, como é feito nos blocos, e garante a segurança de senhas dentro de um servidor .

Quanto à funcionalidade do hash , de retornar uma sequência única e de tamanho fixo , ela é responsável por simplificar a complexidade e reduzir o comprimento da representação segura das chaves públicas da carteira. Para isso, esse processo é repetido inúmeras vezes, para reduzir o tamanho do endereço e, também, para adicionar uma camada extra de segurança.

Cabe destacar que o processo de criação de carteiras no bitcoin usa as funções de hash RIPEMD-160, que é uma versão mais comum de ser utilizada, por ser considerada mais segura devido ao seu tamanho e design , e o SHA-256 para torná-las únicas e melhorar a segurança do processo. Quer se aprofundar no tema sobre o algoritmo SHA-256? Veja o box a seguir.

REFLITA

Estudante, o algoritmo SHA-256 é uma função criptográfica que ganhou fama com a bitcoin, ao ser utilizada pelos mineradores, para que uma transação possa ser adicionada a um bloco pertencente à cadeia blockchain .

Se considerarmos que o blockchain é reconhecido por suas transações seguras, o SHA-256 é o algoritmo mais indicado?

Qual a dificuldade de se quebrar uma senha com 256 caracteres?

Além disso, a função hash é usada pelo blockchain para validar as transações que serão inseridas no bloco e garantir a integridade dos blocos conectados, por meio das informações contidas no índice do bloco, como dados do bloco, hora e data e nonce , que, ao serem comparadas com o bloco anterior, cumprem essa finalidade. Esse processo, como vimos, chamado de mineração, faz uso intensivo do hash SHA-256 distribuído em cada um de seus nós de rede para realizar inúmeros cálculos e criar novos blocos no blockchain . Apesar de ser um processo muito rápido, os mineradores consomem um alto poder computacional para resolver o enigma matemático e, por isso, são recompensados com um valor em moeda virtual por bloco validado, com o objetivo de manter a operação e a segurança de toda rede blockchain (LAGO, 2017).

Esse valor varia conforme a complexidade existente para solucionar o enigma de um bloco, assim, quanto maior a complexidade do problema, maior será a recompensa. Para você ter uma ideia, dados de novembro de 2020 trouxeram a recompensa dos mineradores, que foi de 6,25 bitcoins por bloco, o que, convertido em valores da cotação em dólares, aproxima-se de $ 96.875.

Além dessas aplicações das funções hash , temos, ainda, os contratos inteligentes , que procuram gerenciar um contrato público entre as partes. Nessa aplicação, o hash desempenha as seguintes funcionalidades: codificar informações particulares das partes que não podem tornar-se públicas , como dados dos participantes e dados dos endereços da carteira, e garantir a imutabilidade dos contratos , evitando que o contrato seja modificado por meio de um hash exclusivo e para marcar sua validade e autenticidade, como ocorre no pagamento de uma transação de venda via moedas virtuais, em que as partes envolvidas são inalteráveis (JOÃO, 2018). Vamos colocar o que conhecimento que já vimos em prática?

Conhecimento
Teste seus Conhecimentos
(Atividade não pontuada)

Um dos motivos que elevam o status do blockchain nos dias de hoje é a imutabilidade dos dados registrados e a segurança, que impedem que as transações sejam registradas em blocos que não estejam ligados à rede e que as suas transações com criptomoedas não sejam duplicadas.

Tomando como base esse trecho, é correto afirmar que essas características devem-se ao fato de:

Parabéns! Respostas enviadas. Aguarde.
Oops! Something went wrong while submitting the form.
Identificando e protegendo as
contas do usuário

É inegável que o blockchain forneceu um modo seguro e sem intermediários, por meio de seu sistema em blocos distribuídos e de um mecanismo de consenso, para as transações entre usuários. Porém, mesmo com toda essa segurança , problemas ainda são relatados por usuários das criptomoedas. Quer saber por quê?

Para começar, esse modelo de descentralização significa que não há uma autarquia centralizadora, com poderes de fiscalização ou regulação, que dê segurança a todas as transações ou até mesmo uma lei que dê garantias caso haja algum problema.

Por esse motivo, é necessário que o usuário tenha cuidado com o manuseio e armazenamento das criptomoedas, já que é o único responsável por elas. O grande problema dessa responsabilidade é o elevado risco que os dispositivos pessoais, celulares e computadores, possuem, por serem vulneráveis a ataques, sendo o mais recomendado custodiar uma parte de suas moedas virtuais em uma exchange . Mas o que é custodiar? E como isso acontece? Leia sobre esse tema no box a seguir.

Fonte: grgroup / 123RF.

A custódia refere-se ao ato de guardar, proteger algo, igual ao que acontece no mercado financeiro com títulos depositados em nome dos investidores, garantindo a sua propriedade, e podendo ser realizada tanto por pessoas físicas quanto jurídicas. No universo bitcoin , o princípio da guarda e proteção é conservado na plataforma de uma exchange que assume um papel de intermediação.

Já para que o usuário assuma o papel de custodiante, ele precisa solicitar para a exchange a transferência das moedas virtuais de sua posse para a sua carteira de criptomoedas ( wallet ). Mas qual a opção mais segura? Vamos conferir?

Protegendo seu bitcoin

Para que possamos escolher a melhor forma de proteger as moedas virtuais, precisamos, primeiramente, conhecer a tríade que origina os problemas de transação e ataques cibernéticos: falha humana, falha técnica e pessoa mal-intencionada. Para que você possa conhecer melhor cada uma delas, acompanhe o elemento a seguir.

Falha humana

a falha humana decorre de erros do usuário ocasionados por diversos motivos, como compartilhamento de senhas, acesso a e-mail ou sites mal-intencionados e com os dispositivos que roubam senhas e informações para transações, digitação incorreta do endereço do destinatário da transação ou indicação do endereço incorreto para receber um valor.

Falha técnica

essa falha decorre de uma exchange que não investe adequadamente em segurança, seja pela falta de manutenção ou devido a mecanismos ineficientes que permitam ataques cibernéticos.

Pessoa mal-intencionada

refere-se a pessoas que investem seu tempo em meios ilícitos que permitam capturar informações para realizar transações com o bitcoin de terceiros. A tática mais comum é o phishing , que serve para coletar informações pessoais e senhas por meio de e-mails ou sites falsos, mas que são idênticos aos das exchanges de criptomoedas.

  1. conteúdo do item 1: Eu mi bibendum neque egestas congue quisque egestas diam in.
  2. conteúdo do item 2: Eu mi bibendum neque egestas congue quisque egestas diam in.
  3. conteúdo do item 3: Eu mi bibendum neque egestas congue quisque egestas diam in.

Agora que conhecemos as causas-raiz dos problemas de transação com bitcoin, você deve estar se perguntando: como me proteger?

Para escolher uma exchange , é importante pesquisar e considerar três aspectos sobre a reputação, tempo de atividade e quadro de funcionário, além de outro aspecto relevante, que é o volume negociado dos principais ativos . Mesmo com essa precaução na escolha de uma exchange , é necessário seguir algumas dicas, que são válidas também para wallets . Vamos conhecer a seguir quais são elas:

  • senhas e autenticação multifator – as práticas de segurança nesse quesito referem-se a não repetir senhas para acessar contas e serviços e verificar se o processo de validação de dados é suportado pelos padrões de autenticação multifator (MFA) e autenticação de dois fatores (2FA);
  • verificar sempre os endereços – sempre que for enviar ou receber moedas virtuais o usuário deve digitar o link em seu navegador e se lembrar de verificar os quatro primeiros dígitos e os quatros finais do endereço, para ter certeza de que é o correto, já que as transações são irreversíveis;
  • adotar o armazenamento frio ( cold storage ) – é a prática de deixar as moedas virtuais off-line quando não estão sendo utilizadas, para reduzir as vulnerabilidades contra hackers. Na prática, isso significa armazenar a carteira de moedas em um local seguro que não esteja ligado à rede;
  • utilizar antivírus e firewalls – a adoção desses dispositivos de segurança de rede evitam que softwares maliciosos , conhecidos como malware , sejam instalados em computadores e celulares para divulgar suas informações, como senhas.

Especificamente sobre malware , cabe explorarmos mais esse tema. Um malware é um software malicioso desenvolvido para infectar um dispositivo de um usuário e prejudicá-lo de diversas formas, como roubando informações e causando danos ao dispositivo. Dentre os tipos de malware , podemos citar alguns exemplos, como vírus, cavalo de Troia, spyware e worms . Você quer conhecer um pouco mais sobre eles? Então, vamos lá:

  • vírus – esse tipo de programa malicioso é caracterizado por se tornar parte de outros programas ou de arquivos, ao se propagar, inserindo cópias de si mesmo;
  • cavalos de Troia – mais conhecido como trojan , os cavalos de Troia são caracterizados por executar outras funções além das que foram projetadas. Por exemplo: um gift animado que, ao ser clicado, instala um programa que rouba senhas;
  • spyware – é um programa projetado para monitorar atividades de um computador para capturar informações sobre navegação do usuário inseridas em outros programas, como conta de usuário e senhas;
  • worms – esse programa é caracterizado por se propagar na rede através do envio de cópias de si mesmo para todos os computadores da rede.

De forma geral, a infecção por esse tipo de software malicioso ocorre através de e-mails , scripts ou ataques realizados por hackers , que se aproveitam de alguma vulnerabilidade de um sistema ou de um aplicativo instalado. Por esse motivo, é fundamental que você mantenha os softwares atualizados e utilize dispositivos de proteção conhecidos, como firewalls e antivírus. Então, para ficar protegido, acesse o link apresentado a seguir, que contém uma cartilha sobre esses tipos de ataques.

Saiba Mais

Os dados contidos em um computador podem ser comprometidos, tornando-se vulneráveis quando infectados por programas maliciosos conhecidos como malware . Para evitá-los, a organização Cert.br elaborou uma cartilha que objetiva orientar os usuários finais de computadores e indiretamente os adeptos da tecnologia blockchain .

Quer saber mais sobre esse assunto? Acesse o link a seguir:

https://cartilha.cert.br/fasciculos/codigos-maliciosos/fasciculo-codigos-maliciosos.pdf

Especificamente no universo do blockchain , esses dispositivos evitam que ocorra o ataque cibernético conhecido como 51% , em que uma única pessoa ou grupo de pessoas é capaz de controlar a maioria dos hash rate (segurança da chave), podendo causar alterações de forma intencional ou excluindo blocos, explorando, assim, as falhas no sistema. Em outras palavras, esse ataque possibilita que o invasor confirme transações, impeça o trabalho dos mineradores etc. Ademais, há relatos dos ataques cryptojacking , em que um malware é instalado em um computador para realizar o trabalho de mineração ilegalmente , sem que o proprietário do dispositivo autorize.

Assim, por mais que a tecnologia blockchain ofereça imutabilidade e segurança em suas transações, podem existir problemas devido a falhas humanas , de tecnologia das exchanges e de pessoas mal-intencionadas. Agora que já adquiriu uma certa bagagem, vamos colocar esse conhecimento em prática!

praticar
Vamos Praticar

Mesmo que um sistema seja infalível e impenetrável, ou melhor, totalmente seguro, em finanças, existe uma frase que representa todo o risco inerente a qualquer tipo de sistema financeiro ou sistema monetário: não coloque todos os ovos na mesma cesta. Mas que ovos e que cesta? O que isso tem a ver com investimentos?

A partir desse trecho, explique qual a melhor alternativa para proteger suas moedas virtuais.

Feedback
Autorizando transações com o blockchain

Vimos que as transações realizadas com moedas virtuais ocorrem sobre o blockchain que, dentre outras funcionalidades, é responsável por confirmar e autorizar as transações.

Essa autorização é obtida por meio de um processo rígido e com regras bem definidas, para que os mineradores vasculhem todo o histórico do blockchain para averiguar se, por exemplo, o endereço de origem possui saldo suficiente para concluir a transação com criptomoedas, mesmo só conhecendo apenas as propriedades dos endereços envolvidos.

A prática de disponibilizar apenas os endereços dos envolvidos garante, de certa forma, anonimidade do minerador que validou a transação e dos usuários para os quais o minerador realizou a transação, aumentando sua confiabilidade. Isso porque, mesmo que um minerador aja de má-fé, atuando em benefício próprio, o bloco será rejeitado porque apenas o detentor da chave privada correta é capaz de autorizar a transação com o endereço correto.

Essa chave privada advém do método criptográfico assimétrico, adotado pelo blockchain para tornar o sistema público, ao intercalar suas informações com a chave pública. Em outras palavras, a chave privada funciona como uma identificação do usuário emissor, portanto, deve ser mantida em segredo, enquanto a chave pública pode ser divulgada por funcionar, nesse caso, como parâmetro para troca de comunicação. Veja como isso funciona na figura a seguir:

a figura representa o papel das chaves públicas e das chaves privadas no processo de criptografia e descriptografia de informações. Na figura, é representado, da esquerda para a direita, BOB, um emissor que envia uma mensagem: “Olá, Alice!” que, ao ser encriptada (encrypt), gera uma chave pública para Alice. Essa informação, ao ser divulgada na rede, está na forma do código ¨6EB69508E03DCE4", assim, apenas Alice consegue ver a mensagem com a sua chave privada que desencripta a mensagem para visualizar a mensagem enviada por Bob.
Figura 3.2 – Como funciona o método assimétrico criptográfico
Fonte: Davidgothberg / Wikimedia Commons.

#PraCegoVer : a figura representa o papel das chaves públicas e das chaves privadas no processo de criptografia e descriptografia de informações. Na figura, é representado, da esquerda para a direita, BOB, um emissor que envia uma mensagem: “Olá, Alice!” que, ao ser encriptada ( encrypt ), gera uma chave pública para Alice. Essa informação, ao ser divulgada na rede, está na forma do código ¨6EB69508E03DCE4", assim, apenas Alice consegue ver a mensagem com a sua chave privada que desencripta a mensagem para visualizar a mensagem enviada por Bob.

Mesmo assim, dependendo do valor da transação, é recomendado esperar que um maior número de confirmações de mineradores aconteça, com o intuito de tornar a transação mais segura, mesmo que leve um certo tempo. Lembre-se de que, em média, cada bloco leva cerca de 10 minutos para ser encontrado, portanto, quanto maior o número de mineradores, maior a segurança da rede.

As transações autorizadas a partir do processo de validação existente no blockchain são transmitidas para todos os nós de rede, e o bloco formado pelo agrupamento dessas transações é adicionado à cadeia blockchain .

O funcionamento da mineração

O processo de mineração, como visto, requer primeiramente a instalação de um software full node para que possa haver comunicação com outros elementos da rede e recebimento dos blocos.

A partir dessa adesão, seu trabalho consiste em encontrar a solução do enigma matemático de um bloco em uma estrutura conhecida como pool , encontrando a solução para a prova de trabalho, que, apesar de ser coletiva , seleciona apenas uma para incluir o seu bloco na blockchain , o que torna o processo competitivo, visando à remuneração (SWAN, 2015).

Em outras palavras, a remuneração conhecida como block reward é dada ao minerador que resolve o complexo enigma matemático (expresso sob a forma de uma equação matemática) primeiro , recebendo o direito de publicar no seu bloco todas as transações validadas.

Para se ter uma ideia, Barbosa et al . (2016, p. 57) trazem um tempo estimado para mineração considerando a capacidade computacional dada em megahash por segundo, que é um indicador fundamental para que a rede de bitcoin funcione. Observe, na tabela a seguir, o tempo médio gasto para minerar um bitcoin e a remuneração por dia em bitcoin.

Capacidade computacional Tempo médio necessário Geração por dia (BTC)
5 MHashes/s 43 anos e 45 dias 0,0032
20 MHashes/s 10 anos e 285 dias 0,0127
100 MHashes/s 2 anos e 57 dias 0,0635
500 MHashes/s 157 dias e 9 horas 0,3177
2.000 MHashes/s 39 dias e 8 horas 1,2706
10.000 MHashes/s 7 dias e 20 horas 6,3532
50.000 MHashes/s 1 dia e 13 horas 31,7661
Tabela 3.1 – Tempo estimado para mineração para um dado usuário gerar bitcoin baseado na capacidade computacional
Fonte: Barbosa et al. (2016, p. 57).

#PraCegoVer : a tabela é formada por três colunas e oito linhas e retrata o tempo estimado para um usuário gerar bitcoin baseado na capacidade computacional. Seguindo a lógica da esquerda para a direita, a primeira célula da primeira linha contém a capacidade computacional, na segunda coluna, o tempo médio necessário e, na terceira coluna, a geração por dia (BTC). Na segunda linha, temos 5 MHashes/s, na segunda coluna, 43 anos e 45 dias e, na terceira coluna, 0,0032. Na terceira linha, temos 20 MHashes/s, na segunda coluna, 10 anos e 285 dias e, na terceira coluna, 0,0127. Na quarta linha, temos 100 MHashes/s, na segunda coluna, 2 anos e 57 dias e, na terceira coluna, 0,0635. Na quinta linha, temos 500 MHashes/s, na segunda coluna, 157 dias e 9 horas e, na terceira coluna, 0,3177. Na sexta linha, temos 2.000 MHashes/s, na segunda coluna, 39 dias e 8 horas e, na terceira coluna, 1,2706. Na sétima linha, temos 10.000 MHashes/s, na segunda coluna, 7 dias e 20 horas e, na terceira coluna, 6,3532. Na oitava linha, temos 50.000 MHashes/s, na segunda coluna, 1 dia e 13 horas e, na terceira coluna, 31,7661.

A partir desse resultado apresentado pelos autores, somos levados a uma reflexão: será que a mineração vale a pena?

Percebe-se, a partir dos resultados apresentados por esses autores, a necessidade de um hardware com um alto poder computacional que, diretamente, onera os custos decorrentes da mineração, principalmente de bitcoin, que exige hardwares específicos chamados de ASIC e suas atualizações requeridas, à medida que a rede expande ou a competitividade aumenta. Quer saber mais sobre qual hardware você precisa ter para minerar com qualidade? Veja isso e mais no link do box a seguir.

Além disso, deve ser considerada a energia elétrica, já que os computadores precisam ficar ligados o dia inteiro para fazer verificações das transações, montagem de blocos e realizar tentativas de encontrar a solução hash , o que inviabiliza a mineração no Brasil, pois as tarifas de eletricidade são muito altas. Agora que você está por dentro do processo de mineração, que tal praticar e colocar esse conhecimento em prática?

praticar
Vamos Praticar

Não existem mineradoras oficiais de bitcoin no Brasil porque, infelizmente, essa prática é inviável, econômica e financeiramente, para que as empresas invistam e implementem essas soluções.

Diante do exposto, explique os motivos que inviabilizam a instalação de uma mineradora no Brasil.

Feedback
Material Complementar
Livro

Segurança em rede: fundamentos

Editora : Érica

Autor : Alexandre Fernandes de Moraes

ISBN : 978-85-365-2208-1

Comentário : Agora que você já sabe como um hash funciona, que tal aprofundar seus conhecimentos sobre os algoritmos hash ? No Capítulo 1 desse livro, o autor explora as características dos algoritmos MDA e SHA e faz uma comparação sobre suas funcionalidades.

web

O que é um hash ? (bitcoin/ blockchain )

Ano : 2017

Comentário : O hash é uma das tecnologias que sustentam o blockchain . Mas, na prática, como ele funciona? Nesse contexto, Tiago Salum esclarece o funcionamento dessa tecnologia e sua relação com o consenso a partir de um exemplo prático. Além disso, o autor do vídeo traz uma reflexão sobre os inúmeros conceitos confusos que estão disponíveis na internet para explicar a tecnologia hash .

Acessar
web

Como funcionam as transações no bitcoin?

Ano : 2019

Comentário : Uma transação realizada com a moeda virtual bitcoin envolve inúmeros elementos, como a assinatura digital e os UTXO. Assim, para conhecê-los e saber mais sobre sua importância nesse processo de transação, acesse o vídeo em que Tiago Salem explica, de forma prática, o seu funcionamento em uma plataforma:

Acessar
Conclusão

Chegamos ao final dessa etapa. Ao longo desta unidade, você pôde aprofundar-se nos estudos sobre a tecnologia blockchain e sobre seu funcionamento, ao aprender como a cadeia de blocos é formada. Além disso, conheceu como um bloco é constituído e os requisitos para que ele pertença ao blockchain . Dentre esses requisitos, vimos que o hash desempenha um papel fundamental de integração dos blocos e validação das transações contidas nos blocos. Outro aspecto relevante abordado foi como proteger seus bitcoins a partir de dicas, tanto para os usuários de exchanges quanto para os de wallets .

Por fim, você conheceu como as transações com blockchain são autorizadas no universo das criptomoedas.

Referências

BARBOSA, T. C. B. de M. et al . A revolução das moedas digitais : bitcoins e altcoins. São Paulo: Revoar, 2016.

CÓDIGOS maliciosos (malware). Cert.br , [2021]. Disponível em: https://cartilha.cert.br/fasciculos/codigos-maliciosos/fasciculo-codigos-maliciosos.pdf . Acesso em: 25 maio 2021.

COMO minerar com placa de vídeo e CPU ao mesmo tempo no Windows - Quartinho de mineração. [S . l.: s. n .], 2020. 1 vídeo (30 min 43 s). Publicado pelo canal Denny Torres. Disponível em: https://www.youtube.com/watch?v=i8I3RyuX9VU . Acesso em: 25 maio 2021.

DONATO, L. P.; BERTOLETE NETO, B. Criptomoeda virtual: o impacto do bitcoin no mundo. Interface Tecnológica , v. 14, n. 2, 2017. Disponível em: https://revista.fatectq.edu.br/index.php/interfacetecnologica/article/view/194 . Acesso em: 25 maio 2021.

GHIRARDI, M. do C. G. Criptomoedas : aspectos jurídicos. São Paulo: Almedina, 2020.

JOÃO, B. N. Blockchain e o potencial de novos modelos de negócios: um mapeamento sistemático. Revista de Gestão e Projetos , v. 9, n. 3, p. 33-48, 2018. Disponível em: https://periodicos.uninove.br/gep/article/view/11121 . Acesso em: 29 mar. 2021.

LAGO, L. Blockchain: confiança através de algoritmos. CEST : boletim, v. 2, n. 2, 2017. Disponível em: http://www.cest.poli.usp.br/wp-content/uploads/2018/08/V2N4-Blockchain-confian%C3%A7a-atrav%C3%A9s-de-algoritmos.pdf . Acesso em: 20 abr. 2021.

MORAES, A. F. de. Segurança em rede: fundamentos. São Paulo: Érica, 2010.

NAKAMOTO, S. Bitcoin : a peer-to-peer electronic cash system. 2018. Disponível em: https://bitcoin.org/bitcoin.pdf . Acesso em: 20 abr. 2021.

O QUE é um hash? (bitcoin / blockchain). [ S. l.: s. n. ], 2017. 1 vídeo (13 min 28 s). Publicado pelo canal Tiago Salem. Disponível em: https://www.youtube.com/watch?v=sCWeeAPIFoQ . Acesso em: 25 maio 2021.

SWAN, M. Blockchain : blueprint for a new economy. California: O’Reilly Media, Inc., 2015.

x
-