基于以太坊和动态定价的数据交易模式研究

2022-11-16 02:24陈仲武
计算机工程与应用 2022年21期
关键词:以太卖家买家

陈仲武,凌 捷

广东工业大学 计算机学院,广州 510006

当前数据已成为现代全球经济新的生命线,通过适当利用来自于公共或私人的开放数据,可为现有的商业市场探索新的发展方向,从而催生一种新颖的、以数据为中心的创新商业模式,即数据交易。

然而,在不完全信任的参与者之间进行在线数据交易时,网络环境的开放性和匿名性会给数据交易中意图作恶的利益相关方带来可乘之机,公平性成为一个新的挑战。如果其中两个利益相关方串通作恶,他们自身利益不受到损害且获利,这更加刺激他们继续作恶的动机。因此,在数据交易的参与者之间建立一个信任和安全的交易环境被视为刺激在线数据交易的主要关注点[1]。同时,随着区块链技术特别是智能合约的发展,可用于为数据共享及数据交易创建和实现公平协议。此外,区块链网络作为一种P2P 网络,使得数据交易更加便捷且无需寻找一个可信的数据市场平台。

价格则是数据交易的另一关键要素[2]。在数据交易过程中,若买卖双方都没有足够的信息确定交易的数据的效益,数据交易定价机制将是解决这一问题的有效途径。为了满足数据买卖双方的实际利益,并考虑数据价值动态变化的特点,在数据价值不确定的情况下,可采用动态定价来确定数据的价格[3]。

因此,构建一种基于以太坊智能合约的动态定价数据交易机制,为数据交易参与者创造一个去中心化、分布式、可信安全和透明的数据交易环境,以便参与者能够对交易结果达成一致。智能合约被用作在线数据交易平台,区块链作为一个去中心化的具有分布式和可验证性的开放分类账本,通过在区块链上部署智能合约以自动执行数据交易协议。此外,协议中的惩罚机制用于惩罚数据交易过程中的恶意行为。本文从以下几个方面提出解决方案:

(1)构建一种基于以太坊智能合约和动态定价的数据交易模式,在利益相关者缺乏信任的情况下安全透明地实现了数据交易的公平性和真实性。

(2)通过考虑数据卖家的出售意愿和数据买家的购买意愿,提出一个基于总供给和总需求的改进数据动态定价模型,设计出自动平衡的动态定价策略,并验证动态定价数据交易机制的有效性。

(3)在智能合约中构建“出售数据”“创建交易”和“纠纷解决”等数据交易算法。通过实现数据交易出售和购买请求、待售数据争议解决、自动退赔等功能完善了数据交易流程。

(4)在智能合约的设计过程中,设计了多种算法以实现以太加密货币的自动化交付。同时鼓励参与者诚实行事,将通过数据交易纠纷机制解决交易过程中的纠纷,并惩罚数据交易过程中的恶意行为。

1 相关工作

区块链的去中心化[4]、可信赖性、开源性及集体性维护等特点自比特币诞生便引起国内外大量研究学者的关注。虽然它与比特币一起诞生,但它的匿名性[5]、防篡改性、可审计性和可验证性等特点使其能够独立存在并应用于加密货币以外领域,如供应链、金融交易、物联网[6-8]、云存储及人工智能[9]等。

近年来,区块链技术与智能合约[10]技术的结合,为各领域提供了解决方案。Schwartzbach等人[11]通过分析一种扩展形式的博弈并提出一种智能合约,允许互不信任的双方在区块链上交易任何非数字商品或服务。Wang等人[12]提出了一种基于区块链的分布式数据完整性审计方案,旨在解决恶意第三方的信任问题。Xiong等人[13]利用以太坊和智能合约,提出一种数据资源保护解决方案,建立数据交易和争议解决模型。Xiang 等人[14]通过使用基于水印的智能合约策略,提出一种基于智能合约和数字水印的多类型去中心化数据交易方案来促进数据共享区块链中的版权保护。Li 等人[15]基于智能合约和遗忘传输协议,提出了一个公平的大数据交换方案,允许买卖双方在不涉及任何第三方中间人的情况下完成交易。

最近数据市场和数据交易问题促使研究人员在满足数据买家的同时最大化数据代理人的收入和利润。Zhao等人[16]提出了一个基于机器学习的、带有区块链的隐私保护数据交易市场,以防止单点失效。Yu等人[17]基于行为经济学中的前景理论,通过考虑数据需求和需求不确定性,提出了一个移动数据交易模型,以移动用户之间的移动数据数量进行交易。Bajoudah 等人[18]设想了一个物联网数据流市场,允许任何一对数据提供商和消费者在没有任何事先相互信任的情况下交换数据。Guan 等人在文献[19]中提出了两种安全、公平、高效的数据交换方案,以解决现有数据交易方案中交易过程复杂、交易成本高以及可能存在的不公平交换等问题。

在个人数据生态系统中,人们对个人数据类型有不同的隐私担忧,因此个人数据市场应考虑隐私意识[20-21]。同时,关于个人数据定价或隐私定价模型也进行了相关研究。Malgieri 和Custers[22]研究发现,个人数据的货币价值可以通过各种个人数据定价因素来量化。Shen 等人[23]提出了一种基于线性函数的个人数据定价方案,文献中考虑了信息熵、数据提供者信用和数据参考指标。Xu等人[24]提出了一种在隐私保护的个人数据环境下使用多臂强盗方法的动态个人数据定价方案。Wang等人[25]通过考虑数据销售商的定价点和查询结果的准确性,提出了一种基于查询的数据定价方案,建立了数据消费者近似聚合查询的数据定价模型。

2 数据交易模式

这部分将介绍基于以太坊智能合约的数据交易模式的整体架构和数据交易流程的算法实现。

2.1 模式框架概述

本文提出的区块链解决方案主要关注于交易市场中数据供求关系和数据买卖双方之间的交易数据转移,并解决数据交易参与者之间的纠纷。在数据交易过程中,每个实体的职责如下:

(1)数据卖家(DS):拥有数据资源并愿意以商业交易的形式出售数据的实体。

(2)数据买家(DP):对数据资源具有一定的购买需求并愿意通过商业交易的形式购买数据的实体。

(3)数据交易平台(DTP):数据交易智能合约的创建者和所有者,获取交易市场的供求关系,并负责向区块链中的所有节点广播数据交易信息和通知。在本文中,假设是一个完全可信的实体,只提供数据交易的平台,在任何情况下都不会违反公平正义的原则。

(4)数据存储方(DSP):为数据卖家提供如File-Coin[26]、Swarm[27]或IPFS[28]等去中心文件系统来存储数据交易中的数据资源。一旦数据交易确认后,为数据买家提供下载所购数据资源的服务。

(5)仲裁机构(ARB):仲裁机构有能力判别智能合约中预置代码是否符合所有参与实体之间达成的数据交易的条款和条件,即验证智能合约的条款和条件是否符合所有参与实体的利益。本文假设仲裁机构无条件服从公平公正的原则。同时,仲裁机构还具有解决数据买家和数据卖家之间关于交易数据定价公平性等争议的功能。

数据交易过程总结如下:

首先,数据交易平台为数据交易创建智能合约,所有数据交易的参与实体同意合约的条款及条件,方可使用其以太坊地址进行注册。数据卖家向全网广播自身代售的数据资源,而数据买家则监控网络并通过whiper[29]与数据卖家就数据资源信息进行链下沟通。数据买家通过智能合约验证对应的以太坊地址的所有者是否拥有自身所需的数据资源,验证确认后,数据买家可向智能合约发送数据购买请求,并支付最高数据价格和相对应的交易保证金。相对应地,数据卖家响应购买请求后,向智能合约支付一定的交易保证金。智能合约随后将自动生成一个具有唯一性和时效性的下载令牌并发送给数据买家。数据买家通过在有效的时间内下载令牌并从数据存储方处下载对应的数据资源,触发数据资源下载成功事件以结束数据交易流程并根据当前交易周期的供需关系进行数据动态定价进行交易费用结算。如果数据卖家或买家认为交易存在在争议,可向智能合约提出仲裁请求并等待仲裁机构的介入,仲裁结果将判定交易是否成功及仲裁的责任认定。数据交易模式框架如图1所示。

2.2 数据交易算法设计

2.2.1 出售数据资源和创建交易

数据卖家向智能合约交付一定的交易押金后广播数据出售的详细信息。数据买家利用智能合约验证对应以太坊地址所有者是否拥有自身所需的数据资源,并通过挑战响应机制验证数据买家是否为以太坊地址的真实所有者。出售数据资源的伪代码如下:

验证确认后,数据买家向智能合约发送数据购买请求并支付数据的最大交易费用(即数据交易的最高价格)。随后智能合约根据当前的交易周期及交易的供求关系确定本次交易价格。创建数据资源交易的伪代码如下:

2.2.2 成功交易的结算和支付

一旦数据买家通过令牌从数据存储方处下载数据资源后,数据存储方将触发智能合约中的函数提交确认下载事件。只有当数据买家也通过调用智能合约的函数提交确认下载事件后,并在有效的时间内对交易和数据资源没有提出争议,智能合约将交易视为一次成功交易,进行成功交易结算并确认交易信息。成功交易结算的伪代码如下:

2.2.3 争议交易的结算和支付

(1)数据下载争议:如果数据买家在有效时间内的确认结果是数据下载失败,即认为数据无法下载成功,那么仲裁机构将介入到交易的流程中。仲裁机构根据数据的下载情况决定仲裁结果。如果仲裁机构同样无法下载数据资源,则判定仲裁结果为数据下载失败,视为交易不成功。智能合约将会向数据卖家退还交易押金,并向数据买家退还全部交易费用和交易押金。反之则判定仲裁结果为数据下载成功,视为交易成功且数据买家存在欺骗行为。智能合约将会没收数据买家的交易押金作为欺骗惩罚,并将其奖励给其余的交易参与者。数据下载争议的伪代码如下:

(2)数据可用性争议:如果数据买家在有效时间内的确认结果是数据不可用,即认为数据可用性不符合其描述,那么仲裁机构将介入到交易的流程中。仲裁机构通过在链下验证数据资源是否与描述一致决定仲裁结果。如果验证结果为数据与描述不一致,则判定仲裁结果为数据不可用,视为交易不成功且数据卖家存在欺诈行为。智能合约将会没收数据卖家的交易押金作为欺骗惩罚,并将其奖励给其他的交易参与者。数据买家还将被退还所有交易费用和交易押金。反之则判定仲裁结果为数据可用,视为交易成功且数据买家存在欺诈行为。数据可用性争议的伪代码如下:

(3)数据定价异常争议:如果数据买家在有效时间内的确认结果是定价异常,即认为数据的定价不合理,那么仲裁机构将介入到交易的流程中。仲裁机构获取数据买家的交易价格及交易时段内的动态定价并验证两者是否一致。如果验证的结果为定价不一致,则判定仲裁结果为数据定价异常,视为交易不成功且数据交易中心存在欺诈行为。智能合约将会向数据卖家退还交易押金,并向数据买家退还全部交易费用和交易押金。同时,数据交易者的押金被没收并奖励给其他数据参与者。反之则判定仲裁结果为数据定价正常,视为交易成功且数据买家存在欺诈行为。数据定价异常争议的伪代码如下:

3 基于总供给和总需求的数据动态定价模型

提出的动态定价模型的主要目标是在数据交易的市场中平衡数据卖家和购买者之间数据的供求关系。同时,动态定价策略在每一轮交易中使用动态交易价格,其价格只取决于每个交易期开始时数据市场中的总供给和总需求[30]。

3.1 模型定义

定义1(数据总供给)设Si(t)(t≥0,Si(t)≥0 )为DSi(DSi∈DS)在第t轮交易期开始时数据的出售量,nS为数据交易市场的数据卖家的总人数。数据总供给定义为在第t轮交易期开始时交易市场中数据卖家的出售数据的总和:

定义4(数据总供求之差)设D(t)为数据交易市场在第t轮交易期开始时的总需求与总供给之间的差值,可以表示为:

3.2 动态定价策略

假设p(t)是数据交易市场在第t轮交易期的动态实时定价,由第t轮交易期的总需求与总供给之间的比率R(t)和差值D(t)定义:

式(5)中pbalance指代R(t)=1 时的价格,而pvol则指代价格在R(t)=1时的增幅,价格区间为(pbalance-pvol,pbalance+pvol)。图2 中将式(5)的定价模型与Chekired 等人[30]的定价模型进行比较。图2可以看出,当R(t)=1 时,提出的定价模型处于平衡状态,p(t)维持在150,并且价格p(t)在R(t)处于最小值和最大值附近处呈现饱和。反观Chekired等人[30]模型,当R(t)小于100时,随着需求进一步增加,价格也几乎不变,即使R(t)大于101时,价格也会继续上涨,呈现出不对称状态。

图3 显示了不同k值对定价模型的价格曲线的变化情况。可以看出价格曲线关于R(t)对称变化,而且随着k值的增大,价格曲线在接近R(t)=1 时,处于平衡稳定的区间更长。

本文假设随着数据交易价格的增加,数据卖家更愿意出售数据资源;而数据消费者更愿意在较低数据交易价格增加数据购买需求。为简单起见,假设一个随机变量X,DSi不会以低于X的价格出售自己的数据类型资源。

4 实验及结果分析

4.1 智能合约实施

本节将在Remix IDE 构建以太坊的私有链以测试和验证所提出的智能合约,测试的编译器版本是0.6.0+commit,测试环境是JavaScript VM。根据数据交易参与的实体数量使用了五个以太坊地址,每个地址都有100 ether作为初始余额:

数据卖家(DS)地址:

4.1.1 出售数据资源和创建交易

数据卖家在调用sellData()函数前通过修饰符向智能合约支付保证金,只有保证金大于预置的金额才能进行数据资源的出售。数据卖家以数据类型和数据描述为输入为数据资源的出售信息进行创建,并触发数据待出售和请求定价事件。数据买家监听到特定的数据资源出售信息调用newTrade()函数请求购买并向合约支付交易费用和保证金后,此时新的交易被创建,且交易的状态显示数据买家的交易保证金已经支付。交易创建后智能合约内部函数自动生成下载数据所需的令牌。图4(a)显示数据资源出售,图4(b)显示新的交易创建。

[ { "from": "0xd9145CCE52D386f254917e481eB44e9943F39138","event": "DataSelling","args":{"DS" : "0xCA35b7d915458EF540aDe6068dFe2F44E8fa733c","info": "Data resource is sold by data sellers"}},{"from" :"0xd9145CCE52D386f254917e481eB44e9943F39138","event": "ReguestPricing","args": {"dataseller":"0xCA35b7d915458EF540aDe6068dFe2F44E8fa733c","timestamp": "1625369747","number0fD0s": "2 ","numberOfDPs": "0","Request pricing data resource"}}](a)数据资源出售[ { "from": "0xd9145CCE52D386f254917e481eB44e9943F39138","event": "DPPaid","args": { "datapurchaser":"0x4B20993Bc481177ec7E8f571ceCaE8A9e22C02db","info": "The data price has been paid by data purchaser:"} },{"from": "0xd9145CCE52D386f254917e481eB44e9943F39138","event":"NewTradePublished","args": { "DP" : "0x4B20993Bc481177ec7E81571ceCaE8A9e22C02db","info": "request data from","DS": "0xCA35b7d915458EF540aDe6068dFe2F44E8fa733c"} }]

4.1.2 交易定价

合约所有者获取请求定价事件后,调用confirm-Price()函数为新的交易时间根据供需关系设定价格,此时交易的状态变更为价格确定,且触发价格确定事件。图5显示了交易定价事件的发生,表明交易的价格被最终确定。

4.1.3 成功交易的结算和支付

当数据存储方触发了数据已被购买者下载的确认事件,同时数据买家针对下载的数据没有争议,调用DPCofirmResult()函数触发确认交易事件时,这意味着交易成功,交易费用将自动结算。图6显示了结算和支付事件的发生,表明结算和支付已经完成。

4.1.4 数据定价异常争议的结算和支付

如果数据买家调用DPCofirmResult()函数确认数据定价不合理,仲裁机构将介入争议。如果仲裁机构验证交易时期的供需关系,调用princingDisputeResolution()函数判定仲裁结果为真,退款将自动完成。

图7 显示了仲裁结果为真时进行交易结算和支付前后的各参与方账户金额情况。

如果仲裁结果为假,则自动完成付款结算,并惩罚数据买家的恶意行为,没收数据买家所支付的保证金和交易费,而将支付给仲裁机构和数据卖家。图8显示了仲裁结果为假时触发自动退款和惩罚事件。

4.2 动态定价实施

在本节中将模拟动态定价的实施过程,实验环境为Intel Core i5-9400 CPU@2.90 GHz,8 GB RAM 配置的64 位计算机。使用4 个参数定义数据卖家和数据买家,如表1所示,分别是DSi的MaxSupply、MinSupply,以及DPj的MaxDemand、MinDemand。

表1 参数定义Table 1 Parameter definition

上节假设DSi在t交易期内的出售意愿函数Φ值和DPj在t交易期内购买意愿函数Ψ值依赖于(t-1)交易期价格,即p( )t-1 ,如图9所示。在图9中,i.MaxPrice和j.MaxPrice的值为200,i.MinPrice和j.MinPrice的值为100。

那么DSi在t交易期内的数据资源出售量i.Supply(t)与DPj在t交易期内的数据资源需求量j.Demand(t)分别有如下等式表示:

假设在数据卖家和数据买家根据等式(8)和等式(9)对价格变化作出反应的前提下,将收敛区域定义为pbalance±1%内。图10分别显示了k=3、k=5、k=7和k=9 时对收敛到平衡点(R(t)=1) 的影响,其中,pbalance=150 和初始R(t)=0.25。

对于图10(a),当k=3 时,到达收敛区域内至少需要13 轮次交易,但收敛区间最短,约为10-0.15≤R(t)≤100.15。对于图10(b)、(c),当k=5 或k=7 时,收敛速度较为平衡,到达收敛区域内分别需要10 轮和6 轮次交易,收敛区间则分别为10-0.25≤R(t)≤100.25和10-0.28≤R(t)≤100.28。对于图10(d),当k=9 时,收敛速度最快约为5次,且收敛区间最短,约为10-0.30≤R(t)≤100.30。

4.3 成本分析

在以太坊智能合约中调用函数需要花费一定数量的费用,其中费用是以gas为单位。gas的花费主要取决于函数本身参数的数量和执行的操作次数。随着gas的价格越高,矿工为追求利润最大化,因而gas价格越高的交易将更有可能被优先选择完成。另外,Ethereum Gas Station 是一个gas 价格信息源集中平台,通过获取并汇总多个数据源的最新天然气价格,提供一个可靠的平均天然气价格,并将函数调用成本从gas 单位兑换成法定货币单位,即美元[31]。

Remix IDE 在调用智能合约时对执行成本进行合理估算。所开发的智能合约中重要函数的执行成本如表2所示。

为了公平起见,根据gas station推荐的gas价格,选取截止2021年6月27日的数据分析函数执行成本。表2中反映用户为获得函数缓慢、平均和快速执行而选择的对应不同的价格。

假设缓慢、平均、快速和立即执行函数的gas价格分别为6、7、10 和12 Gwei/gas,那么gas station 将据此来估算该函数执行的以太币成本。同时,选取1 ETH=$210.10 的以太币与美元的汇率,将智能合约的执行成本转换为美元。从表2中可得出结论,所提出的解决方案中不同函数消耗的gas 成本均在可接受范围内,即执行成本是合理的。其中,使用缓慢或者一般交易方式,函数平均执行成本低于$0.83;使用快速交易方式,平均执行成本则低于$1.4;而使用即可交易方式,平均成本则低于$1.8。

表2 相关函数的执行成本Table 2 Execution cost of correlation function

除此之外,得益于区块链和智能合约的透明性和不可篡改性特性,方案能确保交易过程对交易参与者的公平性和公开性。

5 安全分析及性能评估

5.1 安全分析

5.1.1 安全特性

(1)身份验证与授权:智能合约只能由特定的授权实体在特定的交易流程中执行。未经授权的实体调用函数或者授权实体未在特定流程下调用函数,则会产生错误异常。同时,方案中的挑战响应机制能够对数据卖家进行身份认证和授权,以防止数据卖家的不诚实行为。对于数据买家与存储服务方之间的链下通信,提出链下访问和下载数据机制,保证只有授权的数据买家才能下载数据资源。

(2)保密性:在提出的解决方案中,数据买家利用时间戳和唯一下载令牌与存储服务方进行链下访问。即使唯一下载令牌意外泄漏,存储服务方也可验证用户的身份以防止数据资源泄漏。当然这也鼓励更多的实体参与和交换数据资源。

(3)不可否认性:所提出的区块链解决方案在数据交易过程中,所有利益相关者都不能否认自身在交易中的交易行为,也不能否认没有收到特定的收益和数据资源。

(4)数据完整性:在提出的解决方案中,数据卖家通过使用时间戳和唯一的下载令牌与数据存储方进行链下访问,并下载数据资源,任何需要修改的数据都应作为新的事务重新被处理,数据交易的任一流程信息都会作为通知事件发送至所有利益相关者。

(5)抗网络攻击:以太坊网络中的事务经过加密技术加密并进行哈希加以保护。在基于区块链的解决方案中,因为使用散列机制数据是不可变的,恶意攻击者无法篡改任何事务。散列指针作为区块头的组成部分将区块链接在一起。这使得中间人攻击(MITM)和分布式拒绝服务(DDoS[32])等网络攻击几乎不可能发生。

5.1.2 脆弱性分析

本文使用安全分析工具对所提出的数据交易解决方案开发的智能合约中代码漏洞进行分析。首先,Remix IDE能够通知开发人员的所有语法错误、警告和函数运行时的错误等。SmartCheck 代码分析器则用于发现代码中的潜在风险,并检测诸如花费高昂的执行回路、异常的gas 消耗、溢出和下溢等错误。其次,通过利用SmartCheck 工具分析所开发的智能合约代码,图11 显示了SmartCheck 日志分析内容。日志内容表明合约中不存在任何严重的安全和隐私漏洞。

此外,还使用Oyente[33]分析智能合约代码的安全漏洞。Oyente作为一款强大的安全漏洞分析工具,可以根据漏洞知识库检查以太坊智能合约,并生成漏洞分析报告。报告中列出一系列主流的代码漏洞,以及这些漏洞是否存在于当前检测的智能合约代码中。为更好分析所开发的智能合约中代码安全性,在64 位Ubuntu16.04环境下基于evm-1.7.3 和solc-0.4.19 版本,针对整数类型上溢和下溢、Parity 多重签名漏洞、调用堆栈深度攻击、交易顺序依赖(TOD)、时间戳依赖、再入攻击和断言错误等主流代码漏洞,通过模拟面向一致的交易事务场景,将本文与相关文献中现有解决方案的智能合约分别进行漏洞分析,表3显示了Oyente生成的漏洞分析报告。

表3 Oyente漏洞分析报告Table 3 Oyente vulnerability analysis report

从漏洞分析结果可以看出,由于文献[11,13,34]只关注于单一功能的实现,而没有考虑整数类型变量的内存大小,导致代码出现了整数类型上溢和下溢的代码漏洞。此外,缺乏控制合约的执行逻辑和执行顺序,没有严格限制每个执行步骤中特定的调用时间和调用实体,使得文献[11,34]代码中暴露交易顺序依赖(TOD)和时间戳依赖等漏洞缺陷。而文本中的智能合约,在汲取相关文献中智能合约出现的代码漏洞问题,同时遵循以太坊代币标准ERC20[35],采取预先提交方案的机制进行开发,经报告显示Oyente 工具所检测的漏洞均被标记为“False”,即所开发的智能合约代码没有这类漏洞缺陷。通过参考Oyente 工具所提供的智能合约示例中的覆盖率比值可知,覆盖率比较高反映当前代码漏洞较少。其他现有方案有较明显的代码漏洞,所以覆盖率偏低。本文缺陷漏洞代码覆盖率为99.5%,可表明该代码存在漏洞较少,能够有效避免多种主流代码漏洞,证明所开发的智能合约满足安全性和可行性的要求。

5.2 相关方案比较

针对gas的花费成本,在Remix IDE的JavaScriptVM环境下构建的以太坊私有链上分别部署本文方案和相关文献中现有解决方案的智能合约,并通过执行多次试验以取平均值进行比较分析。如表4所示,所提出方案在生成交易订单步骤需要耗费53 099 gas,更新商品需要耗费34 284 gas,确认接收和支付结算共需耗费79 653 gas。以上操作消耗总成本约为167 036 gas,gas花费接近于文献[13],与其他解决方案相比处于较低的gas 消耗水平。由于所提出方案在创建新的交易流程中,需要对交易价格进行实时动态定价,而文献[13]的交易在创建时保持恒定不变的价格,因此本文方案与之相比需多花费更新商品信息的费用。方案还采用较少的映射关系,并融合确认接收和支付结算函数,相较于其他解决方案减少了不必要的操作和花销,提高了交易效率。另外,方案只需要相应的消费者根据预设的条件进行确认。总体而言,本文的解决方案在保证安全、可靠、公平、合理的前提下,能够对交易价格进行合理的动态调整,减轻了卖家工作量和买家消费负担,确保了交易双方的的利益不受损害。

表4 相关解决方案比较Table 4 Comparison of related solutions

6 结束语

本文针对目前数据交易模式下的流程耗时较大和公平支付问题,提出一种改进的基于以太坊智能合约的数据交易模式,实现在利益相关者缺乏信任的情况下安全透明地数据交易。同时,在买卖双方都没有足够的信息确定交易的数据资源能带来多大的效益的情况下,通过考虑数据卖家的出售意愿和数据买家的购买意愿,提出一个改进的基于总供给和总需求数据动态定价模型,设计实现自动平衡的动态的定价策略,最快约5轮交易期即可实现交易价格收敛。仿真结果表明方案相对现有的模型在数据交易场景下能有效动态更新调整价格并降低gas 成本,同时避免一系列主流的代码漏洞,证明改进交易模式具有良好交易稳定可行性和较高的安全性。

未来将深入考虑数据交易中数据非法转售的问题,构建保护数据共享中的数据版权机制,并针对异构类型的数据交易等实际应用实例,构建系统模型实验,验证架构的效率。

猜你喜欢
以太卖家买家
基于活跃节点库的以太坊加密流量识别方法
以太万物理论概述
卖家秀女人 vs 买家秀女人
车易链:做汽车业的“以太坊”
快乐辞典
神一般的打字技术
拉风买家秀
A Study on the Contract Research Organization
淘宝买卖家的搞笑对话
12星座淘宝卖家