Skip to content
This repository was archived by the owner on Apr 25, 2024. It is now read-only.

Hermit PSBT signing for pre-product key recovery #308

Merged

Conversation

humanumbrella
Copy link
Contributor

Description

This PR simply attempts to bring an existing feature branch into the mainline -- it is working in the feature branch, but we don't want to leave the code dangling there indefinitely. This functionality is used for pre-product key recovery signing via hermit and is, therefore, a bit challenging to test. I have a write up somewhere, but want to get this branch up to date with master and more or less ready to go. My goal is to put this code in to master ... and have it be the first attempt next time it's needed.

Does this PR introduce a breaking change?

  • Yes
  • No

It removes pubkey exporting from hermit, which is no longer supported.

Does this PR fix an open issue?

  • Yes
  • No

dhruvbansal and others added 30 commits December 12, 2022 23:33
@humanumbrella humanumbrella requested a review from bucko13 May 27, 2023 05:24
Copy link
Contributor

@bucko13 bucko13 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mostly comments about cleanup.

@humanumbrella humanumbrella requested a review from bucko13 July 25, 2023 05:37
Copy link
Contributor

@bucko13 bucko13 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One tiny request on a leftover comment that needs some more clarification otherwise I think this is good enough to merge.

It would be nice to refactor some of this in the future, simplifying the actions or removing them altogether as necessary. After some of our work on PSBTv2 in unchained-bitcoin I think there's particularly room to improve the API of managing the PSBT state at the application layer. to make these components a little easier to manage/maintain and understand what's going on.

All for future work though!

@humanumbrella humanumbrella requested a review from bucko13 August 3, 2023 05:40
@humanumbrella humanumbrella merged commit c2fffa2 into unchained-capital:master Oct 21, 2023
robertshuford pushed a commit that referenced this pull request Oct 23, 2023
* build(wallet): much is wired but buidl won't yet sign PSBTs from caravan

* build(wallet): new Hermit now works with Caravan

* build(wallet): store `unsignedPSBT` in redux

* build(wallet): shows a Download Signed PSBT after importing signature via hermit

* build(wallet): fix psbt import and swap to custom unchained-bitcoin

* build(wallet): updates signature parsing from psbt to use new method

* chore(wallet): clean up and fix linting errors

* chore(wallet): edit show unsigned PSBT to hide text but allow copying

* chore(wallet): clean up hermit signing interactions

* build(wallet): poc for ppk spend in caravan w hermit signing

* chore(wallet): revert breaking change

* build(wallet): remove hardcoded psbt and bip - grab and set it from what was uploaded

* chore(wallet): clean up and fix linting errors

* build(wallet): make sure we pass through the unsigned psbt provided

* build(wallet): add PoC for just interfacing with hermit via PSBT

* chore(wallet): simplify hermit psbt interface to bare minimum

* chore(wallet): revert local dev velocity increase

* chore(wallet): playing around

* chore(wallet): poc in place

* refactor(scriptexplorer): delete separate psbt interface

* refactor(scriptexplorer): finish removal of psbt link

* feat(scriptexplorer): proof of concept with network hardcoded

* build(wallet): got hermit signing working for redeem_script and wallet interfaces

* chore(wallet): removing poc code

* chore(address): fix typo

* build(hermit): fix hardcoded testnet network

* chore(hermit): add date to footer yurt canary

* chore(wallet): remove a footer canary

* chore(wallet): uncomment import psbt button

* chore(hermit): remove pubkey importer

* chore(hermit): run eslint and fix imports

* chore(hermit): clarify and cleanup comments

* chore(hermit): swap out hardcoded testnet

* chore(hermit): run prettier

* chore(hermit): update comment for future work

---------

Co-authored-by: Dhruv Bansal <shrub.vandal@gmail.com>
# for free to subscribe to this conversation on GitHub. Already have an account? #.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants