-
-
Notifications
You must be signed in to change notification settings - Fork 243
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
Bitcoin full node via Electrum Server 🌕 #2737
Comments
You can already use custom node when you run Blockbook. This issue is about possibility to connect to Bitcoin Core directly (or at least to Electrum server, which has lower system requirements than Blockbook) |
Do you have a high level idea on how this will work? specifically, I am running a full node on a raspi with electRS and use electrum desktop as my wallet, connected to my full node. I'd like to use Trezor Suite instead and I'm hoping I can keep the same full node setup and just point Trezor Suite at it once this is implemented. |
We are evaluating this and it indeed seems that connecting to Electrum API is probably the best way forward as this is what most of people have in mind when they say "full node". Electrum APIs in JS: |
@prusnak for what it's worth, I'd be interested in integration with bitcoin core more than electrum. |
@prusnak feel free to check my Tech Spec draft in the original post. |
Progress does not have to be a progress bar with percent. Progress can be shown also as a rotating wheel or just a text "please wait, I am doing something" :-) |
We have discussed next steps with @marekrjpolak in more detail: Product (@matejzak):
Code (@marekrjpolak):
.. and review obviously. |
FYI regarding Electrum servers Taproot should be no-op because the Electrum protocol already hashes whole |
Btw some numbers from testing this on the PR (commit 5348af3) on my "small testing seed" (cca 10 transactions):
|
This comment has been minimized.
This comment has been minimized.
To recap this: we will keep communicating with Blockbook for fiat rates and we will extend this blockbook REST endpoint with batching option. @martinboehm will look into it, it should be an easy one :). |
Some product work still needs to be done. |
Follow-up issues are tracked in separate Milestone |
Wooohooo, great job everyone 🎉 🎉 🎉 . |
Design: to be added
Spec: Notion
Tech Spec
Main objective
Add support into blockchain-link for Electrum Server. This way the user will have the ability to opt-out from our Blockbook backends and set Electrum server address which they may have running on their personal Bitcoin node. Note that we will support Bitcoin only (no altcoins).
Blockchain-link
As mentioned the main part of this task is to add a new backend to blockchain-link. We will either add a new dependency that @prusnak listed below or write it ourselves. I have a small preference to write it ourselves because a) we want to be careful about adding new dependencies b) the projects do not seem very well maintained. I believe the best approach is to get inspired heavily by the libs (if the license allows it) but have it in the blockchain-link directly. But the decision is yours.
CLI option
We should also not forget about adding a CLI option to launch Suite against the Electrum server directly, otherwise some info might leak to our blockbooks once Suite is started. This needs to be discussed as it might not be needed after #3729?
Modify Bitcoin settings
User wishing to set their own Electrum server will go to Settings -> Coins -> Bitcoin's Advanced settings where they will be able to replace Blockbook URL with an Electrum server. @matejzak will prepare design for this.
Useful links
electrum.blockstream.info:50002:s
. If you would like to run Electrum against such server you can do that by runningelectrum --oneserver --server="electrum.blockstream.info:50002:s"
.Next steps
The text was updated successfully, but these errors were encountered: