基于联盟链技术的化学数据存储、共享平台及方法与流程

文档序号:21369696发布日期:2020-07-04 06:22阅读:780来源:国知局
基于联盟链技术的化学数据存储、共享平台及方法与流程

本发明涉及数字信息传输领域,特别是一种基于联盟链技术的化学数据存储、共享平台及方法。



背景技术:

在当前化学领域,科研人员需要合成某一目标化合物时,检索化学数据库(例如:scifinder、reaxys)获取文献专利数据是必不可少的环节。虽然目前存在知名的化学数据网站,例如scifinder、reaxys能够非常全面可靠的化学知识和科学信息知识,但是现有化学数据库提供的合成路线是基于文献和专利信息进行的数据罗列,化学家需要根据自己的理论知识和经验进行筛选、可行性分析和路线优化,并且需要协同其他人员如采购进行原料化合物供应商的筛选和确定才能综合各种因素确定最终的合成路线。而最终确认的合成路线在执行过程中,往往会出现意想不到的化学问题和难点,这个时候科研人员也很难和路线设计时的文献或专利信息提供者进行交流沟通,往往导致时间和资源的浪费,甚至合成路线的失败。

另一方面,在化学领域,无论是研发还是生产,都会产生和积累大量的化学数据和信息,这些化学数据和信息对创新研究,或者工艺的优化和改进,甚至人工智能的发展和应用,都具有重要的价值,然而由于各种壁垒的存在,包括知识产权、商业机密,以及所有权(proprietary)保护等,这些化学数据和信息在高度信息化的今天,只能以“信息孤岛”的形式存在于各组织内部,或存在于“中心化”的位于互联网端的数据库中。由于缺乏安全可信的数据和信息共享途径,造成大量重复的研发活动,也延缓了创新的进程。



技术实现要素:

本发明的目的在于提供一种基于联盟链技术的化学数据存储、共享平台及方法。

一种基于联盟链技术的化学数据存储、共享平台,包括基础层、基础服务层和订制业务层;基础层对其他层的空间提供础管理;基础服务层为为订制业务层提供交易凭证机制、交易记录排序管理、存储机制管理、公共资源与服务;订制业务层为参与者提供创建私有空间的服务。

进一步地,基础服务层设置业务空间,包括价值内容交换空间、节点存储资源提供服务管理空间、节点网络资源管理空间、公有化合物空间;内容交换空间提供交易凭证机制;节点存储资源提供服务管理空间存储机制管理;节点网络资源管理空间提供交易记录排序管理;公有化合物空间提供公共资源与服务。

进一步地,价值内容交换空间将以网关的形式与其他业务空间进行交互所述的平台,内容交换空间中规定了转账、价值转换、奖励、分红规则四个对外功能供节点使用,且该空间设置账本,用于记录其他空间的奖励与分红规则。

进一步地,公有化合物空间存储审核通过的化合物数据。

进一步地,基础层中创建全局账本,用于记录其他所有层中空间的设置或注册,以及记录配置信息的变更。

进一步地,基础层提供传输网络、链式结构、密码机制、时间戳、保密方式、验证机制、共享信息平台;传输网络为区块链网络中各个通信节点提供p2p网络支持;链式结构用于确定一条完整的交易链条;密码机制通过加密算法保证交易信息不被篡改;时间戳用于对记录的数据进行时间标注;保密方式用于识别参与者是否可以进入相应私用空间;验证机制用于验证加密算法的正确性;共享信息平台根据智能合约显示用户发布的消息。

进一步地,网络所有参与者在订制业务层中通过智能合约制定自己的业务,在订制业务层中引用基础服务层的业务空间的功能。

一种基于联盟链技术的化学数据存储、共享方法,包括:

步骤1,部署相关服务器,搭建基于联盟链技术的区块链网络;

步骤2,构建联盟链网络的基础设施;

步骤3,构建基础层,创建基于全局操作的全局账本;

步骤4,构建基础服务层;

步骤5,构建订制业务层,网络参与者通过智能合约制定自己的业务,并对数据进行共享。

进一步地,步骤5中数据共享包括数据方共享数据,以及数据需求方获取数据;其中

数据共享方共享数据包括以下步骤:

步骤a1,数据共享方的本地服务器接入平台区块链网络;

步骤a2,数据共享方在本地服务器中在订制业务层中建立私用空间并生成公共账本;

步骤a3,数据共享方将可共享数据上传至私有空间并加密;

步骤a4,数据共享方在私用空间中制定智能合约;

步骤a5,数据共享方在平台基础层的公共平台上发布可共享数据的简要信息;

数据需求方获取数据包括以下步骤:

步骤b1,数据需求方在平台区块链网络的公共平台上获取简要消息;

步骤b2,数据需求方向数据共享方发送申请加入私有空间;

步骤b3,数据共享方所在本地服务器根据智能合约判断是否允许数据需求方加入私人空间;

步骤b4,加入私人空间的数据需求方参照智能合约向数据共享方购买可共享数据;

步骤b5,数据共享方将可共享数据发送至数据需求方。

进一步地,步骤b3中数据需求方根据公私钥验证通过后加入私有空间。

本发明与现有技术相比,具有以下优点:(1)基于区块链的平台真正实现了去中心化,用户的数据将由用户个人保管,解决了中心化数据平台共有的用户对平台的信任问题;(2)实现点对点的数据传输,改变目前中心化服务平台作为数据中转媒介的功能,构建用户与用户间直接联系的桥梁。

下面结合说明书附图对本发明作进一步描述。

附图说明

图1为本发明三层网络构建示意图。

图2为平台架构与账本管理原理示意图。

图3为价值转换空间原理示意图。

图4为公有化合物空间数据存储与共享原理示意图。

图5为价值转换空间与其他空间交互原理示意图。

具体实施方式

本发明所述的联盟链,是区块链的一种。区块链(blockchain)是一个分布式账本,是一种通过去中心化、去信任的方式集体维护一个可靠数据库的技术方案。从数据的角度来看,区块链是一种几乎不可能被更改的分布式数据库。这里的“分布式”不仅体现为数据的分布式存储,也体现为数据的分布式记录;从技术的角度来看区块链并不是一种单一的技术,而是多种技术整合的结果。而本发明所述的联盟链则是针对特定某个群体的成员和有限的第三方,通过公钥和私钥的验证参与网络活动,加入联盟链的参与方称为节点,节点加入俩孟连后具备联盟链的特有功能,例如去中心化存储、加密存储等。本发明在联盟链中为用户提供二次开发的接口restapi。

本发明所述的超级账本是linux基金会主导的一个旨在推动区块链跨行业应用的开源项目,属于联盟链类型,而fabric是超级账本下五个并行项目之一。fabric是一个许可的区块链构架,它提供一个模块化的构架,把架构中的节点、智能合约(链码)的执行以及可配置的共识和成员服务。一个fabric网络包含同伴节点执行智能合约,访问账本数据,背书交易并称为应用程序的接口。命令者节点负责确保此区块链的一致性并传达被背书的交易给网络中的同伴们;以及msp(membershipserviceprovider)服务,主要作为证书权威机构来管理x.509证书,以用于验证成员身份以及角色,提供身份审查等功能。

本发明所述的智能合约(smartcontract),在fabric中又称链码(chaincode),智能合约是一套以数字形式定义的承诺(promises),包括合约参与方可以在上面执行这些承诺的协议。在区块链中,智能合约只是一些运行在电脑(或其他节点)的区块链网络的特定代码,一旦节点执行了这个代码,合约就会更新交易信息。

本发明所述的channel,是构建在fabric网络上的私有区块链,实现了数据的隔离和保密;通道特定的账本在通道中是与所有对等节点共享的,并且交易方必须通过该通道的正确验证才能与账本进行交互。在本发明所述的基础业务层中也可以存在channel,用于实现每一业务空间数据的隔离。

本实施例提供了一种基于联盟链技术的化学数据存储、共享方法及平台。

一方面,本实施例提供的一种基于联盟链技术的化学数据存储、共享平台。结合图1,该平台包括基础层(grandspace)、基础服务层(functionspace)和订制业务层(customizedspace)三层网络结构。其中grandspace作为其他所有空间网络的基础进行管理。functionspace中包括节点存储资源提供服务管理子空间(storagespace)、价值内容交换子空间(tokenspace)、节点网络资源管理子空间(ordererspace)、公有化合物空间(compoundspace),其中storagespace提供存储机制管理,tokenspace提供交易凭证机制,ordererspace提供交易记录排序管理,compoundspace提供公共资源与服务。customizedspace为用户提供建立私用空间的平台,任一区块链的参与者均可以在此层创建私有空间,并在空间中基于智能合约定制个性化业务。

具体地,基础层(grandspace)中创建基于全局操作的全局账本grandledger作。基础层(grandspace)为其他空间(space)的基础,账本用于记录所有其他space的注册,配置信息变更等。基础层(grandspace)保证联盟链网络的稳定。在基础层(grandspace)上搭建传输网络、链式结构、密码机制、时间戳、保密方式、验证机制、共享信息平台等。

进一步地,传输网络为给区块链网络中各个通信节点(node)提供p2p网络支持,是保障区块链账本一致性的基础服务之一。

其中,传输网络中包括三类通信节点,分别是完全功能节点、peer节点和存储功能节点。

完全功能包括排序(orderer)、背书及审核、数据知识存储。

peer节点为数据背书的节点,完成存储区块链交易记录的数据背书,实现去中心化的功能。

数据存储节点,指交易信息中涉及知识的完整信息,为了保证区块链网络的高可用,平台将信息以key-value的形式进行存储。其中,key是去中心化存储的,也就是需要背书的点,value是存储key指向的完整信息。将所有的key都以账本交易记录的形式存储在拥有peer功能的节点上,用于去中心化的数据存储,每个key都会指向一个value,这些value就存储专门的单个数据存储节点。

进一步地,链式结构用于确定一条完整的交易链条,例如区块链系统每隔一段时间创建一个区块,其中区块包含了这个时间段内全网范围所发生的所有交易。数据通过区块包装会被永久记录到区块链上,每个区块有区块头、区块主体组成,每个区块的区块头中记录了其引用的父区块的哈希值,通过这种方式一直倒推,形成了一条交易链条。

进一步地,密码机制是区块链保证交易信息不被篡改的单向密码机制,验证函数可以为加密算法(ecc,sm2/4)、哈希算法(sm3,sha256)、签名算法(ecdsa,sm2)中的一种。

进一步地,时间戳通常是一个字符序列,唯一的标识某一刻的时间。通过密码机制和时间戳可以记录在某一时间发生了什么,且避免了篡改数据。

进一步地,保密方式是一种密钥的保密方法,本实施例中需要两个秘钥:私钥和公钥。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。

进一步地,验证机制用于验证加密算法的正确性。本实施例采用merkle树进行对比及验证处理。

进一步地,共享信息平台用于显示用户在私有空间发布的消息的关键词、摘要等智能合约中规定的信息。

基础服务层(functionspace)上搭建价值内容交换空间(tokenspace)、节点存储资源提供服务管理空间(storagespace)、节点网络资源管理空间(ordererspace)、公有化合物空间(compoundspace)等公有功能空间(space)。

进一步地,价值内容交换空间(tokenspace)规定了转账、价值转换、奖励、分红四个对外功能供节点使用。节点可以通过调用转账功能实现价值的调转。tokenspace对指定空间合约的记录进行观察。从而实现价值转换成价值内容交换空间合约的价值。因为不同空间都会有涉及到交易,产生的交易凭证就需要去记录,记录的内容按照规定是需要存储在tokenspace中的。所以不管是私有空间还是公有空间都需要存储数据到tokenspace,平台就按照这个模式做了一个公用网关用于管理tokenspace和其他space的交互(交易凭证记录,查询)。

进一步地,价值内容交换空间附带奖励和分红两个附属功能,如图3所示。对于奖励,例如在compoundspace中有个用户上传了一个标准的化合物信息,按照compoundspace规则审核通过了,那么按照规则就要给这个用户进行奖励,就会有交易记录产生交易凭证,这些交易记录是记录在tokenspace中的。对于分红,有两种方式:方式一,tokenspace设置按照某个期限结束时给持有token的用户进行分红,就相当于持股分红一样的道理,目的就是鼓励用户多去获取token。方式二,在ordererspace中用户提供排序的功能,也是按照一个期限给予一次分红的规则。

进一步地,tokenspace中的账本(ledger)专用于记录其他空间(包括functionspace的其他业务space,还有用户自定义的私有空间)的奖励与分红规则

进一步地,价值内容交换空间中的账本(ledger)提供对订制业务层中的节点的交易记录功能。

进一步地,所有网络的业务节点都需要参与到tokenspace的网络中进行背书。

进一步地,节点存储资源提供服务管理空间(storagespace)中用户进行设计节点管理的智能合约,内容包括判断节点加入与退出、计算节点在线时长、存储数据量统计、节点角色切换等功能,每个加入空间的节点或组织都必须履行该智能合约的功能,按照该合约执行后,节点或组织贡献的资源将通过tokenspace获得奖励。

进一步地,节点网络资源管理空间(ordererspace)为有意愿加入网络成为排序节点的用户提供操作空间,空间对应的智能合约为计算用户排序的资源消耗情况,并与tokenspace实现交互,即数据变更都需要在tokenspace中记录。加入到联盟链的用户都是被认可的(通过公私钥认证),不存在抢占式的数据背书,为了提高交易速度就是,联盟链需要将背书的数据首先发送到具备排序功能(orderer)的排序节点(orderer节点),再通过orderer节点进行排序分发给需要背书的节点(peer)。整个联盟链的交易量都会由节点网络资源管理空间中的排序节点来完成,数据量就会非常的大,为了维护网络交易速度的稳定和可靠性,把orderer功能开放给加入联盟链的所有节点,提供这个orderer功能的节点也将会在tokenspace中记录,然后给这些节点按提供服务的期限来分红。

进一步地,公有化合物空间(compoundspace)中存储审核通过的化合物数据。具体为,用户操作节点提交化合物(compound)注册进入公有化合物空间的申请;公有化合物空间设置人工审核以及仪器自动审核两种方式:人工审核中加入审核的参与者;机器审核设置通用的审核流程。因为有些化合物有固定格式可以在compoundspace中的智能合约设置通用的审核规则,但是有些化合物通用的审核规则无法审核就需要人工参与。若审核不通过则重新提交审核;若审核通过则将化合物注册进入公有化合物空间,并且运用tokenspace的功能给申请者和审核者提供奖励。

订制业务层(customizedspace),网络所有参与者都可以加入到订制业务层中建立自己的私有空间(channel),通过智能合约制定自己的业务,在订制业务层中可以引用到基础服务层(functionspace)的功能space的功能。customizedspace相对于functionspace是独立的,没有依赖的关系,也区块链网络的参与者在创建私有空间时可以完全不依赖于functionspace,但是一定要在grandspace中记录。但是大多数customizedspace都需要依赖于functionspace中的功能,比如tokenspace作价值交换凭证,storagespace用于数据查询。

进一步地,价值内容交换空间将以网关的形式与space进行交互。例如,结合图5,公有化合物空间与价值内容交换空间的交互方式:公有化合物空间将在自己的space中为用户提供相关的功能,当space有相关操作涉及token功能时(例如化合物的数据上链奖励),将通过网关与价值内容交换空间交互,在价值内容交换空间中记录此公有化合物空间的操作。订制业务层(customizedspace)如果想要使用业务space有涉及到交易凭证需要使用tokenspace的也将通过网关实现。以定制化space调用公有化合物空间功能为例,当需要调用公有化合物空间中功能时,需要支付一些代币(token)来获得相关权益,此操作就将通过价值内容交换空间的网关机制激活,并在价值内容交换空间的账本中记录。此方式的目的是为了将tokenspace的激励与分红机制以外挂的形式植入到每个space中提高业务space的活力。

上述平台中账本管理方案为:将具体的space按服务方式分为业务space与基础space。当以联盟链为基础的区块链网络架构完成后,首先架构grandspace以及tokenspace作为基础space。其次架构业务space包括compoundspace,storagespace,ordererspace等用于提供业务服务。在上述基础之上提供定制化space的功能接口,供用户部署自定义space。节点在加入平台时可以根据不同的机器性能具备不同的功能,包括完全功能节点具备所有功能,审核功能peer只用于审核例如化合物真实性等功能性space业务以及背书审核操作内容,存储功能节点具备数据存储功能。用户在使用平台功能前必须以ca验证的方式加入到平台网络中。具体实现如附图2所示。

上述平台中公有化合物space(compoundspace)数据存储与共享机制为:构建compoundspace,创建在设置规则,加入compound业务相关的业务节点,用户操作节点可以通过space提交compound注册进入space的申请,space设置人工审核以及仪器自动审核两种方式:人工审核中加入审核的参与者,机器审核设置通用的审核流程。如果审核不通过则重新提交审核。若审核通过则将化合物注册进入space,并且运用tokenspace的功能给申请者和审核者提供奖励。具体的,如附图4所示,参与者提交化合物申请,对于有固定格式的化合物可以在化合物空间中的智能合约设置通用的审核规则进行审核,但是有些化合物通用的审核规则无法审核就需要人工参与审核,人工审核由审核信息参与者参与。

上述平台中交易凭证管理space作为网关统一与其他业务space的交互方式,此方式的目的是为了将tokenspace的激励与分红机制以外挂的形式植入到每个space中提高业务space的活力,具体为:tokenspace将以网关的形式与其他业务space进行交互,如附图5所示为化合物space(compoundspace)与tokenspace的交互方式。业务space将在自己的space中为用户提供相关的功能,当space有相关操作涉及token功能时)例如化合物的数据上链奖励,将通过tokenoperationbox与tokenspace交互,在tokenspace中记录此业务space的操作。其他定制化的space如果想要使用业务space有涉及到交易凭证需要使用tokenspace的也将通过网关实现。以定制化space调用compoundspace功能为例,当需要调用compoundspace中功能时,可能需要支付一些token来获得相关权益,此操作就就将通过tokenspace的网关机制激活,并在tokenspace的账本中记录。

另一方面,本实施例还提供的一种基于上述平台实现化学数据存储、共享的方法,该方法包括:

步骤1,部署相关服务器,搭建基于联盟链技术的区块链网络;

步骤2,借助联盟链技术特有的身份管理、公私钥、去中心存储机制等一系列功能构建区块链网络的基础设施;

步骤3,构建基础层(grandspace),创建基于全局操作的账本grandledge;

步骤4,构建基础服务层(functionspace),包括tokenspace,ordererspace,storagespace,compoundspace等公有功能space;

步骤5,构建订制业务层(customizedspace),网络参与者通过智能合约制定自己的业务,并对数据进行共享。

进一步地,步骤3中网络的参与者通过身份管理加入基础层(grandspace)作为主要节点(grandnode)。加入网络的节点(node或peer)以及用户(user)都需要在基础层(grandspace)中注册,基础层(grandspace)统一管理信息内容,并以去中心化的方式存储。

节点就是物理节点,例如电脑、服务器,用户指人。因为区块链网络是由多个节点构建而成的,那么用户需要通过某一个节点才能使用网络的功能。在使用网络之前首先需要在grandspace中注册,进行告知。grandspace就会去中心化的存储这个用户信息。

进一步地,步骤4中基础服务层(functionspace)的功能为用户私有空间提供基础功能以及激励和分红机制,包括基础的交易记录存储与凭证功能、交易记录排序功能、数据存储功能、公共资源与服务、奖励与分红机制。

步骤该5中,数据共享包括数据方共享数据,以及数据需求方获取数据。数据共享方共享数据包括以下步骤:

步骤a1,数据共享方的本地服务器接入平台区块链网络;

步骤a2,数据共享方在本地服务器中在订制业务层中建立私用空间并生成公共账本;

步骤a3,数据共享方将可共享数据上传至私有空间并加密;

步骤a4,数据共享方在私用空间中制定智能合约;

步骤a5,数据共享方在平台基础层的公共平台上发布可共享数据的简要信息。

数据需求方获取数据包括以下步骤:

步骤b1,数据需求方在平台区块链网络的公共平台上获取简要消息;

步骤b2,数据需求方向数据共享方发送申请加入私有空间;

步骤b3,数据共享方所在本地服务器根据智能合约判断是否允许数据需求方加入私人空间;

步骤b4,加入私人空间的数据需求方参照智能合约向数据共享方购买可共享数据;

步骤b5,数据共享方将可共享数据发送至数据需求方。

进一步地,步骤a2中所述的公共账本记录了该私有空间中除查看公共账本之外每一节点的所有操作,包括数据共享方的节点和数据需求方的节点。公共账本为分布式账本,私有空间的每一节点之间可以共享、复制和同步公共账本中的数据;每一节点在相应的本地服务器对公共账本进行维护,即备份与交易相关的本地信息至公共账本中。公共账本采用区块链的分布式账本的优势在于,除非私有空间中的所有节点同意进行更改公共账本中的数据,否则一个节点无法私自更改公共账本中的数据。

进一步地,步骤a3中采用bccsp加密算法进行加密。

进一步地,步骤a4中,智能合约包含了有关交易的所有信息,符合智能合约的交易不可逆转且可追溯。

进一步地,步骤a5中所述的简要信息可以为关键词或摘要的形式在平台区块链网络的公共平台上进行展示。私有空间拥有自己的智能合约,在智能合约中将会制定各种规则,在这些规则中将会展示私有空间中的哪些信息是可以在平台区块链网络的公共平台上进行展示被其他人查询。

进一步地,步骤b3中,数据需求方在加入基础层后拥有公钥,当私有空间同意该数据需求方进入该私有空间,则向该数据需求方提供私钥。一个公钥对应一个私钥,当公钥和私钥均通过验证,才能进入该私有空间。

进一步地,步骤b5中,共享数据通过p2p的方式从数据共享方直接传输到数据需求方,而不需要通过第三方平台。

进一步地,数据需求方在使用共享数据时,若存在困难或问题,可以通过p2p的方式直接与数据共享方进行沟通。

本实施例还提供了与上述方法相匹配的一种基于超级账本fabric的化学数据共享系统,该系统借用联盟链技术,在设计的系统中接入多账本体系,构建以全局空间为基础,个人私有空间为枝叶的多账本架构体系。

根据上述设计,网络在启动后就设置了系统空间供参与者使用,参与者在系统空间的基础上可以创建业务定制化的空间,例如,公司在底层基础上创建了基于公共化合物的私有空间,针对化合物上传的具体流程,设计了空间对应的智能合约。当用户构建了定制化合约后,这些定制化合约将与基础空间产生关联。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1