基于可验证差分隐私的数据交易方法及系统与流程

摘要: 本发明涉及隐私保护,具体地说是基于可验证差分隐私的数据交易方法及系统。背景技术:1、目前的数据交易系统中,保护数据只依赖简单的噪声添加或普通的加密技术,很难做到...
基于可验证差分隐私的数据交易方法及系统与流程

本发明涉及隐私保护,具体地说是基于可验证差分隐私的数据交易方法及系统。

背景技术:

1、目前的数据交易系统中,保护数据只依赖简单的噪声添加或普通的加密技术,很难做到保护数据隐私的同时保障数据的可用性和可信度。在实际应用中,需要保护数据交易中卖方的原始数据,保障差分隐私后数据的可用性,增强数据交易中买方对数据可用性的信任。

2、在数据交易中如何保护数据隐私的同时保障数据的可用性和可信度,是需要解决的技术问题。

技术实现思路

1、本发明的技术任务是针对以上不足,提供基于可验证差分隐私的数据交易方法及系统,来解决在数据交易中如何保护数据隐私的同时保障数据的可用性和可信度的技术问题。

2、第一方面,本发明一种基于可验证差分隐私的数据交易方法,应用于包括区块链、交易平台、智能体、用户端和管理员端的数据交易系统,包括如下步骤:

3、初始化:对于部署于区块链的智能合约,管理员端为用户及对应的智能体配置访问和调用权限,用户包括买方和卖方;

4、确认交易:买方将其购买参数存储至智能合约并返回存储地址,并通过买方智能体发起购买请求,买方智能体从交易平台检索匹配的数据并向对应卖方智能体发送交易请求,卖方智能体基于交易请求中购买参数的存储地址查询购买参数并确认是否接受,买方智能体从接收的同意请求中选择确认;

5、差分隐私和验证:卖方智能体计算原始数据的承诺值作为第一承诺值,将第一承诺值存储至智能合约并返回存储地址,对原始数据进行差分隐私计算后,计算差分隐私数据的承诺值以及打开信息,将差分隐私数据的承诺值作为第二承诺值存储至智能合约并返回存储地址,基于第一承诺值、购买参数、第二承诺值、原始数据、差分隐私数据、差分隐私计算参数以及承诺值中秘密值构建零知识证明,将生成的零知识证明存储至智能合约并返回存储地址,将第一承诺值、第二承诺值及零知识证明的存储地址聚合后发送至买方智能体,买方智能体调用智能合约执行零知识证明验证,验证通过后进行交易执行;

6、交易执行:基于第二承诺值和购买参数、买方智能体调用智能合约的购买提交,交易平台对买方资金进行监管,对差分隐私数据的访问权限以及打开信息与第二承诺值的匹配进行验证后,买方访问并下载差分隐私后数据。

7、作为优选,初始化包括如下操作:

8、在区块链上部署预先编写的智能合约,智能合约具有存储数据并返回存储地址、根据存储地址返回数据、购买提交、通用零知识证明验证功能;

9、对于注册至交易平台的用户,生成用户的身份信息、区块链地址以及密钥信息,根据用户角色为作为买方和卖方的用户配置智能合约的访问和调用权限,其中,买方和卖方均具有数据存储和查询权限,买方具有购买提交和零知识证明验证方法的调用权限;

10、对于与用户对应的智能体,智能体共享用户对智能合约的访问和调用权限,智能体作为用户配置的自动化代理,通过标准化上下文扩展协议与区块链智能合约及交易平台进行交互。

11、作为优选,确认交易包括如下操作:

12、买方基于可接受的最小差分隐私参数、关键统计指标的最大偏差以及最高价格构建购买参数,购买参数表示为,表示最小差分隐私参数,,表示差分隐私中的最低隐私预算,表示差分隐私中的最小松弛项,表示关键统计指标的最大偏差,,表示均值的最大偏差,表示方差的最大偏差,表示最高价格;

13、买方调用智能合约存储购买参数,获取购买参数的存储地址;

14、买方向买方智能体发起购买请求,购买请求中指定有购买参数、购买参数的存储地址以及数据需求;

15、基于购买请求中数据需求,买方智能体在交易平台中检索匹配的数据,基于购买参数的存储地址向匹配数据对应的卖方智能体发送交易请求;

16、基于交易请求中存储地址,卖方智能体从智能合约中查询对应的购买参数并确认是否接受交易请求,如果接受交易请求,卖方智能体向买方智能体返回同意请求,如果不接受交易请求,卖方智能体向买方智能体返回拒绝请求;

17、如果买方智能体未接收到任意一个同意请求,则结束流程,如果买方智能体接收到至少一个同意请求,从接收的同意请求中选择确认卖方智能体进行交易,并向确认的卖方智能体发送确认购买请求,接收到确认购买请求的卖方智能体执行差分隐私和验证。

18、作为优选,差分隐私和验证包括如下操作:

19、卖方智能体计算原始数据的关键统计指标,并选取随机数,生成承诺值作为第一承诺值,第一承诺值计算公式为:

20、,

21、,

22、,

23、式中,为乘法循环群的生成元,为原始数据对应关键统计指标的均值,为原始数据对应关键统计指标的方差,为选取的随机数,为原始数据中第数据点,表示原始数据中数据点数量,、以及作为承诺值中秘密值;

24、卖方智能体调用智能合约存储第一承诺值,并获取第一承诺值的存储地址;

25、卖方智能体计算对原始数据进行差分隐私计算,基于购买参数向原始数据中注入受控的随机噪声,生成差分隐私后数据,其中,差分隐私计算时,基于购买参数中最小差分隐私参数选取参数和,基于参数和计算原始数据中最大值和最小值的差值,基于参数和以及差值计算噪声参数,基于噪声参数、对每个原始数据中每个数据点从中随机取样生成高斯噪声,得到差分隐私后数据,,对于差分隐私后数据中第个数据点,计算公式如下:

26、,

27、,

28、,

29、,

30、,

31、式中,表示原始数据中第个数据点,和表示数据点对应的从中的随机取样,表示数据点对应的高斯噪声,、以及作为差分隐私计算参数;

32、卖方智能体计算差分隐私后数据的均值和方差,计算公式如下:

33、,

34、,

35、式中,表示差分隐私后数据的均值,表示差分隐私后数据的方差;

36、卖方智能体选取随机数生成差分隐私后数据的承诺值和打开信息,将差分隐私后数据对应的承诺值作为第二承诺值,第二承诺值和打开信息的计算公式如下:

37、,

38、,

39、式中,表示乘法循环群上的生成元,表示差分隐私后数据中第个数据点,为随机数,作为承诺值中秘密值;

40、将第一承诺值、购买参数以及第二承诺值作为零知识证明的公有参数,将原始数据、差分隐私后数据、差分隐私计算参数、承诺值中秘密值作为零知识证明的私有参数,基于约束进行通用零知识证明电路的编译,生成零知识证明,其中,约束为:

41、,

42、,

43、,

44、,,

45、,

46、,

47、,

48、,

49、,

50、|,

51、;

52、卖方智能体调用智能合约存储零知识证明,并获取零知识证明的存储地址;

53、卖方智能体将第一承诺值的存储地址、第二承诺值的存储地址以及零知识证明的存储地址聚合,将聚合后地址发送至买方智能体,其中,;

54、买方智能体接收到卖方智能体发送的聚合后地址后,基于购买参数和聚合后地址调用智能合约,智能合约基于聚合后地址依次读取第一承诺值、第二承诺值以及零知识证明,以第一承诺值、第二承诺值以及零知识证明作为公有参数,执行零知识证明验证算法,将验证结果返回至买方智能体,如果验证为通过,进行交易执行,如果验证未通过,买方智能体结束本次操作。

55、作为优选,交易执行包括如下操作:

56、买方智能体调用智能合约,基于第二承诺值的存储地址读取第二承诺值,以第二承诺值和购买参数作为调用参数调用智能合约的购买提交方法,智能合约将调用参数附加已购买提交标识后存储;

57、交易平台监测到智能合约中购买提交方法被调用后,提取调用参数,将买方账户对应金额划转至中间账户,并向卖方智能体发送放开权限请求;

58、基于放开权限请求,卖方智能体通过交易平台向买方放开差分隐私后数据的访问和下载权限,将打开信息写入交易平台,并将交易平台智能体发送已放开权限请求;

59、交易平台智能体验证卖方智能体是否已正确放开权限,并对打开信息与第二承诺值的匹配进行验证,验证时,基于打开信息中差分隐私后数据和随机数以及生成第二承诺值时选取的生成元计算承诺值作为对比承诺值,判断对比承诺值与第二承诺值是否相等,其中,对比承诺值计算公式如下:

60、;

61、如果权限验证和承诺打开验证均通过,交易平台将中间账户中资金转至卖方账户,否则,将资金退回买方账户;

62、买方通过交易平台访问并下载差分隐私后数据。

63、第二方面,本发明一种基于可验证差分隐私的数据交易系统,包括区块链、交易平台、智能体、用户端和管理员端;

64、初始化阶段,管理员端用于在区块链中部署智能合约,并为用户及对应的智能体配置访问和调用权限,用户包括买方和卖方;

65、确认交易阶段,作为买方的用户端用于将其购买参数存储至智能合约并返回存储地址,用于通过买方智能体发起购买请求,买方智能体用于从交易平台检索匹配的数据并向对应卖方智能体发送交易请求,卖方智能体用于基于交易请求中购买参数的存储地址查询购买参数并确认是否接受,买方智能体用于从接收的同意请求中选择确认;

66、差分隐私和验证阶段,卖方智能体用于计算原始数据的承诺值作为第一承诺值,将第一承诺值存储至智能合约并返回存储地址,用于对原始数据进行差分隐私计算后,计算差分隐私数据的承诺值以及打开信息,将差分隐私数据的承诺值作为第二承诺值存储至智能合约并返回存储地址,用于基于第一承诺值、购买参数、第二承诺值、原始数据、差分隐私数据、差分隐私计算参数以及承诺值中秘密值构建零知识证明,将生成的零知识证明存储至智能合约并返回存储地址,用于将第一承诺值、第二承诺值及零知识证明的存储地址聚合后发送至买方智能体,买方智能体用于调用智能合约执行零知识证明验证,验证通过后进行交易执行;

67、交易执行阶段,基于第二承诺值和购买参数、买方智能体用于调用智能合约的购买提交,交易平台用于对买方资金进行监管,用于对差分隐私数据的访问权限以及打开信息与第二承诺值的匹配进行验证,作为买方的用户端用于访问并下载差分隐私后数据。

68、作为优选,初始化阶段,管理员端用于在区块链上部署预先编写的智能合约,智能合约具有存储数据并返回存储地址、根据存储地址返回数据、购买提交、通用零知识证明验证功能;

69、对于注册至交易平台的用户,管理员端用于生成用户的身份信息、区块链地址以及密钥信息,根据用户角色为作为买方和卖方的用户配置智能合约的访问和调用权限,其中,买方和卖方均具有数据存储和查询权限,买方具有购买提交和零知识证明验证方法的调用权限;

70、对于与用户对应的智能体,智能体共享用户对智能合约的访问和调用权限,智能体作为用户配置的自动化代理,通过标准化上下文扩展协议与区块链智能合约及交易平台进行交互。

71、作为优选,确认交易阶段,用户端、智能体、区块链配合用于执行如下操作:

72、作为买方的用户端用于基于可接受的最小差分隐私参数、关键统计指标的最大偏差以及最高价格构建购买参数,购买参数表示为,表示最小差分隐私参数,,表示差分隐私中的最低隐私预算,表示差分隐私中的最小松弛项,表示关键统计指标的最大偏差,,表示均值的最大偏差,表示方差的最大偏差,表示最高价格;

73、作为买方的用户端用于调用智能合约存储购买参数,获取购买参数的存储地址;

74、作为买方的用户端用于向买方智能体发起购买请求,购买请求中指定有购买参数、购买参数的存储地址以及数据需求;

75、基于购买请求中数据需求,买方智能体用于在交易平台中检索匹配的数据,基于购买参数的存储地址向匹配数据对应的卖方智能体发送交易请求;

76、基于交易请求中存储地址,卖方智能体用于从智能合约中查询对应的购买参数并确认是否接受交易请求,如果接受交易请求,卖方智能体向买方智能体返回同意请求,如果不接受交易请求,卖方智能体向买方智能体返回拒绝请求;

77、如果买方智能体未接收到任意一个同意请求,则结束流程,如果买方智能体接收到至少一个同意请求,从接收的同意请求中选择确认卖方智能体进行交易,并向确认的卖方智能体发送确认购买请求,接收到确认购买请求的卖方智能体执行差分隐私和验证。

78、作为优选,差分隐私和验证阶段,卖方智能体、区块链和买方智能体配合用于执行如下操作:

79、卖方智能体用于计算原始数据的关键统计指标,并选取随机数,生成承诺值作为第一承诺值,第一承诺值计算公式为:

80、,

81、,

82、,

83、式中,为乘法循环群的生成元,为原始数据对应关键统计指标的均值,为原始数据对应关键统计指标的方差,为选取的随机数,为原始数据中第数据点,表示原始数据中数据点数量,、以及作为承诺值中秘密值;

84、卖方智能体用于调用智能合约存储第一承诺值,并获取第一承诺值的存储地址;

85、卖方智能体用于对原始数据进行差分隐私计算,基于购买参数向原始数据中注入受控的随机噪声,生成差分隐私后数据,其中,差分隐私计算时,基于购买参数中最小差分隐私参数选取参数和,基于参数和计算原始数据中最大值和最小值的差值,基于参数和以及差值计算噪声参数,基于噪声参数、对每个原始数据中每个数据点从中随机取样生成高斯噪声,得到差分隐私后数据,,对于差分隐私后数据中第个数据点,计算公式如下:

86、,

87、,

88、,

89、,

90、,

91、式中,表示原始数据中第个数据点,和表示数据点对应的从中的随机取样,表示数据点对应的高斯噪声,、以及作为差分隐私计算参数;

92、卖方智能体用于计算差分隐私后数据的均值和方差,计算公式如下:

93、,

94、,

95、式中,表示差分隐私后数据的均值,表示差分隐私后数据的方差;

96、卖方智能体用于选取随机数生成差分隐私后数据的承诺值和打开信息,将差分隐私后数据对应的承诺值作为第二承诺值,第二承诺值和打开信息的计算公式如下:

97、,

98、,

99、式中,表示乘法循环群上的生成元,表示差分隐私后数据中第个数据点,为随机数,作为承诺值中秘密值;

100、将第一承诺值、购买参数以及第二承诺值作为零知识证明的公有参数,将原始数据、差分隐私后数据、差分隐私计算参数、承诺值中秘密值作为零知识证明的私有参数,基于约束进行通用零知识证明电路的编译,生成零知识证明,其中,约束为:

101、,

102、,

103、,

104、,,

105、,

106、,

107、,

108、,

109、,

110、|,

111、;

112、卖方智能体用于调用智能合约存储零知识证明,并获取零知识证明的存储地址;

113、卖方智能体用于将第一承诺值的存储地址、第二 承诺值的存储地址以及零知识证明的存储地址聚合,将聚合后地址发送至买方智能体,其中,;

114、买方智能体接收到卖方智能体发送的聚合后地址后,用于基于购买参数和聚合后地址调用智能合约,智能合约基于聚合后地址依次读取第一承诺值、第二承诺值以及零知识证明,以第一承诺值、第二承诺值以及零知识证明作为公有参数,执行零知识证明验证算法,将验证结果返回至买方智能体,如果验证为通过,进行交易执行,如果验证未通过,买方智能体结束本次操作。

115、作为优选,交易执行阶段,买方智能体、卖方智能体、交易平台以及区块链配合用于执行如下操作:

116、买方智能体用于调用智能合约,基于第二承诺值的存储地址读取第二承诺值,以第二承诺值和购买参数作为调用参数调用智能合约的购买提交方法,智能合约将调用参数附加已购买提交标识后存储;

117、交易平台监测到智能合约中购买提交方法被调用后,用于提取调用参数,将买方账户对应金额划转至中间账户,并向卖方智能体发送放开权限请求;

118、基于放开权限请求,卖方智能体用于通过交易平台向买方放开差分隐私后数据的访问和下载权限,将打开信息写入交易平台,并将交易平台智能体发送已放开权限请求;

119、交易平台智能体用于验证卖方智能体是否已正确放开权限,并对打开信息与第二承诺值的匹配进行验证,验证时,基于打开信息中差分隐私后数据和随机数以及生成第二承诺值时选取的生成元计算承诺值作为对比承诺值,判断对比承诺值与第二承诺值是否相等,其中,对比承诺值计算公式如下:

120、;

121、如果权限验证和承诺打开验证均通过,交易平台用于将中间账户中资金转至卖方账户,否则,将资金退回买方账户;

122、作为买方的用户端用于通过交易平台访问并下载差分隐私后数据。

123、本发明的基于可验证差分隐私的数据交易方法及系统具有以下优点:

124、1、通过结合差分隐私、零知识证明以及承诺技术在保护原始数据的同时也实现了保护后数据的可验证性,有利于更好地保护卖方原始数据的隐私;

125、2、使用区块链存储关键的交易数据,增强了交易的可信度;

126、3、智能体参与了整个交易过程中的大部分工作,实现了交易的自动化执行和实时处理,提高了交易效率。