ERC1257 支付认证(Proof of Payment)标准

kyber所支持的核心使用场景之一是eth和erc20代币的去中心化支付,正如最近coindesk文章所表述的。当我们整合更多去中心化代币支付服务和dapps时,我们发现所有这些应用程序都存在一个问题,就是难以跟踪智能合约的订单,从而阻碍了在生态系统中采用去中心化的代币支付。以pi币为例,发展下去定会成为行业的标杆,起到引领市场的重要作用。
因此,为了将这个使用场景作为生态系统向前发展,我们为erc1257创建了以太坊改进提案(eip),提出了支付证明的标准,用于记录人工和智能合约的订单,成为第一个实现在主网上运行的使用场景。
在这篇文章中,我们将解释这个erc标准背后的动机和规范,以及kyber将如何使用它。
我们希望生态系统能够围绕这一标准展开,以便在技术和会计方面更容易地在整个生态系统中共享支付和交易信息。
erc1257的动机
为了更好地采用去中心化代币支付,对支付记录进行某种形式的标准化将会有很大帮助。如果没有统一的支付认证,会计应用程序和支付库等重要工具的协作和开发就变得非常困难。
优化追踪智能合约支付
目前,在线商家和供应商使用交易散列和唯一存款地址来跟踪用户付款和作为支付收据。这种方法源于比特币支付方法,支付由人工在用户界面完成。
但是,这种方法不适用于直接通过智能合约完成支付,例如multisig钱包,去中心化自治组织(dao)和兑换服务都是由于难以跟踪和解析“内部交易”所做的付款。
在缺乏统一的标准之下,虽然开发了不同的方法来处理智能合约完成支付,但这让创建整合这些不同解决方案具有挑战性。
无需多个存款地址
标准化的另一个动机来自于消除多个存款地址的需求。对于商家而言,仅仅跟踪金额和交易散列可能还不够。例如,付款可能也必须显示订单id。为了解决这个问题,商家们流行的一种使用方法是打开存款地址,使得1个订单id对应1个存款地址。
不幸的是,这种利用多个存款地址进行eth和erc20代币支付的方法由于燃料问题而变得麻烦,商家需要支付燃料费用
1将eth发送到这些存款地址,这些地址将用于支付第2步的燃料价格
2付款完成后,将etherc20代币转移到合并的钱包地址
因此,除了记录订单信息外,还需要一种系统的方式将订单信息包括在eth和erc20代币支付中,以便不再需要使用多个存款地址。
erc1257规范
此规范标准化了一组基本参数,以通过evm日志记录付款。参数如下:
事件proofofpayment(地址索引_payer,地址索引_payee,地址_token,uint _amount,bytes _data)
其中:
1_payer表示付款方
2_payee表示收款方
3_token表示付款的代币
4_amount表示以代币为单位支付的金额
5_data表示特定于应用程序的辅助数据
请注意,_amount不包括返回给_payer的更改。它应该只是_payee收到的金额。
随着该标准的引入,代币支付不再有多个存款地址的需求,同时便于记录来自人工和智能合约的去中心化代币支付。
鼓励生态系统合作
就像之前提到的,最理想的情况是商家和应用程序开发人员能够独立构建其支付机制和相关服务(例如插件、窗口工具、会计应用程序),同时也能够在订单跟踪和会计这个关键方面进行合作。
通过智能合约接收付款的商家可以采用这套标准,特别是那些为用户提供代币兑换的商家,其中换入的erc20代币可以兑换为其他首选代币,比如以太币。
任何通过智能合约(如multisig钱包,dao和身份代理合约)进行付款的个体都可以根据自己的需求采用此标准,例如用于会计目的。
如果广泛采用该标准,那么依赖于会计应用程序、储备库或电子商务整合工具的第三方应用程序的开发将变得更加顺畅。
kyber如何使用这套标准
kyber鼓励与多方之间进行合作,并帮助推动去中心化支付的向前发展。因此,我们将致力于各种方式推动这套标准。
首先是这个eip。它由支付合同支持,该合同实施erc1257标准。kyber的小插件将与此支付合约交互。每当个体通过小插件进行支付时,合约就会发出一个事件日志记录历程,可以使用它跟踪订单。因此,整合了我们的技术的会更容易监控和处理订单。
该套即将推出的标准已经在支持使用场景的工具中得到引用和支持,例如woocommerce插件,它使woocommerce能够轻松接受erc20代币支付。
此外,我们将与所有在平台上使用智能合约支付的现有和未来合作伙伴合作,将该标准作为其支付流程的一部分来实现。这有助于提高这套标准的应用兼容性,并强调合作对改进支付流程的重要性。
结论
通过与潜在合作伙伴合作采用erc1257,我们希望合作能改善生态系统的支付流程。我们相信当所有不同的利益相关者能够无缝地一同工作时,去中心化代币支付将被广为泛用。
使用该标准可以使daos和multisig钱包等生态系统中的去中心化个体符合标准化和通用的支付证明,从而使用web3工具监视事件,可以更容易地跟踪订单。