一种基于区块链的可信云存储方法及系统技术方案

技术编号:21612386 阅读:28 留言:0更新日期:2019-07-13 20:43
本发明专利技术涉及一种基于区块链的可信云存储方法及系统,该方法包括:接入区块链网络的至少两个云存储服务器共识协定出记录权节点和非记录权节点;记录权节点从区块链网络接收密文文件,且基于密文文件构建完整区块,以及将完整区块发布至区块链网络;非记录权节点从区块链网络接收完整区块,且验证完整区块是否可信,若是,则将完整区块加入区块链,若否,则停止将完整区块加入区块链。本发明专利技术提供的基于区块链的可信云存储方法及系统,非记录权节点可以只将可信性验证通过的完整区块加入区块链,实现非记录节点基于区块链为密文文件提供可信云存储服务,降低了区块链占用非记录权节点中的磁盘空间,提高了磁盘性能。

A Trusted Cloud Storage Method and System Based on Block Chain

【技术实现步骤摘要】
一种基于区块链的可信云存储方法及系统
本专利技术涉及云存储
,具体涉及一种基于区块链的可信云存储方法及系统。
技术介绍
目前,云存储倾向于采用第三方服务商提供的云存储解决方案,这种云存储解决方案面临着第三方服务商不可信的问题,需要可信的第三方服务商来保证云存储解决方案提供的云存储服务是可信的。在接入区块链网络的云存储服务器中,区块链通过数字证书、签名和加密等方式为海量数据提供安全保障,将区块链应用于上述云存储服务器中能够有效提高云存储服务的可信性,但是云存储服务器需要为可信云存储服务提供较多的磁盘空间。
技术实现思路
针对现有技术中云存储服务器为基于区块链的可信云存储提供较多的磁盘空间的不足,本专利技术提供一种基于区块链的可信云存储方法及系统。第一方面,本专利技术提供了一种基于区块链的可信云存储方法,包括:接入区块链网络的至少两个云存储服务器共识协定出记录权节点和非记录权节点;所述记录权节点从所述区块链网络接收密文文件,且基于所述密文文件构建完整区块,以及将所述完整区块发布至区块链网络;所述非记录权节点从所述区块链网络接收所述完整区块,且验证所述完整区块是否可信,若是,则将所述完整区块加入区块链,若否,则停止将所述完整区块加入所述区块链。第二方面,本专利技术提供了一种基于区块链的可信云存储系统,包括:接入区块链网络的至少两个云存储服务器,用于共识协定出记录权节点和非记录权节点;所述记录权节点,用于从所述区块链网络接收密文文件,且基于所述密文文件构建完整区块,以及将所述完整区块发布至区块链网络;所述非记录权节点,用于从所述区块链网络接收所述完整区块,且验证所述完整区块是否可信,若是,则将所述完整区块加入区块链,若否,则停止将所述完整区块加入所述区块链。本专利技术提供的基于区块链的可信云存储方法及系统的有益效果是:记录权节点基于密文文件构建并发布完整区块至区块链网络,使得非记录权节点能够从区块链网络中获得完整区块,非记录权节点可以只将可信性验证通过的完整区块加入区块链,实现非记录节点基于区块链为密文文件提供可信云存储服务,相比于传统的云存储方案,降低了区块链占用非记录权节点中的磁盘空间。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作以简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种基于区块链的可信云存储方法的流程示意图;图2为本专利技术实施例提供的区块结构的示意图;图3为本专利技术实施例提供的另一种基于区块链的可信云存储方法的流程示意图;图4为本专利技术实施例提供的另一种基于区块链的可信云存储方法的流程示意图;图5为本专利技术实施例提供的另一种基于区块链的可信云存储方法的流程示意图;图6为本专利技术实施例提供的一种基于区块链的可信云存储系统的结构示意图;图7为本专利技术实施例提供的另一种基于区块链的可信云存储系统的结构示意图。具体实施方式以下结合附图对本专利技术的原理和特征进行描述,所举实例只用于解释本专利技术,并非用于限定本专利技术的范围。实施例一如图1所示,本专利技术实施例的一种基于区块链的可信云存储方法,该方法包括:步骤110、接入区块链网络的至少两个云存储服务器共识协定出记录权节点和非记录权节点;步骤120、记录权节点从区块链网络接收密文文件,且基于密文文件构建完整区块,以及将完整区块发布至区块链网络;步骤130、非记录权节点从区块链网络接收完整区块,且验证完整区块是否可信,若是,则将完整区块加入区块链,若否,则停止将完整区块加入区块链。区块链网络可以包括对等计算机网络(P2P),接入区块链网络的诸如云存储服务器和客户端等设备成为云存储网络节点,记录权节点是获得记录密文文件权限的云存储网络节点,非记录权节点是未获得记录密文文件权限的云存储网络节点。非记录权节点将验证完整区块的可信性作为在区块链中添加完整区块的条件,过滤掉可信性验证不通过的完整区块,仅将可信性验证通过的完整区块加入区块链,区块链具备防篡改、防泄漏、透明和可追溯的特点,能够为密文文件提供安全保障,实现非记录节点基于区块链为密文文件提供可信云存储服务,相比于传统的云存储方案,降低了区块链占用非记录权节点中的磁盘空间,并且能够更好地整合及利用闲置存储空间,提高存储空间的使用率,提高了磁盘性能。作为可选的实施方式,步骤110具体包括:步骤111、任一云存储服务器采用性能贡献计算公式对性能向量和权重向量进行计算,得到性能贡献值,且统计应用代币拥有量,以及基于性能贡献值、应用代币拥有量和委托权益证明协议选举出至少一个投票节点;步骤112、至少一个投票节点基于一致性哈希策略从至少两个云存储服务器中选择出记录权节点,且将不同于记录权节点的云存储服务器确定为非记录权节点。在一些具体实例中,云存储服务器的个数为4个,4个云存储服务器分别采用性能贡献计算公式对性能向量[CiDiMiTiRi]和权重向量[k1k2k3k4k5]进行加权计算,得到性能贡献值Si。性能贡献计算公式具体为:Si=k1×Ci+k2×Di+Mi×k3+Ti×k4+Ri×k5其中,Si表示第i个云存储服务器的性能贡献值,Ci表示第i个云存储服务器在设定时段内的CPU主频性能,Di表示第i个云存储服务器的空闲磁盘占比,Mi表示第i个云存储服务器的内存使用占比,Ti表示第i个云存储服务器接入区块链网络的总计时,Ri表示第i个云存储服务器的平均响应时间,k1表示与CPU主频性能Ci对应的权重,k2表示与空闲磁盘占比Di对应的权重,k3表示与内存使用占比Mi对应的权重,k4表示与总计时Ti对应的权重,k5表示与平均响应时间Ri对应的权重。在一些具体实例中,采用统计函数token=Sum(wallet)统计得到应用代币拥有量,采用共识函数StockServers=Vote(Si,token,DPOS)投票选举出投票节点,其中,DPOS为委托权益证明协议,如此可以通过结合委托权益证明协议和一致性哈希策略实现文件记录权的分派,以完成共识协定。作为可选的实施方式,一致性哈希策略包括负载因子计算公式、随机函数和总值计算公式。步骤112具体包括:获取节点哈希值;基于节点哈希值确定在所投票节点所属一致性哈希域上的任一云存储服务器;针对任一云存储服务器收集负载参数;基于负载因子计算公式对负载参数进行计算,得到负载因子;将负载因子和性能贡献值组合为综合因子,综合因子用于表征对应所云存储服务器的一致性哈希性能;应用随机函数生成随机数;从综合因子中分解出负载因子和所述性能贡献值;基于总值计算公式对随机数、负载因子和性能贡献值进行求和,得到总值;基于总值将与节点哈希值对应的云存储服务器确定为记录权节点。投票节点能够将哈希环平均分割为不同的一致性哈希域,并沿着哈希环的顺时针方向统计在各个一致性哈希域上的所有云存储服务器的负载情况,获得云存储服务器集合,并收集各个云存储服务器的负载参数。在一些具体实例中,与投票节点对应的节点哈希值表示为:skey=ServerHash(1k,server),在投票节点所属一致性哈希域上的任一云存储服务器表示为:T=GetCircleSer本文档来自技高网...

【技术保护点】
1.一种基于区块链的可信云存储方法,其特征在于,包括:接入区块链网络的至少两个云存储服务器共识协定出记录权节点和非记录权节点;所述记录权节点从所述区块链网络接收密文文件,且基于所述密文文件构建完整区块,以及将所述完整区块发布至区块链网络;所述非记录权节点从所述区块链网络接收所述完整区块,且验证所述完整区块是否可信,若是,则将所述完整区块加入区块链,若否,则停止将所述完整区块加入所述区块链。

【技术特征摘要】
1.一种基于区块链的可信云存储方法,其特征在于,包括:接入区块链网络的至少两个云存储服务器共识协定出记录权节点和非记录权节点;所述记录权节点从所述区块链网络接收密文文件,且基于所述密文文件构建完整区块,以及将所述完整区块发布至区块链网络;所述非记录权节点从所述区块链网络接收所述完整区块,且验证所述完整区块是否可信,若是,则将所述完整区块加入区块链,若否,则停止将所述完整区块加入所述区块链。2.根据权利要求1所述的基于区块链的可信云存储方法,其特征在于,在所述记录权节点基于所述密文文件构建完整区块之前,还包括:请求节点将用于唯一标识待加密文件的文件标识信息发送至所述区块链网络;任一所述云存储服务器从所述区块链网络接收所述文件标识信息,且基于所述文件标识信息去重检验是否存在所述待加密文件,若否,则通过所述区块链网络向所述请求节点反馈用于指示对应的所述云存储服务器中不存在所述待加密文件的第一状态消息,若是,则通过所述区块链网络向所述请求节点反馈用于指示对应的所述云存储服务器已存在所述待加密文件的第二状态信息;当所述请求节点从所述区块链网络接收到所述第一状态信息时,所述请求节点基于收敛加密模型对所述待加密文件进行加密,得到所述密文文件,且将所述密文文件上传给接入所述区块链网络的缓存节点;当所述请求节点从所述区块链网络接收到所述第二状态信息时,所述请求节点停止加密所述待加密文件。3.根据权利要求2所述的基于区块链的可信云存储方法,其特征在于,所述收敛加密模型包括密钥加密函数和文件加密函数,当所述请求节点从所述区块链网络接收到所述第一状态信息时,所述请求节点基于收敛加密模型对所述待加密文件进行加密,得到所述密文文件,具体包括:所述请求节点应用所述密钥加密函数对所述待加密文件进行加密,得到文件密钥;所述请求节点应用所述文件加密函数对所述待加密文件和所述文件密钥进行加密,得到所述密文文件。4.根据权利要求1所述的基于区块链的可信云存储方法,其特征在于,接入区块链网络的至少两个云存储服务器共识协定出记录权节点和非记录权节点,具体包括:任一所述云存储服务器采用性能贡献计算公式对性能向量和权重向量进行计算,得到性能贡献值,且统计应用代币拥有量,以及基于所述性能贡献值、所述应用代币拥有量和委托权益证明协议选举出至少一个投票节点;至少一个所述投票节点基于一致性哈希策略从至少两个所述云存储服务器中选择出所述记录权节点,且将不同于所述记录权节点的所述云存储服务器确定为所述非记录权节点。5.根据权利要求4所述的基于区块链的可信云存储方法,其特征在于,所述性能贡献计算公式具体为:Si=k1×Ci+k2×Di+Mi×k3+Ti×k4+Ri×k5其中,Si表示第i个所述云存储服务器的所述性能贡献值,Ci表示第i个所述云存储服务器在设定时段内的CPU主频性能,Di表示第i个所述云存储服务器的空闲磁盘占比,Mi表示第i个所述云存储服务器的内存使用占比,Ti表示第i个所述云存储服务器接入所述区块链网络的总计时,Ri表示第i个所述云存储服务器的平均响应时间,k1表示与所述CPU主频性能Ci对应的权重,...

【专利技术属性】
技术研发人员:熊曾刚莫磊宋伟徐方彭智勇
申请(专利权)人:湖北工程学院
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1