本发明专利技术提出一种基于区块链的多云存储管理系统,包括:用户交互模块,节点数据交互模块,本地数据管理模块,监控展示,身份管理模块;所述节点数据交互模块用于在对等节点之间进行通信;所述本地数据管理模块管理本地现有的数据,验证现有数据,打包生成区块;所述用户交互模块根据用户提供的指令要求,提供用户的信息;所述监控展示模块管理本系统对外展示的数据;所述身份管理模块管理系统内记录数据的身份信息。
A multi cloud storage management system based on blockchain
【技术实现步骤摘要】
一种基于区块链的多云存储管理系统
本专利技术涉及一种存储管理系统,尤其涉及一种基于区块链的多云存储管理系统。
技术介绍
现有的云存储多是集中于单一数据中心的中心化存储服务,目前有相当多的公司提供直接的云存储服务,例如亚马逊所提供的AmazonS3是目前全球范围内使用最为广泛的云存储服务,还有MicrosoftAzure、GoogleCloudStorage、AliyunOSS等。这些存储商提供多种存储服务,以帮助用户来存储和保护各种类型的数据,如网站本身的数据、应用程序在长期运行时产生的数据、需要长期保存的档案等等。去中心化的存储主要有IPFS等,IPFS是目前开源社区比较知名的一个项目,它是一种去中心化的点对点存储网络。现有技术中,单云存储有以下问题:一是供应商的锁定问题,用户的数据遭到这个服务商控制,在使用这个服务商的服务时,如果想要将数据转移到另一个服务商的存储服务下,成本会非常高;二是被供应商的服务价格调整所控制,存储服务商会根据成本的变动,经常性的调整服务的价格,如果有大批量的数据存储在此存储服务商处,则会受到较大的影响。三是云存储服务提供商也无法保证服务的绝对可用性,因为各种人为或是意外的原因,故障情况时有发生,仅在2019年上半年,阿里云就出现了5次故障情况,每次故障会使得存储服务中断几十分钟到数小时,依赖相关存储服务的应用均受到了影响。另外,中心化存储存在着数据可信性可靠性的问题,现有的这些中心化存储均无法完全保证数据不会被篡改,不适合存储对于有数据可信性要求、验证需求的数据。
技术实现思路
因此,本专利技术提出了一种基于区块链的多云存储管理系统。使用多云存储更加灵活可靠,能够有效解决供应商锁定问题,并且能够节约成本,提高数据的可用性。同时针对于数据可信性要求较高、需要便于验证的数据,例如涉及到金融方面的转账、报销数据等,使用区块链进行存储可以有效解决数据可信性的问题。因此研究在云际环境下,如何使用区块链将数据放置到多个云存储供应商中,减少成本同时满足访问延迟、可用性和容错性要求,实现一个可信的存储系统,具有重要意义。附图说明图1为本专利技术的具体流程图;图2为本专利技术上传文件的流程图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。此外,下面所描述的本专利技术各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。系统的架构如图1所示,本专利技术提供了一个多云环境下基于区块链的存储系统设计方案,包含以下模块:用户交互模块,节点数据交互模块,本地数据管理模块,监控展示,身份管理模块等。节点数据交互模块是在对等节点之间进行通信,无论是云内的对等节点还是跨云的对等节点均依赖这一模块进行信息交换,对于生成数据区块的节点需要将区块的信息以及详细数据同步给其它节点。本地数据管理模块是系统内的核心以及功能最为复杂的模块,包括管理本地现有的数据,验证现有数据的正确以及完整性,打包生成区块等。系统内的所有工作都是围绕着这一模块展开的。用户交互模块和用户进行信息交互,这一模块根据用户提供的指令要求,提供给用户相应的信息。包括读写数据,查询数据,查看本系统可以提供的信息如系统运行状况的监控信息等。所述监控展示模块管理本系统对外展示的数据;所述身份管理模块管理系统内记录数据的身份信息。所述模块之间的消息传递,控制流传递的是指令信息,因此为单向传递,如用户向系统发出工作指令,用户交互模块指示本地数据管理模块处理数据,本地数据管理模块指示节点信息交互模块同步数据,身份管理模块指示数据管理模块和节点数据交互模块校验数据身份信息。而对于数据流则为两个模块之间交换数据,因此为双向箭头,如用户可以向系统上传文件,也可以下载文件,各个模块之间也是相互传递数据。在云际环境下需要考虑到云际场景的特性。所有的节点在逻辑上构成一个整体,共同管理所有的数据,每个节点均提供相同的功能,即对数据进行管理并提供读写功能,同时还和系统内的其他节点进行交互。但是因为云际环境的存在,所有节点无法直接通信,因此需要每个云内存在跨云的节点来管理与其他云通信的功能,所以在每个云内要部署一到多个跨云对等节点。在跨云环境下部署本分布式系统,在每个云内指定负责跨云通信的对等节点。之后所有的节点便可启动,进行系统的正常工作。每个节点会对外提供相同的功能,包括读写查询数据等。每个节点都会管理现有的数据,基于区块链的特性,每个节点都可独立验证现有的数据是否是正确完整的。同时每个节点会和其他的节点交换信息,查询是否有新生成的数据区块,如果有新的区块则会同步这部分数据。本系统目前的设计是将全部的数据信息存在区块链上,每一个区块内含有0~n条数据,每条数据可能是一个文件,也有可能是一个文件的元信息,每条数据需要记录下该文件的名称、内容、上传时间、上传节点名称等。每个区块需要记录该区块的校验和、保存的n条数据、打包生成区块的超级节点名、生成区块的时间、数据长度等信息。这个系统假设上传的数据是已经经过验证、真实可靠的,每一个节点会把得到的数据会转发到超级节点。数据记录的时间以同步到超级节点的时间为准,超级节点会在记账权到期时计算生成好区块,并打包好区块同步到系统中。这一区块记录了在这周期下得到的所有数据,节点会优先同步区块头以确定区块的生成,这一部分的少量信息可以迅速在网络中同步完成,之后才会同步数据信息,以防止网络延迟导致数据同步的错误。记账权以固定的时间片方式在不同的超级节点间轮转,每个云内的所有节点所得到的用户数据均会同步给超级节点,超级节点轮流享有记账权,超级节点会将其记账期内所有同步到的数据写入区块。每一区块的校验码=hash(hash(上一个区块的校验码)+hash(本区块的内容)),遵照这个计算方法,每个对等节点就可以验证从初始区块到最新区块的内容是否为完整可靠的,数据构成了一个可验证的“链式结构”。之后在系统运行时,每个节点会定期检查它现有区块内的数据是否符合其校验和,并定期与超级节点交换最新的区块数据,同时每个节点也可以依此算法来计算现在保存的所有数据是否是完整有效的。节点数据交互模块的主要作用就是在不同节点直接自动的去同步所需的信息,其功能实现主要包括三个部分:节点间同步数据、节点间同步区块头、节点间同步区块数据字段。每个节点互相之间需要能交换数据信息,因为每个节点均拥有上传文件的功能,所以即使是普通节点也可以得到需要记录到链上的数据。但由于普通节点并没有记账权,所以需要将得到的文件数据转发给所在云内的超级节点,之后再由超级节点进行打包生成区块。所以每个节点都需要拥有收发数据的功能。节点间同步数据的流程为:步骤1,接收用户上传的文件数据,并且记录下当时的时间以及接收文件的节点名称。步骤2,判断本节点是否为超级节点,如果是则跳转第4步。本文档来自技高网...
【技术保护点】
1.一种基于区块链的多云存储管理系统,其特征在于,包括:用户交互模块,节点数据交互模块,本地数据管理模块,监控展示,身份管理模块;所述节点数据交互模块用于在对等节点之间进行通信;所述本地数据管理模块管理本地现有的数据,验证现有数据,打包生成区块;所述用户交互模块根据用户提供的指令要求,提供用户的信息;所述监控展示模块管理本系统对外展示的数据;所述身份管理模块管理系统内记录数据的身份信息。/n
【技术特征摘要】
1.一种基于区块链的多云存储管理系统,其特征在于,包括:用户交互模块,节点数据交互模块,本地数据管理模块,监控展示,身份管理模块;所述节点数据交互模块用于在对等节点之间进行通信;所述本地数据管理模块管理本地现有的数据,验证现有数据,打包生成区块;所述用户交互模块根据用户提供的指令要求,提供用户的信息;所述监控展示模块管理本系统对外展示的数据;所述身份管理模块管理系统内记录数据的身份信息。
2.如权利要求1所述的系统,其特征在于,在所述基于区块链的多云存储管理系统中与其他云通信的方式为在每个云内要部署一个或多个跨云对等节点,所述每个对等节点会对外提供相同的功能,所述功能包括读写查询数据,独立验证现有的数据是否是正确完整的,所述每个对等节点会和其他的节点交换信息,查询是否有新生成的数据区块,如果有新的区块则会同步这部分数据。
3.如权利要求2所述的系统,其特征在于,所述多云存储管理系统的区块链的数据组织结构为每一个节点会把得到的数据会转发到超级节点,数据记录的时间以同步到超级节点的时间为准,超级节点在记账权到期时计算生成区块,并打包区块同步到系统中,对于每个超级节点,将上一次记账权结束到获得本次记账权视为一个记录数据的周期,所述区块记录在所述一个周期内得到的所有数据,所述超级节点之间优先同步区块头以确定区块的生成,然后同步数据信息。
4.如权利要求3所述的系统,其特征在于,在所述节点数据交互模块用于在对等节点之间进行通信的具体方式包括三部分:节点间同步数据,节点间同步区块头,节点间同步区块数据字段。
5.如权利要求4所述的系统,其特征在于,所述节点间同步数据的具体实现步骤为:
【专利技术属性】
技术研发人员:沃天宇,谢天宇,贾宵雷,罗彦林,
申请(专利权)人:北京航空航天大学,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。