Skip to content
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

Known pools using 2.0.0 #10

Open
kaykurokawa opened this issue Nov 10, 2019 · 12 comments
Open

Known pools using 2.0.0 #10

kaykurokawa opened this issue Nov 10, 2019 · 12 comments

Comments

@kaykurokawa
Copy link

It would be good if there was a list of known pools using EthereumStratum-2.0.0.

As far as I know, there are three different implementations of stratum out there in the wild for ethereum, but none seems to be using this protocol.

@lookfirst
Copy link
Contributor

None

@xiaods
Copy link

xiaods commented Mar 4, 2020

this EIP is out of date for current status. please reference new stratum proposal by another pool.
https://stratumprotocol.org/

@lookfirst
Copy link
Contributor

@xiaods That is for bitcoin, not eth. The naming conflicts are unfortunate.

@xiaods
Copy link

xiaods commented Mar 4, 2020

@lookfirst thanks for your reminder. i suggest upgrade the EthereumStratum definition to use binary protocol like the bitcoin stratum protocol v2.

@lookfirst
Copy link
Contributor

Why?

@xiaods
Copy link

xiaods commented Mar 5, 2020

Technical Description
The protocol has fixed message framing and is precisely defined, which means that there isn’t room for different interpretations of Stratum V2 like there was with V1. The specific message framing structure can be found in the ‘Framing’ section of the BIP.

Motivation & Impact
The original stratum protocol uses JSON, which has a very poor ratio between message payload size and actual information transmitted. Making Stratum V2 a binary protocol yields far better data efficiency, and the saved bandwidth can be used for more frequent submits to further reduce hashrate variance.

@xiaods
Copy link

xiaods commented Mar 5, 2020

Man-in-the-middle attack prevention
To ensure the confidentiality and integrity of sensitive data, Stratum V2 uses a robust encryption scheme that prevents data from being deciphered by potentially malicious third parties. This protects miners from several attacks that are possible in V1, including hashrate hijacking in which a third party intercepts communication between a miner and pool and takes credit (i.e. steals payouts) for the work the miner has done.

@StefanOberhumer
Copy link
Collaborator

  • We had also some binary implementation ready but our motivation sank as there was nearly no feedback about this spec.

@StefanOberhumer
Copy link
Collaborator

StefanOberhumer commented Mar 5, 2020

  • It's not part of this protocol level securing messages. Therefore the next layer (SSL) should be used
    If you use V1 or V2 with a SSL-enabled pool (knowing ethermine.org, nanopool.org) no man-in-the-middle attack is/should be possible

@xiaods
Copy link

xiaods commented Mar 5, 2020

@StefanOberhumer thanks for your clarify.

@AndreaLanfranchi
Copy link
Owner

@xiaods
Thank you for your suggestion but this spec is already named EthereumStratum/2.0,0

@xiaods
Copy link

xiaods commented Mar 5, 2020

@AndreaLanfranchi got it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants