区块链研究实验室|如何使用以太坊-DAI-标记和结算“自动执行”智能发票_DAI:加密货币

注意:此博客文章的目标受众主要是熟悉区块链和智能合约的开发人员。并非所有开发人员都具有丰富的经济和金融背景。因此,我们建议您阅读关于这些金融方面的博文。

定义“智能发票”

我们的目标是展示我们如何使用智能合约来指定和执行现实世界发票的支付,从而将钱从买方转移到卖方。更具体地说,我们希望实现一个功能,以确保一旦买方接受发票,他就承诺在到截止日期进行付款。

创建以太坊智能合约时会存在某些限制,这些限制会影响如何构建满足这些目标的解决方案。

在以太坊上,不可能执行“触发器”,“事件驱动编程”,“观察者模式”和类似的范例,在这些范例中,某些事情需要作为对其他事情的分离响应发生。因此,我们无法实施在到期日自动执行付款转帐的解决方案。相反,我们创建了一个流程,保证任何人都可以在达到截止日期后触发付款执行。

链上区块链分析提供商Elliptic推出市场情报部门:1月17日消息,链上区块链分析提供商Elliptic今天宣布成立其市场情报部门。这是该公司的第二项业务,目前它正专注于利用Elliptic的身份图谱来为交易加密货币的企业构建新的提议和用例。

新部门由Elliptic联合创始人James Smith和Laura Coffey领导,将利用Elliptic的数据集作为一个具有内在价值的数据层,为迅速发展的机构加密交易市场服务。这些数据将提供行业内最广泛的资产覆盖链上身份指标,允许交易员进行预测、反应、分析。(Business Wire)[2022/1/17 8:55:10]

我们使用三个智能合约来结算真正的贸易发票,它们是:

智能发票

从设计的角度来看,智能发票合同需要尽可能简单。买方承诺支付,因此有必要审计和理解包括此类承诺在内的所有可能后果。

在美上市区块链中概股跌多涨少:今日美股行情,三大股指均上涨,在美上市区块链中概股跌多涨少。嘉楠科技下跌1.85%,人人网上涨1.45%,寺库上涨1.08%,迅雷下跌0.53%,猎豹移动下跌0.41%,兰亭集势上涨1.54,中网载线下跌5.88,亿邦国际下跌0.44%。[2020/8/1]

智能发票包含付款金额、截止日期、付款方和付款受益人。受益人可以由当前受益人更改。所有其他字段都是静态的,这对于买方来说非常重要,以便了解他所承诺的内容。

智能发票代币

我们还要将付款标记化。我们通过为智能发票创建一个erc20令牌来实现这一点。这使持有人有权在基础发票结算后获得部分付款。我们这样做是为了说明智能发票的使用案例,例如在结算前出售您的发票代币以获得提前付款。

钱包

买方和卖方都创建并控制他们自己的智能合约钱包。这个钱包可以保持价值,在我们的案例中是DA并I与智能发票发生交互。买方可以承诺通过他的钱包支付给定的智能发票。承诺意味着任何人都可以强制买方钱包在到截止日期支付发票。

声音 | 清华大学教授:物资分配应该引入区块链 并且全程全效全息全员可以查询:清华大学新闻与传播学院教授,微博大V“新媒沈阳”针对新性肺炎物资问题发微博称,本质来说物资的分配和信息的推送都是类似的。信息推送今天已经走到了智能推荐时代,而物资的分配也应该引入AI、区块链、云计算和大数据(ABCD),并且全程全效全息全员可以查询。期盼这一天的到来。[2020/2/1]

端到端测试观察

使用以太坊的最大挑战之一是获得对解决方案的高度信任。对于需要通过实施的大量资金的企业部门尤其如此。

在这个项目中,我们关注的是围绕单元测试的工具和开发。在本节中,我们使用端到端测试来解释创建、标记化和执行发票付款过程中涉及的所有步骤。

用于开发的技术堆栈由:node.js、typescript、solidity和truffle框架组成。以下代码段是端到端测试的一部分。我们还使用一个简单的cli在mainnet上执行了一个引导。在此过程中我们结算了一张真实的发票,并在下面的步骤中为我们的polit添加了Etherscan链接。

声音 | 比原链段新星:区块链开发应该追寻意义解决现实问题:2018年11月17日,比原链创始人段新星表示,技术以及开发本身应该追寻意义,不能单纯谋求一己之力、谋求垄断、谋求控制,谋求个人利益最大化。我们做区块链和技术开发一定要服务公众利益,一定要解决现实的问题,一定要与现实社会结合,来带来经济与社会的繁荣。[2018/11/17]

1.买方和卖方应各自拥有一个含有以太坊的帐户。

第一步是检查买方和卖方是否在其账户中都有以太币。他们都必须支付在以太坊区块链交易所含的gas费用。

2.买方在其账户中存有DAI。

我们可以使用任何符合ERC20标准的加密货币来完成这个项目,但我们选择了DAI。首先,我们要求使用“稳定币”,因为任何企业都不会接受加密货币汇率风险。其次,我们与Maker建立了合作伙伴关系。

在此步骤中,我们将DAI添加到买方的帐户中。我们使用'BigNumber'依赖关系来转换所需格式的和。

3.买家创建钱包

买方钱包可以持有DAI代币并与智能发票进行交互。

4.卖方创建钱包

5.卖方为买方创建一张贸易发票。?

通常贸易转移平台上会创建发票。发票ID将用作智能发票标识符。为了我们的项目,我们创建了一个对象并添加了所需的属性。

在试点中,我们使用了真正的贸易发票。

6.卖方为贸易转移发票创建智能发票和代币。??

这是卖方创建智能合同实例的步骤,该实例“wrap”有关自执行发票的所有必要信息。

现在我们创建了一个智能发票。我们只需要买方承诺。

7.买方承诺支付智能发票。

?买方验证智能发票中的承诺金额是否与在贸易转移平台上创建的初始发票上确定的金额相同。之后,他承诺在执行之日支付。

8.卖方拥有所有发票代币并确认买方已承诺支付。

现在是卖家的行动时间。他首先检查买方是否兑现承诺。至于我们现在关注的是,我们等到截止日期,然后卖方将触发智能发票执行。

9.截止日期到期

即使在整个这一步骤中没有任何代理实际上采取任何行动,我们认为如何测试时间是否实际按预期进行测试将是非常有趣的。

10.买方将DAI转移到自己的钱包中

通常,在到截止日期期,买方应该已经将DAI转移到自己的钱包中。以防买方没有足够的钱支付,在付款的时候,超出了这个项目资金的范围。

11.卖方触发支付智能发票

是时候卖家结算智能发票了。?我们检查智能发票状态是否设置为“已提交”。这是真的,因为我们看到买方承诺在步骤7付款。此时卖方触发智能发票。

由于每个代币代表正好1DAI,我们将令牌余额与发票金额进行比较,以查看它们是否匹配。

12.卖方以交换DAI的方式兑换发票代币

现在卖方已经结算了智能发票,他可以赎回买方欠他的DAI金额。

13.卖方将DAI从钱包转移到自己的账户

我们现在有了一个完整的流程,两个代理在他们之间建立智能发票。如果供应商希望从他的钱包中取出DAI,他可以这样做。我们已经包含了这个测试步骤,这样我们就可以正确地从头到尾地跟踪资金。

最后的想法

这个试点是关于想象智能发票在以太坊世界中的运作方式。?显然,这个项目并不支持大量的发票发送,而是为了说明智能合约和区块链如何适应B2B领域。

本文转载公众号:区块链研究实验室,专注区块链技术,产品社群,经济模型等全方位的知识体系输出,为大家带来不一样的社群学习体验。欢迎联系作者微信加入社群:csschan1120??

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:0ms0-3:311ms