一种基于以太坊电机数据集文件的交易平台与交易方法
文献发布时间:2023-06-19 10:29:05
技术领域
本发明涉及电机数据集文件交易领域,特别是涉及一种基于以太坊的电机数据集文件交易平台与交易方法。
背景技术
以太坊(Ethereum)是建立在区块链技术之上的一个去中心化应用平台,其网络架构特别完善且具有极高的鲁棒性,可对区块链进行编程,允许用户去自定义复杂的操作。以太坊虚拟机(Ethereum Virtual Machine,EVM)是以太坊中智能合约的运行环境,也是以太坊的核心,是图灵完备的,因此EVM可执行任意复杂算法的程序编码。另外,以太坊区块链数据库由其网络中的每个节点来进行更新及维护,每个节点均可通过运行以太坊虚拟机来执行相同的指令,这就保证了区块链的一致性。以太坊延续了区块链系统中的优点,具有去中心化、防篡改、可追溯、可编程等特点。
近年来,随着信息技术的不断发展以及电机领域技术的不断提升,各企业,高校,科研所所获得的电机数据与技术呈现几何级数式的增长,但在与此同时,不同机构之间由于缺乏信任,不同机构之间所取得的数据不能相互交换,这就造成了不同垂直物联网领域之间存在设备孤岛和数据孤岛问题,由于缺乏跨域信任,不同信任域的IoT设备和数据之间无法便捷地互相访问。区块链建立和维护跨域信任体系的有效性已经被实际应用所验证,如基于区块链的跨银行结算,因此基于以太坊的分布式安全机制有利于打破物联网设备和数据孤岛。使数据交换起来,这将大大提高社会生产效率和数据的价值,于是便产生了电机的数据交易市场。
目前,尚没有一个针对于电机数据提供安全交易的平台,现有的平台可以分为三类:第一种是作为交易过程中的第三方媒介,其主要扮演为数据提供者和数据需求者建立起关联的角色,并不能为数据提供者所提供的数据提供安全的保护;第二种交易平台主要是为数据需求方进行数据的清洗,加工与处理,这类平台往往拥有大量的专业技术人员,同时和数据提供者和技术提供方建立联系,通过对数据的处理为数据需求者提供服务;第三种是数据提供方直接与数据需求方建立联系,这种方式虽然能对数据的安全提供有效的保护,且数据一旦泄露,易于追责,但是由于其交易方式是一对一的,有着受众面窄,不能使数据产生巨大价值的问题。
前两类数据交易平台由于没有利用特殊的技术手段来对电机数据提供保护,都存在着或多或少的数据安全存储问题,一旦数据泄露,将无法对泄露的数据进行溯源,且面临着难以追责的问题,这将会造成数据提供方的资源损失和经济损失。
发明内容
为了解决上述问题,本发明提供了一种基于以太坊的电机数据集文件交易平台与交易方法,提供了针对电机数据安全交易的平台和交易方法,提高了数据交易的安全性,降低了交易风险。
本发明第一方面提供了一种基于以太坊电机数据集文件的交易平台,包括:
对象单元,接收供方数据,所述供方数据包括供方用户信息、电机数据集文件、版权信息和用户公钥;接收需方数据;
共享平台单元,处理接收的供方数据并进行数字签名并进行数字签名;匹配需方要求与需方数据和授权检验和授权检验,进行数据交易;
数据传输单元,用以建立共享平台单元与数据库单元之间的跨链传输;
数据库单元,存储供方数据并生成版权信息,并回传所述版权信息;根据需方要求查询相应的供方数据并上传至数据传输单元。
进一步的,所述对象单元包括:
供方数据接收模块,接收供方数据;
需方数据接收模块,接收需方需求信息。
进一步的,所述共享平台单元包括:
查重模块,审核供方数据,得到供方数据查重信息;
供方交易日记创建模块,创建供方交易日记并生成新区块,打包供方数据、交易时间戳、交易哈希值和区块链地址,利用公钥对打包数据进行数据签名;
展示模块,展示供方数据简介和版权信息,供需方选择;
需方交易日记创建模块,根据需方需求检验相应的供方数据的版权信息是否授权,若已授权,则发出下载指令;若未授权,发起授权交易,并查询购买结果,若购买成功,创建需方交易日记,并存入区块中;
接收模块,接收反馈的待下载数据,并下载要用户端,等待需方下载。
本发明第二方面提供了一种基于以太坊的电机数据集文件交易方法,基于本发明第一方面所述的基于以太坊的点击数据集文件交易平台实现,包括如下步骤:
接收供方数据,所述供方数据包括供方用户信息、电机数据集文件、版权信息和用户公钥;接收需方数据;
处理接收的供方数据并进行数字签名;匹配需方要求与需方数据和授权检验,进行数据交易;
建立共享平台单元与数据库单元之间的跨链传输;
存储供方数据并生成版权信息,并回传所述版权信息;根据需方要求查询相应的供方数据并上传至数据传输单元。
进一步的,所述处理接收的供方数据并进行数字签名的方法包括如下步骤:
审核供方数据,得到供方数据查重信息;
创建供方交易日记并生成新区块,打包供方数据、交易时间戳、交易哈希值和区块链地址,利用公钥对打包数据进行数据签名;
展示供方数据简介和版权信息,供需方选择并给与授权;
所述匹配需方要求与需方数据和授权检验包括如下步骤:
根据需方需求检验相应的供方数据的版权信息是否授权,若已授权,则发出下载指令;若未授权,发起授权交易,并查询购买结果,若购买成功,创建需方交易日记,并存入区块中;
接收反馈的待下载数据,并下载要用户端,等待需方下载。
进一步的,所述建立共享平台单元与数据库单元之间的跨链传输方法包括:
将签名后的打包数据传输至数据库单元中,监听下载指令;验证供方数据签名和解密。
进一步的,所述数据签名的方法包括:
供方获取数据集内容,将数据集内容进行SHA散列生成完整性验证哈希串,数据集内容根据供方用户提供的私钥进行数字签名并生成已签名加密的数据集内容B;
将已签名加密的数据集内容B跨链传输至数据库单元的联盟链节点中进行存储,存储后回返存储地址,将所述存储地址与时间戳、版权信息、版权归属等打包并存入共享平台单元中的公有链中,并在共享平台单元中出示该数据集以制作版权并可给与授权。
进一步的,所述检验相应的供方数据的版权信息是否授权的方法是指检验用户授权信息是否能与平台数据库对应。
进一步的,所述授权信息生成方法包括:
在编号为N的数据集被第n次购买交易确定后,获取基本的用户信息Vn,版权授权信息Mn,交易日记Dn;
将其中的用户信息Vn和版权授权信息Mn进行合并且进行签名制作出授权报文Pn;
当n=1时,将交易日记D1作为特殊情况验证信息A1存入;
当n>1时,选择该编号N的数据集的之前部分或全部时间的授权Pm(m 将n,授权报文Pn和验证信息An合并为N产品第n次购买时所生成的授权文件的子文件Cn并再此之上再和编号N一块生成授权文件。 进一步的,存储供方数据并生成版权信息,并回传所述版权信息的具体步骤包括: 打包签名后数据集发送到数据库单元的联盟链中参与记账的诸多个节点内,进行数据的记账存储,完成后将广播到联盟链的节点群内,进行安全性存储; 在此之中平台内的数据经济存储节点也参与存储,并将数据集发回版权方。 如上所述,本发明与现有技术相比,具有如下有益效果: 1、本申请采用数字签名对数据供方所长传的电机数据进行保护,可防止他人伪造授权文件肆意使用版权; 2、提高了存储的安全性,一旦数据泄露,也可进行版权购买行为的追踪; 3、为版权证明提供一份有力的证据。本发明所生成的针对授权编号为n的产品的授权文件中不仅包含针对其自身授权信息的加密许可信息,还包含用于对之前授权文件的加密信息,版权追溯的加密信息,由此可以利用多个本商品授权交易的交易方的信息、联盟链节点中所存储的信息和版权所拥有的的信息(版权方那里得有完整的交易日记链)进行多重验证,以确定授权文件是否来源于正版途径,非伪造非篡改。区块链中的每个联盟链节点都持有针对全部授权产品的许可信息,交易购买方处也有该系列的所有区块。具备提供更加安全可靠的授权方案的能力,并且可以尽可能地减少产品向授权中心服务器的探寻,增大流量。 附图说明 图1为本发明具体实施例的交易平台整体机构示意图; 图2为本发明具体实施例的供方发布数据信息的流程图; 图3为本发明具体实施例的需方购买数据信息的流程图; 图4为本发明具体实施例的交易平台的分层架构示意图; 图5为本发明具体实施例的数据签名流程示意图; 图6为本发明具体实施例的数据授权文件生成方法; 图7为本发明具体实施例的数据存储流程示意图。 具体实施方式 以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。 需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图示中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。 本发明第一方面提供了一种基于以太坊电机数据集文件的交易平台,如图1所示,包括: 对象单元101,所示对象单元包括: 供方数据接收模块,接收供方数据,供方数据包括供方用户信息、电机数据集文件、版权信息和用户公钥; 需方数据接收模块,接收需方需求信息,获取需方的目标数据和用户信息。 共享平台单元102,处理接收的供方数据并进行数字签名并进行数字签名;匹配需方要求与需方数据和授权检验和授权检验,进行数据交易; 所述共享平台单元包括: 查重模块,审核供方数据,得到供方数据查重信息; 供方交易日记创建模块,创建供方交易日记并生成新区块,打包供方数据、交易时间戳、交易哈希值和区块链地址,利用公钥对打包数据进行数据签名; 展示模块,展示供方数据简介和版权信息,供需方选择; 需方交易日记创建模块,根据需方需求检验相应的供方数据的版权信息是否授权,若已授权,则发出下载指令;若未授权,发起授权交易,并查询购买结果,若购买成功,创建需方交易日记,并存入区块中; 接收模块,接收反馈的待下载数据,并下载要用户端,等待需方下载。 数据传输单元103,用以建立共享平台单元与数据库单元之间的跨链传输; 数据库单元104,存储供方数据并生成版权信息,并回传所述版权信息;根据需方要求查询相应的供方数据并上传至数据传输单元。 供方发布数据流程如图2所示: 用户A登录平台单元发布大量电机数据并为自己的数据附上版权签名,共享平台单元首先进行查重操作,查询平台上是否已有该数据发布,如果存在,则返回数据存入失败信息,以示版权驳回; 若确认无重复数据,则在用户模块中收集用户信息、数据文件内容、用户公钥信息一同传入共享平台模块,在公有链上创建交易日记并生成一个新区块,将时间戳、哈希值等打包送入数据传输模块进行数据签名后再传输至联盟链上的数据库模块进行保存。 回传版权信息,存储时间戳,哈希值等多项信息,并将其作为新数据产品挂上平台。 需方购买数据流程如图3所示: 用户在数据共享平台单元中阅览自己需要的电机数据介绍,对感兴趣的数据发起下载请求,对象单元中的模块开始收集用户信息和交易信息整合成信息流,将其发给数据共享平台查询该用户是否已经购买或拥有该数据的版权授权; 若无,则发起一次交易,通过交易后授予该用户数据集的版权授权并创建交易日记与区块,再回退并再次发起下载请求;若有,则发起一次数据下载事件。 数据传输单元监听到数据下载事件后,提取出需求的数据哈希值,在其中查找数据,并在查找后将数据传输到数据传输单元中进行签名验证和解密,再将其上传到共享平台单元等待用户下载,整个过程电机数据在该平台上实现透明平等的共享交互。 基于本实施例所述的电机数据共享平台模型的基础上,通过基于以太坊的电机数据共享平台模型的分层架构进行分析,所述共享平台模型包括管理层、控制层及数据层,如图4所述: 所述分层架构中,管理层可以细分为表现层与服务层: 表现层:该层位于整个模型架构的最顶端,负责以可视化的方式向用户提供面向PC端的电机数据共享服务。 服务层:服务层的开发根据面向接口编程及高内聚低耦合的设计思想,处于表现层与合约层之间。该层负责为表现层提供相应的服务接口,同时与合约层所定义的函数进行交互。 控制层可分为合约层与区块链层: 合约层:合约层内布置有各类的预设智能合约,当触发合约时则向区块链层发送事件响应,同时也可以向服务层返回事件。 跨链传输层:跨链传输层监听来自合约层的事件,承担向下游公有链或联盟链发送数据和接受数据的任务,同时肩负了数据签名和解密数据签名的使命。 数据层主要为区块链层:区块链层包含公有链和联盟链两种链,公有链存储一些简易数据,而联盟链存储签名后的大型数据集,拥有数据搜索功能。 本发明第二方面提供了一种基于以太坊的电机数据集文件交易方法,基于本发明第一方面所述的基于以太坊的点击数据集文件交易平台实现,包括如下步骤: S1、接收供方数据,所述供方数据包括供方用户信息、电机数据集文件、版权信息和用户公钥; 接收需方数据,需方发起数据集下载请求时获取需方请求的目标数据hash和用户信息; S2、处理接收的供方数据并进行数字签名;匹配需方要求与需方数据和授权检验,进行数据交易; 所述处理接收的供方数据并进行数字签名的方法包括如下步骤: S211、审核供方数据,得到供方数据查重信息; S212、创建供方交易日记并生成新区块,打包供方数据、交易时间戳、交易哈希值和区块链地址,利用公钥对打包数据进行数据签名; 如图5所示,本实施例所述数据签名的方法包括: 供方获取数据集内容,将数据集内容进行SHA散列生成完整性验证哈希串L,数据集内容根据供方用户提供的私钥进行数字签名并生成已签名加密的数据集内容B; 将已签名加密的数据集内容B跨链传输至数据库单元的联盟链节点中进行存储,所述联盟链对外部访客仅有文件存在的查询权,没有读取权,即其他第三方仅可以通过该联盟链开放的API进行限定查询,相对于IPFS的封闭,本实施例既可以查询也可保障数据的安全性; 存储后回返存储地址,将所述存储地址与时间戳、版权信息、版权归属等打包并存入共享平台单元中的公有链中,并在共享平台单元中出示该数据集以制作版权并可给与授权。 本实施例利用数字签名对数据上传者所上传的电机数据进行保护,数字签名机制作为保障网络信息安全的手段之一,可以解决伪造、抵赖、冒充和篡改问题。数字签名的目的之一就是在网络环境中代替传统的手工签字与印章,有着防冒充(伪造)、可鉴别身份、防篡改(防破坏信息的完整性)、防重放、防抵赖、机密性(保密性)等重要作用。其次,在新增一项针对版权交易的授权时,由实施授权的设备节点产生区块链数据文件,所述以太坊区块链数据文件中包含与当前授权对应的数据版权的加密信息、本次交易的交易编号,交易日记所生成的哈希值,交易时间戳,用户账户,所购买的数据集的版权编号,以及部分或全部该授权之前授权的交易的授权。根据区块链数据文件中产品编号的规则,接收到的区块链数据文件中至少有一个产品编号产生的时间晚于原区块链数据文件中所有产品编号产生的时间,即最新的时间戳晚于旧时间戳,则采用接收到的区块链数据文件作为所述区块链数据文件。 S213、展示供方数据简介和版权信息,供需方选择并给与授权; 所述匹配需方要求与需方数据和授权检验包括如下步骤: S221根据需方需求检验相应的供方数据的版权信息是否授权,若已授权,则发出下载指令;若未授权,发起授权交易,并查询购买结果,若购买成功,创建需方交易日记,并存入区块中; 当数据集购买交易确认时,生成如下所示的数据报1,包括本次交易的交易编号,交易日记所生成的哈希值,交易时间戳,用户账户,所购买的数据集的版权编号,用户关于该数据集的授权文件的哈希值,以及用户所购买的数据集的联盟链中地址。 数据报1:
所述检验相应的供方数据的版权信息是否授权的方法是指检验用户授权信息是否能与平台数据库对应。 如图6所示,所述授权信息生成方法包括: 在编号为N的数据集被第n次购买交易确定后,获取基本的用户信息Vn,版权授权信息Mn,交易日记Dn; 将其中的用户信息Vn和版权授权信息Mn进行合并且进行签名制作出授权报文Pn,即集合了用户信息和版权授权信息的一个数据报,其格式如下:
两个信息结合起来构成一个针对于此用户的授权报文,当查询时,可以通过这个该用户信息与用户版权授权信息来一步确定该用户是否已被授权,本实施例对授权报文Pn进行签名是用以确保这个报文安全性。 当n=1时,将交易日记D1作为特殊情况验证信息A1存入; 当n>1时,选择该编号N的数据集的之前部分或全部时间的授权Pm(m 将n,授权报文Pn和验证信息An合并为Cn并再此之上再和编号N一块生成授权文件。 该授权文件为编号为N的数据集被第n次购买交易确定后,用N和n接上合成加密后的授权报文Pn,即确定该用户被合法授权的信息段,再接上验证信息An,一段用于确保该Pn数据报是正确合法的信息段。即N产品n次购买的信息与Pn,An一块合并,构成授权文件。即Cn可以看成N产品第n次购买时所生成的授权文件的子文件。 子文件表示的授权文件格式(如Cn+N所构成的授权文件)如下表所示:
在最高数据库中,关于N产品的存储资料可以看成下方结构:
S222、接收反馈的待下载数据,并下载要用户端,等待需方下载。 S3、建立共享平台单元与数据库单元之间的跨链传输,具体包括: 将签名后的打包数据传输至数据库单元中,监听下载指令;验证供方数据签名和解密。 S4、存储供方数据并生成版权信息,并回传所述版权信息;根据需方要求查询相应的供方数据并上传至数据传输单元。 当数据集被跨链存储成功并附录版权时,将回返如下数据报2,数据报内包括收录后的版权编号,版权详情hash,收录时间戳,数据集的SHA散列后哈希值,数据集的编号,该数据集的版权归属账号地址,以及该数据集在联盟链中的存储位置。 数据报2:
如图7所示,存储供方数据并生成版权信息,并回传所述版权信息的具体步骤包括: S41、打包签名后数据集发送到数据库单元的联盟链中参与记账的诸多个节点内,进行数据的记账存储,完成后将广播到联盟链的节点群内,进行安全性存储; S42、在此之中平台内的数据经济存储节点也参与存储,并将数据集发回版权方。 上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
- 一种基于以太坊电机数据集文件的交易平台与交易方法
- 软件外包交易平台及基于软件外包交易平台的交易方法