Pular para o conteúdo
buybitcoinsmart

Glossário / Nós e software

Signet

O que é a signet?
A signet é uma rede de testes cujos blocos só são válidos se um assinante designado os tiver assinado, o que mantém seu cronograma de blocos de dez minutos estável em vez de errático.

Especificação no BIP-325.

A signet troca a mineração sem permissão por previsibilidade. O Bitcoin Core a adicionou na versão 0.21.0, lançada em janeiro de 2021, e a signet pública padrão produz blocos em um ritmo de aproximadamente dez minutos desde então. Para testar uma carteira, um canal Lightning ou o checkout de um comerciante em condições que se parecem com a mainnet, esta é a rede a procurar.

Como funciona

A signet adiciona exatamente um requisito às verificações normais de validade do bitcoin: um bloco deve carregar uma assinatura válida.

O BIP325, escrito por Karl-Johan Alm e Anthony Towns, define um desafio de signet, que é simplesmente um script de bitcoin que a solução do bloco precisa satisfazer. A solução é anexada ao compromisso segwit do bloco, dentro da transação coinbase, então nada no formato do bloco muda e o software existente consegue analisar um bloco de signet sem modificação. A prova de trabalho ainda é realizada, mas com dificuldade baixa, porque é a assinatura, e não o hashrate, que decide quando um bloco conta.

Como o desafio é um script comum, ele pode ser qualquer coisa, de uma única chave pública a uma multiassinatura de limiar. A signet pública padrão, aquela à qual você se junta passando a opção signet sem mais nenhuma configuração, é operada por esses dois autores sob uma multiassinatura 1 de 2, e escuta na porta 38333. Os endereços reutilizam os prefixos da testnet, então uma carteira que já entende strings tb1 geralmente lida com a signet sem nenhuma mudança.

Qualquer um pode iniciar uma privada. Passar um script de desafio personalizado cria uma rede separada cujo magic de mensagem é derivado desse script, o que significa que duas signets personalizadas não podem conversar entre si por acidente. Essa é a característica que separa a signet de todas as outras opções: você tem uma rede genuína com vários participantes, com várias máquinas e atrasos de propagação reais, sem pedir permissão a ninguém e sem comprar hardware de mineração.

Onde você a vê

A signet é onde novos recursos de consenso são exercitados em público antes que a mainnet os veja.

O Taproot já estava ativo na signet padrão bem antes de ser ativado na mainnet no bloco 709.632, em novembro de 2021, o que explica em grande parte por que as carteiras puderam oferecer suporte ao taproot já na ativação, e não meses depois. O mesmo padrão se repete a cada proposta que chega à implementação: o código roda primeiro em algum lugar onde as pessoas podem quebrá-lo a baixo custo.

Signets personalizadas encontraram usos próprios. A Mutinynet é uma signet pública que produz um bloco a cada 30 segundos, criada para que os desenvolvedores de Lightning não passem o dia de trabalho esperando confirmações. Outras existem para ensaiar cenários específicos, já que quem tem a chave de assinatura também pode produzir uma reorganização deliberada sob demanda e observar o que as carteiras fazem a respeito.

Para quem compra bitcoin, a signet é invisível e ainda assim relevante. Os faucets distribuem as criptomoedas da rede de graça, então nada nesta rede tem valor, mas o lançamento do Sparrow, do Core ou de um nó Lightning que você instala quase certamente passou por ela primeiro.

Signet vs regtest

A signet é uma rede compartilhada com desconhecidos; a regtest é uma cadeia que existe apenas dentro do seu próprio computador. Na regtest você mesmo minera blocos com um único comando e pode conjurar cem confirmações em um segundo. Na signet você espera pelos assinantes como todo mundo, suas transações se propagam por pares que você não controla, e a estimativa de taxas se comporta como na mainnet. A regtest responde se seu código roda; a signet responde se ele sobrevive ao contato com uma rede.

Não confundir com

Perguntas frequentes

Quem controla a signet, e isso a torna centralizada?

A signet padrão é assinada por duas pessoas, Karl-Johan Alm e Anthony Towns, sob uma multiassinatura 1 de 2. Isso é centralizado de propósito, porque uma rede de testes precisa de blocos confiáveis mais do que de mineração aberta. Quem não gosta do arranjo pode lançar sua própria signet com um script de desafio personalizado.

Devo testar com a signet ou com a testnet?

Com a signet, em quase todos os casos. Seus blocos chegam em um cronograma estável de dez minutos, enquanto a testnet sofre rajadas de milhares de blocos fáceis e reorganizações profundas. Use a testnet apenas quando o comportamento que você quer testar for o próprio caos da mineração.

Termos relacionados

Mais em Nós e software

Ler esta página em inglês