本发明涉及一种面向区块链的清結算交易分账的技术领域尤其涉及一种面向区块链的清结算平台对大宗商品交易进行分账的设计方法。
传统的清结算平台需要动用大量嘚人力、物力和财力通过繁琐的多方对账的方式,才能完成交易所的交易清算工作采用区块链技术,可以在银行、交易所和清算中心等机构之间形成一个信任网络不仅省掉了对账环节,还大大提高了数据的安全性那么如何将离散的、复杂的三方交易按照区块链的特性进行批量的分账处理,就是面向区块链的清结算平台要重点解决的关键问题
为了解决上述关键问题,本发明提供了一种面向区块链的清结算交易分账算法设计的步骤的设计方法包括以下步骤:
S1、将三方交易按用户账号和账户拆解为多笔原子交易,并将原始的三方交易囷原子交易封装成复合交易;
S2、将多笔复合交易打包后进行共识形成区块然后把区块内的原子交易按用户账号进行分组并按时间顺序排序;
S3、非量化信息获取最后一条相关交易,更新为最终状态值;
S4、对量化信息将按用户账号分组后的交易按资金、资产账户进行合并,計算出账户变动的中间值;
S5、查询用户账户余额并和账户变动中间值进行计算,得到最终的账户余额
本发明中的交易分账面对的是通鼡的三方交易,而不局限于某一类或某一个交易所的三方交易
所述步骤S2***识算法设计的步骤不局限于某一种具体区块链共识算法设计嘚步骤。
所述步骤S3中非量化信息更新的步骤为:根据用户账号按时间戳对交易进行排序取得该列的最后一条记录,用该记录覆盖原值即嘚到最新值
所述步骤S4中对量化信息变动中间值计算的步骤为:对区块内发生的所有交易按账户进行分组并按时间顺序排序后,对相同账戶的多条变动记录进行合并计算出唯一的变动中间值。
所述步骤S5中最终账户余额的计算步骤为:以块为单位批量查询该区块内所有用戶账号以及账户的余额信息,和S4步骤中计算的变动中间值进行计算后得到最终的余额信息。
本发明具有以下优点和有益效果:本发明提供了一种面向区块链的清结算交易分账算法设计的步骤的设计方法且对传统区块链和双链架构区块链均可以使用。这种交易分账方法解決了区块链环境下复杂的三方交易分账的关键问题计算方法简洁高效,可扩展性和适应性强可应用于大宗商品、股票、期货、金融衍苼品、数字货币等交易场景。
图1为本发明提供的一种面向区块链的清结算交易分账算法设计的步骤总体流程图
图2为本发明提供的一种面姠区块链的清结算交易分账算法设计的步骤分组合并算法设计的步骤流程图。
图3为本发明提供的一种面向区块链的清结算交易分账算法设計的步骤余额计算算法设计的步骤流程图
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本发明进行進一步详细说明。应当理解此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明本实施例的附图中相同或相似的标号對应相同或相似的部件;在本发明的描述中,需要说明的是除非另有说明,“多个”的含义是两个或两个以上;术语“上”、“下”、“左”、“右”、“内”、“外”、“前端”、“后端”、“头部”、“尾部”等指示的方位或位置关系为基于附图所示的方位或位置关系仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作因此不能理解为对本发明的限制。此外术语“第一”、“第二”、“第三”等仅用于描述目的,而不能理解为指示或暗示相对重要性
在本发奣的描述中,还需要说明的是除非另有明确的规定和限定,术语“***”、“相连”、“连接”应做广义理解例如,可以是固定连接也可以是可拆卸连接,或一体地连接;可以是硬连接也可以是软连接;可以是直接相连,也可以通过中间媒介间接相连对于本领域嘚普通技术人员而言,可视具体情况理解上述术语在本发明中的具体含义
下面结合附图1、附图2和附图3对本发明进一步说明。
本发明选取基于大宗商品交易的面向区块链清结算交易分账算法设计的步骤的设计方法包括以下步骤:
S1、将三方交易按用户账号和账户拆解为多笔原孓交易并将原始的三方交易和原子交易封装成复合交易;
S2、将多笔复合交易打包后进行共识形成区块,然后把区块内的原子交易按用户賬号进行分组并按时间顺序排序;
S3、非量化信息获取最后一条相关交易更新为最终状态值;
S4、对量化信息,将按用户账号分组后的交易按资金、资产账户进行合并计算出账户变动的中间值;
S5、查询用户账户余额,并和账户变动中间值进行计算得到最终的账户余额。
所述步骤S1中典型的三方交易数据格式抽象为:
{交易发起方交易对手方,资金交易金额资产交易数额,交易单位交易单价,平台账户掱续费金额,交易时间戳交易描述,相关账户变动信息}
对于账户注册/注销,用户信息修改以及银行出入金等只涉及到单方的操作,呮需要设置交易发起方和账户变动信息即可不需要设置交易对手方和平台方的相关信息。
所述步骤S1中复合交易数据格式为:
{交易流水号三方交易,原子交易}
其中,原子交易是从三方交易拆解得到的内容包括1笔非量化信息和6笔量化信息,其中非量化信息用来存储联系方式、开户银行、开户日期等不能数字化的信息,量化信息用来存储以数字表示、能进行加减运算的信息原子交易格式为:
{非量化信息,[(量化信息1),(量化信息2),(量化信息3),(量化信息4),(量化信息5)]}。
所述步骤S3中非量化信息更新的步骤为:根据用户账号按时间戳对交易进行排序取得该列的最后一条记录,用该记录覆盖原值即得到最新值
所述步骤S3中按用户账号和时间顺序排序的数据结构为:
{账号,[(时间戳原子交易1),(时間戳,原子交易2)……]}。
所述步骤S4中对量化信息变动中间值计算的步骤为:对区块内发生的所有交易按账户进行分组并按时间顺序排序后对相同账户的多条变动记录进行合并,计算出唯一的变动中间值
所述步骤S5中用户、用户账号以及该用户所属的资金账户、资产账户之間的关系是1:1:N的关系,采用了如下的数据结构来存储用户账户信息:
{账号[(账户1,余额)(账户2,余额)……]}。
所述步骤S5中最终账户余额的计算步骤为:以块为单位批量查询该区块内所有用户账号以及账户的余额信息,和S4步骤中计算的变动中间值进行计算后得到最终的余额信息。
最后说明的是:以上所述的实施例仅为本发明的较佳实施例而已并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等均应包含在本发明的保护范围之内。
第4节 算法设计的步骤与算法设計的步骤框图 最新考纲 1.了解算法设计的步骤的含义,了解算法设计的步骤的思想;2.理解算法设计的步骤框图的三种基本逻辑结构:顺序结构、选择结构、循环结构;3.了解几种基本算法设计的步骤语句——输入语句、输出语句、赋值语句、条件语句、循环语句的含义. 知识梳理 1.算法设计的步骤的含义 算法设计的步骤是解决某类问题的一系列______或______,只要按照这些步骤执行,都能使问题得到解决. 2.算法设计的步骤框图 在算法设計的步骤设计中,算法设计的步骤框图可以准确、清晰、直观地表达解决问题的思想和步骤,算法设计的步骤框图的三种基本结构:__________、 __________ 、 __________. 步骤 程序 顺序结构 选择结构 循环结构 3.三种基本逻辑结构 (1)顺序结构:按照步骤__________的一个算法设计的步骤,称为具有“顺序结构”的算法设计的步骤,或鍺称为算法设计的步骤的顺序结构. 其结构形式为 依次执行 (2)选择结构:需要__________,判断的结果决定后面的步骤,像这样的结构通常称作选择结构. 其結构形式为 进行判断 (3)循环结构:指从某处开始,按照一定条件反复执行某些步骤的情况.反复 压缩包中的资料: 第十二章 第4节 算法设计的步骤與算法设计的步骤框图35ppt.pptx 第十二章 第4节.doc 第十二章 第5节 复数28ppt.pptx 第十二章 第5节.doc 第十二章