Multisig protege bitcoins exigindo assinaturas de várias chaves definidas para gastá-los. Na regra de 2 de 3, quaisquer duas das três chaves distintas são suficientes. Perder uma não significa necessariamente perder o dinheiro, e um ladrão com apenas uma chave não consegue gastá-lo. Isso depende de backups adequados e de uma separação real entre as chaves.
Alice não quer que todas as suas economias dependam de um aparelho. Ela cria uma carteira de 2 de 3 com chaves independentes A, B e C. Um pagamento pode ser aprovado por A + B, A + C ou B + C. Cada assinatura é uma autorização verificável matematicamente, produzida pela chave privada correspondente; a chave em si não é enviada à rede. Se Alice perder A, ainda poderá usar B e C, desde que tenha também os dados necessários da carteira. Quem roubar apenas A não conseguirá enviar o dinheiro sozinho. Os bitcoins não são divididos em três montes: a regra comum protege o conjunto dos fundos envolvidos. As chaves podem ficar com três pessoas ou com uma pessoa em aparelhos separados. Três cópias da mesma Seed Phrase, isto é, do mesmo conjunto de palavras de recuperação, não criam três chaves independentes. [1] [2]
Alice informa o endereço do destinatário e o valor em um aplicativo. Como coordenador, ele prepara uma proposta de transação e a entrega aos dispositivos de assinatura. É comum usar PSBT, um formato que transporta os dados do pagamento e as assinaturas adicionadas ao longo do processo. Assim, os aparelhos não precisam estar conectados ao mesmo tempo nem no mesmo local, e as chaves privadas permanecem separadas. Antes de assinar, Alice verifica destinatário, valor e taxa na tela confiável de cada aparelho utilizado. Com base nas regras verificadas da carteira, o dispositivo também deve reconhecer a saída que devolve o troco a ela. Duas assinaturas em um pagamento adulterado não a protegeriam. O coordenador não consegue inventar uma assinatura ausente, mas pode apresentar uma proposta errada. Só após obter as assinaturas necessárias e finalizar a transação o aplicativo a transmite à rede. [5]
Cada chave independente precisa de seu próprio backup seguro. Mas recuperar toda a carteira não depende automaticamente de apenas dois conjuntos de palavras. Também é necessária a configuração comum: quantidade de assinaturas exigidas, dados públicos das três chaves, ordem e modo de gerar endereços. Isso pode ser guardado como Output Descriptor, uma descrição técnica precisa da carteira, ou como uma exportação equivalente da configuração. Um descritor público sem chaves privadas não assina pagamentos sozinho, mas pode revelar endereços e movimentações; por isso também merece privacidade. Alice testa primeiro recebimento, envio e recuperação com um valor pequeno. Se depois perder A ou suspeitar de um vazamento, remover o aparelho do aplicativo não altera a regra antiga. Ela precisa usar as chaves restantes para transferir os fundos a novos endereços verificados, baseados em um novo conjunto de chaves. [4] [6]
A regra de 2 de 3 tolera perder uma chave; a de 2 de 2 não tolera perder nenhuma. Na primeira, qualquer dupla também pode gastar, inclusive duas pessoas que combinem agir sem a terceira. A configuração adequada depende, portanto, de quem ela protege e de quais falhas deve suportar. Se Alice guardar todos os aparelhos e backups na mesma gaveta, um roubo ou incêndio pode anular a vantagem da separação. Também há mais trabalho para conferir pagamentos, compatibilidade das carteiras e recuperação. As condições para gastar são descritas em um script, um pequeno programa. Uma transação multisig convencional baseada em script costuma ocupar mais espaço que uma transação comparável com uma assinatura e, à mesma taxa por unidade de tamanho, custa mais. Para quem está começando, uma carteira simples bem compreendida pode ser mais segura que uma configuração complexa que não domina. [1] [2]
A expressão geral m de n significa que são necessárias m assinaturas válidas de n chaves definidas. No Multisig convencional baseado em script, as chaves públicas e esse limiar fazem parte da condição de gasto. A saída da transação especifica essa condição diretamente ou fica vinculada criptograficamente ao script correspondente. Ao gastar, os nós, computadores que conferem as regras do Bitcoin, verificam as assinaturas necessárias e os dados do script; não basta uma autorização do aplicativo. Nos descritores, multi preserva a ordem informada das chaves públicas, enquanto sortedmulti as ordena segundo uma regra precisa. Um caminho de derivação indica à carteira quais chaves específicas calcular a partir de seus dados de origem. Uma ordem incorreta ou outros caminhos de derivação podem produzir endereços diferentes. O descritor permite que a carteira reconstrua essas condições; ele próprio não fica registrado na blockchain como arquivo de configuração. Esta explicação trata do Multisig convencional baseado em script. Outras construções podem reunir vários participantes em uma única assinatura conjunta e têm regras próprias. [3] [4] [7]
Uma regra de 2 de 3
Multisig com três chaves distintas exige assinaturas válidas de quaisquer duas. Uma única chave roubada não basta; após perder uma, as outras duas permitem gastar se os dados de script necessários também estiverem disponíveis. Separe chaves e cópias e guarde o Output Descriptor completo ou a política equivalente da carteira.
Para ter uma visão mais completa, leia este verbete junto com Private Key, Carteira, PSBT. Também há referências a este verbete em HD Wallet, Cold Storage, Watch-only Wallet, Change Address.
01Multisig é automaticamente mais seguro do que uma Hardware Wallet?+
Não. Chaves e cópias devidamente separadas podem reduzir um ponto único de falha, mas mais participantes aumentam a complexidade operacional. São necessárias uma política verificada e uma recuperação testada; um coordenador comum comprometido pode apresentar a todos o mesmo pagamento errado.
02Todas as chaves Multisig têm de estar no mesmo local para assinar?+
Não. PSBT permite trocar dados e assinaturas separadamente sem reunir chaves privadas. Cada signatário deve verificar destinatários, valores e taxa. Antes da transmissão, é preciso finalizar a transação com as assinaturas válidas necessárias e cumprir todas as outras condições das entradas.