An Electrum server using libbitcoin
1 message, 9 Apr 2021. Started by Ivan J..
Ivan J.
Hi.
I've been working on an Electrum server implementation that uses zmq and libbitcoin as its backend. I wanted to use the Electrum wallet with my libbitcoin server and this makes it possible now with (unfinished) libbitcoin v4.
The code is here: https://github.com/parazyd/obelisk (Yes, it's named Obelisk because of historical reasons :p)
As the Electrum/ElectrumX protocol is getting some new stuff in protocol version 1.5, I will keep tracking the protocol and implement it in Obelisk as it comes.
Eventually, the end-goal is to merge Obelisk into Electrum and simply use libbitcoin public (or self-hosted) servers directly, without the need of a boilerplate protocol/server between a client and a daemon. In current Electrum git, this seems relatively simple to do (and I personally already have done about 70% of it on my local code repository), but the problem is that it's a breaking change and replaces the old protocol, which invalidates all old servers if/when this change happens. However, I don't doubt that removing the boilerplate and querying a libbitcoin server directly is a bad idea at all. I'll see if I can make upstream progress on this once I get feedback.
In general, regarding Obelisk I'd appreciate some feedback, review, and a bit of help with certain TODOs in the code. The entire codebase is around 1000 lines of Python 3 with no external dependecies besides pyzmq.
Thanks, Ivan