Computação Multipartidária Segura (SMPC)
A computação multipartidária segura é uma técnica criptográfica que permite que várias partes calculem conjuntamente uma função sobre suas entradas, mantendo essas entradas privadas.
A Computação Multipartidária Segura (SMPC ou MPC) é um subcampo da criptografia que permite que várias partes calculem colaborativamente um resultado a partir de seus dados combinados sem revelar suas entradas individuais umas às outras. Isso possibilita a computação preservando a privacidade em cenários onde as partes não confiam totalmente umas nas outras.
Protocolos-chave incluem Circuitos Embaralhados de Yao (para computação de duas partes), esquemas de compartilhamento de segredos (Shamir, aditivo) e desenvolvimentos mais recentes como SPDZ e Overdrive que oferecem segurança contra malfeitores. A computação é distribuída de forma que nenhuma parte única veja os dados completos.
Em aplicações blockchain, a SMPC é usada para assinaturas de limite (nenhuma parte única detém a chave privada completa), contratos inteligentes privados, soluções de custódia descentralizada e oráculos que preservam a privacidade. É particularmente valioso para custódia institucional, onde várias partes devem autorizar transações.
Os desafios incluem sobrecarga de comunicação (as partes devem trocar mensagens), custo computacional (operações são mais lentas que em texto simples) e complexidade de implementação. No entanto, avanços recentes tornaram a SMPC cada vez mais prática para aplicações do mundo real.
graph LR
Center["Computação Multipartidária Segura (SMPC)"]:::main
Pre_asymmetric_encryption["asymmetric-encryption"]:::pre --> Center
click Pre_asymmetric_encryption "/terms/asymmetric-encryption"
Pre_digital_signature["digital-signature"]:::pre --> Center
click Pre_digital_signature "/terms/digital-signature"
Rel_homomorphic_encryption["homomorphic-encryption"]:::related -.-> Center
click Rel_homomorphic_encryption "/terms/homomorphic-encryption"
Rel_zero_knowledge_proof["zero-knowledge-proof"]:::related -.-> Center
click Rel_zero_knowledge_proof "/terms/zero-knowledge-proof"
Rel_confidential_computing["confidential-computing"]:::related -.-> Center
click Rel_confidential_computing "/terms/confidential-computing"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧒 Explique como se eu tivesse 5 anos
Calcular média sem revelar valores.
🤓 Expert Deep Dive
## MPC vs. FHE vs. ZKP
- MPC: Multiple parties talk to each other to find a result (Interactive). Best for shared custody and joint analysis.
- FHE: One party does math on encrypted data (Non-interactive). Best for outsourcing data to a cloud and getting a result back.
- ZKP: One party proves they know something to another (Non-interactive/Interactive). Best for verifying identity or transaction validity without showing the data.