Bitcoin é uma “versão peer-to-peer de dinheiro eletrônico que permite que pagamentos online sejam enviados diretamente de uma parte para outra sem passar por uma instituição financeira”. Nossa visão para o Bitcoin é expandir a flexibilidade do sistema para funcionar de forma eficiente em escala extremamente alta, ao mesmo tempo em que mantém a segurança e as principais propriedades de descentralização que tornam o Bitcoin único.
Acreditamos que o Bitcoin pode conseguir isso fornecendo a base para camadas adicionais sobre o protocolo e interfaces com outros sistemas. Além disso, nossos objetivos de longo prazo incluem proteger e melhorar a privacidade dos usuários de Bitcoin.
“Bitcoin Core” refere-se a um projeto de software de código aberto que é descendente direto da implementação original do Bitcoin. Como colaboradores do projeto, mantemos e lançamos software para a comunidade Bitcoin para consideração dos usuários. Nós nos esforçamos para fazer melhorias no protocolo de consenso, propondo atualizações que acreditamos fazerem sentido técnico de acordo com nossa compreensão dos objetivos do Bitcoin, e que acreditamos ter uma chance razoável de amplo apoio e adoção.
Mudanças nas regras de consenso do Bitcoin podem ser feitas por meio de soft forks ou hard forks (consulte o Apêndice A). Os garfos macios permitem alterações compatíveis. Com soft forks, software antigo e novo podem coexistir na rede. Soft forks podem introduzir novos recursos sem interrupções porque os usuários que desejam usar os novos recursos podem atualizar, enquanto aqueles que não desejam estão livres para continuar normalmente.
Hard forks quebram a compatibilidade de todos os softwares Bitcoin anteriores e exigem que cada participante atualize para as mesmas regras dentro de um prazo ou corre o risco de perder dinheiro. Tais eventos também podem prejudicar os efeitos da rede, empurrando os participantes para fora da rede se eles não tomarem nenhuma ação e potencialmente quebrando software e aplicativos downstream.
Por estas razões, o Bitcoin Core favorece fortemente a compatibilidade e acredita que deve ser uma escolha de cada usuário não atualizar as regras do seu software Bitcoin atual. Acontece que é possível adicionar quase qualquer novo recurso com um soft fork. Ocasionalmente, hard forks podem ter alguns benefícios e, se houver um acordo quase universal, esses benefícios podem superar as desvantagens. Exceto nesses casos raros, os soft forks devem ser preferidos. Acreditamos que isso é do interesse dos usuários atuais e futuros do sistema.
Esperamos também que, à medida que o ecossistema Bitcoin cresce, o número de implementações alternativas de protocolo Bitcoin possa aumentar, e é inevitável que outros projetos de software possam lançar propostas de software radicalmente diferentes para o ecossistema considerar. No final das contas, a equipe de desenvolvimento do Bitcoin Core não decide as regras de consenso do Bitcoin. Em vez disso, os usuários participam do Bitcoin fazendo sua própria escolha de qual software Bitcoin executar. É por isso que o software Bitcoin Core deliberadamente não possui um recurso de atualização automática. Sua omissão garante a participação voluntária do usuário em cada atualização, para que os usuários sempre possam escolher qual software executar.
Apêndice A
Um hard fork é uma mudança nas regras de consenso, em que blocos que seriam inválidos sob as regras antigas podem tornar-se válidos sob as novas regras.
Um soft fork é uma mudança nas regras de consenso, em que os blocos que seriam válidos sob as regras antigas podem tornar-se inválidos sob as novas regras, mas todos os blocos que seriam inválidos sob as regras antigas permanecem inválidos sob as novas regras.