무료 미리 보기9분 분량

시드 문구가 키가 되는 과정

대부분의 지갑은 Bitcoin 커뮤니티에서 작성된 공개 표준인 BIP-39, BIP-32, BIP-44를 따라요. Ethereum 지갑도 같은 표준을 써요. 이 표준들을 함께 보면, 단어 목록 하나로 지갑이 지금까지 보여 준 모든 주소를 복원할 수 있는 이유를 알 수 있어요.

단계별로 보기

  1. 지갑이 128비트 또는 256비트의 무작위 값을 만들어요.
  2. BIP-39가 짧은 체크섬을 붙이고, 그 결과를 정해진 2,048개 단어 목록에 대응시켜 12개 또는 24개 단어를 만들어요. 단어 하나가 11비트를 나타내요.
  3. 그 단어들은 선택 사항인 패스프레이즈와 함께, 일부러 느리게 설계된 키 스트레칭 함수를 거쳐 512비트 시드가 돼요.
  4. BIP-32가 그 시드를 키의 나무로 키워요. 마스터 키 하나, 그리고 거기서 지갑에 필요한 만큼의 하위 키들이요.
  5. BIP-44는 각 코인과 계정이 나무의 어느 위치에 있는지 정해요. 그래서 다른 지갑 앱에서도 같은 주소를 찾을 수 있어요.

결론은 이거예요. 단어들은 지갑의 비밀번호가 아니에요. 단어들이 곧 지갑이에요. 그 단어를 가진 사람은 누구든, 호환되는 어떤 앱에서든, 어디서든, 당신의 기기 없이 모든 키를 다시 만들 수 있어요.

선택 사항인 패스프레이즈

어떤 지갑은 패스프레이즈를 추가할 수 있게 해 줘요. 25번째 단어라고 부르기도 해요. 같은 단어라도 패스프레이즈가 다르면 완전히 별개의 키 세트가 만들어져요. 누군가 단어만 찾아냈을 때는 이게 당신을 지켜 줘요. 하지만 패스프레이즈를 잊어버리면 단어를 잃어버린 것만큼이나 완전히 그 자금을 잃어요. 게다가 패스프레이즈를 썼다는 힌트조차 어디에도 남지 않아요.

실패하는 경우

  • 웹사이트, 입력 양식, 고객지원 채팅에 단어를 입력하면 지갑을 넘겨주는 거예요. 정당한 서비스라면 어디에서도 그 단어가 필요하지 않아요.
  • 사진, 메모 앱, 이메일 임시 보관함, 클라우드 문서는 복사되고, 동기화되고, 때로는 스캔돼요. 거기 저장된 단어는 노출된 것으로 취급하세요.
  • 단어 목록은 공개돼 있고, 체크섬 때문에 일부 조합만 유효해요. 빠지거나 철자가 틀린 단어는 복구될 때도 있지만, 직접 지어낸 문구는 무작위가 아니라서 안전하지 않아요.