Güvenli Çok Partili Hesaplama (SMPC)

Güvenli Çok Taraflı Hesaplama, birden fazla tarafın girdilerini gizli tutarak girdileri üzerinde ortaklaşa bir işlev hesaplamasını sağlayan bir kriptografik tekniktir.

Güvenli Çok Taraflı Hesaplama (SMPC veya MPC), birden fazla tarafın bireysel girdilerini birbirlerine açıklamadan birleştirilmiş verilerinden işbirliği içinde bir sonuç hesaplamalarına olanak tanıyan bir kriptografi alt dalıdır. Bu, tarafların birbirine tam olarak güvenmediği senaryolarda gizliliği koruyan hesaplamaya olanak tanır.

Temel protokoller arasında Yao'nun Karışık Devreleri (iki taraflı hesaplama için), gizli paylaşım şemaları (Shamir'in, eklemeli) ve kötü niyetli güvenliği sunan SPDZ ve Overdrive gibi daha yeni gelişmeler yer alır. Hesaplama, hiçbir tek tarafın verilerin tamamını göremeyeceği şekilde dağıtılır.

Blockchain uygulamalarında SMPC, eşik imzaları (hiçbir taraf tam özel anahtarı tutmaz), özel akıllı sözleşmeler, merkeziyetsiz saklama çözümleri ve gizliliği koruyan kahinler için kullanılır. Birden fazla tarafın işlemleri yetkilendirmesi gereken kurumsal saklama için özellikle değerlidir.

Zorluklar arasında iletişim yükü (taraflar mesaj alışverişinde bulunmalıdır), hesaplama maliyeti (işlemler düz metinden daha yavaştır) ve uygulama karmaşıklığı yer alır. Ancak, son gelişmeler SMPC'yi gerçek dünya uygulamaları için giderek daha pratik hale getirmiştir.

        graph LR
  Center["Güvenli Çok Partili Hesaplama (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;

      

🧒 5 yaşındaki gibi açıkla

10 arkadaşın, kimsenin tam olarak ne kadar kazandığını açıklamadan ortalama maaşlarını bilmek istediğini hayal edin. Herkesin gizli bir kağıt bıraktığı özel bir sihirli kutu kullanırlar. Kutu onlara ortalamayı söyler, ancak kimse—kutunun kendisi bile—kimin ne yazdığını bilmez.

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

🔗 İlgili terimler

📚 Kaynaklar