Skip to content

descriptor: support elements confidential wallet policies#526

Merged
jgriffiths merged 5 commits intomasterfrom
elements_policies
May 6, 2026
Merged

descriptor: support elements confidential wallet policies#526
jgriffiths merged 5 commits intomasterfrom
elements_policies

Conversation

@jgriffiths
Copy link
Copy Markdown
Contributor

    These are the same as existing wallet policies except that the blinding
    key placeholder must be '@B`, which must be given first in the policy
    key map when parsing.
    
    This allows the blinding scheme and key to be presented separately from
    the rest of the policy which will then be identical (modulo el-prefixes)
    between elements and bitcoin for the same wallet structure.
    
    This also allows the distinction between blinding keys and policy keys
    to remain intact. Blinding keys are qualitatively different from
    derivation keys; they may for example be a real pubkey, raw entropy,
    and/or/in addition to an algorithm that operates on the result of the
    policy for given derivation indices (in the case of deterministic
    blinding). For these reasons blinding keys remain outside standard key
    iteration in a parsed descriptor.

djpnewton and others added 5 commits May 6, 2026 01:01
Notably this restricts policy key placeholder expressions.

Co-authored-by: Jon Griffiths <jon_p_griffiths@yahoo.com>
These are the same as existing wallet policies except that the blinding
key placeholder must be '@B`, which must be given first in the policy
key map when parsing.

This allows the blinding scheme and key to be presented separately from
the rest of the policy which will then be identical (modulo el-prefixes)
between elements and bitcoin for the same wallet structure.

This also allows the distinction between blinding keys and policy keys
to remain intact. Blinding keys are qualitatively different from
derivation keys; they may for example be a real pubkey, raw entropy,
and/or/in addition to an algorithm that operates on the result of the
policy for given derivation indices (in the case of deterministic
blinding). For these reasons blinding keys remain outside standard key
iteration in a parsed descriptor.
No functional changes.
@jgriffiths jgriffiths force-pushed the elements_policies branch from 4a81d9f to c7f5ec1 Compare May 6, 2026 06:32
@jgriffiths jgriffiths merged commit c7f5ec1 into master May 6, 2026
5 checks passed
@jgriffiths jgriffiths deleted the elements_policies branch May 6, 2026 21:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants