A rede Cardano está mais uma vez se preparando para a chegada do hard fork vasilha. Esta é uma atualização que promete grandes mudanças que o aproximarão de uma infraestrutura de contrato inteligente com grande flexibilidade para criar dApps ainda mais poderosos e onde a escalabilidade da rede será tão ampla que permitirá dobrar sua capacidade atual. Mas que surpresas traz Vasil Cardano? Como isso melhorará uma das grandes redes blockchain de hoje? Veremos isso a seguir.
Vasil, uma homenagem e uma otimização esperada
EEm primeiro lugar, o nome do hard fork Vasil foi escolhido como uma homenagem a um amigo pessoal de Charles Hoskinson: Vasil Stoyanov Davov, que foi Embaixador Global Cardano, falecido em dezembro de 2021. A escolha de Vasil como nome deste hard fork rompe com a tradição de usar nomes de personalidades científicas históricas, mas também mostra a estima por Vasil, que promoveu a adoção do Cardano no mundo.
Além disso, Vasil Cardano chega com diversas melhorias que buscam dar um ótimo desempenho à rede de forma a prover a capacidade de atender o crescente número de usuários que chegam à rede. Desde a ativação de contratos inteligentes e a chegada de tokens, NFTs e dApps ao Cardano, o uso da rede se multiplicou.
Com isso em mente, os desenvolvedores do Cardano trabalharam para manter um ecossistema com custo justo e altamente escalável. Nesse cenário, Vasil é um avanço nesse sentido, que acontece na era Goguen, a era atual do desenvolvimento de redes, e que permite aos desenvolvedores começar a trabalhar no Basho, a próxima era do Cardano, que promete dobrar o escalabilidade on-chain e, ao mesmo tempo, criar as infraestruturas necessárias para lateralizar muitas funções e recursos on-chain do Cardano, aumentando ainda mais sua escalabilidade.
Agora, exatamente de quais melhorias e otimizações estamos falando? Bem, vamos ver tudo de novo que Vasil vai oferecer à comunidade que faz a vida em Cardano.
Melhorias na divulgação de informações na rede
Uma das principais melhorias do Vasil está no sistema de transmissão de transações e blocos dentro da rede. Um dos principais desafios das redes blockchain é que, à medida que suas redes crescem e se tornam mais descentralizadas, elas acabam exigindo cada vez mais tempo para disseminar e propagar as informações para todos os nós da rede para chegar a um consenso. Durante esse tempo, não apenas o consenso é atrasado, mas ao mesmo tempo a porta é aberta para realizar ataques a ele, e pode acontecer que terceiros mal-intencionados possam alterar e quebrar a rede temporária ou permanentemente.
Assim, a primeira linha de defesa é ter tempos de difusão de informações curtos e tornar esse sistema muito eficiente. E isso é algo em que Vasil traz grandes melhorias para a rede Cardano. Lembremos que a rede Cardano cresceu em tamanho e uso, o que gera mais informações a serem transmitidas e ao mesmo tempo consome largura de banda. Desta forma, fazer uso deste recurso limitado é essencial, e para melhorar sua eficiência e capacidade, a Vasil ativará uma melhoria conhecida como «Pubulação de Difusão», processo que ajuda a propagação da informação a ser feita de forma muito mais rápida e eficiente, para que esse processo seja realizado em no máximo 5 segundos.
Para isso, o Diffusion Pipeling propaga os blocos antes de sua validação completa, "sobrepondo" o tempo gasto na difusão com o tempo necessário para a validação. Desta forma, a difusão torna-se assíncrona em relação à validação, permitindo:
- Que os blocos se propaguem rapidamente e dentro dos tempos de validação.
- Que a rede reconheça o novo bloco e seu bloco anterior, mantendo a segurança e a "cadeia de blocos" correta em todos os momentos, evitando ataques DDoS ou split-network que agentes mal-intencionados podem transportar pela rede.
Isso é perfeito se levarmos em conta que o sistema Cardano para sua comunicação em rede é baseado em dois grandes sistemas:
- Um sistema derivado do protocolo Gossip que permite o uso eficiente dos recursos da rede. Esta parte é projetada em tecnologias como TCP, HTTP e técnicas como CBOR (você pode ler mais no RFC 7049 – Representação Concisa de Objetos Binários).
- Um conjunto de mini-protocolos que trabalham em conjunto para realizar as diferentes tarefas de comunicação da forma mais eficiente e que é responsável por encontrar peers, manter a comunicação e várias tarefas de sincronização de rede.
Melhorias no script Plutus
Outra grande melhoria no Vasil pode ser vista no Plutus, a plataforma de contrato inteligente da Cardano. Com o Vasil, os desenvolvedores agora poderão criar dApps mais rápidos e eficientes, graças à otimização dos contratos inteligentes que virão no Vasil, juntamente com as primitivas Plutus V2, que ajudarão a aproveitar melhor o modelo EUTXO da Cardano.
PIC ou Propostas de Melhorias Cardano para Plutão
Todas essas melhorias para Plutus vêm na forma de Propostas de Melhorias CIP ou Cardano, que em espanhol significa Proposta de Melhoria para Cardano. Estes CIPs são documentos técnicos que explicam de forma clara e detalhada as motivações, objetivos e formulações de uma melhoria introduzida no Cardano, para fazer evoluir este ecossistema.
Como os BIPs (Propostas de melhorias do Bitcoin) ou EIP (Proposta de melhorias do Ethereum), os CIPs são discutidos e desenvolvidos abertamente para estudar minuciosamente seu escopo, sendo aprovados e implementados como parte do projeto oficial, uma vez que todos eles tenham sido polidos e bem testados. Os desenvolvedores mantêm todas essas propostas acessíveis ao público neste web, para que possam participar tanto no seu desenvolvimento, como na sua revisão e utilização para o desenvolvimento de outras propostas ou projetos.
Neste caso, a Vasil apresenta os seguintes IPCs para melhorar o Plutus:
- Adição de entradas de referência (CIP-31). Esta atualização permite o compartilhamento de dados na cadeia. Anteriormente, os dados eram transportados em saídas de transações; eles armazenaram e forneceram acesso a informações no blockchain. No entanto, para acessar as informações desses dados, a saída à qual os dados foram anexados teve que ser gasta. Isso exigia a recriação de uma surtida gasta. A adição de entradas de referência agora permite que os desenvolvedores consultem os dados sem etapas adicionais. Isso facilita o acesso às informações armazenadas no blockchain sem a necessidade de gastar e recriar UTXOs. Isso será útil para oráculos, por exemplo.
- Adicionando dados online (CIP-32). Os dados da transação são pré-anexados às saídas como hashes. Com a implementação de dados em linha, os desenvolvedores agora podem criar scripts e anexar dados diretamente às saídas em vez de usar seus hashes. Isso simplifica o uso dos dados, pois o usuário pode ver os dados reais em vez de fornecê-los para corresponder ao hash fornecido.
- Implementação de script de referência (CIP-33). No Alonzo, ao gastar uma saída bloqueada em um script Plutus, o script precisava ser incluído na transação de gastos. Isso aumentou o tamanho do script, causando também alguns atrasos em seu processamento. A atualização de scripts de referência permite que os desenvolvedores façam referência a um script sem incluí-lo em todas as transações. Isso reduz significativamente o tamanho da transação, melhora o desempenho e reduz os custos de execução do script (já que o script só precisa ser pago uma vez).
Melhorias de criptografia
Além disso, o Vasil também incluirá melhorias nas primitivas criptográficas da Cardano (permitindo mais opções de interoperabilidade para outras blockchains). Por exemplo, o Vasil ativará funções especiais que permitirão o uso do ECDSA com a curva secp256k1 (a mesma configuração usada no Bitcoin) para a realização de assinaturas digitais nos contratos inteligentes Plutus.
Da mesma forma, a equipe Cardano também decidiu aproveitar outro avanço feito no Bitcoin para adicioná-lo à sua pilha de criptomoedas: Schnorr. Com a chegada da Schnorr a Cardano, a rede poderá se beneficiar não apenas de operações criptográficas mais avançadas, seguras e otimizadas, mas também da capacidade de se comunicar através de pontes com redes como Bitcoin e Ethereum sem complicar especialmente a geração de tais infraestrutura ou requer mudanças significativas na pilha de criptografia.
Melhorias na gestão de garantias de contratos inteligentes
Outra grande melhoria do Vasil vem sobre o sistema de garantia usado no Plutus V2. De acordo com o CIP-40 conhecido como Script Assurance Adjustment, este sistema não só ajudará a melhorar a validação de transações, mas também resolverá um problema contínuo com os scripts do Plutus V1.
Anteriormente, o valor da garantia era fixado em 150% da taxa de transação e nenhuma alteração era feita na garantia UTXO. Isso significava que, se um script falhasse na validação da fase 2, um usuário do DApp perderia todos os fundos armazenados no UTXO escolhido para garantia, um fato inaceitável.
Depois do Vasil, os desenvolvedores de DApps terão a capacidade de especificar um endereço de alteração para garantia de script. Se o script falhar na validação da fase 2, apenas o valor da garantia será retirado e os fundos restantes serão enviados para o endereço da bolsa.
Finalmente, o Vasil otimiza o processo de função aleatória verificável do Ouroboros (VRF). Antes do Vasil, a validação do bloco exigia duas funções VRF em cada salto de rede. O Vasil dispensa um desses recursos, o que se traduz em sincronização de rede mais rápida e tempos de validação de bloco em geral. Os usuários experimentarão um desempenho aprimorado sem comprometer as configurações de segurança.
Comissionamento de Vasil
Apesar de todo o trabalho colocado em vasil cardano, o hard fork ainda não foi aplicado na rede principal devido a uma série de atrasos causados pela necessidade dos desenvolvedores polirem todos os pontos necessários para evitar problemas em sua implantação na mesma. O próprio Charles Hoskinson disse que os atrasos foram para garantir um processo sem problemas e, atualmente, o software cardano-node em sua versão 1.35.3 já está implantado e pronto para ser aquele que permite a implantação do Vasil dentro da rede principal.
Embora a versão do software esteja pronta, ainda não há uma data clara para iniciar a implantação na mainnet e os testes continuam na testnet, a fim de fechar os erros que bloqueiam o processo (bloqueadores de bugs), que você pode revisar neste link.
De qualquer forma, uma vez resolvidos todos esses problemas, certamente teremos a data final de implantação do Vasil e desfrutaremos de seus benefícios na rede principal Cardano.