O que é Ouroboros? O mecanismo de consenso da Cardano

O que é Ouroboros? O mecanismo de consenso da Cardano

O que é o Ouroboros da Cardano?

Ouroboros é o mecanismo de consenso utilizado pela blockchain da Cardano para validar transações e adicionar novos blocos à blockchain. Dentro da blockchain, o Ouroboros determina quais participantes recebem o direito de produzir um novo bloco e como os participantes da rede chegam a um consenso sobre a validade das transações e o estado mais recente do distributed ledger.

Ouroboros funciona como um mecanismo de Proof-of-Stake (PoS), mas procura distinguir-se através de um sistema baseado em investigação académica com propriedades de segurança formalmente comprovadas por provas matemáticas.

O mecanismo foi desenvolvido sob a liderança de Charles Hoskinson juntamente com a sua equipa de criptógrafos e cientistas da computação, bem como com investigadores de instituições como a Universidade de Edimburgo e a IOHK (Input Output Hong Kong). O que torna o Ouroboros único é o facto de ter sido um dos primeiros protocolos Proof-of-Stake cuja segurança foi revista por pares em publicações académicas.


Pontos principais

  • Ouroboros é o mecanismo de consenso da blockchain da Cardano e determina como as transações são validadas e como novos blocos são adicionados à blockchain.
  • O protocolo funciona com uma estrutura temporal de epochs e slots, onde para cada slot é determinado qual participante recebe o direito de produzir um novo bloco.
  • Em vez de mining com elevado consumo de energia, como no Proof of Work, os blocos são produzidos por participantes que fizeram staking de ADA ou delegaram os seus ADA em staking pools.
  • Ouroboros foi desenvolvido com base em investigação académica e está entre os primeiros protocolos Proof-of-Stake cuja segurança foi estudada matematicamente e publicada com revisão por pares.

O que significa Ouroboros?

O nome Ouroboros pode parecer bastante complicado. Só ao ouvir o nome talvez possas perguntar: por que escolher um nome tão difícil? No entanto, Charles Hoskinson (o fundador da Cardano) e a sua equipa não o escolheram ao acaso. O nome Ouroboros é um antigo símbolo de uma serpente ou dragão que morde a própria cauda formando um círculo. Isto simboliza a infinitude, a ciclicidade e a renovação contínua. Como a criatura se consome e recria constantemente, é frequentemente interpretada como uma representação do ciclo eterno de vida, morte e renascimento.

O símbolo aparece em várias culturas antigas, incluindo as tradições egípcias, gregas e alquímicas.

No contexto das blockchains, este simbolismo encaixa bem com a ideia de um sistema que produz continuamente novos blocos e que se renova constantemente. A blockchain cresce continuamente à medida que novos blocos são adicionados, enquanto a rede se mantém através de mecanismos de consenso.

Com este contexto, não é surpreendente que este nome tenha sido dado ao mecanismo de consenso de uma blockchain. É precisamente por essa razão que a Cardano escolheu o nome Ouroboros.

A ideia por trás do Ouroboros

Os desenvolvedores do Ouroboros e da Cardano queriam criar uma blockchain que fosse segura, escalável e eficiente em termos energéticos e, talvez o mais importante, um mecanismo de consenso cuja segurança fosse matematicamente comprovada. Com o Ouroboros, tentaram desenvolver uma alternativa às blockchains de elevado consumo energético, como Bitcoin e Litecoin, que utilizam Proof of Work (PoW).

Estas blockchains utilizam miners que empregam grandes quantidades de poder computacional para validar transações e adicionar novos blocos. Este modelo é seguro, mas consome muita energia.

Ouroboros procura alcançar o mesmo nível de segurança sem esta competição intensiva em energia. Em vez disso, o protocolo utiliza a participação económica na rede como base para o consenso. A probabilidade de um participante poder produzir um novo bloco depende da quantidade de ADA que coloca em staking. Isto é conhecido como staking.

O modelo é cientificamente fundamentado. Investigadores criaram provas matemáticas que demonstram que a rede permanece segura desde que a maioria do stake se comporte de forma honesta.

Ouroboros funciona como um mecanismo de consenso que utiliza os chamados epochs e slots. O sistema utiliza uma estrutura temporal fixa para determinar quem pode adicionar um bloco à blockchain. Em vez de miners competirem com poder computacional como no Proof of Work, o Ouroboros seleciona os participantes que podem produzir blocos com base na quantidade de ADA que foi colocada em staking.

Um epoch é um período mais longo dentro da rede. Um epoch é composto por um grande número de slots. Um slot é uma curta janela de tempo durante a qual, em princípio, um bloco pode ser produzido.

Dentro de um epoch, novos blocos são distribuídos pelos slots. Dentro de um slot é determinado quem pode validar e adicionar o novo bloco com transações ao distributed ledger.

Ouroboros observa a participação de um staking pool. Quanto maior for a quantidade de ADA em staking dentro de um staking pool, maior será a probabilidade de que esse pool receba o direito de produzir um bloco num determinado slot. Como resultado, a produção de blocos está ligada ao interesse económico na rede em vez de à potência computacional.

Como o produtor do bloco é escolhido com base nos ADA em staking, na prática foram criados muitos staking pools. Um staking pool gere a infraestrutura técnica necessária para processar transações e produzir novos blocos. Os utilizadores podem delegar ADA nesses pools, o que aumenta a probabilidade de que blocos sejam produzidos utilizando os seus tokens ADA em staking. Os ADA delegados continuam a pertencer ao utilizador, mas contam para o stake total desse pool. Quanto maior for o stake representado por um pool, maior será a probabilidade de esse pool ser selecionado como produtor em vários slots.

Quando um staking pool é selecionado para um determinado slot, esse pool pode criar um novo bloco dentro dessa janela temporal. Esse bloco contém transações válidas que ainda não foram adicionadas à blockchain. O pool transmite então o bloco para o resto da rede. Outros nodes verificam posteriormente se o bloco é válido. Por exemplo, verificam se as transações estão corretas, se não ocorre double spending (double spending) e se o bloco foi produzido de acordo com as regras do protocolo. Se o novo bloco for válido, eles adicionam-no à sua própria versão da blockchain.

Um aspeto importante do Ouroboros é que a segurança da rede depende de uma maioria honesta do stake. Enquanto a maior parte dos ADA em staking for controlada por participantes honestos, a rede permanece fiável e torna-se extremamente difícil para agentes maliciosos manipularem a blockchain. Esta é uma diferença fundamental em relação ao Proof of Work, onde a segurança depende principalmente da maioria do poder computacional.

Qual é a diferença entre Ouroboros e o Proof of Stake tradicional?

Ouroboros é uma forma de Proof of Stake (PoS), mas difere em vários aspetos de outros modelos de PoS, como o utilizado pela Ethereum.

Uma diferença importante é que o Ouroboros foi desenvolvido com base em investigação científica. O protocolo foi concebido por investigadores e posteriormente revisto por outros cientistas. Muitos sistemas Proof-of-Stake mais antigos foram construídos principalmente por desenvolvedores sem uma investigação académica extensa sobre a sua segurança.

Além disso, o Ouroboros introduziu uma estrutura temporal clara com epochs e slots, o que torna a produção de blocos mais previsível e organizada. Em alguns sistemas PoS tradicionais, a produção de blocos é atribuída de forma menos estruturada, por exemplo através de uma seleção aleatória de validadores com base no seu stake. Esses validadores recebem então a oportunidade de produzir um bloco quando o protocolo os seleciona.

Outra diferença é a utilização de stake pools. O Ouroboros incentiva a descentralização através de staking pools, permitindo que os utilizadores deleguem os seus ADA sem terem de executar um node por conta própria.

Atualizações do Ouroboros

Desde o desenvolvimento do Ouroboros e da Cardano, o Ouroboros foi melhorado várias vezes. Cada atualização contribuiu para melhorar a segurança, a escalabilidade e a estabilidade. A seguir encontram-se as atualizações mais importantes.

Ouroboros Classic

Ouroboros Classic é a versão original do protocolo e foi apresentada em 2017 numa publicação académica. Foi um dos primeiros sistemas Proof-of-Stake cuja segurança foi demonstrada matematicamente. Esta versão formou a base da rede original da Cardano.

O protocolo introduziu a ideia de epochs e slots e utiliza a quantidade de ADA em staking para determinar qual node pode produzir um bloco.

Ouroboros BFT

Ouroboros BFT (Byzantine Fault Tolerance) foi uma atualização temporária utilizada durante a transição da primeira versão da Cardano para uma rede totalmente descentralizada.

Esta versão permitiu realizar uma transição segura entre diferentes protocolos sem reiniciar a blockchain ou perder o seu histórico. Foi utilizada principalmente durante as fases Byron e Shelley da Cardano.

Ouroboros Praos

Ouroboros Praos é a versão do protocolo que atualmente constitui a base da rede Cardano. Esta atualização melhorou principalmente a segurança e a forma como os produtores de blocos são selecionados.

Além disso, o Praos tornou mais difícil para os atacantes saber antecipadamente qual node produzirá um bloco, uma vez que a seleção de um slot permanece parcialmente secreta. A aleatoriedade no processo de seleção também foi melhorada, ajudando a proteger a rede contra manipulações.

Ouroboros Genesis

Ouroboros Genesis é uma melhoria adicional do Praos e concentra-se principalmente em nodes que são novos na rede ou que regressam após um longo período offline.

Normalmente, um novo node precisa de sincronizar toda a blockchain. O Genesis introduz mecanismos que impedem que esse node seja enganado por uma entidade maliciosa que tente apresentar uma blockchain alternativa e falsa (um chamado long range attack). Isto torna mais seguro para novos nodes juntarem-se à rede.

Vantagens do Ouroboros

Ouroboros apresenta várias vantagens:

  • Baixo consumo de energia
    Ouroboros utiliza Proof of Stake em vez de mining com elevado consumo energético. Como resultado, a rede consome muito menos eletricidade do que as blockchains que utilizam Proof of Work.
  • Alto nível de descentralização
    Os utilizadores podem delegar os seus ADA em diferentes staking pools, o que reforça a descentralização da rede. Isto permite que muitos participantes contribuam para a rede sem terem de operar um node.
  • Design baseado em investigação científica
    O protocolo foi desenvolvido com base em investigação académica e analisado por cientistas. Isto ajuda a aumentar a segurança e a fiabilidade da rede.
  • Escalabilidade
    Com a utilização de epochs e slots, a produção de blocos pode ser organizada de forma eficiente.

Desvantagens do Ouroboros

Além das vantagens, o Ouroboros também apresenta desvantagens e riscos:

  • Complexidade do protocolo
    O Ouroboros é tecnicamente bastante complexo e baseado em criptografia avançada. Isto pode tornar mais difícil compreender completamente o sistema.
  • Risco de centralização
    Se grandes staking pools receberem muitas delegações, um número relativamente pequeno de pools poderá produzir uma grande parte dos novos blocos, o que pode colocar pressão sobre a descentralização.
  • Dependência de incentivos económicos
    O sistema funciona melhor quando os participantes se comportam de forma honesta porque têm interesse financeiro na rede. Se grandes quantidades de stake forem controladas por agentes maliciosos, podem surgir riscos.
  • Desenvolvimento mais lento
    Como a Cardano dá grande importância à investigação académica e à revisão por pares, algumas novas funcionalidades podem ser introduzidas mais lentamente do que em outros projetos de blockchain.

Considerações finais

Ouroboros é o mecanismo de consenso que constitui a base da blockchain da Cardano e determina como as transações são validadas e como novos blocos são adicionados. Ao contrário de sistemas com elevado consumo energético como o Proof of Work, o Ouroboros utiliza Proof of Stake, onde os participantes têm a oportunidade de produzir blocos com base na quantidade de ADA que colocaram em staking. Graças à utilização de epochs e slots, a rede pode organizar a produção de blocos de forma estruturada e eficiente.

O que distingue o Ouroboros de muitos outros mecanismos de consenso é o forte foco na investigação académica e nas provas formais de segurança. O protocolo foi concebido por investigadores e publicado em estudos revistos por pares, o que significa que a segurança do sistema é matematicamente sustentada. Além disso, os staking pools permitem que os utilizadores participem facilmente na rede sem terem de gerir um node por conta própria.

Ao mesmo tempo, o Ouroboros também apresenta desafios. A complexidade técnica do protocolo pode tornar mais difícil compreender completamente o sistema, e uma forte concentração de stake em grandes staking pools pode colocar pressão sobre a descentralização. Apesar destas considerações, o Ouroboros é amplamente visto como um exemplo importante de como a investigação científica e a tecnologia blockchain podem ser combinadas para desenvolver um mecanismo de consenso seguro e energeticamente eficiente.

Sobre a Finst

A Finst é uma plataforma de criptomoedas líder nos Países Baixos que oferece taxas de transação bastante reduzidas, segurança de nível institucional e um conjunto abrangente de serviços de criptomoedas, como negociação, custódia, staking e rampas de entrada e saída de moeda fiduciária. Fundada pelo antigo núcleo da equipa da DEGIRO, a Finst está autorizada como prestador de serviços de criptoativos pela Autoridade Holandesa para os Mercados Financeiros (AFM) e serve clientes privados e institucionais em 30 países europeus.

A plataforma de criptomoedas que vai adorar

Estamos aqui para lhe fornecer as ferramentas, a inspiração, e o apoio que precisa para se tornar num melhor investidor.

Criar conta gratuita