시드 문구를 위한 샤미르 비밀 공유: 백업을 여러 공유로 분할 (SLIP-39)

— By Tony Rabbit in Tutorials

시드 문구를 위한 샤미르 비밀 공유: 백업을 여러 공유로 분할 (SLIP-39)

샤미르 비밀 공유 시드 문구 백업이 어떻게 지갑 복구를 N개의 공유로 분할하고, 그 중 M개만 있으면 복구할 수 있으며, SLIP-39를 통해 단일 실패 지점을 제거하는지 알아보세요.

샤미르 비밀 공유 시드 문구 백업은 지갑 복구 비밀을 여러 개의 개별 공유로 분할하며, 선택된 하위 집합(예: 5개 중 3개)만 있으면 원본을 재구성할 수 있지만, 그보다 적은 수로는 아무것도 드러나지 않습니다. 샤미르 비밀 공유(SSS)는 1979년 암호학자 아디 샤미르가 발표한 수학 기반 임계값 체계이며, SLIP-39는 이를 암호화폐 지갑에 적용하는 표준입니다. 분실, 도난 또는 파괴될 수 있는 하나의 취약한 백업 대신, 동시에 중복성과 도난 방지 기능을 얻을 수 있습니다. 이 가이드는 순진한 분할이 왜 위험한지, 임계값 수학이 어떻게 작동하는지, 레이아웃을 선택하는 방법, 그리고 Trezor에서 이를 수행하는 방법을 설명합니다.

핵심 요약

  • SSS는 임계값 체계입니다: N개의 공유 중 M개만 있으면 지갑을 복구할 수 있으며, M개 미만으로는 아무것도 드러나지 않습니다.
  • 24단어 문구를 수동으로 3등분하는 것은 각 조각이 실제 엔트로피를 유출하기 때문에 안전하지 않습니다.
  • SLIP-39는 Trezor와 같은 하드웨어 지갑에 SSS를 구현하는 공개 표준입니다.
  • 임계값 선택(2-of-3 대 3-of-5)은 편의성과 도난 방지 사이의 균형을 맞춥니다.
  • SSS는 저장 매체와 무관하며, 각 공유에 대해 여전히 종이 또는 금속을 선택합니다.

24단어 문구를 순진하게 3등분하는 것이 안전하지 않은 이유

직관적인 아이디어는 24단어 시드 문구를 각각 8단어씩 세 장의 카드에 적어 따로 보관하는 것입니다. 이는 자기 보관에서 가장 위험한 실수 중 하나이며, 보안 트레이드오프의 양쪽 끝에서 실패합니다.

첫째, 엔트로피를 유출합니다. 24단어 BIP-39 시드는 256비트의 무작위성을 인코딩합니다. 공격자가 세 장의 카드 중 한 장만 찾아도, 그들은 아무것도 아닌 것의 3분의 1을 알게 된 것이 아니라, 알려진 위치에 있는 구체적인 8단어를 알게 된 것입니다. 이는 남은 검색 공간을 극적으로 축소시킵니다. 세 장 중 두 장의 카드를 가지고 있다면, 동기 부여된 공격자에게는 누락된 세 번째를 무차별 대입하는 것이 충분히 가능합니다. 조각들은 불투명한 조각이 아닙니다; 그것들은 키의 평문 조각입니다.

둘째, 실제 중복성이 없습니다. 카드 한 장이라도 잃어버리면 시드는 영원히 사라집니다. 문구를 재구성하려면 세 조각 모두가 필요하기 때문입니다. 따라서 도난 위험을 동시에 증가시키면서도 벗어나려 했던 단일 실패 지점의 취약성을 그대로 유지한 것입니다. 복구 문구가 왜 그렇게 중요한지에 대한 복습이 필요하다면, 시드 문구로 암호화폐 지갑을 복구하는 방법에 대한 저희 가이드를 참조하세요.

SLIP-39와 샤미르 비밀 공유가 시드를 M-of-N 공유로 분할하는 방법

샤미르 비밀 공유는 가위가 아닌 수학으로 두 가지 문제를 해결합니다. 비밀은 유한체 위의 다항식 곡선 상의 한 점으로 인코딩됩니다. M개의 점이 필요한 곡선을 정의하기 위해, 이 체계는 N개의 점을 추출하여 각 주주에게 하나씩 제공합니다. M개의 점은 곡선을 고유하게 결정하며, 따라서 비밀도 고유하게 결정합니다. M-1개의 점으로는 곡선이 완전히 불확실하므로, 모든 가능한 비밀은 동일하게 가능성이 있습니다. 남은 공유는 정확히 0의 정보를 드러냅니다.

이것이 분할과의 결정적인 차이입니다. SLIP-39 공유는 단어의 조각이 아닙니다. 각 공유는 그 자체로 암호화 노이즈인 20단어 또는 33단어 니모닉입니다. 3-of-5 설정에서 두 개의 공유를 가지고 있다고 해서 공격자에게 지갑에 대한 유용한 정보를 제공하는 것은 아닙니다. 이것이 이 체계를 책임 증폭기가 아닌 진정한 단일 실패 지점 제거기로 만드는 이유입니다. SLIP-39 (SatoshiLabs Improvement Proposal 39)는 체크섬, 암호 문구 지원 및 전용 단어 목록을 포함하여 지갑용으로 이를 패키징하는 공개 표준입니다.

접근 방식엔트로피 유출?분실된 조각 허용?표준화됨?
문구를 3등분예, 각 조각은 평문입니다아니요, 모든 조각이 필요합니다아니요
SLIP-39 / 샤미르 (M-of-N)아니요, 임계값 미만은 아무것도 드러내지 않습니다예, N에서 M을 뺀 공유 수까지예, SLIP-39

임계값 선택: 2-of-3 대 3-of-5 및 저장 위치

M과 N을 선택하는 것은 기술적인 결정이 아니라 위험 관리 결정입니다. 두 숫자가 모든 것을 정의합니다: M은 복구하는 데 필요한 공유 수이고, N에서 M을 뺀 값은 잃어도 되는 공유 수입니다. M과 N 사이의 간격은 중복성 예산입니다.

2-of-3 레이아웃은 인기 있는 시작점입니다. 공유 하나를 잃어도 복구할 수 있으며, 공격자는 자금을 훔치기 위해 세 곳 중 두 곳을 확보해야 합니다. 3-of-5 레이아웃은 더 견고합니다: 두 개의 공유를 잃어도 허용하며, 공격자는 다섯 곳 중 세 곳을 침해해야 합니다. 임계값이 높을수록 도난 방지 기능은 증가하지만, 실제로 필요할 때 충분한 공유를 모으지 못할 가능성도 증가합니다.

저장 위치는 숫자만큼 중요합니다. 같은 서랍에 보관된 공유는 단일 손상된 사본에 대한 중복성을 제공하지만, 화재나 강도에 대해서는 아무것도 제공하지 않습니다. 공유를 별개의 신뢰 영역에 분산시키세요: 가정 금고, 은행 금고, 신뢰할 수 있는 친척, 두 번째 부동산. SSS는 비밀이 어떻게 분할되는지를 결정하며, 각 공유가 어떤 재료에 새겨지는지는 결정하지 않으므로, 종이 또는 금속에 시드 문구를 안전하게 보관하는 방법에 대한 저희 조언과 함께 사용하세요. 상속 계획을 위해 상속인에게 공유를 배포하는 것도 사망 시 암호화폐에 무슨 일이 일어나는지에 대한 저희 가이드에서 다룹니다.

Trezor SLIP-39 사용법

Trezor 하드웨어 지갑은 Trezor Model T 및 Safe 시리즈 장치에서 Shamir Backup이라는 이름으로 SLIP-39를 기본적으로 구현합니다. SatoshiLabs가 이 표준을 만들었으므로, 장치 내 흐름은 최고 수준입니다. Trezor Suite 앱을 사용하는 일반적인 경로는 다음과 같습니다:

  1. 장치에서 새 지갑 설정을 시작하고 단일 복구 문구 대신 Shamir Backup을 선택합니다. 기존의 단일 시드 지갑은 그 자리에서 변환할 수 없습니다; 새 지갑을 만들고 자금을 이동해야 합니다.
  2. 장치 화면에서 총 공유 수(N)와 임계값(M)을 설정합니다. 하드웨어는 규칙을 강제하므로 불가능한 조합을 선택할 수 없습니다.
  3. 장치는 각 20단어 공유를 한 번에 하나씩 표시합니다. 각 공유를 자체 백업 카드나 금속판에 적고, 예를 들어 "5개 중 1번 공유"와 같이 명확하게 라벨을 붙입니다.
  4. 장치는 완료하기 전에 각 공유에서 몇 단어를 확인하도록 요청하여 전사가 올바른지 확인합니다.
  5. 선택한 위치에 공유를 배포합니다. 나중에 복구하려면, Trezor 장치에 M개의 공유를 다시 입력하면 장치 내에서만 마스터 비밀이 재구성됩니다.

재구성이 보안 요소 내부에서 이루어지기 때문에, 전체 비밀은 인터넷에 연결된 컴퓨터에 존재하지 않습니다. 아직 하드웨어를 선택 중이라면, 최고의 콜드 월렛 비교 가이드에서 옵션을 비교해 보세요.

실패 모드: 공유 분실, 너무 높게 설정된 임계값, 인적 오류

SSS는 단일 실패 지점을 제거하지만, 부주의하면 스스로를 잠글 수 있는 새로운 방법을 도입합니다. 가장 흔한 실패는 공유를 얼마나 안정적으로 저장할 수 있는지에 비해 임계값을 너무 높게 설정하는 것입니다. 4-of-4 체계는 전혀 중복성이 없습니다; 이제 네 가지 손실 중 하나라도 치명적이기 때문에 단일 백업보다 엄격하게 나쁩니다. 항상 N을 M보다 크게 유지하세요.

거울상 실패는 N에서 M을 뺀 공유 수보다 더 많이 잃어버리는 것입니다. 3-of-5 설정에서 세 개의 공유를 잃으면 복구할 수 없습니다. 공유를 주기적으로 감사하고 손상되었거나 읽을 수 없거나 더 이상 신뢰하지 않는 소유자의 공유는 교체하세요. 두 개의 다른 지갑에서 가져온 공유나 같은 지갑의 두 개의 다른 SSS 세션에서 가져온 공유를 혼합하는 것도 실패할 것입니다. 공유는 함께 생성된 세트 내에서만 결합되기 때문입니다.

마지막으로, 각 개별 공유를 이동 중인 전체 시드와 동일하게 주의 깊게 다루세요. 임계값 미만의 공유 수는 아무것도 드러내지 않지만, SLIP-39 암호 문구(설정했다면)는 반드시 기억하거나 완전히 별도로 보관해야 하는 유일한 조각이며, 공유와 함께 보관해서는 안 됩니다. 더 넓은 운영 보안 습관에 대해서는 해커로부터 암호화폐를 보호하는 방법에 대한 저희 가이드를 참조하세요.

이 글은 교육 목적으로만 제공되며, 재정적 조언이 아닙니다.