
Expiração é o processo pelo qual uma ação ou permissão perde validade após o cumprimento de condições pré-estabelecidas, como limite de tempo, alteração de status ou mudanças no ambiente da rede. No contexto Web3, a expiração é fundamental porque delimita permissões e riscos dentro de parâmetros de “tempo e condição”, reduzindo abusos e ataques de repetição.
Pense na expiração como a data de validade de um cupom: após o término da validade, ordens não podem mais ser executadas, assinaturas vencidas não acionam smart contracts e aprovações expiradas são rejeitadas pelo contrato. Esse mecanismo reduz o uso indevido e protege seus ativos.
A expiração de ordens é normalmente definida por “condições de tempo e execução”. As três estratégias mais comuns são: GTC, IOC e FOK.
Nas interfaces de negociação spot e de derivativos da Gate, estratégias como IOC e FOK estão disponíveis. Ao selecionar IOC, qualquer parte não preenchida expira instantaneamente; ao escolher FOK, evita-se execução parcial, garantindo maior previsibilidade à estratégia.
A expiração de assinaturas e autorizações geralmente é controlada por “deadline” ou “janela de validade”. Muitas DApps incluem um campo “deadline” nos pedidos de assinatura; após esse prazo, a assinatura se torna inválida.
EIP-2612 é um padrão de “permit signature” que permite aprovar gastos de tokens sem transação on-chain. Ele inclui um prazo de validade—após o qual a assinatura expira e o contrato rejeita qualquer tentativa de uso.
EIP-712 é um padrão de assinatura estruturada que incorpora campos essenciais como chain ID, domínio do contrato e tempo de expiração. Isso impede ataques de repetição em diferentes ambientes; mesmo que uma assinatura seja copiada, ela não poderá ser reutilizada após expirar ou se o contexto for incompatível.
Ao ser solicitado por sua wallet para assinar, verifique se há campos de validade ou prazo. Validades mais longas aumentam o risco de uso indevido; períodos curtos são mais seguros, mas exigem ação ágil.
Smart contracts normalmente aplicam expiração validando o prazo nos pontos de entrada das funções. É comum verificar se o timestamp do bloco atual é menor ou igual ao prazo; caso contrário, a chamada é rejeitada como expirada.
Timestamps de bloco são definidos por validadores e admitem pequenas variações. Contratos frequentemente incluem períodos de tolerância para evitar expiração prematura e garantir que ações não ocorram após o prazo. Desenvolvedores podem adicionar campos como “validUntil” em autorizações ou ordens para validação centralizada.
No modelo UTXO do Bitcoin, scripts baseados em tempo também determinam a janela de validade das transações. Por exemplo, um script pode exigir que moedas não sejam gastas antes ou depois de determinado momento—usando restrições temporais para controlar a validade.
O tempo on-chain define “quando” algo expira; o nonce determina “se” algo pode ser repetido.
Um nonce funciona como um contador de transações: o nonce de cada conta deve ser incrementado. Se uma nova transação com o mesmo nonce for aceita pela rede, a anterior é substituída e removida dos mempools—na prática, tornando a anterior expirada.
Timestamps de bloco são definidos pelos produtores de bloco e não correspondem exatamente ao tempo real, mas são essenciais para determinar expiração. Contratos dependem do tempo do bloco para evitar dependência de relógios externos.
Em Ethereum e chains compatíveis, a expiração é definida principalmente em contratos e DApps, geralmente usando campos “deadline” e “nonce replacement” para segurança. Aprovações padrão de tokens não expiram, por isso muitos aplicativos adotam EIP-2612 para adicionar datas de validade.
No Bitcoin, scripts temporais e mecanismos de bloqueio definem as janelas de validade das transações em nível fundamental, determinando se moedas podem ser gastas antes ou depois de certos períodos.
No Solana, transações podem especificar um “last valid block height”; após esse bloco, a transação se torna inválida—criando uma janela baseada em tempo ou altura de bloco. Em algumas redes Layer 2, a lógica segue o padrão do Ethereum, com expiração predominantemente gerida no contrato ou aplicação.
A expiração envolve dois riscos principais: expiração prematura (falha na operação) e expiração tardia (janela ampliada para uso indevido).
Adote cautela nas operações de segurança de fundos. A expiração não elimina todos os riscos; aprovações de longo prazo ainda ativas exigem gerenciamento contínuo.
Na interface de negociação da Gate, a estratégia de execução escolhida determina como as ordens expiram:
Para expiração de autorizações, ao interagir com DApps via portal Web3 ou wallet da Gate, verifique se as autorizações têm prazo. Para permissões ilimitadas sem data de expiração, audite e revogue periodicamente acessos não utilizados na página de gerenciamento de autorizações.
Obsolescência de fonte de dados é uma forma de expiração. Oracles normalmente fornecem timestamps; contratos verificam se os dados recebidos estão dentro da janela de atualização permitida. Caso contrário, preços são considerados “obsoletos” e chamadas são rejeitadas—equivalente à expiração dos dados.
Desde o final de 2025, os principais protocolos DeFi passaram a validar com mais rigor a atualização de feeds de preços e juros—exigindo atualizações frequentes para mitigar riscos em mercados voláteis. Para NFTs e metadados armazenados em servidores centralizados, links quebrados fazem com que o conteúdo seja considerado expirado pelos aplicativos—o efeito é idêntico à expiração.
No nível dos nós, clientes blockchain estão migrando para não armazenar dados históricos indefinidamente. Dados muito antigos podem não estar disponíveis em nós padrão; desenvolvedores precisam recorrer a serviços de arquivamento ou indexação personalizada para evitar interrupções causadas por acesso a dados “expirados”.
A expiração limita a janela de validade de ordens, assinaturas, autorizações e dados—servindo como ferramenta essencial de segurança e governança em Web3. Ao compreender os limites definidos por tempo e estado, utilizar checagens de expiração em contratos, substituição de nonce, estratégias de ordens em exchanges e gerenciamento de autorizações em DApps, é possível equilibrar eficiência de execução com controle de riscos de uso indevido e ataques de repetição. Sempre revogue permissões de longo prazo quando não forem mais necessárias, defina a validade das ordens conforme sua estratégia, verifique a atualização dos dados em contratos e audite continuamente sua atividade—transformando a “expiração” de ameaça oculta em proteção ativa.
Modo de expiração descreve como uma função, ordem ou autorização deixa de operar. Em Web3, os modos incluem expiração por tempo (ex: timeout de ordem), expiração por parâmetro (ex: preço fora do esperado) e expiração por revogação (ex: cancelamento manual de aprovação). Entender esses modos ajuda a evitar falhas inesperadas em negociações ou riscos aos fundos.
“Stalling” é quando uma negociação fica lenta ou travada; “expiração” é quando uma função deixa de funcionar ou perde validade. Expiração tem um ponto final definido (como uma ordem atingindo o prazo), enquanto stalling refere-se à performance degradada. Uma ordem pode expirar devido a stalling—mas são conceitos diferentes.
A expiração automática de ordens é uma proteção embutida, normalmente acionada por três fatores: tempo (fim da validade), condições de mercado (preço ultrapassa limites definidos) ou restrições de bloco (superação de altura de bloco). Esse mecanismo protege suas negociações contra execuções em situações extremas de mercado.
Não. Expiração de autorização significa que sua permissão para um contrato usar seus fundos expirou; expiração de ordem significa que sua instrução de negociação perdeu validade. Uma transação pode sofrer ambos: a expiração da autorização impede a execução mesmo com ordem válida; a expiração da ordem impede o preenchimento mesmo com autorização ativa.
Para verificar se uma ordem expirou:
Se a ordem expirou, será necessário criar uma nova para continuar negociando.


