Assinatura Schnorr

Definição

A Assinatura Schnorr é um esquema de assinatura digital inventado pelo matemático e criptógrafo alemão Claus-Peter Schnorr, conhecido por sua simplicidade matemática, segurança comprovada e propriedade de linearidade única que permite a agregação eficiente de múltiplas assinaturas. No contexto da blockchain, as assinaturas Schnorr foram introduzidas no Bitcoin por meio da atualização Taproot (BIP 340/341/342), ativada em novembro de 2021, substituindo o Algoritmo de Assinatura Digital de Curva Elíptica (ECDSA) que o Bitcoin utilizava desde sua criação. A principal inovação das assinaturas Schnorr para aplicações em blockchain é o suporte nativo à agregação de chaves — múltiplas chaves públicas e suas respectivas assinaturas podem ser combinadas em um único par chave-assinatura, indistinguível de uma transação comum com um único signatário. Isso tem implicações profundas para a privacidade, escalabilidade e funcionalidade de contratos inteligentes. Carteiras com múltiplas assinaturas que utilizam Schnorr são idênticas a carteiras com assinatura única na blockchain, aumentando a privacidade. O tamanho reduzido da assinatura combinada diminui os dados da transação, melhorando a escalabilidade. Além disso, as assinaturas Schnorr permitem recursos de script mais eficientes e flexíveis por meio do taproot , que usa uma construção chamada MAST (Merkelized Alternative Script Trees) combinada com Schnorr para manter condições de gastos complexas em sigilo, a menos que sejam exercidas. O fundamento matemático das assinaturas Schnorr reside no problema do logaritmo discreto, a mesma premissa subjacente ao ECDSA, garantindo uma rigidez criptográfica equivalente.

 Origem e história

Data Evento
1989 Claus-Peter Schnorr inventa o sistema de assinatura Schnorr; registra um pedido de patente nos EUA em 1990 (Patente US 4,995,082).
1991 Schnorr publica “Geração eficiente de assinaturas por cartões inteligentes” no Journal of Cryptology.
2008 Satoshi Nakamoto escolheu o ECDSA em vez do Schnorr para o Bitcoin devido às restrições de patentes ativas do Schnorr.
2008 A patente de Schnorr expirou, tornando o algoritmo disponível gratuitamente para implementação.
2020 Pieter Wuille, Jonas Nick e Tim Ruffing propõem a BIP 340 para assinaturas Schnorr no Bitcoin.
2020 As BIP 340 (Schnorr), BIP 341 (Taproot) e BIP 342 (Tapscript) são formalmente propostas.
2021 A atualização Taproot/Schnorr garante a fidelização do usuário com suporte a sinalização de mineradores superior a 90%.
Novembro de 2021 O Taproot é ativado no bloco 709,632 do Bitcoin, habilitando assinaturas Schnorr na rede Bitcoin.
2022-2023 Wallet e os desenvolvedores de protocolos começam a integrar recursos baseados em Schnorr, incluindo agregação de chaves.
2024 Os esquemas de assinatura múltipla baseados em Schnorr (MuSig2) estão sendo adotados pela Lightning Network e pela custódia institucional.

“As assinaturas Schnorr são o esquema de assinatura digital mais elegante — sua propriedade de linearidade as torna fundamentalmente superiores para protocolos criptográficos com múltiplas partes.” — Pieter Wuille, desenvolvedor do Bitcoin Core

 Como Funciona

“` +——————————————————————+

| ESQUEMA DE ASSINATURA SCHNORR | +———————————————+

GERAÇÃO DE CHAVES (mesma curva que ECDSA: secp256k1)
+————————————————————+
+————————————————————+
PROCESSO DE ASSINATURA:
+————————————————————+
+————————————————————+
PROCESSO DE VERIFICAÇÃO:
+————————————————————+
+————————————————————+
AGREGAÇÃO DE CHAVES (Mágica de Múltiplas Assinaturas):
+————————————————————+
+————————————————————+
COMPARAÇÃO COM A ECDSA:
+——————+——————+
+——————+——————+
+——————+——————+

+——————————————————————+ “`

Característica ECDSA (Pré-raiz) Schnorr (Pós-raiz pivotante)
Tamanho da assinatura ~72 bytes (codificados em DER) 64 bytes (fixo)
Agregação de chaves Não suportado nativamente Agregação linear nativa
Privacidade de múltiplas assinaturas Scripts com múltiplas assinaturas visíveis na blockchain A chave agregada parece ser de assinatura única.
Verificação de lote Não é eficiente Validação em lote significativamente mais rápida
Segurança comprovável Segurança baseada em modelo de grupo genérico Comprovadamente seguro em modelo de oráculo aleatório
Maleabilidade característica Maleável (pode ser modificado por terceiros) Não maleável por construção.
Complexidade Matemática Equação de assinatura mais complexa Matemática mais simples e elegante

 Em termos simples

  1. Uma assinatura Schnorr é como uma versão mais elegante de uma assinatura digital. — Isso comprova que você autorizou uma transação sem revelar seus dados. chave privada, mas o faz com cálculos mais simples e uma assinatura menor do que o método ECDSA anterior usado pelo Bitcoin.
  2. O truque de mágica é um acréscimo característico. — Se Alice e Bob precisarem assinar uma transação (assinatura múltipla), Schnorr permite que suas duas assinaturas sejam combinadas matematicamente em uma única assinatura que seja exatamente igual a qualquer outra assinatura. Com o ECDSA, ambas as assinaturas tinham que ser incluídas separadamente.
  3. Isso melhora a privacidade drasticamente. — na blockchain do Bitcoin, um Schnorr multi-assinatura A transação é idêntica a uma transação comum com assinatura única. Ninguém consegue distinguir se uma ou cinquenta pessoas assinaram a transação, aumentando a privacidade de todos os participantes.
  4. Isso economiza espaço e reduz as taxas. — Como várias assinaturas são combinadas em uma só, as transações multi-assinatura Schnorr ocupam menos espaço no bloco do que as transações multi-assinatura ECDSA. Menos espaço significa taxas de transação mais baixas para os usuários e mais transações por bloco para a rede.
  5. Taproot reúne tudo. — A atualização Taproot do Bitcoin combina assinaturas Schnorr com MAST (Merkelized Alternative Script Trees) para permitir condições de gastos complexas (como bloqueios temporais, assinaturas múltiplas ou garantia) que permanecem completamente privadas, a menos que um caminho não padrão seja seguido.

 Exemplos do mundo real

Cenário Implementação Resultado
Carteira Bitcoin multi-assinatura O provedor de custódia institucional usa MuSig2 (baseado em Schnorr) para assinatura múltipla 3 de 5. Pegada on-chain idêntica à de assinatura única; redução de 60% nas taxas de transação em comparação com o sistema multi-assinatura legado.
Canais da Lightning Network As transações de abertura/fechamento de canais Lightning usam agregação de chaves Schnorr. As transações de gerenciamento de canais tornam-se menores e indistinguíveis dos pagamentos regulares.
Privacidade do CoinJoin As implementações CoinJoin baseadas em Schnorr agregam assinaturas de múltiplos participantes. Privacidade aprimorada, pois as transações colaborativas se assemelham a transações de assinatura única, reduzindo a eficácia da análise da cadeia de transações.
Contratos inteligentes Bitcoin Os desenvolvedores usam o Taproot (Schnorr + MAST) para criar scripts de gastos condicionais. A lógica complexa do contrato permanece oculta na blockchain, a menos que um caminho não cooperativo seja utilizado, aumentando tanto a privacidade quanto a eficiência.

Vantagens

A Vantagem Descrição
Segurança comprovável As assinaturas Schnorr possuem uma prova formal de segurança no modelo de oráculo aleatório, diferentemente do ECDSA.
Agregação de chaves A agregação nativa de assinaturas lineares permite a assinatura eficiente por múltiplas partes com uma única assinatura on-chain.
Aprimoramento de privacidade Transações com múltiplas assinaturas, CoinJoin e scripts complexos tornam-se indistinguíveis de transações simples na blockchain.
Eficiência Espacial Assinaturas fixas de 64 bytes (em comparação com as assinaturas variáveis ​​de ~72 bytes do ECDSA) e agregação de assinaturas reduzem o uso de dados no blockchain.
Verificação de lote A verificação conjunta de múltiplas assinaturas Schnorr é mais rápida do que a verificação individual de cada uma, acelerando a validação de nós.

Desvantagens e Riscos

Gestão de Descrição
Ritmo de Adoção A integração das funcionalidades da Schnorr/Taproot com a carteira e os serviços tem sido mais lenta do que o esperado desde a ativação em 2021.
Vulnerabilidade de reutilização de nonce Se o mesmo nonce aleatório for usado duas vezes com a assinatura Schnorr, a chave privada será imediatamente exposta.
Complexidade do Protocolo Os protocolos Schnorr multipartidários (MuSig, MuSig2) exigem um tratamento cuidadoso do nonce e múltiplas rodadas de comunicação.
Compatibilidade com versões anteriores Os sistemas legados precisam ser atualizados para suportar a verificação Schnorr, criando um período de transição com tipos de assinatura mistos.
Análise de Cadeia Reduzida Embora representem um benefício de privacidade para os usuários, os recursos de privacidade do Schnorr preocupam os órgãos reguladores e as equipes de conformidade que dependem da análise de padrões de transações on-chain.

Dicas de gerenciamento de risco:

  • Utilize sempre carteiras de hardware ou softwares bem auditados que implementem corretamente a geração de nonce aleatório para assinatura Schnorr.
  • Ao participar em protocolos Schnorr multipartidários (MuSig2), assegure-se de que todas as partes sigam o protocolo correto de compromisso de nonce.
  • Atualize suas carteiras para versões compatíveis com Taproot para aproveitar as vantagens de privacidade e eficiência do Schnorr.
  • Acompanhe o ecossistema Bitcoin em busca das melhores práticas de Schnorr/Taproot à medida que a tecnologia amadurece.
  • Entenda que o Schnorr não altera o modelo de segurança fundamental do Bitcoin — ele o aprimora dentro das mesmas premissas criptográficas.

 Perguntas frequentes

P: Por que o Bitcoin não usou assinaturas Schnorr desde o início?

A: Quando Satoshi Nakamoto criou o Bitcoin em 2008, o algoritmo de assinatura Schnorr ainda estava sob patente (Patente Americana 4,995,082, registrada em 1989). Embora a patente tenha expirado em 2008, o ECDSA era o padrão estabelecido e de livre acesso, com amplo suporte de implementação. Satoshi escolheu o ECDSA para evitar possíveis complicações com a patente e porque ele já era amplamente implementado em bibliotecas criptográficas.

P: O que é MuSig2 e qual a sua relação com Schnorr?

A: MuSig2 é um protocolo de assinatura múltipla de duas rodadas baseado em assinaturas Schnorr, desenvolvido por Jonas Nick, Tim Ruffing e Yannick Seurin. Ele permite que múltiplas partes produzam colaborativamente uma única assinatura Schnorr que é indistinguível de uma assinatura comum de um único signatário. O MuSig2 aprimorou o protocolo MuSig original ao reduzir as rodadas de comunicação necessárias de três para duas, tornando-o mais prático para aplicações no mundo real.

P: O Schnorr torna o Bitcoin mais privado?

R: Sim, significativamente. Com a agregação de chaves Schnorr via Taproot, carteiras com múltiplas assinaturas, transações CoinJoin, operações em canais Lightning e contratos inteligentes complexos aparecem como simples transações de assinatura única no blockchain. Isso torna muito mais difícil para empresas de análise de blockchain distinguirem entre diferentes tipos de transação, melhorando a privacidade para todos os usuários de Bitcoin.

P: As assinaturas Schnorr são mais seguras do que as assinaturas ECDSA?

A: As assinaturas Schnorr são consideradas pelo menos tão seguras quanto as ECDSA, e possivelmente até mais. Schnorr possui uma prova formal de segurança no modelo de oráculo aleatório, demonstrando que quebrar assinaturas Schnorr é tão difícil quanto resolver o problema do logaritmo discreto. A ECDSA não possui uma prova de segurança tão clara. Além disso, as assinaturas Schnorr são imutáveis, eliminando uma classe de ataques que afetavam as transações de Bitcoin com ECDSA.

P: As assinaturas de Schnorr podem resistir a ataques de computação quântica?

R: Não. Assim como o ECDSA, as assinaturas de Schnorr dependem do problema do logaritmo discreto da curva elíptica, que é vulnerável ao algoritmo de Shor em um computador quântico suficientemente poderoso. Ambos os esquemas de assinatura precisariam ser substituídos por alternativas pós-quânticas caso computadores quânticos de grande escala se tornem viáveis. Esta é uma área ativa de pesquisa em toda a comunidade criptográfica.

Fontes

  • BIP 340: Assinaturas Schnorr para secp256k1 — github.com/bitcoin/bips/blob/master/bip-0340.mediawiki
  • Schnorr, CP “Geração eficiente de assinaturas por cartões inteligentes” — Journal of Cryptology, 1991
  • Bitcoin Optech — bitcoinops.org (Recursos Taproot/Schnorr)
  • Dominando o Bitcoin por Andreas M. Antonopoulos
  • Blockstream Research — Especificação do Protocolo MuSig2

Dica da UPay: Se você possui Bitcoin, atualize sua carteira para uma que suporte as assinaturas Taproot e Schnorr. Ao usar endereços Taproot (que começam com 'bc1p'), você se beneficia automaticamente de maior privacidade, taxas de transação mais baixas e o esquema de assinatura criptográfica mais avançado disponível na rede Bitcoin. Cada transação Taproot que você realiza também contribui para o ecossistema Bitcoin como um todo, aumentando o anonimato de todos os usuários Taproot.

Aviso: Este conteúdo tem fins meramente educativos e não constitui aconselhamento financeiro. Sempre realize sua própria pesquisa (DYOR) e consulte consultores financeiros qualificados antes de tomar decisões de investimento.

UPay — Tornando as criptomoedas uma enciclopédia

Notícias e Eventos