[发明专利]基于区块链的数据处理系统有效
申请号: | 201810794795.6 | 申请日: | 2018-07-19 |
公开(公告)号: | CN109002725B | 公开(公告)日: | 2021-05-18 |
发明(设计)人: | 樊玉琦;邹菁琳;刘思宇;尹祺然;关欣 | 申请(专利权)人: | 合肥工业大学 |
主分类号: | G06F21/60 | 分类号: | G06F21/60;G06F21/64;G06F16/22 |
代理公司: | 北京旭路知识产权代理有限公司 11567 | 代理人: | 董媛;王莹 |
地址: | 230009 安*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 区块 数据处理系统 | ||
1.一种基于区块链的数据处理系统,其特征在于,包括:基础设施层、处理层、应用层;
所述基础设施层由门户、客户端和基于对等网络通信的N个服务器节点组成,每个节点建立一条区块链的初始区块并维护一条区块链;
所述门户接收来自客户端的请求时,从N个服务器节点组成的网络中随机选取出K个主节点,其中,N=K,K=3,K为奇数;
所述门户获取所述K个主节点的地址,将所述K个主节点的地址发至所述客户端;
所述客户端按照所述K个主节点的地址向所述K个主节点发送数据处理请求和数据;
所述K个主节点根据所述数据处理请求对所述数据进行处理;
所述处理层用于实现系统客户端和基础设施层的交互和处理,包括以下四个模块:数据上传模块、单区块验证模块、周期性区块链验证模块、数据查询模块,所述数据上传模块负责生成区块并将区块完整无误的插入全部服务器的区块链中;所述单区块验证模块负责检验并修正某个区块的信息;所述数据查询模块负责接收应用层的数据查询请求并返回准确的查询内容;所述周期性区块链验证模块负责按周期检验基础设施层中各个服务器维护的区块链的正确性;
所述应用层用于根据用户的请求调用处理层的模块,并在此层实现访问控制。
2.根据权利要求1所述的系统,其特征在于,所述K个主节点根据所述数据处理请求对所述数据进行处理包括:
所述K个主节点可接收到所述客户端发送的数据上传请求或数据查询请求;
若所述K个主节点接收到所述数据上传请求,则调用单区块验证模块对本地最后一个区块进行检验修正,经由单区块验证模块处理后,将所述客户端发送的所述数据处理生成区块,向全网中其他N-1个节点广播新生成的区块和所述客户端发送的原数据;
第一节点接收到所述K个主节点发送的所述区块和所述数据的副本后,保留重复次数最多的一项副本并反馈信息给所述K个主节点,所述第一节点为任一节点;
所述K个主节点分别接收所述第一节点广播的反馈数据,并将重复次数最多的反馈数据作为结果反馈给所述客户端;
所述系统还包括:
所述客户端收到所述K个主节点的反馈,将重复次数最多的数据作为最终结果呈现给用户;
若所述K个主节点接收到所述数据查询请求,则K个主节点分别调用自身单区块验证模块对所述数据查询请求中对应的区块进行检验,检验后将本地数据的副本发给客户端;所述客户端收到所述K个主节点的反馈,将重复次数最多的数据作为最终结果呈现给用户。
3.根据权利要求1所述的系统,其特征在于,所述系统中节点的区块链具有二维链式存储结构;
主链由用户的信息生成,每新增一个用户则在所述主链上新增一个区块;
所述用户拥有自己的侧链,用户存储数据时则在所述侧链新增一个区块;
所述用户的所有数据的区块组成一条侧链。
4.根据权利要求1至3中任一项所述的系统,其特征在于,所述区块包括区块头;
所述区块头记录:前区块哈希值、本区块哈希值、时间戳;
所述前区块哈希值,即将区块链中前一个区块的所有内容以及前一区块对应数据的所有内容利用SHA256算法计算获取哈希值,通过所述前区块哈希值每个区块才首尾相连组成了区块链;
所述本区块哈希值,由区块主体中所有信息哈希计算得来;
所述时间戳,用于记录生成该区块的时间。
5.根据权利要求1至3中任一项所述的系统,其特征在于,所述区块包括区块主体;
所述区块主体记录系统信息,所述系统信息包括对系统的操作和录入系统的信息内容,且数据的内容存储在数据库中,数据的哈希值存储在区块当中;
所述系统信息包括:
用户ID;
数据的标题;
数据的描述;
本区块对应数据的哈希值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥工业大学,未经合肥工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810794795.6/1.html,转载请声明来源钻瓜专利网。