一种基于区块链的数据共享平台及其实现方法技术

技术编号:20370011 阅读:176 留言:0更新日期:2019-02-16 20:08
一种基于区块链的数据共享平台及其实现方法,所述平台包括多个客户端、一个或多个接入服务器和区块链系统,所述客户端用于提交注册申请、存储数据指令、查询数据指令、使用数据指令;所述接入服务器用于接收客户端提交的操作请求、验证客户端身份和操作请求、以及将数据操作请求提交给区块链系统并将结果反馈给客户端;所述区块链系统用于控制数据的存储和访问、存储数据以及存储对数据的引用和摘要信息,利用区块链控制访问权限并用做防篡改日志。本发明专利技术将数据的所有权和使用权分离,对数据的权属和使用提供可追溯路径用于审计,异步执行查询和交易,提高数据共享效率和可靠性。

A Data Sharing Platform Based on Block Chain and Its Implementation

A data sharing platform based on block chain and its implementation method include multiple clients, one or more access servers and block chain system. The client is used to submit registration applications, store data instructions, query data instructions and use data instructions. The access server is used to receive operation requests submitted by the client, verify the identity and operation of the client. The block chain system is used to control the storage and access of data, to store data and to store reference and summary information of data, to control access rights by using block chain and to use it as tamper-proof log. The invention separates ownership and use right of data, provides traceable path for audit, asynchronously executes query and transaction, and improves efficiency and reliability of data sharing.

【技术实现步骤摘要】
一种基于区块链的数据共享平台及其实现方法
本专利技术属于计算机
,涉及区块链技术,为一种基于区块链的数据共享平台及其实现方法。
技术介绍
在信息化社会,数据作为一种新的生产资料,已经成为大家的共识。传统的数据共享特性是不可逆的,一旦数据被发送,数据将无法收回并限制它的使用。因此传统的数据交易过程,往往会引发诸多法律纠纷问题,如:数据的非法倒卖、数据的所有权纠纷等等。这些问题都是由于数据交易信息不透明,甚至存在虚假信息,这就给举证和追责造成了很大困难。区块链的分布式网络使每个完整节点的账簿通过分布式网络传播到其余节点,节点通过共识机制验证账簿真实性,保证了区块链的去中心化、永久性、不可篡改的特性,但是原始的区块链分布式特性使数据存储量有限,数据存储一般依托于交易记录中。所以基于区块链的特性,将数据的存储管理与交易分开,创建新的区块链状态数据库用于存储数据,该区块链状态数据库使用面向文本的方式存储经过加密的原始大数据,将数据的所有权信息广播在区块链上,并将数据存储和访问控制协议编入区块链,通过利用区块链控制访问权限并用做防篡改日志,数据交易无需访问原始数据本身,数据的查询也无需访问交易记录。
技术实现思路
本专利技术的目的是,为了克服现有技术中存在的不足,本专利技术提供一种基于区快链的数据共享平台,通过去中心化和去信任的方式集体维护一个可靠分布式数据源。本专利技术的技术方案为:一种基于区块链的数据共享平台,所述平台包括多个客户端、一个或多个接入服务器和区块链系统,所述客户端配置有软件程序,用于提供用户与平台之间进行交互的服务接口,所述交互包括存储、查询和购买:客户端提交存储请求,将数据传输至接入服务器,客户端还用于设置对所存储数据的访问权限;客户端将查询请求提交至接入服务器并接收接入服务器返回的查询结果;客户端还用于向接入服务器发送购买请求,购买成功后收到接入服务器返回的读取秘钥,再向接入服务器发送读取请求以获取加密的数据;所述接入服务器配置有软件程序,用于接收客户端提交的操作请求,客户端首先通过服务接口提交身份注册请求,请求区块链注册信息和私钥,接入服务器收到身份注册请求,从区块链系统获取相应的注册信息和私钥后将其通过服务接口返回给客户端,之后接入服务器对客户端实现以下操作:根据客户端的存储请求将数据发送给区块链系统进行存储,并将数据唯一标识、摘要信息和访问权限设置信息存储到区块链系统;根据客户端的数据查询请求向区块链系统请求对应的数据索引并反馈给客户端;根据客户端的购买请求向区块链请求对应的数据读取秘钥并反馈给客户端;根据客户端的读取请求向区块链请求对应的数据,进行数据分析建模并反馈给客户端;所述区块链系统配置有软件程序实现状态数据库、交易记录组件、智能合约和身份管理组件,其中状态数据库、交易记录组件和智能合约部署在区块链系统的分布式网络节点上,状态数据库用于存储数据,交易记录组件存储所有操作记录,智能合约为数据共享平台的业务逻辑,包括数据逻辑、验证逻辑和交易逻辑,用于管理状态数据库和交易记录组件的操作;身份管理组件用于控制客户端的身份和数据相关操作的访问权限;区块链系统根据客户端的存储、查询、购买、读取请求向接入服务器反馈相应操作请求的结果。所述服务接口包含统一设置的通信规则,且服务接口需获得来自接入服务器授权后才能访问。所述区块链系统的身份管理组件用于颁发区块链注册信息,包括基于PKI的可验证身份标识,并制定规则用以管理身份的权限,用于控制客户端的操作。进一步的,客户端基于PKI的签名进行操作,客户端使用私钥对操作请求签名,区块链系统共识网络中的节点通过共识机制使用请求客户端的公钥验证请求签名,保证客户端操作请求的真实、有效、可追踪及不可否认。作为优选方式,区块链系统的分布式网络是由多个组织和共识节点构成的共识网络,每个组织包含多个普通节点,不同的普通节点之间形成联盟进行安全隐私的通信,区块链系统完成一个操作请求的整个过程为共识过程。进一步的,共识过程分为三个阶段:第一阶段,区块链系统收到操作请求后,向部分普通节点,即背书节点发送操作请求验证,背书节点执行请求的相关智能合约,得出验证请求和预执行结果并将其签名,即背书后反馈给与之关联的共识节点;第二阶段,共识节点接收到足够多节点关于该操作请求的背书后,将该操作请求与其他请求进行排序后打包成块,共识节点将块发送给所有的关联的普通节点;第三阶段,普通节点同步块,执行其中的操作请求,应用到自身的状态数据库和交易记录组件中。上述基于区块链的数据共享平台的实现方法,通过客户端获得服务接口后进行数据存储、数据查询和购买、以及数据读取:所述数据存储过程包括以下步骤:步骤S1、数据通过客户端通过文本的形式上传接入服务器;步骤S2、接入服务器发送请求到区块链系统验证客户端身份和数据存储请求,区块链系统的身份管理组件验证提出请求的客户端的身份和存储操作权限,验证通过进入步骤S3,否则拒绝请求,结束数据存储过程;步骤S3、接入服务器向区块链系统提交存储请求,区块链系统根据客户端的存储请求完成整个共识过程,再由区块链系统状态数据库存储相应数据;所述数据查询和购买过程包括以下步骤:步骤G1、客户端向接入服务器提交查询请求;步骤G2、接入服务器收到客户端请求,向区块链系统提交查询请求获取到相应的数据索引,将查询结果返回给客户端;步骤G3、根据查询结果,客户端提交购买请求,所述购买请求中包含客户端公钥、目标数据索引和时间戳;步骤G4、接入服务器收到客户端购买请求,向区块链系统发送购买请求,区块链系统验证购买合法性后执行支付并返回数据读取秘钥给接入服务器;步骤G5、客户端收到接入服务器返回的数据读取秘钥,所述数据读取秘钥用于表明读取权限;所述数据读取过程包括以下步骤:步骤H1、客户端向接入服务器发出读取请求,读取请求包含客户端公钥、数据读取秘钥和时间戳;步骤H2、接入服务器收到客户端请求后,调用区块链系统服务验证客户端身份和读取权限,验证成功则继续步骤H3,否则拒绝请求,结束数据读取过程;步骤H3、接入服务器发送读取请求给区块链系统,区块链系统从各节点状态数据库读取目标数据后将数据打包反馈给接入服务器,接入服务器根据读取指令完成相应的数据分析;步骤H4、接入服务器将对数据的分析操作记录写入区块链系统,使用客户端公钥对数据分析结果加密,将加密数据返回客户端;步骤H5、客户端使用私钥解密数据得到结果。进一步的,步骤S1中,数据具有规定格式,包括公钥、数据签名、数据和时间戳,其中数据为原始数据经客户端进行哈希处理的结果,并包含唯一标识编码,客户端使用自身的私钥对哈希处理后的数据进行加密,并在上传数据时对数据生成数据签名。进一步的,步骤S3中,区块链系统的状态数据库使用面向文档的方式以键值对存储数据,将数据的唯一标识编码作为键,数据作为文本为值进行存储。进一步的,步骤G2中,区块链系统的身份管理组件验证查询提出请求的客户端的身份和查询操作权限后,区块链系统根据查询请求完成整个共识过程,其中节点的智能合约与节点的状态数据库交互,获取目标数据的索引,区块链系统将数据索引打包返回给接入服务器。进一步的,步骤H3中,区块链系统根据读取请求中的客户端公钥、数据读取秘钥确认对目标数据的使用权限,区块本文档来自技高网...

【技术保护点】
1.一种基于区块链的数据共享平台,其特征在于,所述平台包括多个客户端、一个或多个接入服务器和区块链系统,所述客户端配置有软件程序,用于提供用户与平台之间进行交互的服务接口,所述交互包括存储、查询和购买:客户端提交存储请求,将数据传输至接入服务器,客户端还用于设置对所存储数据的访问权限;客户端将查询请求提交至接入服务器并接收接入服务器返回的查询结果;客户端还用于向接入服务器发送购买请求,购买成功后收到接入服务器返回的读取秘钥,再向接入服务器发送读取请求以获取加密的数据;所述接入服务器配置有软件程序,用于接收客户端提交的操作请求,客户端首先通过服务接口提交身份注册请求,请求区块链注册信息和私钥,接入服务器收到身份注册请求,从区块链系统获取相应的注册信息和私钥后将其通过服务接口返回给客户端,之后接入服务器对客户端实现以下操作:根据客户端的存储请求将数据发送给区块链系统进行存储,并将数据唯一标识、摘要信息和访问权限设置信息存储到区块链系统;根据客户端的数据查询请求向区块链系统请求对应的数据索引并反馈给客户端;根据客户端的购买请求向区块链请求对应的数据读取秘钥并反馈给客户端;根据客户端的读取请求向区块链请求对应的数据,进行数据分析建模并反馈给客户端;所述区块链系统配置有软件程序实现状态数据库、交易记录组件、智能合约和身份管理组件,其中状态数据库、交易记录组件和智能合约部署在区块链系统的分布式网络节点上,状态数据库用于存储数据,交易记录组件存储所有操作记录,智能合约为数据共享平台的业务逻辑,包括数据逻辑、验证逻辑和交易逻辑,用于管理状态数据库和交易记录组件的操作;身份管理组件用于控制客户端的身份和数据相关操作的访问权限;区块链系统根据客户端的存储、查询、购买、读取请求向接入服务器反馈相应操作请求的结果。...

【技术特征摘要】
1.一种基于区块链的数据共享平台,其特征在于,所述平台包括多个客户端、一个或多个接入服务器和区块链系统,所述客户端配置有软件程序,用于提供用户与平台之间进行交互的服务接口,所述交互包括存储、查询和购买:客户端提交存储请求,将数据传输至接入服务器,客户端还用于设置对所存储数据的访问权限;客户端将查询请求提交至接入服务器并接收接入服务器返回的查询结果;客户端还用于向接入服务器发送购买请求,购买成功后收到接入服务器返回的读取秘钥,再向接入服务器发送读取请求以获取加密的数据;所述接入服务器配置有软件程序,用于接收客户端提交的操作请求,客户端首先通过服务接口提交身份注册请求,请求区块链注册信息和私钥,接入服务器收到身份注册请求,从区块链系统获取相应的注册信息和私钥后将其通过服务接口返回给客户端,之后接入服务器对客户端实现以下操作:根据客户端的存储请求将数据发送给区块链系统进行存储,并将数据唯一标识、摘要信息和访问权限设置信息存储到区块链系统;根据客户端的数据查询请求向区块链系统请求对应的数据索引并反馈给客户端;根据客户端的购买请求向区块链请求对应的数据读取秘钥并反馈给客户端;根据客户端的读取请求向区块链请求对应的数据,进行数据分析建模并反馈给客户端;所述区块链系统配置有软件程序实现状态数据库、交易记录组件、智能合约和身份管理组件,其中状态数据库、交易记录组件和智能合约部署在区块链系统的分布式网络节点上,状态数据库用于存储数据,交易记录组件存储所有操作记录,智能合约为数据共享平台的业务逻辑,包括数据逻辑、验证逻辑和交易逻辑,用于管理状态数据库和交易记录组件的操作;身份管理组件用于控制客户端的身份和数据相关操作的访问权限;区块链系统根据客户端的存储、查询、购买、读取请求向接入服务器反馈相应操作请求的结果。2.如权利要求1所述的基于区块链的数据共享平台,其特征在于,所述服务接口包含统一设置的通信规则,且服务接口需获得来自接入服务器授权后才能访问。3.如权利要求1所述的基于区块链的数据共享平台,其特征在于,所述区块链系统的身份管理组件用于颁发区块链注册信息,包括基于PKI的可验证身份标识,并制定规则用以管理身份的权限,用于控制客户端的操作。4.如权利要求3所述的基于区块链的数据共享平台,其特征在于,客户端基于PKI的签名进行操作,客户端使用私钥对操作请求签名,区块链系统共识网络中的节点通过共识机制使用请求客户端的公钥验证请求签名,保证客户端操作请求的真实、有效、可追踪及不可否认。5.如权利要求1所述的基于区块链的数据共享平台,其特征在于,区块链系统的分布式网络是由多个组织和共识节点构成的共识网络,每个组织包含多个普通节点,不同的普通节点之间形成联盟进行安全隐私的通信,区块链系统完成一个操作请求的整个过程为共识过程。6.如权利要求5所述的基于区块链的数据共享平台,其特征在于,共识过程分为三个阶段:第一阶段,区块链系统收到操作请求后,向部分普通节点,即背书节点发送操作请求验证,背书节点执行请求的相关智能合约,得出验证请求和预执行结果并将其签名,即背书后反馈给与之关联的共识节点;第二阶段,共识节点接收到足够多节点关于该操作请求的背书后,将该操作请求与其他请求进行排序后打包成...

【专利技术属性】
技术研发人员:陈天一李智强
申请(专利权)人:南京简诺特智能科技有限公司
类型:发明
国别省市:江苏,32

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

1