首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何代表用户支付汽油?

我如何代表用户支付汽油?
EN

Ethereum用户
提问于 2017-11-27 19:02:40
回答 2查看 2.5K关注 0票数 4

我有一个移动应用程序,它的用户可以生成交易。基本上,如果用户想打开电视,他们会在应用程序中按下一个按钮,这应该是

1)在智能协议中运行代码,以验证用户是否有权控制此电视。

2)如果用户获得授权,将“打开电视”命令存储在区块链上。

但是,我不希望我的用户不得不为这个活动付费。我想让公司负责支付煤气费。这样,我就可以给1源(我的公司的智能合同)加满/发送更多的气体,而不是不得不将气体发送到一吨源(一吨用户智能合同)。

有办法像这样集中支付汽油吗?为了安全目的,我想在用户端生成交易,但我希望公司承担支付天然气的负担。我正在考虑将原始事务从我的移动应用程序发送到我的后端服务器,然后从那里发送事务?那能行吗?

EN

回答 2

Ethereum用户

回答已采纳

发布于 2018-06-23 15:17:19

你可以建立你的合同,这样用户就可以用汽油来调用合同,然后合同还他们同样的钱。

有人对此进行了攻击;如果用户在天然气上花费大量ETH,就可能耗尽合同。为了解决这一问题,您应该设置一个最高的天然气价格(可能您可以远程更改),否则事务将恢复()。

但是,你为什么要放一些简单的东西,就像把电视打开块链一样?您可以简单地创建一个合同,说明每个用户是否有权打开每台电视。不需要创建一个事务来打开电视,该应用程序只是创建一个与电视的连接,签署一条信息,上面写着“打开电视#0000",将该消息发送给电视,电视验证该消息,并验证用户通过观看that区块链而被授权打开电视。

这种方法不需要在区块链上进行事务处理,因此将是完全免费的,几乎是即时的。

请告诉我是否有什么东西我错过了,或者我没有很好地解释。

票数 2
EN

Ethereum用户

发布于 2018-06-22 22:11:16

一个非常简单的解决方案是让用户用密钥对消息/txs进行签名,然后将它们放到某种队列中,而不是直接发送到块链。在此之后,您只需将这些消息提交到区块链并支付tx费用。

以下是如何做到这一点的详细说明:https://medium.com/zastrin/how-to-save-your-ethereum-dapp-users-from-paying-gas-for-transactions-abd72f15e14d

该解决方案的缺点是:

  1. 它使用eth_signTypedData函数,该函数(目前)仍在开发中,仅由Metamask实现。
  2. 用户必须信任您来转发他们的事务。这真是糟透了,我正想办法解决这个问题。

更新:最近我发现了uPort的元事务。它们通过引入多个中继(他们中的任何一个都可以向区块链提交签名消息)来改进我前面描述的过程,而不是一个中心的“子实体”(即您/您的dApp)。如果你想知道更多,这篇文章可能是一个很好的开始:https://medium.com/uport/making-uport-smart-contracts-smarter-part-3-fixing-user-experience-with-meta-transactions-105209ed43e0

票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/31803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档