Tezos (XTZ) é uma rede blockchain de alta velocidade projetada para oferecer uma infraestrutura especialmente adaptada para a execução de contratos inteligentes e DApps com baixas comissões, além de trabalhar em uma blockchain capaz de evoluir ao longo do tempo sem a necessidade de hard fork que pode comprometer a integridade da rede.
Lum blockchain Tezos (XTZ) é uma rede blockchain projetado para oferecer smart contracts com alta escalabilidade e opções de programação avançadas em comparação com as encontradas em Ethereum (ETH).
Algo que este projeto pode alcançar graças à sua infraestrutura modular, facilmente atualizável e ao uso de Prova de aposta líquida (LPoS) como algoritmo de consenso para alto desempenho. Além disso, seus contratos inteligentes podem ser programados tanto em seu idioma nativo quanto em outros idiomas, o que lhe dá uma enorme flexibilidade nesse sentido.
História e origens de Tezos
As origens da Tezos começam a 3 de agosto de 2014, com a publicação do conhecido "Posição do papel" o «Papel da Posição», do projeto Tezos. O documento cujo nome completo é "Tezos: um livro-razão criptográfico que se auto-modifica" Foi apresentado por LM Goodman, que era o pseudônimo de Arthur Breitman. Neste documento foram estabelecidos os objetivos do projeto, que eram quatro:
- Em primeiro lugar, procurou resolver o problema de hard fork, o que evita a atualização dinâmica do blockchain, atrasando e dificultando a inovação.
- Problemas de custo e centralização colocados pelo sistema de Prova de Trabalho (Proof of Work – PoW) de Bitcoin (BTC).
- A expressividade limitada da linguagem de transação do Bitcoin (Bitcoin Script), que levou os contratos inteligentes a outras cadeias de bloqueio.
- Questões de segurança relacionadas à implementação de uma criptomoeda.
Com a publicação deste documento, a Breitman analisou em profundidade cada um desses problemas e propôs soluções para eles dentro de seu projeto Tezos. No entanto, não foi até 2 de setembro de 2014, que o whitepaper de Tezos, dando assim um alicerce completo a este projeto.
O whitepaper deixou claro o objetivo de criar o Tezos como um “livro-razão criptográfico auto-modificável”. Algo que seria alcançado nas seguintes condições:
- Criação de um protocolo de rede que gera, verifica e valida bloqueia e transmite transações.
- Projetar um protocolo de transação especifica o que torna uma transação válida.
- Projetar um protocolo de consenso que forme consenso em torno de uma única cadeia.
Lançamento do Tezos ICO
De qualquer forma, construir essa rede era apenas uma ideia e torná-la realidade, eu queria mais do que um white paper especificando em palavras o que ela faria. Assim, em 2017, nasceu a Fundação Tezos, uma organização sem fins lucrativos com sede na Suíça. A Fundação planejou uma OIC com a qual conseguiu arrecadar um total de 232 milhões de dólares.
De posse do dinheiro, deu-se início ao desenvolvimento efetivo do projeto. No entanto, em 22 de fevereiro eles tiveram seu primeiro revés, quando o presidente da Fundação Tezos, Johann Gevers, teve que renunciar devido a uma polêmica sobre o uso de recursos da OIC. Após esses eventos, o desenvolvimento da Tezos continuou e foi em 30 de junho de 2018, quando a história da blockchain da Tezos começou, gerando seu bloco de gênese.
Protocolo Semente, o protocolo que gere o funcionamento da Tezos
O Protocolo Semente ou Protocolo Semente, é o nome dado ao protocolo de gênese Tezos. É, para simplificar, uma série de regras que regem o funcionamento da Tezos desde a sua origem até aos dias de hoje. As regras do Protocolo Semente refletem a forma como a Tezos trata tudo relacionado à geração de moedas, protocolo de consenso, a interatividade de seus validadores, a operação de seus contratos inteligentes e até mesmo sua governança.
Nesse sentido, o Protocolo Seed tem em seu poder o controle dos elementos mais relevantes do blockchain, então vamos examinar cada um deles com mais detalhes.
Controle de moedas
Tezos é um blockchain que usa um token para suas operações internas, o token Tezos (XTZ). O referido token tem uma existência limitada a 10 bilhões de moedas. Porém, em seu bloco de gênese, cerca de 700 milhões de moedas foram liberadas para o ecossistema em um total de 32 mil endereços de Tezos, respeitando os acordos da OIC que financiou essa criptomoeda.
O restante das moedas é liberado para o ecossistema por meio de um sistema de ajuste à emissão que ocorre dentro do protocolo. Atualmente, essa emissão por bloco é definida em 40 XTZ por bloco. No entanto, em nenhum momento essa inflação pode ultrapassar 5% ao ano, seguindo as disposições do Protocolo de Sementes de Tezos.
Outro ponto relevante no controle da moeda em Tezos é que as moedas de uma conta que não sejam mobilizadas há mais de um ano são queimadas. Isso para manter o sistema economicamente ativo.
XTZ, token nativo de Tezos
O token nativo de Tezos é XTZ e é um token multiuso. Você pode adquiri-lo e usá-lo como meio de pagamento ou como meio de interagir com os serviços que ganham vida na blockchain da Tezos e seus contratos inteligentes.
No entanto, o potencial desse token está principalmente focado no controle e interação com contratos inteligentes, a governança do blockchain e seu processo de geração de blocos. Na verdade, o uso desse token no blockchain é muito semelhante ao que Ether tem no Ethereum. Cada interação no Tezos gera um custo em "Gás", que é então traduzido em sua respectiva comissão em tokens XTZ.
Mas a comparação entre Tezos Gas e Ethereum termina aí, porque em Tezos a fórmula para calcular o custo de uma comissão é completamente diferente. Essa fórmula é a seguinte:
taxas> = m_fees + (m_nanotez_per_byte * size) + (m_nanotez_per_gas_unit * gas)
Isto é:
- m_taxas: é a tarifa mínima dentro da plataforma igual a 0,0001 ꜩ
- m_nanotz_per_byte: É a quantidade mínima de nanotecnologia que você pode pagar por cada byte, que é 1000 nꜩ / B (0,000001ꜩ / b).
- tamanho: refere-se ao tamanho em bytes que a operação ocupa.
- m_nanotez_per_gas_unit: é a quantidade mínima de nanotecnologia que você pode pagar por cada unidade de gás, que é 100 nꜩ / gu (0,0000001 ꜩ / gu)
- gás: a quantidade de gás que a operação utilizará integralmente.
Assim, por exemplo, se tivermos uma operação que gastará cerca de 10000 Gás e tem um peso de 128 bytes, a comissão mínima para essa operação seria a seguinte:
Taxa = 0,0001 ꜩ + (0,000001ꜩ / b * 125 bytes) + 0,0000001 ꜩ / gu * 10000 g
Taxa = 0,001225 ꜩ (aprox. $ 0,002)
Isso nos deixa muito claro que as comissões em Tezos são muito baratas, ainda mais do que em Ethereum, e ao mesmo tempo o papel fundamental dos tokens XTZ dentro desta rede. Claro, este exemplo é apenas o mínimo, e se suas comissões forem muito pequenas, os validadores em meio a uma alta demanda podem não atender prioritariamente suas transações fazendo com que você tenha que aumentar suas comissões para verificar sua transação.
LPoS, o protocolo de consenso de Tezos
Prova de aposta líquida ou Prova de aposta líquida (LPoS) é um algoritmo derivado do Prova de aposta (PoS). Este protocolo é projetado para permitir que os validadores extraiam um bloco, e então precisem de um conjunto de assinaturas para oferecer validade ao referido bloco, tudo de forma aleatória.
Ou seja, um grupo de validadores gera um bloco, mas apenas o bloco que conseguir atingir o conjunto de assinaturas necessárias em primeiro lugar será escolhido para fazer parte do blockchain. O resto dos blocos gerados são rejeitados e o processo é reiniciado. Este processo de geração de blocos é aquele que ganha a recompensa de 40 XTZ, e aqueles que assinam também ganham uma pequena recompensa.
Além disso, o LPoS inclui algumas proteções contra a chamada dupla assinatura, que é um evento em que um validador tenta assinar e garantir dois blocos diferentes ao mesmo tempo, em uma corrida para ganhar comissões a qualquer custo. Neste caso, o LPoS penaliza essas ações com a perda dos lucros do referido bloco.
Assando, assando o próximo bloco
O processo de criação de um bloco no Tezos é denominado Cozimento. Isso ocorre porque os validadores são chamados de "Padeiros" ou Padeiros. O trabalho dos Bakers é ter poder computacional e uma aposta de tokens XTZ, o que lhes dá o direito de produzir blocos de acordo com sua participação no sistema. Este processo é realizado de acordo com as regras do protocolo de consenso LPoS descrito acima.
Para se tornar um Baker no Tezos, você deve ter uma aposta mínima de 8000 XTZ, mas quanto maior a aposta, maior a probabilidade de gerar um bloco. Além disso, para gerar um bloco, o Baker deve fazer um depósito de segurança (seu “Proof of Stake”) de 512 XTZ por bloco.
Este depósito fica bloqueado por cerca de 14 dias e é uma proteção contra trapaça. Se o Padeiro realizar uma dupla assinatura ou dupla geração de blocos, ou quebrar alguma outra regra dentro do LPoS, esse Padeiro perderá todo o seu depósito de segurança (512 XTZ). Sem dúvida uma proteção bastante forte contra este tipo de armadilhas, mas não se surpreenda, a verdade acontece muito frequentemente, como você pode ver nesta imagem.
Delegação para panificação
Se alguém não tiver 8.000 XTZ ou não quiser montar uma infraestrutura de TI para panificação, pode delegar suas moedas a um padeiro. A delegação permite que os detentores de moedas "emprestem" suas moedas a um padeiro. Como resultado, o padeiro tem mais chances de ser selecionado e, por sua vez, o padeiro divide a receita adicional com o portador da moeda. É importante observar que esse processo não transfere a propriedade das moedas. O padeiro não pode gastar o XTZ que lhe foi delegado e os padeiros não podem fugir com o dinheiro dos outros.
Surgiram grupos que oferecem taxas competitivas para seus serviços de panificação, com a maioria cobrando entre 10% e 20% das recompensas que as pessoas recebem por delegar a eles.
Regra de escolha de filial
A última chave para entender sobre o algoritmo de consenso Tezos é como o protocolo decide qual bifurcação da cadeia é a “correta”. A regra de escolha do fork do Bitcoin é simples: a corda mais longa é a correta ou canônica. Tezos escolhe a cadeia canônica com base no número de padeiros que apoiaram o bloco. Foi mencionado acima que os padeiros têm direitos de cozimento para criar blocos, mas que os padeiros também têm a responsabilidade secundária de apoiar os blocos. Em cada altura de bloco, 32 rolos são selecionados aleatoriamente para fazer backup de um bloco, e o bloco com mais costas é tratado como canônico.
Quando um padeiro endossa um bloco que eventualmente se torna o bloco canônico, ele recebe uma recompensa XTZ. Assim, os Bakers são incentivados a apoiar o bloco que eles acreditam que outros Bakers também apoiarão, também conhecido como blocos de alta prioridade. Assim como na panificação, os blocos de endosso exigem que os padeiros apostem 40 XTZ por endosso. Isso evita o problema de nada estar em jogo.
Contratos inteligentes dentro da Tezos
Outra parte importante de como a Tezos funciona são seus contratos inteligentes. Na verdade, nesse sentido, os contratos inteligentes são controlados de maneira muito semelhante aos contratos inteligentes Ethereum. Ou seja, as ações e sua programação têm um certo custo em Gás, que deve ser pago em tokens XTZ, para que sejam executadas.
Mas longe dessa semelhança, os contratos inteligentes da Tezos são programados na linguagem de Michelson, em vez de Solidity como acontece no Ethereum. Michelson é a linguagem específica do domínio usada para escrever contratos inteligentes na blockchain da Tezos. Esta linguagem é baseada em pilha e não possui variáveis. Linguagens orientadas a pilha operam em uma ou mais pilhas, cada uma das quais pode servir a um propósito diferente. Isso permite uma enorme versatilidade ao custo de ser muito mais complexo de manusear.
Mas, além disso, os contratos inteligentes podem ser programados em outras linguagens usando uma camada de abstração. A primeira camada é SmartPy, que permite a programação de contratos inteligentes para Tezos usando Python. E o segundo é o LIGO, que permite programar em linguagens como Pascal, Camel e Reason. Na verdade, a linguagem de programação OCaml é a linguagem nativa sob a qual o núcleo do Tezos é programado.
Neste ponto, você se perguntará, por que outra linguagem de programação? Bem, no caso do Tezos, a linguagem de Michelson é muito mais prática. Com mais poder do que Solidity, velocidade, estruturas de dados padrão integradas, maior precisão decimal e uma sintaxe muito mais limpa, Michelson é de longe uma linguagem melhor estruturada. Além disso, a capacidade de usar um framework para programar contratos inteligentes usando outras linguagens, como o conhecido Python ou Pascal, oferece à Tezos um poder que o Solidity in Ethereum não alcançou.
Além disso, a existência de contratos inteligentes permite que esta plataforma crie tokens fungíveis e não fungíveis (NFT). Neste ponto, os tokens fungíveis Tezos estão em conformidade com o padrão ERC-20 de Ethereum, e são especificados no TZIP-7. O mesmo acontece com os tokens não fungíveis (NFT), que seguem os padrões ERC-721 e ERC-1155 de Ethereum, e são especificados em TZIP-12 de Tezos. Desta forma, Tezos pode criar pontes de comunicação entre tokens Ethereum e seu blockchain com muita facilidade.
Governança do projeto
A governança da Tezos conta com uma estrutura em cadeia que permite a seus participantes propor, selecionar, testar e ativar atualizações de protocolo sem a necessidade de hard fork.
Em termos simples, isso significa que o Tezos é um blockchain que pode melhorar ao longo do tempo por ter um processo formalizado para atualizações de protocolo. Na prática, é semelhante à estrutura de uma corporação, onde os acionistas podem votar na direção da empresa.
Muitos outros blockchains não têm esse tipo de estrutura formal de governança, portanto, a direção desses projetos geralmente é decidida por um pequeno grupo de desenvolvedores ou uma fundação, que pode ou não representar todas as partes interessadas de forma justa.
Esse processo é possível graças ao processo de auto-alteração, que é dividido em quatro períodos. O primeiro período é o período de propostas em que as propostas de mudanças são submetidas à comunidade. Em seguida, passa o período de exploração da votação, momento em que os padeiros podem votar na proposta mais bem classificada do período de propostas anterior. Os padeiros podem votar "Sim", "Não" ou "Abstenção" em uma proposta específica.
O terceiro período é o período de teste, no qual o teste começa em testnet da proposta. Se a proposta passar neste estágio de teste, ela vai para o último período. Este último período é o período de votação de promoção, no qual é feita uma nova votação para decidir definitivamente se a proposta entra ou não no protocolo de Tezos. Isso só será possível se a proposta chegar a uma votação com uma participação com um quorum mínimo (51% de todos os participantes) e uma maioria de Bakers a seu favor (80% de Bakers).
O fato de as melhorias serem tratadas desta forma também indica que existe um repositório de propostas no estilo do Propostas de melhorias de bitcoin (BIP). Esse repositório de propostas ou Propostas de melhorias da Tezos (TZIP) pode ser visto nisso link.
Prós e Contras do projeto
Tezos é um projeto focado em oferecer um sistema muito mais amigável para gerenciar contratos inteligentes, ao invés de ser um projeto para pagamentos P2P. Isso limita um pouco o escopo de tal projeto, mas também fornece melhores condições para aqueles que desejam construir aplicativos descentralizados nesta plataforma.
Na verdade, são seus contratos inteligentes e seu potencial que fazem Tezos brilhar. Embora Michelson seja uma linguagem difícil e abstrata por causa de seu manuseio em pilhas, isso dá a ela uma velocidade de processamento incomparável. Isso se deve ao fato de que um contrato inteligente em Michelson está praticamente falando a língua nativa com os nós Tezos e, portanto, a execução dessas ações é muito mais rápida, requer menos poder computacional e é legível.
Isso é o oposto do que acontece no Solidity, cuja linguagem é interpretada e embora possa ser compilada rapidamente, uma vez compilada, é humanamente ilegível. Além disso, o fato de ser capaz de usar outras linguagens para programar contratos inteligentes por meio do framework reforça sua capacidade de criar contatos inteligentes de maneiras muito mais fáceis.
Outro ponto a favor do Tezos é sua modularidade, e o fato de seu blockchain poder ser atualizado sem ter que recorrer a hard forks, o que mantém a continuidade da história deste blockchain. No entanto, isso também é visto como um problema devido à concentração de poder de alguns grandes padeiros e seu peso dentro do projeto, sugerindo uma sugestão de centralização na comunidade.
Conclusão
Tezos é um blockchain projetado do início ao fim para oferecer uma infraestrutura escalonável, segura e poderosa para contratos inteligentes de nível industrial e empresarial. Este é um objetivo que, graças à sua linguagem Michelson, a forma como está estruturado o seu funcionamento e a segurança do protocolo LPoS é alcançada sem problemas.
Com infraestruturas e tokens semelhantes a ERC-20, DApps e integrações com tecnologia como IPFS, A Tezos oferece tudo que você precisa para implantar essas ferramentas com muita facilidade. Um bom exemplo disso pode ser o projeto Kalamint, onde você pode lidar Tokens NFT dentro desta plataforma. Porém, talvez sua maior fraqueza neste caso seja que grande parte dessa tecnologia veio após o sucesso e apresentação de equivalentes em outras redes, tudo devido ao recente nascimento desta rede.
Apesar disso, Tezos conquistou um lugar forte na comunidade de criptografia, destacando-se como um dos 20 melhores projetos de blockchain, e com potencial para continuar melhorando graças à sua visão e forte comunidade.