블록체인 코스 #22: 니모닉(BIP-39)으로 지갑 복구하는 원리
니모닉은 사람이 다루기 쉬운 12/24개 단어로 시드 복구를 가능하게 하는 BIP-39 표준입니다. 생성 과정(엔트로피→체크섬→11비트→단어→PBKDF2)과 보안 주의점을 함께 정리합니다.
독자는 이 글을 통해 니모닉이 시드/지갑 복구를 어떻게 쉽게 만드는지 이해하고, BIP-39 생성 흐름(체크섬·11비트·PBKDF2)을 따라가며 보안 실수를 줄일 수 있습니다.

니모닉이란?
- 니모닉(Mnemonic)은 난수(엔트로피)를 12개 또는 24개의 영어 단어로 표현해 지갑 복구를 돕는 방식입니다.
- 표준은 BIP-39이며, “사람이 복사·기록·검증하기 쉬운 형태”를 목표로 합니다.
- 니모닉 단어를 이용해 최종적으로 시드(seed) 를 만들고, 그 시드가 HD 월렛 키 파생의 출발점이 됩니다.
왜 16진수 시드만으로는 불편할까
기존 시드 키는 아래처럼 긴 16진수 문자열 형태였습니다.
8979644bfb6b6206792bdd6a071b3a00daebfb84ac5e3d81fa8c87a8012b04be060765762d4540ff10788959a84dec51667f34b0380e66be373d0ab2c62f8f94
문제는 한 글자만 틀려도 복구가 실패하고, 오타를 찾는 과정이 번거롭다는 점입니다. 반면 니모닉은 “단어” 기반이라 사람이 오타를 더 빨리 인지할 수 있습니다.
endless convince patrol calm apology scene client jungle fitness blind grass pause
주의: 니모닉은 편하지만 “사람이 다루기 쉬운 만큼” 훔치기도 쉽습니다. 사진·클라우드 저장은 금지하세요.
니모닉 월렛이 복구하는 것은 무엇인가
니모닉 월렛은 “코인/토큰”을 복구하는 게 아니라, 그 자산을 통제하는 키(시드 → 개인키) 를 복구합니다.
개인키를 탈취당해 자산이 빠져나갔다면, 니모닉으로 지갑을 복원해도 이미 이동한 자산은 돌아오지 않습니다.
팁: 지갑의 역할이 헷갈리면 지갑 개념과 HD 월렛에서 개인키·서명 흐름을 먼저 확인하세요.
BIP-39 생성 흐름 핵심
BIP-39는 “엔트로피 → 니모닉 단어 → 시드(512bit)” 로 이어집니다. 중간에 체크섬과 키 스트레칭이 들어갑니다.
1) 엔트로피와 체크섬
- 128bit 또는 256bit 엔트로피(난수) 를 생성합니다.
- 엔트로피를
SHA-256으로 해싱한 뒤, (엔트로피 길이 / 32) 만큼의 비트를 체크섬으로 사용합니다.- 예: 128bit 엔트로피라면 체크섬은
128 / 32 = 4bit
- 예: 128bit 엔트로피라면 체크섬은
2) 11비트 단위 분할과 단어 매핑
- 엔트로피 뒤에 체크섬을 붙여 하나의 비트열을 만듭니다.
- 이를 11비트씩 나눕니다.
- 각 11비트 값(0~2047)을 사전 정의된 2048개 단어 목록의 인덱스로 매핑해 니모닉 단어를 만듭니다.

시드 생성 9단계 요약
아래는 “니모닉 코드 생성” 관점에서의 흐름을 간단히 정리한 버전입니다.
- 128bit 또는 256bit 엔트로피 생성
- 엔트로피를
SHA-256으로 해싱 - 해시에서 (엔트로피 / 32)비트 만큼 체크섬 추출
- 엔트로피 뒤에 체크섬 결합
- 결합 비트열을 11bit 단위로 분할
- 각 11bit를 단어 목록 인덱스로 변환
- 순서를 유지해 12/24개 니모닉 단어 완성
- 니모닉과 솔트로
PBKDF2수행 - 결과로 512bit 시드(seed) 생성
체크섬(Checksum): 입력 데이터에 오류가 있는지 “검사용”으로 확인하기 위한 비트 정보입니다.
PBKDF2로 시드(512bit) 만들기
니모닉 단어는 그 자체로 최종 시드가 아닙니다. BIP-39는 키 스트레칭을 위해 PBKDF2를 사용합니다.
- 입력 1: 니모닉 문장(단어들을 공백으로 연결한 문자열)
- 입력 2: 솔트(salt)
"mnemonic"+ 사용자가 선택한 패스프레이즈(passphrase) 결합
- 함수:
PBKDF2-HMAC-SHA512 - 반복: 2048 라운드
- 출력: 512bit 시드
주의: 패스프레이즈를 쓰면 보안이 강해지지만, 잊어버리면 같은 니모닉으로도 다른 시드가 생성되어 복구에 실패합니다.
실무 보안 체크리스트
- 니모닉은 오프라인에 기록하고 2곳 이상 분산 보관
- 사진 촬영·메신저 전송·클라우드 백업 금지
- 복구 연습은 소액 테스트 지갑으로만 진행
- 패스프레이즈 사용 시, 니모닉과 분리 보관(둘 다 잃으면 복구 불가)