Bezpieczne obliczenia wielostronne (SMPC)

Bezpieczne obliczenia wielostronne to technika kryptograficzna, która umożliwia wielu stronom wspólne obliczanie funkcji na podstawie ich danych wejściowych przy zachowaniu prywatności tych danych.

Bezpieczne obliczenia wielostronne (SMPC lub MPC) to dziedzina kryptografii, która pozwala wielu stronom na wspólną pracę nad obliczeniem wyniku z ich połączonych danych bez ujawniania sobie nawzajem indywidualnych danych wejściowych. Umożliwia to obliczenia chroniące prywatność w scenariuszach, w których strony nie ufają sobie w pełni.

Kluczowe protokoły obejmują zniekształcone obwody Yao (dla obliczeń dwustronnych), schematy podziału sekretu (Shamira, addytywne) oraz nowsze rozwiązania, takie jak SPDZ i Overdrive, które oferują bezpieczeństwo przed złośliwymi podmiotami. Obliczenia są rozproszone tak, że żadna pojedyncza strona nigdy nie widzi kompletnych danych.

W aplikacjach blockchain SMPC jest wykorzystywane do podpisów progowych (żadna strona nie posiada pełnego klucza prywatnego), prywatnych inteligentnych kontraktów, zdecentralizowanych rozwiązań powierniczych i wyroczni chroniących prywatność. Jest to szczególnie cenne dla powiernictwa instytucjonalnego, gdzie wiele stron musi autoryzować transakcje.

Wyzwania obejmują narzut komunikacyjny (strony muszą wymieniać wiadomości), koszt obliczeniowy (operacje są wolniejsze niż na jawnym tekście) i złożoność implementacji. Jednak ostatnie postępy sprawiły, że SMPC staje się coraz bardziej praktyczne w zastosowaniach rzeczywistych.

        graph LR
  Center["Bezpieczne obliczenia wielostronne (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;

      

🧒 Wyjaśnij jak 5-latkowi

Średnia pensji bez mówienia ile się zarabia.

🤓 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.

🔗 Powiązane terminy

📚 Źródła