一种基于区块链的金融数据处理系统及方法与流程

文档序号:37304441发布日期:2024-03-13 20:52阅读:48来源:国知局
一种基于区块链的金融数据处理系统及方法与流程

本发明涉及数据处理,特别涉及一种基于区块链的金融数据处理系统及方法。


背景技术:

1、为了防范系统性的金融风险,以及响应于监管机构的监管要求,金融机构包括商业银行、证券公司、保险公司、基金公司、信托公司、商品交易所等之间往往会频繁地进行一些必要的数据共享。目前金融机构之间常见的数据共享方式主要通过有点对点数据共享和通过共建数据平台进行数据共享这两种方式,其中点对点数据共享方式虽然具有较高的安全性,但涉及多主体的数据共享时,往往存在数据共享效率低下、数据更新滞后性强等问题;通过共建数据平台进行数据共享在数据共享范围和数据共享效率方面具有较大的优势,但在数据安全性、数据质量以及数据所有权界定方面都很难形成各个参与方都认可的方案。在没有可行的技术手段充分保障数据共享效率、数据安全、数据质量以及数据所有权界定的情况下,目前的金融数据共享只能流于形式,无法切实起到金融风险防范的作用。


技术实现思路

1、本发明正是基于上述问题,提出了一种基于区块链的金融数据处理系统及方法,能够在保证金融数据共享效率以及金融数据安全的同时充分保障数据提供方的权益。

2、有鉴于此,本发明的第一方面提出了一种基于区块链的金融数据处理系统,包括用于提供金融数据的金融机构服务器以及用于存储金融数据的区块链网络,所述区块链网络包括用于存储链上数据的区块链节点、用于存储链下数据的链下数据库以及用于管理所述区块链区点和所述链下数据库的区块链服务器,所述区块链节点包括若干个区块链子网络,每个子网络对应存储一种或一种以上类型的金融数据,所述区块链服务器被配置为:

3、通过数据提交接口接收金融机构服务器提交的金融数据,所述数据提交接口被配置为接收结构化数据或非结构化数据;

4、识别所述金融数据的数据格式和数据类型,所述数据格式为所述金融数据的组织形式,所述数据类型为所述金融数据的内容分类;

5、根据所述数据类型确定所述金融数据对应的区块链子网络;

6、当所述金融数据为非结构化数据时,将所述金融数据写入链下数据库;

7、从所述金融数据中提取基本数据项生成所述金融数据的结构化数据;

8、构建用于从所述链下数据库读取所述非结构化数据的智能合约;

9、将所述结构化数据以及所述智能合约关联存储到所述新的区块中;

10、当所述新的区块的大小或数据量符合预设要求时,将所述新的区块添加到对应的区块链子网络中。

11、本发明的第二方面提出了一种基于区块链的金融数据处理方法,包括:

12、通过数据提交接口接收金融机构服务器提交的金融数据,所述数据提交接口被配置为接收结构化数据或非结构化数据;

13、识别所述金融数据的数据格式和数据类型,所述数据格式为所述金融数据的组织形式,所述数据类型为所述金融数据的内容分类;

14、根据所述数据类型确定所述金融数据对应的区块链子网络;

15、当所述金融数据为非结构化数据时,将所述金融数据写入链下数据库;

16、从所述金融数据中提取基本数据项生成所述金融数据的结构化数据;

17、构建用于从所述链下数据库读取所述非结构化数据的智能合约;

18、将所述结构化数据以及所述智能合约关联存储到所述新的区块中;

19、当所述新的区块的大小或数据量符合预设要求时,将所述新的区块添加到对应的区块链子网络中。

20、进一步的,在上述的基于区块链的金融数据处理方法中,识别所述金融数据的数据格式和数据类型的步骤具体包括:

21、分别调用各种数据格式的解析器解析所述金融数据;

22、当任一种数据格式的解析器返回解析成功的信息时,将所述金融数据确定为结构化数据;

23、将返回解析成功信息的解析器对应的数据格式确定为所述金融数据的数据格式;

24、将所有数据格式的解析器均返回解析失败的信息时,将所述金融数据确定为非结构化数据。

25、进一步的,在上述的基于区块链的金融数据处理方法中,在将返回解析成功信息的解析器对应的数据格式确定为所述金融数据的数据格式的步骤之后,还包括:

26、根据所述数据格式的组织结构从所述金融数据中提取字段名称列表;

27、将所述字段名称列表与预先配置的每种数据类型的结构体进行匹配;

28、根据所述字段名称列表与所述结构体的匹配度确定所述金融数据的数据类型。

29、进一步的,在上述的基于区块链的金融数据处理方法中,将所述字段名称列表与预先配置的每种数据类型的结构体进行匹配的步骤具体包括:

30、获取所述结构体中的成员变量名称;

31、将所述字段名称列表中的每个字段名称与所述结构体中的每一个成员变量名称进行一一匹配;

32、当所述结构体中的任一成员变量名称在所述字段名称列表中存在文字相同、语义相同或者语义相近的字段名称时,将所述成员变量名称确定为关联变量名称;

33、计算所述关联变量名称的数量在所述结构体的成员变量名称中所占的比值:

34、

35、其中i为1到m之间的正整数,m为预先配置的数据类型的数量,ri为第i种数据类型的结构体中的关联变量名称的数量,ni为第i种数据类型的结构体中的成员变量名称的数量;

36、将所述比值确定所述字段名称列表与第i种数据类型的结构体的匹配度。

37、进一步的,在上述的基于区块链的金融数据处理方法中,根据所述字段名称列表与与所述结构体的匹配度确定所述金融数据的数据类型的步骤具体包括:

38、获取预设的匹配度预值;

39、将与所述字段名称列表的匹配度大于所述匹配度阈值的结构体确定为目标结构体;

40、当所述目标结构体的数量大于1时,根据所述字段名称列表与所述目标结构体的匹配情况将所述金融数据分割为对应数量的金融子数据;

41、将所述金融子数据的数据类型确定为相匹配的目标结构体对应的数据类型;

42、以所述金融子数据为单位执行后续处理步骤。

43、进一步的,在上述的基于区块链的金融数据处理方法中,在将所述金融数据确定为非结构化数据的步骤之后,还包括:

44、获取所述金融数据的名称和/或内容概要;

45、获取预先配置的标准数据类型列表;

46、将所述金融数据的名称和/或内容概要与所述标准数据类型列表中的每一个数据类型名称进行匹配以确定所述金融数据所属的数据类型。

47、进一步的,在上述的基于区块链的金融数据处理方法中,从所述金融数据中提取基本数据项生成所述金融数据的结构化数据的步骤具体包括:

48、获取所述类据类型的结构体对应的字段名称列表;

49、从所述金融数据中获取所述字段名称列表中每一个字段名称对应的数据;

50、使用所述数据构建与所述结构体相对应的结构化数据。

51、进一步的,在上述的基于区块链的金融数据处理方法中,构建用于从所述链下数据库读取所述非结构化数据的智能合约的步骤具体包括:

52、根据所述链下数据的数据特征构建用于保存查询结果的链下数据结构体;

53、获取所述链下数据库的地址以及所述非结构化数据在所述链下数据库中的标识编码;

54、基于所述非结构化数据在所述链下数据库中的标识编码构建所述非结构化数据的查询语句;

55、构建包括所述链下数据库的地址、所述非结构化数据的查询语句以及从所述链下数据库中查询所述非结构化数据的查询方法的查询结构体;

56、构建将所述查询结构体实例化以调用所述结构体的查询方法从所述链下数据库中查询所述非结构化数据后赋值给所述链下数据结构体的查询函数。

57、进一步的,在上述的基于区块链的金融数据处理方法中,将所述结构化数据以及所述智能合约关联存储到所述新的区块中的步骤具体包括:

58、将包含所述链下数据结构体、所述查询结构体以及所述查询函数的代码编译为字节码;

59、将所述字节码与所述结构化数据关联添加到所述新的区块中。

60、本发明提出了一种基于区块链的金融数据处理系统及方法,通过数据提交接口接收金融机构服务器提交的金融数据,识别所述金融数据的数据格式和数据类型,根据所述数据类型确定所述金融数据对应的区块链子网络,当所述金融数据为非结构化数据时,将所述金融数据写入链下数据库,从所述金融数据中提取基本数据项生成所述金融数据的结构化数据,构建用于从所述链下数据库读取所述非结构化数据的智能合约,将所述结构化数据以及所述智能合约关联存储到所述新的区块中,当所述新的区块的大小或数据量符合预设要求时,将所述新的区块添加到对应的区块链子网络中,能够在保证金融数据共享效率以及金融数据安全的同时充分保障数据提供方的权益。

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