692 / 736BIP347

OP_CAT

Concatenação de dados no Tapscript

O BIP 347 propõe restaurar no Tapscript uma operação simples que concatena dois elementos da pilha e amplia as possibilidades de criação de contratos Bitcoin.

OP_CAT é um opcode proposto para Tapscript que concatena duas sequências de bytes quando o elemento resultante não excede o limite de 520 bytes; ainda não está ativo na mainnet.

A especificação redefine OP_SUCCESS126 no Tapscript. A operação remove os dois elementos superiores da pilha, concatena-os na ordem da pilha e devolve o resultado à pilha. [1]

O OP_CAT original foi desativado no início do Bitcoin junto com outros opcodes. A nova proposta limita-se ao Tapscript e mantém o limite atual de 520 bytes para um único elemento da pilha. [2]

A concatenação permite construir e aplicar hashes a dados estruturados dentro de um script. Seus defensores derivam daí covenants, árvores de transações, vaults e provas sobre propriedades de uma transação futura. [1]

O opcode sozinho não define uma aplicação específica nem uma máquina virtual de uso geral. A segurança de cada protocolo depende de como ele combina OP_CAT com hashes, assinaturas e regras de gasto. [1]

O BIP tem status Complete, que descreve a maturidade do documento e não uma ativação por consenso. Os nós da mainnet tratam hoje OP_SUCCESS126 como encerramento bem-sucedido do script segundo as regras do Tapscript. [3]

A ativação seria um soft fork: as novas regras reduziriam o conjunto de gastos Tapscript antes válidos. Ela exigiria um processo de implantação separado e ampla avaliação técnica. [1]

OP_CAT está relacionado a CTV, covenants e Simplicity, mas não é sinônimo deles. Cada proposta oferece expressividade, custos de análise e espaço para construções imprevistas diferentes. [1]

A verificação deve separar a especificação existente e as implementações experimentais das regras reais da mainnet. Uma wallet não deve presumir que OP_CAT esteja disponível sem ativação. [4]

Para ter uma visão mais completa, leia este verbete junto com Bitcoin Script, Taproot, Covenants, OP_CHECKTEMPLATEVERIFY, Soft Fork, BIP (Bitcoin Improvement Proposal).

01OP_CAT está ativo hoje na mainnet do Bitcoin?

Não. O BIP 347 é uma especificação de proposta concluída, mas a mudança não foi ativada como regra de consenso da mainnet.

02OP_CAT significa smart contracts de uso geral?

Não. Ele adiciona uma única operação de concatenação de dados; as possibilidades e os riscos surgem dos scripts e protocolos específicos que a utilizam.

DOC · 001BIP 347 — OP_CAT in TapscriptEspecificação DOC · 002Bitcoin Optech — OP_CATDocumentação DOC · 003Bitcoin Core — Tapscript interpreterFonte primária DOC · 004BIP 342 — Validation of Taproot ScriptsEspecificação
Revisto em: Fontes em primeiro lugar · Não é recomendação de investimento