秘密资料下载方法

文档序号:6563985阅读:382来源:国知局
专利名称:秘密资料下载方法
技术领域
本发明是关于秘密信息下载的协定,尤其对于在非安全的通讯管道(比如网际网路)下载秘密金匙(privatekey)的状况。
金匙管理的功能对于电脑及网路安全而言是非常重要的。如何记得并保管秘密金匙,或甚至如个人的公开金匙(public key)对于很多需要安全的应用是必要的,通常对一个使用者而言如果没有任何辅助的设备,如晶片卡(IC card)而去记得如此长串的秘密金匙是很困难的,但藉由晶片卡(IC card)是必须有额外的花费,比如需要读卡机(IC cardreaders)以及其他系统的开发,并且使用者仍必须记得携带晶片卡(ICcard)。
1994年Novell所发展出来的Net Ware version 4目录服务(DirectoryService)功能中,也提供了金匙管理的功能,Net Ware version 4让使用者们能够藉由远端的伺服器下载他们的秘密金匙,这个协定不需要额外的硬件,就可以让使用者很方便地下载秘密金匙或甚至如个人的公开金匙,使用者只要记住自己的密码,能够藉由远端且支援这个协定伺服器以便取得他们的秘密资讯。
下面会简单介绍Net Ware version 4协定。在支援此协定的金匙伺服器(key server)储存有每一使用者的秘密金匙,任一公开金匙,或有需要的话连使用者的秘密资讯亦可。每一使用者,比如是“A”,有自己的密码Pa,通常是一个弱金匙(weak key),通常也容易被记忆。伺服器为使用者“A”选择一乱数‘SALT’,然后储存以下的信息{IDa,Xa=b(Pa,SALTa),SALTa,Z={SKa}Pa},其中h()为杂凑函数,比如使用SHA(Secure Hash Standard,安全标准杂凑函数),{SKa}Pa的意义为利用传统方式以Pa为加密金匙(encryptionkey)将信息Ska加密。而使用乱数‘SALT’的意义是为减少万一不同使用者选择同一个密码。
NetWare协定的目的在于让使用者“A”从金匙伺服器下载自己的受保护秘密金匙{SKa}Pa,这个协定(NetWare version 4)的步骤介绍如下1.A→SIDa2.S→ASALTa,rs,PKs其中rs为伺服器选择的整数乱数,PKs为伺服器的公开金匙,用在现代公开金匙基础下的加密系统,比如采用RSA(Rivest,Shamir,andAdleman)system系统。
3.A→SEPKS(Y,ra)其中为使用者选择的整数乱数,Y=h(Xa,rs),且EPKS(m)的意义为利用PKs为公开金匙将信息“m”加密。需注意的是使用者“A”在本步骤中需要使用自己的密码,然而使用自己的密码Pa为了安全的理由不会传送到伺服器。
4.S→A{zra}Y接下来使用者“A”针对{zra}Y解密,因为使用者“A”知道Y,Pa,以及ra。
Perlman-Kaufman也提出另一个协定,以让使用者们能够记住自己的密码由伺服器下载他们的秘密金匙但不需传送自己的密码到伺服器。其中有一个为Perlman-Kaufman四个步骤的协定如同上述所提到的NetWare velrsion 4协定,而Perlman-Kaufman又提出一种效率较NetWarevelrsion 4协定佳的两个步骤的协定,然而Perlman,Kaufman两个步骤的协定很容易遭到无法侦测到的线上密码猜测攻击(on-line passwardguessing attack)。
有关Perlman-Kaufman协定,请参考文章“R.Perlman and C.KaufrnanSecure password based protocol for downloading a private key,Proc.of the 1999 Network and Distributed System Security Symp.,theNDSS‘99,February 1999”本发明的目的在于发展一种改善秘密信息的下载方法,此新提出的协定较NetWare version 4协定有效率,且较Perlman-Kaufman两个步骤的协定更安全。
为了达成上述的目的,根据本发明在非安全的通讯管道中一种私密资料下载方法伺服端储存的信息包括使用者的ID;使用者的X’值,其中X’值是由包括以Pa及ID为参数的杂凑函数所求出,而Pa为使用者的密码被加密的秘密信息;伺服器的秘密金匙SKs;伺服器的公开金匙PKs,其中PKs=aSKsmod p,p是先宣告的质数,SKs与(p-1)互质;该私密资料下载方法包括下列步骤存使用者端计算下列值X值,以X’值使用的公式一致;V值,是以包括X值及PKsra值,并包括模P(module p operation)的运算所计算求出,其中ra为一个整数乱数;K值,由以包括Ra为参数的杂凑函数所计算出,其中Ra=aramodp;传送ID,V,K到伺服器端;在伺服器端从使用者端取得ID,V值以及K值后,计算下列值;计算Ra’值,Ra’=(PKsramod p)(SKs^-1),其中(SKs^-1)为SKsmodulo(P-1)的乘法反元素,而(PKsramod p)是藉由V值以及X’值所求出;以及如果K=K’则传送加密的秘密信息给使用者。
其中X=h(Pa,ID),h()为杂凑函数。
其中V=X+PKsramod p,因此PKsramod p能够被(V-X)所计算出来。
其中V=X+PKsramod p,因此PKsramod p能够被(V-X)所计算出来。
其中K=h(Ra),h()为杂凑函数。
其中a是模p的原根。
其中加密的秘密信息是由Pa所加密。
其中加密的秘密信息还被Ra所加密。
本发明一种伺服器检查使用者身份的方法,是用于在非安全的通讯管道中,伺服器端储存的信息包括使用者的ID;使用者的X’值,其中X’值是由包括以Pa及ID为参数的杂凑函数所求出,而Pa为使用者的密码;被加密的秘密信息;伺服器的秘密金匙SKs;伺服器的公开金匙PKs,其中PKs=αSKsmod p,p是先宣告的质数,SKs与(p-1)互质;其中伺服器收到由使用者所传送的下列值使用者ID;V值,是以包括X值及PKsra值,并包括模p(module p operation)的运算所计算求出,其中ra为一个整数乱数,且X值与X’值使用的公式一致;K值,由以包括Ra为参数的杂凑函数所计算出,其中Ra=αramodp;其特征在于,该伺服器检查使用者身份的方法包括下列步骤。
从使用者端取得ID,V值以及K值后,计算下列值;计算Ra’值,Ra’=(PKsramodp)(SKs^-1),其中(SKs^-1)为SKsmodulo(p-1)的乘法反元素,而(PKsramod p)是藉由V值以及X’值所求出;以及如果K=K’则使用者身份可被确认。
其中X=h(Pa,ID),h()为杂凑函数。
其中V=X+PKsramod p,因此PKsramod p能够被(V-X)所计算出来。
其中V=X+PKsramod p,因此PKsramod p能够被(V-X)所计算出来。
其中K=h(Ra),h()为杂凑函数。
其中a是模p的原根。
为进一步说明本发明的目的及功效,以下结合附图对本发明作一详细描述,其中

图1是根据本发明描述使用者端与伺服器端的方法步骤。
虽然协定可用于一般性下载秘密信息的状况,但在实施例中是以如同上述所讨论的先前技术一样,是以下载秘密金匙为例,一个根据本发明的两个步骤的秘密金匙下载方法介绍如下1.使用者→伺服器ID,V,K2.伺服器→使用者{Z}Ra请一并参考图1并参照下述的说明以了解本发明的方法步骤下面介绍的秘密信息下载方法使用者也是选择自己的密码Pa,但是乱数‘sALT’则不需要而以使用者自己的ID(身份辨识码)取代,伺服器在其安全的系统下储存以下的信息{ID,X’=h(Pa,ID),Z={SKu}Pa},其中h()为杂凑函数,比如使用SHA(Secure Hash Standard,安全标准杂凑函数);SKu使用者自己的秘密金匙;{SKu}Pa的意义为利用传统方式以Pa为加密金匙(encryption key)将信息SKu加密。
由于伺服器的设定是在协定开始应用且在安全的设定下之前,因此可假设伺服器的公开金匙(PKs)可先被取得,假设伺服器的公开金匙由如下的式子所得出PKs=aSKsmod p,其中p是先宣告的质数SKs是伺服器的秘密金匙且与(p-1)互质;a是模p的原根(primitive root modulo p),这个条件会使得当两个使用者自己的秘密金匙不相同时,则他们的公开金匙也会不同。
在使用者端步骤10计算X=h(Pa,ID).因为使用者知道自己的Pa及ID,所以X可被求出;步骤11选择一个整数乱数ra;步骤12计算PKsramod p,伺服器的公开金匙,PKs,可事先取得;步骤13计算V=X+PKsramod p;步骤14计算Pa=αramodp;步骤15计算K=h(Ra);and步骤16传送ID,V,K到伺服器。
在伺服器端伺服器从使用者端取得ID,V值以及K值后,伺服器开始执行下面的步骤步骤20计算Ra’=(V-X’)(SKs^-1),其中(SKs^-1)为SKs modulo(p-1)的乘法反元素(multiplicativeinverseof SKs modulo(p-1))。因为V-X’=PKsramod p=(αSKsmod p)ramod p=(αramod p)SKsmod p=RasKsmod p;本步骤所使用到的公式在数学领域是广泛被知道的,有关使用到的公式的详细说明可以参考“K.H.Rosen,Elementary numbertheory.Reading,Addison-Wesley,MA,1988”for details。
步骤21计算K’=h(Ra’)?;步骤22计算是否K=K’?;以及步骤23如果是的话则传送(Z)Ra.
步骤20—22是在检查使用者身份,如果K=K’则Ra=Ra’,因此代表X=X’,此意义即代表隐藏(embedded)于X的密码Pa是正确的。
在使用者端使用者端取得{Z}Ra后,使用者端开始执行下面的步骤步骤30从(Z)Ra解出得到Z,因为在步骤14为已知的;步骤31从Z解出得到秘密信息,因为使用者知道Pa。
虽然本发明是藉由实施例来解释,但需注意的是,上述仅为实施例,而非限制于实施例。有很多的变化或可能的修改但不脱离本发明基本架构,皆应为本专利所主张的权利范围,而应以专利申请范围为准。
一些简易的修改举例如下对于求出X’值或X值的唯一限制是使用包括以Pa及ID为参数的杂凑函数即可,只要求出X’值或X值使用的公式一致即可,比如X’值或X值可由公式“h(PaID)”求出。
当V值等于“X-PKsramod p”而非等于如实施例的“X+PKsramod p时候,则在步骤20,Ra’=(V+X’)(SKs^-1)。或者如果在步骤12计算(x+PKsra)mod p,而让V值等于“(X+PKsra)mod p”,则可由(V-X’)modp计算求出PKsramodp。
在步骤15,如果令K=h(Ra,ID),则步骤21K’=h(Ra,ID)。
权利要求
1.一种私密资料下载方法,用于在非安全的通讯管道中使用端与伺服端之间,伺服端储存的信息包括使用者的ID;使用者的X’值,其中X’值是由包括以Pa及ID为参数的杂凑函数所求出,而Pa为使用者的密码被加密的秘密信息;伺服器的秘密金匙SKs伺服器的公开金匙PKs,其中PKs=aSKsmod p,p是先宣告的质数,SKs与(p-1)互质;其特征在于,该私密资料下载方法包括下列步骤在使用者端计算下列值X值,以X’值使用的公式一致;V值,是以包括X值及PKsra值,并包括模P的运算所计算求出,其中ra为一个整数乱数;K值,由以包括Ra为参数的杂凑函数所计算出,其中Ra=aramodp;传送ID,V,K到伺服器端;在伺服器端从使用者端取得ID,V值以及K值后,计算下列值;计算Ra’值,Ra’=(PKsramod p)(SKs^-1),其中(SKs^-1)为SKsmodulo(P-1)的乘法反元素,而(PKsramod p)是藉由V值以及X’值所求出;以及如果K=K’则传送加密的秘密信息给使用者。
2.根据权利要求1所述的私密资料下载方法,其特征在于,其中X=h(Pa,ID),h()为杂凑函数。
3.根据权利要求1所述的私密资料下载方法,其特征在于,其中V=X+PKsramod p,因此PKsramod p能够被(V-X)所计算出来。
4.根据权利要求1所述的私密资料下载方法,其特征在于,其中V=X+PKsramod p,因此PKsramod p能够被(V-X)所计算出来。
5.根据权利要求1所述的私密资料下载方法,其特征在于,其中K=h(Ra),h()为杂凑函数。
6.根据权利要求1所述的私密资料下载方法,其特征在于,其中a是模p的原根。
7.根据权利要求1所述的私密资料下载方法,其特征在于,其中加密的秘密信息是由Pa所加密。
8.根据权利要求7所述的私密资料下载方法,其特征在于,其中加密的秘密信息还被Ra所加密。
9.一种伺服器检查使用者身份的方法,是用于在非安全的通讯管道中,伺服器端储存的信息包括使用者的ID;使用者的X’值,其中X’值是由包括以Pa及ID为参数的杂凑函数所求出,而Pa为使用者的密码;被加密的秘密信息;伺服器的秘密金匙SKs;伺服器的公开金匙PKs,其中PKs=αSKsmod p,p是先宣告的质数,SKs与(p-1)互质;其中伺服器收到由使用者所传送的下列值使用者ID;V值,是以包括X值及PKsra值,并包括模p(module p operation)的运算所计算求出,其中ra为一个整数乱数,且X值与X’值使用的公式一致;K值,由以包括Ra为参数的杂凑函数所计算出,其中Ra=αramodp;其特征在于,该伺服器检查使用者身份的方法包括下列步骤。从使用者端取得ID,V值以及K值后,计算下列值;计算Ra’值,Ra’=(PKsramod p)(SKs^-1),其中(SKs^-1)为SKsmodulo(p-1)的乘法反元素,而(PKsramod p)是藉由V值以及X’值所求出;以及如果K=K’则使用者身份可被确认。
10.根据权利要求9所述的伺服器检查使用者身份的方法,其特征在于,其中X=h(Pa,ID),h()为杂凑函数。
11.根据权利要求9所述的伺服器检查使用者身份的方法,其特征在于,其中V=X+PKsramod p,因此pKsramod p能够被(V—X)所计算出来。
12.根据权利要求9所述的伺服器检查使用者身份的方法,其特征在于,其中V=X+PKsramod p,因此PKsramod p能够被(V—X)所计算出来。
13.根据权利要求9所述的伺服器检查使用者身份的方法,其特征在于,其中K=h(Ra),h()为杂凑函数。
14.根据权利要求9所述的伺服器检查使用者身份的方法,其特征在于,其中a是模p的原根。
全文摘要
一种在非安全的通讯管道中私密资料下载方法,可让使用者们能够记住自己的密码由伺服器下载他们的秘密金匙,但使用者不需传送自己的密码到伺服器;这个协定包含两个步骤的传送但非常安全,在第一步骤是由使用者传送ID,V,K到伺服器端,在伺服器端收到这些值后,伺服器有办法确认使用者是否为真,其中伺服器端储存有以Pa及ID为参数的杂凑函数所运算的值。
文档编号G06F7/00GK1330311SQ0010929
公开日2002年1月9日 申请日期2000年6月21日 优先权日2000年6月21日
发明者颜嵩铭, 欧阳瑞临, 李逸元 申请人:财团法人资讯工业策进会
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1