O que é bits de versão BIP9?
O bits de versão BIP9 sistema é uma forma de introduzir mudanças de regras compatíveis com versões anteriores nas regras de consenso do Bitcoin, conhecidas como soft fork.
bits de versão permite que os mineradores sinalizem que podem validar as regras do soft fork. Também permite que até 29 soft forks sejam propostos simultaneamente.
Como é bits de versão ativado?
bits de versão não requer ativação, é simplesmente uma maneira de os mineradores sinalizarem a prontidão para um soft fork, definindo bits no campo nVersion do cabeçalho do bloco.
O que são tempos limites de soft fork?
Os garfos macios têm uma hora de início e uma tempo esgotado durante o qual a proposta está ativa. O soft fork só pode ser ativado entre hora de início e tempo esgotado. Se o soft fork não for ativado pelo tempo esgotadoa proposta do soft fork falha e não será ativada mesmo se sinalizada.
Qual é o fluxo de trabalho de ativação?
Sob bits de versãouma proposta de soft fork passa por um fluxo de trabalho:
(DEFINED)
->(STARTED)
->(LOCKED_IN)
->(ACTIVE)
ou
(DEFINED)
->(STARTED)
->(FAILED)
A rede Bitcoin redireciona a dificuldade de mineração a cada bloco de 2016; Neste momento bits de versão olhará a janela dos blocos anteriores de 2016 para ver quantos blocos sinalizam para um determinado soft fork. Se 95% dos blocos sinalizarem prontidão para o soft fork, o estado muda de (STARTED)
para (LOCKED_IN)
.
Depois (LOCKED_IN)
as regras serão ativadas após mais um redirecionamento de dificuldade, ou seja, mais blocos de 2016. O software Nodes avisará que uma atualização está pendente.
Qual é o bit da versão?
Quando nenhum soft fork estiver sendo sinalizado, os mineradores devem definir o campo de versão do bloco como 0x20000000
.
Quando os mineiros devem definir bits?
Para sinalizar a prontidão para soft fork(s), os mineradores devem definir o(s) bit(s) de versão relevante(s) junto com 0x20000000
. Isso só deve ser feito depois que o soft fork hora de início.
Os bits devem ser desativados se o soft fork for ativado ou alcançado (FAILED)
estado.
Por exemplo:
O soft fork “alice” usa o bit 0, ou seja 0x1
+ 0x20000000
0 | 0 | 1 | 0 | 0 | … | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
O garfo macio “bob” usa bit, 1, ou seja 0x2
+ 0x20000000
0 | 0 | 1 | 0 | 0 | … | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
Para sinalizar os dois soft forks ao mesmo tempo, use 0x20000003
(ou seja, 0x1
+ 0x2
+ 0x20000000
*)
0 | 0 | 1 | 0 | 0 | … | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
- observe que se um for ativado antes do outro, você deve desarmar o bit relevante e continuar sinalizando o outro. SE um não for ativado e o tempo limite expirar, você também deverá desarmar o bit.
Como ele difere de um soft fork ISM?
IsSuperMajority() ou ISM, para abreviar, é um gatilho soft fork legado que ativa novas regras quando 950 de 1.000 blocos são minerados, o que sinaliza a nova versão do bloco.
-
Um soft fork IsSuperMajority() deixará todos os blocos órfãos da versão anterior após a ativação. Por exemplo, se a versão atual for 4 e o próximo soft fork introduzir blocos da versão 5, depois que a ativação for alcançada (950/1000 blocos), os nós rejeitarão todos os blocos da versão 4.
-
Uma vez por bits de versão soft fork atinge a ativação, os nós simplesmente começarão a aplicar as novas regras e NÃO deixarão um bloco sem sinalização órfão a menos que isso viola as novas regras.
-
ISM() analisa os 1.000 blocos anteriores de forma contínua; bits de versão analisa o bloco anterior de 2016 uma vez cada vez que a dificuldade de mineração é redirecionada.
-
Os soft forks ISM() não expiram. bits de versão soft forks só podem ser ativados entre hora de início e o tempo esgotado.
Os mineiros precisam atualizar?
Não. BIP9 O soft fork não será ativado a menos que 95% dos mineiros sinalizem prontidão. Se um garfo macio alcançar (LOCKED_IN)
estado, onde a grande maioria dos mineradores está pronta para a mudança, os mineradores restantes devem atualizar antes o próximo redirecionamento de dificuldade (cerca de 2 semanas).
Os mineradores não atualizados correm o risco de produzir blocos inválidos que ficariam órfãos se não conseguissem validar as regras recém-ativadas.
Quem atribui bits de versão a diferentes propostas de atualização?
Soft forks são propostos através do Processo de BIP. Ativo BIP9 propostas de soft fork estão listadas no página de tarefas