Skip to content

EIP-1837 Explicit transaction fees #1837

@k06a

Description

@k06a
Contributor
EIP: 1837
Title: Explicit transaction fees
Author: CryptoManiacs team: Anton Bukov <k06aaa@gmail.com> and Sergej Kunz <info@deacix.de>
Type: Core
Category: Core
Created: 2019-03-09
Updated: 2019-03-09

This EIP was started as part of ETHParis 2019 hackathon project: https://devpost.com/software/qrtoken

Simple Summary

Let's allow Ethereum users to pay fees over smart contract by sending funds directly to miner via block.coinbase during zero-gas-price transaction execution.

Abstract

We would like to propose a safe way for existing Ethereum nodes to consider transactions with zero gas price to be included in blocks due to their ability to pay fees directly to miners over block.coinbase. This would allow users to pay fees in any desired token, using on-chain exchanges (Bancor Network, Kyber Network, Uniswap, 0x). And would allows IoT devices to avoid problems with topping up their ETH balances and pay fees from the managing smart contract.

Motivation

  1. IoT devices without ETH balance interacting with the managing smart contracts
  2. Ability to send tokens without having any ether, involving paying fees in the token or by using any on-chain exchange

Specification

Ethereum miners should consider zero gas price transactions as one's possible to pay directly to them over smart contract. And since EVM checks of this payments are much harder than cheks gas_limit * gas_price <= sender_balance we have to propose several cases to protect from a cheap flood, so we found 2 approaches at that moment:

  1. On-chain registration of wallets which would like to send this kind of transactions and blacklists of these wallets on nodes, which tries to send free transactions without any payments.

  2. Off-chain HashCash of transactions by tweaking their signatures until Tx with enough number of leading zero bits in hash found.

Activity

changed the title [-]Explicit transaction fees[/-] [+]EIP1837 Explicit transaction fees[/+] on Mar 9, 2019
changed the title [-]EIP1837 Explicit transaction fees[/-] [+]EIP-1837 Explicit transaction fees[/+] on Mar 9, 2019
deacix

deacix commented on Mar 9, 2019

@deacix

Here we go :)

yoav-tabookey

yoav-tabookey commented on Mar 9, 2019

@yoav-tabookey
Contributor

Consider using the gas stations network, which solves the same problem without requiring miners to learn new skills. See EIP 1613 or Google 1-800-ethereum. Already deployed on ropsten if you want to use it during the hackathon.

crazyrabbitLTC

crazyrabbitLTC commented on Mar 9, 2019

@crazyrabbitLTC

I second @yoav-tabookey suggestion, gas stations network can handle this use case pretty effectively.

radotzki

radotzki commented on Mar 9, 2019

@radotzki

And - you can use Portis and get an out-of-the-box solution with the gas stations network:
https://docs.portis.io/#/gas-relay

k06a

k06a commented on Mar 9, 2019

@k06a
ContributorAuthor

@yoav-tabookey @crazyrabbitLTC @radotzki Portis gas station looks working solution but requires smart contracts adoption. I still prefer to modify nodes software to make it possible for every Etheruem user.

deacix

deacix commented on Mar 12, 2019

@deacix

I agree with @k06a! The miner client needs only small changes in the transaction sort function, to allow to pay the fee from smart contract.

gluk64

gluk64 commented on Mar 15, 2019

@gluk64

The necessity to adjust smart contracts is a barrier for adoption. @radotzki, you can onboard more users in Portis if it's not application-specific.

@k06a you should talk to the mining pools first. They are the only people who you need to convince and the number is limited.

deacix

deacix commented on Mar 15, 2019

@deacix

@gluk64 Thank you for the feedback! May you can provide some contacts to the mining pools?

snjax

snjax commented on Mar 15, 2019

@snjax

I think HashCash will not work in general case, because GPU or ASIC miners of attackers will have much more power to produce the hashes.

But if we make hashcash mining process like ethereum mining and bring it to 3rd party (so, there are two reward transfers inside the block: one transfer for block.coinbase, another transfer to hashcash provider address, which is set with additional blinding parameter to get the hash), it seem to be viable.

k06a

k06a commented on Mar 15, 2019

@k06a
ContributorAuthor

@snjax but I think ASIC miners will have not enough incentive to block valid gas-less transactions. Are you talking about generalizing transaction mining by 3rd parties? This would allow wallet owners to mine their client's transactions with some pools cooperation and earn on this.

snjax

snjax commented on Mar 15, 2019

@snjax

@k06a yes, I said about generalizing transaction mining.

Also, there is another way how to provide gas-less transactions: wallet contracts.
dex can setup such contracts to their users. After that, the user can sign some instructions for such a contract and send it to somebody who executes the instructions at the contract.

github-actions

github-actions commented on Nov 20, 2021

@github-actions

There has been no activity on this issue for two months. It will be closed in a week if no further activity occurs. If you would like to move this EIP forward, please respond to any outstanding feedback or add a comment indicating that you have addressed all required feedback and are ready for a review.

github-actions

github-actions commented on Dec 4, 2021

@github-actions

This issue was closed due to inactivity. If you are still pursuing it, feel free to reopen it and respond to any feedback or request a review in a comment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @gluk64@k06a@deacix@snjax@crazyrabbitLTC

        Issue actions

          EIP-1837 Explicit transaction fees · Issue #1837 · ethereum/EIPs