Hierarchical Deterministic (HD) wallet
'계층적 결정론적' 지갑이다.
...역시 사전적 의미로는 이해가 가지 않는다.
HD 지갑은 특정 seed 만으로 public 과 private key 들을 생성하고 저장 할 수 있는 지갑을 말한다. 이는 BIP32 기준으로 작성되었다.
Bitcoin Improvement Proposal, BIP는 HD 지갑과 비트코인의 extended key 들의 기준을 제시하였다.
이는 비트코인 wallet의 발전에 여러 기여를 하였는데
HD 지갑 이전에 있던 JBOK(Just-a-Bunch-of-Keys)의 경우
생성되는 모든 키들을 저장해야했기 때문에 매우 비효율적이었다.
하지만, HD 지갑은 64bytes 의 seed 를 저장하는 것 만으로 모든 키들을 저장 할 수 있는 것이다.
이를 보면 동일한 seed 입력에 항상 같은 결과를 내놓는 tree 구조 wallet, Hierarchical Deterministic wallet 라고 이름지은 것이 이해가 간다.
아래 그림으로 보면 이해가 조금 더 쉽다.
이처럼, seed 를 통해서 Master Extended Key(m) 가
생성되게 되고 이후 여기서 파생된 키도 동일하게 child key 들을 파생할 수 있게 된다.
이는 depth 와 index 에 따라서
depth=2, child index=1 이라면 m/0/1/ 과 같이 표현된다.
또한 유저는 extended public key(xpub) 를 통해서 private key 로의 접근 없이 새로운 address 를 생성 할 수 있기 때문에 안전하다.
[ref]
https://river.com/learn/terms/h/hd-wallet/
https://river.com/learn/terms/b/bip-32/