[发明专利]一种面向区块链日志存储的高可靠低开销数据存储方法在审

专利信息
申请号: 202111333973.3 申请日: 2021-11-11
公开(公告)号: CN113986143A 公开(公告)日: 2022-01-28
发明(设计)人: 刘芳;梁丰洲;苏屹宏;蔡振华 申请(专利权)人: 中山大学
主分类号: G06F3/06 分类号: G06F3/06;G06F21/64;G06Q20/38;G06Q20/40
代理公司: 广州粤高专利商标代理有限公司 44102 代理人: 禹小明
地址: 510275 广东*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 面向 区块 日志 存储 可靠 开销 数据 方法
【权利要求书】:

1.一种面向区块链日志存储的高可靠低开销数据存储系统,其特征在于,包括:日志客户端、日志联盟链节点,所述日志客户端与所述日志联盟链节点通过RPC接口通信连接,其中,日志客户端用于对日志文件进行编码得到编码块,所述日志联盟链节点用于存储编码块和日志文件的元数据。

2.根据权利要求1所述的一种面向区块链日志存储的高可靠低开销数据存储方法,其特征在于,所述日志客户端包括有:纠删码引擎、区块链轻客户端,第一RPC接口,其中所述纠删码引擎用于对日志文件进行纠删码编码,所述区块链轻客户端用于验证交易的存在,所述第一RPC接口用于与日志联盟链节点数据交互。

3.根据权利要求2所述的一种面向区块链日志存储的高可靠低开销数据存储系统,其特征在于,所述纠删码引擎对日志文件进行编码的过程为:

将每一份日志文件切分成n-2f个数据块,通过(n-2f,2f)-RS编码后生成2f个校验块;n-2f个数据块和2f个校验块统称为编码块,随后将n-2f个编码块上传到联盟链节点上,n表示总的节点个数,f表示能容忍的恶意节点个数。

4.根据权利要求3所述的一种面向区块链日志存储的高可靠低开销数据存储系统,其特征在于,所述区块链轻客户端轻中的区块头与全节点保持同步,而区块头中保存了默克尔树根,当轻客户端向全节点查询某一条交易时,全节点将会返回这条交易以及交易的默克尔证明,通过默克尔证明可以验证这条交易的存在。

5.根据权利要求1所述的一种面向区块链日志存储的高可靠低开销数据存储方法,其特征在于,所述日志联盟链节点包括:日志存储层、区块链层、第二RPC接口,所述日志存储层用于存储编码块,所述区块链层用于存储日志的元数据,所述第二RPC接口用于与日志客户端数据交互;其中所述区块链层包括:PBFT共识引擎、交易执行模块、P2P网络,所述PBFT共识引擎用于执行现有的PBFT共识算法,所述交易执行模块用于收集交易、打包交易的模块,所述P2P网络为区块链中分布式的独立的区块链节点组成的对等网络。

6.一种面向区块链日志存储的高可靠低开销数据存储方法,所述方法应用于权利要求1-5任一项所述的面向区块链日志存储的高可靠低开销数据存储系统,其特征在于,包括以下步骤:

将待存储的日志文件分为两个存储阶段,所述两个存储阶段包括:准备阶段和提交阶段;

将日志文件分阶段存入区块链日志存储系统。

7.根据权利要求6所述的一种面向区块链日志存储的高可靠低开销数据存储方法,其特征在于,在准备阶段区块链协议不工作,区块链服务器作为存储服务器,客户端向服务器发送编码块,并保存服务器返回的签名;

在提交阶段,客户端向区块链发送提交请求,并在请求中附加上准备阶段服务器返回的签名,区块链系统对签名进行验证以确保系统已经保存了足够的编码块。

8.根据权利要求7所述的一种面向区块链日志存储的高可靠低开销数据存储方法,其特征在于,

日志文件在存储的两个阶段中,联盟链节点在两个阶段中扮演了两种不同的角色,在第一阶段,联盟链逻辑上为链下存储节点,运行日志存储层的协议;日志客户端对日志文件进行编码后上传给联盟链节点后,联盟链节点将检查编码块并存储在节点上的KV数据库中,当成功存储后,节点会使用自身的私钥对编码块进行签名,所述签名将会返回并保存在区块链中,以证明节点已经成功保存了此日志编码块。

9.根据权利要求8所述的一种面向区块链日志存储的高可靠低开销数据存储方法,其特征在于,当日志客户端收集到了超过n-f个签名后足够的签名后,表明此时至少有n-2f个非恶意节点已经正常保存了日志编码块,此时日志客户端可以发起交易,将签名和其他日志文件元数据以交易的形式上传到日志联盟链中,区块链节点将检查提交的交易,完成检查后将以打包并添加在区块链中,同时会有一个状态数据库来索引日志文件;

用户通过客户端查询特定日志时首先从任意一个区块链获取到元数据,再通过日志存储层获取到n-2f个正确编码块后在客户端解码恢复日志。

10.根据权利要求9所述的一种面向区块链日志存储的高可靠低开销数据存储方法,其特征在于,客户端日志文件存储过程具体步骤为:

A1:将单个日志文件作为输入参数,利用纠删编码函数对日志文件的数据进行编码得到与集群数量相等个数的编码块,并通过hash运算计算校验和;

A2:联盟链节点Ni按照公钥从1到n进行排序,客户端向联盟链节点Ni发送对应的编码块Ci、日志文件的校验、以及编码块Ci的校验,n表示集群数量;

A3:联盟链节点检查编码块是否与校验一致;并确保未曾提交过编码块对应的日志文件;

A4:定义键值对,将编码块中日志文件的校验作为键,并将编码块存储在节点本地的对象数据上,将与日志文件关联的数据作为值,所述的值包括编码后的块文件的数据本身、校验信息,以及涵盖了客户端信息、日志时间戳、应用程序路径信息的元数据,其中所述元数据的值为空时表示日志文件处于准备阶段,尚未被提交;

A5:联盟链节点返回对日志文件的校验信息和编码后的文件校验信息的签名以表明接收到并保存了编码块,客户端会在下一阶段将签名提交,作为节点正常接收的凭证;

A6:检测客户端是否收集到超过n-2f条联盟链节点返回的准备完毕消息,若是,将唤醒主线程;

A7客户端将日志文件元数据以及联盟链节点返回的签名作为交易提交。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中山大学,未经中山大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202111333973.3/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top