本发明属于遥感数据交易技术领域,具体涉及一种基于智能合约的遥感数据交易激励方法。
背景技术:
在传统的遥感数据交易平台中,供应商上传开放遥感数据只有给予没有回报及缺少公允可信的激励制度,同时上传的数据存在被篡改和无法溯源的风险,这导致供应商上传遥感数据的积极性不足。缺乏一个公允可信平台交易环境,这使得用户和供应商对平台存在信任问题。
近年来,随着遥感技术的发展,越来越多的人开始从事遥感数据的研究,对遥感数据的获取渴求度也是日益增多,区块链技术在现行的科技网络领域,已得到较长时间的验证,它可以稳定运行于各种交易系统,为适应复杂的交易环境导致频繁需求变更,对于平台化,便捷化的智能合约开发等问题亟待解决,如何充分合理利用区块链技术为遥感数据交易平台提供安全可信的交易环境,是遥感数据平台急需解决的问题。
技术实现要素:
针对现有平台存在的问题,本发明提供了一种基于智能合约的遥感数据交易激励方法,利用区块链技术,通过智能合约建立积分激励机制,用以提高用户共享数据的意愿,上传的数据进行确权存证,打造安全可信的平台交易环境。
本发明的实现方法如下:
一种基于智能合约的遥感数据交易激励方法,包括如下步骤:
1)为新注册的用户分配初始积分及在区块的节点中生成用户信息;
2)将用户上传的数据进行确权存证并获得相应积分,交易时检验数据并读取存证信息;
3)设计积分奖励兑换规则,将规则部署在智能合约上;
4)将规则以程序代码的形式附加到智能合约程序中,经过编译提交并且确认后存储在特定区块中;
5)设计适用于不同遥感数据交易类型的验证方法,并将方法存储到区块链上;
6)用户进行交易时需验证交易,验证通过后根据交易类型将遥感数据交易信息传输到区块链上。
(1)所述用户注册后会在区块的节点中生成用户初始信息,同时初始积分数据以数字资产的形式同步至此用户的区块。
(2)所述用户上传的数据进行确权,数据嵌入数字水印,生成存证信信息并获得相应积分,交易时检验数据并读取存证信息。
(3)所述积分获取及兑换设计如下:
a)用户可通过共享遥感数据获取积分,其他用户下载其共享的遥感数据也可获取相应积分;
b)积分可兑换用户需求的遥感数据下载权力,数据下载上限及提升数据下载优先级;
c)积分规则部署在智能合约中,当触发获取兑换积分智能合约,由所述获取兑换积分的智能合约发放相应奖励积分和扣除相应积分,结算后的总积分存到区块链中。
(4)所述智能合约执行执行流程如下:
a)在合约各方对积分获取兑换规则的内容达成一致的基础上,通过评估确定该合同是可以通过智能合约实现的,然后由程序员利用合适的开发语言将以自然语言描述的合同内容编码成为可执行的机器语言;
b)合约文件上传到区块链之前需要利用编译器对原代码进行编译,生成符合沙箱环境运行要求的字节码;
c)管理员发起提交合约文件后,被验证后的有积分获取兑换规则被打包进新区块,经过共识机制,新区块添加到区块链的主链。节点对经验证有效的信息进行处理,被调用的合约在沙箱中执行。
(5)所述指定积分兑换数据交易的验证方法为指定交易验证方法,通用免费数据交易的验证方法为通用交易验证方法,方法存储在区块链上,所有交易都需要经过验证方法的校验。
(6)所述交易过程设计如下:
a)系统收到用户交易请求指令,根据交易类型取相对应的交易验证方法进行校验;
b)校验通过后,根据读取的数据存证信息给数据提供方奖励相应积分,并将遥感数据交易信息传输到区块链上。
基于上述技术方案,本发明具有以下有益效果:
利用智能合约平台技术,实现智能合约交易化部署,减轻因为人为因素带来的影响,打造了公允可信的交易环境,并且提升了用户对上传遥感影像数据的积极性,而且整个基于区块链的智能合约平台方法简单,操作方便,使用效果相对于传统方式更好。
附图说明
图1为本发明整体流程设计示意图。
图2为本发明数据确权存证流程示意图。
图3为本发明智能合约执行流程示意图。
具体实施方式
下面将结合附图,对本发明的技术方案进行清楚、完整地描述。此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。
如图1所示,本发明提出的一种基于智能合约的遥感数据交易激励方法,包括如下步骤:
1)为新注册的用户分配初始积分及在区块的节点中生成用户信息,流程如下:
1.1用户信息处理:用户注册时生成一个可登录的账户存入普通数据库内,生成jwt返回至客户端。然后客户端在本地创建非对称秘钥对,并对信息进行加密,用户将其他身份信息及默认的初始化积分和公钥回传至服务器。
1.2用户信息上链:用户身份审核通过后,系统将存储用户公钥并用公钥将用户身份信息加密后写入区块链;系统激活用户账户并调用智能合约将其余身份信息加密后写入区块链。
2)用户上传数据,系统完成数据校验后进行确权,嵌入数字水印信息生成一个含数字水印的加密数据,同时读取数据的存证信息,设置数据的唯一hash值,数据交易校验hash值读取存证信息并记录到区块链上,最后根据智能合约奖励用户数据积分,整个数据确权存证流程如图2所示。
3)所述积分获取及兑换设计流程如下:
3.1设置积分获取规则:用户通过共享遥感数据获取积分,其他用户下载其共享的遥感数据也可奖励相应积分,用户数据共享达到一定数值会额外积分,用户的共享数据被下载达到一定次数也会获得额外积分。
3.2设置积分兑换规则:积分可兑换用户需求的遥感数据下载权力,数据下载上限及提升数据下载优先级,数据热度置顶。
积分规则部署在智能合约中,当触发获取兑换积分智能合约,由所述获取兑换积分的智能合约发放相应奖励积分和扣除相应积分,结算后的总积分存到区块链中。
4)所述智能合约执行过程设计如下,流程如图3所示:
4.1合约代码生成:在合约各方对积分获取兑换规则的内容达成一致的基础上,通过评估确定该合同是可以通过智能合约实现的,然后由程序员利用合适的开发语言将以自然语言描述的合同内容编码成为可执行的机器语言。
4.2编译:利用开发语言编写的智能合约代码一般不能直接在区块链上运行,而需要在特定的沙箱环境(以太坊为evm,超级账本为docker容器)中执行,所以在将合约文件上传到区块链之前需要利用编译器对原代码进行编译,生成符合沙箱环境运行要求的字节码。
4.3合约提交与确认:管理员发起提交合约文件后,进行全网广播,使各个节点在进行验证后存储在区块当中。被验证后的有积分获取兑换规则被打包进新区块,经过共识机制,新区块添加到区块链的主链。根据新区块生成智能合约的地址,之后可以利用该地址来调用合约,节点对经验证有效的信息进行处理,被调用的合约在沙箱中执行。
5)通过设计对应数据交易形式的验证方法,将验证的具体过程以交易的形式存储到链上,在每次发送交易的时候,根据交易数据的类型获取区块链上对应的交易验证方法,进行验证,如果是积分兑换的特殊需求,设置满足该需求的交易验证方法,将特定的验证过程以交易的形式存储到链上。
6)所述数据交易过程设计如下:
6.1交易验证:针对不用类型的交易,在交易发送到区块链网络之前,读取链上读取验证方法,校验其对应类型的交易方法,自动完成交易验证。
6.2交易信息上链:校验通过后,根据读取的数据存证信息以及智能合约上对应的积分获取规则,给数据提供方奖励相应积分,并将遥感数据交易信息传输到区块链上。
1.一种基于智能合约的遥感数据交易激励方法,其特征在于:包括如下步骤:
1)用户积分初始化设计:为新注册的用户分配初始积分及在区块的节点中生成用户信息;
2)数据确权存证设计:用户上传的数据进行确权存证并获得相应积分,交易时检验数据并读取存证信息;
3)积分获取及兑换设计:设计积分获取规则,设计积分兑换规则,规则部署在智能合约上;
4)智能合约执行流程设计:将规则以程序代码的形式附加到智能合约程序中,经过编译提交并且确认后存储在特定区块中;
5)交易验证方法设计:设计适用于不同遥感数据交易类型的验证方法,并将方法存储在区块链上;
6)交易过程设计:用户进行交易时需验证交易,验证通过后根据交易类型将遥感数据交易信息传输到区块链上。
2.根据权利要求1所述智能合约的遥感数据交易激励方法,其特征在于:步骤1)所述用户注册后会在区块的节点中生成用户初始信息,同时初始积分数据以数字资产的形式同步至此用户的区块。
3.根据权利要求1所述智能合约的遥感数据交易激励方法,其特征在于:步骤2)所述用户上传的数据进行确权,数据嵌入数字水印,生成存证s信息并获得相应积分,交易时检验数据并读取存证信息。
4.根据权利要求1所述智能合约的遥感数据交易激励方法,其特征在于:步骤3)所述对积分获取及兑换设计如下:
4.1)积分奖励规则:用户可通过共享遥感数据获取积分,其他用户下载其共享的遥感数据也可获取相应积分;
4.2)积分兑换规则:积分可兑换用户需求的遥感数据下载权力,数据下载上限及提升数据下载优先级;
4.3)积分规则部署在智能合约中,当触发获取兑换积分智能合约,由所述获取兑换积分的智能合约发放相应奖励积分和扣除相应积分。
5.根据权利要求1所述智能合约的遥感数据交易激励方法,其特征在于:步骤4)所述对于智能合约执行流程设计如下:
5.1)合约代码生成:在合约各方对积分获取兑换规则的内容达成一致的基础上,通过评估确定该合同是可以通过智能合约实现的,然后由程序员利用合适的开发语言将以自然语言描述的合同内容编码成为可执行的机器语言;
5.2)编译:合约文件上传到区块链之前需要利用编译器对原代码进行编译,生成符合沙箱环境运行要求的字节码;
5.3)合约提交与确认:管理员发起提交合约文件后,被验证后的有积分获取兑换规则被打包进新区块,经过共识机制,新区块添加到区块链的主链;
节点对经验证有效的信息进行处理,被调用的合约在沙箱中执行。
6.根据权利要求1所述智能合约的遥感数据交易激励方法,其特征在于:步骤5)所述指定积分兑换数据交易的验证方法为指定交易验证方法,通用免费数据交易的验证方法为通用交易验证方法,方法存储在区块链上,所有交易都需要经过验证方法的校验。
7.根据权利要求1所述智能合约的遥感数据交易激励方法,其特征在于:步骤6)所述对交易过程设计如下:
7.1)系统收到用户交易请求指令,根据交易类型取相对应的交易验证方法进行校验;
7.2)校验通过后,根据读取的数据存证信息给数据提供方奖励相应积分,并将遥感数据交易信息传输到区块链上。
技术总结