基于PKI的网络云认证系统设计
2017-12-20张瑞舒虹
张瑞+舒虹
摘 要: 为了提高网络运行的安全性,设计了一种基于PKI的网络云认证系统,介绍了公钥基础设施PKI的框架,详细介绍了数字证书,给出证书制作过程。所设计系统主要由应用模块与云认证模块两大部分组成,通过证书中心模块产生密匙对与数字证书,将其压缩成文件,利用安全信道递交给用户,实现数字证书申请。云认证模块通过“挑战/应答”协议完成核对认证,给出云认证协议的设计过程。实验结果表明所设计系统效率和可靠性均较高。
关键词: PKI; 云认证; 系统设计; 数字证书
中图分类号: TN915.08?34; TP311 文献标识码: A 文章编号: 1004?373X(2017)23?0081?04
Abstract: In order to improve the safety of network operation, a network cloud authentication system based on PKI was designed. The framework of the public key infrastructure (PKI) is introduced. The digital certificate is introduced in detail, and its manufacturing operation is given. The system is mainly composed of application module and cloud authentication module. The secret key pairs and digital certificate are generated in the certificate center module, compressed into files, and submitted to user through the secure channel to realize the digital certificate request. The certification is checked in cloud authentication module by means of "challenge/response" protocol to give the design process of the cloud authentication protocol. The experimental results show that the designed system has high efficiency and reliability.
Keywords: PKI; cloud authentication; system design; digital certificate
當今社会处于网络时代,人们的生活和工作越来越离不开网络,但在使用网络时往往会被盗取一些信息,被盗取信息或许包含个人隐私、企业商机甚至国家机密[1]。因此,必须设计一种有效的认证系统用于保证网络信息安全。在对系统进行设计时,公钥基础设施PKI技术被广泛应用,该技术通过用户身份认证等措施很好地解决了公共网络环境下重要信息传输问题[2]。本文设计了一种基于PKI的网络云认证系统,实验结果表明,所设计系统效率和可靠性均较高。
1 公钥基础设施PKI
1.1 PKI框架介绍
公钥基础设施PKI主要由4部分组成,分别是认证库CRL、注册机构RA、证书认证中心CA与PKI使用者。PKI结构图如图1所示。
用于归纳证书库CRL的服务器被称作证书服务器,当前通常采用的是LDAP协议系统,它是通过C/S形式对X.500目录进行处理的,主要负责对证书与CRL列表进行存储与识读。
PKI使用者主要包括两种用户,分别是持有证书用户与验证用户,持有证书用户也是证书的申请用户,能够完成证书的升级与注销操作,通过所持证书认证自身身份;验证用户通常利用特定系统对持有证书用户的证书进行检验,核对证书的真实性,只有成功完成验证的持证用户才可以开通指定权限[3]。
所有使用公钥的用户都会得到由证书认证中心CA制作的数字证书,该数字证书中持证者与公钥一一对应,保证持证用户与持证用户密钥对等,以及用户信息与证书认证中心之间特定关系的准确性与一致性。证书认证中心同意管理员对证书进行升级与注销,并且定期提供CRL列表。通过注册中心RA对数字证书进行审核,RA首先对申请用户身份进行核对,然后对通过核对的用户的基本信息进行收集,最后对证书进行管理。
1.2 证书的制作
证书的制作方法通常分为两种:第一种方法为使用者自己构建密匙对,把公钥交到证书认证中心,经证书认证中心审批后制成证书,寄存在证书库中[4];第二种方法为证书认证中心自己构建密钥对,通过公钥直接制成证书,将制成的证书寄存在证书库中,通过安全信道把私钥交到使用者手中,并将得到的私钥毁掉[5]。
在利用上述两种方法制作证书的过程中必须由申请用户本人签字同意才能进行。由于第二种方法更加安全方便,因此本节选用该方法进行证书制作。
1.3 数字证书
PKI所发布的数字证书就是使用者身份的标识,通过非对称加密算法对相应的一对密钥实行加密与解密。不同使用者只拥有一个私钥用于签名与加密,且这个私钥不能被外人所用;不同使用者还拥有一个和私钥相应的公钥,利用公钥核对签名与解密[6]。任何通过密匙完成加密的信息,必须用与其相匹配的另一个密匙完成解密。保存使用者信息与公钥的同时,在证书认证中心令使用者签名,将其制成使用者的数字证书。
当今,PKI技术已被应用在不同领域,其中数字证书通常采用国际标准中的X.509标准,X.509标准的格式见表1。endprint
表1中,序列号是证书认证中心颁发的数字证书特定标识符;签名算法是指利用非对称加密算法与哈希算法进行数字证书签发;起始日期指的是证书可以使用的开始日期;截止日期指证书可以使用的最后时间;持有者是指证书拥有者的基本信息。公钥部分包括持有者公钥信息与公钥采用的算法标识符,每一签发者和持有者都只存在惟一标识符。
2 基于PKI的网络云认证系统设计
2.1 系统总体结构
所设计的基于PKI的网络云认证系统主要由应用模块与云认证模块两大部分组成,其中云认证系统主要应用于网络安全,其是以PKI技术为核心的云认证系统。系统总体结构如图2所示。
图2中每个模块都拥有不同的作用,详细分析如下:
(1) 证书中心模块是系统的基础模块,该模块包括证书中心与注册中心,它的作用是为能接收使用者的数字证书申请,签发数字证书,对使用者数字证书进行升级与注销以及管理已注销数字证书列表。
(2) 认证模块作为系统的核心,其最重要的作用是利用“挑战/应答”协议对使用者身份以及拥有的数字证书进行判定。
(3) 证书数据库模块作为整个系统的存储模块,主要负责将X.509证书、已注销证书列表以及证书使用者的基本信息存储起来。
(4) 管理员模块的作用是对证书中心模块进行管理,管理员的详细职能为:处理用户提交的关于数字证书的申请;将处理结果及时告知给用户;对持证者以及持证者数字证书的具体信息实行查找;对所有数据进行拷贝,避免因数据丢失导致系统崩溃的后果;解决因用户非法操作产生的问题,对用户进行指导[7]。
用户模块与集成接口是浏览器端最主要的组成部分,其详细作用如下:
(1) 用户模块能够向证书中心模块呈递用户提交的关于数字证书的申请;把数字证书拷贝到U盘中;协同认证模块判定使用者的身份是否合法。
(2) 集成接口能够帮助现有应用系统顺利应用各项功能,提高整个系统的运行效率。
2.2 数字证书的申请
系统通过证书中心模块产生密匙对与数字证书,将其压缩成文件,利用安全信道递交给用户,数字证书申请的详细步骤为:
(1) 申请者登录注册机构的网址,在注册界面中按照注册表单要求填写真实准确的申请信息。
(2) 通过认证机构对填写完注册信息的表单进行核对,将核对成功后的申请信息传递到证书中心。
(3) 证书中心对接收到的申请信息进行密匙对构建,依照证书标准要求制成X.509数字证书,把它存放到数据库模块中,同时把私钥与数字证书递交到用户模块[8]。
(4) 在用户模块与证书中心模块间构建安全信道,以实现证书文件与用户信息的传递,其详细步骤为:
① 用户对证书认证中心同意使用的安全证书进行下载,并生成会话密匙key;
② 用户通过证书认证中心的公钥对会话秘钥进行加密,把完成加密的文件递交到证书认证中心;
③ 证书认证中心通过自身的私钥对加密文件实行破译,利用破译得到的会话密匙key对用户模块与证书认证中心模块进行文件传递,以此构建安全信道。
(5) 用户完成签字后,证书认证中心将数字证书颁发给用户,实现数字证书的申请。
2.3 云认证协议设计
云认证是系统的重要环节之一,它通过“挑战/应答”协议完成核对认证,其协议是通过用户模块与认证模块之间对话实现的,图3为认证协议设计过程。
依据图3给出认证协议设计步骤:
(1) 持证者经用户模块向认证模块提交相关信息进行身份认证申请;
(2) 接到申请信息后,认证模块立刻进行处理,随机挑选出一个随机数Rp传递给用户模块,将其看作“挑战”;
(3) 令用户模块持证者对密码进行认证,当输入密码正确时可以在U盘中获取相应的私钥;当密码错误时认证失敗;
(4) 用户模块通过持卡者的私钥对随机数Rp进行加密,得到的结果是SC(Rp),把该结果与持证者的数字证书Scertc传递到认证模块中进行验证;
(5) 认证模块对接收到的数字证书进行详细的检验,检验内容主要包括数字证书的完整性、真实性以及是否已经被注销等[9]。当数字证书成功完成检验时,认为该数字证书有效,通过数字证书的公钥对SC(Rp)进行解密,解密的结果是REP。比较随机数Rp与解密结果REP之间的对应关系,如果二者相等,则认为该持卡者为合法用户,反之认为该持卡者为非法用户。
3 实验结果分析
为了验证本文设计的基于PKI的网络云认证系统的有效性,需要进行相关的实验分析。实验将Hadoop系统和嵌入式系统作为对比进行测试。
首先对系统的运行效率进行测试。在80 Mb/s网络下,分别采用本文系统、Hadoop系统和嵌入式系统对同一用户相关信息的存储延迟和认证时间进行比较,结果如表2所示。
分析表2可以看出,当系统在80 Mb/s网络下运行时,采用本文系统对用户信息进行存储所需的延迟为0.52 s,明显低于Hadoop系统的0.85 s和嵌入式系统的0.89 s,说明本文算法存储实时性高。且本文系统的认证时间明显低于Hadoop系统和嵌入式系统,说明本文系统认证效率高。
下面对本文系统的认证准确性进行验证,针对证书签发、申请并下载,以及管理网络服务访问两个项目,分别通过本文系统、Hadoop系统和嵌入式系统对其进行认证处理,得到的结果依次见表3,表4,其中项目一代表证书签发、申请并下载,项目二代表管理网络服务访问。
分析表3与表4可以看出,本文设计系统认证成功率很高,几乎为100%,明显高于Hadoop系统和嵌入式系统,表明本文系统能精确地实现认证,具有极高的安全性、准确性以及稳定性,满足系统使用人员的各种要求,大大提高了工作效率。
4 结 论
本文设计了一种基于PKI的网络云认证系统,介绍了公钥基础设施PKI的框架。给出了系统总体结构,其主要由应用模块与云认证模块两大部分组成。详细介绍了数字证书申请过程和云认证协议的设计过程。实验结果表明,所设计系统能精确地实现认证,具有极高的安全性、准确性以及稳定性,满足系统使用人员的各种要求,大大提高了工作效率。
参考文献
[1] 崔涛.基于云服务优选的最节能物流运输调度系统的设计[J].现代电子技术,2016,39(20):138?141.
[2] 李腾耀,张水平,张月玲,等.基于对等监控网络的云监控系统设计与实现[J].计算机应用,2015,35(12):3378?3382.
[3] 滑翔.基于云计算技术设计网络安全储存系统[J].电子技术应用,2016,42(11):106?107.
[4] 马晓丽,张晓蕾,陈珊.基于云平台的智能电网管理系统分析和设计[J].电源技术,2016,40(9):1869?1870.
[5] 李云,陈庞森,孙山林.基于近场通信认证的无线局域网无线接入协议的安全性设计[J].计算机应用,2016,36(5):1236?1245.
[6] 章静,封利霞.基于网络云计算的视知觉训练在弱视治疗中的应用[J].中华眼视光学与视觉科学杂志,2015,17(6):356?359.
[7] 王杰华,刘会平,邵浩然,等.无线双向安全认证系统的设计与实现[J].计算机工程与设计,2016,37(10):2639?2643.
[8] 朱森,徐志军,王金明,等.用于动态声纹密码认证系统的分类器和归一化的比较性研究[J].通信技术,2016,49(9):1235?1238.
[9] 鲁恩铭,邓艳.基于PKI技术的企业级云存储出错数据证明的研究[J].电脑知识与技术,2016,12(15):247?249.endprint