비트코인 니모닉의 수학적 원리와 안전한 보관 방법

안녕하세요. 지니가든입니다.

비트코인 투자를 4년 이상 이어오며 제가 내린 결론은 ‘내 자산은 내가 직접 통제해야 한다’는 것입니다. 거래소는 편리하지만 보안의 주도권은 나에게 없습니다. 진정한 의미의 개인지갑 (셀프커스터디)을 사용하기 위해서는 그 뿌리가 되는 니모닉 (Mnemonic)의 원리를 반드시 이해해야 합니다.

비트코인 지갑의 열쇠: 비밀키와 공개키의 원리

비트코인 지갑은 우리가 흔히 사용하는 우편함 시스템과 매우 비슷합니다.

  • 공개키 (우편함 주소): 누구나 볼 수 있고 누구든 나에게 코인을 보낼 수 있는 주소입니다.
  • 비밀키 (우편함 열쇠): 우편함 안에 든 내용물을 꺼낼 수 있는 유일한 열쇠입니다.
출처: geniegarden

주소는 비트코인 주소이며 열쇠는 내가 비트코인을 사용할 수 있는 서명용도 입니다.

이 비밀키는 사실 아주 긴 숫자 덩어리입니다. 컴퓨터는 모든 정보를 0과 1 (이진수)로 저장하기 때문입니다. 하지만 사람이 이 수십 자리가 넘는 0과 1의 조합을 정확히 기억하거나 받아 적는 것은 불가능에 가깝습니다. 이 복잡한 숫자 더미를 우리가 아는 단어로 변환한 것이 바로 니모닉입니다!

0과 1이 어떻게 단어가 되는가?

복잡한 2진수 데이터를 사람이 읽을 수 있는 단어로 바꾸는 과정은 단순한 수학 규칙을 이용합니다.

  1. 난수생성: 사람이 입력한 주사위 값을 이용하거나 컴퓨터의 랜덤함수를 이용하여 아주 긴 0과 1의 나열 (엔트로피)를 만듭니다.
  2. 11개씩 묶기: 이 긴 줄을 11개씩 쪼개서 묶으면 12개 혹은 24개의 덩어리가 됩니다.
  3. 단어매칭 (BIP-39): 11개의 0과 1의 조합은 0부터 2,047사이의 숫자 하나로 변환됩니다. 이 숫자를 들고 BIP-39 표준 단어장에 가서 해당 번호에 적힌 단어를 가져오는 것입니다.

BIP-39 니모닉 단어리스트 확인: https://github.com/bitcoin/bips/blob/master/bip-0039/english.txt

예를 들어 0과 1의 특정 조합이 00100110101이 있다고 가정해보겠습니다. 우리가 사용하는 십지수로 변환하면 309라는 숫자가 됩니다. 근데 위 BIP-39 단어 리스트는 1번 부터 시작하고 숫자는 0부터 시작하기 때문에 저희는 310번째 단어를 찾아가야 합니다.

BIP-39 단어찾기
출처: bitcoin 깃허브

단어 리스트를 찾아가보니 310번째 단어는 canvas 군요.

이렇게 모든 0과 1의 묶음을 단어로 매칭시켜주면 결국 니모닉 12개 혹은 24개 셋트가 탄생합니다.

확률의 힘: 왜 겹치거나 해킹될 수 없는가?

많은 분들이 단어 2,048개 중에서 12개 혹은 24개를 뽑는 거라면 언젠가 겹치지 않느냐고 묻습니다. 하지만 니모닉의 보안은 단어의 개수가 아니라 그 이면에 숨겨진 0과 1의 개수에서 나옵니다.

우리가 주사위를 던지거나 동전을 던져서 무작위로 0과 1이라는 정보 (엔트로피)를 직접 만든다고 가정해 봅시다.

  • 12단어 니모닉: 무작위로 0과 1을 128번 추출하여 나열한 것입니다. 그래서 경우의 수는 2의 128승이 됩니다.
  • 24단어 니모닉: 무작위로 0과 1을 256번 추출하여 나열한 것입니다. 그래서 경우의 수는 2의 256승이 됩니다.

12단어 니모닉의 경우의 수인 2의 128승만 하더라도 지구 해변의 모래 알갱이보다 수십억배 이상 많은 숫자입니다. 24단어 니모닉의 경우의 수인 2의 256승은 관측 가능한 우주 전체의 원자수에 필적하는 수준입니다.

출처: NASA

결국 우리가 주사위를 던져 무작위로 추출해낸 128개 또는 256개의 0과 1의 조합은 누군가 우연히 똑같이 맞추거나 슈퍼컴퓨터로 찾아낼 수 있는 영역이 아닙니다.

결론: 가장 강력한 방패는 ‘오프라인’

니모닉은 수학적으로는 완벽하다고 할 수 있습니다. 하지만 이를 다루는 사용자의 부주의가 실제 도난 사고의 99%를 차지합니다.

출처: 봉현스쿨 스토리 스토어
  • 절대 디지털 보관 금지: 사진촬영, PC나 핸드폰 메모장 혹은 클라우드에 저장하는 행위는 해커에게 열쇠를 주는 것과 같습니다.
  • 피싱 및 사회 공학적 해킹: 공식 서비스 센터를 사칭하는 가짜 사이트에 니모닉을 직접 입력하도록 유도하는 수법에 속아 자산을 잃는 경우가 많습니다.
  • 물리적 보관: 종이보다 화재와 침수에 강한 스테인리스 철판 (Steel Wallet) 보관을 적극 추천합니다.

출처: edaily 뉴스
(지인 속여 비트코인 60억 탈취 … ‘니모닉코드’ 노린 일당 검거)

다음 시간에는 제가 실제로 자산을 안전하게 지키기 위해 사용하고 있는 니모닉 스틸 월렛 (철판) 셋팅 방법에 대해 상세히 소개해 드리도록 하겠습니다. 영구적인 보관을 고민하신다면 다음 글을 참고해주세요!

댓글 남기기