Pular para o conteúdo
buybitcoinsmart

Glossário / Endereços e chaves

SegWit aninhado

Outros nomes: Wrapped SegWit, P2SH-P2WPKH, endereço 3.

O que é o SegWit aninhado?
O SegWit aninhado envolve um hash de chave do SegWit nativo dentro de um endereço P2SH, ganhando compatibilidade com softwares que não conseguiam ler strings bc1, a um custo de cerca de 23 vbytes extras por entrada.

Especificação no BIP-49.

Em 2017, quase nenhuma corretora conseguia interpretar um endereço bech32, então o BIP-141 permitiu que um programa de testemunha ficasse dentro de uma saída pay to script hash comum. O resultado parece, para quem envia, qualquer outro endereço que começa com 3, e o gasto ocupa cerca de 91 vbytes, contra 148 de uma entrada legada e 68 de uma entrada bc1q simples. Era uma ponte, e a travessia está aberta há anos.

Como funciona

Uma saída SegWit aninhada é uma saída P2SH sem nada de especial: OP_HASH160, um hash de 20 bytes, OP_EQUAL. O que está atrás do hash é incomum. O script de resgate não é realmente um script, mas o próprio programa de testemunha de 22 bytes: o byte de versão 0x00 seguido de um push do HASH160 de 20 bytes da sua chave pública comprimida.

Por isso o gasto usa os dois mundos. O scriptSig contém exatamente um item, esse programa de 22 bytes, que satisfaz a verificação P2SH. A assinatura e a chave pública vão para a testemunha, onde ganham o desconto. Somando o opcode de push, o scriptSig contribui com 23 bytes que não são de testemunha, pesando 92 unidades, e 92 dividido por quatro é toda a penalidade de 23 vbytes em relação ao SegWit nativo.

As carteiras mantêm esses endereços em sua própria ramificação. O BIP-49 atribui o caminho de derivação m/49'/0'/0', e o SLIP-132 deu a essa ramificação o prefixo de chave estendida ypub, que é o motivo pelo qual restaurar um backup produz endereços que começam com 3 em vez de bc1q. Errar o prefixo durante uma restauração mostra uma carteira vazia mesmo com a frase de recuperação correta.

Onde você vê isso

Qualquer tela de depósito ou saque que ofereça "SegWit" e "Native SegWit" como opções separadas está oferecendo aninhado e nativo, nessa ordem. As telas de configuração de conta da Ledger e da Trezor fazem o mesmo. As corretoras que adotaram o SegWit cedo padronizaram a forma aninhada e muitas nunca mudaram, então uma grande quantidade de armazenamento a frio com custódia ainda fica atrás de endereços que começam com 3.

Mudar para o SegWit nativo é uma transação on-chain, não uma mudança de configuração, porque os dois formatos vêm de ramificações diferentes da mesma frase de recuperação. Faça isso quando as taxas estiverem baixas, envie primeiro um teste pequeno e verifique depois que sua carteira está exibindo a conta m/84'/0'/0'. Não há diferença de segurança entre os dois, então nada é urgente. A troca é puramente de taxas contra compatibilidade, e a compatibilidade deixou de ser escassa.

SegWit aninhado vs endereço P2SH

O SegWit aninhado é um tipo de endereço P2SH, e on-chain é impossível distinguir os dois até um gasto. Uma string que começa com 3 pode corresponder a um programa de testemunha de 22 bytes, a um script de resgate multiassinatura 2 de 3 ou a uma cláusula de recuperação com bloqueio temporal, e a saída não gasta não revela nada. Essa opacidade já foi contada como um benefício de privacidade. Na prática, agora significa que um explorador de blocos não pode dizer o que você tem, e quem envia não pode avisar que esvaziar o endereço custará mais do que custaria esvaziar um bc1q.

Não confundir com

Perguntas frequentes

Todo endereço que começa com 3 é um endereço SegWit aninhado?

Não. O SegWit aninhado é um tipo de endereço P2SH, e um endereço que começa com 3 pode igualmente esconder um quórum multiassinatura ou um contrato com bloqueio temporal. Nada no próprio endereço os distingue até que os bitcoins sejam gastos.

Vale a pena mudar do SegWit aninhado para o SegWit nativo?

Só quando as taxas estiverem baixas. A diferença é de cerca de 23 vbytes por entrada, então uma carteira com poucas entradas economiza pouco, enquanto uma que guarda dezenas de entradas pequenas economiza de forma significativa em cada gasto futuro.

Leia a seguir

Termos relacionados

Mais em Endereços e chaves

Ler esta página em inglês