Hierarchically deterministic key management explained by Brendan Lee

Up until recently, Bitcoin hasn’t had the time or attention from professional developers to be adapted for serious enterprise use, and as a result, worked best for simple transactions. Brendan Lee, head of technology at blockchain management consultancy Faiā, spoke with Stephanie Tower at the recent CoinGeek Seoul conferences about how hierarchically deterministic key pairs will change this dynamic.

Shortened to a simple HD acronym, Lee stressed that this has nothing to do with consumer televisions. “HD in this case, it’s not high definition, it stands for hierarchically deterministic,” he explained. “And what that means is that we’re establishing a hierarchy of keys which we can always regenerate from a parent in a deterministic manner. So we can always start at the parent and regenerate the same information.”

Tower asked what this means for Bitcoin wallet users. “It means that you can generate an unbounded number of key pairs to manage your Bitcoin transactions, and always be able to recover those key pairs from just the root key that you’re using for your wallet,” Lee answered.

How much do Bitcoin SV (BSV) users need to learn and understand about HD key pairs to use them to their full potential? “For most users, that process is completely invisible to them,” Lee told Tower. “And so there are techniques that we’re using today which are becoming somewhat outdated and which we’re going to be able to replace with updated, new techniques that involve secret sharing between users and services, which will greatly simplify the process of establishing relationships and managing those relationships between users and services.”

But for those wanting to better understand key management, and how HD key pairs help improve the system, Lee was happy to explain:

“Key management is basically the process of establishing these derivative key chains and making sure that the users can always recover those key chains. And storing the necessary information in the correct format so that they can come back in one year, or ten years, or a hundred years and regenerate that exact same transaction graph and be able to find the information that they stored on the ledger and any money that’s attached to it.”

Part of Lee’s presentation at CoinGeek Seoul covered how the Metanet protocol ultimately helps with key chain management. Tower asked him to elaborate. “With the Metanet protocol, when you’re generating a Metanet graph to house your content, the nodes that you’re creating in that graph each have an address that comes from a key pair,” he began. “And those key pairs are generated using hierarchically determinist techniques. What I was talking about today was basically a new way to link a Metanet graph to another key chain which is what the user is managing the money that’s being used to pay to write that graph onto the blockchain, but also with the capability to add even more keychains that can be used for approvers of content to stamp that content as right for that platform.”

To best understand the concept, Lee provided a specific example. “So if you’re managing a news website that’s on the Metanet, and someone contributes a piece of news, you can have a multi-step approval process which is controlled by all different users, but each of the keys that those users are using can be regenerated from the root key at the top of that news websites Metanet graph.”

At the end of the day, Lee explained that these HD key pairs help to flip the script on key chain management. “The techniques that we’re using today, I called them simplistic,” he noted. “And because they are so simplistic, you actually have to add a lot of complexity on top to manage that. What we’re doing now is, we’re actually putting the complexity at the bottom, and that allows the top layer to become much more simple and easy to manage.”

New to Bitcoin? Check out CoinGeek’s Bitcoin for Beginners section, the ultimate resource guide to learn more about Bitcoin—as originally envisioned by Satoshi Nakamoto—and blockchain.