전체 글 목록

비트코인 BIP39란? 엔트로피·체크섬으로 복구 문구가 만들어지는 원리

bitcoin-bip39-mnemonic-generation

비트코인 지갑을 새로 만들면 12개 또는 24개의 복구 문구가 표시되는 경우가 많습니다.

처음 보면 지갑이 2,048개의 단어 중에서 몇 개를 무작위로 골라 보여주는 것처럼 생각하기 쉽습니다.

저도 지갑을 공부하면서 복구 문구가 어떻게 만들어지는지 궁금해서 BIP39 명세를 직접 찾아본 적이 있습니다. 처음에는 단순한 무작위 추첨이라고 생각했는데, 실제로는 암호학적으로 설계된 구조라는 것을 알게 되었습니다.

하지만 BIP39 방식의 복구 문구는 단어를 하나씩 따로 추첨하는 방식으로 만들어지지 않습니다.

지갑은 먼저 엔트로피라고 부르는 무작위 이진 정보를 생성합니다. 그 뒤 엔트로피에서 체크섬을 계산해 붙이고, 전체 정보를 11비트씩 나눈 다음 각 값을 BIP39 단어 목록의 위치와 연결합니다.

더 읽기