Blockchain como o próprio nome já diz é uma corrente de blocos 🙂

FIM.

Brincadeira meus readers 🙈

Então.. para entender o que é uma corrente de blocos, primeiramente precisamos entender o que é um bloco.

O que é um bloco? Para explicar o que é um bloco de uma blockchain, vamos usar algumas analogias antes.

Untitled

No mundo real, podemos fazer uma analogia do bloco a uma caixa, que tem um tamanho predefinido e que nela podemos guardar e organizar nossos objetos.

Uma caracteristica que podemos notar aqui é que sempre que adicionamos uma nova laranja aqui, o seu peso irá mudar. (lembrem-se disso)

Por que o peso é importante nesse caso?

Aposto que muitos de vocês já enviaram uma encomenda pelos correios e já repararam que eles sempre pesam a remessa e lacram antes dela ser enviada. Isso é feito não apenas para definir o preço do frete, mas também para garantir que no meio do caminho não haja nenhuma adulteração.

vamos para um exemplo...

bloco - ps5.png

Supondo que vamos enviar um PS5 pela transportadora, antes disso é feito a pesagem e o lacre do pacote.

nosso pacote consiste em..

informação numero: 123334 hora do despache: 01/03/2022 as 10:00 peso: 4,5 kg frete: R$ 150,00

conteúdo PS5 🎮

Percebam que nesse exemplo o conteúdo interfere em duas informações, o peso e o frete.

Também podemos notar que existe dois conceitos dentro dessa remessa, o conteúdo e a informação.

Tudo isso é empacotado no que chamamos de remessa.

Agora vamos traduzir esse mesmo conceito para a blockchain.

hash: 000000000000298620ca0711342982328ac882ac232398ac2332943

hash: 000000000000298620ca0711342982328ac882ac232398ac2332943

Ok ok, calma jovens. Espero que essa imagem não tenha assustado vocês, mas vou tentar explicar para vocês 😬

number É o numero sequencial deste bloco, no caso este é o 123 da corrente.

previous hash (hash do bloco anterior) É o hash do bloco anterior, ou seja, o hash do bloco 122. É exatamente isso que faz a corrente de blocos, já que isso interliga o bloco 123 ao bloco 122. 🤯

timestamp É a data e a hora que aquele bloco começou a ser minerado, essa informação é utilizada depois na resolução de conflito.

Merkle root hash: É o hash do conteúdo do bloco, qualquer alteração que houver no conteúdo, essa informação muda completamente.

Não sabe o que é um hash?

Em breve vou fazer um artigo explicando sobre Hashs, mas por agora vou deixar um link de referencia ao wikipedia.

Função hash - Wikipédia, a enciclopédia livre

difficulty & nonce São informações utilizadas pela rede do bitcoin, são necessárias para o perfeito funcionamento do PoW (Proof of Work) no processo de mineração e consenso. mas não vou entrar nesse mérito agora, vou deixar isso para um artigo falando sobre a mineração e o consenso.

Como que o previous hash forma a corrente de blocos?

blockchain - chaining.png

Pronto! Agora temos a nossa corrente de blocos 🥳

Mas por que essa corrente é importante?

Então... essa corrente é fundamental para garantir a segurança da blockchain, mas por quê?

Porque se eu alterar o conteúdo do bloco 1, o merkle root deste bloco ******também irá mudar e consequentemente o seu hash, ou seja:

**<<<conteúdo bloco 1>>>**

hash anterior: 0000000000000000000
merkle root  : 316bbdf07103f5bb1fa
hash         : 00000004456a23ef422
**<<<conteúdo bloco 2>>>**

hash anterior: 00000004456a23ef422
merkle root  : b2ab273407e2f844ea2
hash         : 0000000000003f7b1e5