Bitcoin Forum

Alternate cryptocurrencies => Altcoin Discussion => Topic started by: BlackHatCoiner on February 04, 2021, 08:53:44 PM



Title: [General] Electrum-LTC
Post by: BlackHatCoiner on February 04, 2021, 08:53:44 PM
Website: https://electrum-ltc.org/

Github: https://github.com/pooler/electrum-ltc

I would like to create this thread, because at this time I'll be busy with electrum-ltc that is a lightweight litecoin client and since there is no board   and topic, here it is. (I don't think that it should be created on Electrum (https://bitcointalk.org/index.php?board=98.0))

There is no point of having a board, because this wallet doesn't require that much discussion, it's a small project. Electrum is in my opinion the simplest, user-friendly, non-custodian wallet out there. Unfortunately, not all cryptocurrencies that have forked the Bitcoin Core's source code have an SPV like electrum. Actually, only litecoin has its own electrum. Despite the fact that I would like to have a dogecoin electrum, I see the entire thing more generally. I took a look in the code, but I haven't worked with python in the past and it seems hard for me, so I would like to make some questions to the experts. Whether they are forum ones, python ones or even the developers/contributors of electrum.

  • Does electrum broadcast the transaction to bitcoin nodes directly?
  • Is there a handshake once you broadcast the transaction? I mean, can I simply change the default IP addresses of the litecoin nodes so I can put dogecoin nodes? Is it that simple?
  • What other things do I have to change excluding the address' prefix?


Title: Re: [General] Electrum-LTC
Post by: pooya87 on February 05, 2021, 04:49:53 AM
If you want to learn more about how the Electrum communication protocol works you can read the documentation here: https://electrumx.readthedocs.io/en/latest/protocol.html
Each Electrum client connects to a specialized bitcoin (and alternatively the altcoin) full node over SSL and requests block headers, transction history, etc. These full nodes are storing an additional index on top of their database to help them quickly find what the clients request.
You can't just use one client for another network (eg. using bitcoin one on litecoin chain) because a lot of things have to change not just the IP address.


Title: Re: [General] Electrum-LTC
Post by: NeuroticFish on February 05, 2021, 09:28:54 AM
it's a small project

Keep in mind that Electrum "discuss" with its own servers (or nodes), hence you'll probably have to also adapt ElectrumX (or electrum-server or similar) too and the project will no longer be so small.
Also in order for this to work, somebody will have to host those servers...
See https://github.com/spesmilo/electrumx

Does electrum broadcast the transaction to bitcoin nodes directly?

Nope, it has its server.

Is there a handshake once you broadcast the transaction? I mean, can I simply change the default IP addresses of the litecoin nodes so I can put dogecoin nodes? Is it that simple?

Probably ElectrumX will be a bit different too.

What other things do I have to change excluding the address' prefix?

You'll probably have to distinguish between the networks and avoid LTC/DOGE signal themselves as BTC ElectrumX servers.



Although I am against BCash existence, this time it may prove itself helpful for you, since it has its own Electrum fork. https://github.com/Electron-Cash/Electron-Cash


Title: Re: [General] Electrum-LTC
Post by: HCP on February 05, 2021, 09:56:46 AM
Actually, only litecoin has its own electrum.
Nope... There were also Electrum forks for:

- Bitcoin Cash (Electron Cash)
- Bitcoin SV (ElectrumSV)
- Vertcoin (Electrum-vertcoin)
- Bitcoin Gold (ElectrumG)
- Bitcoin Diamond (Electrum-BCD)

And others that I'm either forgetting or that I have not seen mentioned... In fact, if you look at the "old" ElectrumX code (before the author drank the koolaid and decided that BSV was all that and a packet of crisps)... you can see all the various altcoins that it supported.

You'll be please to note that DOGE coin is in that list: https://github.com/kyuupichan/electrumx/blob/eac2b7db8cb80394e7bc0e40696ab2dc8caed051/electrumx/lib/coins.py#L1151

So, that's one less thing to worry about if you want an "ElectrumDOGE" ;)


Title: Re: [General] Electrum-LTC
Post by: pooya87 on February 06, 2021, 05:24:47 AM
And others that I'm either forgetting or that I have not seen mentioned
There is a topic about it here with some additional ones, mostly unpopular though: https://bitcointalk.org/index.php?topic=4487291.0

Quote
... In fact, if you look at the "old" ElectrumX code (before the author drank the koolaid and decided that BSV was all that and a packet of crisps)... you can see all the various altcoins that it supported.
Do you think I Should stop posting the ElectrumX doc then? Is there any new documentation link?


Title: Re: [General] Electrum-LTC
Post by: HCP on February 06, 2021, 10:28:11 PM
There is a topic about it here with some additional ones, mostly unpopular though: https://bitcointalk.org/index.php?topic=4487291.0
Nice find... I knew I had seen a thread like that years ago... but couldn't be bothered looking it up! :P


Quote
Do you think I Should stop posting the ElectrumX doc then? Is there any new documentation link?
The "spesmilo" fork by the Electrum devs (https://github.com/spesmilo/electrumx) is probably a good start: https://electrumx-spesmilo.readthedocs.io/en/latest/

It still contains all the dead "Altcoin" code that was removed from ElectrumX