一种支持安全见证的隐私和可追溯门限签名系统与方法
- 国知局
- 2024-08-02 14:52:54
本发明是一种支持安全见证的隐私和可追溯门限签名系统与方法,属于数字签名、隐私保护、门限签名。
背景技术:
1、门限签名是一种功能强大的密码技术,其本质是,一组数量为n签名者,若其中t个及以上参与签名,则签名可顺利生成,其中t被称为门限。门限签名在现实生活中有大量的应用。门限签名有很多衍生技术,其中主流的有两种,一种为可追责的门限签名,即可以通过签名追踪到参与签名的签名者信息。另一种为隐私的门限签名,即该签名保证签名的隐私性。这两种衍生技术分别提供了可追责性和隐私性。
2、但上述两种衍生技术无法同时提供可追责性和隐私性,而隐私可问责的门限签名技术通过加密可追责门限签名,综合实现了可追责性和隐私性。该技术保证了签名的隐私性,即签名不会提供门限t及参与签名的签名者的任何信息,同时也没有丢失签名的可追责性,即可以通过对解密后的签名进行追踪,进而得到参与签名的签名者序列信息。
3、然而隐私可问责的门限签名技术忽略了对于追踪的见证,即没有对追踪活动进行限制,若追踪者不可信,则会泄露门限t及参与签名的签名者相关信息,进而失去了隐私性。因此对于隐私可问责的门限签名追踪的见证是非常重要的。
4、一般而言,追踪门限签名是由一个追踪者来完成的,然而追踪过程的敏感性和追踪结果的隐私性是我们需要着重强调的地方,追踪过程应该是在一个相对公正的第三方群体的见证下进行的,而不是只由追踪者独立完成,以往的技术并未注意到此问题,这使得追踪结果的隐私性和可靠性不能得到保证。
技术实现思路
1、本发明是为了解决上述门限签名的现有技术的不足之处,提出一种支持安全见证的隐私和可追溯门限签名系统与方法,以期待能在门限签名的追踪过程中和追踪结果上抵抗不可信追踪者带来的安全威胁,并增加见证人实现对追踪过程的动态见证,以达到保证追踪过程和结果的隐私性和可靠性。
2、本发明为达到上述发明目的采用如下技术方案:
3、本发明一种支持安全见证的隐私和可追溯门限签名系统的特点包括:n个签名者模块,1个组合者模块,w个见证者模块,1个追踪者模块;其中,n表示签名者模块的最大数量;从n个签名者模块中选出t个签名者模块,得到签名者序列其中,t表示一组签名者模块的门限值,t∈[1,n];w表示见证者模块的最大数量;
4、任意选出的第i个签名者模块包括:第i个消息签名单元、第i个签名加密单元、第i个见证者序列加密单元、第i个签名信息发送单元,i∈[1,t];
5、所述组合者模块包括:签名信息接受单元、组合签名单元、组合签名加密单元、验证生成单元、追踪信息发送单元、标识发送单元;
6、任意选出的第j个见证者模块包括:第j个标识接受单元、第j个密钥碎片生成单元、第j个碎片发送单元,j∈[1,t'];
7、所述追踪者模块包括:追踪信息接收单元、碎片接收单元、组合签名解密单元,签名者序列追踪单元;
8、所述第i个消息签名单元对消息message进行签名后,得到第i个签名数据σi;
9、所述第i个签名加密单元对第i个签名数据σi进行加密后,得到第i个签名数据密文σi;
10、所述第i个见证者序列加密单元,与其他见证者序列加密单元协商后,共同从w个见证者模块中选出t'个见证者模块,得到见证者序列并对所述见证者序列进行加密后,得到第i个见证者序列密文t'表示一组见证者模块的门限值,t'∈[1,w];
11、所述第i个签名信息发送单元将第i个签名数据密文σi以及第i个见证者序列密文发送至所述签名信息接收单元;
12、所述签名信息接受单元接收t个签名数据密文以及t个见证者序列密文并将t个签名数据密文发送给所述组合签名单元,将t个见证者序列密文发送给所述组合签名加密单元;
13、所述组合签名单元对接收的t个签名数据密文进行解密后,得到t个签名数据并将组合后,得到组合签名σcombination;
14、所述组合签名加密单元对t个见证者序列密文进行解密,得到t个见证者序列并对进行组合后,得到总的见证者序列从而根据得到组合密钥k,以及组合密钥k的两个相关信息c0、c1;
15、所述组合签名加密单元使用组合密钥k对组合签名σcombination进行加密,得到两个组合签名密文c2、c3,并使用第j个见证者模块的公钥,对第一相关信息c0进行加密,得到组合密钥k的两个第一相关信息密文cj0、cj1,同时对第二相关信息c1进行加密,得到组合密钥k的两个第二相关信息密文cj2、cj3;
16、所述组合签名加密单元将消息message与总的见证者序列中的每一个元素结合后,得到t'个消息序列号结合体其中,wj表示序列号;使用哈希函数对t'个消息序列号结合体进行处理,得到t'个见证者标识其中,htj是对第j个消息序列号结合体message||wj对应的见证者标识;从而将t'个见证者标识t'个组合密钥k的相关信息密文两个组合签名密文c2、c3进行组合后,得到签名信息密文σcombination;
17、所述验证生成单元生成相关验证π,并对消息message、签名信息密文σcombination、相关验证π进行签名,得到组合者模块签名η;再将签名信息密文σcombination、相关验证π、组合者模块签名η进行组合后,得到门限签名σ;
18、所述追踪信息发送单元将门限签名σ发送给所述追踪信息接收单元;
19、所述标识发送单元将t'个见证者标识和组合密钥k的第j个相关信息密文cj0、cj1、cj2、cj3发送给所述第j个标识接受单元;
20、所述第j个标识接受单元将所接收的第j个相关信息密文cj0、cj1、cj2、cj3发送给所述第j个密钥碎片生成单元;并将消息message与自身的序列号wj也进行组合,得到自身的消息序列号结合体message||wj;再使用哈希函数对自身消息序列号结合体message||wj进行处理,得到自身的标识ht′j;将ht′j分别与t'个见证者标识进行比较,若则继续进行后续处理,否则,结束流程;
21、所述第j个密钥碎片生成单元根据第j个见证者的加密私钥对cj0、cj1进行解密,得到第一相关信息c0,并对cj2、cj3进行解密,得到第二相关信息c1;再根据c0、c1和第j个见证者的用户私钥,生成第j个解密密钥碎片δj;从而对第j个解密密钥碎片δj进行加密,得到第j个解密密钥碎片密文δj;
22、所述第j个碎片发送单元将解密密钥碎片密文δj发送给所述碎片接收单元;
23、所述追踪信息接受单元接收门限签名σ,并发送给所述组合签名解密单元;
24、所述碎片接收单元接收t'个解密密钥碎片密文并将t'个解密密钥碎片密文发送给所述组合签名解密单元;
25、所述组合签名解密单元对σ中的π和η进行验证,若两者均验证成功,则对t'个解密密钥碎片密文进行解密,得到t'个解密密钥碎片再将t'个解密密钥碎片组合后,得到组合密钥k;从而使用组合密钥k对c2、c3进行解密,得到组合签名σcombination;否则,输出出错信号并结束流程;
26、所述签名者序列追踪单元对组合签名σcombination进行追踪,得到签名者序列
27、本发明一种支持安全见证的隐私和可追溯门限签名方法的特点在于,是应用于n个签名者,1个组合者,w个见证者,1个追踪者构成的网络环境中,所述隐私和可追溯门限签名方法是按如下步骤进行:
28、步骤一、初始化:
29、步骤1.1、定义相关参数,生成可追责门限签名的密钥、密码学承诺、加密密钥以及签名密钥:
30、设置安全参数为1λ,其中,λ为安全参数的长度;
31、定义签名者集合的大小为n,可追责门限签名的门限值为t,t∈[1,n];
32、定义见证者集合的大小为w,动态门限公钥加密的门限值为t',t'∈[1,w];
33、使用可追责门限签名的密钥生成算法ats.keygen(1λ,n,t)生成可追责门限签名的密钥,包括:公钥pk和私钥集合其中,pk由和t组成,表示第i个签名者的私钥,表示第i个签名者的公钥;
34、从安全参数长度为λ的实数群rλ中选取一个随机数rpk,并用于生成公钥pk的密码学承诺compk;
35、使用加密密钥生成算法pke.keygen(1λ)生成所述组合者的公钥和私钥追踪者的公钥和私钥w个见证者的公钥和私钥其中,代表第f个见证者的公钥,代表第f个见证者的私钥;使用密钥生成算法gen(λ)生成w个见证者哈希密钥其中,sskf代表第f个见证者的哈希密钥;
36、使用签名密钥生成算法sig.keygen(1λ)生成所述组合者的签名公钥和私钥
37、步骤1.2、生成动态门限公钥加密所需密钥:
38、利用动态门限公钥加密的初始化算法dtpke.setup(1λ)生成密钥sk、加密密钥ek、组合密钥ck;
39、利用动态门限公钥加密的用户加入算法生成w个见证者的用户公钥和用户私钥其中,idf表示第f个见证者的序列号,wpkf代表第f个见证者的用户公钥,wskf代表第f个见证者的用户私钥;
40、步骤1.3、将密钥进行组合,得到组合密钥ck,追踪密钥tk,公钥pk:
41、将t'、compk、rpk进行组合后,得到组合密钥ck;
42、将进行组合后,得到追踪密钥tk;
43、将compk、进行组合后,得到公钥pk;
44、步骤二、消息签名:
45、步骤2.1、随机选择出t个签名者,并对消息message进行签名,得到签名数据;t个签名者共同协商,从w个见证者中选出见证者序列将签名数据和见证者序列加密后发送给组合者:
46、随机选择出t个签名者,组成签名者序列
47、所述第i个签名者根据私钥使用可追责门限签名的签名算法对消息message进行签名,得到第i个签名数据σi,其中i∈[1,t];
48、所述第i个签名者根据组合者的公钥使用加密算法对消息message和第i个签名数据σi的结合体message||σi进行加密,得到第i个签名数据密文σi后发送给组合者;
49、所述第i个签名者与其他签名者协商后共同从w个见证者中选出t'个见证者,并得到见证者序列
50、所述第i个签名者根据组合者的公钥使用加密算法对见证者序列进行加密,得到第i个见证者序列密文后发送给组合者;
51、步骤三、组合签名:
52、步骤3.1、所述组合者接收到t个签名数据密文并解密后再进行组合签名,得到组合签名σcombination:
53、所述组合者根据私钥使用加密算法中的解密算法对t个签名数据密文进行解密,得到t个消息和签名数据的结合体并从中获得t个签名数据
54、所述组合者根据消息message、签名者序列使用可追责门限签名的组合算法对t个签名数据进行组合,得到组合签名σcombination;
55、步骤3.2、所述组合者根据t个见证者序列密文对组合签名σcombination进行加密,得到组合签名信息密文σcombination:
56、所述组合者根据私钥使用加密算法中的解密算法对t个见证者序列密文进行解密,得到t个见证者序列
57、所述组合者将t个见证者序列进行组合,得到见证者序列
58、所述组合者根据加密密钥ek,t'个见证者的用户公钥使用动态门限公钥加密的加密算法对组合签名σcombination进行加密,得到组合密钥k相关的两个信息c0、c1、两个组合签名密文c2、c3和组合密钥k;
59、所述组合者根据第j个见证者的公钥使用加密算法中的和分别对c0、c1进行加密,得到组合密钥k的两个第一相关信息密文cj0、cj1和两个第二相关信息密文cj2、cj3;
60、所述组合者将消息message与第j个见证者的序列号wj进行结合,得到第j个消息序列号结合体message||wj,其中,并根据第j个见证者的哈希密钥sskj,使用哈希算法h(sskj,message||wj)对第j个消息序列号结合体message||wj进行哈希,得到第j个见证者的标识htj;
61、所述组合者将进行组合,得到组合签名信息密文σcombination;
62、步骤3.3、所述组合者生成相关验证π,并对消息message、组合签名信息密文σcombination、相关验证π进行签名后,得到组合者签名η,最终得到支持安全见证的隐私和可追溯门限签名σ:
63、所述组合者根据pk、rpk、compk、message、σcombination、c0、c1、生成相关验证π;
64、所述组合者根据组合者的私钥使用签名算法对消息message、组合签名信息密文σcombination、相关验证π进行签名后,得到组合者签名η;
65、所述组合者将σcombination、π、η进行组合后,得到支持安全见证的隐私和可追溯门限签名σ;
66、所述组合者将支持安全见证的隐私和可追溯门限签名σ发送给所述追踪者,并将cj0、cj1、cj2、cj3、发送给所述第j个见证者;
67、步骤四、对签名者序列进行追踪;
68、步骤4.1、所述追踪者收到支持安全见证的隐私和可追溯门限签名σ后,对σ进行验证:
69、所述追踪者根据组合者公钥消息message、组合签名信息密文σcombination、相关验证π使用签名算法的验证函数对签名η进行验证,若验证通过,则继续使用verify(π)函数对相关验证π进行验证,若验证也通过,则执行步骤4.3,若任一验证失败,则结束流程;
70、步骤4.2、所述第j个见证者接收cj0、cj1、cj2、cj3以及并生成第j个解密密钥碎片δj,从而对第j个解密密钥碎片δj进行加密后,得到第j个解密密钥碎片密文δj:
71、所述第j个见证者将消息message与自身的序列号wj进行结合,得到自身的消息序列号结合体message||wj;再根据哈希密钥sskj使用哈希算法对自身的消息序列号结合体message||wj进行哈希,生成第j个哈希标识htj',从而将htj'与见证者标识进行对比:
72、若结束流程;若则所述第j个见证者根据私钥使用加密算法中的解密函数对cj0、cj1进行解密,得到c0,同时,使用解密函数对cj2、cj3进行解密,得到c1;
73、所述第j个见证者根据用户私钥wskj和c0、c1,使用动态门限公钥加密的解密密钥碎片生成算法dtpke.sharedecrypt(wskj,c0,c1),生成第j个解密密钥碎片δj,从而根据公钥使用加密算法对第j个解密密钥碎片δj进行加密,得到第j个解密密钥碎片密文δj后发送给追踪者;
74、步骤4.3、所述追踪者接收到t'个解密密钥碎片密文和支持安全见证的隐私和可追溯门限签名σ后,对t'个解密密钥碎片密文进行解密,得到t'个解密密钥碎片并根据对两个组合签名密文c2、c3进行解密,得到组合签名σcombination:
75、所述追踪者根据私钥使用加密算法中的解密算法对t'个解密密钥碎片密文进行解密,得到t'个解密密钥碎片
76、所述追踪者根据加密密钥ek和动态门限公钥加密的门限值t'使用动态门限公钥加密的验证算法dtpke.validate(ek,t',c0,c1)对c0、c1进行验证,若验证结果为0,则表示c0、c1不是有效组合密钥相关信息,并结束流程,若验证结果为1,则表示c0、c1是有效组合密钥相关信息;
77、所述追踪者根据组合密钥ck、动态门限公钥加密的门限值t'、组合密钥相关信息c0、c1、见证者序列和t'个解密密钥碎片使用动态门限公钥加密解密算法对c2、c3进行解密,得到组合签名σcombination;步骤4.4、所述追踪者对组合签名σcombination进行追踪后,得到签名者序列
78、所述追踪者根据签名者的公钥序列消息message使用可追责的门限签名算法中的追踪算法对组合签名σcombination进行追踪,得到签名者序列
79、与现有技术相比,本发明的有益效果在于:
80、1、本发明中增加见证者对于追踪过程进行见证的环节,使得追踪过程由任何人任何时间都可以追踪转变为需要在见证人的见证下进行追踪,阻挡了不可信追踪者的攻击,实现了门限签名的可见证性和隐私性。
81、2、本发明的见证人通过使用动态门限公钥加密技术加入并参与遇到见证过程中,在见证前通过hash_tag来唤醒参与见证的见证人,实现了门限签名的动态可见证性。
82、3、本发明通过密码学承诺机制,非交互零知识证明方法等构造了包括对于可追责门限签名的验证,组合密钥信息验证,有效保障了追踪结果的正确性。
本文地址:https://www.jishuxx.com/zhuanli/20240801/244154.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表