在保密广播通信中用于分配加 密和解密密钥的方法和系统 本发明涉及一种在保密广播通信中分配解密密钥以限定接收器的技术。
常规地,作为保密广播通信技术,已经提出了某些系统。
例如,由S.J.Kent发表在IEEE Trans.Commun.,COM-29,PP.778-786(1981)的文章“用于一种广播方案的保密要求和协议”给出了已知的一种拷贝密钥方法。
该拷贝密钥方法是保密广播通信的基本系统,并且是常规的一对一个体密码通信的简单延伸。换句话说,在该方法中,一种密钥的拷贝分配给一个发送器和多个常规接收器。该发送器通过使用分配的拷贝密钥加密信息并发送加密信息。每一个常规接收器使用分配的拷贝密钥解密加密信息。
进一步,已知一种使用分配给每一个接收器的单个密钥分配公用密钥的技术。例如,在Lee,Tokiwa等的文章“使用多路复用和去复用方法地多地址通信,1986年加密和信息保密讨论会”中,给出了一种使用中国余数理论的信息序列的多路复用一去复用的密钥分配系统。此外,Mambo等发表在IEICE TRNS.FUNDAMENTALS,VOL.E77-A,No.8,1994年8月的文章“一种使用短信息的保密广播通信方法”中,也给出了这样的技术。
使用中国余数理论多路复用一去复用一个信息序列的系统进行下面的过程:(1)密钥产生过程:
对于接收器i(1≤i≤s),产生相对互为质数的s个整数g1,g2,…,gs(r≤s),并且事先将gi作为接收器i的密钥分配给第i个接收器。(2)加密过程:
多路复用的s项的信息序列表示为M1,M2,…Ms。发送器计算一个由:F=Σi=1kAiGiMimodG]]>发出的多路复用语句F并且广播它。这里,G,Gi和Ai定义如下:G=Πi=1kgi]]>
Gi=G/gi
AiGi≡1(mod gi)并且Ai是满足上面方程的最小整数。(3)解密过程:使用gi,接收器i通过下面的方程去复用来自F的Mi,
Mi=Fmod gi
这里,Mi是分配给接收器i的公用密钥。这样,根据该系统,拷贝密钥能够秘密地仅分配给限定的接收器。
其次,Mambo等发表在IEICE TRNS.FUNDAMENTALS,VOL.E77-A,No.8,1994年8月的文章“一种使用短信息的保密广播通信方法”给出的系统进行下面的过程。(1)密钥产生过程:
一个可信中心产生下面的信息:秘密密钥:
P=2p+1,Q=2q+1:质数(p,q:质数)
ei∈Z,0<ei<L(1≤i≤m)公共密钥:
g∈Z,0<g<L
N=PQVi=geimodN(1≤i≤m)]]>
对σ∈S,该中心计算s。满足:sσΣi=1keσ(i)≡1(modL)]]>并分配它作为一个接收器Uσ的秘密密钥。这里,该集合S定义为S={f|一对一映射f:A{1,2,…,k}→B={1,2…,m},m>k}。(2)密钥分配过程:
发送器随机选择一个整数r,并且,为拥有一个与限定的接收器公用的定义为:
K=grmodN的公用密钥K,,计算zi满足:
zi=virmodN (1≤i≤m)并且广播zi(1≤i≤m)。
接收器Uσ使用下面方程:K=(Πi=1kZσ(i))sσmodN]]>来计算公用密钥K。
在上述的使用中国余数理论通过多路复用分配密钥的传统方法中,顺序排列和发射用于各自接收器的公用密钥数据。这样,广播数据的长度随接收器的数量成比例地增加。因此,它不适合于对上百万或更多的接收器的通信,如卫星广播。
另一方面,根据上面提到文献,即Mambo等发表在IEICE TRNS.FUNDAMENTALS,VOL.E77-A,No.8,1994年8月的文章“一种使用短信息的保密广播通信方法”中描述的系统,可以缩短用于分配公用密钥的数据。然而,在该系统中,不可能在属于任何接收器组的限定的接收器之间公用密钥。
进一步,在所有的系统中,当有多个发送器时,接收器必须得到用于各自发送器的上面所描述的用户秘密密钥,并管理它们。
因此,本发明的一个目的是提出一个密钥分配系统,其中接收器仅使用一个秘密密钥从多个发送器接收传送的各个公用密钥。另一个目的是在这样的密钥分配系统中,使仅仅在任何发送器和任何接收器组之间共同拥有用于数据解密的公用密钥,以及即使当接收器的数量很大时缩短用于分配公用密钥的广播数据成为可能。
为实现上述目的,本发明提出了一种具有在包括所述多个发送器装置和所述多个接收器装置的通信系统中的多个发送器和多个接收器之间公共使用的保密广播通信的加密-解密密钥的密钥分配方法,其中:
在与所述发送器和所述接收器分开给出的可信中心装置中,产生并分配给规定的接收器第一密钥信息,它是所述多个发送器公用的并且作为在所述发送器和所述接收器之间共同使用的密钥,同时产生并分配给所述的发送器的作为在所述发送器和所述接收器之间共同使用的密钥的第二密钥信息;
在所述发送器装置中,使用从所述可信中心分配的第二密钥信息产生第三密钥信息,所述接收器使用该信息和所述第一密钥信息一起计算在广播通信中由上述发送器使用的加密-解密密钥,并将第三密钥信息发送给具有与所述发送器相同的密钥的所述接收器;并且
在接收器装置中,使用从所述可信中心分配的第一密钥信息和从所述发送器分配的第三密钥信息得到分配所述第三密钥信息的发送器所使用的用于广播通信的加密-解密密钥。
根据所给出的密钥分配方法,每一个接收器仅仅具有从可信中心分配的第一密钥信息作为用户秘密密钥是足够的。当得到一个新发送器的加密-解密密钥时,将不必接收新用户秘密密钥的分配。
详细地,本发明给出了一种密钥分配方法,其中在包括多个发送器装置和多个接收器装置以及一个可信中心装置的通信系统中,用于所述发送器执行的保密广播通信的加密-解密密钥被分配给接收器。包括:
一个步骤,其中,在可信中心装置中,产生,
ei∈Z(1≤i≤m)作为可信中心秘密密钥,并产生
tA∈Z作为发送器A的发送器登记密钥,并且,作为接收器秘密密钥,产生σA∈Skm和
sx(σx)∈Z(这里,当对于定义为
Skm={σ|一对一映射σ:A={1,2,Λ,k)→B={1,2,Λ,m),0<k<m}的集合Skm有σ,σ'∈Skm时,它被表示为:σ~σ′⇔σ(A)=σ′(A)]]>在Skm上“~”成为一个对等关系,导出一个表达式:Skm‾=Skm/~]]>),并且接收器秘密密钥σx,sx(σx)分配给接收器x;
一个步骤,其中,在发送器A装置中,产生发送器秘密密钥gA,LA和一个有限交换群GA满足:
gA∈GALA=ordGA(gA)]]>(这里,ordGA(g)]]>表示满足
gα=1(∈GA)的最小正整数),并且发送器秘密密钥gA发送到所述可信中心;
一个步骤,其中,在可信中心装置中,从可信中心秘密密钥ei,发送器登记密钥tA,和接收器秘密密钥sx(σx),σx计算接收器登记数据,sx(σx,A)=tAsx(σx)Σi=1keσx(i)]]>并且接收器登记数据sx(σx,A)发送到发送器A,并且由从发送器A接收的gA,可信中心秘密密钥ei,发送器登记密钥tA计算密钥分配数据:yAi=gAtAei(∈GA)(1≤i≤m)]]>并且该密钥分配数据yAi被发送到发送器A;
一个步骤,其中,在发送器A装置中,产生随机数r,r′,通过从所述可信中心接收的接收器登记数据sx(σx,A),发送器秘密密钥LA,和随机整数r′计算接收器登记密钥rx(σx,A)满足:
rx(σx,A)sx(σx,A)≡r′(modLA)该接收器登记密钥rx(σx,A)发送到接收器x;并且由从所述可信中心接收的密钥分配数据yrAi,和随机整数r计算定义为:
zAi=yrAi(∈GA)(1≤i≤m)的密钥分配数据并且密钥分配数据zAi广播给每一个接收器;和
一个步骤,其中,在接收器x的装置中,通过从发送器接收的接收器登记密钥rx(σx,A),密钥分配数据zAi和接收器秘密密钥σx,sx(σx)使用:KA=(Πi=1kzAσx(i))rx(σx,A)sx(σx)(∈GA)]]>计算一个用于广播通信的加密-解密密钥KA,同时使用:
KA=grr′A(∈GA)由发送器A产生该加密-解密密钥KA。
根据该密钥分配方法,接收器不必具有对于各个发送器不同的专用密钥。进一步,在保密广播通信中,即使当接收器的数目很大时,密钥分配数据的长度也能很短。进一步,在该密钥分配方法中,接收器秘密密钥对发送器是保密的并且由于只有可信中心秘密拥有发送器登记密钥,发送器秘密密钥更加可靠地对接收器保密。因此,改进了不正常情况下的保密性。
图1是根据本发明的一个实施例的密钥分配系统的方框图;
图2是根据本发明的第一实施例的可信中心一侧装置的方框图;
图3是根据本发明的第一实施例的发送器一侧装置的方框图;
图4是根据本发明的第一实施例的接收器一侧装置的方框图;
图5是在本发明的第一实施例中由密钥分配过程产生的信息流的图;
图6是根据本发明的第二实施例的接收器一侧装置的方框图;
图7是根据本发明的第五实施例的可信中心一侧装置的方框图;
图8是根据本发明的第五实施例的发送器一侧装置的方框图;和
图9是根据本发明的第五实施例的接收器一侧装置的方框图。
下面,将描述根据本发明的一个实施例的密钥分配系统。
首先,将描述第一实施例。
图1表示根据本发明的该实施例的密钥分配系统的结构。
如图所示,本发明包括一个可信中心一侧装置100,发送器一侧装置200,和接收器一侧装置300。这些装置通过通信线路400彼此相连。在该系统中可信中心一侧装置100是可信中心组织使用的一个且仅有一个的装置,同时该系统具有多个发送器一侧装置200和多个接收器一侧装置300。
图2表示可信中心一侧装置100的结构。
如图所示,可信中心一侧装置100包括一个随机数发生器101,一个质数发生器102,一个功率倍增器103,一个余数计算单元104,一个运算单元105,一个存储器106,和一个通信单元107。可信中心一侧装置100连接到接收器一侧的便携式装置306,该装置306传送给脱线接收器。
图3表示发送器一侧装置200的结构。
如图所示,发送器一侧装置200包括一个随机数发生器201,一个质数发生器202,一个功率倍增器203,一个余数计算单元204,一个运算单元205,一个存储器206,一个通信单元207,一个加密-解密单元208,一个电文鉴别单元209,和一个会计单元210。
图4表示接收器一侧装置300的结构。
如图所示,接收器一侧装置300包括一个功率倍增器301,一个余数计算单元302,一个运算单元303,一个存储器304,一个通信单元305,一个从可信中心脱线发送的接收器一侧便携式装置306,和一个电文鉴别单元308。
下面,将描述三个过程,也就是准备过程,密钥分配过程,和加密-解密过程。
首先,将描述准备过程。(1)准备过程(ⅰ)一个发送器A使用发送器一侧装置200的随机数发生器201,质数发生器202,功率倍增器203,余数计算单元204和运算单元205,来产生下面的密钥,并且仅仅使公共密钥对公众公开。
秘密密钥:
PA,QA:质数LA=lcm(ordPA(gA),ordQA(gA))]]>
gA∈Z,0<gA<NA
r,r′∈Z,0<r,r′<LA公共密钥:
NA(=PAQA)
秘密密钥存储在存储器206中。进一步,使用通信单元207将秘密密钥gA,LA段发送到可信中心。(ⅱ)可靠的可信中心使用可信中心一侧装置100中的运算单元105产生下面的信息。
可信中心密钥:
ei∈Z(1≤i≤m)
发送器A的发送器登记密钥:
tA∈Z,0<tA<LA
接收器x的秘密密钥:
sx(σx)∈Z,0<tA<LA
所有这些密钥与σx一起存储在存储器106中。
这里,对一个集合:
skm={σ|一对一映射σ:A={1,2,Λ,k)→B={1,2,Λ,m),0<k<m}当σ,σ'∈Skm时,它被表示为:σ~σ′⇔σ(A)=σ′(A)]]>这里,“~”成为Skm上的一个对等关系,并且Skm‾=Skm/~]]>
进—步,可信中心从存储器106中取出接收器秘密密钥sx(σx),将它与σx一起存储到接收器一侧便携式装置306中,并且将该装置传送到脱线接收器x。当然,它可以通过其它方式传送到接收器。
接着,将描述密钥分配过程。(2)密钥分配过程
图5表示在该密钥分配过程中可信中心,发送器,和接收器之间的信息流。(ⅰ)可信中心使用可信中心—侧装置100的余数计算单元104和运算单元105通过发送器A接收的LA,可信中心秘密密钥ei,σx,接收器秘密密钥sx(σx)和发送器登记密钥tA计算定义为:sx(σx,A)=tAsx(σx)Σi=1keσx(i)]]>的接收器登记密钥sx(σx,A),并通过通信单元107将其发送到发送器A。进一步,可信中心使用功率倍增器103,余数计算单元104和运算单元105通过从发送器A接收的gA,发送器A的发送器公共密钥NA,和可信中心公共密钥ei来计算发送器A的发送器密钥分配数据yAi:yAi=gAtAeimodNA(1≤i≤m)]]>并且通过通信单元107的方法将它发送到发送器A。(ⅱ)发送器A使用在发送器一侧装置200中的随机数发生器201产生随机整数r,r',并将它们存储在存储器206内。进一步,发送器A使用功率倍增器203,余数计算单元204和运算单元205通过这些随机整数r,r',它自己的密钥gA和它自己的公共密钥NA来计算定义为:
KA=grr'Amod NA的数据加密密钥KA并将它存储在存储器206内。然后,,为了使密钥KA与接收器x在一起,发送器A使用余数计算单元204和运算单元205通过它自己的密钥LA,随机数r,r′和接收器登记密钥sx(σx,A)来计算接收器x的接收器登记密钥rx(σx,A),满足:
rx(σx,A)sx(σx,A)≡r′(mod LA)并通过通信单元207将它发送到接收器。
进一步,发送器A使用发送器一侧装置200的功率倍增器203,余数计算单元204和运算单元205通过它自己公共密钥NA,和从可信中心接收的随机数r及yAi来计算定义为:
zAi=y′Aimod NA(1≤i≤m)的接收器密钥分配数据zAi由并通过通信单元207将其广播到接收器。
在上面的过程中,可信中心执行产生rx(σx,A)和zAi的过程的一部分,目的是一个,即保持接收器x的σx,接收器秘密密钥sx(σx)和发送器登记数tA对发送器A保密以便防止发送器A的不正常情况。(ⅲ)接收器x使用接收器一侧装置300中的功率倍增器301,余数计算单元302和运算单元303通过从接收器A接收的密钥分配数据zAi接收器登记密钥rx(σx,A),σx和从可信中心发送的接收器秘密密钥sx(σx)及对公共公开的发送器公共密钥NA计算表示为:KA=(Πi=1kzAσx(i))rx(σx,A)sx(σx)modNA]]>的数据加密密钥KA并将其存储在存储器304内。
通过上面描述的过程,发送器A和接收器x可以共同拥有密钥KA。简单地说,对其它所有发送器和其它所有接收器也能够共同拥有一个密钥。在这种情况下,每一个发送器广播的接收器密钥分配数据zAi对每一个接收器是相同的。
进一步,在上面描述的过程中,接收器x从发送器A接收密钥分配数据zAi和接收器登记密钥rx(σx,A)。在发送器A的发送器登记数tA作用下已经产生这些zAi和rx(σx,A),并且tA对接收器保密。这样,由于使用了上面描述的发送器登记数tA,对于接收器x来说通过从发送器A接收的密钥分配数据zAi和接收器登记密钥rx(σx,A)及发送器B广播的密钥分配数据zBi推导出另一个发送器B的数据加密密钥KB是非常困难的。
下面,将描述加密-解密过程。(3)加密-解密过程(ⅰ)发送器A利用在密钥分配过程中产生的公用密钥KA使用在发送器一侧装置200中的加密-解密单元208加密数据P。这时,发送器A使用通信单元207发出一个密码文本C=E(KA:P)到接收器。(ⅱ)接收器使用接收器一侧装置300中的通信单元305接收公共密钥C,并使用加密-解密单元307利用存储在存储器304内的公用密钥KA解密公共密钥C,以便得到原始数据。
以上是本发明的第一实施例。
在传统技术中,当一个发送器新进入—个密钥分配系统时,该发送器需要自己产生σx和接收器秘密密钥sx(σx)并且将它们发送到脱线接收器。另一方面,根据第一实施例的密钥分配系统,一个新进入系统的发送器产生发送器秘密密钥PA,QA,LA,gA和发送器公共密钥NA就已足够。进一步,一个接收器拥有的接收器秘密密钥对所有发送器是相同的。因此,当一个接收器希望从一个新发送器接收数据时,不需要得到新的接收器秘密密钥。
进一步,接收器登记密钥rx(σx,A)使其有可能与属于任何接收器组的接收器共同拥有用于与它们有关的数据加密和解密的公用密钥。即使当接收器的数量很大时,也不需要相应加长所广播的用于公用密钥分配的密钥分配数据ZAi。
在上面的过程中,可以有另外的选择,即发送器事先发送发送器秘密密钥LA给可信中心,并且在准备过程的步骤中,可信中心产生可信中心秘密密钥ei,发送器登记密钥tA,和接收器秘密密钥sx(σx)满足:
ei∈Z,0<ei<LA,(1≤i≤m)
tA∈Z,0<tA<LAsx(σx)∈Z,0<sx,σx<LA]]>并且,在密钥分配过程的步骤,可信中心由:sx(σx,A)=tAsx(σx)Σi=1keσx(i)modLA]]>通过发送器秘密密钥LA,可信中心秘密密钥ei,发送器登记密钥tA,和接收器秘密密钥sx(σx)计算接收器登记密钥sx(σx,A)。
下面,将描述本发明的第二实施例。
在本发明的第二实施例中,上面第一实施例的接收一侧便携式装置300如图6所示具有一个功率倍增器3064,一个余数计算单元3063,一个运算单元3061和一个存储器3062。进一步,在上述第一实施例的接收器一侧装置300中计算数据加密密钥KA的过程部分地在接收器一侧便携式装置306中进行。
也就是,在第二实施例中,(1)在准备过程步骤,可信中心在接收器一侧便携式装置306(例如IC卡(智能卡))中存储σx和接收器秘密密钥sx(σx),并且将它们发送到接收器x。
然后,(2)在密钥分配过程中,接收器x将存储在接收器一侧装置300中的存储器内的密钥分配数据zAi输出到接收器一侧便携式装置306。接着,在接收器一侧便携式装置306中,接收器x使用功率倍增器3064和余数计算单元3063通过σx,接收器秘密密钥sx(σx),密钥分配数据zAi和发送器公共密钥NA计算:ξx(σx,A)=(Πi=1kzAσx(i))sx(σx)modNA]]>并且输出计算结果ξx(σx,A)到接收器一侧装置300。
接着,接收器x使用接收器一侧装置300中的功率倍增器301,余数计算单元302和运算单元303通过输出到接收器一侧装置300的ξx(σx,A),存储在存储器304中的接收器登记密钥rx(σx,A),和发送器公共密钥NA由:KA=ξx(σx,A)rx(σx,A)modNA]]>计算数据加密密钥KA,并存储在存储器304内。
因此,可防止σx和接收器秘密密钥sx(σx)输出到接收器一侧便携式装置306的外面,从而防止被电子复制或类似方法所偷窃。
上面是本发明的第二实施例。
接着,将描述本发明的第三实施例。
本发明的第三实施例与上面所描述的第一实施例的不同之处是方程:
KA=grr′Amod NA中的r值在每一个短时间间隔内周期性地改变,并且周期性地广播通过使用改变的r得到的zAi用以更新在发送器一侧装置200中和接收器一侧装置300中计算的数据加密-解密密钥KA。
进一步,在该实施例中,r′的值对发送的数据是特有的以便识别发送器广播的数据。也就是,接收器x从发送器接收的用来解密确定的广播数据或广播数据集合的登记密钥rx(σx,A)对该广播数据是特有的。为了得到另一个广播数据或另一个广播数据集合,接收器x必须接收用于该广播数据或该广播数据集合的另一个rx(σx,A)。
以上是本发明的第三实施例。
接着,将描述本发明的第四实施例。
第四实施例与上面所描述的第一实施例的不同之处是进行接收器鉴别以便对具有与使用密钥KA加密并由发送器发送的收费数据P公用的公用密钥KA的接收器进行收费。
也就是,在本发明的第四实施例中,进一步进行下面的过程。(1)准备过程(ⅰ)可信中心使用可信中心一侧装置100中的运算单元105事先为接收器x产生号码UIDx,并且与接收器秘密密钥sx(σx)一起存储在接收器一侧便携式装置306中,并发送该装置。进一步UIDx存储在存储器106内,以便sx(σx)对应。(ⅱ)发送器A使用发送器一侧装置200中的运算单元205产生它自己的号码BIDA,并存储在存储器206内。发送器A使用通信单元207将BIDA发送给可信中心。(ⅲ)可信中心接收BIDA,发送器A的号码,在可信中心一侧装置100中使用通信单元107,并存储在存储器106内以便与发送器登记密钥tA相对应。(ⅳ)接收器x在接收器一侧装置300中使用鉴别单元308由接收器秘密密钥sx(σx)产生鉴别信息,并发送给发送器A。(ⅴ)发送器A使用发送器一侧装置200中的鉴别单元209确认鉴别信息。
作为鉴别方法,任何传统的已知鉴别方法都可以应用,其中只要接收器不知道sx(σx)鉴别就不起作用。然而,必须防止发送器知道接收器本身的专用密钥sx(σx)。
例如,接收器x的鉴别可以根据采用使用RSA算法的特征标记的方法(在R.L,Rivest,A.Shamir,L.Adelman发表在Commun.of the ACM,Vol.21,No.2,pp.120-126,1978中的文章“一种用于得到数字特征标记和公共密钥秘密系统的方法”中进行了描述)按如下步骤进行。(1)可信中心使用可信中心一侧装置100中的运算单元105为接收器x产生(yx,nx)满足:
s'xyx=1(mod lcm(px-1,qx-1))
nx=pxqx(px,qx:质数)并且事先将它们发送给发送器。这里,对于已经打开的函数π,s'x定义为s'x=π(sx(σx))。(2)接收器x使用接收器一侧装置300中的鉴别单元308利用一个单向散列函数h作为公共密钥计算广播数据W的一个散列值(h(w);0<h(w)<nx),并使用专用密钥s'x通过表达式:sgnx(h(W))=h(W)s′xmodnx]]>产生h(w)的—个特征标记,并且与数据发送请求一起使用通信单元305发送给发送器。(3)发送器使用发送器一侧装置200中的鉴别单元209确认:sgnx(h(w))=h(w)yx=h(w)(modnx)]]>被满足。
完成确认后,发送器A使用发送器一侧装置200中的通信单元207将它自己的号码BIDA和UIDx,接收器的号码发送给可信中心。
可信中心使用可信中心一侧装置100中的运算单元105通过发送器登记密钥tA和相应于分别接收的发送器号码BIDA和接收器号码UIDx的接收器秘密密钥sx(σx)计算接收器登记数据sx(σx,A),表示为:sx(σx,A)=tAsx(σx)Σi=1keσx(i)modLA]]>并将它发送给发送器A。
发送器使用发送器一侧装置200中的余数计算单元204和运算单元205通过从可信中心接收的接收器登记密钥sx(σx,A)计算满足:
rx(σx,A)sx(σx,A)≡r'(mod LA)的接收器登记密钥rx(σx,A),并使用通信单元207发送给接收器。这时,在由公用密钥KA加密的所要发送的数据(即,接收器要求发送器的数据)是可收费的情况下,发送器A通过会计单元210的方法对接收器x收费。
以上是本发明的第四实施例。
接着,将描述本发明的第五实施例。
本发明的第五实施例是对图1所示系统的相关技术描述中的拷贝密钥系统的扩展,它有多个发送器,多个接收器和一个可信中心。
图7所示为根据本发明第五实施例的可信中心一侧装置100的结构。如图所示,可信中心一侧装置100包括一个随机数发生器111,一个运算单元112,一个存储器113,和一个通信单元114。进一步,图8所示为根据本发明第五实施例的发送器一侧装置200的结构。如图所示,发送器一侧装置200包括一个随机数发生器211,一个运算单元212,一个加密-解密单元213,一个存储器214,一个通信单元215。进一步,图9所示为根据本发明第五实施例的接收器一侧装置300的结构,如图所示,接收器一侧装置300包括一个运算单元311,一个加密-解密单元312,一个存储器313,和一个通信单元314。
在该实施例中,首先,下面的过程是准备过程。(1)准备过程(ⅰ)可信中心使用可信中心一侧装置100中的随机数发生器111产生秘密密钥KO并存储在存储器113中。而且,可信中心将其分配给发送器和接收器。(ⅱ)发送器A使用发送器一侧装置200中的随机数发生器211产生发送器登记密钥BIDA,并且使用通信单元215将其发送给接收器。
其后,下面的过程是密钥分配过程。(2)密钥分配过程(ⅰ)发送器A使用发送器一侧装置200中的运算单元212通过秘密密钥KO和发送器登记密钥BIDA由适当的单向函数F计算一个公用密钥KA=F(KO,BIDA)。(ⅱ)接收器使用接收器一侧装置300中的运算单元312通过可信中心分配的秘密密钥KO和从发送器接收的发送器登记密钥BIDA由单向函数F计算一个公用密钥KA′=F(KO,BIDA)。(ⅲ)发送器A使用发送器一侧装置200中的随机数发生器211产生一个适当的整数r并使用通信单元215发送给接收器。进一步,发送器A通过整数r和公用密钥KA由适当的函数F′计算一个数据加密-解密密钥DK=F′(r,KA),并存储在存储器214内。(ⅳ)接收器使用接收器一侧装置300中的运算单元312通过从发送器A接收的整数r和公用密钥KA计算数据加密-解密密钥DK=F′(r,KA),并存储在存储器314内。
由密钥分配过程分配数据加密-解密密钥DK后,将进行如下所描述的加密-解密过程。(3)加密-解密过程(ⅰ)发送器A使用发送器一侧装置200中的加密-解密单元213通过数据加密-解密密钥DK解密所要传送的数据P,并使用通信单元215发送到接收器x。(ⅱ)接收器由接收器一侧装置300中的通信单元314接收已加密的发送数据P,并使用加密-解密单元312通过数据加密-解密密钥DK对它进行解密。
此外,在上面所描述的本发明的第五实施例中,对一个接收器来说具有一个单独的秘密密钥足以使其拥有相应的为多个发送器所公用的公用密钥。
接着,将描述本发明的第六实施例。
在本发明的第六实施例中,通过使用接收器的相应密钥的密码通信,发送器和接收器具有一个在它们之间公用的公用密钥。
根据该实施例的整个系统的结构,一个可信中心100,一个发送器一侧装置200,和一个接收器一侧装置300与上面所描述的本发明第五实施例相似。
在该实施例中,下面的过程是准备过程。(1)准备过程(ⅰ)可信中心使用可信中心一侧装置100中的随机数发生器111产生接收器x的秘密密钥sx,并发送到接收器。进一步,可信中心使用随机数发生器111来产生BIDA,发送器A的号码,并分配给发送器A和接收器x。(ⅱ)发送器A使用发送器一侧装置200中的随机数发生器211产生公用密钥KA。
下面,进行下面的过程作为密钥分配过程。(2)密钥分配过程(ⅰ)可信中心使用可信中心一侧装置100中的运算单元112计算一个对话密钥KAx,它用于接收器x和发送器A之间的对话并使用适当的单向函数F定义为KAx=F(sx,KA)。可信中心通过发送器A的号码BIDA,和接收器秘密密钥sx计算KAx,并存储在存储器113内。(ⅱ)接收器x使用接收器一侧装置300中的运算单元312通过发送器A的号码BIDA和它自己的秘密密钥sx由单向函数F计算KAx=F(sx,BIDA),并存储在存储器313内。(ⅲ)发送器A使用发送器一侧装置200中的加密-解密单元213由对话密钥KAx加密公用密钥KA来得到密钥分配数据KCx,并使用通信单元215将密钥分配数据KCx发送给接收器。进一步,发送器A使用随机数发生器211产生适当的整数r,并使用通信单元215将它发送给接收器。另外,发送器A使用运算单元212通过整数r和公用密钥KA由适当的函数F′计算一个数据加密-解密密钥DK=F′(r,KA),并存储在存储器214内。(ⅳ)接收器x从发送器A接收密钥分配数据KCx,并使用接收器一侧装置300中的加密-解密装置303来通过对话密钥KAx解密密钥分配数据KCx。接着,接收器x使用运算单元302通过解密的公用密钥KA和接收的整数r由函数F′计算数据加密-解密密钥DK=F′(r,KA),并存储在存储器303内。
当密钥分配过程完成数据加密-解密密钥DK的分配后,将进行下面所描述的加密-解密过程。(3)加密-解密过程(ⅰ)发送器A使用发送器一侧装置200中的加密-解密单元203加密与数据加密-解密密钥DK一起发送的数据P,并使用通信单元205发送给接收器x。(ⅱ)接收器x通过接收器一侧装置300中的通信单元305接收已加密的发送数据P。然后,接收器x使用加密-解密单元303由数据加密-解密密钥DK解密接收的数据P。
发送器A可以周期性地改变公用密钥KA的值以便周期性地改变数据加密-解密密钥DK的值。
此外根据在上面所描述的本发明的第六实施例,接收器使用一个单独的秘密密钥可以使其拥有相应的为多个发送器所公用的公用密钥。
接着,将描述本发明的第七实施例。
与上面所描述的第六实施例相似,在本发明的第七实施例中,发送器和接收器使用相应接收器的密钥通过密码通信在它们之间共同拥有的一个公用密钥。
根据该实施例的整个系统的结构,一个可信中心一侧装置100,一个发送器一侧装置200,和一个接收器一侧装置300与上面所描述的本发明第五实施例相似。
在该第七实施例中,下面的过程是准备过程。(1)准备过程(ⅰ)可信中心在可信中心一侧装置100中使用随机数发生器111和运算单元112根据适当的公开密钥密码系统E产生接收器x的专用密钥sx和公共密钥px并将sx发送到接收器。进一步,可信中心使用随机数发生器111来产生发送器A的号码BIDA,并发送给发送器A和接收器x。(ⅱ)发送器A使用发送器一侧装置200中的随机数发生器211产生公用密钥KA,并存储在存储器114内。
接着,进行下面的过程作为密钥分配过程。(2)密钥分配过程(ⅰ)发送器A使用发送器一侧装置100中的加密-解密单元213通过接收器公共密钥px和公用密钥KA由上面所述适当的公共密钥密码系统E计算一个密钥分配数据KCx=E(px,KA)。接着,发送器A使用通信单元215将KCx发送到接收器x。(ⅱ)接收器x使用接收器一侧装置300中的加密-解密单元313通过它自己的专用密钥sx加密从发送器A接收的密钥分配数据KCx,并将加密的公用密钥KA存储在存储器314内。(ⅲ)发送器A使用发送器一侧装置200中的随机数发生器211产生一个适当的整数r,并使用通信单元215将其发送给接收器x。进一步,发送器A使用运算单元212通过整数r和公用密钥KA由适当的函数F计算一个数据加密-解密密钥DK=F(r,KA),并存储在存储器214内。(ⅳ)接收器x使用接收器一侧装置300中的运算单元312通过从发送器接收的公用密钥KA和整数r由函数F计算数据加密-解密密钥DK=F(r,KA),并存储在存储器314内。
当密钥分配过程完成数据加密-解密密钥DK的分配后,将进行下面所描述的加密-解密过程。(3)加密-解密过程(ⅰ)发送器A使用发送器一侧装置200中的加密-解密单元213加密与数据加密-解密密钥DK一起发送的数据P,并使用通信单元213发送给接收器x。(ⅱ)接收器x通过接收器一侧装置300中的通信单元314接收已加密的发送数据P。然后,接收器x使用加密-解密单元312由数据加密-解密密钥DK解密数据P。(ⅲ)发送器A可以周期性地改变公用密钥KA的值以便改变数据加密-解密密钥DK。
此外根据在上面所描述的本发明的第七实施例,该接收器使用一个单独的秘密密钥可以使其拥有相应的为多个发送器所公用的公用密钥。
接着,将描述本发明的第八实施例。
本发明的第八实施例除了按下面描述的方法修改从发送器发送密钥分配数据KCx到接收器之外,与上面所描述的第六和第七实施例是相似的。
也就是,在该第八实施例中,发送器A将所有接收器的集合分为多个子集合。接着,在发送密钥分配数据Kci(1≤i≤n,n:接收器的号码)给接收器的过程中,发送器为上面所描述的发送器子集合分别分配通信信道,并通过发送器一侧装置200中的通信单元215将密钥分配数据Kci发送给接收器。
另一方面,任何接收器x都通过分配给它所属的子集合的通信信道使用接收器一侧装置300内的通信单元314接收密钥分配数据Kci。
上面描述了本发明的实施例。
上面所描述的每一个由可信中心一侧装置100,发送器一侧装置200,和接收器一侧装置300进行的过程都可以由运行描述执行相应过程的程序的计算机进行。在这种情况下,描述执行一个过程的程序可以存储在提供给每一台计算机的存储介质中。
如上面所描述的,根据本发明,一个接收器仅使用一个接收器密钥就可以接收多个发送器的相应公用密钥分配。
进一步,在此公开的一些发明中,在属于任何接收器组的任何发送器和接收器之间拥有公用的用于数据加密和解密的一个公用密钥是可能的。进一步,即使接收器的数量很大,为分配一个公用密钥使用短的广播通信数据来实现公用密钥分配也是可能的。