Opa, como vocês estão??? Espero que estejam bem.
Nesta edição do PET Redação, trago a vocês um assunto que tem dado muito o que falar, o BlockChain. Apesar de Blockchain e Bitcoin serem assuntos diretamente interligados, tentaremos não entrar muito no Bitcoin nessa redação, mas sim em umas das tecnologias mais inovadoras do último século, que é a arquitetura de base de dados. Mas e aí, vocês sabem de onde surgiu, o que é, e como funciona o BlockChain?
DE ONDE SURGIU?
Alguns de vocês devem conhecer essa tecnologia através da ideia de implementação que o pseudônimo de Satoshi Nakamoto trouxe em 2008 (Bitcoin: A peer-to-peer electronic cash system). Porém, o primeiro esboço dessa invenção e que trouxe elementos utilizados no atual BlockChain deu-se em 1979, através de David Chaum no trabalho de “sistemas de cofres” criptográficos. Esses elementos por sua vez, foram aplicados posteriormente na solução que os amigos W. Scott Stornetta e Stuart Haber desenvolveriam em 1991, com a finalidade de transpor o escândalo gerado pela fraude de um artigo de biologia, onde os resultados foram alterados com o uso de uma tinta especial.
Com isso, Stornetta e Haber desenvolveram um sistema mais parecido com o BlockChain que hoje conhecemos, um sistema de registros digitais com carimbo data/hora, imutável, e possui blocos de informações atrelados e criptografados.
Servindo então de alicerce, conforme mencionado por Nakamoto em seu artigo, para a formulação da ideia de transações financeiras digitais, que evitam o gasto duplo mediante à auditoria dos “usuários mineradores” com o uso da BlockChain. Fazendo com que o funcionamento se baseie no consenso de mais de 50% da rede para aprovar a execução da inserção, funcionando assim, descentralizadamente e entre pares, ou seja, distribuídas em diversos computadores, não necessitando de um intermediário.
COMO EVOLUIU?
Você já deve ter tido uma ideia de como esse assunto operou e evoluiu após a contextualização da história do BlockChain, mas “bora” conhecer mais a fundo como realmente aconteceu essa evolução?
Dá para dizer que essa evolução se iniciou com David Chaum por meio da sua dissertação em 1982, que propôs todos os elementos que compõem o BlockChain atual, como o estado de consenso entre os nós, o encadeamento do histórico do consenso em blocos, o registro da data e hora dos dados encadeados de forma imutável, com exceção do “Proof-Of-Work (PoW)” que mais tarde seria apontado por Nakamoto. Chaum descreveu cada função e apresentou o seu plano de código para implementar tal protocolo, e através de uma ilustração demonstrou o mecanismo de mudança de estado dos nós, que não foi colocado em prática, mas que seria utilizado pelos próximos pesquisadores.
Fonte: https://www.chaum.com/publications/chaum_dissertation.pdf
Como dito anteriormente, apesar de já ter sido discutida de forma superficial, a proposta de um carimbo confiável de data/hora ainda não tinha sido consolidada e implementada, ficando o trabalho ao Stornetta e Haber. Que através dos conhecimentos da época desenvolveram o seu funcionamento com intuito de provar a veracidade de dados sem que pudessem ser fraudados com mudança de datas, ficando oficialmente solidificada pela primeira vez na literatura pelos dois amigos. Formando assim a ideia de criação e checagem do dado através do esquema abaixo:
Fonte(adaptada): https://en.wikipedia.org/wiki/Trusted_timestamping
Fonte(adaptada): https://en.wikipedia.org/wiki/Trusted_timestamping
Surgiu então, logo após a crise financeira de 2008, e através da proposta de uma moeda eletrônica, o tão famoso BlockChain que atualmente conhecemos. Mas o que Nakamoto trouxe de diferente?
Com a ideia de total descentralização promovida pelo criador, surgiria um potencial perda de segurança nos carimbos de data e hora colocados nos nós, pois o que antes era passado a uma específica autoridade da rede agora ficaria na mão de todos. No entanto, Nakamoto transpôs esse problema atribuindo um tempo curto à criação de cada bloco, que conforme descrito pelo mesmo, a adesão de inúmeros utilizadores e o curto tempo na geração dos blocos, elevaria o custo computacional para se alterar uma hash vinda de blocos com mais de 2 horas de criação, o que tornaria impossível uma ameaça de fraude, que além da modificação temporal deveria ainda ter o consenso de mais da metade dos usuários.
E como forma de incentivar a contribuição e o ingresso de mais membros à rede, trouxe o “Proof-Of-Work” que é a forma onde une-se a bonificação na moeda eletrônica pelas operações realizadas com o aumento integridade da rede, onde os mineradores se esforçam para serem os primeiros a criar o bloco referenciado pelo bloco anterior e receberem a maior quantia.
COMO ATUALMENTE FUNCIONA E SUAS APLICAÇÕES?
Para finalizar, vocês já devem ter entendido onde o BlockChain chegou depois das evoluções e conseguem imaginar suas possíveis aplicações, não é mesmo? Mas vamos ao que interessa!
A atual face do BlockChain é a união das práticas mencionadas anteriormente e que podem ser vistas com o exemplo a seguir:
Como é possível observar na figura, o nó é “repartido” em cabeçalho e informações armazenadas, sendo o primeiro responsável por cuidar da identificação e endereçamento do bloco. E seus itens são:
ID/NR do bloco: Que é o identificador do bloco
Hash do bloco: Gerada através do uso da árvore Merkle dos dados contidos no bloco
Hash do anterior: Endereço recebido para acesso do bloco anterior
Carimbo Data/Hora: Que mostra quando o bloco foi gravado na BlockChain – Timestamp
Nível de dificuldade: É o componente mais importante do PoW e conhecido como valor nonce (number only used once) que é um código aleatório com um campo de 32bits e que só pode ser usado apenas uma vez, servindo como uma chave de autorização à gravação do bloco. São realizados inúmeros cálculos baseados no nonce até que se chegue no resultado correto para se ter autorização do registro do bloco, o que serve para garantir que ataques por repetição sejam impossíveis, já que o hash é formado por um número não reutilizado.
Já suas aplicações percorrem diferentes áreas do conhecimento, podendo ser utilizada em Sistemas Financeiros – com moedas digitais e removendo mediadores nos sistemas de pagamentos-, nos Contratos Inteligentes – com o auxílio de inteligência artificial para desburocratizar e gerar maior confiabilidade-, na Educação – para gerar certificados com credenciais livres de fraudes-, por parte do Governo – na geração de identidades e documentos pessoais únicos – e na Saúde – para o armazenamento de registros médicos e que requerem segurança e sigilo.
Por fim, espero ter demonstrado o grande potencial do protocolo BlockChain e a evidência de que estamos somente no início das inúmeras coisas que podem vir com o uso dessa tecnologia. Deixe sua imaginação fluir e sinta-se livre para compartilhar em nosso Discord as ideias de uso para a ferramenta e as possíveis mudanças que poderão acontecer nos próximos anos. Bons estudos e até mais!
Referências:
- https://en.wikipedia.org/wiki/David_Chaum
- “Computer Systems Established, Maintained, and Trusted by Mutually Suspicious Groups,” D. Chaum, Dissertation, Computer Science, UC Berkeley, June 1982 –https://www.chaum.com/publications/chaum_dissertation.pdf
- On the Origins and Variations of Blockchain Technologies – Alan T. Sherman, Farid Javani, Haibin Zhang, and Enis Golaszewski – https://www.chaum.com/publications/Origins%20of%20Blockchain%2008674176.pdf
- Haber, S., Stornetta, W.S. How to time-stamp a digital document. J. Cryptology 3, 99–111 (1991).
- https://en.wikipedia.org/wiki/Trusted_timestamping
- https://www.forbes.com/sites/vipinbharathan/2020/06/01/the-blockchain-was-born-20-years-before-bitcoin/?sh=3e3b7f1f5d71
- Nakamoto, Satoshi (24 May 2009). “Bitcoin: A Peer-to-Peer Electronic Cash System”
– Matheus Garcia Escobar