Como comprimir os dados mantidos por um nó
Cada transacção de Bitcoin será registada num dos blocos que compõem a cadeia de blocos.
Como tal, o nó que executa a cadeia de bloqueio deve conter dados de todos os blocos, a fim de verificar o registo da transacção.
No entanto, à medida que o número de transacções Bitcoin aumenta, a quantidade de dados que os nós precisam de reter torna-se cada vez maior.
Para resolver este problema, construímos um mecanismo que limita a quantidade de dados que um nó precisa de manter em qualquer altura a uma percentagem muito pequena.
Especificamente, uma vez que um nó tenha acumulado um certo número de registos de transacções actualizados, é seguro apagar os registos mais antigos.
Mais uma vez, uma função hash é utilizada para o conseguir.
Os registos de transacções múltiplas são reunidos e apenas o valor do hash de saída é mantido em todo o momento. A isto chama-se uma árvore Markle.
Na lição 4 aprendemos que cada bloco armazena o valor do hash do bloco anterior.
O valor hash deste bloco contém o valor hash de todos os registos de transacção contidos dentro de cada bloco, hashed juntos.
Isto significa que, enquanto o valor do hash estiver disponível, o registo da transacção em si já não é necessário.
Check your achievement
Click the “Tick” button
if you understand the lesson so far.
Quantidade de dados futuros detidos por um nó
Se apenas os dados no cabeçalho do bloco fossem retidos, mas não os registos de transacções passadas, o tamanho do bloco seria de aproximadamente 80 bytes.
A Bitcoin é calibrada por Dificuldade para formar um bloco aproximadamente a cada 10 minutos.
Portanto, 80 bytes x 60 minutos x 24 horas x 365 dias = 4,2MB de dados adicionados por ano.
Esta quantidade de dados pode ser retida sem qualquer problema, uma vez que o desempenho do hardware melhora de acordo com a Lei de Moore.
Check your achievement
Click the “Tick” button
if you understand the lesson so far.