CN103297230A - 信息加解密方法、装置及系统 - Google Patents

信息加解密方法、装置及系统 Download PDF

Info

Publication number
CN103297230A
CN103297230A CN2012100436153A CN201210043615A CN103297230A CN 103297230 A CN103297230 A CN 103297230A CN 2012100436153 A CN2012100436153 A CN 2012100436153A CN 201210043615 A CN201210043615 A CN 201210043615A CN 103297230 A CN103297230 A CN 103297230A
Authority
CN
China
Prior art keywords
recipient
private key
identify label
pki
information
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.)
Granted
Application number
CN2012100436153A
Other languages
English (en)
Other versions
CN103297230B (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.)
China Mobile Communications Group Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
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 China Mobile Communications Group Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201210043615.3A priority Critical patent/CN103297230B/zh
Publication of CN103297230A publication Critical patent/CN103297230A/zh
Application granted granted Critical
Publication of CN103297230B publication Critical patent/CN103297230B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种信息加解密方法、装置及系统,用以提高发送方与接收方之间信息传输的安全性。其中,信息解密方法,包括:接收加密信息,所述加密信息由发送方从接收方的各个公钥中选择至少两个公钥对原始信息加密得到,其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,所述接收方的各个公钥根据接收方拥有的至少两个不同身份标识分别进行计算得到;并接收发送方对所述原始信息进行加密时,使用的至少两个公钥分别对应的身份标识;获得接收的各身份标识分别对应的私钥,使用获得的各身份标识分别对应的私钥对所述加密信息进行解密。

Description

信息加解密方法、装置及系统
技术领域
本发明涉及网络与信息安全技术领域,尤其涉及一种信息加解密方法、装置及系统。
背景技术
公钥基础设施(PKI,Public Key Infrastructure)是目前广泛应用的利用非对称加密技术建立的提供安全服务的基础设施,使用由可信证书机构颁发的公钥证书,能够为网络应用提供加密和数字签名等密码服务及所必需的密钥和证书管理体系。随着网络信息技术的发展,PKI技术得到了广泛的应用和发展,然而,PKI的证书管理比较复杂,如证书撤销、保存、发布和验证需要占用较多网络资源,限制了PKI在实时和低带宽环境中的应用。
为了弥补PKI技术证书管理复杂的缺陷,Shamir提出一种基于身份的公钥加密体制(IBE,Identity-based Encryption),2001年,Boneh和Franklin第一次提出完整有效的基于身份的加密算法。基于身份的公钥加密体制是一种用于身份认证以及点到点通信安全保护的公钥密码技术,该技术的基本思想是公钥可以是任何唯一的字符串,如Email地址、电话号码、身份证号码或其他标识。基于身份的公钥加密系统由一组用户和一个私钥生成器(PKG,Private KeyGenerator)组成。PKG生成主密钥和系统的公开参数,其中,主密钥由PKG持有,公开参数由PKG发布。用户的身份标识就是用户的公钥,私钥则需要向PKG申请,PKG使用主密钥和用户的身份标识生成用户私钥并通过安全信道传递给用户,用户可以使用私钥进行解密、签名等操作。IBE技术的优点是公钥与身份标识天然绑定,不需要类似传统PKI的证书发放过程,因此发送方只需获取接收方的身份标识即可向其发送加密消息,接收方利用自己的身份标识向PKG申请私钥,即可解密密文。
如图1所示,为现有技术中,基于IBE系统的信息发送示意图,假设发送方为Alice,接收方为Bob,Alice的身份标识为其Email地址Alicexx.com,则Alice的公钥就是Alicexx.com,Bob的身份标识为其Email地址Bobxx.com,则Bob的公钥就是Bobxx.com,同时,Alice和Bob预先分别向PKG申请私钥,以Bob申请私钥的流程为例进行说明,可以包括以下步骤:
S101、Bob向PKG申请私钥;
S102、PKG计算Bob对应的私钥;
S103、PKG与Bob建立安全的数据通道,将Bob对应的私钥发送给Bob。
Alice获取其对应的私钥的流程与步骤S101~步骤S103类似,这里不再赘述。
Bob可以利用该私钥解密其它用户发送给自己的加密信息,也可以对自己发送的数据进行数字签名,通常情况下,私钥申请过程只需要执行一次,之后私钥由用户保存。
Alice申请私钥流程可以参照步骤S101~步骤S103,这里不再赘述,当其他用户需要向Bob发送秘密消息时,只需要使用Bob的公钥Bobxx.com和一组PKG发布的公共参数即可实现加密,不需要专门获取Bob的证书。如当Alice需要向Bob发送秘密信息时,还可以包括以下步骤:
S104、Alice使用Bob的公钥Bobxx.com和PKG发布的公共参数对需要发送的信息进行加密后发送给Bob;
S105、Bob利用自身的私钥对Alice发送的信息进行解密得到相应的信息。
由上述描述可知,在IBE系统中,由于发送方使用接收方的一个身份标识对信息进行加密,如果攻击者盗用了接收方的该身份标识,可以通过重新申请的方式获取接收方的私钥,来解密发送方与接收方之间的秘密信息,从而降低了发送方与接收方之间信息传输的安全性。
发明内容
本发明实施例提供一种信息加解密方法、装置及系统,用以提高发送方与接收方之间信息传输的安全性。
本发明实施例提供一种信息解密方法,包括:
接收加密信息,所述加密信息由发送方从接收方的各个公钥中选择至少两个公钥对原始信息加密得到,其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,所述接收方的各个公钥根据接收方拥有的至少两个不同身份标识分别进行计算得到;并
接收发送方对所述原始信息进行加密时,使用的至少两个公钥分别对应的身份标识;
获得接收的各身份标识分别对应的私钥,使用获得的各身份标识分别对应的私钥对所述加密信息进行解密。
本发明实施例提供一种信息加密方法,包括:
在需要发送加密信息时,从接收方的各个公钥中选择至少两个公钥对原始信息进行加密得到加密信息,其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,所述接收方的各个公钥根据接收方拥有的多个身份标识分别进行计算得到;
将所述加密信息发送给接收方;并
将对所述原始信息进行加密时,使用的至少两个公钥分别对应的身份标识通知所述接收方。
本发明实施例提供一种信息解密装置,包括:
第一接收单元,用于接收加密信息,所述加密信息由发送方从接收方的各个公钥中选择至少两个公钥对原始信息加密得到,其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,所述接收方的各个公钥根据接收方拥有的多个身份标识分别进行计算得到;
第二接收单元,用于接收发送方对所述原始信息进行加密时,使用的至少两个公钥分别对应的身份标识;
解密单元,用于获得接收的各身份标识分别对应的私钥,使用获得的各身份标识分别对应的私钥对所述加密信息进行解密。
本发明实施例提供一种信息加密装置,包括:
加密单元,用于在需要发送加密信息时,从接收方的各个公钥中选择至少两个公钥对原始信息进行加密得到加密信息,其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,所述接收方的各个公钥根据接收方拥有的多个身份标识分别进行计算得到;
第一发送单元,用于将所述加密单元得到的加密信息发送给接收方;
第二发送单元,用于将对所述原始信息进行加密时,使用的至少两个公钥分别对应的身份标识通知所述接收方。
本发明实施例提供一种信息加密系统,包括密钥管理中心KMC,信息加密装置和信息解密装置,其中:
所述KMC,用于接收接收方发送的私钥申请请求,所述私钥申请请求中携带有所述接收方提供的各身份标识,根据接收的所述各身份标识分别确定各身份标识分别对应的私钥;
所述信息加密装置,用于在发送方需要发送加密信息时,从接收方的各个公钥中选择至少两个公钥对原始信息进行加密得到加密信息,其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,所述接收方的各个公钥根据接收方拥有的多个身份标识分别进行计算得到;以及将所述加密信息发送给信息解密装置;并将对所述原始信息进行加密时,使用的至少两个公钥分别对应的身份标识通知所述接收方;
所述信息解密装置,用于在对所述信息加密装置发送的加密信息进行解密时,获得接收的各身份标识分别对应的私钥,使用各身份标识分别对应的私钥对所述加密信息进行解密。
本发明实施例提供的信息加密方法,发送方在发送加密信息时,从接收方的至少两个公钥中选择至少两个公钥对原始信息进行加密,接收方的各个公钥根据接收方拥有的多个身份标识分别计算得到,并将加密使用的至少两个公钥分别对应的身份标识通知接收方,接收方在接收到加密信息之后,获得接收的各身份标识分别对应的私钥,并使用获得的私钥对加密信息进行解密,这样,增加了攻击者解密接收方加密信息的难度,即使攻击者通过非法手段获取到接收方的任一私钥,由于无法提供全部的私钥,而无法解密接收方的加密信息,从而,提高了发送方与接收方之间信息传输的安全性。
本发明实施例提供的信息解密方法,由于接收方接收到的加密信息,由发送方从接收方的至少两个公钥中选择至少两个公钥对原始信息加密得到,接收方的各个公钥根据接收方拥有的多个身份标识分别计算得到,这样,接收方在进行解密时,获得发送方使用的各身份标识分别对应的私钥,并使用获得的私钥进行解密,这样,增加了攻击者解密接收方加密信息的难度,若攻击者通过非法手段获取接收方的任一私钥时,由于无法获取接收方的全部私钥,而无法解密接收方的加密信息,从而,提高了发送方与接收方之间信息传输的安全性。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
图1为现有技术中,基于IBE系统的信息发送示意图;
图2为本发明实施例中,信息加密方法的实施流程示意图;
图3为本发明实施例中,用户A向KMC申请私钥的流程示意图;
图4为本发明实施例中,信息加密方法的实施流程示意图;
图5为本发明实施例中,信息发送流程示意图;
图6为本发明实施例中,信息解密装置的结构示意图;
图7为本发明实施例中,信息加密装置的结构示意图;
图8为本发明实施例中,信息加解密系统的结构示意图。
具体实施方式
本发明实施例提供一种基于身份的加解密方法、装置及系统,主要用于解决基于IBE系统的信息加解密方法每次只能使用一个身份标识的限制,以提高发送方与接收方信息传输的安全性。
本发明实施例提供的信息加解密方法、装置及系统,发送方可以同时使用接收方的多个公钥进行加密,接收方只有提供相应的所有私钥才能够解密消息,因此,发送方在加密信息时,可以指定接收方的多个公钥,只有接收方拥有发送方所指定的所有公钥对应的私钥时,才能够解密消息,发送方也可以指定多个接收方,同时利用每个接收方对应的私钥对原始信息进行加密,只有指定的所有接收方同时提供各自的私钥才能够解密发送方发送的加密信息。
以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明,并且在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
如图2所示,为本发明实施例提供的信息解密方法的实施流程示意图,包括以下步骤:
S201、接收加密信息;
该加密信息由发送方从接收方的各个公钥中选择至少两个公钥对原始信息加密得到,其中,接收方的至少两个公钥与接收方拥有的至少两个身份标识一一对应,且接收方的各个公钥根据接收方拥有的多个身份标识分别进行计算得到;较佳地,发送方在对原始信息进行加密时,还可以同时使用由密钥管理中心(KMC,Key Management Center)发布的公共参数进行加密,相应地,接收方在进行解密时除了提供相应的私钥以外,还需要提供KMC发布的公共参数。具体的,KMC可以按照以下过程确定公共参数:
KMC生成一个大素数p,在Zp域上选取一条椭圆曲线E和曲线上一个阶为素数q的基点P,由P生成一个循环群G1,另外需要选取一个双线性映射e:G1×G1→G2,其中,P称为循环群G1的生成元,循环群G1内的元素均为P的若干次方,G2是一个q阶子群。
选取s∈Z* q,计算Ppub=sP,其中s是系统主密钥,Ppub是系统公钥;
选取散列函数H1:{0,1}n→G1 *,H1用于将任意长度为n二进制串映射到循环群G1中一个非零元素;
选取散列函数H2:G2→{0,1}n,用于将G2上的一个元素映射为长度为n的二进制串;
KMC保存主密钥s,并发布公共参数为{q,P,G1,G2,e,Ppub,H1,H2}。
S202、接收发送方对所述原始信息进行加密时,使用的至少两个公钥分别对应的身份标识;
S203、获得接收的各身份标识分别对应的私钥,使用获得的各身份标识分别对应的私钥对加密信息进行解密。
其中,接收方的身份标识可以是Email地址、QQ号码、手机号码、飞信号码、身份证号码等能够唯一识别接收方身份的标识,针对每一个身份标识,接收方根据散列函数H1确定该身份标识对应的公钥,例如,若用户A拥有若干身份标识,分别以A1,A2,…Al表示,以QA1标识身份标识Al对应的公钥,则分别与这些身份标识对应的公钥依次为:QA1=H1(A1),QA2=H1(A2),......QA1=H1(Al)。
用户A可以使用这些身份标识向KMC申请私钥,KMC针对每一个身份标识,计算与这些身份标识对应的私钥,假设以dA1表示身份标识Al对应的私钥,则用户A所拥有的身份标识对应的私钥依次为:dA1=sQA1,dA2=sQA2,......,dA1=sQAl,KMC将用户A的身份标识对应的私钥发送给用户A,类似的,每个用户均可以向KMC申请与自己身份标识对应的私钥。
如图3所示,为用户A向KMC申请私钥的流程示意图,包括以下步骤:
S301、用户A向KMC发送私钥申请请求,该申请请求中携带有至少一个用户A所拥有的身份标识;
S302、KMC对接收到的用户A的身份标识进行验证,验证通过后,针对接收到的用户A的每一个身份标识,计算该身份标识对应的私钥;
具体的,可以按照以下步骤确定该身份标识对应的私钥(以A1为例):
步骤1、按照公式QA1=H1(A1)计算A1对应的公钥;
具体实施时,各身份标识对应的公钥也可以由用户A计算得到后发送给KMC。
步骤2、按照公式dA1=sQA1计算身份标识A1对应的私钥。
S303、KMC将确定出的、用户A的各身份标识对应的私钥通过安全的信道发送给用户A。
其中,用户A向KMC申请各身份标识对应的私钥的过程,可以在需要对接收到的加密信息进行解密时,根据发送方选择的至少两个公钥分别对应的身份标识,向KMC申请接收的各身份标识分别对应的私钥;也可以预先向KMC申请自己拥有的各身份标识分别对应的私钥,并将各身份标识对应的私钥进行存储,这样,当用户A需要对接收到的加密信息进行解密时,能够从预先存储的各身份标识对应的私钥中,查找发送方对原始信息加密时选择的至少两个公钥分别对应的身份标识对应的私钥。具体实施时,用户A可以针对每一身份标识分别向KMC申请该身份标识对应的私钥,也可以同时向KMC申请多个身份标识分别对应的私钥。由于身份标识与用户A的公钥一一对应,因此,针对用户A的任一身份标识,可以将该身份标识对应的私钥确定为与该身份标识对应的公钥对应的私钥,即用户A的公钥与用户A的私钥也是一一对应的。
基于上述分析,步骤203中,可以按照以下两种方式获得接收的各身份标识分别对应的私钥:
方式一
根据接收的发送方对原始信息进行加密时选择的至少两个公钥分别对应的身份标识,向KMC申请接收的各身份标识对应的私钥,具体包括以下步骤:
步骤1、向KMC发送私钥申请请求,该私钥申请请求中携带有接收的各身份标识;
步骤2、接收KMC分别根据接收的各身份标识确定出的各个私钥;
步骤3、将接收的各个私钥,确定为接收的各身份标识分别对应的私钥。
方式二
从预先存储的接收方提供的各个身份标识分别对应的私钥中,查找接收的各身份标识分别对应的私钥,其中,预先存储接收方提供的各个身份标识分别对应的各个私钥,具体包括以下步骤:
步骤1、预先向KMC发送私钥申请请求,该私钥申请请求中携带有接收方拥有的各个身份标识;
步骤2、接收KMC分别根据各个身份标识确定出的各个私钥;
步骤3、将接收的各个私钥,确定为接收方拥有的各个身份标识分别对应的私钥并存储。
这样,当发送方需要向用户A发送加密信息时,首先从用户A的多个公钥中选择至少两个公钥对原始信息进行加密,发送方对原始信息进行加密时,可以使用用户A的多个公钥的任意组合,加密后的加密信息与发送方使用的公钥有关,使用的公钥不同得到的密文也不同,用户A需要按照发送方加密时使用的公钥对密文解密。
基于上述分析,如图4所示,为本发明实施例中,信息加密方法的实施流程示意图,可以包括以下步骤:
S401、在需要发送加密信息时,从接收方的多个公钥中选择至少两个公钥对原始信息进行加密得到加密信息;
其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,且接收方的各个公钥根据接收方拥有的多个身份标识分别进行计算得到;较佳地,发送方在对原始信息进行加密时,还可以同时使用KMC发布的公共参数。
S402、将加密信息发送给接收方;
S403、将对原始信息进行加密时,使用的至少两个公钥分别对应的身份标识通知接收方。
例如,当发送方需要给用户A发送原始信息M时,发送方可以根据自身的业务需要或者安全需求,利用用户A的多个公钥进行对M加密,例如,若发送方要求用户A利用其声称的所有身份标识A1,A2,…Al时才能解密数据,则发送方使用用户A的身份标识A1,A2,…Al对应的公钥QA1,QA2,…QAl对M加密,具体过程如下:
步骤a1、记QA=QA1+QA2+…QAl=H1(A1)+H1(A2)+…H1(Al);
即发送方加密M时使用的用户A的公钥为QA1,QA2,…QAl
步骤b1、选择一个随机数r,r∈Zq *
步骤c1、计算密文C;
其中,
Figure BDA0000137589060000101
gA=e(QA,Ppub)。
 为了便于描述,记U=rP,
Figure BDA0000137589060000102
则密文C可以表示为C=<U,V>,用户A在接收到密文C后,可以利用相应的私钥,按照以下过程对密文C进行解密:
步骤a2、根据接收到的发送方对原始信息进行加密时使用的公钥分别对应的身份标识,分别调用与这些身份标识对应的私钥dA1,dA2,……dAl
步骤b2、根据公式对密文C进行解密;
步骤c3、确定解密后的结果即为原始信息M。
根据双线性映射的性质,可以验证上述加密数据的正确性:
H2(e(dA1+dA2+…+dAl,U))
=H2(e(sQA1+sQA2+…+sQAl,rP))
=H2(e(sH1(A1)+sH1(A2)+…+sH1(Al),rP))
=H2(e(sQA,rP))
=H2(e(QA,sP)r)
=H2(e(sQA,Ppub)r)
=H2(gr A)
因此,可以得到:
V &CirclePlus; H 2 ( e ( d A 1 + d A 2 + &CenterDot; &CenterDot; &CenterDot; + d Al , U ) )
= M &CirclePlus; H 2 ( g r A ) &CirclePlus; H 2 ( g r A )
= M
由此可知,用户A解密得到的信息即是发送发出的原始信息M。
为了更好地理解本发明,以下通过具体的实施例对本发明的实施过程进行说明。本发明有两种较佳的应用场景,以下分别进行说明。
应用场景一:秘密信息共享
若某公司总部需要给某分公司发送一条秘密信息M,并且该信息必须由分公司多名主管人员R1,R2,…,Rk一同协作才能恢复秘密信息M,任何其他单个或多个主管人员都无法恢复秘密信息。
在该应用场景中,发送方在加密时,只需指定需要共同解密秘密消息M的接收方R1,R2,…,Rk,使用这些接收方各自拥有的身份标识即可实现秘密共享,无需接收方的其他信息,也无需提前与接收方协商密钥。
具体流程如下:
步骤A、发送方指定需要共同解密秘密信息的接收方,使用这些接收方的身份标识R1,R2,…,Rk加密M;
具体的,发送方按照以下步骤对原始信息进行加密:
a)计算QA=QA1+QA2+…QAk=H1(R1)+H1(R2)+…H1(Rk);
b)选择一个随机数r,r∈Zq *
c)计算并发送密文C。
其中,
Figure BDA0000137589060000121
gA=e(QA,Ppub)。
步骤B、在接收到密文以后,接收方R1,R2,…,Rk需要同时提供各自的私钥,如果没有私钥,则需向KMC请求获取私钥。
步骤C、接收方R1,R2,…,Rk依次提供各自的私钥,执行解密操作。
记上述密文为C=<U,V>,解密过程如下:
a)调用与发送方加密时所使用的、相应身份标识对应的私钥dR1,dR2,…,dRk
b)计算原始信息M;
其中, M = V &CirclePlus; H 2 ( e ( d R 1 + d R 2 + &CenterDot; &CenterDot; &CenterDot; + d Rk , U ) ) ;
M即对C解密后的信息。
应用场景二;电子邮件即时通信应用中,发送秘密信息
由于Email地址或者即时通信号码(QQ,飞信)可以作为用户的身份标识,与用户具有天然的对应关系,因此安全邮件/即时通信是IBE系统的典型应用之一。
现有的基于IBE系统中,具体实现流程如下:
步骤一、用户A向用户B发送加密邮件,用户A使用用户B的公钥标识(如邮箱地址,bxxx.com),对需要发送的邮件进行加密,并发送;
步骤二、  用户B接收用户A发送的邮件,如果用户B没有获取私钥,用户B将向密钥管理中心KMC请求获取私钥;
步骤三、如果用户B已预先获取并保存了私钥,用户B将利用预先存储的私钥对接收到的邮件进行解密,获取邮件内容。
在此期间,用户B不需要与KMC进行认证,可以做到离线解密验证。
目前网络上出现数量众多的邮件诈骗,或者盗用他人QQ号码进行诈骗的案例,许多用户信以为真,被欺骗上当。采用传统的IBE技术,攻击者盗用用户B的Email地址即可通过重新申请私钥等方式获取与该Email地址对应的私钥,因此用户A即使采用IBE技术加密与用户B的通信信息,攻击者也可使用用户B的私钥解密通信内容。
利用本提案的技术方案,用户只需对通信对方的身份加以核实即可预防此种方式的诈骗行为。用户在发送邮件或即时通信消息时,指定通信对方另外的一个或多个身份标识,通信对方只有提供与身份标识相对应的私钥才可解密邮件或通信消息,从而实现对通信对方真实身份的认证。
例如,攻击者盗用用户A的邮箱(或QQ号码)向用户A的好友用户B发送诈骗消息,用户B在回复诈骗消息时,除了使用用户A的邮箱地址作为公钥之外,还可同时使用用户A的手机号码或飞信号码作为公钥加密消息。如果攻击者盗用了用户A的Email地址,那么可以通过重新申请的方式获取用户A的私钥,但无法提供与用户A其他身份标识如手机号码、飞信号码等对应的私钥,因此无法解密用户B回复的信息,从而提高了用户A和用户B之间通信的安全性。
具体流程如下:
步骤A、1.记用户A的Email地址为R1,手机号码为R2,类似的,用户A还有其他身份标识Rk,用户B在向A发送信息M时,同时使用用户A的多个身份标识R1,R2,…,Rk加密M;
具体的,发送方按照以下步骤对M进行加密:
a)计算QA=QA1+QA2+…QAk=H1(R1)+H1(R2)+…H1(Rk);
b)选择一个随机数r,r∈Zq *
c)计算并发送密文C。
其中,
Figure BDA0000137589060000131
gA=e(QA,Ppub)。
步骤B、用户A在接收到密文以后,用户A需要依次提供与身份标识R1,R2,…,Rk相对应的私钥,如果没有私钥,则需向KMC请求获取私钥。
步骤C、用户A利用与身份标识R1,R2,…,Rk相对应的私钥,执行解密操作。
记上述密文为C=<U,V>,解密过程如下:
a)依次调用与用户B加密时所使用的、身份标识对应的私钥dR1,dR2,…,dRk
b)计算原始信息M;
其中, M = V &CirclePlus; H 2 ( e ( d R 1 + d R 2 + &CenterDot; &CenterDot; &CenterDot; + d Rk , U ) ) ;
M即对C解密后的信息。
基于上述分析,如图5所示,为本发明实施例中信息发送流程示意图,假设发送方为Alice,接收方为Bob,Bob的身份标识为其Email地址Bobxx.com、手机号码139xxxxxxxx,利用散列函数H1对Bob的身份标识进行计算后可以得到Bob的两个公钥,假设分别为Q1和Q2,同时,Bob可以预先向KMC申请私钥,以Bob申请私钥的流程为例进行说明,可以包括以下步骤:
S501、Bob向KMC发送私钥申请请求,该私钥申请请求中携带有自身拥有的两个身份标识Bobxx.com和139xxxxxxxx;
S502、KMC针对身份标识Bobxx.com和139xxxxxxxx,分别计算Bob对应的两个私钥;
S503、KMC与Bob建立安全的数据通道,将Bob的两个身份标识分别对应的私钥发送给Bob。
具体实施中,Bob接收到私钥后进行保存,特别地,Bob也可以在需要对加密信息进行解密时,即时利用自己拥有的两个身份标识向KMC申请该另个身份标识分别对应的私钥。
当Alice需要向Bob发送秘密信息时,可以包括以下步骤:
S504、Alice同时使用Bob的两个公钥Q1和Q2,以及KMC发布的公共参数对需要发送的信息进行加密后发送给Bob,并通知Bob自己加密时所使用的两个公钥分别对应的身份标识;
S505、Bob根据Alice选择的两个公钥分别对应的身份标识,调用预先存储的该两个身份标识分别对应的私钥对Alice发送的信息进行解密得到相应的信息。
基于同一发明构思,本发明实施例中还提供了一种信息加解密装置及系统,由于这些装置及系统解决问题的原理与信息加解密方法相似,因此这些装置及系统的实施可以参见方法的实施,重复之处不再赘述。
如图6所示,为本发明实施例提供的信息解密装置的结构示意图,包括:
第一接收单元601,用于接收加密信息,该加密信息由发送方从接收方的多个公钥中选择至少两个公钥对原始信息加密得到,其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,且接收方的各个公钥根据接收方拥有的多个身份标识分别进行计算得到;
第二接收单元602,用于接收发送方对原始信息进行加密时,使用的至少两个公钥及分别对应的身份标识;
解密单元603,用于获得接收的各身份标识分别对应的私钥,使用获得的各身份标识分别对应的私钥对加密信息进行解密。
具体实施中,信息解密装置,还可以包括:
计算单元,用于利用预设算法分别对接收方拥有的至少两个身份标识进行计算,得到对应的各个公钥,该预设算法用于将任意二进制串映射为循环群中的一个非零元素。
具体实施中,解密单元603,可以包括:
发送子单元,用于向KMC发送私钥申请请求,该私钥申请请求中携带有接收的各身份标识;
接收子单元,用于接收KMC分别根据各身份标识确定出的各个私钥;
确定单元,用于将接收的各个私钥,确定为接收的各身份标识分别对应的私钥。
具体实施时,信息解密装置,还可以包括发送单元、第三接收单元和存储单元,其中:
发送单元,用于预先向KMC发送私钥申请请求,该私钥申请请求中携带有接收方拥有的各个身份标识;
第三接收单元,用于接收KMC分别根据所述各个身份标识确定出的各个私钥;
存储单元,用于将接收的各个私钥,确定为接收方拥有的各个身份标识分别对应的私钥并存储;
解密单元603,具体用于从存储单元预先存储的接收方提供的各个公钥分别对应的私钥中,查找接收的各身份标识分别对应的私钥,并使用查找到的各身份标识分别对应的私钥对加密信息进行解密。
如图7所示,为信息加密装置的结构示意图,包括:
加密单元701,用于在需要发送加密信息时,从接收方的多个公钥中选择至少两个公钥对原始信息进行加密得到加密信息,其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,且接收方的各个公钥根据接收方拥有的多个身份标识分别进行计算得到;
第一发送单元702,用于将加密单元701得到的加密信息发送给接收方;
第二发送单元703,用于将对原始信息进行加密时,使用的至少两个公钥分别对应的身份标识通知接收方。
如图8所示,为本发明实施例提供的信息加解密系统的结构示意图,包括KMC 801,信息加密装置802和信息解密装置803,其中:
KMC 801,用于接收接收方发送的私钥申请请求,该私钥申请请求中携带有该接收方拥有的各身份标识,根据接收的所述各身份标识分别确定该各身份标识分别对应的私钥;
信息加密装置802,用于在发送方需要发送加密信息时,从接收方的多个公钥中选择至少两个公钥对原始信息进行加密得到加密信息,其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,且接收方的各个公钥根据接收方拥有的多个身份标识分别进行计算得到;并将该加密信息发送给信息解密装置803;以及将对原始信息进行加密时,使用的至少两个公钥分别对应的身份标识通知接收方;
信息解密装置803,用于在对信息加密装置802发送的加密信息进行解密时,获得接收的各身份标识分别对应的私钥,使用获得的各身份标识分别对应的私钥对接收到的加密信息进行解密。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
本发明实施例提供的信息加密方法,发送方在发送加密信息时,从接收方的至少两个公钥中选择至少两个公钥对原始信息进行加密,接收方的各个公钥根据接收方拥有的多个身份标识分别计算得到,并将加密使用的至少两个公钥分别对应的身份标识通知接收方,接收方在接收到加密信息之后,获得接收的各身份标识分别对应的私钥,并使用获得的私钥对加密信息进行解密,这样,增加了攻击者解密接收方加密信息的难度,即使攻击者通过非法手段获取到接收方的任一私钥,由于无法提供全部的私钥,而无法解密接收方的加密信息,从而,提高了发送方与接收方之间信息传输的安全性。
本发明实施例提供的信息解密方法,由于接收方接收到的加密信息,由发送方从接收方的至少两个公钥中选择至少两个公钥对原始信息加密得到,接收方的各个公钥根据接收方拥有的多个身份标识分别计算得到,这样,接收方在进行解密时,获得发送方使用的各身份标识分别对应的私钥,并使用获得的私钥进行解密,这样,增加了攻击者解密接收方加密信息的难度,若攻击者通过非法手段获取接收方的任一私钥时,由于无法获取接收方的全部私钥,而无法解密接收方的加密信息,从而,提高了发送方与接收方之间信息传输的安全性。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (12)

1.一种信息解密方法,其特征在于,包括:
接收加密信息,所述加密信息由发送方从接收方的各个公钥中选择至少两个公钥对原始信息加密得到,其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,所述接收方的各个公钥根据接收方拥有的至少两个不同身份标识分别进行计算得到;并
接收发送方对所述原始信息进行加密时,使用的至少两个公钥分别对应的身份标识;
获得接收的各身份标识分别对应的私钥,使用获得的各身份标识分别对应的私钥对所述加密信息进行解密。
2.如权利要求1所述的方法,其特征在于,按照以下方法计算接收方的各个公钥:
利用预设算法分别对接收方拥有的至少两个身份标识进行计算,得到对应的各个公钥,所述预设算法用于将任意二进制串映射为循环群中的一个非零元素。
3.如权利要求2所述的方法,其特征在于,获得接收的各身份标识分别对应的私钥,包括:
向密钥管理中心KMC发送私钥申请请求,所述私钥申请请求中携带有接收的各身份标识;并
接收所述KMC分别根据所述各身份标识确定出的各个私钥;
将接收的各个私钥,确定为接收的各身份标识分别对应的私钥。
4.如权利要求2所述的方法,其特征在于,获得接收的各身份标识分别对应的私钥,包括:
从预先存储的接收方拥有的各身份标识分别对应的私钥中,查找接收的各身份标识分别对应的私钥;
其中,预先存储接收方拥有的各身份标识分别对应的各个私钥,包括:
预先向KMC发送私钥申请请求,所述私钥申请请求中携带有接收方拥有的各身份标识;
接收所述KMC分别根据所述各身份标识确定出的各个私钥;
将接收的各个私钥,确定为接收方拥有的各身份标识分别对应的私钥并存储。
5.一种信息加密方法,其特征在于,包括:
在需要发送加密信息时,从接收方的各个公钥中选择至少两个公钥对原始信息进行加密得到加密信息,其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,所述接收方的各个公钥根据接收方拥有的多个身份标识分别进行计算得到;
将所述加密信息发送给接收方;并
将对所述原始信息进行加密时,使用的至少两个公钥分别对应的身份标识通知所述接收方。
6.如权利要求5所述的方法,其特征在于,按照以下方法计算接收方的各个公钥:
利用预设算法分别对接收方拥有的至少两个身份标识进行计算,得到对应的各个公钥,所述预设算法用于将任意二进制串映射为循环群中的一个非零元素。
7.一种信息解密装置,其特征在于,包括:
第一接收单元,用于接收加密信息,所述加密信息由发送方从接收方的各个公钥中选择至少两个公钥对原始信息加密得到,其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,所述接收方的各个公钥根据接收方拥有的至少两个不同身份标识分别进行计算得到;
第二接收单元,用于接收发送方对所述原始信息进行加密时,使用的至少两个公钥分别对应的身份标识;
解密单元,用于获得接收的各身份标识分别对应的私钥,使用获得的各身份标识分别对应的私钥对所述加密信息进行解密。
8.如权利要求7所述的装置,其特征在于,所述装置,还包括:
计算单元,用于利用预设算法分别对接收方拥有的至少两个身份标识进行计算,得到对应的各个公钥,所述预设算法用于将任意二进制串映射为循环群中的一个非零元素。
9.如权利要求8所述的装置,其特征在于,所述解密单元,包括:
发送子单元,用于向密钥管理中心KMC发送私钥申请请求,所述私钥申请请求中携带有接收的各身份标识;
接收子单元,用于接收所述KMC分别根据所述各身份标识确定出的各个私钥;
确定单元,用于将接收的各个私钥,确定为接收的各身份标识分别对应的私钥。
10.如权利要求8所述的装置,其特征在于,还包括发送单元、第三接收单元和存储单元,其中:
所述发送单元,用于预先向KMC发送私钥申请请求,所述私钥申请请求中携带有接收方拥有的各个身份标识;
第三接收单元,用于接收所述KMC分别根据所述各个身份标识确定出的各个私钥;
所述存储单元,用于将接收的各个私钥,确定为接收方拥有的各个身份标识分别对应的私钥并存储;
所述解密单元,具体用于从所述存储单元预先存储的接收方拥有的各个身份标识分别对应的各个私钥中,查找接收的各身份标识分别对应的私钥,并使用查找到的各身份标识分别对应的私钥对所述加密信息进行解密。
11.一种信息加密装置,其特征在于,包括:
加密单元,用于在需要发送加密信息时,从接收方的各个公钥中选择至少两个公钥对原始信息进行加密得到加密信息,其中,接收方拥有的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,所述接收方的各个公钥根据接收方拥有的多个身份标识分别进行计算得到;
第一发送单元,用于将所述加密单元得到的加密信息发送给接收方;
第二发送单元,用于将对所述原始信息进行加密时,使用的至少两个公钥分别对应的身份标识通知所述接收方。
12.一种信息加解密系统,其特征在于,包括密钥管理中心KMC,信息加密装置和信息解密装置,其中:
所述KMC,用于接收接收方发送的私钥申请请求,所述私钥申请请求中携带有所述接收方拥有的各身份标识,根据接收的所述各身份标识分别确定各身份标识分别对应的私钥;
所述信息加密装置,用于在发送方需要发送加密信息时,从接收方的各个公钥中选择至少两个公钥对原始信息进行加密得到加密信息,其中,接收方的各个公钥分别与接收方拥有的至少两个不同身份标识一一对应,所述接收方的各个公钥根据接收方拥有的多个身份标识分别进行计算得到;以及将所述加密信息发送给信息解密装置;并将对所述原始信息进行加密时,使用的至少两个公钥分别对应的身份标识通知所述接收方;
所述信息解密装置,用于在对所述信息加密装置发送的加密信息进行解密时,获得接收的各身份标识分别对应的私钥,使用各身份标识分别对应的私钥对所述加密信息进行解密。
CN201210043615.3A 2012-02-22 2012-02-22 信息加解密方法、装置及系统 Active CN103297230B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210043615.3A CN103297230B (zh) 2012-02-22 2012-02-22 信息加解密方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210043615.3A CN103297230B (zh) 2012-02-22 2012-02-22 信息加解密方法、装置及系统

Publications (2)

Publication Number Publication Date
CN103297230A true CN103297230A (zh) 2013-09-11
CN103297230B CN103297230B (zh) 2016-09-07

Family

ID=49097588

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210043615.3A Active CN103297230B (zh) 2012-02-22 2012-02-22 信息加解密方法、装置及系统

Country Status (1)

Country Link
CN (1) CN103297230B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104270380A (zh) * 2014-10-15 2015-01-07 叶涛 基于移动网络和通信客户端的端到端加密方法和加密系统
CN105743646A (zh) * 2016-02-03 2016-07-06 四川长虹电器股份有限公司 一种基于身份的加密方法及系统
CN105897416A (zh) * 2016-06-29 2016-08-24 邓月霞 一种基于标识密码系统的前向端到端安全即时通信方法
CN106302452A (zh) * 2016-08-15 2017-01-04 北京信安世纪科技有限公司 数据加密和解密方法和装置
CN107147636A (zh) * 2017-05-03 2017-09-08 北京小米移动软件有限公司 邮件传输方法及装置
CN107171804A (zh) * 2017-05-16 2017-09-15 歌尔科技有限公司 一种数据传输方法
CN107360181A (zh) * 2017-08-02 2017-11-17 成都蓝码科技发展有限公司 一种基于标识密码的数据加密系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1980123A (zh) * 2005-11-30 2007-06-13 中国科学院研究生院 基于ibe的pki系统的实现方法及其密钥管理装置
CN101753311A (zh) * 2010-01-14 2010-06-23 杨筑平 信息保密与身份认证方法和数字签名程序
CN101860796A (zh) * 2010-05-14 2010-10-13 南京邮电大学 一种抗同谋攻击的网络组播信息加密方法
CN101882996A (zh) * 2010-05-28 2010-11-10 南京邮电大学 一种基于身份的分布式系统中信息加密与解密的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1980123A (zh) * 2005-11-30 2007-06-13 中国科学院研究生院 基于ibe的pki系统的实现方法及其密钥管理装置
CN101753311A (zh) * 2010-01-14 2010-06-23 杨筑平 信息保密与身份认证方法和数字签名程序
CN101860796A (zh) * 2010-05-14 2010-10-13 南京邮电大学 一种抗同谋攻击的网络组播信息加密方法
CN101882996A (zh) * 2010-05-28 2010-11-10 南京邮电大学 一种基于身份的分布式系统中信息加密与解密的方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104270380A (zh) * 2014-10-15 2015-01-07 叶涛 基于移动网络和通信客户端的端到端加密方法和加密系统
CN105743646A (zh) * 2016-02-03 2016-07-06 四川长虹电器股份有限公司 一种基于身份的加密方法及系统
CN105743646B (zh) * 2016-02-03 2019-05-10 四川长虹电器股份有限公司 一种基于身份的加密方法及系统
CN105897416A (zh) * 2016-06-29 2016-08-24 邓月霞 一种基于标识密码系统的前向端到端安全即时通信方法
CN105897416B (zh) * 2016-06-29 2019-03-05 邓月霞 一种基于标识密码系统的前向端到端安全即时通信方法
CN106302452A (zh) * 2016-08-15 2017-01-04 北京信安世纪科技有限公司 数据加密和解密方法和装置
CN107147636A (zh) * 2017-05-03 2017-09-08 北京小米移动软件有限公司 邮件传输方法及装置
CN107171804A (zh) * 2017-05-16 2017-09-15 歌尔科技有限公司 一种数据传输方法
CN107171804B (zh) * 2017-05-16 2019-12-03 歌尔科技有限公司 一种数据传输方法
CN107360181A (zh) * 2017-08-02 2017-11-17 成都蓝码科技发展有限公司 一种基于标识密码的数据加密系统及方法

Also Published As

Publication number Publication date
CN103297230B (zh) 2016-09-07

Similar Documents

Publication Publication Date Title
CN109587132B (zh) 一种基于联盟链的数据传递方法及装置
CN105743646B (zh) 一种基于身份的加密方法及系统
CN101789865B (zh) 一种用于加密的专用服务器及加密方法
US20110145576A1 (en) Secure method of data transmission and encryption and decryption system allowing such transmission
US20190207757A1 (en) Method for exchanging keys authenticated by blockchain
CN104767612B (zh) 一种从无证书环境到公钥基础设施环境的签密方法
CN103297230B (zh) 信息加解密方法、装置及系统
CN105554031B (zh) 加密方法、加密装置、解密方法、解密装置和终端
CN103684794A (zh) 一种基于des、rsa、sha-1加密算法的通信数据加解密方法
CN101720071A (zh) 基于安全sim卡的短消息两阶段加密传输和安全存储方法
CN106533656B (zh) 一种基于wsn的密钥多层混合加/解密方法
CN104767611B (zh) 一种从公钥基础设施环境到无证书环境的签密方法
CN104200154A (zh) 一种基于标识的安装包签名方法及其装置
CN103731270A (zh) 一种基于bss、rsa、sha-1加密算法的通信数据加解密方法
CN112055022A (zh) 一种高效率高安全性的网络文件传输双重加密方法
CN105897416B (zh) 一种基于标识密码系统的前向端到端安全即时通信方法
CN103312506A (zh) 接收者身份匿名的多接收者签密方法
CN102164125A (zh) 基于asgka协议的安全通信系统及方法
CN104519071A (zh) 一种具有选择和排除功能的群组加解密方法及系统
CN109104271A (zh) 一种数字签名的方法、装置和系统
CN101710879A (zh) 一种新型的基于身份的保密邮件转发系统
CN106453253B (zh) 一种高效的基于身份的匿签密方法
CN106850233B (zh) 一种多机构可外包的电子合同签署和管理方法
CN114095161A (zh) 一种支持等式测试的身份基可穿刺加密方法
CN103532709A (zh) 一种ibe密码装置及数据加解密方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant