一种基于区块链安全高效的金融交易方法与流程

文档序号:13209714阅读:140来源:国知局
一种基于区块链安全高效的金融交易方法与流程

本发明涉及区块链技术领域,特别涉及基于区块链安全高效的金融交易方法。



背景技术:

近几年来,随着比特币等数字加密货币应用的日益普及,区块链技术作为数字加密货币底层技术架构正在成为席卷互联网和传统行业的一股技术浪潮,吸引了政府部分、金融机构和互联网企业的高度重视和广泛的关注。

目前r3cev公司已与全球40余家著名银行签署区块链合作项目,2016年2月,ibm也推出了hyperledger(超级账本)项目,并构建了自己的区块链生态平台,2016年底,“区块链”更是首度写入《“十三五”国家信息化规划》,就在近期,国内的腾讯公司也发布了区块链白皮书。由此可见,对区块链技术的研究与应用将会呈现出爆发式的增长态势。区块链技术具有分布式高冗余存储、时序数据且不可篡改和伪造、去中心化信用、自动执行的智能合约、安全和隐私保护等特点,因此它对金融领域具有很大的重要性。

目前,比特币交易所用到的方法主要是proofofwork(pow,工作量证明),它是需要进行挖矿的,会造成大量的资源浪费,而且它的共识达成的周期较长,因此不适合商业应用。在pow基础上提出的proofofstake(pos,权益证明)虽然在一定程度上缩短了共识达成的时间,但是还需要挖矿,本质上没有解决商业应用的痛点。而delegatedproofofstake(dpos,授权的股份证明)虽然能够达到秒级的共识验证,但不能预防节点故障,缺乏安全性。

因此,为了解决上述问题,需要能够有效提高金融交易的安全性和便捷性的一种基于区块链安全高效的金融交易方法。



技术实现要素:

本发明的目的在于提供一种基于区块链安全高效的金融交易方法,所述方法包括:

a)通过求解所有交易金额对参与交易节点的平均值,将交易金额划分为大金额和小金额;

b)每个参与交易的节点将持有的股份权益作为选票选取一个或多个代表节点,将得票最多的前n个代表节点作为董事会节点;

c)建立交易模型,计算参与交易的节点的最大利润;

d)懂事会节点1、2、…轮流收集验证小金额交易,并形成小金额区块写入到小金额区块链中;董事会节点n、n-1、…轮流收集验证大金额交易,并形成大金额区块,当大金额区块已满或收集验证达到一定时间,广播该大金额区块,并由所有董事会节点通过拜占庭容错共识算法验证所述大金额区块,当验证通过写入到大金额区块链中。

优选地,所述大金额和小金额的划分标准为:

当交易金额大于所述平均值,则划分为大金额;当交易金额小于所述平均值,则划分为小金额。

优选地,收集验证小金额交易的董事会节点与收集验证大金额交易的董事会节点重合时,则董事会节点先进行小金额交易验证。

优选地,所述交易模型通过如下方式表述:

其中ui为参与交易的节点i的利润,为大金额交易中节点i的出价,为小金额交易中节点i的出价,vi为节点i的开销。

优选地,所述参与交易的节点在一定时间t内的紧密程度通过如下方式计算:

socsimi,j(t)=comi,j(t)/(ni(t)+nj(t)),其中socsimi,j(t)为节点i与节点j在t时间内的紧密程度,comi,j(t)为节点i与节点j在时间t内的共同邻居节点数目,ni(t)和nj(t)分别为在时间t内节点i与节点j的一跳邻居节点数目。

优选地,所述参与交易的节点成功传输一条记录的能量消耗通过如下方式计算:

eic(t)=eif(t)+nc×eir(t)+eiack(t),其中,eic(t)参与交易的节点i成功传输一条记录的能量消耗,eif(t)参与交易的节点i发送一条记录的能量消耗,eir(t)参与交易的节点i接收一条记录的能量消耗,eiack(t)参与交易的节点i反馈确认的能量消耗,nc参与交易的节点i在时间t内一跳邻居节点的数目。

优选地,所述参与交易的节点的能量消耗满足(0,1)标准正态分布。

优选地,所述参与交易的节点的最大利润通过如下方式计算:

maxui=max((bi-vi)[1-φ(bi)]n-1),其中,ui为参与交易的节点i的利润,bi为节点i的出价,vi为节点i的开销,φ为密度函数。

优选地,所述参与交易的节点之间产生交易单,所述交易单包含卖方节点的公钥、上一个交易单的哈希值、买方节点的签名和买方节点的标志寄存器。

优选地,所述买方节点的签名是将上一个交易单的内容与卖方节点的公钥进行哈希运算,并用买方节点的私钥进行加密而得到的密文。

本发明提供的一种基于区块链安全高效的金融交易方法,通过将交易金额划分为大金额和小金额,针对不同金额的交易进行不同方式的交易验证,有效地提高金融交易的安全性和便捷性。

应当理解,前述大体的描述和后续详尽的描述均为示例性说明和解释,并不应当用作对本发明所要求保护内容的限制。

附图说明

参考随附的附图,本发明更多的目的、功能和优点将通过本发明实施方式的如下描述得以阐明,其中:

图1示意性示出了本发明一种基于区块链安全高效的金融交易方法的整体流程框图。

图2示出了本发明交易单产生流程图;

图3示出了本发明交易验证次序的流程框图;

图4示出了本发明交易验证的流程框图;

图5示出了本发明生成的区块链结构示意图。

具体实施方式

通过参考示范性实施例,本发明的目的和功能以及用于实现这些目的和功能的方法将得以阐明。然而,本发明并不受限于以下所公开的示范性实施例;可以通过不同形式来对其加以实现。说明书的实质仅仅是帮助相关领域技术人员综合理解本发明的具体细节。

在下文中,将参考附图描述本发明的实施例,相关技术术语应当是本领域技术人员所熟知的。在附图中,相同的附图标记代表相同或类似的部件,或者相同或类似的步骤,除非另有说明。下面结合具体的实施例对本发明的内容给出详细的实施方式,本发明将拥有交易额的节点作为参与交易的节点,也就是说参与交易的节点均具有交易金额。根据交易的金额大小进行分类,具体地,本发明一种基于区块链安全高效的金融交易方法包括:

s101、金额划分

通过求解所有交易金额对参与交易节点的平均值,将交易金额划分为大金额和小金额。根据本发明,参与交易的节点的交易金额按照大小划分为大金额和小金额,具体划分标准为将交易行为的所有交易金额对参与交易的节点求平均值。

当交易金额大于平均值,则划分为大金额;当交易金额小于平均值,则划分为小金额。例如交易行为产生的交易金额总数为m,参与交易的几点总数为n,则平局值为m/n。某一交易金额大于平均值,则该交易金额划分为大金额;当某一交易金额小于平局值,则该交易金额为小金额。

本发明将交易金额划分为大金额和小金额,对于小金额的交易由于数据较多,选用快速的共识算法验证;对于大金额的交易由于安全性要求较高,选用更加安全的共识算法验证。在下文中将对上述的验证进行详细的说明。

s102、选取董事会节点

每个参与交易的节点将持有的股份权益作为选票选取一个或多个代表节点,将得票最多的前n个代表节点作为董事会节点。选取懂事会节点用于对产生的交易进行验证,根据本发明在如下实施例中每个参与交易的节点将其持有的股份权益作为选取选取一个或多个代表节点,将得票最多的前n个节点作为董事会节点(本实施例中示例性的给出前100个节点为董事会节点),董事会节点从交易的手续费中获取收入。同时本实施例中董事会节点需要缴纳一定量的保证金,以惩罚董事会节点错过收集、验证区块或者故意通过不被验证的区块。本实施例中,董事会节点通过长时间在线实现盈利目的,进而保证交易系统的正常运行。董事会节点注册公钥,交易系统为每一个董事会节点分配一个32位的特有标识符,参与交易的节点之间的交易数据“头部”引用该标识符。

本实施例中,对于错过太多区块的董事会节点,交易系统将推荐参与交易的节点的用户替换新的董事会节点。对于签发无效区块的懂事会节点,交易系统直接剔除该董事会节点。

s103、计算参与交易的节点的最大利润

建立交易模型,计算参与交易的节点的最大利润。

通过建立交易模型计算参与交易节点的最大利润,参与交易的节点在一定时间t内的紧密程度通过如下方式计算:

socsimi,j(t)=comi,j(t)/(ni(t)+nj(t)),其中socsimi,j(t)为节点i与节点j在t时间内的紧密程度,comi,j(t)为节点i与节点j在时间t内的共同邻居节点数目,ni(t)和nj(t)分别为在时间t内节点i与节点j的一跳邻居节点数目。

参与交易的节点成功传输一条记录的能量消耗通过如下方式计算:

eic(t)=eif(t)+nc×eir(t)+eiack(t),其中,eic(t)参与交易的节点i成功传输一条记录的能量消耗,eif(t)参与交易的节点i发送一条记录的能量消耗,eir(t)参与交易的节点i接收一条记录的能量消耗,eiack(t)参与交易的节点i反馈确认的能量消耗,nc参与交易的节点i在时间t内一跳邻居节点的数目。参与交易的节点的能量消耗满足(0,1)标准正态分布。

根据本发明,实施例中交易模型通过如下方式表述:

其中ui为参与交易的节点i的利润,为大金额交易中节点i的出价,为小金额交易中节点i的出价,vi为节点i的开销。

通过上述交易模型计算参与交易节点的最大利润,具体地:节点i的开销表示为:

其中,etxi为节点i至目标节点的成功传输记录的次数,α为系数。

由于能量消耗eic为标准正态分布(0,1),所以得到:

其中etxs为源节点s至目标节点的成功传输记录的次数,einitial为初始能量。根据上述计算可知,vi也满足标准正态分布(0,1)。

根据贝叶斯什均衡理论,可以得出节点i的期望利润:

其中p(bi<b(vj))为节点出最低价的概率。

因此,根据vi的特性可以得到:

由此,得到节点i的最大利润为:

maxui=max((bi-vi)[1-φ(bi)]n-1),其中,ui为参与交易的节点i的利润,bi为节点i的出价,vi为节点i的开销,φ为密度函数。

节点i的出价为:

s104、生成交易单

所有参与交易的节点均通过步骤s103计算得到最大利润,之后生成交易单。如图2所示交易单产生的流程图,参与交易的节点之间产生交易单,所述交易单包含卖方节点的公钥、上一个交易单的哈希值、买方节点的签名和买方节点的标志寄存器。本实施例中示例性地以交易单a和交易单b为例进行说明,交易单a为交易单b的上一个交易单。买方节点向卖方节点进行交易支付,交易单a的卖方节点即为交易单b中的买方节点。以生成交易单b为例,交易单b中包括交易单b的卖方节点的公钥、上一个交易单(即交易单a)的哈希值、买方节点(即交易单a的卖方节点)的签名和买方节点(即交易单a的卖方节点)的标志寄存器(flag)。根据本发明,实施例中买方节点的签名是将上一个交易单的内容与卖方节点的公钥进行哈希运算,并用买方节点的私钥进行加密而得到的密文。标志寄存器(flog)用来区分大金额的交易和小金额的交易,优选地,实施例中flog=0表达小金额的交易,flog=1表示大金额的交易。

s105、生成区块链

懂事会节点1、2、…轮流收集验证小金额交易,并形成小金额区块写入到小金额区块链中;董事会节点n、n-1、…轮流收集验证大金额交易,并形成大金额区块,当大金额区块已满或收集验证达到一定时间,广播该大金额区块,并由所有董事会节点通过拜占庭容错共识算法验证所述大金额区块,当验证通过写入到大金额区块链中。如图3所示本发明交易验证次序的流程框图,图4所示本发明交易验证的流程框图,在步骤s104中由flog展示出交易为大金额的交易或者小金额的交易。董事会节点根据交易金额的大小进行不同的验证方法,实施例中由第一个董事会节点101开始,懂事会节点1、2、…轮流收集验证小金额交易(b方向)。由最后一个董事会节点102(本实施例中为第100个董事会节点)开始,董事会节点n、n-1、…轮流收集验证大金额交易(a方向)。当收集验证小金额交易的董事会节点与收集验证大金额交易的董事会节点重合时(例如在董事会节点n/2重合),则重合董事会节点103先进行小金额交易验证,再进行大金额交易验证。

对于小金额交易的验证,懂事会节点1、2、…轮流收集验证小金额交易形成小金额区块,并添加验证该小金额交易的董事会节点的标识符,验证通过写入小金额区块链中。需要说明的是,在形成小金额区块之前,需要验证前一区块由被受信任的董事会节点签署形成。本发明小金额交易验证时,每次只有一个董事会节点进行验证,能够实现快速的共识验证。优选地,在一些实施例中,若某一懂事会节点出现故障,则顺次进入下一个董事会节点验证,并将验证的小金额区块先入区块链中。

对于大金额交易的验证,懂事会节点n、n-1、…轮流收集验证大金额交易形成大金额区块,并添加验证该大金额交易的董事会节点的标识符,当大金额区块已满或收集验证达到一定时间,广播该大金额区块,并由所有董事会节点通过拜占庭容错共识算法(pbft共识算法)验证大金额区块,当验证通过写入到大金额区块链中。需要说明的是,对于大金额交易的验证,并不需要所有的董事会节点都通过验证,只要大部分董事会节点(例如2/3的懂事会节点通过)则该大金额区块写入到区块链。优选地,在一些实施例中,若某一懂事会节点出现故障,则顺次进入下一个董事会节点验证,并将验证的大金额区块写入区块链中。

本发明当对小金额交易与大金额交易进行验证董事会节点重合时,首先进行交金额交易验证,之后进行大金额交易验证,能够有效加快验证速度。

图5所示本发明生成的区块链结构示意图,本发明小金额交易验证时,每次只有一个董事会节点进行验证,能够实现快速的共识验证。大额交易验证时,参与验证的懂事会节点数量,采取pbft的共识算法验证,能够有效地防止节点故障,保证了大额交易的安全、稳定和高效。

本发明提供的一种基于区块链安全高效的金融交易方法,通过将交易金额划分为大金额和小金额,针对不同金额的交易进行不同方式的交易验证,有效地提高金融交易的安全性和便捷性。

结合这里披露的本发明的说明和实践,本发明的其他实施例对于本领域技术人员都是易于想到和理解的。说明和实施例仅被认为是示例性的,本发明的真正范围和主旨均由权利要求所限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1