Características importantes do Bitcoin que você pode não ter conhecido ou esquecido

Nos últimos dias, o preço do bitcoin tem sido em um passeio de montanha russa. O que começou como uma viagem emocionante à lua foi de curta duração por fatores que nem mesmo os aficionados criptográficos conseguem entender. Bem, nessa nota, isso levantou a questão, talvez as pessoas tenham esquecido alguns dos detalhes mesquinhos sobre o Bitcoin.

O documento de Satoshi Nakamoto de 2009 intitulado „Bitcoin: A Peer-to-Peer Electronic Cash System“ introduziu o Bitcoin como uma versão puramente peer-to-peer de dinheiro eletrônico que permite o envio de pagamentos on-line diretamente de uma parte a outra sem passar por um intermediário centralizado, como um banco. Como tal, o Bitcoin substitui as funções das instituições financeiras na cadeia de transações por pessoas anônimas que verificam a precisão e confiabilidade da transação através da Internet.

Na rede Bitcoin, as funções de uma instituição financeira no processamento de pagamentos são substituídas pelo software de código aberto da rede, permitindo aos membros descentralizados da rede, ou seja, nós, votar com seu poder de computação/CPU para determinar a validade de uma transação.

A Bitcoin emprega uma arquitetura de rede peer-to-peer baseada na Internet. Sendo uma rede P2P, os nós da Bitcoin são todos iguais, com todos os nós compartilhando a carga de funcionamento da rede em igual medida. Apesar da enorme popularidade da Bitcoin, poucas pessoas realmente entendem a arquitetura de rede. Veja a seguir as características não documentadas da arquitetura Bitcoin

Arquitetura de rede Bitcoin de ponto-a-ponto

A arquitetura de rede P2P da Bitcoin é muito parecida com o sistema de caixa digital peer-to-peer por projeto. A rede Bitcoin é essencialmente uma coleção de nós que executam o protocolo P2P. Além do protocolo P2P, a rede Bitcoin constitui outros protocolos como Stratum, que executa várias funções na rede, como mineração e suporte a carteiras móveis.

Os protocolos adicionais da rede são suportados por servidores de roteamento de gateway que acessam a rede Bitcoin usando seu protocolo P2P e depois oferecem a rede a nós que operam outros protocolos. A rede Bitcoin global que consiste no protocolo Bitcoin P2P, o protocolo Stratum e qualquer outro protocolo que se conecte aos componentes da arquitetura da rede Bitcoin é chamada coletivamente de „rede Bitcoin estendida“.

Executando a rede Bitcoin

Como foi dito anteriormente, os nós são responsáveis pelo funcionamento da rede Bitcoin. Um nó Bitcoin consiste em um conjunto de funções, incluindo o banco de dados da cadeia de bloqueio, roteamento, mineração e serviços de carteira.

Todos os nós da rede Bitcoin propagam e validam transações na rede e mantêm conexões com outros nós da rede. Um nó Bitcoin completo consiste em todas as quatro funções, ou seja, carteira, minerador, banco de dados completo da cadeia de bloqueio e roteamento da rede.

Os nós completos podem verificar de forma autônoma e autorizada qualquer transação sem referência externa. Além dos nós completos, a rede Bitcoin também é operada por outros tipos de nós. Estes incluem nós de verificação de pagamento leves ou simplificados (SPV), responsáveis pela verificação das transações.

Os nós de mineração alavancam o consenso da Prova de Trabalho para criar novos blocos. Para executar a rede Bitcoin, os nós seguem uma etapa pré-determinada como abaixo:

  1. Todos os nós são notificados de uma nova transação na rede
  2. Cada nó coleta novas transações em um bloco
  3. Cada nó então trabalha para estabelecer uma difícil prova de trabalho para seu bloco
  4. Após encontrar uma prova de trabalho, o nó transmite o bloco para todos os nós
  5. Os nós da rede então aceitam o bloco, mas somente se todas as transações nele efetuadas forem válidas e não gastas
  6. Para retratar sua aceitação do bloco, os nós começam a trabalhar no próximo bloco da cadeia, usando o hash do bloco aceito como no hash anterior.

Algumas vezes, dois nós na rede Bitcoin podem transmitir versões diferentes do próximo bloco, fazendo com que outros nós recebam qualquer uma das diferentes versões do bloco. Neste caso, os nós trabalham no primeiro bloco que receberam, mas ainda assim salvam o outro bloco caso ele se torne mais longo.

Nem todos os nós recebem a nova transação transmitida. Entretanto, novas transações que chegam à maioria dos nós da rede podem ser aceitas no bloco muito mais rapidamente, e se um nó não receber um bloco, ele pode solicitá-lo ao receber o próximo bloco e perceber que perdeu um bloco.

Transações na rede Bitcoin

As transações na rede Bitcoin são feitas eletronicamente, utilizando uma cadeia de assinaturas digitais. Isto significa que cada proprietário de Bitcoin transfere uma moeda para a próxima pessoa assinando digitalmente um hash da transação anterior e a chave pública do próximo proprietário e incorporando uma assinatura no final da moeda. Um recebedor pode verificar a assinatura para verificar a cadeia de propriedade.

Para garantir que um recebedor possa verificar que um dos proprietários não gastou duas vezes a moeda, a rede Bitcoin implementa um servidor de carimbo de data/hora. Um servidor de timestamp funciona tomando um hash de um bloco de itens a serem timestampados e publicando amplamente o hash.

Uma transação deve obviamente existir naquele momento em particular para entrar no hash. Os carimbos de tempo na rede formam uma cadeia com cada carimbo de tempo incluindo o carimbo de tempo anterior em seu hash e cada carimbo de tempo adicional reforçando o anterior.

A rede Bitcoin implementa a funcionalidade do carimbo de data/hora alavancando o algoritmo de prova de trabalho. O PoW do Bitcoin envolve a varredura de um valor como SHA-256, de tal forma que, quando o hash é hash, o hash começa com um número de bits zero. Para marcar a hora das transações, a rede Bitcoin implementa o algoritmo de prova de trabalho incrementando um nonce no bloco até que um valor que dá ao hash do bloco zero bits seja encontrado.

Ao empregar a PoW, a Bitcoin também resolve a questão de determinar as principais decisões através da votação. O PoW na rede é basicamente umCPU-um-voto; assim, a decisão majoritária é determinada pela cadeia mais longa, que tem a maior prova de esforço de trabalho ligada a ela.

Uma média móvel visa um número médio de blocos por hora para equilibrar a geração de blocos e compensar o interesse variável nos nós de funcionamento; se os blocos são gerados muito rapidamente, a dificuldade de prova de trabalho aumenta.

Conclusão

Bitcoin é uma rede peer-to-peer que usa prova de trabalho para registrar um histórico público de transações. A rede bitcoin principal, executando o protocolo bitcoin P2P, consiste de entre 7 000 e 10 000 nós de escuta executando várias versões do cliente de referência bitcoin (Bitcoin Core) e algumas centenas de nós executando várias outras implementações do protocolo bitcoin P2P, incluindo BitcoinJ, btcd e Libbitcoin.

Os nós da Rede Bitcoin atuam como roteadores de borda de rede que suportam vários serviços de rede, tais como trocas, carteiras, exploradores de blocos e processamento de pagamentos de comerciantes. A arquitetura de rede única da Bitcoin pode ser implementada em outros setores para oferecer descentralização e aumentar a segurança da rede.