다자간 연산 (MPC) 지갑: 단일 장애 지점 제거

암호화폐의 근본적인 약속은 통제입니다: 키를 보유하면 자산을 통제할 수 있습니다. 그러나 이 통제는 거대하고 무서운 주의사항을 동반합니다: 단일 개인 키나 시드 구문을 잃어버리면 자금이 영구적으로 사라집니다. 이것이 바로 크립토 보유자들에게 수십억 달러의 손실을 초래한 "단일 장애 지점"입니다.

다자간 연산 (MPC)은 이 핵심 딜레마를 해결하려는 혁명적인 암호 기술입니다. 여러 독립적인 당사자들이 공동으로 함수를 계산할 수 있게 하는 고급 보안 형태로—암호화폐 거래에 서명하는 것처럼—어떤 단일 당사자도 자신의 개별 데이터를 공개하거나 전체 개인 키에 접근하지 않습니다.

크립토 지갑의 맥락에서 MPC는 단일하고 취약한 개인 키의 필요성을 제거합니다. 대신 키를 여러 암호화된 조각( "shares"라고 함)으로 분할하여 다른 위치, 장치 또는 개인에게 분산합니다. 이 접근 방식은 다중 서명 기술의 보안을 표준 단일 서명 지갑의 속도와 효율성과 결합하여, 기관과 일상 사용자 모두의 디지털 자산을 보호하는 데 오늘날 가장 강력한 도구 중 하나로 만듭니다.


지갑 키 이해와 더 나은 보안의 필요성

MPC의 복잡성에 깊이 들어가기 전에, 표준 크립토 지갑이 어떻게 작동하는지와 전통적인 자체 보관에 의존할 때 왜 큰 위험을 초래하는지 다시 살펴보는 것이 필수적입니다.

핵심 취약점: 개인 키

모든 Bitcoin 또는 Ethereum 지갑은 개인 키에 의해 제어됩니다. 이는 소유권의 암호 증명 역할을 하는 거대하고 무작위로 생성된 숫자입니다. 이 키는 공용 주소와 수학적으로 연결되어 있습니다.

표준 자체 보관 지갑에서 이 키(또는 이를 생성하는 시드 구문)는 단일하고 완전한 엔티티로 존재합니다.

  • 위험: 해커가 이 키를 얻으면 자산을 즉시 통제할 수 있습니다. 물리적 복사본을 잃어버리면 자산이 영원히 사라집니다. 이 "전부 아니면 전무" 시나리오가 바로 MPC가 완화하도록 설계된 단일 장애 지점입니다.

단순 보관 모델을 넘어

전통적인 크립토 보안은 종종 연속체를 따라 분류됩니다:

  1. 완전 보관: 제3자(예: 거래소)가 키를 보유합니다. 높은 편의성, 제로 통제.
  2. 자체 보관 (핫/콜드): 사용자가 키를 보유합니다. 높은 통제, 높은 책임(및 위험).

MPC는 세 번째 정교한 모델을 도입합니다: 분산 보관. 이는 단일 완전한 키 보유와 관련된 치명적인 위험을 분산시키면서 자체 보관의 주권성을 사용자에게 부여합니다.


What Exactly is Multi-Party Computation (MPC)?

Multi-Party Computation, at its core, is a cryptographic discipline that allows independent parties to collaboratively process data or execute a function based on their inputs, without revealing those inputs to anyone else, not even the other participants.

Think of it this way: MPC is about calculating the result of a mathematical problem without ever showing your work.

Analogy: The Secret Recipe

Imagine four chefs need to bake a very specific, secret cake for which only a master baker knows the complete recipe. The master baker doesn't trust any single chef with the full instructions.

  1. The master baker breaks the recipe into four encrypted parts (MPC shares).
  2. Each of the four chefs receives one part.
  3. To bake the cake (sign the transaction), they agree that they need at least three out of the four chefs (a 3-of-4 threshold) to combine their partial, encrypted instructions.
  4. They work together, each contributing their piece of the encrypted recipe. The final cake is baked (the signature is generated), but no individual chef ever saw the complete recipe or even the complete set of ingredients used by the others.

This analogy perfectly illustrates MPC: the private key (the full recipe) is never assembled or seen by any party, yet the output (the signature) is successfully generated through collaboration.

Threshold Cryptography Explained

MPC wallets rely heavily on Threshold Cryptography. This is the mathematical framework that dictates how many shares are required to perform an action.

When setting up an MPC wallet, you define an M-of-N threshold:

  • N (Total Shares): The total number of key shares created.
  • M (Required Shares): The minimum number of shares required to collaborate and create a valid signature.

If the threshold is 2-of-3 (M=2, N=3), the private key is split into three shares. To sign a transaction, any two of those three shares must be used simultaneously. If one share is lost or stolen, the assets are safe because the attacker still needs one more share to meet the threshold.

MPC’s Core Mechanism: Secret Sharing

The specific technique used to break the key into these shares is often based on Shamir's Secret Sharing (SSS). SSS is a mechanism that divides a secret (in this case, the private key) into N parts. The mathematical property of SSS ensures two key things:

  1. The secret can only be reconstructed if M or more parts are present.
  2. Any M-1 parts provide absolutely no information about the secret. This is critical for security, as a hacker who obtains one or two shares in a 3-of-5 setup gains zero usable data.

기술 엔진: 분산 키 생성 (DKG)

MPC의 진정한 혁신—그리고 오래된 보안 방법과의 핵심 차별점—은 키가 처음 생성되는 방식에 있습니다. 이 프로세스를 분산 키 생성 (DKG)이라고 합니다.

전체적으로 형성되지 않고 키 생성

전통적인 자체 보관에서 지갑은 전체 개인 키를 생성하고, 시드 구문(키의 인간이 읽을 수 있는 형태)을 표시한 후 안전하게 백업하도록 권장합니다. 키는 전체적으로 존재하며, 심지어 몇 밀리초 동안만 존재하더라도 가로채기나 안전한 생성 프로세스 실패에 취약합니다.

DKG는 이 취약점을 완전히 피합니다.

DKG 의식에서 당사자들(예: 휴대폰, 복구 서버, MPC 제공자 서버)은 암호학적으로 협력하여 키의 매개변수를 결정합니다. 각 당사자가 자신의 공유를 생성하고, 이러한 공유는 임계값(M-of-N)에서 결합될 때 블록체인에 대한 올바른 서명을 생성하도록 수학적으로 연결되어 있습니다.

중요한 점은 전체 완전한 개인 키가 생성 또는 사용 중 어느 시점에서도 단일 당사자에게 계산, 저장 또는 공개되지 않는다는 것입니다.

이는 해커가 전체 개인 키를 훔치기 위해 타겟팅할 수 있는 단일 위치, 장치 또는 서버가 문자 그대로 없다는 의미입니다. 그들은 서로 다른 지리적 또는 디지털 환경에 위치한 M개의 장치를 동시에 침투해야 합니다.

DKG가 공모를 방지하는 방법

키 생성 및 서명 프로세스의 분산 특성은 관련 당사자 간의 악의적 공모를 본질적으로 방지합니다.

5개 중 3개 MPC 설정을 사용하는 기업 재무부를 고려해보세요. 다섯 명의 이사가 각자 공유를 보유합니다.

  1. 생성 중: 어떤 단일 이사도 키를 혼자 생성했다고 주장할 수 없습니다. 키는 다섯 입력의 암호 결과이기 때문입니다.
  2. 서명 중: 한 이사의 장치가 손상되면 공격자는 하나의 공유만 가집니다. 자금을 지출할 수 없습니다. 게다가 이사들은 거래에 서명하기 위해 적극적으로, 아마도 물리적으로 협력해야 하므로 대규모 조정과 사기 없이는 무단 거래가 극도로 어렵습니다.

이 권력 분산은 기업 거버넌스를 강화하고 단일 서명자와 관련된 내부자 위험을 제거합니다.


MPC 대 다중 서명 (멀티시그): 중요한 비교

다중 서명 지갑은 단일 장애 지점 문제에 대한 원래 분산 솔루션이었습니다. 멀티시그는 거래를 승인하기 위해 여러 개별 개인 키가 필요합니다. 개념적으로 MPC와 유사하지만, 기술 구현과 결과 보안 트레이드오프가 크게 다릅니다.

기능 다중 서명 (멀티시그) 지갑 다자간 연산 (MPC) 지갑
키 상태 여러 개별 개인 키(PKA, PKB, PKC)가 완전히 독립적으로 존재합니다. 단일 논리적 개인 키가 암호학적으로 공유로 분할됩니다.
블록체인 발자국 거래는 특정하고 인식 가능한 멀티시그 스크립트가 필요합니다. 공개적으로 식별 가능합니다. 거래는 표준 단일 서명 거래처럼 보입니다. 온체인에서 보이지 않습니다.
효율성 & 수수료 더 높은 가스 수수료(온체인에 더 많은 계산 데이터 필요). 더 낮은 수수료(표준 단일 시그 거래와 동일).
보안 위험 M개의 다른 키를 안전하게 관리하고 백업해야 합니다. 하나의 키가 손상되면 여전히 전체로 존재하며 타겟이 됩니다. N개의 공유를 보호해야 하며, 어느 것도 단독으로 자금을 지출할 수 없습니다. 키는 전체로 존재하지 않습니다.
설정 복잡성 복잡할 수 있음; 개별 주소/키를 관리하기 위한 특정 지갑 소프트웨어 필요. 원활한 설정; 종종 사용자 친화적인 앱에 직접 통합되어 복잡성을 숨깁니다.
자산 호환성 제한적; 특정 네트워크의 멀티시그 계약 스크립트 지원 필요. 보편적; 서명이 표준처럼 보이기 때문에 거의 모든 암호화폐와 호환.

멀티시그의 메커니즘과 제한 ("블록체인 발자국")

멀티시그 지갑은 블록체인 자체에 특수 스마트 계약 또는 스크립트를 생성하여 작동합니다. 이 스크립트는 M-of-N 요구사항을 정의합니다.

  • 투명성: 블록 탐색기에서 멀티시그 거래를 검사하면 여러 키가 필요했음을 명시적으로 보여줍니다. 이 투명성은 보안 구조에 대한 프라이버시를 추구하는 사용자나 조직에게 단점이 될 수 있습니다.
  • 비용과 속도: 멀티시그 요구사항이 블록체인에 작성되고 실행되기 때문에 이러한 거래는 데이터 크기가 더 크고 따라서 단순 단일 서명 거래보다 가스 수수료가 더 비쌉니다. 또한 배포와 업데이트가 더 느립니다.

MPC: 보이지 않는 보안과 거래 효율성 (공모 우위)

MPC 지갑은 모든 서명 계산을 오프체인에서 처리합니다. 분산된 공유가 조정되어 단일 최종 서명을 생성합니다.

  1. 오프체인 조정: 당사자들이 M-of-N 임계값을 충족함을 비공개적으로 증명하기 위해 협력합니다.
  2. 단일 서명 출력: 하나의 표준 암호 서명을 생성합니다.
  3. 온체인 제출: 이 단일 서명이 블록체인에 제출됩니다.

최종 거래가 단일 키를 사용하는 한 사람이 서명한 것과 정확히 같기 때문에 MPC 거래는 효율적이고 빠르며 비용 효과적이며—가장 중요한 것은—복잡한 M-of-N 구조를 공개하지 않습니다. 이 은폐성은 악의적 행위자들에게 자산 감사와 타겟팅을 훨씬 더 어렵게 만듭니다.


MPC 지갑의 실용적 적용

MPC의 보안 및 효율성 이점은 기관 재무 관리부터 소비자 키 복구에 이르는 여러 중요한 크립토 사용 사례에서 선호되는 보관 표준으로 만들었습니다.

기업 및 기관 보안 강화

거래소, 보관소, 벤처 펀드, 대형 기업 재무부의 경우 대량의 크립토를 보호하려면 철저한 보안과 운영 유연성 모두가 필요합니다. MPC는 여기서 탁월합니다:

1. 내부자 위협 방지

기관의 중요한 위험은 직원(또는 소규모 직원 그룹)이 자금을 훔칠 가능성입니다. MPC 설정을 사용하면 공유를 다른 조직 단위에 보유할 수 있습니다:

  • 공유 1: CEO의 장치에 보유.
  • 공유 2: CFO의 장치에 보유.
  • 공유 3: 법무 부서의 보안 하드웨어 모듈에 보유.

자금을 이동하려면 세 개 모두 동의해야 합니다. 이 고도로 분산된 구조는 접근 수준에 관계없이 단일 불량 이사나 손상된 터미널이 재무부를 비우는 것을 수학적으로 불가능하게 만듭니다.

2. 지리적 분산 및 재해 복구

MPC는 지리적으로 분리된 키 관리를 가능하게 합니다. 한 위치의 데이터 센터나 물리적 사무실이 자연재해 또는 압수로 영향을 받으면, 다른 지역에 위치한 공유를 사용하여 M-of-N 임계값을 충족하여 자금에 여전히 접근할 수 있습니다. 이 견고한 중복성은 비즈니스 연속성에 필수적입니다.

소비자 키 복구 및 소셜 MPC

평균 소매 사용자에게 MPC는 두려운 시드 구문을 잠재적으로 제거함으로써 자체 보관의 패러다임 전환을 제공합니다. 이는 종종 "소셜 복구"로 마케팅됩니다.

시드 구문의 문제

시드 구문은 현재 자체 보관 지갑의 유일한 복구 메커니즘입니다. 이를 잊거나 잘못 기록하거나 잃어버리면 자금이 사라집니다. 이는 단일 완전한 장애 지점입니다.

MPC를 복구 솔루션으로

소비자 중심 MPC 지갑에서 개인 키는 세 개의 공유로 분할될 수 있습니다:

  • 공유 1: 사용자 장치: 사용자의 주요 휴대폰 또는 데스크톱에 저장.
  • 공유 2: 클라우드 백업: 암호화되어 개인 클라우드 서비스(예: Google Drive, iCloud)에 저장.
  • 공유 3: MPC 제공자: 서비스 제공자가 보유하며, 복구 목적으로 특별히 지정.

사용자가 휴대폰(공유 1)을 잃어버리면 클라우드 백업(공유 2)을 사용하고 제공자와 신원을 확인(공유 3)하여 2-of-3 임계값을 충족하고 접근을 복구할 수 있습니다.

이 모델은 사용자가 공유를 통제하여 자체 보관을 유지하면서(그들은 공유를 통제합니다) 클라우드 백업과 신원 확인 같은 친숙하고 안전한 복구 방법을 활용하여 난해하고 취약한 12단어 구문에 의존하지 않게 합니다.


보관 연속체: MPC의 트레이드오프

MPC는 멀티시그보다 기술적으로 우수하고 단일 키 보관보다 상당한 보안 이점을 제공하지만, 크립토 세계의 근본적인 트레이드오프인 편의성 대 통제를 지우지 않습니다.

편의성 대 통제: 누가 공유를 보유하나?

MPC 지갑의 보안 프로필은 선택한 분산 모델에 전적으로 의존합니다. 공유 저장이 더 중앙화될수록 편의성은 높아지지만 주권성은 낮아집니다.

1. 완전 자체 주권 MPC (최대 통제)

사용자가 자신의 장치와 하드웨어 지갑 전반에 모든 N개의 공유를 보유합니다(예: 각 공유 하나를 저장하는 세 개의 별도 하드웨어 지갑).

  • 이점: 최고 수준의 비보관. 사용자가 완전한 통제를 유지.
  • 단점: 더 높은 사용자 책임. 세 하드웨어 장치 중 두 개를 잃으면 자금이 사라집니다.

2. 위임 MPC (하이브리드 통제)

사용자가 하나 이상의 공유를 전문 MPC 보안 제공자에게 위임합니다. 이는 소셜 복구를 제공하는 소비자 지갑에서 일반적입니다.

  • 이점: 높은 편의성과 우수한 복구 옵션. 물리적 시드 구문 백업의 번거로움을 피함.
  • 단점: MPC 서비스 제공자에 대한 신뢰 정도를 도입. 제공자가 해킹되거나 오프라인 상태가 되면 사용자가 보유한 공유 수에 따라 자금 복구 능력이 위태로워질 수 있습니다.

MPC 솔루션을 선택할 때 초보자는 어떤 당사자가 공유를 보유하는지 명확히 알아야 합니다. 진정한 "비보관" MPC 지갑은 제공자가 단독으로 거래에 서명할 수 없는 복구 공유를 보유하도록 보장합니다(즉, 제공자의 공유는 임계값에서 M-1 공유만큼 떨어져 있습니다).


MPC 보안 활용 최선의 관행

MPC 지갑 구현은 개인이든 기관이든 공유의 분산과 보안에 대한 신중한 계획이 필요합니다.

  1. 올바른 임계값 선택: 소매 사용자에게는 2-of-3 설정(장치, 클라우드, 제공자)이 일반적입니다. 기업은 종종 3-of-5 이상을 선호합니다. 임계값은 보안(높은 M)과 운영 마찰(낮은 M)을 균형 맞춰야 합니다.
  2. 물리적 및 디지털 공유 분리: 여러 공유를 직접 보유한다면 동일한 물리적 장치나 네트워크에 저장하지 마세요. 공유 1은 휴대폰에, 공유 2는 데스크톱에, 공유 3은 오프사이트 암호화 파일에 저장하세요. 실패 지점의 다양화가 핵심입니다.
  3. 강력한 인증 사용: 공유를 보유한 모든 장치나 당사자가 강력한 보안 조치(예: 강력한 생체 인식 잠금, 2단계 인증, 보안 하드웨어 모듈)로 보호되도록 하세요. 자금을 훔치는 유일한 방법이 M개의 독립적인 공유를 손상시키는 것이므로 각 공유에 접근하기 어렵게 만드는 것이 필수입니다.
  4. 제공자의 역할 이해: 위임 MPC 제공자를 사용하는 경우, 그들의 구체적인 보안 프로토콜, 보유한 키 공유 보호 방법, 복구를 위해 해당 공유를 사용하기 위한 신원 확인 단계를 명확히 이해하세요.

결론

다자간 연산 지갑은 분산 키 생성과 임계 암호학을 활용하여 Bitcoin 발명 이후 자체 보관을 괴롭혀온 전통적인 단일 장애 지점을 완전히 제거하는 디지털 자산 보안 및 보관의 다음 주요 진화를 나타냅니다.

향상된 기업 거버넌스를 추구하는 기업 사용자와 취약한 시드 구문에 대한 안전한 대안을 찾는 소매 사용자 모두에게 MPC는 키 소유의 비보관 주권성과 중앙화된 관리 솔루션과 일반적으로 연관된 효율성 및 견고한 보안을 강력하게 결합합니다. 이 기술이 성숙함에 따라 MPC는 전체 크립토 생태계에서 안전하고 복구 가능한 자체 보관의 표준 메커니즘으로 자리 잡을 것입니다.