From 9fc3e4653de2ab7504dd87fb044bc2e8ece0103f Mon Sep 17 00:00:00 2001 From: Ava Chow Date: Thu, 6 Aug 2026 11:41:57 -0700 Subject: [PATCH] 389: Remove H as a hardened indicator BIP 380 specifically disallows using `H` as the hardened indicator. The reference implementation also disallows `H`. --- bip-0389.mediawiki | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/bip-0389.mediawiki b/bip-0389.mediawiki index 6940a451da..965a706b43 100644 --- a/bip-0389.mediawiki +++ b/bip-0389.mediawiki @@ -38,12 +38,12 @@ For extended keys and their derivations paths in a Key Expression, BIP 380 state This is modified to state: * xpub encoded extended public key or xprv encoded extended private key (as defined in BIP 32) -** Followed by zero or more /NUM (may be followed by h, H, or ' to indicate a hardened step) path elements indicating BIP 32 derivation steps to be taken after the given extended key. -** Followed by zero or one / (each NUM may be followed by h, H, or ' to indicate a hardened step) path element indicating a tuple of BIP 32 derivation steps to be taken after the given extended key. -*** Followed by zero or more ;NUM (may be followed by h, H, or ' to indicate a hardened step) additional tuple values of BIP 32 derivation steps +** Followed by zero or more /NUM (may be followed by h, or ' to indicate a hardened step) path elements indicating BIP 32 derivation steps to be taken after the given extended key. +** Followed by zero or one / (each NUM may be followed by h, or ' to indicate a hardened step) path element indicating a tuple of BIP 32 derivation steps to be taken after the given extended key. +*** Followed by zero or more ;NUM (may be followed by h, or ' to indicate a hardened step) additional tuple values of BIP 32 derivation steps *** Followed by a single >/ -** Followed by zero or more /NUM (may be followed by h, H, or ' to indicate a hardened step) path elements indicating BIP 32 derivation steps to be taken after the given extended key. -** Optionally followed by a single /* (may be followed by h, H, or ' to indicate a hardened step) final step to denote all direct unhardened or hardened children. +** Followed by zero or more /NUM (may be followed by h, or ' to indicate a hardened step) path elements indicating BIP 32 derivation steps to be taken after the given extended key. +** Optionally followed by a single /* (may be followed by h, or ' to indicate a hardened step) final step to denote all direct unhardened or hardened children. When a / is encountered, parsers should account for a presence of multiple descriptors where the first descriptor uses the first NUM, and a second descriptor uses the second NUM, and so on, until each NUM is accounted for in the production of public keys, scripts, and addresses, as well as descriptor import and export operations. Descriptors that contain multiple Key Expressions that each have a / must have tuples of exactly the same length so that they are derived in lockstep in the same way that /* paths in multiple Key expressions are handled.