移动通信系统用户认证方法

文档序号:7963857阅读:476来源:国知局
专利名称:移动通信系统用户认证方法
技术领域
本发明涉及移动通信领域,具体涉及移动通信系统的网络安全。
背景技术
第二代、第三代移动通信系统采用的是基于私钥体制的用户认证方案,虽然私钥体制有速度快、代价低的优点,但是它要求用户和网络中心必须预先共享一个共同的密钥,这使系统安全性降低,同时,随着移动用户量的增加,这种方案也带来了密钥的分配与管理问题。利用公钥体制来构造用户认证的方案,它不要求通信双方实现共享任何秘密信息,因而可以简化密钥的管理问题。国内外许多学者相继设计了许多基于公钥体制的移动通信系统用户认证方案。诸如在2002年的《通信学报》第23期11卷118-121页,王晓明,常祖领,陈鲁生的《适用于数字移动通信系统的用户认证方案》一文中提出了基于Schnorr签名的适用于数字移动通信系统中的用户身份认证方案,但该方案存在以下不足方案的整体安全性基于Schnorr签名,安全性不高;计算量较大,不适用于移动通信终端的安全认证。

发明内容
本发明针对现有技术的上述不足,旨在设计一种适合于移动通信系统的计算量小,安全性高的公钥认证方案。由此提出了一种基于ElGamal签名体制的认证方法,并且大量计算量由网络方承担,移动终端部分只承担部分验证工作,减少了终端负担。
本发明解决上述技术问题的技术方案是,在网络中心选择参数并确定网络端公钥,并向用户公开公钥knp及所选择的参数大素数p、生成元g、单向杂凑函数h;网络端建立算法模块及比较判断模块;用户端选择随机数确定用户端公钥kup;网络中心根据用户公钥为用户建立用户身份标识ID,并确定网络中心数字签名s及其伴随参数r;并将ID、s、r发送到用户端,用户端进行网络身份验证;在网络中心建立以数字签名S相关的数据库;用户端选取参数调用算法模块进行预计算,确定用户端验证参数c;采用挑战、响应方式进行认证。
用户向网络中心发送入网请求,网络中心验证网络中心数字签名及用户选择随机数并保存会话密钥;用户端计算用户签名b,将用户签名发送到网络中心,并根据用户签名对网络进行验证;用户身份认证包括网络中心根据用户签名查询数据库中用户端公钥kup,计算用户特征值e及签名伴随参数r,对用户进行验证,确定是否是合法用户。
该方法采用基于ElGamal签名的公钥认证体系,通过对认证过程的改进,降低计算复杂度,使得用户端的计算量得以降低,网络的安全性进一步提高,满足移动通信系统用户安全认证的要求。


图1所示为网络中数据传输的流程图具体实施方式
ElGamal签名体制是Rabin体制的一种变型。方案的安全性基于求离散对数的困难性。
下面结合附图对本发明的技术方案加以详细说明,图1所示为网络中数据传输的流程图,该认证方法具体包括如下步骤
首先对系统进行初始化,包括选择网络中心参数和用户参数,在网络中心为用户建立用户身份标识ID、建立算法模块、建立比较判断模块,选择秘密随机数,并由此秘密随机数生成公钥。
(1)网络中心建立相应算法模块及比较判断模块,选择参数计算网络公钥knp。网络中心建立公钥计算等算法模块,对于密钥x,X∈zp*;]]>有y=gxmodp为公钥。选择一个大素数p,该大素数可使在群Zp中求解离散对数为困难问题,在Zp中乘法群Zp*的一个生成元或本原元素为g,选择一个安全的单向杂凑函数h。在网络中心选取一随机数kns作为私钥,使其满足kns∈Zp*;]]>调用算法模块中密钥计算公式knp=gknsmodp]]>得到网络公钥knp,并向用户公开该网络中心参数p,g,h,knp。
(2)用户端选择参数并计算用户公钥kup。用户选择随机数kus作为用户私钥,该私钥满足kus∈Zp*;]]>用户端发送请求,调用密钥算法模块,通过公式kup=gkusmodp]]>计算得到用户公钥kup,并将其发送到网络中心。
(3)网络中心根据收到的用户公钥为用户建立用户身份标识ID,并对其进行签名。选择秘密随机数k∈Zp*,]]>调用网络中心算法模块及相关参数,根据公式r=gkmod p,e=h(ID,kup,r),s=(e-kns)k-1mod(p-1)计算网络中心数字签名s、签名伴随值r、用户特征值e,将s,ID,r发送回用户。
(4)用户进行身份验证,用户端验证所收参数是否为需要加入的网络发。用户端收到网络中心发送回来的签名验证参数,在用户端进行身份验证,调用比较判断模块,验证所接收到的参数是否为用户请求入网的网络中心所发,若等式gh(ID,kup,r)=knprsmodp]]>成立,则发送参数的网络为用户请求的网络,用户端接收网络中心发送的数字签名s,否则拒绝接收s。
(5)根据网络中心数字签名s在网络中心建立数据库。网络中心建立与s相关的数据库,根据s的取值在数据库中建立参数列表,建立数字签名s与参数kup,r,e的一一对应列表。
当系统初始化完成后,在网络中心数据库存储器中保存有参数kns、knp、kup、s、ID、r、e,用户端在存储器RAM中保存参数knp、kup、s、kus。
2、用户端建立算法模块,选取参数进行预计算。用户选取小于p的随机数x、d1、d2,调用计算模块,根据公式c=(d1Pd2Ps)knpxkusmodp]]>(符号“P”表示数字的级联)计算验证参数c。每次入网前都必须重新选取x、d1、d2,每次验证使用不同参数,有效保证了网络和用户的安全性。
3、认证阶段,采用挑战、响应方式进行网络及用户双方认证。
如图1所示为认证过程中网络数据传输的流程图。
(1)用户向网络中心发送入网请求,并将用户公钥kup、用户端选择的随机数x、以及计算出的验证参数c发送到网络中心;(2)网络中心验证网络中心数字签名s,建立与验证参数相关的数字级联,并保存会话密钥。网络中心收到用户入网请求,启动算法模块,根据网络中心私钥及用户的公钥,调用公式(d1Pd2Ps)=ckup-xknsmodp,]]>并将用户端发送来的参数kup、c代入此公式计算与之对应的参数s、d1、d2。启动比较判断模块,调用公式gh(ID,kup,r)=knprsmodp]]>对上述参数进行验证,如等式成立,表明网络端收到的是请求入网用户发送的参数。网络中心选取随机数t,取值t满足条件1≤t≤2q(q≥72),建立数字级联关系y=(tP d1),并将y发送回用户,同时认证中心数据库保存d2作为会话密钥;(3)用户端确定用户签名b,并根据用户签名验证是否为待入网网络。
用户收到y后,从中解密得出d1,判断是否与自己送出的d1相等,如不相等,则放弃本次申请。如相等,则启动用户端计算模块,调用公式b=knptkusmodp]]>计算用户签名b,并将用户签名b发送到网络中心,网络中心收到后,根据b对应的s查出用户公钥kup,将相关参数带入公式b′=kuptknsmodp]]>计算,得到用户数字签名验证值b′,判断b、b′是否相等,如不相等,则拒绝用户访问该网络,如相等确定网络为待入网网络,进入下一步骤;(4)网络中心对用户进行验证,网络中心根据用户公钥、网络私钥计算相应的签名伴随值、用户特征值,并根据网络中心数字签名s查询数据库中的用户特征值e、签名伴随值r,比较签名伴随值、用户特征值以确定是否允许该用户入网。网络中心调用算法模块及比较判断模块,用计算数字签名验证值b′=kuptknsmodp]]>时的用户公钥kup计算用户特征值e′=h(ID,kup,r′)。网络中心根据s查出e、r,并判断如e≠e′,则拒绝该用户的访问请求,如e=e′,继续计算签名伴随值r′=g(e-kns)s-1modp,]]>并判断如r′=r,则数据库没有被更改,同意用户的接入请求,如r′≠r,则拒绝该用户的访问请求。
用户签字的过程如甲方希望乙方为其消息m进行签名,步骤如下a.乙方选取随机数k∈zp*,]]>并将其发送到网络中心;b.网络中心调用算法模块中公式r=gkmod p,s=(m-xr)k-1mod(p-1)计算(r,s),将(r,s)作为对消息的签字发送给甲方;c.甲方调用比较判断模块,验证等式gm=yBrrsmodp]]>是否成立,以决定是否接受乙方对消息的签名(其中yB为用户B的私钥)。
本发明采用一种基于ElGamal签名体系的认证方法。该方法通过对认证过程的改进,有效减轻用户的计算量,网络中心的安全性进一步提高,能满足移动通信系统要求。
以上所述,仅为本发明的较佳实施方式,但本发明的保护范畴并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可以轻易想到的变换和替换,都应包含在本发明的保护范畴内。因此,本发明的保护范围应以权利要求的保护范围为准。
权利要求
1.一种移动通信系统用户认证方法,采用基于ElGamal签名的公钥认证方法,其特征在于,该方法包括步骤网络中心建立算法模块及比较判断模块,选择参数计算网络中心公钥,并向用户公开公钥及所选参数用户端选取随机数计算用户公钥kup,并发送至网络中心;网络中心根据用户公钥建立用户身份标识ID,计算网络中心数字签名S,并建立与S相关的数据库;用户端进行网络身份验证,预计算用户端验证参数c;采用挑战、响应方式对用户和网络进行认证。
2.根据权利要求1所述的方法,其特征在于,网络中心选择的参数包括大素数p、生成元g、单向杂凑函数h。
3.根据权利要求1所述的方法,其特征在于,网络中心建立的算法模块包括公钥计算公式对于密钥x,x∈zp*,]]>有公钥y=gxmod p。
4.根据权利要求1-3其中之一所述的方法,其特征在于,对网络进行认证的步骤包括用户向网络中心发送入网请求及验证参数c;网络中心验证数字签名s,建立与验证参数相关的数字级联,并保存会话密钥;用户终端确定用户签名b,并根据用户签名验证是否为待入网网络。
5.根据权利要求1-3其中之一所述的方法,其特征在于,对用户进行认证的步骤包括网络中心根据用户公钥、网络私钥计算对应的签名伴随值r′及用户特征值e′,并与数据库中存储的与s对应的签名伴随值r及用户特征值e比对,确定是否允许该用户入网。
全文摘要
本发明提出了一种适用于移动通信系统的用户认证方法。该认证方法采用基于ElGamal签名的公钥认证方法。具体包括系统初始化过程中在网络中心确定网络端公钥,并向用户公开该网络中心相关参数,用户端选择随机数确定用户端公钥,网络中心为用户建立用户身份标识ID,并将其发送到用户端,用户端进行身份验证,在网络中心建立与s相关的数据库;用户选取小于p的随机数(x、d
文档编号H04W12/06GK1933665SQ20061009519
公开日2007年3月21日 申请日期2006年10月12日 优先权日2006年10月12日
发明者李方伟, 李维科 申请人:重庆邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1