top of page
  • Arthur Mesquita Camargo

Afinal, o que é o Blockchain?


O Blockchain foi concebido originalmente por Satoshi Nakamoto, em 2009, como a tecnologia principal que suportaria a rede Bitcoin. O design do sistema original evoluiu desde então para alcançar novos objetivos: novos mecanismos de consenso, smart contracts, escalabilidade. O objetivo desta seção e elaborar um framework básico para a tecnologia, isto é, uma guia inicial para o desenvolvimento de projetos de conceitos para propósitos específicos.

Mas afinal, o que é o blockchain? O Blockchain é mais do que uma tecnologia, é um protocolo de controle de informações (ALIAGA; HENRIQUES, 2017) e tem como finalidade básica registrar e armazenar dados de forma distribuída, segura, sigilosa e transparente. O protocolo consiste em dimensionar em um único modelo de controle informacional as características do banco de dados distribuído, da criptografia, do mecanismos de consenso e do registro temporal.

A tecnologia é multifacetada, isto é, pode ser utilizado para o controle de informações contábeis, financeiras, patrimoniais, cadastrais e, quando combinado com o uso de contratos inteligentes, pode ser utilizado de forma responsiva com a capacidade de auto-gerenciar e auto-executar as informações previamente registradas no banco de dados.

fonte: http://www.exploredatabase.com/2015/03/dates-twelve-rules-for-distributed-database.html

Ressalte-se que em alguns trabalhos (PINNA; RUTTENBERG, 2016; BENOS; GARRATT; GURROLA-PEREZ, 2017; BACEN, 2017) o enfoque é maior no armazenamento de informações contábeis-financeiras que preferem utilizar o termo Distributed Ledger Technology (DLT) como um derivativo da tecnologia Blockchain. Enfatiza-se, no entanto, que o DLT é uma subespécie de Blockchain.

Segundo Date (2004) um banco de dados pode ser considerado um "sistema computadorizado de manutenção de registros", sendo equivalente a um armário de documentos eletrônico ou, no caso de registro de informações contábeis e financeiras, a um livro contábil eletrônico.

A tecnologia tem como pré-requisito utilizar a arquitetura de banco de dados distribuída (BDD) em que ocorre a união de duas abordagens tecnológicas relacionadas ao processamento de dados: banco de dados e rede de computadores (ÖZSU; VALDURIEZ, 2011).

Para Özsu e Valduriez (2011), a utilização de arquiteturas BDD introduziram uma disrupção ao modelo de banco de dados tradicional, centralizado, uma vez que a combinação dessas duas tecnologias promoveu uma independência dos dados de modo que os sistemas de armazenamento passaram a ser imunes às mudanças lógicas ou físicas dos dados. Ou seja, não havendo um único servidor de dados para armazenar as informações e, sim, múltiplos, ocorre uma melhoria em termos de disponibilização e segurança da informação.

Özsu e Valduriez (2011) define o BDD como uma coleção de várias bases de dados logicamente inter-relacionadas, distribuídas por uma rede de computadores, sendo sensível enfatizar que a rede de computadores em que a BDD opera não é necessariamente uma rede pública, podendo ser, também, em rede privada. A definição da rede é um dos fatores preponderantes para definir se o blockchain será público, privado ou permitido (ÖZSU; VALDURIEZ, 2011).

Existem diversos modelos de inserção de dados em um banco de dados - file storage, block storage, object storage (FOX; HAO, 2017), sendo também um item importante para o design do sistema. No modelo do Blockchain, a forma de se registrar é em formato de blocos (NAKAMOTO, 2008; MCCONAGHY, 2016; EYAL, 2016), também chamada de block storage. O armazenamento em bloco é comumente usado para suportar tipos específicos de aplicativos, como banco de dados e máquinas virtuais (FOX; HAO, 2017).

fonte: https://www.caringo.com/wp-content/uploads/2017/01/File-Object-Storage.svg

Assim, ao contrário do armazenamento de arquivos, onde toda a coleção de arquivos é armazenada usando um único sistema de arquivos, o registro por blocos permite que diferentes tipos de arquivos sejam armazenados, além de permitir que o arquivo possa ser decomposto, melhorando a eficiência do armazenamento e garantindo uma melhor escalabilidade na distribuição dos dados na rede distribuída (FOX; HAO, 2017).

Além disso, no Blockchain os blocos são registrados e amarrados ao bloco registrado anterior por registros temporais e criptográficos, o que aumenta potencialmente os níveis de segurança, uma vez que a prova de consenso é replicada na corrente de blocos, impossibilitando a alteração de um bloco unitário. Em termos práticos, não é possível fazer alterações em registros anteriores sem modificar o registro atual e, portanto, quanto maior a quantidade de transações registradas, maior é a dificuldade de alteração do banco de dados.

Por outro lado, um ponto negativo no uso do modelo do block storage é a limitação para a escalabilidade do sistema, ou seja, quanto maior o tamanho do bloco, maior o número de transações possíveis de serem armazenadas, porém mais complicada e demorada é a forma de transmissão (effective throughput) (DECKER; WATTENHOFER, 2013; EYAL, 2016). Além disso, somente um bloco pode ser inserido na base de dados a cada momento temporal, sendo, assim, é preciso levar em consideração o tempo gasto entre o registro de blocos (inter-block time).

Para o estudo da escalabilidade do sistema, estas duas variáveis devem ser levadas em consideração. Por exemplo, no caso do Bitcoin que tem um bloco de 1 megabyte e tem um inter-block time de 10 minutos, sua escala de processamento de transação, está limitada a 7 transações por segundo, enquanto que a Visa tem um processamento de 56.000 transações por segundo (EYAL, 2016).

O próximo atributo da tecnologia blockchain é a criptografia. A Criptografia é a ciência que estuda as formas de cifrar uma mensagem, trata-se, portanto, de um “conjunto de técnicas que permitem tornar incompreensível uma mensagem originalmente escrita com clareza, de forma a permitir que apenas o destinatário a decifre e compreenda” (CAVALCANTE, 2004). O Blockchain aceita diversos modelos transacionais de criptografia: o modelo de chaves simétricas ou assimétricas, funções hash, assinatura digital, criptografia quântica, enfim, o tipo vai depender do design do sistema e de seu propósito.

Combinando o banco de dados distribuído com técnicas de criptografia, o Blockchain permite que a informação seja armazenada no banco de dados de forma segura, sigilosa e, ao mesmo tempo, transparente.

Por fim, os mecanismos de consenso funcionam como um validador de novos registros, funcionando com um gatekeeper. Sabendo que a rede é distribuída (não se sabe quem irá registrar algo) é preciso criar uma inteligência que registre, valide e transmita as informações inseridas no banco de dados, conforme os parâmetros previamente desenvolvidos. Assim, para dar autenticidade aos novos registros, os mecanismos de consenso funcionam como um protocolo de confiança para a rede “permitindo que as partes desconhecidas entre si e até mesmo concorrentes cheguem a um consenso sobre o estado atual e passado dos dados armazenados no blockchain”(ALIAGA, HENRIQUES, 2017).

Em resumo, um mecanismo de consenso é um algoritmo de consenso de criptografia não trivial (ÖZSU; VALDURIEZ, 2011) que serve para criar um novo registro de forma consensual em um ambiente descentralizado, evitando que participantes desonestos tentem violar o sistema.

Existem diversos mecanismos de consenso. Para Baliga (2017), a escolha do modelo de consenso é “o aspecto mais crucial” e requer atenção do programador. Segundo o autor, é através deste mecanismo que o banco de dados manterá sua “santidade”, “imutabilidade” e a “auditabilidade”.

Os Mecanismos de Consenso mais utilizados são Prova de Trabalho (Proof of Work - PoW); Prova de Participação (Proof of Stake - PoS); Prova do Tempo Decorrido (Proof of Elapsed Time - PoET); Tolerância a Falhas Bizantinas e variantes (Byzantine Fault Tolerance and variants - SIEVE, PBFT, XFT, FBA, Ripple, Stellar)

A última camada de proteção da arquitetura blockchain é o registro temporal. Esta camada tem como finalidade provar que aquele documento foi registrado naquele exato momento (NAKAMOTO, 2008), que um ação foi executada naquele momento.

Enfatize-se que, na medida em que o registro temporal é anexado junto ao bloco de informações criptografado, aquela informação documental, junto com seu carimbo de tempo, não pode ser mais alterada.

Assim, a combinação dessas tecnologias produzem, em conjunto, o Blockchain, uma tecnologia revolucionária que está alterando desde sistemas financeiros até gerenciamento de cadeias de suprimento.

REFERÊNCIAS

ALIAGA, Yoshitomi Eduardo Maehara; HENRIQUES, Marco Aurelio Amaral. Uma comparação de mecanismos de consenso em blockchains. X Encontro de Alunos e Docentes do DCA/FEEC/UNICAMP (EADCA). Campinas, Brazil, October 26-27, 2017 BALIGA, Arati. Understanding Blockchain Consensus Models. Tech. rep., Persistent Systems Ltd, 2017. BENOS, Evangelos; GARRATT, Rod; GURROLA-PEREZ, Pedro. The economics of distributed ledger technology for securities settlement. 2017. CAVALCANTE, André LB. Teoria dos números e criptografia. Revista Virtual, 2005. DATE, Christopher J. Introdução a sistemas de bancos de dados. Elsevier Brasil, 2004 DECKER, Christian; WATTENHOFER, Roger. Information propagation in the bitcoin network. In: Peer-to-Peer Computing (P2P), 2013 IEEE Thirteenth International Conference on. IEEE, 2013. p. 1-10. EYAL, Ittay et al. Bitcoin-NG: A Scalable Blockchain Protocol. In: NSDI. 2016. p. 45-59. FOX, Richard; HAO, Wei. Internet Infrastructure: Networking, Web Services, and Cloud Computing. CRC Press. 1 edition, 2017. JONÉUS, Carl. Analysis of Scalable Blockchain Technology in the Capital Market. UPPSALA UNIVERSITET. 2017. MCCONAGHY, Trent et al. BigchainDB: a scalable blockchain database. white paper, BigChainDB, 2016.

NAKAMOTO, Satoshi. Bitcoin: A peer-to-peer electronic cash system. 2008.

ÖZSU, M. Tamer; VALDURIEZ, Patrick. Principles of distributed database systems. Springer Science & Business Media, 2011. PINNA, Andrea; RUTTENBERG, Wiebe. Distributed Ledger Technologies in Securities Post-Trading Revolution or Evolution?. 2016.

74 visualizações0 comentário
bottom of page