O Blockchain é uma base de dados que regista ativos e transações replicada nos computadores de uma rede peer-to-peer (ponto a ponto). Um género de registo público de quem tem o quê e de quem transaciona o quê (os dados estão encriptados para manter a confidencialidade). As transações são certificadas através de hashs (ver caixa) a e, ao longo do tempo, o histórico das transações fica bloqueada em blocos de dados que são depois criptograficamente ligados uns a outros para garantir a segurança. Ao contrário de, por exemplo, o e-mail, o blockchain possibilita a criação de informação digital única, sem possibilidade de replicação. Ou seja, permite que quando uma moeda ou um documento é transferido, o emissor fica sem qualquer cópia desses mesmos dados. Daí empresas e instituições estarem a estudar a implementação da tecnologia de blockchain nas mais diversas áreas, incluindo transferência de contratos e valores (moedas e ações digitais, por exemplo), certificação de identidade (para votação eletrónica, por exemplo).
Como funciona
1 – Pedido de transação
Alguém pede uma transação. No caso das criptomoedas, o recetor tem uma carteira com um endereço único
2 – Transmissão para a rede peer-to-peer
O pedido de transação é enviado para todos os nodos da rede. Cada nodo é um computador ou um conjunto de computadores agrupados
3- Validação da transação
São usados algoritmos para validar a transição, a identidade e o estado do utilizador
4 – Criação do bloco
Após a validação, a transação é combinada com outras transações para criar um novo bloco de dados
5 – Transação concluída
O novo bloco é ligado aos outros blocos já existentes criando a corrente de blocos (blockchain). A ligação criptográfica garante que esta corrente mantém-se permanente e inalterável (“livro razão”)
Hash
Este termo é muito usado em computação, sobretudo no contexto de algoritmos de criptografia. De modo simples, um algoritmo hash pode ser definido como uma função matemática que gera um código, normalmente pequeno (número limitado de dígitos) em função de uma entrada (normalmente uma quantidade de dados grande). O algoritmo garante que se os dados de “entrada” (ou de análise) forem iguais, então o resultado (hash) será o mesmo. No entanto, basta existir uma diferença mínima (um bit) para que o hash resultante seja diferente. É, por exemplo, um método usado para verificar se dois conjuntos de dados são iguais, o que é muito importante em segurança porque permite verificar se houve manipulação de dados. Uma das características fundamentais deste método é que unidirecional: não é possível recriar os dados analisados usando o hash resultante. Ou seja, os hashs permitem certificar que os dados são corretos, mas não permitem saber que dados são esses.