[发明专利]一种公平和隐私保护的大数据交换方案在审
申请号: | 202110267868.8 | 申请日: | 2021-03-12 |
公开(公告)号: | CN112926955A | 公开(公告)日: | 2021-06-08 |
发明(设计)人: | 陈玉玲 | 申请(专利权)人: | 贵州大学 |
主分类号: | G06Q20/04 | 分类号: | G06Q20/04;G06Q20/08;G06Q20/12;G06Q20/38 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 550025 贵州省*** | 国省代码: | 贵州;52 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 公平 隐私 保护 数据 交换 方案 | ||
1.本专利提出了一种公平和隐私保护的大数据交换方案,该方案使用不经意传输协议保证了大数据交换的灵活性和购买者的隐私;值得一提的是,该方案提出了一个基于以太坊上智能合约的支票系统,可以对现有的交易流程进行优化;另外,该方案的设计中包含了基于智能合约的交易流程部分,实现了交易的时间控制,这些设计能够有效地保证数据拥有者和购买者双方的权益,并且极大地提高了大数据交换的效率;
根据公平和隐私保护的大数据交换方案,本发明提出一种方法,包括如下步骤:
步骤一:以太坊支票的定义
我们使用一种以太坊支票实现购买者S2向数据拥有者S1支付购买数据所需的金额,来使交易更加简短和便利,以太坊支票系统的实现需要部署两个智能合约(SC1,SC2),合约SC1用于交易,合约SC2用于存储代币,在S2开始交易之前,他必须在SC2中有足够多的代币存储;
支票的具体定义为:
Cheque=(PK_S1||Token||Date||E(R,PK_S1)||Hash(R)),
其中PK_S1是数据拥有者S1的公钥,Token是购买者S2需要支付的代币金额,Date是时间戳,R是购买者S2用随机数生成器生成一个随机数,E(R,PK_S1)是S2用S1的公钥加密随机数R的结果,Hash(R)是S2用某一种哈希算法计算的R的哈希值,生成支票后,购买者S2用自己的私钥SK_S2对支票进行签名,已签名的支票记为:
Cheque_=Sig(Cheque,SK_S2)
数据购买者S2将签过名的支票Cheque_发送给智能合约SC1,上传完成后,数据拥有者S1可以下载支票;
当S1需要使用支票时,先用S2的公钥验证S2的签名后,用自己的私钥SK_S1解密E(R,PK_S1)得到R’并上传到智能合约SC1,智能合约SC1计算R’的哈希值与支票中的哈希值Hash(R)进行比较,若相同则验证通过,SC1将S1的地址以及代币的数量发送到合约SC2,SC2会将代币发送到S1的地址上,并从S2的代币余额中扣除等量代币;
步骤二:初始化过程
①参数设定
交易开始之前,数据拥有者S1和数据购买者S2需要完成一些参数的设定,S1和S2协商一共将数据分为多少块,假设为n块;S2选择需要购买的块数m(0mn);S1设置S1的保证金金额Deposit_S1和S2的保证金金额Deposit_S2(Deposit_S1=Deposit_S2);
②数据交换过程初始化
为了保证数据交换过程的公平性,数据拥有者S1需要完成一些操作:将大数据分成n块并上传到星际文件系统IPFS云端,得到n个数据地址及其对应的密钥HKi;用S2的公钥PK_S2加密每一个HKi,记为E(HKi,PK_S2);生成n个对称密钥AKi,用AKi加密E(HKi,PK_S2)记为EHKi,将所有的EHKi上传到智能合约;向智能合约支付押金Deposit_S1;将自己的公钥PK_S1上传到智能合约;
与此同时,数据购买者S2也要完成一些相关的操作:向智能合约支付押金Deposit_S2;将自己想要购买的数据块数发送给智能合约;上传自己的公钥PK_S2到智能合约;
③不经意传输协议初始化
在交易开始之前,为了不经意传输协议能正常进行,参与交易的双方需要完成一些工作:首先数据拥有者S1生成n对公钥-私钥,记为(PKi,SKi),其中1≤i≤n;数据购买者S2在确定好自己要购买m块数据后,利用对称密钥算法生成m个密钥,记为{K1,K2,...,Km};
步骤三:交易的第一阶段(交易m块数据)
②S1向合约发送EHKi以及PKi;
②S2从{PK1,PK2,...,PKn}中任意选择m个,然后用这m个公钥分别加密{K1,K2,...,Km},分别记为{EK1,EK2,...,EKm}上传到智能合约,此外,S2需要计算Ki的哈希值,将Hash(K1),Hash(K2),...,Hash(Km)上传到智能合约;
③S1用{SK1,SK2,...,SKn}分别解密{EK1,EK2,...,EKm}中的每一个即D(EKj,SKi),将结果记为DKij,如下所示:
S1用n*m个解密得到的密钥分别加密{AK1,AK2,...,AKn},即:
④S2用{K1,K2,...,Km}解密加密的{AK1,AK2,...,AKn},可以得到m个正确的数据密钥;
⑤S2向智能合约发送付款支票Cheque以及Tokens;
⑥S2查阅已购买的数据,并决定是否与S1继续进行交易;
⑦智能合约返还S1和S2的押金;
步骤四:交易的第二阶段(交易剩余数据)
①数据拥有者S1和数据购买者S2向智能合约分别支付押金Deposit_S1和Deposit_S2;
②数据拥有者S1将SK1,SK2,...,SKn用S2的公钥PK_S2加密后发送至智能合约;
③数据购买者S2用私钥SK_S2解密上一步的结果,得到n个SKi,然后S2从选出的m个PKi中任意选择一个,假设是PKx;
④S2用SK1,SK2,...,SKn解密EKx,即
得到DK1x,DK2x,...,DKnx
⑤S2将一下内容用DK1x,DK2x,...,DKnx解密
得到{AK1,AK2,...,AKn},并解密对应的{EHK1,EHK2,...,EHKn},最终得到所有的n个数据地址密钥{HK1,HK2,...,HKn},也就得到了所有的n块数据;
⑥数据购买者S2在确定数据无误后,向智能合约发送支票和代币;
⑦智能合约返还S1和S2的押金。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于贵州大学,未经贵州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110267868.8/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置