1.一种基于智能合约的隐私保护数据共享方法,其特征在于:所述的基于智能合约的隐私保护数据共享方法包括按顺序进行的下列步骤:
1)初始化区块链网络:数据交易中心为数据交易创建智能合约,所有参与交易的实体均需同意智能合约的条件和条款;所有参与交易的实体使用智能合约提供的散列值检查智能合约的条件和条款,该散列值hSC由智能合约的条件和条款的原始数据D生成,即:hSC=Base58(multihash(SHA256(D)));
2)基于智能合约的身份验证:当数据所有者接收到数据购买者的数据需求后,通过区块链地址响应数据购买者,数据购买者通过智能合约和质询响应机制验证数据所有者对数据资源所有权的真实性和区块链地址所有者身份的真实性;
3)向智能合约支付交易费用和保证金:数据购买者和数据所有者对智能合约的条款和条件达成一致后,数据购买者向智能合约发送购买请求并支付购买所需数据的交易费用,数据所有者向智能合约支付相同价值的保证金;如果数据所有者未在相应的时间内支付保证金,数据购买者可以申请退款;
4)数据购买者从数据存储服务提供商处下载所需数据:数据购买者使用智能合约生成的唯一令牌从存储数据所有者数据的数据存储服务提供商处下载数据;所述的令牌token是由数据购买者的区块链地址aP、数据所有者的区块链地址aO、数据交易中心的区块链地址aC、数据资源的哈希hdata、区块时间戳tblock和令牌有效性vtoken来确定,即:token=keccak256(aP,aO,aC,hdata,tblock,vtoken);
5)基于智能合约的数据下载结果监督:数据购买者从数据存储服务提供商处下载数据后,智能合约会监督数据购买者、数据所有者和数据存储服务提供商之间下载结果反馈消息的统一;智能合约会根据反馈消息来决定是否发起仲裁;
6)发起仲裁请求及仲裁过程:若数据购买者声称数据无法成功下载,那么智能合约会让仲裁机构进行仲裁;若数据购买者对下载的数据可用性满意,智能合约直接进行费用结算;若数据购买者对下载的数据可用性不满意,智能合约会让仲裁机构进行仲裁;
7)基于智能合约的费用结算:若数据购买者能成功下载数据且对数据可用性满意,智能合约将直接进行费用结算;若数据购买者不能成功下载数据或者对下载的数据不满意,智能合约将根据仲裁结果自动进行仲裁费用的支付及其他参与交易实体的费用结算。
2.根据权利要求1所述的基于智能合约的隐私保护数据共享方法,其特征在于:在步骤
2)中,所述的数据购买者对数据所有者的质询响应机制的具体方法如下:
201)数据所有者DO使用自己的区块链地址aO向数据购买者DP声明他有数据;
202)为了验证数据所有者DO身份的真实性,数据购买者DP向数据所有者DO发送任意消息I并要求数据所有者DO签名;
203)数据所有者DO使用其区块链地址aO和私钥kO对信息I进行签名,生成签名消息S,即:
S=Sign(aO,kO,I);
204)数据购买者DP收到签名消息S后进行核实。
3.根据权利要求1所述的基于智能合约的隐私保护数据共享方法,其特征在于:在步骤
3)中,所述的向智能合约支付交易费用和保证金的具体方法如下:
301)数据购买者DP向智能合约SC支付购买数据的交易费用pP;
302)数据购买者DP设置交易时间t1;
303)数据所有者DO在时间t≤t1内向智能合约SC缴纳相同价值的保证金deposit;
304)若t>t1,数据购买者DP可向智能合约SC发起退款请求;
305)若t≤t1,数据购买者DP可从数据存储服务提供商DSSP处下载数据。
4.根据权利要求1所述的基于智能合约的隐私保护数据共享方法,其特征在于:在步骤
4)中,所述的数据购买者从数据存储服务提供商处下载所需数据的具体方法如下:
401)智能合约SC生成唯一的令牌token并发送给数据购买者DP;
402)数据购买者DP向数据存储服务提供商DSSP发送验证消息,通过数据购买者的签名kP来连接,即:
DPSigned(DPMsgDSSP)=kP(Hash(DPMsgDSSP));
发送的验证消息内容为数据购买者的令牌token、数据购买者的区块链地址aP、数据购买者的时间戳tP、数据购买者的互联网协议地址aIP和数据存储服务提供商的区块链地址aS,即:
DPMsg DSSP=Msg(token,aP,tP,aIP,aS);
403)数据存储服务提供商DSSP对数据购买者DP的身份验证完成并回复消息,通过数据存储服务提供商的签名kS连接,即:DSSPSigned(DSSPMsgDP)=kS(Hash DSSPMsgDP));
回复的消息内容为数据服务存储提供商的互联网协议地址aIS、数据存储服务提供商的时间戳tS、数据存储服务提供商的智能合约地址aS和数据购买者的区块链地址aP,即:DSSPMsgDP=Msg(aIS,tS,aS,aP);
404)双方身份验证完成后,数据购买者DP使用安全传输层协议TLS进行数据的下载。
5.根据权利要求1所述的基于智能合约的隐私保护数据共享方法,其特征在于:在步骤
5)中,所述的基于智能合约的数据下载结果监督的具体方法如下:
501)数据存储服务提供商DSSP和数据购买者DP向智能合约SC发送下载数据结果的反馈消息;
502)智能合约SC将从数据购买者DP收到的反馈消息发送给数据所有者DO和仲裁机构ABR;
503)智能合约SC根据数据购买者DP的反馈消息来决定是否让仲裁机构发起仲裁及采取什么类型的仲裁。
6.根据权利要求1所述的基于智能合约的隐私保护数据共享方法,其特征在于:在步骤
6)中,所述的发起仲裁请求及仲裁的详细方法如下:
601)智能合约SC识别反馈消息;
602)判别数据购买者DP的数据下载是否成功,若下载不成功,智能合约SC向仲裁机构ABR发起仲裁;
603)若数据购买者DP的数据下载成功,判别数据购买者DP下载的数据可用性与描述是否相符,若不符,智能合约SC向仲裁机构ABR发起仲裁;
604)若数据购买者DP下载的数据可用性与描述相符,进行费用结算。
7.根据权利要求6所述的基于智能合约的隐私保护数据共享方法,其特征在于:在步骤
602)中,判别数据购买者DP的数据下载是否成功,若下载不成功,智能合约SC向仲裁机构ABR发起仲裁的具体方法如下:
60201)若数据购买者DP的数据下载不成功,智能合约SC向仲裁机构ABR发起数据下载仲裁;
60202)仲裁机构ABR获得数据购买者的令牌token并从数据存储服务提供商DSSP处下载相同的数据;
60203)若仲裁机构ABR的数据下载成功,进行费用结算;
60204)若仲裁机构ABR的数据下载失败,数据购买者DP和数据所有者DO将分别获得购买数据的交易费用和缴纳的保证金退款。
8.根据权利要求6所述的基于智能合约的隐私保护数据共享方法,其特征在于:在步骤
603)中,判别数据购买者DP下载的数据可用性与描述是否相符,若不符,智能合约SC向仲裁机构ABR发起仲裁的具体方法如下:
60301)若数据购买者DP下载的数据可用性与描述不符,智能合约SC向仲裁机构ABR发起数据可用性仲裁;
60302)仲裁机构ABR获得数据购买者的令牌token并从数据存储服务提供商DSSP处下载相同的数据;
60303)仲裁机构ABR利用相似性学习对下载的数据进行可用性检验;
60304)若仲裁机构ABR的仲裁结果是数据可用性与描述相符,进行费用结算;
60305)若仲裁机构ABR的仲裁结果是数据可用性与描述不符,数据购买者DP将获得购买数据的交易费用退款和数据所有者缴纳的保证金退款。
9.根据权利要求8所述的基于智能合约的隐私保护数据共享方法,其特征在于:在步骤
60303)中,所述的相似性学习具体方法如下:m
Xi∈N ,表示实际特征向量,m表示特征向量的数量,X={X1,X2,...,Xn},表示实际数据m
特征点的样本集;Yi∈N ,表示声明数据特征向量,m表示特征向量的数量,Y={Y1,Y2,...,Yn}表示声明数据特征点的样本集;
实际特征向量X,声明数据特征点的样本集Y的马氏距离为:M为距离度量的参数矩阵;
当度量学习任务较多时,可将度量学习算法推广到多任务度量学习,特定的正则化项为
其中T∈N,t=0,...,T,γt控制Mt的正则化,F表示Frobenius标准,矩阵绝对值的平方和的平方根。
10.根据权利要求1所述的基于智能合约的隐私保护数据共享方法,其特征在于:在步骤7)中,所述的费用结算的具体方法如下:
701)若数据购买者DP对下载的数据满意,数据所有者的收益rO为智能合约SC退还的保证金deposit和数据购买者支付的购买数据的部分交易费用pP,即其中size为所下载数据的大小;数据存储服务提供商的收益rS和数据交易中心的收益rC由数据购买者支付的购买数据的交易费用pP和所下载数据的大小size决定,为
702)若仲裁机构ABR的数据下载成功,仲裁费用rB由数据购买者DP支付,即其中tB为仲裁时间;数据所有者的收益rO为其缴纳的保证金和数据购买者支付的购买数据的部分交易费用,即 数据存储服务提供商DSSP和数据交易中心DTC也将获得相应的收益,即
703)若仲裁机构ABR的数据下载不成功,仲裁费用rB由数据所有者DO支付,即数据购买者DP将获得购买数据的交易费用退款和数据购买者缴纳的部分保证金,即
704)若仲裁机构ABR的仲裁结果是数据可用性与描述相符,仲裁费用rB由数据购买者DP支付,即 数据所有者DO的收益为其缴纳的保证金和数据购买者支付的购买数据的部分交易费用,即 数据存储服务提供商DSSP和数据交易中心DTC将获得相应的收益,即
705)若仲裁机构ABR的仲裁结果是数据可用性与描述不符,仲裁费用rB由数据所有者DO支付,即 数据购买者DP将获得购买数据的交易费用退款和数据购买者缴纳的部分保证金,即