Blockchain, o futuro das bases de dados?

joaosanches
labmm4a
Published in
7 min readMar 6, 2022

Resumo

Atualmente, todas as bases de dados são geridas por um intermediário, seja ele uma pessoa, uma empresa, ou até um governo, este intermediário é responsável por inserir, atualizar e eliminar informações da base de dados. Isto poderá trazer erros associados, visto que em algumas situações dependemos de uma só pessoa, e como se costuma dizer errar é humano.

Então, não seria fantástico termos uma base de dados, onde pudéssemos resolver este problema?

Bem, isso já é possível nos dias de hoje, graças à tecnologia Blockchain. Esta tecnologia tornou-se famosa a partir das criptomoedas, mais concretamente, do Bitcoin, mas a Blockchain é muito mais do que criptomoedas. A Blockchain promete vir solucionar problemas como a corrupção. Permite-nos ter uma base de dados descentralizada, ou seja, que não é controlada por terceiros como as tradicionais bases de dados centralizadas. O ponto forte da Blockchain é ser uma espécie de “open source”, onde toda a gente pode ver o que está ”escrito”, mas ninguém pode apagar ou editar dados.

O que é a Blockchain?

A Blockchain foi inventada em 1991, por dois senhores, Stuart Haber e Scott Stornetta, ambos trabalhavam na Xerox, a empresa que inventou a fotocopiadora. Em 2008, Satochi Nakamoto, o suposto inventor do Bitcoin decidiu dar-lhe uso pela primeira vez, utilizando a Blockchain como base para o Bitcoin.

A Blockchain é uma base de dados descentralizada, ou seja, não é controlada por nenhuma empresa nem nenhum governo. Isto também quer dizer que cada computador da rede tem uma “cópia” da base de dados e que cada alteração vai ser atualizada em todos estes computadores. Nesta base de dados, é possível adicionar informações, mas apenas se tiver aprovação dos outros utilizadores da rede, desta forma, é quase impossível enganar o sistema.

Esquema Blockchain
Fonte: https://docs.microsoft.com/pt-pt/learn/modules/intro-to-blockchain/2-what-is-blockchain

Como funciona?

Uma rede Blockchain, tal como o nome indica é uma cadeia de blocos, blocos esses que contêm informações usando a tecnologia hash, para que os dados sejam encriptados. Imaginemos a Blockchain como um casaco digital, se puxarmos uma linha (bloco) vamos descoser o casaco e vamos estragá-lo. Esta metáfora serve para mostrar o quão segura é esta rede de blocos, visto que se alguém tentar manipular um bloco, além de precisar de muito poder computacional, a rede vai reparar que se passou ali alguma coisa de errado e não vai deixar avançar o processo, para não falar que teoricamente, essa informação tinha que ser mudada em todas as “cópias” da Blockchain espalhadas pelo mundo. Isto prova a inteligência da rede em si.

Vamos então supor que um utilizador quer inserir algo na Blockchain, vamos utilizar a Bitcoin (transação) como exemplo, o utilizador x quer enviar 1 bitcoin (BTC) para o utilizador y, então o que vai acontecer é o seguinte:

A transação vai ter que ser aprovada pelos outros utilizadores da rede, estes são os chamados mineradores. Estes mineradores não vão saber quem é o utilizador x nem o utilizador y, vão apenas verificar se a transação está correta, de forma a evitar erros.

A seguir vários utilizadores vão fazer propostas para anexar essa transação a um bloco na rede, isto envolve repetidas tentativas de hashing para encontrar um determinado valor, quando esse valor é encontrado quem o encontrou vai ser recompensado com Bitcoin, isto é, o chamado “proof of work”. Por fim, se for aprovada é adicionada a um bloco, cada bloco tem informações do bloco anterior e assim sucessivamente, desta forma é muito difícil, quase impossível, mudar as informações destes blocos.

Fonte: https://clubedoinvestidor.com/como-funciona-a-blockchain-do-bitcoin/

Onde pode ser útil?

A maioria das pessoas associa a Blockchain apenas às criptomoedas, mas a Blockchain é muito mais que criptomoedas. Esta tecnologia pode ter enumeras aplicações seja, por exemplo, a nível empresarial ou até mesmo em serviços públicos.

Exemplos:

Política- Podemos utilizar a tecnologia Blockchain aquando das votações nas eleições, desta forma podemos ter transparência nos resultados, mas mantendo sempre o voto secreto, ou seja, nunca seria possível uma cidade de 10 mil habitantes ter 60 mil votos num só candidato e ao mesmo tempo seria impossível descobrir quem votou em quem.

Saúde- Outro exemplo que também pode ser visto com bons olhos é do sector da saúde, se tivermos uma rede em que uma informação médica é validada, não por um profissional, mas por vários, vai ser benéfico, visto que a informação tem muito mais probabilidades de estar certa do que errada e isto iria ser vantajoso tanto para o setor como para os pacientes, para não falar que os dados destes mesmos pacientes iram ficar encriptados o que aumenta os níveis de privacidade.

Sistema Financeiro- As criptomoedas são moedas digitais que têm na sua génese a tecnologia Blockchain. Através da Blockchain e das criptomoedas podemos transferir dinheiro por exemplo de Portugal para a China sem ter que ter permissão de um intermediário, como normalmente acontece. Certamente já se deparou com uma situação em que pretende levantar o dinheiro todo da sua conta e não pode porque o banco não o permite, isto dá uma sensação que o seu dinheiro não é realmente seu, certo? Com Blockchain e criptomoedas isto não acontece, pode enviar e converter (para euro) o dinheiro que quiser.

Blockchain vs Bases de dados centralizadas

Podemos dizer que Blockchain e base de dados são coisas parecidas, mas diferem em alguns aspetos tais como:

· Enquanto que as bases de dados tradicionais são centralizadas, ou seja, são controladas por alguém, a Blockchain é descentralizada, ou seja, não é de ninguém, mas ao mesmo tempo é de todos.

· A Blockchain é mais indicada para transações enquanto que as bases de dados tradicionais, como o nome indica, são mais adequadas para dados.

· Em relação à performance as bases de dados são muito mais rápidas, no sentido de que na Blockchain, cada transação até estar concluída leva cerca de 10 minutos.

· Em termos de segurança a Blockchain leva uma clara vantagem, em vários aspetos. Quando temos uma base de dados tradicional, esta pode estar alojada em um ou mais servidores, no caso da primeira opção basta haver um incêndio ou ciberataque bem-sucedido para perdermos os dados ou para ter que pagar uma quantia monetária pelos nossos próprios dados. Por outro lado, com a Blockchain, isso não vai acontecer, na medida que há uma cópia da Blockchain em todos os computadores da rede. Vamos supor um cenário catastrófico, em que a terra é atingida por um asteroide, basta um computador sobreviver, para a rede sobreviver. A mesma coisa se aplica se um país banir a rede, a mesma vai estar salvaguardada porque tem “cópias” nos outros países. Além do mais, com Blockchain há uma transparência, no sentido de que tudo o que está escrito na Blockchain, não pode ser alterado nem apagado.

· No que diz respeito a custos a Blockchain é muito mais dispendiosa de implementar e manter do que uma base de dados tradicional.

Fonte: https://101blockchains.com/pt/blockchain-vs-banco-de-dados/

Linguagens de programação mais utilizadas?

C++

Foi a partir de C++ que Satochi Nakamoto criou a Blockchain do Bitcoin. Esta linguagem é usada porque tem um controlo eficiente de memória e recursos avançados no que diz respeito a orientação a objetos.

Java

Esta é uma das principais alternativas ao C++, visto que também tem recursos avançados no que toca a orientação a objetos.

Solidity

Solidity foi a linguagem utilizada pelos fundadores da Ethereum, a principal “rival” do Bitcoin. É uma linguagem em crescimento.

Python

A escolha de muitos aprendizes de programação mas também é uma excelente escolha para quem está a começar no mundo da Blockchain. Esta linguagem é open source e como tal tem uma variedade imensa de plugins que podem dar muito jeito na resolução de problemas.

Futuro com Blockchain

Se olharmos para as potencialidades que a tecnologia Blockchain nos traz, conseguimos perceber que pode vir a ser algo benéfico, para a sociedade no futuro. A utilização da mesma também vai depender do tipo de situação ou problema que queremos resolver, porque vai sempre haver situações onde é mais vantajoso usar bases de dados tradicionais. Mas o facto de podermos ter acesso a uma tecnologia que nos ajuda em aspetos como transparência e segurança só pode ser vantajoso. Claro que a Blockchain não é um mar de rosas, tem os seus defeitos, mas tal como todos as tecnologias, tem a sua fase de adaptação e melhoramento. E se no futuro a sociedade trabalhar para melhorar esta tecnologia e resolver estes mesmos defeitos temos aqui algo muito promissor.

Fontes:

Moreira, Edras. “O que é Blockchain e por que ele está substituindo o banco de dados?”. Retirado de https://introduceti.com.br/blog/o-que-e-blockchain-e-por-que-ele-esta-substituindo-o-banco-de-dados/

Microsoft. “Introdução ao Blockchain no Azure”. Retirado de https://docs.microsoft.com/pt-pt/learn/modules/intro-to-blockchain/

Beleza, Alfredo. “Tecnologia Blockchain: um guia para principiantes”. Retirado de https://www.techenet.com/2021/04/tecnologia-blockchain-guia-principiantes/

Lamounier, Lucas. “Blockchain Vs Banco De Dados: Entenda A Diferença”. Retirado de https://101blockchains.com/pt/blockchain-vs-banco-de-dados/

Galdino, Fernando. “As Diferenças Entre Blockchain E Banco De Dados”. Retirado de https://www.blockmaster.com.br/artigos/as-diferencas-entre-blockchain-e-banco-de-dados/

Tecmundo, Equipa. “Blockchain: quais são as linguagens de programação envolvidas?”. Retirado de https://www.tecmundo.com.br/software/204924-blockchain-linguagens-programacao-envolvidas.htm

--

--