CN112350820B - 多接收者签密方法、发送端、接收端、系统及存储介质 - Google Patents

多接收者签密方法、发送端、接收端、系统及存储介质 Download PDF

Info

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
Application number
CN202011184533.1A
Other languages
English (en)
Other versions
CN112350820A (zh
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.)
Qinghai University
Original Assignee
Qinghai University
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 Qinghai University filed Critical Qinghai University
Priority to CN202011184533.1A priority Critical patent/CN112350820B/zh
Publication of CN112350820A publication Critical patent/CN112350820A/zh
Application granted granted Critical
Publication of CN112350820B publication Critical patent/CN112350820B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network 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/0421Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network 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
    • 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/06Cryptographic 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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public 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/3033Public 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选择一个随机数
Figure GDA0003300021220000021
计算参数B=bP;所述
Figure GDA0003300021220000022
为随机的基于素数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选择一个随机数
Figure GDA0003300021220000023
针对发送者身份集合W={ID1,ID2,…,IDw}中的其它发送者IDj,根据其它发送者IDj公布的公钥生成参数Zj,计算其它发送者IDj的公钥Yj=Zj+H1(IDj,Zj)Ppub,其中H3为抗碰撞的哈希函数,xs为用户IDs的私钥;
S15、发送者IDs选择一个随机数
Figure GDA0003300021220000024
计算公式
Figure GDA0003300021220000025
Figure GDA0003300021220000026
h为生成签密值的中间值,σs为发送者IDs的签密值,获得所有发送者的签密值σ={σ11,…,σw},计算公式f=t-σsxsmodq对发送者IDs的签密值进行隐藏,其中H3为抗碰撞的哈希函数,σs∈σ,f为隐藏发送者身份隐藏参数,xs为用户IDs的私钥;
S16、发送者IDs构造签密密文{σ,B,C,f,W,V},并对签密密文进行广播,完成签密操作。
本发明的有益效果是:每次广播通信时把发送者的身份藏在一个身份集合中,通信过程中需要用到发送者身份集合中所有身份的公钥,采用环签名方式进行签密,将发送者的真实身份隐藏起来,从而实现了发送者匿名,并且发送者集合会通过密文发送给接收者,所有接收者可以确认发送者是否处于可信集合。因此,本方法防止了广播通信时潜在的发送者身份信息泄露问题和确保发送者可信问题,保护了通信各方的隐私性,提高了多接收者签密方法的安全性。
在上述技术方案的基础上,本发明还可以做如下改进:
进一步,所述步骤S13包括:
计算公式B’i=bY’i,α’i=H2(W,V,B,B’i)和
Figure GDA0003300021220000031
获得发送给接收者ID’i的消息密文c’i;B’i和α’i为生成消息密文的中间值。
采用上述进一步方案的有益效果是:基于接收者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}为发送者合集;
S22、接收者ID’i根据所述签密密文{σ,B,C,f,W,V},验证等式
Figure GDA0003300021220000041
是否成立,当成立时,ID’i确定接受发送者IDs发送的明文消息;当不成立时,ID’i拒绝发送者IDs发送的明文消息
采用上述进一步方案的有益效果是:所有接收者ID’i都会接收到发送者IDs发送的签密密文,需要对发送者IDs的身份进行验证,可以确认发送者是否处于可信集合,进而根据验证结果确定是否接收解密密文后的明文消息,防止了广播通信时潜在的发送者身份信息泄露问题和确保发送者可信问题,并且保护了通信各方的隐私性。
进一步,所述步骤S21包括:
接收者ID’i接收到签密密文{σ,B,C,f,W,V}后,计算公式
Figure GDA0003300021220000042
Figure GDA0003300021220000043
Figure GDA0003300021220000044
获取明文消息,所述x’i为接收者ID’i的私钥,所述H2为抗碰撞的哈希函数,
Figure GDA0003300021220000045
Figure GDA0003300021220000046
为生成消息明文的中间值。
采用上述进一步方案的有益效果是:根据发送者IDs发送的{σ,B,C,f,W,V}中的计算得到的参数B,和接收者集合V和发送者集合W进行计算,进而根据计算结果对密文进行异或运算获取明文,保证对明文消息获取的准确性。
为了解决上述技术问题,本发明还提供一种多接收者签密方法,多接收者签密方法包括:
S41、发送者IDs选择一个随机数
Figure GDA0003300021220000047
计算参数B=bP;所述
Figure GDA0003300021220000048
为随机的基于素数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选择一个随机数
Figure GDA0003300021220000051
针对发送者身份集合W={ID1,ID2,…,IDw}中的其它发送者IDj,根据其它发送者IDj公布的公钥生成参数Zj,计算其它发送者IDj的公钥Yj=Zj+H1(IDj,Zj)Ppub,其中H3为抗碰撞的哈希函数,xs为用户IDs的私钥;
S45、发送者IDs选择一个随机数
Figure GDA0003300021220000052
计算公式
Figure GDA0003300021220000053
Figure GDA0003300021220000054
h为生成签密值的中间值,σs为发送者IDs的签密值,获得所有发送者的签密值σ={σ11,…,σ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};
S48、接收者ID’i根据所述签密密文{σ,B,C,f,W,V},验证等式
Figure GDA0003300021220000055
是否成立,当成立时,ID’i确定接受发送者IDs发送的明文消息;当不成立时,ID’i拒绝发送者IDs发送的明文消息。
进一步,所述步骤S41之前还包括:
S31、密钥生成中心选取大质数p,选择安全的椭圆曲线Ep(a,b),其中
Figure GDA0003300021220000061
在Ep(a,b)上选择一个点P作为生成元生成阶为q加法群G,其中所述
Figure GDA0003300021220000062
表示在基于大素数q构成的非零乘法群里随机选择;
S32、密钥生成中心选择一个密钥
Figure GDA0003300021220000063
作为主密钥,并计算公式Ppub=sP获得Ppub作为主公钥,将主密钥s安全保存;
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
S35、密钥生成中心随机选择
Figure GDA0003300021220000064
通过计算公式Zi=ziP和公式xi=zi+H1(IDi,Zi)smodq获得发送者和接收者的私钥xi和公钥生成参数Zi
S36、密钥生成中心将发送者和接收者的私钥xi和公钥生成参数Zi分别发送给发送者和接收者。
采用上述进一步方案的有益效果是:密钥生成中心生成密码系统参数,发送者和接收者注册,密钥生成中心为每个接收者和发送者生成签密公私钥;进而便于后续发送者进行签密,接收者进行解密的可靠性和安全性。
为了解决上述技术问题,本发明还提供一种发送端,发送端包括第一处理器和第一存储器;
所述第一存储器用于存储的一个或者多个计算机程序;
所述第一处理器用于用于执行所述第一存储器中存储的一个或者多个计算机程序,以实现上述的多接收者签密方法的步骤。
为了解决上述技术问题,本发明还提供一种接收端,接收端包括第二处理器和第二存储器;
所述第二存储器用于存储的一个或者多个计算机程序;
所述第二处理器用于用于执行所述第二存储器中存储的一个或者多个计算机程序,以实现上述的多接收者签密方法的步骤。
为了解决上述技术问题,本发明还提供一种多接收者签密系统,所述多接收者签密包括如上所述的发送端和如上所述的接收端,还包括密钥生成中心。
为了解决上述技术问题,本发明还存储介质,存储介质包括存储有一个或者多个计算机程序,所述一个或者多个计算机程序可被一个或者多个处理器执行,以实现如上述的多接收者签密方法的步骤,或以实现如上所述的多接收者签密方法的步骤,或实现如上所述的多接收者签密方法的步骤。
附图说明
图1为本发明一实施例提供的多接收者签密方法的流程图;
图2为本发明一实施例提供的多接收者签密方法的流程图;
图3为本发明一实施例提供的多接收者签密方法的流程图;
图4为本发明一实施例提供的发送端的结构示意图;
图5为本发明一实施例提供的接收端的结构示意图;
图6为本发明一实施例提供的多接收者签密系统的结构示意图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
名词解释。
z:可信的大整数;
q:可信的大素数,满足q>2z;
G:可信q阶加法循环群;
P:G上的生成元;
B:计算得到的参数;
s:系统主密钥;
Figure GDA0003300021220000081
随机的基于素数q的非零乘法群;
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为本发明实施例提供的一种多接收者签密方法的流程图,由发送端实现该多接收者签密方法,该多接收者签密方法包括:
S11、发送者IDs选择一个随机数
Figure GDA0003300021220000091
计算参数B=bP;
Figure GDA0003300021220000092
为随机的基于素数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选择一个随机数
Figure GDA0003300021220000093
针对发送者身份集合W={ID1,ID2,…,IDw}中的其它发送者IDj,根据其它发送者IDj公布的公钥生成参数Zj,计算其它发送者IDj的公钥Yj=Zj+H1(IDj,Zj)Ppub,其中H3为抗碰撞的哈希函数,xs为用户IDs的私钥;
S15、发送者IDs选择一个随机数
Figure GDA0003300021220000094
计算公式
Figure GDA0003300021220000095
Figure GDA0003300021220000096
h为生成签密值的中间值,σs为发送者IDs的签密值,获得所有发送者的签密值σ={σ11,…,σ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)和
Figure GDA0003300021220000101
获得发送给接收者ID’i的消息密文c’i;B’i和α’i为生成消息密文的中间值。基于接收者ID’i的公钥计算伪公钥B’i、通过抗碰撞的哈希函数对计算得到的参数B、伪公钥B’i和接收者集合V和发送者集合W进行计算,进而根据计算结果对明文消息M进行异或运算获取密文,其中明文消息M为比特串,保证便于接收者ID’i对发送者IDs的身份进行验证,同时保证对明文消息的安全性。
在本实施例中,步骤S15中,利用其它发送者的公钥,通过公式
Figure GDA0003300021220000102
Figure GDA0003300021220000103
计算得到发送者IDs的签密值,然后集合每个发送者签密值σ={σ11,…,σ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}为发送者合集;
S22、接收者ID’i根据签密密文{σ,B,C,f,W,V},验证等式
Figure GDA0003300021220000111
是否成立,当成立时,ID’i确定接受发送者IDs发送的明文消息;当不成立时,ID’i拒绝发送者IDs发送的明文消息。
在本实施例中,所有接收者ID’i都会接收到发送者IDs发送的签密密文,需要对发送者IDs的身份进行验证,可以确认发送者是否处于可信集合,进而根据验证结果确定是否接收解密密文后的明文消息,防止了广播通信时潜在的发送者身份信息泄露问题和确保发送者可信问题,并且保护了通信各方的隐私性。
需要说明的是,在本实施例中,步骤S21具体包括:
接收者ID’i接收到签密密文{σ,B,C,f,W,V}后,计算公式
Figure GDA0003300021220000112
Figure GDA0003300021220000113
Figure GDA0003300021220000114
获取明文消息M,x’i为接收者ID’i的私钥,H2为抗碰撞的哈希函数,
Figure GDA0003300021220000115
Figure GDA0003300021220000116
为生成消息明文的中间值。
本实施例还提供一种多接收者签密方法,如图3所示,该多接收者签密方法由签密系统实现,该多接收者签密方法包括:
S41、发送者IDs选择一个随机数
Figure GDA0003300021220000117
计算参数B=bP;
Figure GDA0003300021220000118
为随机的基于素数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选择一个随机数
Figure GDA0003300021220000121
针对发送者身份集合W={ID1,ID2,…,IDw}中的其它发送者IDj,根据其它发送者IDj公布的公钥生成参数Zj,计算其它发送者IDj的公钥Yj=Zj+H1(IDj,Zj)Ppub,其中H3为抗碰撞的哈希函数,xs为用户IDs的私钥;
S45、发送者IDs选择一个随机数
Figure GDA0003300021220000122
计算公式
Figure GDA0003300021220000123
Figure GDA0003300021220000124
h为生成签密值的中间值,σs为发送者IDs的签密值,获得所有发送者的签密值σ={σ11,…,σ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};
S48、接收者ID’i根据签密密文{σ,B,C,f,W,V},验证等式
Figure GDA0003300021220000125
是否成立,当成立时,ID’i确定接受发送者IDs发送的明文消息;当不成立时,ID’i拒绝发送者IDs发送的明文消息。
在本实施例中,步骤S43具体包括:计算公式B’i=bY’i,α’i=H2(W,V,B,B’i)和
Figure GDA0003300021220000131
获得发送给接收者ID’i的消息密文c’i
在本实施例中,步骤S47具体包括:接收者ID’i接收到签密密文{σ,B,C,f,W,V}后,计算公式
Figure GDA0003300021220000132
Figure GDA0003300021220000133
Figure GDA0003300021220000134
获取明文消息,x’i为接收者ID’i的私钥,H2为抗碰撞的哈希函数。
在本实施例中,步骤41之前还包括生成密码系统参数,发送者和接收者注册(用户注册),此过程中用户包括接收者和发送者,密钥生成中心为每个用户生成签密公私钥的过程,具体包括:
S31、密钥生成中心选取大质数p,选择安全的椭圆曲线Ep(a,b),其中
Figure GDA0003300021220000135
在Ep(a,b)上选择一个点P作为生成元生成阶为q加法群G,其中
Figure GDA0003300021220000136
表示在基于大素数q构成的非零乘法群里随机选择;
S32、密钥生成中心选择一个密钥
Figure GDA0003300021220000137
作为主密钥,并计算公式Ppub=sP获得Ppub作为主公钥,将主密钥s安全保存;
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
S35、密钥生成中心随机选择
Figure GDA0003300021220000138
通过计算公式Zi=ziP和公式xi=zi+H1(IDi,Zi)smodq获得发送者和接收者的私钥xi和公钥生成参数Zi
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选择一个随机数
Figure FDA0003300021210000011
计算参数B=bP;所述
Figure FDA0003300021210000012
为随机的基于素数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选择一个随机数
Figure FDA0003300021210000013
针对发送者身份集合W={ID1,ID2,…,IDw}中的其它发送者IDj,根据其它发送者IDj公布的公钥生成参数Zj,计算其它发送者IDj的公钥Yj=Zj+H1(IDj,Zj)Ppub,其中H3为抗碰撞的哈希函数,xs为用户IDs的私钥;
S15、发送者IDs选择一个随机数
Figure FDA0003300021210000014
计算公式
Figure FDA0003300021210000015
Figure FDA0003300021210000016
h为生成签密值的中间值,σs为发送者IDs的签密值,获得所有发送者的签密值σ={σ11,…,σw},计算公式f=t-σsxsmod q对发送者IDs的签密值进行隐藏,其中H3为抗碰撞的哈希函数,σs∈σ,f为发送者身份隐藏参数,xs为用户IDs的私钥;
S16、发送者IDs构造签密密文{σ,B,C,f,W,V},并对签密密文进行广播,完成签密操作。
2.根据权利要求1所述的多接收者签密方法,其特征在于,所述步骤S13包括:
计算公式B′i=bYi',α′i=H2(W,V,B,B′i)和
Figure FDA0003300021210000021
获得发送给接收者ID′i的消息密文c′i;B'i和α′i为生成消息密文的中间值。
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}为发送者合集;
S22、接收者ID′i根据所述签密密文{σ,B,C,f,W,V},验证等式
Figure FDA0003300021210000022
是否成立,当成立时,ID′i确定接受发送者IDs发送的明文消息;当不成立时,ID′i拒绝发送者IDs发送的明文消息。
4.根据权利要求3所述的多接收者签密方法,其特征在于,所述步骤S21包括:
接收者ID′i接收到签密密文{σ,B,C,f,W,V}后,计算公式
Figure FDA0003300021210000023
Figure FDA0003300021210000024
Figure FDA0003300021210000025
获取明文消息,所述x′i为接收者ID′i的私钥,所述H2为抗碰撞的哈希函数,
Figure FDA0003300021210000026
Figure FDA0003300021210000027
为生成消息明文的中间值。
5.一种多接收者签密方法,其特征在于,所述多接收者签密方法包括:
S41、发送者IDs选择一个随机数
Figure FDA0003300021210000028
计算参数B=bP;所述
Figure FDA0003300021210000029
为随机的基于素数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选择一个随机数
Figure FDA0003300021210000031
针对发送者身份集合W={ID1,ID2,…,IDw}中的其它发送者IDj,根据其它发送者IDj公布的公钥生成参数Zj,计算其它发送者IDj的公钥Yj=Zj+H1(IDj,Zj)Ppub,其中H3为抗碰撞的哈希函数,xs为用户IDs的私钥;
S45、发送者IDs选择一个随机数
Figure FDA0003300021210000032
计算公式
Figure FDA0003300021210000033
Figure FDA0003300021210000034
h为生成签密值的中间值,σs为发送者IDs的签密值,获得所有发送者的签密值σ={σ11,…,σ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};
S48、接收者ID′i根据所述签密密文{σ,B,C,f,W,V},验证等式
Figure FDA0003300021210000035
是否成立,当成立时,ID′i确定接受发送者IDs发送的明文消息;当不成立时,ID′i拒绝发送者IDs发送的明文消息。
6.根据权利要求5所述多接收者签密方法,其特征在于,所述步骤S41之前还包括:
S31、密钥生成中心选取大质数p,选择安全的椭圆曲线Ep(a,b),其中
Figure FDA0003300021210000041
在Ep(a,b)上选择一个点P作为生成元生成阶为q加法群G,其中所述
Figure FDA0003300021210000042
表示在基于大素数q构成的非零乘法群里随机选择;
S32、密钥生成中心选择一个密钥
Figure FDA0003300021210000043
作为主密钥,并计算公式Ppub=sP获得Ppub作为主公钥,将主密钥s安全保存;
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
S35、密钥生成中心随机选择
Figure FDA0003300021210000044
通过计算公式Zi=ziP和公式xi=zi+H1(IDi,Zi)smod q获得发送者和接收者的私钥xi和公钥生成参数Zi
S36、密钥生成中心将发送者和接收者的私钥xi和公钥生成参数Zi分别发送给发送者和接收者。
7.一种发送端,其特征在于,所述发送端包括第一处理器和第一存储器;
所述第一存储器用于存储的一个或者多个计算机程序;
所述第一处理器用于用于执行所述第一存储器中存储的一个或者多个计算机程序,以实现权利要求1-2所述的多接收者签密方法的步骤。
8.一种接收端,其特征在于,所述接收端包括第二处理器和第二存储器;
所述第二存储器用于存储的一个或者多个计算机程序;
所述第二处理器用于用于执行所述第二存储器中存储的一个或者多个计算机程序,以实现权利要求3-4任一项所述的多接收者签密方法的步骤。
9.一种多接收者签密系统,其特征在于,所述多接收者签密系统包括:如权利要求7所述的发送端和如权利要求8所述的接收端,还包括密钥生成中心。
10.一种存储介质,其特征在于,存储介质包括存储有一个或者多个计算机程序,所述一个或者多个计算机程序可被一个或者多个处理器执行,以实现如权利要求1至2中任一项所述的多接收者签密方法的步骤,或以实现如权利要求3至4中任一项所述的多接收者签密方法的步骤,或实现如权利要求5至6中任一项所述的多接收者签密方法的步骤。
CN202011184533.1A 2020-10-29 2020-10-29 多接收者签密方法、发送端、接收端、系统及存储介质 Active CN112350820B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 杭州云象网络技术有限公司 一种用于数字钱包的环签名隐私保护系统及方法

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