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

文档序号:36101690发布日期:2023-11-21 16:08阅读:29来源:国知局
一种基于区块链的金融数据处理方法与流程

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


背景技术:

1、随着经济的数字化转型,各行各业的数据量呈爆炸式增长,数据的快速、安全传输成了一个关键性技术难题。特别是在金融行业,海量的交易数据需实时传递,对数据传输效率和安全性要求极高。

2、目前金融数据传输主要依赖tcp/ip网络,但其带宽资源有限,容易拥堵。普通ssl/tls传输安全性不足,仅加密传输数据但不保证数据来源可验证。基于传统数据库的中心化处理也无法实现对分布式数据的高效验证。

3、在相关技术中,比如中国专利文献cn116781602a中提供了一种金融数据传输路径优化方法、装置及存储介质,包括:获取多个传输节点组成的多组传输路径,传输节点包括具有路由功能的路由节点、具有路由功能和验证功能的验证节点,路由功能用于转发金融数据,验证功能用于转发金融数据的同时共识验证金融数据;针对每组传输路径根据每个传输节点的路由性能,计算各组传输路径的传输性能分数;确定每组传输路径中验证节点的数量,根据验证节点的数量确定每组传输路径的复用分数;根据传输性能分数与复用分数对每组传输路径进行排名并确定最终传输路径。但是该方案至少存在:每次从不同数据源获取数据都需要进行数据传输操作,跨越不同的网络连接,导致额外的传输时间和网络带宽占用,从而降低了数据传输效率。


技术实现思路

1、1.要解决的技术问题

2、针对现有技术中存在的金融数据传输效率低问题,本发明提供了一种基于区块链的金融数据处理方法,通过构建sdn网络、采用quic协议进行快速自适应数据传输等,提高了金融数据传输的效率。

3、2.技术方案

4、本发明的目的通过以下技术方案实现。

5、本说明书实施例提供一种基于区块链的金融数据处理方法,包括:构建sdn网络用于传输金融数据,sdn网络包含应用层、控制层和基础设施层,控制层采用集中式网络控制;采用quic协议传输金融数据,利用quic协议选择数据的传输路径;在传输金融数据之前,使用qkd协议生成会话密钥,并利用会话密钥对金融数据进行加密;构建区块链网络,使用pbft共识算法对已传输的金融数据进行验证并达成共识;在区块链网络的分布式账本中记录共识结果。

6、进一步地,采用quic协议传输金融数据,利用quic协议选择数据的传输路径的步骤包括:采用quic协议传输金融数据,并利用quic协议的多路传输为不同类型或优先级的数据创建多个数据流;使用tcpcubic拥塞控制算法,根据当前网络状态和第一拥塞窗口大小,获取数据流在第一传输轮回的往返时延rtt1中的第一发送速率r1;在第一传输轮回的往返时延rtt1结束后,利用quic协议的动态路径选择算法对多个预设路径进行评估,选择拥塞状态、传输延迟和丢包率最低的预设路径作为数据流在第二传输轮回的往返时延rtt2中最佳的数据传输路径。

7、进一步地,使用tcpcubic拥塞控制算法,根据当前网络状态和第一拥塞窗口大小,获取数据流在第一传输轮回的往返时延rtt1中的第一发送速率的步骤包括:利用tcpcubic拥塞控制算法初始化参数,参数包含初始窗口大小winitial、拥塞窗口增长率c、初始偏移量k、可调参数α和最大窗口大小wmax;根据初始窗口大小winitial设置数据流的第一拥塞窗口大小;并获取当前时间t和第一传输轮回的往返时延rtt1的持续时间t;监测网络状态,并判断网络是否发生拥塞;当网络发生拥塞时,根据改进的立方函数调整数据流第一拥塞窗口的大小,改进的立方函数的表达式如下:

8、w(t)=c(t-k)^3*e^{α(t-k)}+wmax

9、其中,w(t)为调整后的数据流拥塞窗口的大小;t为当前时间;c为拥塞窗口增长率;k为初始偏移量;α为可调参数;wmax为最大窗口大小;e为自然常数;当网络未发送拥塞时,利用重传和恢复的拥塞避免机制,以减小数据流的拥塞窗口大小;根据调整后的数据流拥塞窗口的大小w(t)和对应的第一传输轮回的往返时延rtt1,计算数据流在第一传输轮回的往返时延rtt1中的第一发送速率r1。

10、进一步地,监测网络状态,并判断网络是否发生拥塞的步骤包含:监测数据流的队列长度q_len和网络状态,包含缓冲区中待发送的数据包数量、网络负载load、带宽利用率u_rate和数据包丢失率p_loss;发送数据流的探索数据包,并为探测数据包设置超时计时器;接收数据流的确认消息和重复确认消息;其中,确认消息表示接收到按序的数据包,重复确认消息表示存在失序的数据包;在预设时间内,当接收到的重复确认消息的数量超过阈值n1时,判断网络发送拥塞,反之判断网络未发生拥塞;根据获得的队列长度q_len和网络状态,计算队列长度变化率rate_of_change,计算公式计算为:

11、rate_of_change=(当前队列长度-上次测量队列长度)/时间间隔;

12、其中,当前队列长度为t时刻测量得到的队列长度;上次测量队列长度为t-1时刻测量得到的队列长度;时间间隔为t时刻和t-1时刻的时间间隔;

13、利用队列长度变化率rate_of_change计算丢包概率p_loss,计算公式为:

14、p_loss=p_min+(p_max-p_min)*(q_len-n2)/(q_max-n2)*k|rate_of_change|

15、其中,p_min为设置的最小丢包概率;p_max为设置的最大丢包概率;q_len为当前时刻的队列长度;n2为预设的队列长度阈值;q_max为最大队列长度;k为比例系数;|rate_of_change|为队列长度变化率的绝对值。

16、进一步地,选择数据流最佳的数据传输路径的步骤包括:选择dqn或ddpg作为深度学习模型,并设置模型的初始化参数;获取网络当前状态信息和路径特征信息,其中路径特征信息包含带宽、路径跳数和路径切换成本;将网络当前状态信息输入深度强化学习模型,预测每个路径下的q值;根据ε-greedy策略,选择初始最佳路径用于数据传输;通过选择的初始最佳路径发送数据流,并监测网络状态和路径特征,以获取环境反馈;根据传输延迟最小化作为目标设计奖励函数,并根据奖励函数计算奖励值;使用奖励值通过反向传播算法更新深度强化学习模型的参数;重复路径选择、数据传输、网络监测和模型更新过程,直至获取全局最佳路径。

17、进一步地,根据贪婪策略,在网络的当前状态下,选择初始的最佳路径的步骤包括:采用ε-greedy策略,设置超参数ε,超参数ε为小于1的正数;利用随机数生成算法,生成一个随机数rand1,随机数rand1的取值范围n3至n4;当随机数rand1小于ε时,利用轮盘选择算法选择随机路径作为最佳路径;否则,选择当前状态下q值最大的路径作为最佳路径。

18、进一步地,当随机数rand1小于ε时,利用轮盘选择算法选择随机路径作为最佳路径的步骤包括:计算每个可能路径i的被选择概率pi,pi通过如下公式计算:

19、pi=qi/sum(q1,q2,...,qn)

20、其中,qi为路径i的q值,sum(q1,q2,...,qn)为n条路径的q值之和;将值域[0,1]划分为n个子区间,每个子区间i的范围根据pi确定;通过随机数生成算法生成一个0到1范围内的随机数rand2;判断随机数rand2所在的子区间i;选择第i条路径作为随机路径用于数据传输。

21、进一步地,构建区块链网络,使用pbft共识算法对已传输的金融数据进行验证并达成共识的步骤包括:区块链节点d接收到数据后,将数据存入rabbitmq消息队列;区块链节点d的工作线程从rabbitmq消息队列中获取交易数据,组装成merkle树格式的批量交易数据块;区块链节点d利用pbft共识算法生成批量交易数据块的哈希值m1,并将m1广播给其他节点进行预验证;区块链节点d利用pbft共识算法接收其他节点的预验证响应的哈希值m2,并利用哈希比对函数比对m1和m2;如果m1和m2一致,区块链节点d利用pbft共识算法生成提交证明的哈希值m3,并将m3广播给其他节点;区块链节点接收其他节点的提交证明的哈希值m4,并利用fabricsdk将交易结果写入hyperledgerfabric区块链账本。

22、进一步地,区块链节点d的工作线程从rabbitmq消息队列中获取交易数据,组装成merkle树批量格式的步骤包括:定义交易数据块,交易数据块包含交易列表transactions和merkle根哈希值;从rabbitmq消息队列中读取交易列表transactions;利用merkle树算法计算交易列表transactions的merkle树,生成merkle根哈希值;设置交易数据块的对象tx_block,将生成的交易列表transactions和merkle根哈希值输入对象tx_block;将对象tx_block序列化为字节数组bytes,用于网络传输。

23、进一步地,区块链节点d利用pbft共识算法生成批量交易数据块的哈希值m1,并将m1广播给其他节点进行预验证的步骤包括:区块链节点d利用pbft共识算法,根据sha256算法计算出交易数据块的哈希值m1;区块链节点d生成预准备消息,预准备消息包含视图号、序列号和哈希值m1;区块链节点d通过点对点通信向其他节点广播预准备消息;其他节点分别根据预准备消息,验证视图号和序列号的连续性,并接收到的交易数据块计算哈希值m1',将m1'与m1进行验证;其他节点分别将视图号、序列号和哈希值的验证结果构造为准备消息,发送回d;当d接收到超过2f个一致的验证结果后,结束验证,其中f为正整数。

24、3.有益效果

25、相比于现有技术,本发明的优点在于:

26、(1)sdn允许根据实际流量情况调整路由和资源分配,避免网络拥塞,根据流量需求进行动态的路由和资源分配,通过动态的流量管理和资源分配,确保了金融数据的传输过程中网络带宽得到有效利用。sdn还能够在实时监测网络流量的基础上缓解拥塞情况,进一步提高了网络的稳定性和数据传输的吞吐量,提高了数据传输效率;

27、(2)quic的多路传输机制允许多个数据流同时传输,从而提高了金融数据的传输效率。它的拥塞控制算法能够实时监测网络条件,选择最佳路径,避免数据包丢失,减少了数据传输的延迟。这有助于金融数据在高速和高可靠性的网络环境下快速传输,提升了数据传输效率;

28、(3)qkd提供了不可破解的加密密钥,确保了金融数据在传输过程中的机密性。pbft算法则确保了数据的完整性和可验证性,防止数据被篡改。这两项技术共同保障了数据的安全性,避免了数据泄露或损坏,从而减少了传输重传和数据安全问题,提高了数据传输效率。

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