IFT(Internet FinTech)基于区块链的支付交易结算平台

n

文章分类

l

评论数

日期

08/13/2018

区块链是一种新兴技术模式,因其通过分布式数据存储、点对点传输、共识机制、加密算法等技术的集成,从而构建可信交易环境,打造可信社会。区块链的应用已由开始的金融延伸到物联网、智能制造、供应链管理、数据存证及交易等多个领域,将为云计算、大数据、承载网络等新一代信息技术的发展带来新的机遇,其构建的可信机制,将改变当前社会商业模式,从而引发新一轮的技术创新和产业变革。

在此期间,出现了后来被广泛讨论的案列——以太坊(Ethereum): 即下一代智能合约去中心化应用平台,它允许任何人在平台中建立和使用通过区块链技术运行的去中心化应用。但由于现有的以太坊(Ethereum)块链平台使用费高昂、性能有限、垂直行业及担保支付应用的局限性,极大地阻碍了区块链应用的广泛传播。2017年由EOS团队提出的DPOS架构平台声称解决了Ethereum块链平台使用费高昂、性能有限的问题,我们拭目以待其在技术上的创新与突破,并为未来的项目提供更优质的平台架构以及为商业的变革提供新的途径。

Internet FinTech(IFT)团队前身一直服务于银行业的金融科技创新,主导了以支付结算系统为核心的银行支付结算体系及账户体系的开发和维护,截至目前拥有20家银行、超1000家渠道及100万 商户、2亿消费用户的基础。IFT团队在整个金融市场的研究中发现,区块链技术和Token的应用将会在整个消费市场的金融科技领域出现突破性创新,因此,IFT团队在Ethereum及EOS的基础上建立了一个可以应用于垂直领域的基础链底层平台即Internet FinTech(IFT)。

商业模式

1、商业模式简介

IFT提供标准的项目底层操作系统,可以作为基础设施,在上面构建各种生态,延伸了各种商业的使用场景,为有需求的商业机构建立基于担保支付的账户体系、加密数字子货币发行、支付交易结算系统及用于去中心化的数字货币交易所开源的代码及实施方案,实现自己的商业模式架构。

IFT(Internet FinTech)基于区块链的支付交易结算平台

2、设计方案

加密数字子货币发行

首先可以将IFT理解成是一个工具,这个工具可以通过抵押项目资产和锚定外部资产来预测市场共识价格,基于IFT智能合约,商业机构、组织可轻松发行自己的子货币。锚定机制通俗一点讲就是通过一些金融衍生品的设计和技术手段使得ERC资产通过抵押项目发行的资产如真实子货币的价值趋于一致。通过一个数字公共总账便能够成立相对应的分布式自治公司,基于IFT发行的很多具有特殊目的的高级金融协议,它们想拥有自己内部的货币来作为组织形式,我们建立一个去中心化的和自治的商业体交易组织形式,通过将公正公开的规则编入开源程序中,在无人干预和管理的情况下实现自主运行的组织机构。

支付交易结算系统

目前,基于区块链技术的支付系统,交易速度至关重要,特别是对于小额交易而言。IFT的支付交易结算系统采用状态机副本复制算法超级账本PBFT,让支付时间缩减到秒级,消费者的每笔交易金额,会即时加密记录在后端区块链系统,商家可通过区块链账本查询完整的交易记录;同时,IFT创建了“开放支付”和“锁定支付”的交易模型,进行担保支付完成消费者的预存、数字货币营销和子商户的数字货币融资。

IFT将提供这套支付交易结算系统开放的接口,商业机构、组织可轻松建立旗下商业的收单工具,让其子商户有更多的能力应用其发行的数字货币完成交易。

开放支付:即基于IFT智能合约,支付交易通过合约来完成,具体流程就是首先用户输入交易信息,然后向智能合约发送资金,最后由合约来执行交易。一旦合约收到双方的交易信息,它会将资金直接发送给各相关方。

锁定支付:即基于IFT智能合约,支付交易数额可直接锁定于固定商户用于预存消费,预存消费数额可获得对等的数字货币,从而构建属于消费者自己的数字货币账户体系。锁定支付功能实现了消费者的预存、数字货币营销和子商户的数字货币融资等金融生态的建设。

账户体系

IFT团队凭借多年交易数据安全的技术经验,创建了IFT账户体系,这套体系中,当用户创建了一个账户之后,会根据生成的私钥文件,生成一套助记词,通过算法加密技术保证对外广播交易的同时,又保证敏感的私钥信息安全,助记词的重要作用,也是该账户体系功能的一个亮点。此外,技术上对性能的保障,当用户注册时只是将数据库的数据建立了一个关联,而不用去执行费时的加密算法来生成私钥和文件。

我们做去中心化的数字钱包,并且将该接口开放给商业机构、组织,实现基于IFT可轻松建立自己的钱包或者IFT公共钱包,帮助参与者记录、支付消费或转入转出自己的数字货币资产,同时通过此账户体系完成数字资产交易所的数字资产交易。去中心化的账户体系好处是不用担心平台从中作梗,不用担心平台被黑客攻击而导致资产损失。

去中心化数字资产交易所

任何标准化的外部资产都可以在IFT系统里创建“资产“,众多的资产在去中心化的交易所里相互兑换,形成交易市场。IFT交易所最大的特点是用区块链技术构筑清算链中的锁定支付,保证两个节点之间可以不需要中介化,直接进行交易的资产安全可控,并且将这套接口开放给所有商业机构、行业组织,他们都可以创建自己的去中心化交易所,实现数字资产代币持有人跨区跨币种直接进行实时交易。

IFT将会打破现有的中心化数字资产交易所独揽大权(往常投资者将自己的Token转给中心化的交易所,在交易所任人宰割,得不到任何安全保障的局面)实现真正意义上的交易撮合环节。对于商业而言,有了去中心化的交易所,商业机构、组织也不用支付高额的入驻费用进入中心化交易所来进行交易,只需要通过IFT发行自己的数字货币即可实现上架交易所、拥有交易功能。

案例说明

一个商业体ASHOP商场利用IFT智能协议发布商城的数字货币ASPC以及交易清算系统用于进行商城的消费及担保。消费者在去ASHOP商场的时候,可以通过ATOKEN进行目标店铺的担保预存,在IFT或者AWALLET获得和自己银行卡等价的数字货币,同时获得更多商家或商场提供的优惠,通过ASHOP的钱包AWALLET可进行消费支付,而商户可通过锁定支付的功能模块进行数字货币融资,同时商户和消费者的数字货币ASPC可通过IFT数字资产交易所进行交易。

IFT(Internet FinTech)基于区块链的支付交易结算平台

技术结构

1、共识机制

DPOS(授权股权证明)由受托人来创建区块,受托人来自于普通用户节点,需要首先进行注册,然后通过宣传推广,寻求社区信任并投票,获得足够排行到前101名的时候,才可以被系统接纳为真正可以处理区块的节点,并获得铸币奖励。比特币是通过计算机算力来投票,算力高的自然得票较多,容易获胜。DPOS机制是通过资产占比(股权)来投票,更多的加入了社区人的力量,人们为了自身利益的最大化会投票选择相对可靠的节点,相比更加安全和去中心化。整个机制需要完成如下过程:

(1)注册受托人,并接受投票

用户注册为受托人;
接受投票(得票数排行前101位);

(2)维持循环,调整受托人

块周期:也称为时段周期(Slot),每个块需要10秒,为一个时段(Slot);

受托人周期:或叫循环周期(Round),每101个区块为一个循环周期(Round)。

这些块均由101个代表随机生成,每个代表生成1个块。一个完整循环周期大概需要1010秒(101×10),约16分钟;每个周期结束,前101名的代表都要重新调整一次;

奖励周期:根据区块链高度,设置里程碑时间(Milestone),在某个时间点调整区块奖励。

2.注册受托人

注册受托人必须使用客户端软件,因此这项功能需要与节点进行交互,也就是说客户端要调用节点Api。管理受托人的模块是 modules/delegates.js ,根据前面篇章的经验,我们很容易找到该模块提供的Api:”put /”: “addDelegate”

最终的Api信息如下:

put /api/delegates

对应的方法是,modules/delegates.js模块的addDelegate()方法。该方法与注册用户别名地址等功能性交易没有区别,注册受托人也是一种交易,类型为“DELEGATE”(受托人)。

3.投票

该功能是普通用户具备的功能,任何普通用户都有投票权利,所以放在帐号管理模块,即“modules/accounts.js”文件里,是符合逻辑的。

4.块(时段)周期(Slots)

(1)时间处理

创世时间beginEpochTime()和getEpochTime(time)两个私有方法定义了首尾两个时间点,其他的方法都是基于这两个方法计算出来的时间段,所以不会出现时间上不统一的错误。

(2)编码风险

但是,唯一可能出现错误的地方,就是getEpochTime(time)方法,看下面代码的16行,new Date() 方法获得的是操作系统的时间,这个是可以人为改变的,一般情况下不会有什么影响,但个别情况也可能引起分叉行为。

// helpers/slots.js
function getEpochTime(time) {
if (time === undefined) {
// 16行

time = (new Date()).getTime();
}
var d = beginEpochTime();
var t = d.getTime();
return Math.floor((time – t) / 1000);
}

(3)周期实现

从现在时间点到创世时间,有一个时间段,大小假设为 t,那么 t/10 取整,就是当前时段数(getSlotNumber())),这里的10是由 constants.slots.interval 设定的。

具体到一个受托人,它处理的区块时段值相差应该是受托人总数,这里是101, 这个值由 constants.delegates 设定。因此,getLastSlot()方法(helpers/slots.js)返回的是受托人最新时段值。

5.受托人(循环)周期(Round)

为了安全,受托人每轮都要变更,确保那些不稳定或者做坏事的节点被及时剔除出去。另外,尽管系统会随机找寻受托人产生新块,但是在一个轮次内,每个受托人都有机会产生一个新区块(并获得奖励)并广播,这一点与比特币每个节点都要通过工作量证明机制(PoW)竞争获得广播权相比,要简化很多。

6.奖励周期(Milestones)

该周期主要针对块奖励进行设置,与比特币的块奖励每4年减半类似,IFT的块奖励也会遵循一定规则。大致的情况是这样的,第一阶段(大概1年)奖励5IFTC/块,第二年奖励4IFTC/块,4年之后降到1IFTC/块,以后永远保持1IFTC/块,所以总量始终在少量增发。

具体增发量很容易计算,第一阶段时间长度 = rewards.distance 10秒 / (24 6060) = 347.2天,增发量 = rewards.distance 5 = 3000000 * 5 = 1500万。第二阶段1200万,第三阶段900万,第四阶段600万,以后每阶段300万。这种适当通胀的情况是DPoS机制的一个特点,也是为了给节点提供奖励,争取更多用户为网络做贡献。

7.底层架构

IFT的底层架构如下图所示。

IFT(Internet FinTech)基于区块链的支付交易结算平台

SDK与BaaS平台

IFT将为上层应用提供gRPC API,以及封装了API的SDK供应用调用。应用可以通过 SDK 访问IFT网络中的多种资源,包括IFTC账户、交易、账本、智能合约、监听(由智能合约发送或区块生成的)事件等。IFT SDK 同时将封装更多IFT场景下的特有功能,包括IFTC钱包、IP内容查询与访问等。IFTSDK初期将包括NodeJs和Python版本。IFT将上线完全公开的区块链服务(BaaS)平台,提供一站式的测试网络搭建、分布式账本内容可视化呈现、智能合约开发与测试、网络监控与分析等功能。BaaS平台提供的区块链模拟环境将贴近实际应用场景,使开发者可以将经过检验的业务模型很容易地迁移发布到IFT主链。

8.全球分布式项目开发

聚全球开发者之力创造IFT平台, 开源核心代码,全球的程序员都可以进行再次开发和bug修复提交。IFT平台做的全球分布式开发系统,核心是提供了开发者一套参与开发的奖励机制,运营者提供开发任务 ,由全球的开发者认领开发竞争,根据平台规则在GitHub上每一条并入主线的任务代码都会获得IFTC代币奖励,激励全球更多优秀的开发者参与完善IFT平台。

Internet FinTech(IFT)的治理机制

IFT是一个去中心化的国际性区块链社区,将在海外设立IFT基金会(IFT Foundation)来保证IFT社区的管理、运作,以及所募集资金的管理和安全。

IFT基金会的组织架构将由IFT社区大会,IFT基金自治委员会和执行委员会组成。IFT社区大会是IFT社区的最高权力机构,由全部IFT币持有者组成,所有的持有者都能够通过社区大会行使自己的投票权,参与社区重大事项决策。

IFT基金自治委员会对社区大会负责,负责对执行会委员会行使管理和监督的职能。每两年根据所持代币的数量和币龄进行换届。 执行委员会对自治委员会负责,负责IFT社区的正常运营和维护,下辖技术开发组团、商务运营组团、财务管理及风险控制组团以及品质把控组团,每个组团负责相对应业务的实际工作。

IFT(Internet FinTech)基于区块链的支付交易结算平台

关于更多IFT信息:https://iftc.io/