Capítulo 2 do livro "Mastering Bitcoin" de Andreas M. Antonopoulos
Seção "II Overview of Bitcoin" do artigo "SoK: Research Perspectives and Challenges for Bitcoin and Cryptocurrencies"
Bitcoin Developer Guide, seções: Block Chain, Transactions, P2P Network
"Chapter 3: Mechanics of Bitcoin" do livro Draft textbook: Bitcoin and Cryptocurrency Technologies
Audiovisual:
Bitcoin Protocol and Consensus: A High Level Overview
Consensus Algorithms, Blockchain Technology and Bitcoin UCL - by Andreas M. Antonopoulos
Immutability and Proof-of-Work - the planetary scale digital monument
GOTO 2014 • How the Bitcoin Protocol Actually Works • Jan Møller
Lecture 3 — Mechanics of Bitcoin
Assim como em sistemas monetários tradicionais, usuários de Bitcoin possuem acesso a múltiplas aplicações onde é possível ter controle sobre uma carteira digital contendo o histórico de todas as suas transações. Tais facilidades impulsionam os usuários a movimentarem a moeda em transações tipicamente corriqueiras, proporcionando ao Bitcoin versatilidade e robustez já que tais aplicações podem trazer novos usuários ao sistema. Vale notar que em transações corriqueiras as devidas validações devem ser feitas em tempo tão hábil quanto o qual estamos acostumados com cartões de crédito, por exemplo. Apesar da prova de trabalho ser essencial para o sucesso da moeda, pequenas transações devem ser rápidas o suficiente para que os usuários sintam que o Bitcoin é um substituto sério das moedas tradicionais. Por isso, as carteiras digitais adicionam ao protocolo features que facilitam o uso da moeda diariamente.
ResponderExcluirUma característica muito importante do protocolo do Bitcoin é a Teoria dos Jogos envolvida no sistema de incentivos que garante a segurança de rede.
ResponderExcluirPiers são motivados a trabalharem honestamente pois as regras beneficiam quem as seguem e geram um custo sem recompensa para quem tenta burlar a segurança, através dessa engenhosa solução, Satoshi conseguiu projetar um protocolo que funciona até melhor na prática do que na teoria.
Críticos afirmam ser insustentável e impraticável, embora o Bitcoin requerer bastante energia para escalar, é um preço a se pagar para garantir a segurança e integridade de seu protocolo.
Umas das coisas que me chamou atenção nesse final de semana é que há outras vertentes da Bitcoin que usam uma prova de trabalho que dificulta paralelismo e permite uma maior descentralização da rede (scrypt e Litecoin), por usar mais memória. Isso parece ser uma boa implementação pois permite uma maior democratização e maior segurança ao impedir que determinados grupos detenham a rede de mineradores que apostam em ASIC. Além disso, tecnologias de memória tem um crescimento mais lento e distribuído.
ResponderExcluirApesar de o Bitcoin ser descentralizado no quesito de não precisar de intervenções governamentais, o que se percebe na prática é uma concentração de mineradores e de recursos para mineração. Uma das questões comentadas na aula foi o Bitcoin Gold, que surgiu após uma atualização no Protocolo Bitcoin para acelerar transações, em outubro de 2017. Os desenvolvedores dessa segunda versão do Bitcoin afirmaram que o objetivo do Bitcoin Gold é tornar o processo de mineração mais justo para todos. Para alcançar esse objetivo, foi feita uma alteração no algoritmo de mineração, de forma a impedir que o processo de mineração seja realizado de forma mais rápida em equipamentos especializados do que em computadores comuns.
ResponderExcluirUma das principais características do Bitcoin é a utilização do PoW (Proof of Work) como forma de recompensar quem valida os novos blocos, candidatos a entrarem na blockchain, uma espécie de livro público compartilhado, que guarda todas as transações feitas na rede.
ResponderExcluirA intenção do Proof of Work é impedir que alterações inválidas entrem nesse livro público, na prática isso é feito através de longas strings numéricas, chamadas de hash. Cada bloco presente na blockchain contém uma hash (no caso do Bitcoin, criada pela função SHA-256). Como cada bloco contém uma informação do bloco anterior, e como a menor alteração no conjunto de dados de entrada para geração da hash causaria mudanças gigantescas na string gerada, para inserir blocos inválidos, o atacante deveria validar, de forma recursiva, todos os blocos que apontam de certa forma ao seu novo bloco.
Gerar qualquer hash para um bloco é uma tarefa trivial para qualquer computador moderno, com isso, o Bitcoin adiciona uma dificuldade (chamado de trabalho) com o objetivo de que cada bloco demore por volta de 10 minutos para entrar na blockchain. Essa dificuldade é alcançada pela restrição no conjunto de hashes válidas. Na prática isso significa que a hash deve começar com uma determinada quantidade de zeros, quanto maior essa quantidade, menor será o conjunto de hashes válidas.
O problema dessa tática se resume no fato de que, o custo computacional necessário para completar o desafio de encontrar uma hash válida é traduzido num alto custo de energia. Para se ter uma ideia, a energia necessária para validar um bloco em 2015 era igual a energia diária necessária para alimentar 1.57 cidadães dos EUA. Com isso parte da recompensa ganha por validar uma transação é convertido para moeda FIAT, a fim de cobrir os custos com energia, levando a um movimento descendente no preço da moeda.
Uma alternativa para o PoW é o PoS (Proof of Stake) que libera poder computacional de acordo com a quantidade de moedas do minerador (quem valida os blocos).
Fonte:
https://www.investopedia.com/terms/p/proof-work.asp
https://www.investopedia.com/terms/p/proof-stake-pos.asp
O comentário está bem confuso. Leia mais sobre "proof of work", e revise o que escreveu.
ExcluirEm complemento ao meu comentário anterior, gostaria de dizer que sistemas que utilizam PoW são suscetíveis a Tragédia dos Comuns. Essa tragédia se refere a um ponto futuro onde existirão poucos mineradores, devido a baixa (ou nenhuma) recompensa pela mineração. Uma vez que todos os Bitcoins tiverem sido gerados, as únicas taxas recebidas pelos mineradores seriam as oferecidas pelas transações. Esse cenário pode levar a uma queda no número de minerados, o que tornaria mais fácil o ataque dos 51%, onde um atacante controla 51% dos mineradores, tornando seus blocos inválidos em blocos válidos (a maioria tem sempre razão).
ResponderExcluirNesse mesmo cenário, num sistema que utilize PoS, para realizar o ataque dos 51%, o atacante deve ter 51% das moedas disponíveis.
Existem também outras alternativas, como a apresentada pela IOTA, onde para realizar uma transação o usuário deve primeiro confirmar/validar duas transações anteriores, removendo a ideia de mineradores (e o aspecto centralizador que podem trazer) e removendo taxas de transferência.
Leia sobre a tragédia dos comuns e revise o que escreveu no comentário.
ExcluirÉ interessante notar que, o protocolo que opera sobre o Bitcoin pode ser estendido para varias aplicações. Em suma, tudo aquilo que possui um ativo e se necessita de autenticação, como contratos, documentos, certificados, pode ter uma solução derivada do protocolo Bitcoin. Uma vez que o Bitcoin passa a ser um ativo em si, pois não pode ser copiado (único) e possui o valor em ser usado no método de pagamento/autenticação rápido e super confiável, ele se tornou o pioneiro e modelo de uma mudança no paradigma de acordos entre duas partes, e o que é mais impressionante, consegue tudo isso sem necessidade de confiança.
ResponderExcluirO que mais me chamou a atenção nos últimos meses, foi a quantidade de iniciativas tentando aplicar blockchain em suas iniciativas, com o objetivo de torná-las mais eficientes ou seguras, ou até mesmo criando algo novo que se tornou possível graças às blockchain. É bem marcante ver como o bitcoin conseguiu influenciar tanto o mercado com sua arquitetura descentralizada, e cada vez mais vemos novidades a respeito. Confosse que era bem complicado de compreender como de fato funcionava a mineração, porém agora que entendo vejo como minerar por PoW se tornou algo para big players, o que é bem triste para alguns que se sentem intimidados para começar a mecher com a tecnologia. Várias dúvidas ainda surgem a respeito das criptomoedas, mas no geral, espero que o funcionamento delas melhores cada vez mais e torne o mundo das transações mais prático e seguro.
ResponderExcluirMuito bom a referencia do Bitcoin Developer Guide. Explica muito bem cada parte do que compõe o bitcoin. A parte que achei mais interessante foi a explicação de cada parte da transação Bitcoin. A parte de input, output, o conjunto de imagens e explicações conseguem realmente transmitir como é o real funcionamento por trás de uma transação. Uma nova informação que eu vim saber devido as expressões utilizada nesse artigo foi relacionado a satoshis. Os Satoshis pelo que li é a menor fração ou parte de um Bitcoin. No caso é o que permitem que os usuários e investidores de Bitcoins não precisem, de fato, possuir um Bitcoin inteiro.
ResponderExcluirUm ponto interessante do bitcoin é o fato de haver nele tanto um aspecto ee confiabilidade quanto de disconfiaça. Por um lado a disconfiaça que garante a autenticidade do autor de uma transação, por meio do uso das chaves privada e publica, e tambem na integridade dos blocos de transição, esta garantida pelo uso de funções criptograficas, como a sha256 no caso do bitcoin core. Tambem, como supracitado, existe um aspecto de confiaça, principalmente na rede, pois se 50% +1 de toda a rede bitcoin aceitar um bloco, mesmo fraudulento, esse bloco sera aceito na blockchain e sera contado como correto por todo usuario. Porem, essa confiança não é cega, pois se a rede passasse a aceitar blocos de transições com fraudes contidas, a propria moeda perderia o valor frente a seus usuarios e consequentemente o valor de mercado, e como os mineradores em geral possuem tambem a moeda, não é provavel que seja do interesse destes a aceitação de transições fraudulentas. Portanto, podemos considerar como uma confiança estrategica
ResponderExcluirMinierar bitcoins é uma tarefa associada a encontrar um bloco válido, onde remunera com frações de bitcoin o nó que encontrou aquele bloco. Depois de ler um pouco o livro sugerido neste post, "Bitcoin and Cryptocurrency Technologies", pude perceber que validar um bloco é bem mais complicado do que validar transações, pois além de validar o cabeçalho e verificar que o valor da hash esteja no intervalo de aceitação, também precisa-se validar todas as transações no bloco, onde ao final, um nó irá encaminhar um bloco, se ele estiver na ramificação mais longa. Percebo então, que a questão é que encontrar um bloco válido é uma tarefa computacional mais difícil e requer mais tempo.
ResponderExcluirUm ponto bastante interessante do Bitcoin é o uso de funções hash e de árvores de Merkle(árvores binárias de hash). Essa abordagem é bastante interessante, pois torna o processo de endereçamento e busca nos blocos relativamente simples. Outra coisa que vale à pena mencionar é o processo de prova de trabalho do Bitcoin, que é muito questionado, pois é um custo computacional que muitas vezes é perdido. Porém, é com base nesses pontos fortes e fracos que surgem novas criptomoedas que buscam resolver os problemas do Bitcoin e até adicionar novas características.
ResponderExcluirAchei interessante ver o funcionamento do protocolo, e como a academia analisa a escalabilidade e estabilidade do bitcoin, pois como é uma moeda e possui influência socioeconômica alta, os estudos em cima dela devem ser fortes, pois as más práticas aplicadas nela, podem acarretar em desastres que afetariam a muitas pessoas.
ResponderExcluirVendo isso, percebo que existe estudos sobre o comportamento dos mineradores e como sua importância na produção de novas moedas afeta a estabilidade/confiança, as regras para novas moedas e o próprio ecossistema de mineração (o canibalismo que existe entre grandes mineradores e pequenos). Dados como esses são trazidos no "SoK: Research Perspectives and Challenges for Bitcoin and Cryptocurrencies", a onde ele comenta sobre a existência de 'centralidades', ainda dentro do bitcoin, e propostas para revisão do protocolo, para permitir múltiplas utilidades dela, não somente para fins financeiros, como por exemplo o Primecoin, que utiliza como prova de trabalho a busca de números primos grandes de interesse matemático.
Outra ponto interessante que percebi foi que, o uso da comunicação P2P crescente, permite um maior estudo e investimento na área, permitindo a busca de facilidades de comunicação e transferência de dados dela, o que não seria somente utilizado no bitcoin, mas em outra inúmeras tecnologias.