Pular para o conteúdo

Confirmação de cadeia versus confirmação de transação

Por volta de 2 min

Confirmação de cadeia versus confirmação de transação

Ao discutir o Cardanoopen in new window, questões frequentemente repetidas são qual é o tempo de transação do Cardano? e quantas confirmações de rede o Cardano requer antes que uma transação seja concluída? As respostas a essas perguntas exigem uma análise mais profunda dos conceitos de confirmação de cadeia e confirmação de transação, e como esses se relacionam com o protocoloopen in new window.

Confirmação de cadeia

Este é o ponto além do qual a cadeia é garantida pelo protocolo para não se alterar mais devido a aleatoriedade ou eventos aleatórios.

A confirmação de cadeia ocorre em algum momento no futuro, após uma certa quantidade de futuros k blocos terem sido criados. O tempo entre o momento atual e o momento em que a confirmação de cadeia para uma transação específica ocorre é chamado de janela de estabilidade (ou seja, o número de slots necessários para que um bloco se torne estável, onde estável é definido como um bloco que não pode ser revertido). A fórmula para calcular esta janela é 3k/f (onde k é o parâmetro de segurança no início, e f é o parâmetro de coeficiente de slot ativo no início que determina a probabilidade para a quantidade de blocos criados em um epoch.)

Confirmação de transação

Este é o ponto no tempo em que uma transação é aceita na cadeia e se torna imutável. Os conceitos de profundidade do bloco e janela de liquidação entram em jogo aqui.

Uma transação pode ser considerada confirmada se o bloco que a contém estiver suficientemente profundo na cadeia. Suficientemente profundo é um conceito relativo: a profundidade de um bloco indica quantos blocos a mais foram adicionados à cadeia desde que aquele bloco específico foi anexado a ela. E como os blocos têm profundidade, as transações contidas neles também têm.

Se a profundidade de um determinado bloco for maior do que um limite pré-definido, a transação é considerada confirmada, e os ativos nessa transação podem ser usados 'com segurança' (ou seja, o protocolo garante que a transação se tornou imutável, então os ativos podem ser negociados, trocados, etc.)

O período de tempo que passa entre o momento em que uma transação é confirmada e quando os ativos da transação podem ser usados para trocar com outros ativos é chamado de janela de liquidação.

Probabilidade de imutabilidade

Outra forma de determinar se uma transação é confirmada é considerar a probabilidade de imutabilidade da transação. A probabilidade de uma transação ser imutável depende de quantos blocos foram adicionados à cadeia desde que essa transação foi aceita na cadeia. Quanto mais blocos adicionados, maior a probabilidade de que a transação se torne imutável.

Uma transação se torna imutável assim que sua profundidade for maior do que 3k/f slots (ou seja, 129600 slots no mainnet atual, ou 36 horas). Se esta transação for inserida em um bloco no slot 10, por exemplo, ela só se tornará verdadeiramente imutável no slot 129600. Isso é garantido pelo protocolo Ouroboros Praosopen in new window.

No entanto, 3k/f slots normalmente excedem os requisitos na maioria das situações, então uma abordagem mais prática é considerar a probabilidade de uma transação se tornar imutável. Neste caso, consideramos que uma transação é confirmada se a probabilidade de se tornar imutável for suficientemente alta.

Última atualização:
Contribuidores: cauechianca