본문으로 건너뛰기
buybitcoinsmart

용어집 / 지갑과 수탁

샤미르 백업

별칭은 Shamir backup, SLIP39입니다.

샤미르 백업이란 무엇입니까?
샤미르 백업은 지갑 비밀 하나를 여러 개의 단어 목록으로 나누고, 그중 선택한 수의 목록이 있어야 이를 복원할 수 있게 하므로, 종이 한 장만으로는 충분하지 않습니다.

수학적 원리는 Adi Shamir이 비밀 공유에 관해 쓴 1979년 논문에서 나왔고, 비트코인 구현은 SatoshiLabs가 발표한 SLIP-39입니다. 3개 중 2개 구성은 20단어 목록 3개를 만들어 내며, 그중 어느 2개든 지갑을 복원하지만, 어느 1개만으로는 아무것도 드러나지 않습니다. 도난과 분실에 같은 백업으로 대응하는데, 이는 단일 문구로는 할 수 없는 일입니다.

작동 방식

임계값 공유는 암호화가 아니며 문구를 조각으로 자르는 것도 아닙니다. 비밀은 임계값보다 차수가 1 낮은 다항식 위의 한 점으로 취급되고, 각 조각은 그 곡선 위의 또 다른 점입니다. 두 점은 직선을 정하고, 세 점은 포물선을 정하는 식으로 이어지므로, 임계값만큼의 조각을 모으면 곡선이 복원되어 원래 값을 읽어 낼 수 있습니다. 임계값 아래에서는 부분적인 정보가 전혀 없습니다. 3개 중 2개 구성에서 조각 1개만 있을 때 가능한 모든 비밀은 이전과 정확히 같은 확률로 남아 있으며, 이는 “계산적으로 어렵다”는 것보다 강한 보장입니다.

SLIP-39는 이 아이디어를 손으로 적는 데 맞춘 형식으로 감쌉니다. 이 형식의 단어 목록은 BIP-39의 2,048단어가 아니라 1,024단어를 담고 있으며, 각 단어는 4~8글자이고 처음 4글자로 고유하게 식별됩니다. 조각은 128비트 마스터 비밀에 대해 20단어, 256비트 비밀에 대해 33단어이며, 각 단어가 10비트를 담고, 여기에 식별자·임계값·체크섬 데이터가 붙어 지갑이 어느 그룹에 속한 조각인지 알 수 있게 합니다. 이 방식은 두 단계를 지원합니다. 최대 16개 그룹, 각 그룹에 최대 16개 조각이며, 그룹 사이와 그룹 안 모두에 임계값이 있습니다.

두 가지 한계가 이것이 적합한지 결정합니다. 복원은 한 기기에서 한 시점에 일어나므로, 그 기기와 그 시점은 조각을 아무리 조심스럽게 분산했더라도 단일한 침해 지점이 됩니다. 그리고 SLIP-39는 BIP-39와 호환되지 않습니다. 기존의 12단어 또는 24단어 문구는 조각으로 변환할 수 없고, 조각은 니모닉만 이해하는 지갑에 입력할 수 없습니다.

사용되는 곳

Trezor는 2019년 8월에 펌웨어 2.1.3으로 Model T에 샤미르 백업을 출시했고, 그해 10월에 2.1.6에서 다중 그룹 “슈퍼 샤미르”를 추가했으며, 현재 Safe 기기들도 이 기능을 이어받았습니다. 다른 곳의 지원은 적으며, 이것이 이 기능을 반대하는 가장 강력한 실용적 논거입니다. 백업은 한 제조사의 하드웨어에서, 또는 오픈소스 참조 구현인 python-shamir-mnemonic을 통해서만 복원되고, 그 밖의 어디에서도 복원되지 않습니다. 10년을 염두에 둔 백업을 계획하는 사람이라면 모든 지갑이 읽는 BIP-39와 이를 견주어 저울질해야 합니다.

이 기능이 제값을 하는 구성은 지리적이고 사회적입니다. 세 도시에 나눈 조각은 주택 화재를 견디면서도 어느 한 장소만으로는 도둑에게 충분하지 않습니다. 가족과 변호사 사이에 나눈 5개 중 3개 구성은 생전에 누구에게도 일방적 통제권을 넘기지 않으면서 상속에 실행 가능한 경로를 제공합니다. 두 경우 모두 복구 훈련을 최소 한 번은 해 두어야 하는데, 임계값 방식은 조용히 실패하기 때문입니다. 손상된 조각은 그것을 사용하려 할 때에야 발견됩니다.

아이디어의 형태는 마음에 들지만 더 폭넓은 도구 지원을 원한다면, codex32가 알아 둘 만한 다른 선택지입니다. BIP-93으로 명시된 이 형식은 컴퓨터 없이 종이 위에서 손으로 체크섬을 검증할 수 있는 조각 형식을 정의합니다.

샤미르 백업 vs 멀티시그

샤미르는 비밀 하나를 나누고, 멀티시그는 진정으로 독립적인 여러 개의 키를 사용합니다. 이 하나의 차이가 나머지 모든 것을 좌우합니다. 샤미르 조각은 사용하려면 한 기기에서 모여야 하므로 그 순간을 포착한 공격자는 모든 것을 가져가지만, 멀티시그 서명은 별개의 기기에서 생성되어 키가 만나지 않습니다. 멀티시그는 온체인에서 드러나고, 트랜잭션 수수료가 더 들며, 지갑 디스크립터를 시드와 함께 백업해야 합니다. 샤미르는 누구에게도 보이지 않고, 사용하는 데 추가 비용이 없으며, 온체인 복잡성을 더하지 않습니다. 상속과 화재 방어에는 샤미르가 더 단순합니다. 침해된 기기나 정직하지 않은 참여자 한 명을 막는 데에는 멀티시그가 실제로 도움이 됩니다.

혼동하기 쉬운 용어

자주 묻는 질문

기존 24단어를 샤미르 조각으로 변환할 수 있습니까?

아닙니다. SLIP-39와 BIP-39는 단어 목록이 다른 별개의 형식이므로, 기존 니모닉을 조각으로 나눌 수 없습니다. 샤미르로 옮기려면 이를 지원하는 기기에서 새 지갑을 만들고 코인을 옮겨야 합니다.

샤미르 백업이 시드 문구 사본 두 개를 숨기는 것보다 낫습니까?

도난에는 더 낫고 분실에는 더 나쁘지 않습니다. 숨긴 사본 두 개는 각각 전체 비밀을 담고 있으므로 도둑은 어느 하나만 찾아도 충분합니다. 3개 중 2개 샤미르 구성에서는 찾은 조각 하나가 아무것도 드러내지 않습니다.

다음에 읽을 글

관련 용어

지갑과 수탁 분야의 다른 용어

이 페이지를 영어로 읽기