O que é Multi Party Computation (MPC)?
Multi Party Computation (MPC) permite que várias partes calculem algo em conjunto sem expor os seus dados privados umas às outras. Em cripto, frequentemente significa dividir uma chave privada em partes, de modo que nenhuma pessoa ou dispositivo detenha a chave completa, e ainda assim o grupo consiga assinar uma transação. Imagine um cofre que só abre quando um número suficiente de pessoas gira as suas chaves ao mesmo tempo.
“MPC trata apenas de segredo.” Não exatamente. Ajuda com privacidade, mas a principal vantagem é maior segurança e controlo partilhado sem partilhar a chave real.
Como funciona o Multi Party Computation (MPC)
Aqui vai um guia rápido sobre o uso de uma carteira MPC que assina uma transferência de tokens:
- Passo 1: Aprova uma transação no seu telemóvel. Esse pedido contacta os dispositivos ou serviços que detêm as partes secretas.
- Passo 2: Cada participante executa uma operação matemática local para criar uma assinatura parcial a partir da sua parte. Ninguém revela a sua parte.
- Passo 3: As assinaturas parciais são combinadas numa assinatura válida, enquanto a chave privada completa nunca existe em lado nenhum.
- Passo 4: Se for atingido o limiar, a blockchain aceita a assinatura como qualquer assinatura normal ECDSA ou EdDSA.
- Passo 5: As partes podem ser rotacionadas ou atualizadas para que a perda de um dispositivo não enfraqueça a segurança. Simples e organizado.
Esse é o fluxo que verá em muitas carteiras e custodiantes modernos.
Por que o Multi Party Computation (MPC) importa
O benefício fica claro quando considerar isto:
- Vantagem: Sem ponto único de falha. Perder um dispositivo não é desastroso, pois nenhum dispositivo detém a chave completa.
- Perspetiva: A assinatura ocorre fora da cadeia, o que ajuda a escalabilidade, mantendo aprovações flexíveis para equipas e tesourarias.
- Relevância: Verá em carteiras de autocustódia, exchanges com fluxos de aprovação em equipa, DAOs e custódia institucional onde a política não é negociável.
Escolha um limiar que corresponda à sua equipa. Três em cinco permite um dia de viagem ou um telemóvel avariado sem bloquear pagamentos.
Principais características do Multi Party Computation (MPC)
O que o distingue:
- Limiar: Qualquer t entre n participantes pode assinar, por isso o trabalho pode continuar se uma parte ficar offline.
- Sem chave: A chave privada nunca é montada, o que reduz a probabilidade de uma fuga única durante a assinatura ou backup.
- Política: Pode adicionar regras como bloqueios temporais, georrestrição ou limites por ativo antes de produzir a assinatura.
- Atualização: As partes podem ser rotacionadas sem alterar o endereço público, o que limita a exposição a longo prazo.
- Auditoria: Útil para análise de risco, pois cada etapa de assinatura pode ser registada para revisão.
Variações
MPC é um conjunto de técnicas. Pode encontrar estes tipos:
- Limiar: Assinaturas com limiar para ECDSA ou EdDSA onde as partes criam em conjunto uma assinatura padrão.
- Partilha: Esquemas de partilha de segredo como o de Shamir para dividir e atualizar partes da chave.
- Circuitos: Circuitos cifrados onde as partes avaliam um programa em conjunto sem revelar os inputs.
- Homomórfico: Métodos que calculam sobre dados encriptados e só revelam o resultado final.
MPC protege o processo de assinatura, não a sua atividade pública on chain. Para ocultar montantes ou com quem comunicou, consulte Provas de conhecimento zero.
Exemplo
Uma tesouraria de DAO exige três signatários entre cinco; o dispositivo de cada signatário cria uma assinatura parcial, o sistema combina-as numa assinatura válida e a cadeia vê uma transação normal.
Curiosidade
A ideia remonta ao 'problema dos milionários' de Yao, nos anos 1980, um exercício mental sobre duas pessoas descobrirem quem é mais rico sem revelar a riqueza exata. A cripto transformou esse exercício mental em prática quotidiana.
Resumo
Multi Party Computation (MPC) permite que grupos atuem como um único signatário seguro sem que alguém ceda o seu segredo. É trabalho de equipa, mas com a matemática como árbitro.
