Bitcoin Forum
November 27, 2025, 09:49:12 AM *
News: Latest Bitcoin Core release: 30.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Electrum's wallet protocol isn't rich enough?  (Read 153 times)
NotATether (OP)
Legendary
*
Offline Offline

Activity: 2170
Merit: 9108


Trêvoid █ No KYC-AML Crypto Swaps


View Profile WWW
June 24, 2021, 03:09:00 PM
 #1

While having a discussion on Reddit about whether a managed full node service is a profitable business, someone told me that there's a need for better electrum servers, which I believe would have a greater number of wallet API functions.

Naturally, the API is provided by the electrum server you're connecting to, which is usually running ElectrumX. It's possible to fork it to make an API that's not 100% compatible with ElectrumX which would be the plan here, along with a plugin that utilizes these methods for the GUI.

This is ElectrumX's protocol documentation: https://electrumx.readthedocs.io/en/latest/protocol-methods.html I don't use the console too much so I am not really sure what people are missing from this API, but what would be methods you guys want to see in an ElectrumX clone?

.
 betpanda.io 
 
ANONYMOUS & INSTANT
.......ONLINE CASINO.......
▄███████████████████████▄
█████████████████████████
█████████████████████████
████████▀▀▀▀▀▀███████████
████▀▀▀█░▀▀░░░░░░▄███████
████░▄▄█▄▄▀█▄░░░█▄░▄█████
████▀██▀░▄█▀░░░█▀░░██████
██████░░▄▀░░░░▐░░░▐█▄████
██████▄▄█░▀▀░░░█▄▄▄██████
█████████████████████████
█████████████████████████
█████████████████████████
▀███████████████████████▀
▄███████████████████████▄
█████████████████████████
██████████▀░░░▀██████████
█████████░░░░░░░█████████
███████░░░░░░░░░███████
████████░░░░░░░░░████████
█████████▄░░░░░▄█████████
███████▀▀▀█▄▄▄█▀▀▀███████
██████░░░░▄░▄░▄░░░░██████
██████░░░░█▀█▀█░░░░██████
██████░░░░░░░░░░░░░██████
█████████████████████████
▀███████████████████████▀
▄███████████████████████▄
█████████████████████████
██████████▀▀▀▀▀▀█████████
███████▀▀░░░░░░░░░███████
██████░░░░░░░░░░░░▀█████
██████░░░░░░░░░░░░░░▀████
██████▄░░░░░░▄▄░░░░░░████
████▀▀▀▀▀░░░█░░█░░░░░████
████░▀░▀░░░░░▀▀░░░░░█████
████░▀░▀▄░░░░░░▄▄▄▄██████
█████░▀░█████████████████
█████████████████████████
▀███████████████████████▀
.
SLOT GAMES
....SPORTS....
LIVE CASINO
▄░░▄█▄░░▄
▀█▀░▄▀▄░▀█▀
▄▄▄▄▄▄▄▄▄▄▄   
█████████████
█░░░░░░░░░░░█
█████████████

▄▀▄██▀▄▄▄▄▄███▄▀▄
▄▀▄█████▄██▄▀▄
▄▀▄▐▐▌▐▐▌▄▀▄
▄▀▄█▀██▀█▄▀▄
▄▀▄█████▀▄████▄▀▄
▀▄▀▄▀█████▀▄▀▄▀
▀▀▀▄█▀█▄▀▄▀▀

Regional Sponsor of the
Argentina National Team
NeuroticFish
Legendary
*
Offline Offline

Activity: 4242
Merit: 6952


Looking for campaign manager? Contact icopress!


View Profile
June 24, 2021, 05:35:19 PM
 #2

I don't know if the restrictions are in ElectrumX or Electrum itself (I didn't use ElectrumX directly) but two things may be:
1. Afaik, if an address has a large number of transactions, they are not retrieved. In some rare cases it may be good to "lift" the restriction or at least return the last few and the current balance.
2. Well.. read this thread about OP_RETURN in Electrum console/RPC

However, I don't need them myself, but maybe they give you or others some ideas.

██████▄███▄▄█████████████
██████
████████▄▄█████████
██████
█████▀▀█████▄██████
██████
█████████▀▀████████
██████
████████▄████▀█████
██████
████▄▄█████▀███████
██████
██████████████████
██████
████▀▀████▄▄███████
██████
████████▀████▄█████
██████
█████████▄▄████████
██████
█████▄▄█████▀██████
██████
████████▀▀█████████
██████
▀███▀▀█████████████

.BTCPAY.
██████
██
██







██
██
██████

FREE AND OPEN SOURCE.
NO THIRD PARTIES. PRIVATE,
SECURE & SELF-HOSTED!
██████
██
██







██
██
██████
██████
██
██







██
██
██████

███████

░░░░▄▄█████▄▄███████
░░█████▀█▀█████
████▀▀▀█████
█████████████████
████████▀▀██▀████
█████████████████
████▄▄▄▄████
░░█████▄█▄█████▄▄
░░░░▀▀█████▀▀
░░░░▀▀█████▀▀
ACCEPT BITCOIN PAYMENTS

...WITH 0% FEES...
██████
██
██







██
██
██████
ranochigo
Legendary
*
Offline Offline

Activity: 3178
Merit: 4511


View Profile
June 24, 2021, 10:24:47 PM
Last edit: June 25, 2021, 02:05:22 AM by ranochigo
 #3

I don't know if the restrictions are in ElectrumX or Electrum itself (I didn't use ElectrumX directly) but two things may be:
1. Afaik, if an address has a large number of transactions, they are not retrieved. In some rare cases it may be good to "lift" the restriction or at least return the last few and the current balance.
The Electrum server. It is done intentionally to avoid overloading them by including a cap on the addresses that can be queried by individual servers.
There is currently a PR to include scripts in payto/paytomany RPC.
HCP
Legendary
*
Offline Offline

Activity: 2086
Merit: 4382

<insert witty quote here>


View Profile
June 25, 2021, 05:25:55 AM
 #4

1. Afaik, if an address has a large number of transactions, they are not retrieved. In some rare cases it may be good to "lift" the restriction or at least return the last few and the current balance.
It's possible to work around that restriction based on the configuration of the ElectrumX server... it's basically a "protection" to prevent servers from being DDoS'd (accidentally?) by requesting huge amounts of data. Refer: https://electrumx-spesmilo.readthedocs.io/en/latest/environment.html#resource-usage-limits

As for only returning partial data... I don't think that is a very wise decision. You should return "all" or "none"... giving a partial result could result in all sorts of issues and would likely result in the end user getting very confused.

Or... if the return set is so massive because a particular address has hundreds/thousands of addresses and it would cause issues, the server should really generate a "paged" result set and allow the client to request specific pages or subsets in smaller blocks.

█████████████████████████
████▐██▄█████████████████
████▐██████▄▄▄███████████
████▐████▄█████▄▄████████
████▐█████▀▀▀▀▀███▄██████
████▐███▀████████████████
████▐█████████▄█████▌████
████▐██▌█████▀██████▌████
████▐██████████▀████▌████
█████▀███▄█████▄███▀█████
███████▀█████████▀███████
██████████▀███▀██████████
█████████████████████████
.
BC.GAME
▄▄░░░▄▀▀▄████████
▄▄▄
██████████████
█████░░▄▄▄▄████████
▄▄▄▄▄▄▄▄▄██▄██████▄▄▄▄████
▄███▄█▄▄██████████▄████▄████
███████████████████████████▀███
▀████▄██▄██▄░░░░▄████████████
▀▀▀█████▄▄▄███████████▀██
███████████████████▀██
███████████████████▄██
▄███████████████████▄██
█████████████████████▀██
██████████████████████▄
.
..CASINO....SPORTS....RACING..
█░░░░░░█░░░░░░█
▀███▀░░▀███▀░░▀███▀
▀░▀░░░░▀░▀░░░░▀░▀
░░░░░░░░░░░░
▀██████████
░░░░░███░░░░
░░█░░░███▄█░░░
░░██▌░░███░▀░░██▌
░█░██░░███░░░█░██
░█▀▀▀█▌░███░░█▀▀▀█▌
▄█▄░░░██▄███▄█▄░░▄██▄
▄███▄
░░░░▀██▄▀


▄▄████▄▄
▄███▀▀███▄
██████████
▀███▄░▄██▀
▄▄████▄▄░▀█▀▄██▀▄▄████▄▄
▄███▀▀▀████▄▄██▀▄███▀▀███▄
███████▄▄▀▀████▄▄▀▀███████
▀███▄▄███▀░░░▀▀████▄▄▄███▀
▀▀████▀▀████████▀▀████▀▀
NeuroticFish
Legendary
*
Offline Offline

Activity: 4242
Merit: 6952


Looking for campaign manager? Contact icopress!


View Profile
June 25, 2021, 06:37:19 AM
 #5

the server should really generate a "paged" result set and allow the client to request specific pages or subsets in smaller blocks.

Hmm.. you're right! This sounds a lot better, just unfortunately for some reason this idea didn't cross my mind yesterday  Smiley

██████▄███▄▄█████████████
██████
████████▄▄█████████
██████
█████▀▀█████▄██████
██████
█████████▀▀████████
██████
████████▄████▀█████
██████
████▄▄█████▀███████
██████
██████████████████
██████
████▀▀████▄▄███████
██████
████████▀████▄█████
██████
█████████▄▄████████
██████
█████▄▄█████▀██████
██████
████████▀▀█████████
██████
▀███▀▀█████████████

.BTCPAY.
██████
██
██







██
██
██████

FREE AND OPEN SOURCE.
NO THIRD PARTIES. PRIVATE,
SECURE & SELF-HOSTED!
██████
██
██







██
██
██████
██████
██
██







██
██
██████

███████

░░░░▄▄█████▄▄███████
░░█████▀█▀█████
████▀▀▀█████
█████████████████
████████▀▀██▀████
█████████████████
████▄▄▄▄████
░░█████▄█▄█████▄▄
░░░░▀▀█████▀▀
░░░░▀▀█████▀▀
ACCEPT BITCOIN PAYMENTS

...WITH 0% FEES...
██████
██
██







██
██
██████
ABCbits
Legendary
*
Offline Offline

Activity: 3444
Merit: 9390



View Profile
June 25, 2021, 09:50:56 AM
Merited by NotATether (1)
 #6

Electrum protocol is rich enough for regular user. But for advance user, API which return statistic data would be useful. Few example,
1. Average block time within last X blocks (such as 36, 144 or 2016).
2. Total transaction size on mempool.

NotATether (OP)
Legendary
*
Offline Offline

Activity: 2170
Merit: 9108


Trêvoid █ No KYC-AML Crypto Swaps


View Profile WWW
June 25, 2021, 11:34:11 AM
 #7

1. Afaik, if an address has a large number of transactions, they are not retrieved. In some rare cases it may be good to "lift" the restriction or at least return the last few and the current balance.

Raising limitations isn't really what I'm looking for, then you'll just have a ton of transactions that you have to data-mine. And paid block explorer APIs can fetch addresses with several transactions without problems.

Electrum protocol is rich enough for regular user. But for advance user, API which return statistic data would be useful. Few example,
1. Average block time within last X blocks (such as 36, 144 or 2016).
2. Total transaction size on mempool.

Yeah this is exactly what I mean. Normal users who just want to send and receive money don't need any of the more advanced queries that power users and businesses could use for building services on top of them.

.
 betpanda.io 
 
ANONYMOUS & INSTANT
.......ONLINE CASINO.......
▄███████████████████████▄
█████████████████████████
█████████████████████████
████████▀▀▀▀▀▀███████████
████▀▀▀█░▀▀░░░░░░▄███████
████░▄▄█▄▄▀█▄░░░█▄░▄█████
████▀██▀░▄█▀░░░█▀░░██████
██████░░▄▀░░░░▐░░░▐█▄████
██████▄▄█░▀▀░░░█▄▄▄██████
█████████████████████████
█████████████████████████
█████████████████████████
▀███████████████████████▀
▄███████████████████████▄
█████████████████████████
██████████▀░░░▀██████████
█████████░░░░░░░█████████
███████░░░░░░░░░███████
████████░░░░░░░░░████████
█████████▄░░░░░▄█████████
███████▀▀▀█▄▄▄█▀▀▀███████
██████░░░░▄░▄░▄░░░░██████
██████░░░░█▀█▀█░░░░██████
██████░░░░░░░░░░░░░██████
█████████████████████████
▀███████████████████████▀
▄███████████████████████▄
█████████████████████████
██████████▀▀▀▀▀▀█████████
███████▀▀░░░░░░░░░███████
██████░░░░░░░░░░░░▀█████
██████░░░░░░░░░░░░░░▀████
██████▄░░░░░░▄▄░░░░░░████
████▀▀▀▀▀░░░█░░█░░░░░████
████░▀░▀░░░░░▀▀░░░░░█████
████░▀░▀▄░░░░░░▄▄▄▄██████
█████░▀░█████████████████
█████████████████████████
▀███████████████████████▀
.
SLOT GAMES
....SPORTS....
LIVE CASINO
▄░░▄█▄░░▄
▀█▀░▄▀▄░▀█▀
▄▄▄▄▄▄▄▄▄▄▄   
█████████████
█░░░░░░░░░░░█
█████████████

▄▀▄██▀▄▄▄▄▄███▄▀▄
▄▀▄█████▄██▄▀▄
▄▀▄▐▐▌▐▐▌▄▀▄
▄▀▄█▀██▀█▄▀▄
▄▀▄█████▀▄████▄▀▄
▀▄▀▄▀█████▀▄▀▄▀
▀▀▀▄█▀█▄▀▄▀▀

Regional Sponsor of the
Argentina National Team
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!