O que é blockchain?

O que é blockchain?

novembro 9, 2022 Off Por sistemasmultimid-admin

Bitcoin é o resultado de décadas de pesquisas sobre criptografia e sistemas distribuídos, pois possui uma rede descentralizada (peer-to-peer), uma rede pública de transações (a blockchain), uma série de regras para validação das transações e também um mecanismo descentralizado de criação de novas unidades (mineração).

Mas afinal, o que é essa rede pública de transações? A blockchain se trata de um grande banco de dados que pode armazenar qualquer tipo de transação. No caso de blockchain da rede do Bitcoin, ela irá armazenar o registro das transações, salvando dados como a quantia transacionada, o endereço da carteira do remetente e do destinatário, o timestamp da transação e outras informações.

As informações são salvas em blocos e a cadeia desses blocos compõem a blockchain. Com exceção do primeiro bloco, conhecido como gênesis, os blocos estão sempre interligados ao seu anterior, por exemplo, o bloco 3 está ligado ao bloco 2, o bloco 4 está ligado ao bloco 3 e assim sucessivamente.

Graças à rede blockchain é possível que o bitcoin e outras criptomoedas existam. Todavia, cada criptomoeda tem a sua blockchain, suas regras de validação de transações e conteúdo que pode ser armazenado.

Esse encadeamento de blocos, em que cada um aponta para o seu anterior é feito através do hash. O hash é o resultado de um código gerado a partir de uma função hash (como a função SHA-256, que gera um hash de 256 bits). Uma função hash é um algoritmo que aceita dados de comprimento variável de “entrada” (input) e a partir deles gera o resultado (output) de tamanho fixo, denominado hash.

Cada hash deve ser único, caso eu tenha uma função hash que gera o mesmo resultado para duas variáveis de entrada (inputs) diferentes, essa função hash é ruim.

Outras características fundamentais de uma função hash são:

– Deve ser rápida a geração do output a partir de um input qualquer;
– Deve ser muito difícil de descobrir o input a partir do hash gerado;
– Deve ser muito difícil de modificar o input sem ser alterado o hash;

O hash será utilizado como identificador do bloco. O bloco é uma estrutura de dados que armazena diversos valores, como o timestamp, o nonce, o dado armazenado, o hash do bloco anterior e quaisquer outros valores daquela blockchain. No caso do bloco da rede blockchain do Bitcoin, nele permanecerá permanentemente salvo os dados daquela transação.