-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PLT-9086: Enable Hardware wallet Signing (canonical CBOR format) #794
base: main
Are you sure you want to change the base?
Conversation
cc4417c
to
6ab39ee
Compare
To test this properly with hardware wallets, we might need a Runner or TS SDK that is compatible with this branch. @paluh, @nhenin, @hrajchert, what are the prospects for that? |
We could prioritize this as a new goal for the TS-SDK, but either Nicolas or myself would need access to a hardware wallet |
To start with, we also need to make sure the software wallets are still compatible - note that this has a breaking change that will require a code change in the TS SDK ( |
When will this be published? it would be nice if we can send the right envelope depending on the backend version |
It will be published in a non-breaking way to a new host. As for supporting multiple backend versions, that's up to you and @nhenin if you want to go down that route. Might not work though, as newer request formats likely won't be back-portable. |
@bwbush I think that I should test this anyway in the Runner and check the impact on the CIP-30 wallets using our playwright based test suite. We can discuss this during sprint planning. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Blocked until we confirm with compatibility with Lace, Eternl, and Nami.
Attached is the debug log from Eternl using a Ledger wallet to sign an apply-inputs transaction. |
I manually checked our unsigned transaction. The keys are not in canonical order. The hardware wallets probably choke on this [1] [2]. Runtime needs to canonicalize the CBOR and conform to RFC 8949 and RFC 7049. I see at least two problems in our CBOR, but there may be more:
|
marlowe-runtime-web/changelog.d/20240105_135357_jhbertra_plt_9086_wallet_compatible_cbor.md
Outdated
Show resolved
Hide resolved
…086_wallet_compatible_cbor.md Co-authored-by: Brian W Bush <[email protected]>
@jhbertra, sorry I missed the notifications on that... what is the status now ? Did you fix the 2 hypothesis ?
|
Pre-submit checklist: