Pular para o conteúdo
buybitcoinsmart

Glossário / Carteiras e custódia

Multiassinatura

Outros nomes: Multassinatura, Multiassinatura simples.

O que é a multiassinatura?
A multiassinatura tranca o bitcoin atrás de várias chaves ao mesmo tempo e exige um número determinado de assinaturas para gastar, de modo que perder ou vazar qualquer uma das chaves não faz perder os bitcoins.

Especificação no BIP-11.

Um endereço multiassinatura está vinculado a um script que designa várias chaves públicas e um limiar, na maioria das vezes dois de três. O Bitcoin o trata como um tipo de transação padrão desde que o BIP-11 foi escrito em outubro de 2011, anos antes de existirem carteiras de hardware. Para economias que você pretende manter por uma década, ele elimina o ponto único de falha que uma única frase de recuperação cria.

Como funciona

A regra multiassinatura fica no script da saída, então a rede a impõe, e não qualquer aplicativo. Um script de resgate clássico de dois de três diz: empilhar o número 2, empilhar três chaves públicas, empilhar o número 3 e depois OP_CHECKMULTISIG. Os nós contam as assinaturas válidas em relação às chaves listadas e rejeitam o gasto a menos que pelo menos duas sejam válidas. Nenhuma empresa, nenhum servidor e nenhum fornecedor de carteiras participa dessa decisão.

Três codificações da mesma ideia já foram padrão em momentos diferentes, e os limites de tamanho são distintos.

A multiassinatura bare coloca as chaves diretamente na saída. A política de retransmissão o limita a três chaves há anos, e ele desperdiça espaço, então sobrevive principalmente em bitcoins muito antigos.

O P2SH esconde o script atrás de um hash e o revela ao gastar. O limite de 520 bytes em um script de resgate limita essa via a 15 chaves públicas comprimidas.

O P2WSH, a versão SegWit, move o script para o witness e eleva o teto para um script de witness de 3.600 bytes, momento em que o próprio limite de 20 chaves do opcode restringe primeiro. Os endereços multiassinatura SegWit nativos começam com bc1q e são o que a maioria dos softwares coordenadores atuais produz.

Uma peculiaridade histórica ainda é visível em cada gasto. O OP_CHECKMULTISIG desempilha um item a mais do que precisa, um erro da implementação original que não pôde ser removido sem um hard fork. O BIP-147 tornou regra de consenso que esse item restante fosse vazio, entrando em vigor junto com o SegWit no bloco 481.824, em 24 de agosto de 2017.

O Taproot mudou o cenário novamente. O BIP-342 desativou o OP_CHECKMULTISIG dentro do tapscript e introduziu o OP_CHECKSIGADD, que conta as assinaturas uma chave por vez e elimina o limite de 20 chaves. Separadamente, o MuSig2 permite que um grupo de assinantes combine suas chaves em uma só, de modo que um gasto n de n aparece na cadeia como um pagamento Taproot comum de uma única assinatura, indistinguível e mais barato.

Por que isso importa quando você compra bitcoin

A multiassinatura não é uma alternativa a uma corretora. Você ainda compra em uma das plataformas analisadas aqui, e a multiassinatura é o destino para o qual você saca, então os guias de compra e esta decisão são independentes.

O que muda é a forma do seu risco. Uma carteira de assinatura única falha por completo com um único evento: uma frase perdida, um incêndio na casa que atinge as duas cópias, uma divulgação forçada, um backdoor de firmware no produto de um fornecedor. Um dois de três construído com três fabricantes diferentes sobrevive a tudo isso, porque nenhuma frase de recuperação, nenhum prédio e nenhuma empresa sozinhos bastam. Por isso nossas análises de hardware indicam quais dispositivos não têm elemento seguro: em um quórum misto, um dispositivo mais fraco deixa de ser fatal.

Os custos são reais e devem ser contados com honestidade. Gastar ocupa mais espaço, já que uma entrada SegWit nativa de dois de três pesa cerca de 105 vbytes contra cerca de 68 de uma entrada de assinatura única, então o mesmo pagamento custa cerca de metade a mais em taxas. A configuração leva uma noite em vez de três minutos. E há um novo objeto para fazer backup, o descritor da carteira que lista cada chave pública estendida, os caminhos de derivação e o limiar, que não pode ser reproduzido a partir das frases de recuperação que você tem se não conseguir contatar os coassinantes.

O limite honesto para adotá-lo é comportamental, não financeiro. Se você já testou restaurar uma carteira de assinatura única a partir das suas palavras escritas, e o valor em jogo agora preocupa você, a multiassinatura é o próximo passo. Se você ainda não fez esse teste, adicionar mais dois dispositivos multiplica as formas como um backup não testado pode decepcionar você.

Um dois de três que sobrevive à perda de uma chave

Esta é uma configuração multiassinatura de dois de três que as pessoas realmente mantêm, descrita com detalhes concretos suficientes para copiar.

Compre três dispositivos de assinatura de três fabricantes, idealmente comprados de três revendedores diferentes, e configure cada um separadamente com suas próprias palavras de recuperação. Combine suas chaves públicas estendidas em um software coordenador como Sparrow ou Nunchuk, escolhendo uma política de dois de três, e exporte o descritor resultante.

Guarde os três backups das frases de recuperação em três lugares que falham de forma independente: um cofre em casa, um cofre de banco ou o local de trabalho, e um parente de confiança em outra cidade. Guarde uma cópia do descritor junto com cada um deles, já que ele não é secreto e tê-lo sozinho não permite que ninguém gaste nada, enquanto sua ausência pode deixar presos bitcoins que as três frases de recuperação poderiam recuperar de outra forma.

Deposite um valor pequeno e depois ensaie a falha. Finja que um dispositivo desapareceu, gaste a partir dos outros dois e confirme que a transação é liquidada. Faça o mesmo ensaio depois de qualquer mudança no quórum, e de novo uma vez por ano.

Quando um dispositivo falha de verdade, você não perdeu nada, mas agora está operando com um dois de dois. Substitua o assinante que falta, construa um quórum novo com a chave nova e mova os bitcoins para o novo endereço em vez de viver com a margem reduzida.

Multiassinatura vs cofre multiassinatura

A multiassinatura é o esquema subjacente; um cofre multiassinatura é um produto construído sobre ele. Os serviços vendem quóruns gerenciados em que o provedor tem uma chave, você tem uma ou duas, e um processo de recuperação cobre o resto. O script na cadeia parece igual nos dois casos, mas o modelo de confiança não: um cofre introduz uma empresa que pode fechar, mudar seus preços ou ser obrigada por um tribunal, e essa é precisamente a dependência que a multiassinatura autogerenciada elimina. Ambas são escolhas legítimas, e confundi-las significa julgar mal quem precisa continuar existindo para que seus bitcoins se movam.

Multiassinatura vs multiassinatura P2SH

A multiassinatura é a política de gasto; a multiassinatura P2SH é uma forma de colocar essa política em um endereço. A distinção se tornou determinante quando o SegWit e o Taproot chegaram, já que um mesmo dois de três agora tem pelo menos três formas on-chain possíveis, com tamanhos diferentes, prefixos de endereço diferentes e propriedades de privacidade diferentes. Ao restaurar uma carteira, “era um dois de três” não é informação suficiente; você também precisa saber qual tipo de script produziu os endereços para os quais você enviou fundos.

Não confundir com

Perguntas frequentes

Preciso usar multiassinatura?

Somente se uma única frase de recuperação for a parte da sua configuração que o preocupa, e somente depois de ter restaurado com sucesso uma carteira de assinatura única a partir das suas palavras escritas. Abaixo desse ponto, dispositivos extras multiplicam as formas como um backup não testado pode falhar.

De que preciso fazer backup em uma carteira multiassinatura?

Cada frase de recuperação que você guarda mais o descritor da carteira, que lista todas as chaves públicas estendidas, os caminhos de derivação e o limiar. O descritor não é secreto e não pode gastar nada sozinho, então guarde uma cópia junto a cada backup de frase de recuperação.

Usar multiassinatura é mais caro?

Um pouco. Uma entrada SegWit nativa de dois de três pesa cerca de 105 vbytes, contra cerca de 68 de uma entrada de assinatura única, então um gasto custa aproximadamente a metade a mais em taxas. Receber não custa nada extra.

Posso misturar marcas de carteira de hardware em um mesmo multiassinatura?

Sim, e misturar é justamente o objetivo. Um quórum formado por três fornecedores sobrevive a uma falha ou a um problema na cadeia de suprimentos de qualquer um deles, o que uma carteira protegida pelo dispositivo de um único fabricante não consegue.

Leia a seguir

Termos relacionados

Mais em Carteiras e custódia

Ler esta página em inglês