一种基于公钥基础设施的移动互联网接入认证方法

文档序号:7803584阅读:216来源:国知局
专利名称:一种基于公钥基础设施的移动互联网接入认证方法
技术领域
本发明是一种移动互联网接入认证机制的安全解决方案。本发明针对的移动互联网架构采用了基于P2P (对等技术)的分布式通信和信息处理架构,主要用于解决用户接入到该网络的安全问题,属于分布式计算软件安全技术领域。
背景技术
随着通信技术的不断发展,全球移动通信用户数量正以惊人的数量增长。在“2009 (第三届)移动互联网研讨会”,工业和信息化部副部长宣布中国已经拥有了 1. 92亿移动互联网用户,说明我们已经进入了移动互联网时代。P2P技术在互联网中已被广泛应用,通常用于文件下载、流媒体等互联网业务,将其引入到电信网络中可以提高核心网络的自组织能力、容灾能力、负载均衡能力等。然而在 P2P架构中,节点(尤其是用户节点)的动态性非常强,这给移动互联网的安全机制带来了更大的挑战。在安全通信中,接入认证是用户使用移动互联网业务的前提,3GPP (第三代合作伙伴计划)制定的WCDMA (宽带码分多址)标准使用的认证算法是AKA (认证与密钥协商) 协议。AKA机制是由因特网工程任务组制定,广泛应用于3G (第三代移动通信技术)无线网络的鉴权机制。很多文献中都对该协议进行了改进以更好地应用在移动互联网中。但是, AKA机制本身就有一定的局限性,其在接入认证之前需要进行密钥的共享等,这具有很大的安全隐患。随着用户终端存储能力以及计算能力的提高,使得将HiI (公钥基础设施)应用到移动互联网中成为了可能。PKI就是利用公钥理论和技术建立的提供安全服务的基础设施,一个完整的PKI系统必须具有权威认证机构、数字证书库、密钥备份及恢复系统、证书作废系统、应用接口等
基本构成部分。认证是移动互联网络及其各项业务安全运行的一个重要方面,认证机制限制非法访问网络资源,是其他安全机制的基础。认证可以针对解决欺骗与伪造中的身份欺骗。同时,它对信任危机也有一定的积极作用,因为节点在交互之前首先进行身份的认证和权限的审查,可以提高双方相互信任的程度。所以采用P2P分布式通信和信息处理架构的移动互联网络更加需要建立一套切实可行的接入认证机制,来确保用户的安全接入,并且保证网络及其相关业务的正常运行。

发明内容
技术问题本发明的目的是提供一种基于公钥基础设施的移动互联网接入认证方法,能让用户安全地接入到移动互联网的整个方法流程。技术方案本发明针对的移动互联网网络环境采用了 P2P技术,P2P的引入给网络的安全性带来了很大的问题。为了增强用户接入到网络的安全性,认证方法中采用了 PKI 技术,实现基于数字证书的用户和网络的双向认证。PKI是基于公开密钥理论和第三方认证技术建立起来的安全体系,为网络应用提供实体鉴别、数据的保密性、数据的完整性和交易的抗抵赖等安全服务。PKI的应用保证了用户接入移动互联网的安全性。本发明的方法通过采用PKI技术,来保证用户安全地接入到移动互联网络当中使用移动互联网络中的各项业务。PKI作为一种安全技术,凭借其强大的技术优势已深入到网络的各个层面,所以将PKI技术应用到移动互联网中能很好地保障整个系统的安全性。为了提出认证机制的技术方案,首先要给出基于P2P技术的移动互联网的网络架构和网络特性。移动互联网是移动通信和互联网的结合体,是一个全国性的、以宽带IP(因特网互联协议)为技术核心的,可同时提供话音、传真、数据、图像、多媒体等高品质电信服务的新一代开放的电信基础网络。移动互联网业务环境的目标就是建立一套面向移动互联网的端到端的业务环境。在该环境中,用户可以更加方便、安全、可靠地基于不同的移动通信技术访问并使用移动互联网上的各种业务。基于P2P的分布式通信和信息处理架构的移动互联网核心网络是建立在已存在的一个或多个网络之上的一个间接的或者是可视化的抽象网络。它处于互联网和业务之间,P2P对电信运营商带来了很大冲击,但将P2P架构引入到移动通信网络之中,可以使其成为新的利润增长点。此外,它基于互联网提供基本业务及更多业务的支持,实现组网、计费、QoS (服务质量)、安全等机制。利用该网络,可以在不修改已经存在的软件协议和网络的底层结构的情况下,快速地添加新的网络功能。该网络基本上可以分成四层,自下向上依次为网络连接层、中间层、服务层和应用层。
各层的功能如下 (1)网络连接层
网络连接层为中间层提供可靠的网络连接,可以是TCP/IP (传输控制协议/因特网互联协议)的传输层,或其它任何能够提供可靠数据传输的网络结构,如无线网络、蓝牙等。(2)中间层
中间层是系统的核心层,因为这一层包括了系统中最根本东西,如对等点,对等组,以及对等点发现、定位和路由的算法等。此外,穿透防火墙和NAT (网络地址转换)的机制也处在该层。(3)服务层
服务层包括对于网络很通用的一些功能,如安全、内容管理、资源整合和可靠性等。这些服务将对具体的应用提供支持,如内容管理服务,可能会包括网络中内容的标识、索引、 查找以及缓存等。该层中的安全服务是至关重要的,它必须对上层提供核心安全服务。(4)应用层
应用层是在服务层的基础上的各种具体的应用系统,可以是应用开发工具、具体应用程序,或者向用户提供的具体服务。图1是移动互联网的安全模型结构,指出了移动互联网络所面临的安全问题以及需要采用的安全机制。由于核心网络架构引入了 P2P技术,所以网络中节点(尤其是用户节点)的动态性增强,网络的安全性也面临着更大的挑战。认证机制是其他安全机制的基础, 是保障移动互联网络及其各项业务安全运行的一个重要方面。为了保证整个系统的安全性,我们最终选择PKI技术为依托,采用了基于数字证书的双向认证方案,即用户与网络服务节点通过验证数字证书的方式来确认对方的身份。 整个技术方案实施的具体步骤如下步骤1).用户到认证中心录入自己的信息,包括用户名、所在部门、单位、城市、省份、 国家、密钥长度、证书有效期、私钥密码,认证中心这些信息生成用户证书,并将认证码和授权码返回给用户;
步骤2).用户根据步骤1)的认证码和授权码生成证书申请书,并提交给注册机构,注册机构收到证书申请书后将其转发给认证中心,认证中心根据认证码和授权码选出匹配的证书,并通过注册机构转发给用户,这样用户成功下载了自己的数字证书;网络服务节点预置自己的数字证书;
步骤幻.用户向接入节点发送入网注册请求,请求信息包括用户的私有身份标识;
步骤4).接入节点收到用户注册信息后,选择合适的网络服务节点为用户提供接入认证服务;
步骤幻.网络服务节点收到用户的私有身份标识后,根据私有身份标识判断该用户是不是本地用户,如果是本地用户则直接发起双向认证过程,执行步骤7),如果不是,网络服务节点则查找备份服务节点发起认证过程;
步骤6).如果网络服务节点找到备份服务节点,则由备份服务节点发起双向认证过程,执行步骤7),如果没有找到备份服务节点,则接入过程失败;
步骤7).用户向网络服务节点发起入网登记请求;
步骤8).网络服务节点收到请求后,产生一个随机数,并将该随机数与自己的数字证书一起发送给用户
步骤9).用户收到网络服务节点的数字证书后,首先向认证中心申请最新的证书撤销列表,然后利用认证中心的公钥来验证该网络服务节点的数字证书是否由认证中心签发以及是否被撤销,如果验证网络服务节点的数字证书失败,则接入认证失败,用户与该网络服务节点断开连接;如果验证通过,则,
a)首先用户用自己的私有密钥对接收到的网络服务节点生成的随机数作数字签名;
b)其次生成一个随机数,然后用网络服务节点的公开密钥对该随机数进行加密,最后采用对称性加密算法,用该随机数对用户私有身份标识、用户证书、a)生成的数字签名进行加密,生成加密信息;
c)将加密信息发送到网络服务节点,同时用户存储网络服务节点生成的随机数、网络节点的数字证书以及自己生成的随机数;
步骤10).网络服务节点收到用户发送过来的加密信息后,用自己的私钥解密得到用户生成的随机数,然后用该随机数解密收到的加密信息,得到用户的私有身份标识和数字证书,
(a)首先验证用户私有身份标识的合法性,如果用户身份不合法,则拒绝该用户的接入,如果合法则继续以下步骤;
(b)其次网络服务节点向认证中心申请最新的证书撤销列表,利用认证中心的公钥验证用户数字证书的真实性,验证方法与之前用户验证网络服务节点的方法相同;
(c)然后使用用户的公钥来解密消息获得随机数,如果该随机数跟步骤(8)中生成的随机数是一致的,则再生成一个新的随机数,使用用户的公钥对该随机数进行加密,把该加密信息发送给用户,并存储该随机数;
(d)至此网络服务节点确认了用户的身份。
步骤11).用户收到网络服务节点发送过来的加密信息后,
(a)用自己的私钥解密信息获得随机数;
(b)发送确认消息给网络服务节点;
(c)存储该随机数,并把该随机数作为会话密钥;
(d)用户认证完成。步骤12).当网络服务节点收到确认消息后,利用步骤(10)中存储的随机数作为会话密钥,网络服务节点认证完成。有益效果本发明方法针对基于P2P的移动互联网架构而提出了一种新型的接入认证方案,使用该方法具有如下优点
1、良好的及时性技术方案中引入了 Access Node节点(连接节点),当收到用户的注册请求时会选择合适的SN服务节点为用户服务,而且对认证信息进行了备份,当SN单点失效时,会通过P2P路由到备份的SN节点为用户服务,尽最大的努力保证用户及时地接入到网络当中。2、高度的安全性因为认证方案采用了双向认证,当用户接入到网络中时,网络中的服务节点不仅要验证用户的身份,而且用户也会认证服务节点的身份,
这样就避免了身份欺骗等网络安全问题,而且认证流程中使用了一些随机数,这样可以避免在认证过程中遭到重放攻击,使整个系统具有很高的安全性。3、良好的系统扩展性由于系统模块之间采用的是独立模块化,功能并行层次化设计,系统模块之间的通信机制完全采用层次化的结构,因此可以方便的添加新的功能,也可以很容易的升级现有的功能。4、美观易操作的人机界面该系统采用了人性化设计,并且对界面进行了美化。用户端的界面美观、操作简单而且功能强大。


图1是移动互联网的安全模型架构,图中所示移动互联网安全模型针对包括中断、截取、篡改、伪造等在内的安全问题,主要解决服务和应用两个层次安全部分,采用包括访问控制、认证、不可否认性、数据的机密性与完整性、可用性、隐私保护等在内的安全模型。图2是认证方案部署图。图中her是用户节点,可以是手机终端或者软终端。SN 是由运营商配置部署的用来提供服务的节点。接入节点Access Node是负责处理节点加入与退出的功能控制节点。Relay Node是中继节点,当某些节点作为P2P网络节点提供服务的时候,它将会充当Relay Node的功能,对用户面数据进行转发传递。SN节点之间是通过 P2P方式互连的。网络中部署了 CA等PKI服务器。图3是用户申请下载证书的流程图,用户her将签发的证书申请书发给RA,RA对其签名后转发给Ck, CA生成证书后再通过RA将证书转发给用户。图4详细描述了 her和SN之间的双向认证流程。
具体实施例方式一、体系结构整个认证方案是为了用户^er能快速地接入到移动互联网中并实现用户与网络节点的双向认证。认证流程包括信息传输、用户接入网络、用户认证网络服务节点、服务节点认证用户节点、会话密钥生成等部分。由于需要实现两个不同平台之间的信息交互,所以建立了 2组基于TCP的socket传输。一组socket用
于实现her与SN之间的信息传输,另一组socket用于实现her (以及SN)向CA申请最新的证书撤销列表。其他各个功能模块是分别在两个平台单独实现的。二、方法流程
为了方便后面方法流程的描述,我们假定有如下应用实例,所设定的认证场景如图2所示
一个用户(下面用^er表示)与接入节点(下面用Access Node表示)为其选择的服务节点(Service Node,下面用SN表示)进行双向认证接入到移动互联网中。2. 1证书格式的选择
在PKI系统中,数字证书是实体身份的象征。本方法中的数字证书采用了 X. 509证书格式。X. 509是一种非常通用的证书格式,所有的证书都符合ITU-T X. 509国际标准。X. 509 证书的结构如下
(1)版本号(version):定义了证书的版本号,证书中如果不包含任何扩展,则版本应该设为1 (缺省值)。(2)证书扩展(extension)对证书标准部分里没有涉及到的部分进行说明。(3)颁发者名称(issuer)证书应用程序必须要能够识别χ. 509ν3中列出的所有特定名字属性。(4)序列号(serial number)移动用户证书的序列号长度小于八个字节,服务器证书的序列号小于二十个字节。(5)签名算法(signature):定义的签名算法有两种shal with rsaencryption签名算法和ecdsa with shal签名算法,首选后者。(6)主体姓名(subject):和颁发者字段一样,证书应用程序必须能够识别χ. 509ν3 中列出的所有特定名字属性。(7)主体公钥信息(subject public key info):这里定义的公钥类型为两种rsa (公钥加密算法)和ecc (错误检查和纠正)。
2. 2用户ID (身份标识)的设计
用户ID可以用IMPI (私有身份标识)号或者用户的身份证号,本方法流程中采用了用户IMPI作为用户的ID。2.3用户私钥的存储方式
私钥的存储根据用户的选择,分为以下三种方式进行存储
(1)存储在手机上,如内存、SD卡(安全数码卡)等手机存储设备;
(2)存储在USIM卡(全球用户识别卡)上;
(3)存储在上网卡或者USm^ey(硬件数字证书载体)中,这种方式适用于软终端。2.4用户证书的下载
证书可以有PKI可信第三方生成,由移动网络运营商负责具体发放,为了适应移动终端和软终端较弱的处理能力,数字证书的下载有两种方案可行,一种是在软终端上实现移动终端的加密模块,另一种方案是用定制软件方式实现加密模块。(1)硬件实现
将用户证书及私钥存放在软终端中,申请下载用户证书的方式有两种。离线申请离线下载离线申请就是用户到RA受理点录入用户信息,申请证书。一般用户在第一次开通服务的时候,可以由运营商采用这种离线方式,将用户证书集成在 USIM卡或者USBKey,然后再放到用户手机上使用。离线申请在线下载用户到RA受理点录入用户信息,申请证书。但是证书下载是调用软终端的相关接口,签发证书申请书,然后连同用户申请证书获得的识别码和授权码一并提交。(2)软件实现
基于定制软件证书申请和下载,即由运营商发布专用的证书申请软件,通过在服务器和客户端之间预存密钥,对传输数据进行加密和完整性验证,保证申请过程的安全性。传统申请证书传统的证书申请,通过对RA提交证书申请,获得证书的识别码和授权码。然后在无线终端输入识别码和授权码,通过连接证书下载门户,进行证书下载。通过这种方式下载证书,可以通过RA系统对证书进行挂起、恢复、注销、更新等操作。通过手机直接申请直接通过无线终端向证书下载门户提交证书申请,证书下载门户为用户申请证书,然后下载证书,最终将证书返回到无线终端,这种方
式简化了用户的操作,但是增加了 CA的负担。另外,采用这种方式,用户不能在RA系统进行证书的注销等操作。2. 5密码算法的选择
本方法中涉及到的密码算法如下
(1)对称算法加密和解密采用相同的密钥,其特点是加密速度很快,加密强度则在于密钥的长度。本方法流程中采用的是1 位的密钥,涉及到的算法有AES (高级加密算法)、 RC4算法等。(2)非对称算法加密和解密采用一对算法,私钥个人拥有,公钥可以对外发布,其特点是用一个密钥加密则用另外一个密钥解密。本方法流程中是用自己的证书私钥对信息加密,对方收到信息后用相应的公钥进行解密。证书中采用的是RSA算法,由于运算速度比较慢,所以只用其加解密随机数。(3)摘要算法摘要算法是一种单向散列算法,其特点是由一个明文得到一个唯一对应的定长的摘要信息,明文做任何改动,其摘要也随之改变,由摘要无法推算到明文,它是不可逆。本方法流程中采用的有MD5 (消息摘要算法)和SHAl (安全哈希算法)。(4)签名算法摘要算法+非对称算法。认证流程中对信息首先生成摘要,再用私钥对摘要加密形成的密文就是该信息的签名。2.6认证过程中使用的缩略语
以下认证的方法流程中用到的缩略语及其所对应的含义如下
(1)Cert_User 用户证书
(2)SK_User 用户私有密钥
(3)PK_User用户公钥
(4)Cert_SN 网络服务节点的证书(5 ) SK_SN 网络服务节点的私钥
(6)PK_SN 网络服务节点的公钥
(7)(*)PK_User 使用用户公开密钥对括号内信息加密
(8)(*)SK_User 使用用户私有密钥对括号内信息加密
(9)(*) PK_SN:使用网络服务节点的公开密钥对括号内信息加密
(10)(*)SK_SN 使用网络服务节点的私有密钥对括号内信息加密
(11)WKs 使用Ks对括号内信息加密 2.7接入认证流程
其具体方法流程如下
预置条件是用户在接入认证到移动互联网络之前,已经从认证中心下载好了自己的证书Cert_User,证书申请的流程如图3所示。SN节点由运营商部署,所以可以预置根证书和自己的证书Cert_SN。网络选择合适的SN为her服务的流程如下
UUser向Access Node发送入网注册请求,请求信息包括用户IMPI号。2, Access Node节点收到用户注册信息后,Access Node选择合适的SN节点为用户提供接入认证服务。3,SN收到用户IMPI判断该her是不是本地用户,如果是本地用户则直接发起双向认证过程,如果不是,SN则查找备份节点发起认证过程。User与SN进行双向认证的方法流程如下,图3是整个认证过程的流程图 1、用户节点^er向DSN网络SN发起入网登记请求。2、SN发送自己的证书和随机数Rl给用户节点UE
3、用户收到网络服务节点的证书Cert_SN后,首先向CA申请最新的证书撤销列表,然后利用CA的公钥来验证SN的证书是否由该CA签发以及是否被撤销,如果通过验证,则,
(1)首先生成一个随机数Ks,利用用户的私有密钥对(Rl)作签名成为 (Rl)SK_User ;
(2)其次用SN的公开密钥PK_SN对Ks作加密得到(Ks)PK_SN,最后利用对称性加密算法如 AES 对 IMPI,Cert_User 及(Rl) SK_User 以 Ks 进行加密;
(3)然后将加密信息发送到SN,同时UE存储Rl,Ks以及Cert_SN。4,SN收到响应后,用自己的私钥SK_SN解密消息(Ks) PK_SN得到Ks,再用Ks解密 (IMPI Il Cert_User Il (Rl)SK_User) Ks,得到用户的 IMPI 和 CertUser,
(1)首先验证IMPI的合法性;
(2)然后SN向CA申请最新的证书撤销列表,然后利用CA的公钥验证 User证书的真实性,验证方法与之前her验证SN的方法相同;
(3)然后使用用户的公钥PK_User来解密(Rl)SK_User,获得R1,如果Rl确实正确,生成R2,然后用PK_User对R2加密,并把PK_User (R2)发送给her ;
(4)存储R2;
(5)至此SN确认her的身份。5、User 收到 PK_User (R2)后
(1)用私钥 SK_User 解密 PK_User (R2)得到 R2 ;(2)发送确认消息给SN;
(3)存储R2,并把R2作为会话密钥;
(4)her认证完成。6、当SN收到确认消息后,
(1)最后利用R2作为会话密钥,并且将Ks删除。(2) SN认证完成。双向认证结束后^er就已经安全地接入到了移动互联网中,并且享用移动互联网提供的各项业务,而最终生成的会话密钥也是保证其安全使用的业务的前提和基础。
权利要求
1. 一种基于公钥基础设施的移动互联网接入认证方法,其特征在于该方法的具体流程为步骤1).用户到认证中心录入自己的信息,包括用户名、所在部门、单位、城市、省份、 国家、密钥长度、证书有效期、私钥密码,认证中心这些信息生成用户证书,并将认证码和授权码返回给用户;步骤2).用户根据步骤1)的认证码和授权码生成证书申请书,并提交给注册机构,注册机构收到证书申请书后将其转发给认证中心,认证中心根据认证码和授权码选出匹配的证书,并通过注册机构转发给用户,这样用户成功下载了自己的数字证书;网络服务节点预置自己的数字证书;步骤幻.用户向接入节点发送入网注册请求,请求信息包括用户的私有身份标识;步骤4).接入节点收到用户注册信息后,选择合适的网络服务节点为用户提供接入认证服务;步骤幻.网络服务节点收到用户的私有身份标识后,根据私有身份标识判断该用户是不是本地用户,如果是本地用户则直接发起双向认证过程,执行步骤7),如果不是,网络服务节点则查找备份服务节点发起认证过程;步骤6).如果网络服务节点找到备份服务节点,则由备份服务节点发起双向认证过程,执行步骤7),如果没有找到备份服务节点,则接入过程失败;步骤7).用户向网络服务节点发起入网登记请求;步骤8).网络服务节点收到请求后,产生一个随机数,并将该随机数与自己的数字证书一起发送给用户步骤9).用户收到网络服务节点的数字证书后,首先向认证中心申请最新的证书撤销列表,然后利用认证中心的公钥来验证该网络服务节点的数字证书是否由认证中心签发以及是否被撤销,如果验证网络服务节点的数字证书失败,则接入认证失败,用户与该网络服务节点断开连接;如果验证通过,则,a)首先用户用自己的私有密钥对接收到的网络服务节点生成的随机数作数字签名;b)其次生成一个随机数,然后用网络服务节点的公开密钥对该随机数进行加密,最后采用对称性加密算法,用该随机数对用户私有身份标识、用户证书、a)生成的数字签名进行加密,生成加密信息;c)将加密信息发送到网络服务节点,同时用户存储网络服务节点生成的随机数、网络节点的数字证书以及自己生成的随机数;步骤10).网络服务节点收到用户发送过来的加密信息后,用自己的私钥解密得到用户生成的随机数,然后用该随机数解密收到的加密信息,得到用户的私有身份标识和数字证书,(a)首先验证用户私有身份标识的合法性,如果用户身份不合法,则拒绝该用户的接入,如果合法则继续以下步骤;(b)其次网络服务节点向认证中心申请最新的证书撤销列表,利用认证中心的公钥验证用户数字证书的真实性,验证方法与之前用户验证网络服务节点的方法相同;(c)然后使用用户的公钥来解密消息获得随机数,如果该随机数跟步骤(8)中生成的随机数是一致的,则再生成一个新的随机数,使用用户的公钥对该随机数进行加密,把该加密信息发送给用户,并存储该随机数;(d)至此网络服务节点确认了用户的身份;步骤11).用户收到网络服务节点发送过来的加密信息后,(a)用自己的私钥解密信息获得随机数;(b)发送确认消息给网络服务节点;(c)存储该随机数,并把该随机数作为会话密钥;(d)用户认证完成;步骤12).当网络服务节点收到确认消息后,利用步骤(10)中存储的随机数作为会话密钥,网络服务节点认证完成。
全文摘要
一种基于公钥基础设施的移动互联网接入认证方法是针对引入了P2P架构的移动互联网络而提出的安全认证解决方案。移动互联网的核心网引入P2P技术可以提高网络的自组织、负载均衡等能力,但同时也给其安全性带来了很大的问题。认证是移动互联网络及其各项业务安全运行的基础,本方法中的认证流程采用了PKI技术,实现了基于数字证书的用户和网络的双向认证,增强用户接入到网络的安全性,在方法的实现上采用了OpenSSL开源软件包。跟目前已有的认证方案相比,本方法针对的网络架构不同,此外,在移动互联网络环境中应用PKI技术是未来的发展趋势,因此本方法具有新颖、易扩展、通用等特点,而且具有很好的市场前景。
文档编号H04L29/06GK102404347SQ20111044755
公开日2012年4月4日 申请日期2011年12月28日 优先权日2011年12月28日
发明者孙力娟, 李致远, 林巧民, 王汝传, 肖甫, 赵玉雪, 邵星, 韩志杰, 顾翔, 黄海平 申请人:南京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1