CN116566619A - 一种动态可追溯的隐私保护分布式门限签名系统与方法 - Google Patents

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

Info

Publication number
CN116566619A
CN116566619A CN202310585847.XA CN202310585847A CN116566619A CN 116566619 A CN116566619 A CN 116566619A CN 202310585847 A CN202310585847 A CN 202310585847A CN 116566619 A CN116566619 A CN 116566619A
Authority
CN
China
Prior art keywords
signature
key
notary
module
blockchain
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310585847.XA
Other languages
English (en)
Inventor
李萌
张明威
祝烈煌
张子剑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hefei University of Technology
Original Assignee
Hefei University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hefei University of Technology filed Critical Hefei University of Technology
Priority to CN202310585847.XA priority Critical patent/CN116566619A/zh
Publication of CN116566619A publication Critical patent/CN116566619A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3255Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using group based signatures, e.g. ring or threshold signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

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

Description

一种动态可追溯的隐私保护分布式门限签名系统与方法
技术领域
本发明是一种动态可追溯的隐私保护分布式门限签名方法与系统,属于隐私保护、门限签名以及区块链技术领域。
背景技术
门限签名允许在一个共有n个参与方的团队里,有不少于t个参与方参与签名过程的情况下对消息进行签名。门限签名是许多实际应用的关键工具。其中,有两种类型的门限签名比较引人注目:可追责的门限签名和隐私门限签名。可追责的门限签名可以揭示共同生成签名的所有t个签名者的身份,隐私门限签名没有透露t的值或者t个签名者的身份,除了不可伪造性之外,这两个签名分别为签名者集合提供了可追溯性和隐私性。
然而以往的门限签名方案需要集中式的服务器实现聚合和追溯,若发生单点故障则可能导致整个系统的瘫痪,同时聚合者和追溯者并不是完全可信的,这可能会造成一些隐私泄露问题,因此在门限签名方案中保证可追溯性和隐私性的同时实现去中心化的机制也尤为重要。
一般而言,在门限签名的追溯过程中只有追溯者一个参与方来实现整个追溯过程,然而追溯过程是一个敏感的过程,它应该由一个动态的、相关的公证群体进行公证,但是以往的门限签名方案并没有使用公证群体对追溯过程进行公证,可能导致追溯结果不具有说服性。
发明内容
本发明是为了解决上述现有技术存在的不足之处,提出一种动态可追溯的隐私保护分布式门限签名系统与方法,以期能在聚合或者追溯过程中抵抗不可信聚合者或者追溯者的安全威胁,并能实现动态地公证追溯过程,从而能保护门限签名的不可伪造性、可追溯性和隐私性。
本发明为达到上述发明目的采用如下技术方案:
本发明一种动态可追溯的隐私保护分布式门限签名系统的特点包括: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个查询令牌tdo,并由所述第o个公证人模块的交易发送单元将第o个查询令牌发送至所述区块链模块的交易接收单元;
所述区块链模块的交易接收单元接收所述第o个查询令牌,并利用智能合约定位到所述合成签名并将所述合成签名/>发送至所述第o个公证人模块的合成签名接收单元;o∈[1,t'];
所述第o个公证人模块的合成签名接收单元接收所述合成签名后,转发至自身的数据部分解密单元;由所述数据部分解密单元对所述合成签名/>进行部分解密后,得到消息m的解密碎片/>并对解密碎片/>进行加密后得到合成签名碎片/>从而由所述第o个公证人模块的交易发送单元将合成签名碎片/>发送至所述区块链模块的交易接收单元;
所述第l个追溯者模块从所述区块链模块中获取第j个区块链签名ηj,并利用区块链签名验证单元对第j个区块链签名ηj进行验证,验证通过后,得到合成签名碎片和公证人集合/>并转发至自身的可信执行环境单元;所述第l个追溯者模块的可信执行环境单元对合成签名碎片/>进行解密后得到解密碎片/>从而得到t'个解密碎片所述第l个追溯者模块的可信执行环境单元将t'个解密碎片/>聚合成合成签名/>从而根据合成签名/>追溯得到参与签名的第i个签名者模块。
本发明一种动态可追溯的隐私保护分布式门限签名方法的特点是应用于由n个签名者、n1个聚合者、n3个公证人、n2个追溯者与一个区块链构成的环境中,所述门限签名方法是按如下步骤进行:
步骤一、初始化:
步骤1.1设置安全参数1λ,其中,λ为安全参数的长度;定义门限值为t,从而利用可问责门限签名的密钥生成算法ATS.KeyGen(1λ,n,t)生成可问责门限签名的公钥pk和私钥集合(sk1,sk2,···,ski,···,skt),其中,ski表示第i个签名者的私钥;i∈[1,t];
从群Rλ中选取一个随机数rpk,用于生成公钥pk的密码学承诺compk,其中,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和组合密钥ck;
利用动态门限公钥加密的加入用户算法DTPKE.Join(mk,o),得到第o个公证人的用户私钥usko、第o个公证人的用户公钥upko和第o个公证人的用户版本号uvko,o∈[1,t'];
利用密钥聚合可搜索加密的密钥生成算法KASE.KeyGen(λ)得到密钥聚合可搜索加密的公钥mpk和私钥msk;
利用密钥聚合可搜索加密的提取算法得到聚合密钥ka
步骤1.3组合pk、t、ek和rpk后,得到第j个聚合密钥/>
组合ck、pk后,得到第l个追溯密钥/>
利用哈希算法Hash(GID,time)得到签名组S的标识符gid,其中,GID为签名组S的组号,time为签名组S的签名时间,所述签名组S是由t个签名者组成;
步骤1.4组合compk、ek、dk、vk、B、/>H、mpk、gid和ka后,得到系统公钥
其中,gid表示签名组S的标识符集合;
步骤二、消息签名:
步骤2.1所述第i个签名者根据私钥ski、消息m和签名组S,利用可问责门限签名的签名算法ATS.Sign(ski,m,S),得到消息m的签名数据σi
所述第i个签名者根据第j个可信执行环境的公钥和所要加密的字符串得到加密签名/>并发送至区块链,其中,||表示字符串连接符,/>表示第j个聚合者选取的公证人集合,i∈[1,t];
步骤三、聚合签名:
步骤3.1任意第j个聚合者从所述区块链中获取所述签名组S的所有加密签名其中,/>表示第i个签名者的加密签名;
在可信执行环境内,使用可信执行环境的私钥对加密签名/>依次进行解密后,得到签名集合/>公证人集合/>和签名组S的标识符gid;其中,σi表示第i个签名者的签名;
根据公钥pk、消息m、签名组S和签名集合利用可问责门限签名的聚合算法得到消息m的第j个聚合签名/>
根据第j个聚合签名公证人集合/>和加密密钥ek,利用动态门限公钥加密的加密算法/>得到合成签名/>
根据公钥mpk、签名组S的标识符gid和公证人集合利用密钥聚合可搜索加密的加密算法/>得到加密密文对/>和加密索引集合其中,indo表示第o个安全索引,o∈[1,t'];
利用零知识证明生成算法对所需证明数据t'、compk、ek、mpk、gid、m、 rpk、pk进行处理,得到零知识证明π;
步骤3.2第j个聚合者使用私钥对消息m、合成签名/>加密密文对/>加密索引集合/>和零知识证明π进行签名后,得到第j个区块链签名ηj
所述第j个聚合者组合m、π、ηj后得到动态可追溯的隐私保护分布式门限签名σ,并将m和σ发送到区块链上;
步骤四、追溯签名者集合:
步骤4.1所述第o个公证人根据所述系统公钥PK中的聚合密钥ka以及自身的身份属性o,并利用密钥聚合可搜索加密的令牌生成算法KASE.Trapdoor(ka,o),得到查询令牌tdo并发送至区块链;
所述区块链上的智能合约接收到查询令牌tdo后,利用密钥聚合可搜索加密的调整算法得到调整后的查询令牌
所述智能合约根据调整后的查询令牌利用密钥聚合可搜索加密的测试算法得到所述第o个公证人对应的合成签名/>
所述第o个公证人从区块链上获取合成签名并根据身份属性o、解密密钥dk、用户私钥usko,利用动态门限公钥加密的数据部分解密算法/>得到消息m的解密碎片/>
所述第o个公证人利用第l个追溯者的可信执行环境的公钥对解密碎片/>进行加密后,得到合成签名碎片/>并发送到区块链;
步骤4.2所述第l个追溯者从区块链中接收所述合成签名碎片和合成签名并根据可信执行环境的私钥/>对加密合成签名碎片/>进行解密后得到解密碎片/>
所述第l个追溯者在可信执行环境下,根据加密密钥ek、公证人集合和合成签名/>利用动态门限公钥加密的密文验证算法/>验证合成签名/>是否是公证人集合/>的有效加密密文,如果是,则输出1,反之,则输出0;
所述第l个追溯者在可信执行环境下,根据验证密钥vk、所述第o个公证人的身份属性o、用户版本号uvko、合成签名和解密碎片/>利用动态门限公钥加密的碎片验证算法,验证解密碎片/>是否为所述第o个公证人产生,如果是,则输出1,反之,则输出0;
所述第l个追溯者在可信执行环境下,根据组合密钥ck、公证人集合合成签名/>和解密碎片集合/>利用动态门限公钥加密的碎片组合算法得到公证人集合/>对应的聚合签名/>
所述第l个追溯者在可信执行环境下,根据公钥pk、消息m和聚合签名利用可问责门限签名的追溯算法/>得到参与签名聚合签名/>的签名组S。
与现有技术相比,本发明的有益效果在于:
1、本发明中使用区块链框架,将门限签名中的聚合(追溯)的功能分发给多个聚合者(追溯者),防止不可信聚合者(追溯者)的攻击,实现了去中心化的聚合和追溯,并有效防止了集中式服务器单点故障的发生;
2、本发明使用可信硬件作为部分聚合(追溯)过程的执行环境,确保了聚合(追溯)过程不受不可信聚合者(追溯者)的影响;
3、本发明使用动态门限公钥加密对追溯过程进行动态公证,并通过密钥聚合可搜索加密唤醒公证人,有效保障了门限签名的动态可追溯性。
4、本发明使用非交互的零知识证明方法,实现了对公证人身份的公开验证,确保了追溯结果的正确性。
附图说明
图1是本发明流程图;
图2是本发明实施细节图。
具体实施方式
本实施例中,一种动态可追溯的隐私保护分布式门限签名系统,如图1所示,包括多个签名者模块、多个聚合者模块、多个公证人模块、多个追溯者模块与一个区块链模块;
如图2所示,签名者模块在安卓平台或个人电脑进行实现,聚合者和追溯者模块在Windows系统的硬件平台上进行实现,其中处理器需支持Intel SGX技术以在可信内存区域内运行相关协议,区块链模块利用运行的Geth以太坊客户端搭建组链,可信第三方公证人模块在安卓平台或个人电脑进行实现;
以一次追溯门限签名为例,签名者模块为想要签名消息的签名组中的一员、聚合者模块和追溯者为区块链上挖到矿的胜出节点,公证人为第三方公证机构的人员,区块链模块为多个全节点组成的公有区块链;
任意一个签名者模块包括:消息签名单元、签名加密单元、交易发送单元;
任意一个聚合者模块包括:加密签名接收单元、可信执行环境单元、区块链签名单元、交易发送单元;
任意一个公证人模块包括:合成签名接收单元、令牌生成单元、数据部分解密单元、交易发送单元;
任意一个追溯者模块包括:区块链签名验证单元、可信执行环境单元;
区块链模块包括:交易接收单元、共识单元;
第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个查询令牌tdo,并由第o个公证人模块的交易发送单元将第o个查询令牌发送至区块链模块的交易接收单元;
区块链模块的交易接收单元接收第o个查询令牌,并利用智能合约定位到合成签名并将合成签名/>发送至第o个公证人模块的合成签名接收单元;o∈[1,t'];
第o个公证人模块的合成签名接收单元接收合成签名后,转发至自身的数据部分解密单元;由数据部分解密单元对合成签名/>进行部分解密后,得到消息m的解密碎片/>并对解密碎片/>进行加密后得到合成签名碎片/>从而由第o个公证人模块的交易发送单元将合成签名碎片/>发送至区块链模块的交易接收单元;
第l个追溯者模块从区块链模块中获取第j个区块链签名ηj,并利用区块链签名验证单元对第j个区块链签名ηj进行验证,验证通过后,得到合成签名碎片和公证人集合/>并转发至自身的可信执行环境单元;第l个追溯者模块的可信执行环境单元对合成签名碎片/>进行解密后得到解密碎片/>从而得到t'个解密碎片/>第l个追溯者模块的可信执行环境单元将t'个解密碎片/>聚合成合成签名/>从而根据合成签名/>追溯得到参与签名的第i个签名者模块。
本实施例中,一种动态可追溯的隐私保护分布式门限签名方法是应用于由n个签名者、n1个聚合者、n3个公证人、n2个追溯者与一个区块链构成的环境中,该门限签名方法是按如下步骤进行:
步骤一、初始化:
步骤1.1设置安全参数1λ,其中,λ为安全参数的长度;定义门限值为t,从而利用可问责门限签名的密钥生成算法ATS.KeyGen(1λ,n,t)生成可问责门限签名的公钥pk和私钥集合(sk1,sk2,···,ski,···,skt),其中,ski表示第i个签名者的私钥;i∈[1,t];
从群Rλ中选取一个随机数rpk,用于生成公钥pk的密码学承诺compk,其中,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和组合密钥ck;
利用动态门限公钥加密的加入用户算法DTPKE.Join(mk,o),得到第o个公证人的用户私钥usko、第o个公证人的用户公钥upko和第o个公证人的用户版本号uvko,o∈[1,t'];
利用密钥聚合可搜索加密的初始化算法得到双线性映射系统B、密钥聚合可搜索加密公钥/>和单向哈希函数H,其中,B由三个p阶循环群G1,G2,GT、双线性映射关系e:G1×G2→GT,其中,×表示配对,→表示映射,e为双线性映射计算函数,/>为循环群,/>表示群/>的阶;
利用密钥聚合可搜索加密的密钥生成算法KASE.KeyGen(λ)得到密钥聚合可搜索加密的公钥mpk和私钥msk;
利用密钥聚合可搜索加密的提取算法得到聚合密钥ka
步骤1.3组合pk、t、ek和rpk后,得到第j个聚合密钥/>
组合ck、pk后,得到第l个追溯密钥/>
利用哈希算法Hash(GID,time)得到签名组S的标识符gid,其中,哈希算法使用的是256位安全散列算法,GID为签名组S的组号,time为签名组S的签名时间,签名组S是由t个签名者组成;
步骤1.4组合compk、ek、dk、vk、B、/>H、mpk、gid和ka后,得到系统公钥
其中,gid表示签名组S的标识符集合;
步骤二、消息签名:
步骤2.1第i个签名者根据私钥ski、消息m和签名组S,利用可问责门限签名的签名算法ATS.Sign(ski,m,S),得到消息m的签名数据σi
第i个签名者根据第j个可信执行环境的公钥和所要加密的字符串/>得到加密签名/>并发送至区块链,其中,||表示字符串连接符,/>表示第j个聚合者选取的公证人集合,i∈[1,t];
步骤三、聚合签名:
步骤3.1任意第j个聚合者从区块链中获取签名组S的所有加密签名其中,表示第i个签名者的加密签名;
在可信执行环境内,使用可信执行环境的私钥对加密签名/>依次进行解密后,得到签名集合/>公证人集合/>和签名组S的标识符gid;其中,σi表示第i个签名者的签名;
根据公钥pk、消息m、签名组S和签名集合利用可问责门限签名的聚合算法得到消息m的第j个聚合签名/>
根据第j个聚合签名公证人集合/>和加密密钥ek,利用动态门限公钥加密的加密算法/>得到合成签名/>用的对称加密算法是AES加密算法;
根据公钥mpk、签名组S的标识符gid和公证人集合利用密钥聚合可搜索加密的加密算法/>得到加密密文对/>和加密索引集合其中,indo表示第o个安全索引,o∈[1,t'];
利用零知识证明生成算法对所需证明数据t'、compk、ek、mpk、gid、m、 rpk、pk进行处理,得到零知识证明π;
步骤3.2第j个聚合者使用私钥对消息m、合成签名/>加密密文对/>加密索引集合/>和零知识证明π进行签名后,得到第j个区块链签名ηj
第j个聚合者组合m、π、ηj后得到动态可追溯的隐私保护分布式门限签名σ,并将m和σ发送到区块链上;
步骤四、追溯签名者集合:
步骤4.1第o个公证人根据系统公钥PK中的聚合密钥ka以及自身的身份属性o,并利用密钥聚合可搜索加密的令牌生成算法KASE.Trapdoor(ka,o),得到查询令牌tdo并发送至区块链;
区块链上的智能合约接收到查询令牌tdo后,利用密钥聚合可搜索加密的调整算法得到调整后的查询令牌
智能合约根据调整后的查询令牌利用密钥聚合可搜索加密的测试算法得到第o个公证人对应的合成签名/>
第o个公证人从区块链上获取合成签名并根据身份属性o、解密密钥dk、用户私钥usko,利用动态门限公钥加密的数据部分解密算法/>得到消息m的解密碎片/>
第o个公证人利用第l个追溯者的可信执行环境的公钥对解密碎片/>进行加密后,得到合成签名碎片/>并发送到区块链;
步骤4.2第l个追溯者从区块链中接收合成签名碎片和合成签名/>并根据可信执行环境的私钥/>对加密合成签名碎片/>进行解密后得到解密碎片/>
第l个追溯者在可信执行环境下,根据加密密钥ek、公证人集合和合成签名利用动态门限公钥加密的密文验证算法/>验证合成签名/>是否是公证人集合/>的有效加密密文,如果是,则输出1,反之,则输出0;
第l个追溯者在可信执行环境下,根据验证密钥vk、所述第o个公证人的身份属性o、用户版本号uvko、合成签名和解密碎片/>利用动态门限公钥加密的碎片验证算法,验证解密碎片/>是否为所述第o个公证人产生,如果是,则输出1,反之,则输出0;
第l个追溯者在可信执行环境下,根据组合密钥ck、公证人集合合成签名和解密碎片集合/>利用动态门限公钥加密的碎片组合算法得到公证人集合/>对应的聚合签名/>
第l个追溯者在可信执行环境下,根据公钥pk、消息m和聚合签名利用可问责门限签名的追溯算法/>得到参与签名聚合签名/>的签名组S。
综上所述,本发明在以往门限签名的基础上进行了改进,实现了一种动态可追溯的隐私保护分布式门限签名方法与系统,该发明能够有效抵抗不可信追溯者和聚合者的攻击,并保护门限签名的不可伪造性、可追溯性和隐私性。

Claims (2)

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个查询令牌tdo,并由所述第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,···,ski,···,skt),其中,ski表示第i个签名者的私钥;i∈[1,t];
从群Rλ中选取一个随机数rpk,用于生成公钥pk的密码学承诺compk,其中,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和组合密钥ck;
利用动态门限公钥加密的加入用户算法DTPKE.Join(mk,o),得到第o个公证人的用户私钥usko、第o个公证人的用户公钥upko和第o个公证人的用户版本号uvko,o∈[1,t'];
利用密钥聚合可搜索加密的密钥生成算法KASE.KeyGen(λ)得到密钥聚合可搜索加密的公钥mpk和私钥msk;
利用密钥聚合可搜索加密的提取算法得到聚合密钥ka
步骤1.3组合pk、t、ek和rpk后,得到第j个聚合密钥/>组合/>ck、pk后,得到第l个追溯密钥/>
利用哈希算法Hash(GID,time)得到签名组S的标识符gid,其中,GID为签名组S的组号,time为签名组S的签名时间,所述签名组S是由t个签名者组成;
步骤1.4组合compk、ek、dk、vk、B、/>H、mpk、gid和ka后,得到系统公钥
其中,gid表示签名组S的标识符集合;
步骤二、消息签名:
步骤2.1所述第i个签名者根据私钥ski、消息m和签名组S,利用可问责门限签名的签名算法ATS.Sign(ski,m,S),得到消息m的签名数据σi
所述第i个签名者根据第j个可信执行环境的公钥和所要加密的字符串得到加密签名/>并发送至区块链,其中,||表示字符串连接符,/>表示第j个聚合者选取的公证人集合,i∈[1,t];
步骤三、聚合签名:
步骤3.1任意第j个聚合者从所述区块链中获取所述签名组S的所有加密签名其中,/>表示第i个签名者的加密签名;
在可信执行环境内,使用可信执行环境的私钥对加密签名/>依次进行解密后,得到签名集合/>公证人集合/>和签名组S的标识符gid;其中,σi表示第i个签名者的签名;
根据公钥pk、消息m、签名组S和签名集合利用可问责门限签名的聚合算法得到消息m的第j个聚合签名/>
根据第j个聚合签名公证人集合/>和加密密钥ek,利用动态门限公钥加密的加密算法/>得到合成签名/>
根据公钥mpk、签名组S的标识符gid和公证人集合利用密钥聚合可搜索加密的加密算法/>得到加密密文对/>和加密索引集合/>其中,indo表示第o个安全索引,o∈[1,t'];
利用零知识证明生成算法对所需证明数据t'、compk、ek、mpk、gid、m、 rpk、pk进行处理,得到零知识证明π;
步骤3.2第j个聚合者使用私钥对消息m、合成签名/>加密密文对/>加密索引集合/>和零知识证明π进行签名后,得到第j个区块链签名ηj
所述第j个聚合者组合m、π、ηj后得到动态可追溯的隐私保护分布式门限签名σ,并将m和σ发送到区块链上;
步骤四、追溯签名者集合:
步骤4.1所述第o个公证人根据所述系统公钥PK中的聚合密钥ka以及自身的身份属性o,并利用密钥聚合可搜索加密的令牌生成算法KASE.Trapdoor(ka,o),得到查询令牌tdo并发送至区块链;
所述区块链上的智能合约接收到查询令牌tdo后,利用密钥聚合可搜索加密的调整算法得到调整后的查询令牌
所述智能合约根据调整后的查询令牌利用密钥聚合可搜索加密的测试算法得到所述第o个公证人对应的合成签名/>
所述第o个公证人从区块链上获取合成签名并根据身份属性o、解密密钥dk、用户私钥usko,利用动态门限公钥加密的数据部分解密算法/>得到消息m的解密碎片/>
所述第o个公证人利用第l个追溯者的可信执行环境的公钥对解密碎片/>进行加密后,得到合成签名碎片/>并发送到区块链;
步骤4.2所述第l个追溯者从区块链中接收所述合成签名碎片和合成签名/>并根据可信执行环境的私钥skl enc,对加密合成签名碎片/>进行解密后得到解密碎片
所述第l个追溯者在可信执行环境下,根据加密密钥ek、公证人集合和合成签名利用动态门限公钥加密的密文验证算法/>验证合成签名/>是否是公证人集合/>的有效加密密文,如果是,则输出1,反之,则输出0;
所述第l个追溯者在可信执行环境下,根据验证密钥vk、所述第o个公证人的身份属性o、用户版本号uvko、合成签名和解密碎片/>利用动态门限公钥加密的碎片验证算法,验证解密碎片/>是否为所述第o个公证人产生,如果是,则输出1,反之,则输出0;
所述第l个追溯者在可信执行环境下,根据组合密钥ck、公证人集合合成签名和解密碎片集合/>利用动态门限公钥加密的碎片组合算法得到公证人集合/>对应的聚合签名/>
所述第l个追溯者在可信执行环境下,根据公钥pk、消息m和聚合签名利用可问责门限签名的追溯算法/>得到参与签名聚合签名/>的签名组S。
CN202310585847.XA 2023-05-23 2023-05-23 一种动态可追溯的隐私保护分布式门限签名系统与方法 Pending CN116566619A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310585847.XA CN116566619A (zh) 2023-05-23 2023-05-23 一种动态可追溯的隐私保护分布式门限签名系统与方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310585847.XA CN116566619A (zh) 2023-05-23 2023-05-23 一种动态可追溯的隐私保护分布式门限签名系统与方法

Publications (1)

Publication Number Publication Date
CN116566619A true CN116566619A (zh) 2023-08-08

Family

ID=87501689

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310585847.XA Pending CN116566619A (zh) 2023-05-23 2023-05-23 一种动态可追溯的隐私保护分布式门限签名系统与方法

Country Status (1)

Country Link
CN (1) CN116566619A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117155584A (zh) * 2023-10-27 2023-12-01 北京信安世纪科技股份有限公司 Schnorr数字签名方法、系统及设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117155584A (zh) * 2023-10-27 2023-12-01 北京信安世纪科技股份有限公司 Schnorr数字签名方法、系统及设备
CN117155584B (zh) * 2023-10-27 2024-01-26 北京信安世纪科技股份有限公司 Schnorr数字签名方法、系统及设备

Similar Documents

Publication Publication Date Title
CN111385306B (zh) 一种智能电网中基于防篡改设备的匿名认证方法及系统
CN110430161B (zh) 一种基于区块链的可监管数据匿名分享方法及系统
CN110545279A (zh) 兼具隐私和监管功能的区块链交易方法、装置及系统
CN107947913A (zh) 一种基于身份的匿名认证方法与系统
CN109672530A (zh) 基于非对称密钥池的抗量子计算数字签名方法和抗量子计算数字签名系统
JP2009517910A (ja) Pufsを使用した物理的な共有秘密及び周辺の証明
Zhang et al. Multiauthority access control with anonymous authentication for personal health record
CN107171796A (zh) 一种多kmc密钥恢复方法
CN111274594B (zh) 一种基于区块链的安全大数据隐私保护共享方法
CN109687977A (zh) 基于多个密钥池的抗量子计算数字签名方法和抗量子计算数字签名系统
CN113761582A (zh) 基于群签名的可监管区块链交易隐私保护方法及系统
CN113468570A (zh) 基于智能合约的隐私数据共享方法
CN109887150A (zh) 支持投票系统的代理重签密方法
CN108551435A (zh) 一种具有匿名性的可验证加密群签名方法
Zhang et al. SSBAS-FA: A secure sealed-bid e-auction scheme with fair arbitration based on time-released blockchain
CN114666032A (zh) 基于同态加密的区块链交易数据隐私保护方法
Backes et al. Using mobile device communication to strengthen e-voting protocols
CN116467736A (zh) 一种可验证的隐私保护联邦学习方法及系统
CN116566619A (zh) 一种动态可追溯的隐私保护分布式门限签名系统与方法
Ma et al. Be-trdss: Blockchain-enabled secure and efficient traceable-revocable data-sharing scheme in industrial internet of things
CN102291396B (zh) 可信平台远程证明的匿名认证算法
CN110519040B (zh) 基于身份的抗量子计算数字签名方法和系统
Cao et al. Decentralized group signature scheme based on blockchain
CN113886778A (zh) 一种可监管的动态自我主权身份生成方法
CN108259180B (zh) 一种量子指定验证者签名的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination