一种动态可追溯的隐私保护分布式门限签名系统与方法技术方案

技术编号:38433382 阅读:8 留言:0更新日期:2023-08-11 14:19
本发明专利技术公开一种动态可追溯的隐私保护分布式门限签名系统与方法,是应用于由多个签名者模块、多个聚合者模块、多个公证人模块、多个追溯者模块与一个区块链模块构成的环境;其中,签名者模块签名数据、加密签名并将加密后的签名上传至区块链模块;聚合者模块从区块链模块接收加密后的签名并聚合成一份合成签名,同时向区块链模块发送相应交易;公证人模块在区块链模块中定位合成签名,并将合成签名部分解密成多个合成签名碎片;追溯者模块聚合合成签名碎片并追溯签名者集合;区块链模块由多个节点组成,负责接收各个模块发送的交易。本发明专利技术能够保护门限签名的不可伪造性、可追溯性和隐私性。隐私性。隐私性。

【技术实现步骤摘要】
一种动态可追溯的隐私保护分布式门限签名系统与方法


[0001]本专利技术是一种动态可追溯的隐私保护分布式门限签名方法与系统,属于隐私保护、门限签名以及区块链


技术介绍

[0002]门限签名允许在一个共有n个参与方的团队里,有不少于t个参与方参与签名过程的情况下对消息进行签名。门限签名是许多实际应用的关键工具。其中,有两种类型的门限签名比较引人注目:可追责的门限签名和隐私门限签名。可追责的门限签名可以揭示共同生成签名的所有t个签名者的身份,隐私门限签名没有透露t的值或者t个签名者的身份,除了不可伪造性之外,这两个签名分别为签名者集合提供了可追溯性和隐私性。
[0003]然而以往的门限签名方案需要集中式的服务器实现聚合和追溯,若发生单点故障则可能导致整个系统的瘫痪,同时聚合者和追溯者并不是完全可信的,这可能会造成一些隐私泄露问题,因此在门限签名方案中保证可追溯性和隐私性的同时实现去中心化的机制也尤为重要。
[0004]一般而言,在门限签名的追溯过程中只有追溯者一个参与方来实现整个追溯过程,然而追溯过程是一个敏感的过程,它应该由一个动态的、相关的公证群体进行公证,但是以往的门限签名方案并没有使用公证群体对追溯过程进行公证,可能导致追溯结果不具有说服性。

技术实现思路

[0005]本专利技术是为了解决上述现有技术存在的不足之处,提出一种动态可追溯的隐私保护分布式门限签名系统与方法,以期能在聚合或者追溯过程中抵抗不可信聚合者或者追溯者的安全威胁,并能实现动态地公证追溯过程,从而能保护门限签名的不可伪造性、可追溯性和隐私性。
[0006]本专利技术为达到上述专利技术目的采用如下技术方案:
[0007]本专利技术一种动态可追溯的隐私保护分布式门限签名系统的特点包括:n个签名者模块、n1个聚合者模块、n3个公证人模块、n2个追溯者模块与一个区块链模块;
[0008]任意一个签名者模块包括:消息签名单元、签名加密单元、交易发送单元;
[0009]任意一个聚合者模块包括:加密签名接收单元、可信执行环境单元、区块链签名单元、交易发送单元;
[0010]任意一个公证人模块包括:合成签名接收单元、令牌生成单元、数据部分解密单元、交易发送单元;
[0011]任意一个追溯者模块包括:区块链签名验证单元、可信执行环境单元;
[0012]所述区块链模块包括:交易接收单元、共识单元;
[0013]所述第i个签名者模块的消息签名单元对消息m进行签名后得到第i个签名数据σ
i
,再使用签名加密单元对所述第i个签名数据σ
i
进行加密,得到第i个加密签名所述第
i个签名者模块的交易发送单元发送所述第i个加密签名至所述区块链模块的交易接收单元;其中,i∈[1,t],t为n个签名者中选出一组签名者的门限值,t∈[1,n];
[0014]所述第j个聚合者模块的加密签名接收单元从所述区块链模块中获取所述第i个加密签名后,转发至自身的可信执行环境单元;所述可信执行环境单元对第i个加密签名进行解密后得到第i个解密签名数据σ
ij
,从而得到t个解密签名数据所述第j个聚合者模块的可信执行环境单元对t个解密签名数据进行聚合后,得到消息m的第j个聚合签名
[0015]所述第j个聚合者模块的可信执行环境单元从n3个公证人中,选取t'个公证人并组成公证人集合并根据所述公证人集合对所述聚合签名进行加密后,得到第j个合成签名所述第j个聚合者模块的区块链签名单元对第j个合成签名进行签名后,得到第j个区块链签名η
j
;所述第j个聚合者模块的交易发送单元发送第j个区块链签名η
j
至所述区块链模块的交易接收单元;其中,j∈[1,n1];
[0016]所述第o个公证人模块的令牌生成单元根据自身身份属性生成第o个查询令牌td
o
,并由所述第o个公证人模块的交易发送单元将第o个查询令牌发送至所述区块链模块的交易接收单元;
[0017]所述区块链模块的交易接收单元接收所述第o个查询令牌,并利用智能合约定位到所述合成签名并将所述合成签名发送至所述第o个公证人模块的合成签名接收单元;o∈[1,t'];
[0018]所述第o个公证人模块的合成签名接收单元接收所述合成签名后,转发至自身的数据部分解密单元;由所述数据部分解密单元对所述合成签名进行部分解密后,得到消息m的解密碎片并对解密碎片进行加密后得到合成签名碎片从而由所述第o个公证人模块的交易发送单元将合成签名碎片发送至所述区块链模块的交易接收单元;
[0019]所述第l个追溯者模块从所述区块链模块中获取第j个区块链签名η
j
,并利用区块链签名验证单元对第j个区块链签名η
j
进行验证,验证通过后,得到合成签名碎片和公证人集合并转发至自身的可信执行环境单元;所述第l个追溯者模块的可信执行环境单元对合成签名碎片进行解密后得到解密碎片从而得到t'个解密碎片所述第l个追溯者模块的可信执行环境单元将t'个解密碎片聚合成合成签名从而根据合成签名追溯得到参与签名的第i个签名者模块。
[0020]本专利技术一种动态可追溯的隐私保护分布式门限签名方法的特点是应用于由n个签名者、n1个聚合者、n3个公证人、n2个追溯者与一个区块链构成的环境中,所述门限签名方法
是按如下步骤进行:
[0021]步骤一、初始化:
[0022]步骤1.1设置安全参数1
λ
,其中,λ为安全参数的长度;定义门限值为t,从而利用可问责门限签名的密钥生成算法ATS.KeyGen(1
λ
,n,t)生成可问责门限签名的公钥pk和私钥集合(sk1,sk2,
···
,sk
i
,
···
,sk
t
),其中,sk
i
表示第i个签名者的私钥;i∈[1,t];
[0023]从群R
λ
中选取一个随机数r
pk
,用于生成公钥pk的密码学承诺com
pk
,其中,R
λ
为安全参数长度为λ的实数群;
[0024]利用区块链签名的密钥生成算法SIG.KeyGen(1
λ
,j)得到第j个聚合者的区块链签名公钥和私钥其中,j是聚合者的身份属性,j∈[1,n1];
[0025]利用加密算法PKE.KeyGen(1
λ
,j)得到第j个聚合者的可信执行环境的公钥和私钥
[0026]利用加密算法PKE.KeyGen(1
λ
,l)得到第l个追溯者的可信执行环境的公钥和私钥其中,l是聚合者的身份属性,l∈[1,n2];
[0027]步骤1.2利用动态门限公钥加密的初始化算法DTPKE.Setup(1
λ
)得到主密钥mk、加密密钥ek、解密密钥dk、验证密钥vk和组合密钥ck本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种动态可追溯的隐私保护分布式门限签名系统,其特征包括:n个签名者模块、n1个聚合者模块、n3个公证人模块、n2个追溯者模块与一个区块链模块;任意一个签名者模块包括:消息签名单元、签名加密单元、交易发送单元;任意一个聚合者模块包括:加密签名接收单元、可信执行环境单元、区块链签名单元、交易发送单元;任意一个公证人模块包括:合成签名接收单元、令牌生成单元、数据部分解密单元、交易发送单元;任意一个追溯者模块包括:区块链签名验证单元、可信执行环境单元;所述区块链模块包括:交易接收单元、共识单元;所述第i个签名者模块的消息签名单元对消息m进行签名后得到第i个签名数据σ
i
,再使用签名加密单元对所述第i个签名数据σ
i
进行加密,得到第i个加密签名所述第i个签名者模块的交易发送单元发送所述第i个加密签名至所述区块链模块的交易接收单元;其中,i∈[1,t],t为n个签名者中选出一组签名者的门限值,t∈[1,n];所述第j个聚合者模块的加密签名接收单元从所述区块链模块中获取所述第i个加密签名后,转发至自身的可信执行环境单元;所述可信执行环境单元对第i个加密签名进行解密后得到第i个解密签名数据σ
ij
,从而得到t个解密签名数据所述第j个聚合者模块的可信执行环境单元对t个解密签名数据进行聚合后,得到消息m的第j个聚合签名所述第j个聚合者模块的可信执行环境单元从n3个公证人中,选取t'个公证人并组成公证人集合并根据所述公证人集合对所述聚合签名进行加密后,得到第j个合成签名所述第j个聚合者模块的区块链签名单元对第j个合成签名进行签名后,得到第j个区块链签名η
j
;所述第j个聚合者模块的交易发送单元发送第j个区块链签名η
j
至所述区块链模块的交易接收单元;其中,j∈[1,n1];所述第o个公证人模块的令牌生成单元根据自身身份属性生成第o个查询令牌td
o
,并由所述第o个公证人模块的交易发送单元将第o个查询令牌发送至所述区块链模块的交易接收单元;所述区块链模块的交易接收单元接收所述第o个查询令牌,并利用智能合约定位到所述合成签名并将所述合成签名发送至所述第o个公证人模块的合成签名接收单元;o∈[1,t'];所述第o个公证人模块的合成签名接收单元接收所述合成签名后,转发至自身的数据部分解密单元;由所述数据部分解密单元对所述合成签名进行部分解密后,得到消息m的解密碎片并对解密碎片进行加密后得到合成签名碎片从而由所述第o个公证人模块的交易发送单元将合成签名碎片发送至所述区块链模块的交易
接收单元;所述第l个追溯者模块从所述区块链模块中获取第j个区块链签名η
j
,并利用区块链签名验证单元对第j个区块链签名η
j
进行验证,验证通过后,得到合成签名碎片和公证人集合并转发至自身的可信执行环境单元;所述第l个追溯者模块的可信执行环境单元对合成签名碎片进行解密后得到解密碎片从而得到t'个解密碎片所述第l个追溯者模块的可信执行环境单元将t'个解密碎片聚合成合成签名从而根据合成签名追溯得到参与签名的第i个签名者模块。2.一种动态可追溯的隐私保护分布式门限签名方法,其特征是应用于由n个签名者、n1个聚合者、n3个公证人、n2个追溯者与一个区块链构成的环境中,所述门限签名方法是按如下步骤进行:步骤一、初始化:步骤1.1设置安全参数1
λ
,其中,λ为安全参数的长度;定义门限值为t,从而利用可问责门限签名的密钥生成算法ATS.KeyGen(1
λ
,n,t)生成可问责门限签名的公钥pk和私钥集合(sk1,sk2,
···
,sk
i
,
···
,sk
t
),其中,sk
i
表示第i个签名者的私钥;i∈[1,t];从群R
λ
中选取一个随机数r
pk
,用于生成公钥pk的密码学承诺com
pk
,其中,R
λ
为安全参数长度为λ的实数群;利用区块链签名的密钥生成算法SIG.KeyGen(1
λ
,j)得到第j个聚合者的区块链签名公钥和私钥其中,j是聚合者的身份属性,j∈[1,n1];利用加密算法PKE.KeyGen(1
λ
,j)得到第j个聚合者的可信执行环境的公钥和私钥利用加密算法PKE.KeyGen(1
λ
,l)得到第l个追溯者的可信执行环境的公钥和私钥其中,l是聚合者的身份属性,l∈[1,n2];步骤1.2利用动态门限公钥加密的初始化算法DTPKE.Setup(1
λ
)得到主密钥mk、加密密钥ek、解密密钥dk、验证密钥vk和组合密...

【专利技术属性】
技术研发人员:李萌张明威祝烈煌张子剑
申请(专利权)人:合肥工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1