在 Ethereum dapp 中,任何涉及状态改动的交易都需要消耗 Gas,这限制了很多没有钱包或者 ETH 的用户对 dapp 的采用。

理念

让非以太用户能够访问智能合约 (如dapps),允许合约接受“接听来电”,即为来电付费。

让合约在可公开访问的渠道上“监听”(例如web URL)。鼓励节点运行 “加油站” 来促进这一点。不需要网络更改,只需最小的契约更改。

概述

目前,与dapps通信需要支付 ETH 的 Gas 费用,这限制了 Ethereum 用户对 dapp 的使用。

因此,合约所有者可能希望支付 Gas 以增加用户获取,或者让他们的用户用法定货币支付 Gas。

或者,第三方可能希望补贴某些合约的 Gas 成本。

类似 EIP-1077 中描述的解决方案可以允许来自没有 ETH 的地址的事务(为合约调用转发 Gas)。

加油站网络是遵循 EIP-1077 的,它通过鼓励节点运行加油站来解决这个问题,在加油站,没有 Gas 的交易可以“增加燃料”。

该网络由一个被所有参与 dapp 的合约所信任的单一公共合约和一个分散的中继节点(加油站)网络组成,这些节点被激励去监听 web 或 whisper 等非以太接口,为交易付费,并从该合约中获得补偿。

任何人都可以验证受信任的契约,否则系统就是不可信的。

只要有至少一家诚实的加油站,加油站就不能审查交易。

破坏这一制度的企图可以被证明是连锁的,违反者将受到惩罚。

EIP-1613 动机

  1. 提高用户对合约的采用

    消除用户获取 ETH 的麻烦。交易仍由 ETH 支付,但费用可由 dapp 承担或由用户通过其他方式支付。

    消除与区块链直接交互的需要,同时保持分散和审查阻力。契约可以在多个公共通道上“侦听”,用户可以通过通用协议与契约进行交互,即使在严格的环境中,通常也允许使用通用协议。

  2. Ethereum 节点在不需要采矿设备的情况下获得收入来源。整个网络都受益于拥有更多的节点。

  3. 不需要修改协议。加油站网络通过智能协议自组织,dapps 通过实现接口与网络交互。

具体

https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1613.md#specification

原理

https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1613.md#rationale

向后兼容性

加油站网络是作为智能契约和外部实体实现的,不需要任何网络更改。

Dapp 添加加油站将保持向后兼容已有的应用和用户。添加的方法应用于现有的方法之上,因此不需要对现有的应用程序进行更改。

实现 GSN 兼容的合约

https://docs.openzeppelin.com/contracts/2.x/gsn

Refer:Gas Station Network

Link:https://www.cnblogs.com/farwish/p/12532659.html

[Ethereum] Gas Station Network (GSN) eip-1613 与 Gas Relay Network (GRN) eip-1077的更多相关文章

  1. [LeetCode] Gas Station 加油站问题

    There are N gas stations along a circular route, where the amount of gas at station i is gas[i]. You ...

  2. PAT 1072. Gas Station (30)

    A gas station has to be built at such a location that the minimum distance between the station and a ...

  3. Leetcode 134 Gas Station

    There are N gas stations along a circular route, where the amount of gas at station i is gas[i]. You ...

  4. 【leetcode】Gas Station

    Gas Station There are N gas stations along a circular route, where the amount of gas at station i is ...

  5. [LeetCode] Gas Station

    Recording my thought on the go might be fun when I check back later, so this kinda blog has no inten ...

  6. 20. Candy && Gas Station

    Candy There are N children standing in a line. Each child is assigned a rating value. You are giving ...

  7. LeetCode——Gas Station

    There are N gas stations along a circular route, where the amount of gas at station i is gas[i]. You ...

  8. Gas Station

    Description: There are N gas stations along a circular route, where the amount of gas at station i i ...

  9. Gas Station [LeetCode]

    There are N gas stations along a circular route, where the amount of gas at station i is gas[i]. You ...

  10. 【LeetCode OJ】Gas Station

    Problem link: http://oj.leetcode.com/problems/gas-station/ We can solve this problem by following al ...

随机推荐

  1. JavaScript自定义响应式对象

    1. 引言 这里的响应式对象是指JavaScript中的变量与HTML中的内容相绑定,变量更新则内容更新,也叫数据绑定 此时不得不说MVVM架构,MVVM架构思想的实现步骤如下: 模型(Model): ...

  2. 记录--uni-app中安卓包检查更新、新版本下载、下载进度条显示功能实现

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 需求描述 如果想要做一个app的话,可以有很多种选择方案,uni-app是其中的一个性价比高一些(坑多一些)的方案.本文记录一下,uni- ...

  3. 记录--用JS轻松实现一个录音、录像、录屏的工具库

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前言 最近项目遇到一个要在网页上录音的需求,在一波搜索后,发现了 react-media-recorder 这个库.今天就跟大家一起研究一 ...

  4. SpringCloud微服务集成Dubbo

    1.Dubbo介绍 Apache Dubbo 是一款易用.高性能的 WEB 和 RPC 框架,同时为构建企业级微服务提供服务发现.流量治理.可观测.认证鉴权等能力.工具与最佳实践.用于解决微服务架构下 ...

  5. KingbaseES Json 系列二:Json对象函数

    KingbaseES Json 系列二--Json对象函数(JSONB_BUILD_OBJECT,JSONB_OBJECT,JSON_BUILD_OBJECT,JSON_OBJECT) JSON 数据 ...

  6. 简单c++构建第一人称

    本文内容为UE4.27的文档教程 GameMode确定 新建的项目会自动生成GameMode,如果有更改,而不是使用默认的GameMode类,就需要在引擎的设置中更改 角色的实现 前后左右移动 //前 ...

  7. PicGo图床配置github仓库上传typora图片

    (前提是已注册github并新建一个仓库作为你上传图片的位置) 首先在PicGo官网下载软件:https://picgo.github.io/PicGo-Doc/zh/ 打开typora,找到偏好设置 ...

  8. 【WCH以太网接口系列芯片】CH9121\20的使用和测试

    本篇文章将介绍沁恒微电子的以太网转接芯片CH9121(CH9120和CH9121使用上没有区别,注意配置工具不一样,可以在沁恒微电子官网自行下载测试),该芯片支持网口和串口相互透传,可以通过串口AT指 ...

  9. #费马小定理#JZOJ 4015 数列

    题目 给出\(x_n=(ax_{n-1}^2+bx_{n-1}+c)\bmod m\) 给出\(x_0.a,b,c,n,m\),求\(x_n\) \(\text{Subtask 1:}n\leq 10 ...

  10. #分治#JZOJ 4211 送你一颗圣诞树

    题目 有\(m+1\)棵树分别为\(T_{0\sim m}\),一开始只有\(T_0\)有一个点,编号为0. 对于每棵树\(T_i\)由T_{a_i}\(的第\)c_i\(个点与\)T_{b_i}\( ...