CN112350820B - 多接收者签密方法、发送端、接收端、系统及存储介质 - Google Patents
多接收者签密方法、发送端、接收端、系统及存储介质 Download PDFInfo
- Publication number
- CN112350820B CN112350820B CN202011184533.1A CN202011184533A CN112350820B CN 112350820 B CN112350820 B CN 112350820B CN 202011184533 A CN202011184533 A CN 202011184533A CN 112350820 B CN112350820 B CN 112350820B
- Authority
- CN
- China
- Prior art keywords
- sender
- signcryption
- receiver
- recipient
- public key
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
- H04L63/0421—Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/3033—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters details relating to pseudo-prime or prime number generation, e.g. primality test
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种多接收者签密方法、发送端、接收端、系统及存储介质,每次广播通信时把发送者的身份藏在一个身份集合中,通信过程中需要用到发送者身份集合中所有身份的公钥,采用环签名方式进行签密,将发送者的真实身份隐藏起来,从而实现了发送者匿名,并且发送者集合会通过密文发送给接收者,所有接收者可以确认发送者是否处于可信集合;防止了广播通信时潜在的发送者身份信息泄露问题和确保发送者可信问题,保护了通信各方的隐私性,提高了多接收者签密方法的安全性。
Description
技术领域
本发明涉及一种网络安全领域,具体涉及一种多接收者签密方法、发送端、接收端、系统及存储介质。
背景技术
随着社会发展,人们越来越重视隐私保护,在多接收者签密的某些应用场景中(匿名投票、匿名分享数据、吹哨人举报等场景),为了保护发送者隐私需要实现发送者匿名,为了防止恶意发送者需要实现接收者信任发送者;然而现在大多数多接收者签密方案不能实现在发送者匿名的基础上保证接收者信任发送者。安全的多接收者签密方案应该可以实现一个发送者向多个授权接收者安全发送消息的技术,并且能够实现上述的安全需求。
现有技术中的签密方法的主要步骤是:签密时,发送者利用多项式,混合接收方的身份信息作为密文元素保存,发送者用自己的私钥、授权接收者的身份信息以及所要发送的消息进行计算从而得到密文,并将密文进行广播。解密时,验证自己是否为授权接收者,如果自己不是授权接收者,则不进行解密,如果自己是授权接收者,则用自己的私钥进行解密。但是该方案存在一些缺陷:本方案在加密和解密过程中使用了大量运算复杂的操作例如双线性对运算,因此导致本方案运算开销大。其次本方案无法满足发送者匿名的情况下,接收者对发送者的信任,因此无法满足举报人的需求。
发明内容
本发明所要解决的技术问题是提供一种多接收者签密方法、发送端、接收端、系统及存储介质,使消息发送者可以位于可信范围内匿名,接收者可以信任接收者,并且解决上述现有技术在加密解密过程中由于使用运算开销大的操作造成的效率不高的问题。
本发明解决上述技术问题的技术方案如下:一种多接收者签密方法,其特征在于,所述多接收者签密方法包括:
S11、发送者IDs选择一个随机数计算参数B=bP;所述为随机的基于素数q的非零乘法群,所述B为签密所需要的中间值;P为G上的生成元,所述G为可信q阶加法循环群,IDs∈W,W={ID1,ID2,…,IDw};
S12、发送者IDs针对在接收者集合V={ID’1,ID’2,…,ID’v}中的接收者ID’i,根据接收者ID’i公布的公钥生成参数Zi,计算得到接收者ID’i公钥Y’i=Z’i+H1(ID’i,Z’i)Ppub,所述H1为抗碰撞的哈希函数,Ppub为系统主公钥;
S13、发送者IDs基于抗碰撞的哈希函数H2、所述接收者ID’i公钥Y’i、参数B、接收者集合V和发送者集合W,对明文消息M进行计算得到发送给接收者ID’i的消息密文c’i,获取IDs发送给接收者的消息密文集合C={c’1,c’2,…,c’v};
S14、发送者IDs选择一个随机数针对发送者身份集合W={ID1,ID2,…,IDw}中的其它发送者IDj,根据其它发送者IDj公布的公钥生成参数Zj,计算其它发送者IDj的公钥Yj=Zj+H1(IDj,Zj)Ppub,其中H3为抗碰撞的哈希函数,xs为用户IDs的私钥;
S15、发送者IDs选择一个随机数计算公式和h为生成签密值的中间值,σs为发送者IDs的签密值,获得所有发送者的签密值σ={σ1,σ1,…,σw},计算公式f=t-σsxsmodq对发送者IDs的签密值进行隐藏,其中H3为抗碰撞的哈希函数,σs∈σ,f为隐藏发送者身份隐藏参数,xs为用户IDs的私钥;
S16、发送者IDs构造签密密文{σ,B,C,f,W,V},并对签密密文进行广播,完成签密操作。
本发明的有益效果是:每次广播通信时把发送者的身份藏在一个身份集合中,通信过程中需要用到发送者身份集合中所有身份的公钥,采用环签名方式进行签密,将发送者的真实身份隐藏起来,从而实现了发送者匿名,并且发送者集合会通过密文发送给接收者,所有接收者可以确认发送者是否处于可信集合。因此,本方法防止了广播通信时潜在的发送者身份信息泄露问题和确保发送者可信问题,保护了通信各方的隐私性,提高了多接收者签密方法的安全性。
在上述技术方案的基础上,本发明还可以做如下改进:
进一步,所述步骤S13包括:
采用上述进一步方案的有益效果是:基于接收者ID’i的公钥计算伪公钥B’i、通过抗碰撞的哈希函数对计算得到的参数B、伪公钥B’i和接收者集合V和发送者集合W进行计算,进而根据计算结果对明文消息M进行异或运算,获取密文,保证便于接收者ID’i对发送者IDs的身份进行验证,同时保证对明文消息的安全性。
为了解决上述技术问题,本发明还提供一种多接收者签密方法,多接收者签密方法包括:
S21、接收者ID’i接收到签密密文{σ,B,C,f,W,V}后,获取发送者IDs发送的明文消息M,ID’i∈V,V={ID’1,ID’2,…,ID’v},所述B为计算得到参数,所述C为消息密文集合,所述σ为所有发送者的签密值,所述f为发送者身份隐藏参数,所述W={ID1,ID2,…,IDw}为发送者合集;
采用上述进一步方案的有益效果是:所有接收者ID’i都会接收到发送者IDs发送的签密密文,需要对发送者IDs的身份进行验证,可以确认发送者是否处于可信集合,进而根据验证结果确定是否接收解密密文后的明文消息,防止了广播通信时潜在的发送者身份信息泄露问题和确保发送者可信问题,并且保护了通信各方的隐私性。
进一步,所述步骤S21包括:
采用上述进一步方案的有益效果是:根据发送者IDs发送的{σ,B,C,f,W,V}中的计算得到的参数B,和接收者集合V和发送者集合W进行计算,进而根据计算结果对密文进行异或运算获取明文,保证对明文消息获取的准确性。
为了解决上述技术问题,本发明还提供一种多接收者签密方法,多接收者签密方法包括:
S41、发送者IDs选择一个随机数计算参数B=bP;所述为随机的基于素数q的非零乘法群,所述B为签密所需要的中间值;P为G上的生成元,所述G为可信q阶加法循环群,IDs∈W,W={ID1,ID2,…,IDw};
S42、发送者IDs针对在接收者集合V={ID’1,ID’2,…,ID’v}中的接收者ID’i,根据接收者ID’i公布的公钥生成参数Zi,计算得到接收者ID’i公钥Y’i=Z’i+H1(ID’i,Z’i)Ppub,所述H1为抗碰撞的哈希函数,Ppub为系统主公钥;
S43、发送者IDs基于抗碰撞的哈希函数H2、所述接收者ID’i公钥Y’i、参数B、接收者集合V和发送者集合W,对明文消息M进行计算得到发送给接收者ID’i的消息密文c’i,获取IDs发送给接收者的消息密文集合C={c’1,c’2,…,c’v};
S44、发送者IDs选择一个随机数针对发送者身份集合W={ID1,ID2,…,IDw}中的其它发送者IDj,根据其它发送者IDj公布的公钥生成参数Zj,计算其它发送者IDj的公钥Yj=Zj+H1(IDj,Zj)Ppub,其中H3为抗碰撞的哈希函数,xs为用户IDs的私钥;
S45、发送者IDs选择一个随机数计算公式和h为生成签密值的中间值,σs为发送者IDs的签密值,获得所有发送者的签密值σ={σ1,σ1,…,σw},计算公式f=t-σsxsmodq对发送者IDs的签密值进行隐藏,其中H3为抗碰撞的哈希函数,σs∈σ,f为隐藏发送者身份隐藏参数,xs为用户IDs的私钥;
S46、发送者IDs构造签密密文{σ,B,C,f,W,V},并对签密密文进行广播,完成签密操作;
S47、接收者ID’i接收到签密密文{σ,B,C,f,W,V}后,获取发送者IDs发送的明文消息M,ID’i∈V,V={ID’1,ID’2,…,ID’v};
进一步,所述步骤S41之前还包括:
S33、密钥生成中心构造3个抗碰撞的哈希函数,分别记为:
H1={0,1}*×G->Zp*、H2={0,1}*×{0,1}*×G×G->Zp*和
H3={0,1}*×G×{0,1}*×G->Zp*
其中H1、H2、H3表示抗碰撞的哈希函数,A→B表示定义域A到值域B的映射,{0,1}*表示0或1构成的串,×表示笛卡尔乘积;
S34、密钥生成中心公布公共参数Pars={Ep(a,b),G,p,P,Ppub,H1,H2,H3},其中所述公共参数Pars包括加法循环群G,大质数p,加法循环群G上的生成元P,安全的椭圆曲线Ep(a,b),哈希函数H1、H2、H3和主公钥Ppub;
S36、密钥生成中心将发送者和接收者的私钥xi和公钥生成参数Zi分别发送给发送者和接收者。
采用上述进一步方案的有益效果是:密钥生成中心生成密码系统参数,发送者和接收者注册,密钥生成中心为每个接收者和发送者生成签密公私钥;进而便于后续发送者进行签密,接收者进行解密的可靠性和安全性。
为了解决上述技术问题,本发明还提供一种发送端,发送端包括第一处理器和第一存储器;
所述第一存储器用于存储的一个或者多个计算机程序;
所述第一处理器用于用于执行所述第一存储器中存储的一个或者多个计算机程序,以实现上述的多接收者签密方法的步骤。
为了解决上述技术问题,本发明还提供一种接收端,接收端包括第二处理器和第二存储器;
所述第二存储器用于存储的一个或者多个计算机程序;
所述第二处理器用于用于执行所述第二存储器中存储的一个或者多个计算机程序,以实现上述的多接收者签密方法的步骤。
为了解决上述技术问题,本发明还提供一种多接收者签密系统,所述多接收者签密包括如上所述的发送端和如上所述的接收端,还包括密钥生成中心。
为了解决上述技术问题,本发明还存储介质,存储介质包括存储有一个或者多个计算机程序,所述一个或者多个计算机程序可被一个或者多个处理器执行,以实现如上述的多接收者签密方法的步骤,或以实现如上所述的多接收者签密方法的步骤,或实现如上所述的多接收者签密方法的步骤。
附图说明
图1为本发明一实施例提供的多接收者签密方法的流程图;
图2为本发明一实施例提供的多接收者签密方法的流程图;
图3为本发明一实施例提供的多接收者签密方法的流程图;
图4为本发明一实施例提供的发送端的结构示意图;
图5为本发明一实施例提供的接收端的结构示意图;
图6为本发明一实施例提供的多接收者签密系统的结构示意图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
名词解释。
z:可信的大整数;
q:可信的大素数,满足q>2z;
G:可信q阶加法循环群;
P:G上的生成元;
B:计算得到的参数;
s:系统主密钥;
Ppub:系统主公钥,Ppub=sP;
Hi:哈希函数,其中i=1,2,3;
{0,1}*:任意长的“0”或“1”构成的串;
M:明文消息;
Pars:系统公开参数;
f:发送者隐藏身份参数;
σ:所有发送者的签密值;
IDi:用户身份信息;
IDs:发送者的身份信息;
Yi:用户的公钥;
xi:用户的私钥;
W:发送者集合;
V:接收者集合;
w:发送者的个数;
v:接收者的个数;
C:签密密文;
如图1所示,图1为本发明实施例提供的一种多接收者签密方法的流程图,由发送端实现该多接收者签密方法,该多接收者签密方法包括:
S12、发送者IDs针对在接收者集合V={ID’1,ID’2,…,ID’v}中的接收者ID’i,根据接收者ID’i公布的公钥生成参数Zi,计算得到接收者ID’i公钥Y’i=Z’i+H1(ID’i,Z’i)Ppub,H1为抗碰撞的哈希函数,Ppub为系统主公钥;
S13、发送者IDs基于抗碰撞的哈希函数H2、接收者ID’i公钥Y’i、参数B、接收者集合V和发送者集合W,对明文消息M进行计算得到发送给接收者ID’i的消息密文c’i,获取IDs发送给接收者的消息密文集合C={c’1,c’2,…,c’v};
S14、发送者IDs选择一个随机数针对发送者身份集合W={ID1,ID2,…,IDw}中的其它发送者IDj,根据其它发送者IDj公布的公钥生成参数Zj,计算其它发送者IDj的公钥Yj=Zj+H1(IDj,Zj)Ppub,其中H3为抗碰撞的哈希函数,xs为用户IDs的私钥;
S15、发送者IDs选择一个随机数计算公式和h为生成签密值的中间值,σs为发送者IDs的签密值,获得所有发送者的签密值σ={σ1,σ1,…,σw},计算公式f=t-σsxsmodq对发送者IDs的签密值进行隐藏,其中H3为抗碰撞的哈希函数,σs∈σ,f为隐藏发送者身份隐藏参数,xs为用户IDs的私钥;
S16、发送者IDs构造签密密文{σ,B,C,f,W,V},并对签密密文进行广播,完成签密操作。
在本实施例中,每次广播通信时把发送者的身份藏在一个身份集合中,通信过程中需要用到发送者身份集合中所有身份的公钥,采用环签名方式进行签密,将发送者的真实身份隐藏起来,从而实现了发送者匿名,并且发送者集合会通过密文发送给接收者,所有接收者可以确认发送者是否处于可信集合。因此,本方法防止了广播通信时潜在的发送者身份信息泄露问题和确保发送者可信问题,保护了通信各方的隐私性,提高了多接收者签密方法的安全性。
需要说明的是,密钥生成中心为每个注册的接收者和发送者生成了签密公钥和私钥,其中公钥由密钥生成中心生成的公钥生成参数Zi得到,发送者和接收者会将公钥生成参数Zi对外公布,安全保存自己的私钥。
在本实施例中,步骤S13具体包括:
计算公式B’i=bY’i,α’i=H2(W,V,B,B’i)和获得发送给接收者ID’i的消息密文c’i;B’i和α’i为生成消息密文的中间值。基于接收者ID’i的公钥计算伪公钥B’i、通过抗碰撞的哈希函数对计算得到的参数B、伪公钥B’i和接收者集合V和发送者集合W进行计算,进而根据计算结果对明文消息M进行异或运算获取密文,其中明文消息M为比特串,保证便于接收者ID’i对发送者IDs的身份进行验证,同时保证对明文消息的安全性。
在本实施例中,步骤S15中,利用其它发送者的公钥,通过公式和计算得到发送者IDs的签密值,然后集合每个发送者签密值σ={σ1,σ1,…,σw},同时对公式f=t-σsxsmodq对发送者IDs的签密值σs进行隐藏,进而体现了环签名,并把发送者身份隐藏在一个身份集合中,保障用户隐私性。
如图2所示,图2为本发明实施例提供的一种多接收者签密方法的流程图,由接收者实现该多接收者签密方法,该多接收者签密方法包括:
S21、接收者ID’i接收到签密密文{σ,B,C,f,W,V}后,获取发送者IDs发送的明文消息M,ID’i∈V,V={ID’1,ID’2,…,ID’v},B为签密所需要的中间值,C为消息密文集合集合,σ为所有发送者的签密值,f为发送者身份隐藏参数,W={ID1,ID2,…,IDw}为发送者合集;
在本实施例中,所有接收者ID’i都会接收到发送者IDs发送的签密密文,需要对发送者IDs的身份进行验证,可以确认发送者是否处于可信集合,进而根据验证结果确定是否接收解密密文后的明文消息,防止了广播通信时潜在的发送者身份信息泄露问题和确保发送者可信问题,并且保护了通信各方的隐私性。
需要说明的是,在本实施例中,步骤S21具体包括:
本实施例还提供一种多接收者签密方法,如图3所示,该多接收者签密方法由签密系统实现,该多接收者签密方法包括:
S42、发送者IDs针对在接收者集合V={ID’1,ID’2,…,ID’v}中的接收者ID’i,根据接收者ID’i公布的公钥生成参数Zi,计算得到接收者ID’i公钥Y’i=Z’i+H1(ID’i,Z’i)Ppub,H1为抗碰撞的哈希函数,Ppub为系统主公钥;
S43、发送者IDs基于抗碰撞的哈希函数H2、接收者ID’i公钥Y’i、参数B、接收者集合V和发送者集合W,对明文消息M进行计算得到发送给接收者ID’i的消息密文c’i,获取IDs发送给接收者的消息密文集合C={c’1,c’2,…,c’v};
S44、发送者IDs选择一个随机数针对发送者身份集合W={ID1,ID2,…,IDw}中的其它发送者IDj,根据其它发送者IDj公布的公钥生成参数Zj,计算其它发送者IDj的公钥Yj=Zj+H1(IDj,Zj)Ppub,其中H3为抗碰撞的哈希函数,xs为用户IDs的私钥;
S45、发送者IDs选择一个随机数计算公式和h为生成签密值的中间值,σs为发送者IDs的签密值,获得所有发送者的签密值σ={σ1,σ1,…,σw},计算公式f=t-σsxsmodq对发送者IDs的签密值进行隐藏,其中H3为抗碰撞的哈希函数,σs∈σ,f为隐藏发送者身份隐藏参数,xs为用户IDs的私钥;
S46、发送者IDs构造签密密文{σ,B,C,f,W,V},并对签密密文进行广播,完成签密操作;
S47、接收者ID’i接收到签密密文{σ,B,C,f,W,V}后,获取发送者IDs发送的明文消息M,ID’i∈V,V={ID’1,ID’2,…,ID’v};
在本实施例中,步骤41之前还包括生成密码系统参数,发送者和接收者注册(用户注册),此过程中用户包括接收者和发送者,密钥生成中心为每个用户生成签密公私钥的过程,具体包括:
S33、密钥生成中心构造3个抗碰撞的哈希函数,分别记为:
H1={0,1}*×G->Zp*、H2={0,1}*×{0,1}*×G×G->Zp*和
H3={0,1}*×G×{0,1}*×G->Zp*
其中H1、H2、H3表示抗碰撞的哈希函数,A→B表示定义域A到值域B的映射,{0,1}*表示0或1构成的串,×表示笛卡尔乘积;
S34、密钥生成中心公布公共参数Pars={Ep(a,b),G,p,P,Ppub,H1,H2,H3},其中公共参数Pars包括加法循环群G,加法循环群G上的生成元P,安全的椭圆曲线Ep(a,b),哈希函数H1、H2、H3和主公钥Ppub;
S36、密钥生成中心将发送者和接收者的私钥xi和公钥生成参数Zi分别发送给发送者和接收者。
在本实施例中,发送者和接收者会将公钥生成参数Zi对外公布,并且安全保存自己的私钥。
本实施例还提供一种发送端40,如图4所示,该发送端40包括第一处理器401和第一存储器402;
第一存储器401用于存储的一个或者多个计算机程序;
第一处理器402用于用于执行第一存储器401中存储的一个或者多个计算机程序,以实现上述实施例中的多接收者签密方法的步骤,在此不再一一赘述。
本实施例还提供一种接收端50,如图5所示,接收端50包括第二处理器501和第二存储器502;
第二存储器501用于存储的一个或者多个计算机程序;
第二处理器502用于用于执行第二存储器501中存储的一个或者多个计算机程序,以实现上述实施例中的多接收者签密方法的步骤,在此不再一一赘述。
本实施例还提供一种多接收者签密系统,如图6所示,多接收者签密包括如上所述的发送端40和如上所述的接收端50,还包括密钥生成中心60,密钥生成中心为发送者和接收者生成私钥xi和公钥生成参数Zi,在此不再一一赘述。
本实施例还提供一种存储介质,存储介质包括存储有一个或者多个计算机程序,一个或者多个计算机程序可被一个或者多个处理器执行,以实现上述实施例中的多接收者签密方法的步骤,或以实现上述实施例中的多接收者签密方法的步骤,或实现上述实施例中的多接收者签密方法的步骤,在此不再一一赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本发明实施例所提供的技术方案进行了详细介绍,本专利中应用了具体个例对本发明实施例的原理以及实施方式进行了阐述,以上实施例的说明只适用于帮助理解本发明实施例的原理;以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种多接收者签密方法,其特征在于,包括签密部分,应用于发送端,包括:
S11、发送者IDs选择一个随机数计算参数B=bP;所述为随机的基于素数q的非零乘法群,所述B为签密所需要的中间值;P为G上的生成元,所述G为可信q阶加法循环群,IDs∈W,W={ID1,ID2,…,IDw};
S12、发送者IDs针对在接收者集合V={ID′1,ID'2,…,ID′v}中的接收者ID′i,根据接收者ID′i公布的公钥生成参数Zi,计算得到接收者ID′i公钥Yi'=Z′i+H1(ID′i,Z′i)Ppub,所述H1为抗碰撞的哈希函数,Ppub为系统主公钥;
S13、发送者IDs基于抗碰撞的哈希函数H2、所述接收者ID′i公钥Yi'、参数B、接收者集合V和发送者集合W,对明文消息M进行计算得到发送给接收者ID′i的消息密文c′i,获取IDs发送给接收者的消息密文集合C={c′1,c'2,…,c'v};
S14、发送者IDs选择一个随机数针对发送者身份集合W={ID1,ID2,…,IDw}中的其它发送者IDj,根据其它发送者IDj公布的公钥生成参数Zj,计算其它发送者IDj的公钥Yj=Zj+H1(IDj,Zj)Ppub,其中H3为抗碰撞的哈希函数,xs为用户IDs的私钥;
S15、发送者IDs选择一个随机数计算公式和h为生成签密值的中间值,σs为发送者IDs的签密值,获得所有发送者的签密值σ={σ1,σ1,…,σw},计算公式f=t-σsxsmod q对发送者IDs的签密值进行隐藏,其中H3为抗碰撞的哈希函数,σs∈σ,f为发送者身份隐藏参数,xs为用户IDs的私钥;
S16、发送者IDs构造签密密文{σ,B,C,f,W,V},并对签密密文进行广播,完成签密操作。
3.一种多接收者签密方法,其特征在于,包括解密部分,应用于接收端,包括:
S21、接收者ID′i接收到权利要求1或2中所述多接收者签密方法发送的签密密文{σ,B,C,f,W,V}后,获取发送者IDs发送的明文消息M,ID′i∈V,V={ID′1,ID'2,…,ID′v},所述B为签密所需要的中间值,所述C为消息密文集合,所述σ为所有发送者的签密值,所述f为发送者身份隐藏参数,所述W={ID1,ID2,…,IDw}为发送者合集;
5.一种多接收者签密方法,其特征在于,所述多接收者签密方法包括:
S41、发送者IDs选择一个随机数计算参数B=bP;所述为随机的基于素数q的非零乘法群,所述B为签密所需要的中间值;P为G上的生成元,所述G为可信q阶加法循环群,IDs∈W,W={ID1,ID2,…,IDw};
S42、发送者IDs针对在接收者集合V={ID′1,ID'2,…,ID′v}中的接收者ID′i,根据接收者ID′i公布的公钥生成参数Zi,计算得到接收者ID′i公钥Yi'=Z′i+H1(ID′i,Z′i)Ppub,所述H1为抗碰撞的哈希函数,Ppub为系统主公钥;
S43、发送者IDs基于抗碰撞的哈希函数H2、所述接收者ID′i公钥Yi'、参数B、接收者集合V和发送者集合W,对明文消息M进行计算得到发送给接收者ID′i的消息密文c′i,获取IDs发送给接收者的消息密文集合C={c′1,c'2,…,c'v};
S44、发送者IDs选择一个随机数针对发送者身份集合W={ID1,ID2,…,IDw}中的其它发送者IDj,根据其它发送者IDj公布的公钥生成参数Zj,计算其它发送者IDj的公钥Yj=Zj+H1(IDj,Zj)Ppub,其中H3为抗碰撞的哈希函数,xs为用户IDs的私钥;
S45、发送者IDs选择一个随机数计算公式和h为生成签密值的中间值,σs为发送者IDs的签密值,获得所有发送者的签密值σ={σ1,σ1,…,σw},计算公式f=t-σsxsmod q对发送者IDs的签密值进行隐藏,其中H3为抗碰撞的哈希函数,σs∈σ,f为隐藏发送者身份隐藏参数,xs为用户IDs的私钥;
S46、发送者IDs构造签密密文{σ,B,C,f,W,V},并对签密密文进行广播,完成签密操作;
S47、接收者ID′i接收到签密密文{σ,B,C,f,W,V}后,获取发送者IDs发送的明文消息M,ID′i∈V,V={ID′1,ID'2,…,ID′v};
6.根据权利要求5所述多接收者签密方法,其特征在于,所述步骤S41之前还包括:
S33、密钥生成中心构造3个抗碰撞的哈希函数,分别记为:
H1={0,1}*×G->Zp*、H2={0,1}*×{0,1}*×G×G->Zp*和H3={0,1}*×G×{0,1}*×G->Zp*
其中H1、H2、H3表示抗碰撞的哈希函数,A→B表示定义域A到值域B的映射,{0,1}*表示0或1构成的串,×表示笛卡尔乘积;
S34、密钥生成中心公布公共参数Pars={Ep(a,b),G,p,P,Ppub,H1,H2,H3},其中所述公共参数Pars包括加法循环群G,大质数p,加法循环群G上的生成元P,安全的椭圆曲线Ep(a,b),哈希函数H1、H2、H3和主公钥Ppub;
S36、密钥生成中心将发送者和接收者的私钥xi和公钥生成参数Zi分别发送给发送者和接收者。
7.一种发送端,其特征在于,所述发送端包括第一处理器和第一存储器;
所述第一存储器用于存储的一个或者多个计算机程序;
所述第一处理器用于用于执行所述第一存储器中存储的一个或者多个计算机程序,以实现权利要求1-2所述的多接收者签密方法的步骤。
8.一种接收端,其特征在于,所述接收端包括第二处理器和第二存储器;
所述第二存储器用于存储的一个或者多个计算机程序;
所述第二处理器用于用于执行所述第二存储器中存储的一个或者多个计算机程序,以实现权利要求3-4任一项所述的多接收者签密方法的步骤。
9.一种多接收者签密系统,其特征在于,所述多接收者签密系统包括:如权利要求7所述的发送端和如权利要求8所述的接收端,还包括密钥生成中心。
10.一种存储介质,其特征在于,存储介质包括存储有一个或者多个计算机程序,所述一个或者多个计算机程序可被一个或者多个处理器执行,以实现如权利要求1至2中任一项所述的多接收者签密方法的步骤,或以实现如权利要求3至4中任一项所述的多接收者签密方法的步骤,或实现如权利要求5至6中任一项所述的多接收者签密方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011184533.1A CN112350820B (zh) | 2020-10-29 | 2020-10-29 | 多接收者签密方法、发送端、接收端、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011184533.1A CN112350820B (zh) | 2020-10-29 | 2020-10-29 | 多接收者签密方法、发送端、接收端、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112350820A CN112350820A (zh) | 2021-02-09 |
CN112350820B true CN112350820B (zh) | 2022-01-11 |
Family
ID=74357109
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011184533.1A Active CN112350820B (zh) | 2020-10-29 | 2020-10-29 | 多接收者签密方法、发送端、接收端、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112350820B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114338014B (zh) * | 2022-01-04 | 2023-03-24 | 内蒙古汉尔信息科技有限公司 | 一种用于环境监察执法的安全举报方法、装置及系统 |
CN115276984B (zh) * | 2022-07-29 | 2024-03-29 | 山东大学 | 一种基于gr-lwe问题的密钥交换方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104967513B (zh) * | 2015-05-29 | 2018-08-07 | 西北工业大学 | 具有多重安全属性的基于身份的多接收者环签密方法 |
US10700875B1 (en) * | 2017-05-01 | 2020-06-30 | Wells Fargo Bank, N.A. | Systems and methods for value transfers using signcryption |
CN111563733B (zh) * | 2020-04-28 | 2023-06-02 | 杭州云象网络技术有限公司 | 一种用于数字钱包的环签名隐私保护系统及方法 |
-
2020
- 2020-10-29 CN CN202011184533.1A patent/CN112350820B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112350820A (zh) | 2021-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3091690B1 (en) | Rsa decryption using multiplicative secret sharing | |
US6298153B1 (en) | Digital signature method and information communication system and apparatus using such method | |
JP3560439B2 (ja) | 暗号キーの回復を実行する装置 | |
US7634085B1 (en) | Identity-based-encryption system with partial attribute matching | |
Zhou et al. | ExpSOS: Secure and verifiable outsourcing of exponentiation operations for mobile cloud computing | |
Fang et al. | Chosen-ciphertext secure anonymous conditional proxy re-encryption with keyword search | |
CN110545279A (zh) | 兼具隐私和监管功能的区块链交易方法、装置及系统 | |
US20100098253A1 (en) | Broadcast Identity-Based Encryption | |
Liu et al. | Verifiable attribute-based keyword search over encrypted cloud data supporting data deduplication | |
GB2490407A (en) | Joint encryption using base groups, bilinear maps and consistency components | |
CN110120873B (zh) | 基于云外包交易数据的频繁项集挖掘方法 | |
EP2792098B1 (en) | Group encryption methods and devices | |
JP6041864B2 (ja) | データの暗号化のための方法、コンピュータ・プログラム、および装置 | |
CN106713349B (zh) | 一种能抵抗选择密文攻击的群组间代理重加密方法 | |
CN112350820B (zh) | 多接收者签密方法、发送端、接收端、系统及存储介质 | |
Yang et al. | An efficient authenticated encryption scheme based on ECC and its application for electronic payment | |
Zia et al. | Cryptanalysis and improvement of an elliptic curve based signcryption scheme for firewalls | |
CN112738133A (zh) | 一种rsa认证方法 | |
CN110519226B (zh) | 基于非对称密钥池和隐式证书的量子通信服务端保密通信方法和系统 | |
CN116743358A (zh) | 一种可否认的多接收者认证方法及系统 | |
CN109412815B (zh) | 一种实现跨域安全通信的方法和系统 | |
Rasmussen et al. | Weak and strong deniable authenticated encryption: on their relationship and applications | |
Chen et al. | Building a privacy-preserving blockchain-based bidding system: A crypto approach | |
JP2004246350A (ja) | 暗号化装置および復号化装置、並びにこれらを備えた暗号システム、暗号化方法および復号化方法 | |
Yuen et al. | Towards a cryptographic treatment of publish/subscribe systems |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |