安全なマルチパーティ計算(SMPC)って何?
複数の会社が何かを一緒に計算したい——信用リスクを共同評価したい、モデルを共同で訓練したい。でも、誰も自分の生データは渡したくない。安全なマルチパーティ計算(SMPC)は、「データを外に出さない」まま、複数者で正しい結果を一緒に計算する技術です。どうやって実現する?
データを「かけら」に分けるまず各参加者が秘密分散(Secret Sharing)で自分のデータをランダムな断片に切り分け、他者へ配ります。断片を1つ見ても元データはわかりません。十分な数の断片がそろって初めて復元できます。
かけらの上で計算する
参加者は暗号化された状態のまま断片で演算し、最後に結果を組み立てます。どの参加者も他人の生データを見ることなく、正しい最終結果を得られます。
準同型暗号・連合学習との関係は?
準同型暗号:単独での暗号計算「暗号化データをサーバーに外注して計算させる」色が強い一方、SMPCは「複数者どうしが見せ合わない」ことを重視します。
連合学習:モデルは共有、データは非共有
各参加者が各自で訓練し、勾配だけを交換します。SMPCはその交換する勾配の保護にも使え、両者はよく組み合わされます。
どこで使われる?
銀行の共同不正検知、病院をまたぐ医学統計、サプライチェーンの複数者入札やオークション。どれもSMPCに向いています。「協力したい、でも漏らしたくない」という場面で、プライバシーと効率を両立する方法です。まとめ:SMPCは、皆で「一緒に計算する」けれど、誰も「相手の手札」を見られない技術です。
コメント