预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共11页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN107528835A(43)申请公布日2017.12.29(21)申请号201710681649.8(22)申请日2017.08.10(71)申请人北方工业大学地址100144北京市石景山区晋元庄路5号北方工业大学(72)发明人耿子烨何云华肖珂李琛(74)专利代理机构北京君尚知识产权代理事务所(普通合伙)11200代理人邱晓锋(51)Int.Cl.H04L29/06(2006.01)H04L9/32(2006.01)H04L9/08(2006.01)G06Q30/06(2012.01)权利要求书2页说明书5页附图3页(54)发明名称一种基于安全的智能合约k-匿名激励机制的用户隐私保护方法(57)摘要本发明涉及一种基于安全的智能合约k-匿名激励机制的用户隐私保护方法。该方法将合约分为公有合约、私有合约,私有合约仅匿名组内用户可见,公有合约经过组密钥加密防止外部人员查看,并且公有合约私有合约联合验证,有效保证了用户请求服务过程中的安全性。本发明能够激励用户加入k-匿名组,应用去中心化的智能合约,可以避免可信中心存在的安全隐患;应用组密钥对公有合约部分信息进行加密,隐藏了交易关系;应用公约合约、私有合约联合验证,利用盲组签名进行组验证,保证安全性的同时提高了k-匿名成功率。CN107528835ACN107528835A权利要求书1/2页1.一种基于安全的智能合约k-匿名激励机制的用户隐私保护方法,其特征在于,包括以下步骤:1)买者用户端和卖者用户端通过协商构造智能合约;2)买者用户端提出实现k-匿名隐私保护的竞价,卖者用户端提出帮助实现k-匿名隐私保护的要价,所述智能合约记录所述竞价和所述要价;3)买者用户端和卖者用户端根据智能合约中的筛选条件进行拍卖博弈,选出获胜的买者用户端和卖者用户端;4)获胜的买者用户端和卖者用户端形成匿名组,所述匿名组内的用户端一同向服务器端上传自己的位置和查询请求,实现k-匿名过程;5)将所述智能合约分为私有合约和公有合约,私有合约仅匿名组内的用户端可见,公有合约利用匿名组内的用户端协商产生的组密钥,对公有合约中的买者模块、卖者模块和筛选条件模块进行加密;6)通过所述私有合约和所述公有合约的联合验证,实现智能合约的报酬的分配。2.如权利要求1所述的方法,其特征在于,步骤2)将买者用户端的信息及其竞价按竞价递减的顺序记录在智能合约中,将卖者用户端的信息及其要价按要价递增的顺序记录在智能合约中。3.如权利要求1所述的方法,其特征在于,步骤3)所述筛选条件是:其中,n表示买者用户端个数,ak-n+2表示第k-n+2个买者用户端的要价,bn表示第n个买者用户端的竞价,k-n+1为加入匿名组的卖者用户端个数。4.如权利要求1所述的方法,其特征在于,步骤3)所述拍卖博弈采用密封投标拍卖算法或者匿名拍卖算法。5.如权利要求1所述的方法,其特征在于,步骤6)所述联合验证的过程包括:私有合约利用数字签名仅对匿名组内用户端进行身份验证,公有合约通过服务器端反馈k-匿名完成的凭证信息进行k-匿名验证,并利用盲组签名进行组验证;若公有合约中的k-匿名验证和组验证都验证通过,公有合约计算一哈希值发给私有合约,私有合约对该哈希值进行验证,若验证通过则对报酬进行分配。6.如权利要求5所述的方法,其特征在于,步骤5)所述组密钥的生成过程是:a1)匿名组内每个用户端用自己的密钥xi计算得到自己的公钥yi=ximodp,其中a、p为大素数,mod表示求模运算;2)匿名组内各用户端协商选出用户端U,每个用户端将自己的公钥发送给用户端U,用户端U在收到所有用户端的公钥后,计算组公钥Y=y1y2...ykmodp;3)匿名组内每个用户端产生一个随机数Ri,并发送给用户端U,用户端U计算得到R,R=R1R2...Rkmodp;ν4)用户端U再产生一个随机数ν,计算得到组密钥Gkey=RYmodp。7.如权利要求6所述的方法,其特征在于,所述盲组签名的生成过程是:a1)匿名组内每一个用户端用自己的密钥xi计算得到自己的公钥yi=ximodp,组公钥为Y=y1y2...ykmodp,其中a、p为大素数;2CN107528835A权利要求书2/2页2)对公有合约计算一个哈希值M;3)匿名组内用户端协商选出用户端U′,想要参与签名的用户端数为l,l<k;4)每位签名者产生一个随机数ti<q,并计算并把Ri发给用户端U′,其中q是素数因子;5)用户端U′计算随机参量R=R1R2...Rlmodp;6)用户端U′产生两个随机数τ<q,ε<q,并计算R′=RYτgεmodp,其中g是q阶子群生成器;7)用户端U′对公有合约的哈希值M和R′计算一个哈希值,从而得到盲组签名的第一个参数E