Blockstream / Blockstream/Jade

Compatibility of Jade with externally blinded txs on Liquid

Open
#21 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
496
Forks
127
PR merge metrics
No merged PRs in 30d

Description

It looks like Jade only can sign transactions that were blinded by Jade itself - values and assets are displayed correctly only if I pass commitments that contain `hmac` field received from Jade during blinding.

If I pass `None` for all commitments it displays garbage on screen and then throws an error:
```
JadeError: -32602 - Failed to verify asset_generator from commitments data
```

If I pass correct commitments but without `hmac` field - it throws a different error:
```
JadeError: -32602 - Failed to extract trusted commitments from parameters
```

This means that:
1. It's not possible to use Jade in multisig unless Jade is creating the transactions (so 2 Jades will never be able to sign multisig transaction)
2. It's not possible to use Jade for transactions containing outputs that are blinded by someone else (for example swaps, coinjoins or payjoins)

I suggest that you allow commitments that do not contain `hmac` field because HW still can verify correctness of asset commitment and value commitment just by running `secp256k1_generator_generate_blinded` and `secp256k1_pedersen_commit`.

Also would be nice if blinded outputs with unknown blinding factors are displayed as `???` for values and assets, not some random values.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.