Author

Topic: Recooperating Electrum server op costs the free market way (Read 2757 times)

full member
Activity: 182
Merit: 100
it's pitty that for that long time period is here no discussion about this topic whatsoever.

I'm running full bitcoin node + electrum, of course public, and cost's are not "that small", they are not extremely high but also not so low. In these days you really need at minimum 250gigs SSD and a lots of ram. Building of server with good performance cost around 1-1.5-2btc (in time being is 1btc apprx.400usd). Then some electricity, but that's not main part. Main part is time spend of installing/setting/monitoring/tweaking and so on.

For me, miners got all fees even from electrum tx, but without electrum operators, electrum will die, so why they can't earn some fraction also? /Or to have some advantages in the network, like immediate own tx processing for free or so. I can imagine a lot of possible scenarios how to reward server operators, but design is targeted to miners, which is also pitty because ordinary Joe is not able to mine anything, even tx in these days.

I'm running my server mostly because I want my electrum to be processed by my server, but I also like to serve to public as I want to support the network. That basicly means that I'm not expecting any donations, but frankly it would cheer anybody up as this is sign of understanding what one is doing and it's being appreciated by another one.

K.
legendary
Activity: 1896
Merit: 1353
It's my understanding that heartbleed attacks against clients are at best impractical.

Attacks from server to client are indeed impractical.
When a client attacks a server, it can initiate as many connections as it wants, and it will read a bit of server data on each time.
However, a malicious server cannot do that: it needs to wait until a client connects to it, and then it can perform the attack only once, because this will close the connection.

This makes the attack impractical. However, since it cannot be ruled out, you should still upgrade openssl if you run Electrum from python source.
legendary
Activity: 1302
Merit: 1004
Core dev leaves me neg feedback #abuse #political
It takes 2GB of RAM minimum, and about 50GB of free disk space to house the patricia tree and blockchain.

Electrum's python console although limited to ASCII welcome text is nonetheless an opportunity for server ops to build a relationship with users, and it works to a limited extent. Small donations are coming in.

It may not be the optimal method, however I favor the overall approach since it means all donations are fully consensual with a minimum of UI cruft.

The server has copy of blockchain.  I am just curious. Is this only for reading wallet balances ?  When transaction is sent, can't we just broadcast that to nodes without knowledge of blockchain?
sd
hero member
Activity: 730
Merit: 500
You don't need to trust them, that's the beauty of the thing. They can't steal your coins as you are the only one with your private key(s).

Normally that's the case but the heartbleed bug meant that if you were using Linux and were connected to a malicious server it could read your seed. Most of the time the seed is encrypted but it's not designed to withstand bruteforcing. Then there are the times when you are sending bitcoins and seed is decrypted to sign the transaction.

It's my understanding that heartbleed attacks against clients are at best impractical. Of course paranoia is a good thing and we should all upgrade openssl and regenerate our seeds.

Heartbleed was the worst security hole I've seen for a very long time.
legendary
Activity: 3612
Merit: 1564
You don't need to trust them, that's the beauty of the thing. They can't steal your coins as you are the only one with your private key(s).

Normally that's the case but the heartbleed bug meant that if you were using Linux and were connected to a malicious server it could read your seed. Most of the time the seed is encrypted but it's not designed to withstand bruteforcing. Then there are the times when you are sending bitcoins and seed is decrypted to sign the transaction.
sd
hero member
Activity: 730
Merit: 500
So, I search through the server list and found all these servers with "not very serious" or unknown (to me at least) domain names. I could find only 2 servers with serious sounding names which is worth a donation (unfair judging solely by the domain name). With the current SSL issue with Electrum servers, I don't know which to trust and connect to... Is there a list of trusted Electrum servers?

You don't need to trust them, that's the beauty of the thing. They can't steal your coins as you are the only one with your private key(s). Any server your client lists should work and if it lags or doesn't function at all the client will tell you so.

I run a public server and I'd be very happy to receive donations to help run it but it's not mandatory or even expected. I run the cheapest dedicated server I could find that has good bandwidth and acceptable performance. High availability hardware just isn't needed as these servers store nothing that can't be re-downloaded. The costs involved in running one server are minimal.
newbie
Activity: 19
Merit: 0
Quote
What do you mean by an "auxiliary" menu?

An additional screen not shown by default.

On the server selection screen, maybe a link to a website, keybase.io or github profile, a short blurb, whatever it may be.

This, combined with prompting GUI users some 20% of the time with a straightforward and easily avoided or disabled donation screen.
legendary
Activity: 952
Merit: 1003
--Signature Designs-- http://bit.ly/1Pjbx77
I must admit I have never thought about donating to an Electrum server operator. After reading your post, I think they do deserve donations. You have successfully raised awareness on this issue, well done!

So, I search through the server list and found all these servers with "not very serious" or unknown (to me at least) domain names. I could find only 2 servers with serious sounding names which is worth a donation (unfair judging solely by the domain name). With the current SSL issue with Electrum servers, I don't know which to trust and connect to... Is there a list of trusted Electrum servers?
legendary
Activity: 3612
Merit: 1564
It takes 2GB of RAM minimum, and about 50GB of free disk space to house the patricia tree and blockchain.

Firmly within VPS territory then.

- server ops write a very short "About Me" description, probably < 512 chars
- after Electrum users send coins, declare a >20% chance that an auxiliary menu is displayed if and only if there is a non-zero number of BTC remaining in the wallet less the amount to be sent
- the coins are sent as per usual
- if and only if the menu is to be displayed, it should show the server op's About Me text plus an option to donate, or "No Thanks"
- the autoconnect server menu popup could also feature short bios on server ops. This screen is a missed chance at building relationship with ops

What do you mean by an "auxiliary" menu? Do you mean a contextual menu that shows up when you right click or a menu in the top menu bar? Does the menu disappear when you restart the client?
newbie
Activity: 19
Merit: 0
It takes 2GB of RAM minimum, and about 50GB of free disk space to house the patricia tree and blockchain.

Electrum's python console although limited to ASCII welcome text is nonetheless an opportunity for server ops to build a relationship with users, and it works to a limited extent. Small donations are coming in.

It may not be the optimal method, however I favor the overall approach since it means all donations are fully consensual with a minimum of UI cruft.
legendary
Activity: 3612
Merit: 1564
Public Electrum servers are run by volunteers. Volunteer server operators require modern hardware, which is costly to procure and maintain.

What kind of hardware is required for a typical server? My understanding was that most electrum servers were rented VPS running on a host node in some datacenter somewhere. Are you telling me people are running bare metal servers in their own premises?

Quote
In my opinion, operating Electrum servers would be more popular to do if there was a higher chance of receiving BTC donations for doing so.

Yes, that's true but lets be honest here. We now have more servers than we did a year ago. This is partly because more people have gotten into bitcoin and partly because its more affordable to run them because hosting keeps getting cheaper and cheaper as time goes by.

Quote
- server ops write a very short "About Me" description, probably < 512 chars
- after Electrum users send coins, declare a >20% chance that an auxiliary menu is displayed if and only if there is a non-zero number of BTC remaining in the wallet less the amount to be sent
- the coins are sent as per usual
- if and only if the menu is to be displayed, it should show the server op's About Me text plus an option to donate, or "No Thanks"

This is great because you get to pitch your case. But I think if you made a small donation a default for every send transaction then that would be even easier for users and would net you more donations. Add a second text field under the fee text field where you can enter a suitable donation to the server operator. There should be a ? button so if anyone is curious what this is they can click on that (you can add your pitch here). Most users are going to leave the value in this field at default which can be 0.0001 or greater.

The question then becomes whether these dust like amounts can be spent by server operators? It should be possible now that default transaction fees in bitcoin core have been reduced to 0.00001. Using compressed addresses will also help.

The alternative would be to implement what multibit is doing:

https://multibit.org/blog/2014/04/11/multibit-hd-brit.html

The problem with the above is that one central server can uniquely identify every wallet out there using the britwalletid.
newbie
Activity: 19
Merit: 0
Public Electrum servers are run by volunteers. Volunteer server operators require modern hardware, which is costly to procure and maintain. In my opinion, operating Electrum servers would be more popular to do if there was a higher chance of receiving BTC donations for doing so.

Quote
https://blockchain.info/address/1Lhxa6VfBwFbVN2ovZEYfCobZGNfefntG7
one lone donation in February
* ovidiusoft ([email protected]) has joined #electrum
nobody reads the console and thinks about donating
perhaps the electrum project should host some sort of distributed donation pool for their server hosts
and make it a bit more prominent in the client
toastee: yeah but then how do you distribute funds? based on the servers reporting their activity (easily faked)?
mmm true.
fluffypony: oops... that's not a donation... I accidentally reused an address
mr_burdell: lol
well there you go
haha
so not even a single donation
Sad
even Eagle[TM]'s server
https://blockchain.info/address/1Mn8D4Esq6kyhQTG5debML3uqXp9JqeTQN
0.011 BTC in donations
it's a joke

I would like to open the conversation in regards to improving the Electrum server op donation system. I only advocate UX improvements. I don't think there is all that many technical changes required. I think it would be realistic to tackle this with minimal UX friction, and without adding any mandatory fees to Electrum.

I think the optimal solution would be voluntary. Voluntary donations to Electrum server ops should be easier to do, and more compelling to do, so as to make them happen in larger amounts and with higher frequency.

Today, it's quite hard to donate to server ops, even if you want to. There's no official UI flow for donating to server ops, and it's really not something that is directly supported in Electrum beyond it being a wallet which is capable of sending donations. Like I've outlined with Electrum plugins, few understand that Electrum plugins exist, and few know that Electrum server ops exist and are real people. If they do know servers exist, they don't know who is running them, and they don't have an easy way to donate.

Users can't tell one server op from another without expending effort on research. Or they just aren't aware the client-server op relationship exists. Server ops are given ASCII text on a console window but most users don't venture there, and if on the off chance they do venture there, it takes effort to track down the donation address and subsequently make the donation. This isn't what mainstream users are used to. It results in very low conversion rates on donations when they are intended, and very low chance of donations happening in the first place.

In theory, since Electrum servers depend on Bitcoin full nodes, a solution that increases Electrum server op donations could have the indirect benefit of making Bitcoin full nodes more profitable to run. Here is the one option I see working to this end:

- server ops write a very short "About Me" description, probably < 512 chars
- after Electrum users send coins, declare a >20% chance that an auxiliary menu is displayed if and only if there is a non-zero number of BTC remaining in the wallet less the amount to be sent
- the coins are sent as per usual
- if and only if the menu is to be displayed, it should show the server op's About Me text plus an option to donate, or "No Thanks"
- the autoconnect server menu popup could also feature short bios on server ops. This screen is a missed chance at building relationship with ops

Our in-house UX expert may have some ideas here, too.

The overall goal is to give server ops a better chance at building the relationship with Electrum users.

Since it's possible to select a specific Electrum server to rely upon, users, after learning more about server ops, will choose favorites and be more likely to donate to their favorites.

To conclude, the only way I see things improving for server ops is if we make a concerted effort to have users build relationships with server ops and then prompt them to act upon the increased trust and credibility.  Done right, it could end up making it much more profitable to run full nodes and impose few new technical changes of Electrum client.
Jump to: