PKI认证技术(精选8篇)
PKI认证技术 篇1
0 引言
随着移动通信网络技术的发展,越来越多的网络业务由普通网络向移动通信网扩展,并收到了成效,例如VoIP、流媒体、电子商务等,随之而来的安全问题也越来越受到大家的关注。尽管安全性方面有了较大的提升,采用数字系统,提出了身份认证,数据加密这些概念,系统考虑了一些安全因素,但绝大部分的安全规范是从运营商的角度设计的:防止欺骗和网络误用,依然存在许多安全缺陷[1]。目前基于AKA的接入认证技术存在着仿冒节点参认证过程窃取认证密钥的隐患和风险,整个认证过程,负责接入的服务节点如果是非法假冒节点,则可以获得用户与网络之间的会话密钥与完整性密钥。这种认证方式即只考虑了网络对于用户的认证而忽视了用户对于网络的识别,因此不能提供可信的环境,不能给移动用户足够的信心开展电子商务和交换敏感信息。随着技术的成熟和移动数据业务的出现,用户比以前更加关注移动通信的安全问题。因此,PKI的应用是解决安全问题的关键所在。
PKI(Public Key Infrastructure)译为公钥基础设施。简单地说,PKI技术就是利用公钥理论和技术建立的提供信息安全服务的基础设施。公钥体制是目前应用最广泛的一种加密体制,在这一体制中,加密密钥与解密密钥各不相同,发送信息的人利用接收者的公钥发送加密信息,接收者再利用自己专有的私钥进行解密。这种方式既保证了信息的机密性又能保证信息具有不可抵赖性[2,3,4]。
本文提出了一种基于PKI的移动通信网双向身份认证技术,通过移动运营商对网络的部分改造和中心服务器的部署,不但网络能够对用户进行身份认证,而且保证了用户对网络进行认证,防止用户自己的信息泄露、篡改、欺骗、抵赖等,使移动通信网络环境的用途更加广阔和安全。
1 基于PKI认证系统设计
整个系统的网络体系架构由用户、运营商配置的服务节点和认证中心CA构成,如图1所示。
1.1 证书的结构和发放
证书的结构[5]由以下7部份组成:
(1)版本号(version):定义了证书的版本号,证书中如果不包含任何扩展,则版本应该设为1(缺省值);
(2)证书扩展(extension):对证书标准部分内没有涉及到的部分进行说明;
(3)颁发者名称(issuer):证书应用程序必须要能够识别x.509v3中列出的所有特定名字属性;
(4)序列号(serial number):移动用户证书的sn长度小于8个字节,服务器证书的sn小于20个字节;
(5)签名算法(signature):定义的签名算法有两种:sha1 with rsaencryption和ecdsa with sha1,首选后者;
(6)主体姓名(subject):和颁发者字段一样,证书应用程序必须能够识别x.509v3中列出的所有特定名字属性;
(7)主体公钥信息(subject public key info):这里定义的公钥类型为两种:RSA公钥加密算法和椭圆曲线加密算法(ecc)。
证书可以由PKI可信第三方生成,由移动网络运营商负责具体发放。为了适应移动终端较弱的处理能力,数字证书的下载是在用户软终端上实现移动终端的加密模块,将用户证书及私钥存放在软终端中,申请下载用户证书的方式采用在线申请在线下载。在线申请就是用户直接在无线终端录入用户信息,进行证书的申请,从门户网站获得识别码和授权码。证书下载用户在软终端相关接口获取如私有用户身份(IMPI)、手机号码等用户信息,由用户节点签发证书申请书,然后连同用户申请证书获得的识别码和授权码一并提交,证书下载后保存在软终端中、SD卡、用户磁盘等用户存储设备中,证书是用来证明自己的身份可以提交给任何实体验证,因此存储安全需求不高等。
发放证书的基本流程如下:用户先向门户网站填写和提交个人信息,如身份证号码、姓名、年龄、性别等,接着门户网站发送消息给CA,查验用户身份惟一性和合法性,即用户信息是否已经申请过,如果否,门户网站请求CA分配给用户一个识别码和授权码,门户网站把请求到的CA证书、识别码和授权码发送给用户。用户收到识别码和授权码之后,通过软终端获取手机信息如手机号码、国际移动用户识别码(IMSI),由用户节点签发证书申请书。然后用户向RA在线提交证书申请书、识别码和授权码。RA收到信息后用自己私钥对用户申请信息签名,保证用户申请信息是RA提交给CA,RA将用户申请提交给CA。CA为用户生成密钥对,并用CA的签名密钥对用户的公钥和用户信息ID进行签名,生成电子证书。这样CA就将用户的信息和公钥捆绑在一起了,然后CA将用户的数字证书和用户的公钥公布到目录中并将电子证书传送给批准该用户的RA,RA将证书发送给用户节点,用户节点将证书保存在存储设备上。用户验证CA颁发的证书:确保自己的信息在签名过程中没有被纂改,而且通过CA的公钥验证这个证书确实由所信任的CA机构颁发。
1.2 证书的使用
一般采用如下简要流程:将客户端发来的数据解密,将解密后的数据分解成原始数据,签名数据和客户证书三部分。用CA根证书验证客户证书的签名完整性,检查客户证书是否有效(当前时间在证书结构中所定义的有效期内),检查客户证书是否作废(OCSP或CRL方式),验证客户证书结构中的证书用途,客户证书验证原始数据的签名完整性[6,7]。
移动通信网络的详细认证流程如下:
(1)用户节点向移动通信网络用户证书发放节点发起入网登记请求,请求信息包括用户IMPI。
(2)用户证书发放节点发送自己的证书和随机数R1给用户节点。
(3)用户收到网络的证书Cert,利用CA的公钥来验证用户证书发放节点的真实性,如果通过验证,则接下来首先生成两个随机数Ks和R2,利用用户的私有密钥对(R2‖R1)作签名成为(R2‖R1)SKUE,其次用用户证书发放节点的公开密钥PKCA对Ks作加密得到(Ks)PKCA。最后利用对称性加密算法如AES对IMPI,CertUE及(R2‖R1)SKUE,以Ks进行加密,然后将加密信息发送到用户证书发放节点,同时用户节点存储R1,R2,Ks,以及Cert。
(4)用户证书发放节点收到响应后,用自己的私钥SK解密消息(Ks)PKCA得到Ks,再用Ks解密(CertMS‖IMPI‖(R2‖R1)SKUE)Ks,得到用户的IMPI和CertUE,首先验证IMPI的合法性。然后使用由运营商配置的用来提供服务的节点和CA之间的安全通道(专网方式)向CA发送用户的CertUE来获取用户相应的公钥PKUE,使用用户的公钥PKUE来解密(R2‖R1)SKUE,获得R2‖R1。如果R1确实正确,存储R2,至此服务节点确认用户的身份。
(5)当用户证书发放节点确认用户合法之后,则送回第三个信息以及生成会话密钥,否则拒绝所要求的服务。服务节点首先利用私有密钥SK对R2作签名,再以Ks利用对称性的密码算法,对IMPI及以(R2‖R1)SK作加密,生成(IMPI‖(R2‖R1)SK)Ks,再将信息送至用户,最后利用R1和R2作异或运算生成会话密钥,并且将Ks删除,认证完成。
(6)用户收到用户证书发放节点的信息后,利用Ks解开信息,得到(IMPI‖(R2‖R1)SK,然后检查IMPI是否是自己的IMPI,再来利用用户证书发放节点的证书验证(R2‖R1)SK是否等于(R2‖R1)通过验证。如果是,再利用R1和R2作异或运算生成会话密钥,否则表示注册失败。
PKI认证消息流程如图2所示。
1.3 证书的更新
在移动通信网中,为了保证用户私钥的安全性与新鲜性,需要及时的更新用户证书,证书更新有离线更新和在线更新两种形式。离线更新是用户到运营商出示身份证等证明更新自己的证书,在线更新分为两种情况[8,9]:1)用户证书在有效期内,由PKI定期进行更新。此时首先认证用户旧证书的合法性,如果合法予以更新证书,并撤销旧证书,否则验证没有通过,拒绝更新。2)用户证书在有效期外或用户请求更新证书,此时在线更新需要用户输入在注册时的口令,如果口令合法,则予以更新,并撤销用户旧证书;如果口令非法,则拒绝更新。口令包括问题-回答、数字、字母等多种形式,在用户初始注册时,由用户填写[10]。
2 试验结果
因为需要部署多台PKI服务器才能完全展示其功能,这里只运用上述设计原理用VC++6.0编写了一个简单的原型系统,系统设计界面截图如图3所示。
在模拟的网络中试验成功,图4是连接模拟运营商服务节点成功截图,其余类似,不再贴出。
(1)优点:此认证是双向的,不仅可以防止用户节点冒充欺骗也可以防止服务节点的冒名顶替。对每次的认证生成的随机数采用椭圆曲线加密算法,比RSA加密算法效率要高出许多。
(2)缺点:本系统实现需要部署大量的PKI服务器,认证流程稍显复杂。因为认证过程要传递证书,系统带宽要求较高,需要网络设备提供较为理想的网络接入环境以及高带宽支持。
3 结束语
在移动通信网络越来越发达便利的今天而移动通信网络安全能不能得到保证,是大家所关心的,身份认证又是移动通信网络安全的重要组成部分。文中提出的基于PKI的身份认证技术通过第三方的可信任机构———认证中心(CA)验证用户的身份,从而实现信息的安全传输,提供更为安全的接入环境。用户节点个人保存私钥,分工明确,可以有效地防止用户节点或者服务节点身份被冒充、欺骗、篡改和抵赖等攻击行为,相信移动通信网络的用途将会是无处不在。
参考文献
[1]杨波.现代密码学[M].北京:清华大学出版社,2007:1-9.
[2]郑东,李祥学,黄征.密码算法与协议[M].北京:电子工业出版社,2009:2.
[3]孙林红,叶顶锋,冯登国.无线PKI体系的设计[J].中国科学院研究生院学报,2002,19(3):223-228.
[4]张平.第三代蜂窝移动通信系统-WCDMA[J].北京:北京邮电大学出版社,2001:19-22.
[5]隋爱芬,杨义先.第三代移动通信系统的安全[J].世界电信,2003(5):37-40.
[6]Andrew Nash,William Duane,Celia Joseph,et al著.公钥基础设施(PKI)实现和管理电子安全[M].张玉清,陈建奇,杨波,等译.北京:清华大学出版社,2002:255-310.
[7]左益强.无线环境中身份匿名认证机制的研究[D].上海:复旦大学,2003.
[8]屈晓辉.网络安全身份认证研究[M].北京:清华大学出版社,2006.
[9]范林秀,陈舒娅,王喜进.基于PKI的身份认证在电子商务中的研究[J].电脑知识与技术,2007,16(9):979-980.
[10]Whaleys.Mandatory labeling for digital rights management[J].Journal of Technology Law and Policy,2007(12):375-392.
PKI认证技术 篇2
关键词:PKI;CA;非对称加密;对称加密
中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)15-30633-03
Data Security Policy of Party-constructure Management Information System Based on PKI Technology
YU Zhi-min, CAI Qiu-rou
(Dept. of Computer Science and Engineering, Tongji University, Shanghai 200331, China)
Abstract:The structure of party-construct information system is discussed in this paper. In this system, the platform for data exchanging is the kernel. It is most important to ensure the data transferring safety, data integrity, no modification and not negation. So the system security solution based on PKI technology is brought forward and implemented.
Key words:PKI; CA; unsymmetrical encrypt; symmetrical encrypt
1 引言
随着改革的不断深入和上海经济的快速发展,如何运用科学手段对上海现有130万党员、6万多党组织进行有效管理,是新时期党建的重要课题,也是为适应新形势下社会经济结构的“多元化”变化对党建提出的新要求。基于Internet的党建信息系统的建立,旨在对全市的党员、党组织信息进行集中、统一的管理,及时、准确地掌握各种数据,为领导的决策提供充分依据,为全市的基层党建工作提供有力的技术支持。随着计算机技术的发展和互联网络的普及,信息系统的安全正在受到前所未有的挑战。黑客骚扰、病毒侵入、机密信息泄漏等等正成为许多信息部门需要面临的棘手问题。上海市党委组织部是重要管理部门,掌握着许多国民经济重要信息,因此它的信息安全建设在整个信息系统项目中具有非常重要的意义。
2 党建信息系统的业务要求
系统将建立统一集中的数据库,数据包含三大方面,即:党组织信息库、党员信息库、辖系单位信息库。
信息系统主要包括党员服务中心管理系统,部内服务系统,数据交换服务系统,应用服务系统,管理系统,党员服务系统等。其中的核心是数据交换平台。在系统中数据交换平台将负责公务网外各个组织之间以及组织和党员服务中心之间的数据交换,因此是一个非常重要的功能枢纽环节。当某一个公务网外的组织信息发生变化,则系统会自动将变动的数据打包,然后发送到数据交换平台;平台会按照预先设定好的消息队列,将该数据包发送到有接收权的组织(如党员服务中心、发送信息的组织的上级组织等),并通过数据交换平台将接收方接收到数据的确认信息反馈到发送信息的组织,完成整个数据交换的操作流程。
3 安全需求
前面已经提到,党组织、党员的信息是一些比较重要的数据,首先,要保证数据存储、操作安全;而且整个系统中有一部分是在Internet上运行的,因此安全问题就更加关键和重要。确保网上信息有效、安全地进行,从而使信息除发送方和接收方外,不被其他方知悉;保证传输过程中不被篡改;发送方确任接收方不是假冒的;发送方不能否认自己的发送行为,即非否认性。
4 解决方案及具体实现
4.1 系统的解决方案
近年来,通过电子身份认证来实现网上数据交换的安全性的技术被越来越广泛的使用。公钥基础设施(PKI)是目前网络安全建设的基础与核心,是电子商务安全实施的基本保障。数字证书是一个经证书授权中心数字签名的包含公开密钥拥有者信息和公开密钥的文件。最简单的证书包含一个公开密钥、名称以及证书授权中心的数字签名。一般情况下证书中还包括密钥的有效时间,发证机关(证书授权中心)的名称,该证书的序列号等信息,证书的格式遵循ITUT X.509国际标准。利用PKI体系,可以综合应用数字摘要、数字证书、对称加密算法、数字签名、数字信封等加密技术,可以建立起安全程度极高的加解密和身份认证系统,基于上述因素,本系统在建设上充分运用现代网络信息技术及CA认证体系,建立以PKI技术为基础的信息管理数字身份认证系统,以确保网上数据传输的安全性和可靠性,保证系统的正常运行。
4.2 数据信息的安全实现
系统的核心就是数据的交换服务,负责与技监局、社保卡中心进行数据交换。党员服务中心将定期把管理的党组织所辖系的单位信息与技监局管理的单位信息数据进行比对,如信息不一致,则以技监局的数据为准,将单位信息数据导入,更新原有的单位数据;同样,党员服务中心也将定期把管理的党员个人基本信息与社保卡中心管理的人员信息数据进行比对,如信息不一致,则以社保卡中心的数据为准,将人员基本信息数据导入,更新原有的党员个人基本信息,并向社保卡中心提供描述人员党员属性的相关信息,如入党时间、所属党组织等。但是保证数据在传输中的安全、完整和不可篡改以及发送数据方的不可否认性尤为重要。
数据在数据库的访问是经过严格认证的,用户的密码是经过摘要处理后存入数据库,别人无法知悉。
数据在传输前经过加密处理,接受方接收到后进行解密处理来保证数据的安全,当密钥的安全和交换必须谨慎进行。我们知道对称加密速度很快,在不知道密钥的情况下,如果加密强度适中很难破译,但是密钥被截获将造成灾难性的后果。非对称加密不存在这个问题但速度比对称加密慢百倍以上。所以,采用对称加密的方法对数据进行加密,对称密钥随机、实时地生成,然后经非对称密钥加密后和加密的数据一起打包传输,这样就保证了传输数据被截获也不会泄漏。另外为了保证数据的完整性、正确性和发送方的不可抵赖性,对数据进行数字摘要处理,并对数字摘要进行数字签名,就保证了发送方的不可抵赖性,最后把上述信息一起打包传输,具体流程如图1所示。接受方收到后进行相应处理就可以还原数据,并可以确认发送者的身份,流程如图2所示。
图1 用户A发送流程图
具体实施如下:在进行对话之前有个握手过程,握手过程中所交换的信息如下。
(1)双方交换X.509 V3格式的身份证明文件。双方利用非对称加密技术(如RSA)验证对方的身份并得到对方的公钥;
证书的内容包括:证书序列号、证书使用DSA和SHA-1哈希算法签名、证书发行者的名字、证书主体的名字、证书的有效期、DSA 公钥及其参数、主体键标识扩展项、基本扩展项标识等组成。
图2 用户B接收流程图
握手过程建立后,如图1所示用户A发送数据的过程为:
(1)用户A组织好业务数据包(明文);
(2)用户A使用私钥对数据包进行数字签名,并将签名块放到业务数据包后面;
数字签名的代码如下:
java.security.Signature signet
=.Signature.getInstance("DSA");
signet.initSign(priKey);
signet.update(information);
byte[] signedInf=signet.sign();
(3)使用双方约定好的对称密钥和加密算法加密数据(密文);
加密过程代码如下:
Cipher cipher = Cipher.getInstance("DES/ECB/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, skey);
fileIn = new FileInputStream(fileName);
fileOut = new FileOutputStream(outFileName);
CipherOutputStream cipherOut = new CipherOutputStream(fileOut, cipher);
(4)以用户B的公开密钥加密对称密钥,代码如下:
javax.crypto.Cipher rsaCipher rsaCipher = Cipher.getInstance("RSA/ECB/PKCS1Padding");
rsaCipher.init(Cipher.ENCRYPT_MODE, pubRSAKey);
byte[] keyBytes = symmetricKey.getEncoded();
byte[] encodedKeyBytes = rsaCipher.doFinal(keyBytes);
(5)发送加密后的数据包。
通过SSL通讯还可以保证传输通道安全。
如图2所示用户B的接收处理过程为:
(1)接收加密的数据包;
接受数据报到数据包后触发数据处理程序。
(2)以用户B的私有密钥解密对称密钥;
javax.crypto.Cipher rsaCipher = Cipher.getInstance("RSA/ECB/PKCS1Padding");
rsaCipher.init(Cipher.DECRYPT_MODE, priKey);
if (common.Public_var.sKey != null) {
byte[] encodedKeyBytes= rsaCipher.doFinal(common.Public_var.sKey);
SecretKeySpec keySpec = new SecretKeySpec(encodedKeyBytes,"DESede");
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DESede");
SecretKey desKey = keyFactory.generateSecret(keySpec);
(3)用对称密钥对加密的数据进行解密;
java.io.ObjectInputStream objIn
= new ObjectInputStream(
new FileInputStream(skeyFileName));
Key key = (Key)objIn.readObject();
Cipher cipher = Cipher.getInstance("DES/ECB/PKCS5Padding");
cipher.init(Cipher.DECRYPT_MODE, key);
fileIn = new FileInputStream(fileName);
fileOut = new FileOutputStream(outFileName);
CipherInputStream cipherIn
= new CipherInputStream(fileIn, cipher);
int theByte = 0;
int fileLength = 0;
while ((theByte = cipherIn.read()) != -1)
{fileOut.write(theByte);
fileLength++;}
(4)对明文用一次Hash算法,得到信息摘要;同时用用户A的公开签名密钥对数字签名进行解密,等到信息摘要;
Hash算法比较简单,采用MD5或SHA-1算法都可以获得较好的效果。
代码如下:
java.security.MessageDigest mesDigest = java.security.MessageDigest.getInstance("MD5");
mesDigest.update( message);
byte[] digest = mesDigest.digest();
(5)将两个信息摘要进行对比,如果一致说明数据是完整的,没有被篡改;反之表明数据被篡改过。
(6)数字签名的验证:根据A发送的数据包中的签名,B使用A的公钥进行验证,如果验证成功证明确实是A发送过来的,数据包可以长时间保存,对于防止今后的法律纠纷有重要作用。
如下所示:
java.security.Signature signCheck = java.security.Signature.getInstance("DSA");
signCheck.initVerify(pubKey);
signCheck.update(information);
if (signCheck.verify(signedInf)
根据以上数据传输过程,可以完全保证数据传输的保密性、完整性、身份认证和不可抵赖性。
为了保证系统的稳定性和可靠性,系统选用上海CA中心提供的数字认证系统,来对系统中的用户身份进行认证,并对数据进行加解密,保证系统的安全性。该系统已获得国家专利,通过国家权威部门的测评,是保密局推荐的政府采购安全产品。
5 结束语
本文探讨了党建信息系统采用的安全策略,描述了系统安全框架的软件结构,给出系统安全的解决方案。满足了系统的需求,保证了数据交换中数据的完整性、不可篡改性,发送方的不可抵赖性,较好的实现了系统的安全。在上海党建系统已基本运用成功,这些经验对于全国的推广有重要意义。
参考文献:
[1] Bruce Schneier,Applied Cryptography[M]. 机械工业出版社,2000.1.
[2] Bruce Eckel. Java编程思想[M]. 机械工业出版社,2001.5.
[3] 李明柱. PKI技术及应用开发指南. http://ibm.com/developerWorks/cn/.2002-6.
[4] MD5算法研究. http://www.5xsoft.com. 2002-5.
PKI认证技术 篇3
移动业务处理主要依赖于事务处理系统的安全保障,事务处理系统提供用户访问通道,用户进行身份验证之后进入事务处理模块,从而可以完成事务处理平台的所有服务[1]。
身份认证技术依赖的互信任关系依赖于第三方认证机构认证中心(CA)以满足移动身份认证的安全需求。信息交换之前,双方通过CA获取对方的数字证书,识别证书并建立连接。数字证书作为一种有效的网络身份认证技术,可以充分核实用户身份和权限。数字证书拥有者可以将证书传递给他人、通信系统及其他需要身份认证的网络站点以证实自己的身份,随后与对方建立一种可信的、加密的通信关系[2]。
1相关算法
1.1 身份认证技术
被认证技术的真实性以及被认证人的权限是认证技术的核心,用户认证过程就是用户向服务器提供身份证明,并被核实的过程[3]。通常在信息传递的过程中使用用户名、密码的方式进行认证身份认证和简单数据加密。
1.2 数字证书
数字证书签发机构作为被信赖的第三方机构,可以保证证书真实可靠,使用者身份信息、公钥、证书有效期等完整的数字证书数据,是所有移动终端用户在互联网上完成身份证明的保证,它们被写入专有的存储介质中,以保证不背恶意篡改和非法获取[4]。移动身份认证的使用范围很广,随着移动终端的普及,应用范围包括各级政府政务处理、企事业单位日常办公业务、学校等机构的工作信息处理都包含在其中,处理途径包括多个领域,操作内容包括日常应用与办公、信息定期发布、事务处理系统内部事务处理、远程在线交流等。
1.3 认证方案
认证中心(CA)是数字证书的签发机构,CA具有固定的级别,各个CA认证机构之间进行互相验证,从而建立互信任的关系。CA主要负责数字证书的管理,包括证书的认证、审核、证书内容管理、证书有效时间管理以及证书的颁发、更新、撤销和归档等。移动身份认证在现有的PKI/PMI标准基础上,结合数字证书,构建了一个PKI/CA互信任体系[6],客户端和服务器在进行连接时,首先进行身份验证,双方都通过被信任的认证中心获取证明,客户端用户连接服务器之前先发送请求,服务器端接受客户端发送的证书,服务器端验证对方公钥的数字签名,交换加密私钥,确认证书有效性,完成连接。如下图所示。
1.4 认证机制[7]
用户使用系统时,只需要安装客户端程序,当该客户端通过验证成为合法用户时,用户可以安全地使用网络。
1.5 数字证书应用
在应用服务器之前要安装认证服务器,认证服务器主要负责信息解密和身份认证。设备在安装时,完成如下工作:1) 设备在网络注册时,将设备身份数据和与其绑定的U盘的身份数据加密存放在系统的设备认证服务器中;2)在设备认证服务器和终端设备中存放相同的设备认证密码算法软件。
1.6 数字证书应用平台和应用系统接口
系统通过身份认证和PKI技术进行安全保护,在服务器端的应用层和传输层之间添加一个传输通道,用于保护数据和程序在传输过程中不会丢失,数据在传输过程中添加了数字签名。当客户端发送请求,服务器端须进行身份验证,通过验证数字证书的合法性,在客户端和服务器端建立数据传送通道,对数据进行加密,添加数字签名,以保证传输过程中的安全。数字证书与对称、非对称加密算法的结合,可以保证数据加密和用户授权确认作为一套完整严密的身份认证系统,从而确保:1) 信息的发送方和接受方之见传输的消息不会被非法读取;2) 传输过程中信息不会丢失,也不能被人为篡改3)信息的发送方可以确认接收方的身份4)信息的发送方必须承认发送的消息。
2 系统应用分析
移动办公安全体系的安全认证需求有:1)验证客户端用户身份;2)对信息资源的授权进行访问。
2.1 客户端身份认证
认证服务器在接收认证请求时,对该申请进行认证鉴定。服务器端运行如下:(1)将服务器端公钥装载入文件系统;(2)初始化随机数产生程序,以便在首次网络连接时不用进行等待;(3)连接监听端口;(4)监听到连接请求,将产生的时问戳和随机数发送到客户端;(5)接收客户端数字证书;(6)验证客户端数字证书签名;(7)通过认证转入应用服务,否则拒绝服务。客户端签名认证程序要做以下事情:(1)读入用户私钥,并对其进行解密;(2)服务器连接;(3)从服务器端取得待签名的数据;(4)对获得的数据进行签名;(5)将签名结果返回给服务器端。验证流程如图2所示。
2.2 证书授予过程
在这个模块中,认证中心设置在服务端,在服务端进行认证,客户端作为用户,是发出申请的一方,数字认证证书包括“姓名,身份证号,公钥,密钥,参数,签证日期,证书有效期,认证编号”。
2.3 证书撤消过程
根据用户信息撤消证书,返回用户证书已撤消信息。用户通过查询证书状态,可以立刻看到撤消的证书情况。CA建立撤销列表,告知用户数字证书的有效性。撤销列表中包含的数字证书,是所有还在有效使用期,但是被数字证书注册审批机构(Registra-tion Authority,RA)撤销的。证书撤销过程:(1) 证书拥有者向RA提出请求,申请撤销;(2) RA对撤销请求进行审核;(3) 若申请通过审核,则RA将撤销内容发送给CA;(4) CA签发机构修改证书状态,并建立新的撤销列表。
3模块实现
系统实现了认证服务器的建立,证书的签发与管理,证书的验证以及服务器端的实现,并在网络信息系统上进行了实际的应用。在该应用中,认证服务器产生证书存储在的特定区域,当客户端要访问系统时,服务器端首先检测客户端的的证书,如果证书有效,则转到系统中,此时的数据传输都在服务器端启用通道中进行,从而保证传输的数据的安全。
移动用户使用数字证书进行身份验证,在这个过程中,移动终端和事务处理系统进行双向验证:事务处理系统根据收到的数字证书,给予终端用户相应的权限,建立一个安全通道,进行访问控制。在数字证书管理界面填入相应的内容,点击提交生成相应的数字证书,如下图所示:
证书只是第一次使用时需要导入,证书内容保存在服务器,下次在此计算机登录时不用再导入。当更换了计算机时需要重新导入证书。在新的计算机导入证书后,原计算机原来导入的证书自动失效,在原计算机不能再登录(除非再重新导入证书)。导入的证书内容并不保存的你的电脑上,不必担心证书会从电脑上泄露。证书文件可以下载到的U盘里,便于随身携带和保管。证书文件只允许下载一次,数字证书一旦丢失,就不能保证有效性,用户必须重新注册,用户注册后,丢失的证书自动生效,新证书成为唯一有效的身份认证。
4结论
安全性漏洞是移动办公业务发展的主要障碍,逐渐成熟的PKI技术将成为重要的网络安全保障。PKI能有效解决网络环境下的身份认证问题,而使用数字证书则能有效防止身份冒充,为了保障身份认证的安全,将PKI技术与数字证书想结合,对信息传播和数据传输的安全提供有力保障,将数字证书发展到移动平台,保证了安全性和可操作性的同时并不改变事务处理系统的事务内容和事务处理方式。随着移动终端技术的发展以及数字证书的广泛应用为移动办公平台的身份认证技术发展打下了良好的应用基础。
摘要:数字证书在网络世界中唯一标识身份,运用证书管理机构签发的证书绑定PKI技术确保数据在互联网上传播的安全。移动身份认证为远程移动业务的身份认证和信息交换提供安全保障,可以保证数据在传输过程中的保密性、可靠性以及信息的完整性和不可抵赖性。该文针对移动业务数据传输量大和及时性的特点,在访问控制系统的基础上进行身份认证,采用加密技术和数字证书支撑安全平台,在远程用户在进行访问时的身份认证和访问控制。
PKI认证技术 篇4
为解决网络的安全认证问题, 目前广泛采用公钥基础设施 (PKI) 技术。PKI提供在网络环境中对用户进行认证的方式, 可以有效的解决网络安全问题。因此, PKI技术在电子商务、电子政务、电子军务中得到广泛的应用。
1 PKI总体结构
PKI是以公开密码技术为基础, 以数据的机密性、完整性、和不可抵赖性为安全目的而构建的, 支持身份认证、数据加密、完整性和不可否认性的安全基础设施。
PKI系统包括硬件、软件、政策和人。正确、完整的实现PKI技术, 能够为保护敏感信息和网络通信提供一套完备的安全保证。
一个典型、完整、有效的PKI应用系统至少包括以下部分:
1) 认证中心 (CA)
CA认证中心是PKI公钥基础设施的核心, 它主要完成成/签发证书、生成/签发证书撤销列表 (CRL) 、发布证书和CRL到目录服务器、维护证书数据库和审计日志库等功能。
2) 注册机构 (RA)
RA是数字证书的申请、审核和注册中心。它是CA认证机构的延伸。在逻辑上RA和CA是一个整体, 主要负责提供证书注册、审核以及发证功能。
3) 证书和证书库发布系统
证书是数字证书或电子证书的简称, 它符合X.509标准, 是网上实体身份的证明。它是由具备权威性、可信任性和公正性的第三方机构 (CA) 签发的, 因此它是权威性的电子文档。证书库是CA颁发证书和撤销证书的集中存放地, 是网上的公共信息库, 可供公众进行开放式查询。用于存储已签发的数字证书及公钥, 用户可由此获得所需的其他用户的证书及公钥, 发布系统主要提供LDAP服务、OCSP服务和注册服务。注册服务为用户提供在线注册的功能;LDAP提供证书和CRL的目录浏览服务;OCSP提供证书状态在线查询服务。
4) 密钥管理中心 (KMC)
密钥管理中心 (KMC) :密钥管理中心向CA服务提供相关密钥服务, 如密钥生成、密钥存储、密钥备份、密钥恢复、密钥托管和密钥运算等。
5) PKI应用接口系统
为各种各样的应用提供安全、一致、可信的方式与PKI交互, 确保所建立起来的网络环境安全可靠, 并降低管理成本。
2 基于PKI的统一身份认证系统的构建
2.1 总体设计
该文设计了一个基于PKI的身份认证系统, 该系统以PKI的证书申请、证书审核、证书签发和证书发放机构为基础, 为网络的各种应用系统提供集中统一的身份认证服务。本身份认证系统分为认证客户端、USB-Key、认证服务器、票据服务器和需调用的LDAP目录服务器。用户只需要在网络中主动地进行一次身份认证过程, 然后就可以访问其被授权使用的所有处在网络上的资源而不需要其主动参与其后的身份认证过程。做到用户一次登录即可遍历网络上运行的所有系统, 即实现所谓的“一点登录, 多点漫游”。
它的逻辑结构如图1所示。
在系统设计中, 用户使用USB-Key登陆认证客户端, 由认证客户端提交用户信息到身份认证服务器, 身份认证服务器连接PKI和LDAP服务器完成与用户之间的双向身份验证, 认证通过则转入票据服务器。
2.2 认证客户端
主要实现系统和客户的管理, 为终端用户提供一个简洁、可操作的交互界面。
2.3 电子钥匙USBKey
每一个用户拥有一个USB-Key, USB-Key中存有用户证书、用户密码口令以及与用户证书对应的私钥。使用时, 客户将自己的USB-Key插入PC机的USB接口, 等待系统提示。认证客户端识别到有USB-Key插入时, 提示用户输入密码口令。用户输入口令后如果口令正确, 认证客户端与USB-Key建立连接, 否则连接失败。
2.4 身份认证服务器的设计
该服务器的主要功能如下:
1) 接收客户端的信息。
2) 验证客户端证书的有效性时要验证证书链、证书有效期、证书黑名单和证书持有者 (验证私钥签名) 。CRL和证书链存放在本地, 并且定期到LDAP下载新的CRL。
3) 认证成功后, 将系统转入票据服务器, 失败则返回用户登陆界面。
身份认证采用双向认证的方式, 认证协议如下:
(1) AS→U:RAS
(2) U→AS:{Cert Iu‖Ru‖SIGNu (RAS) }
(3) AS→U:{Cert IAS‖SIGNAS (Ru) } (用于客户端验证服务器身份)
根据此身份认证协议的认证工作流程如图2所示。
工作流程说明如下:
(1) 客户U通过客户端请求访问验证器AS。
(2) 验证服务器AS收到客户请求后, 响应请求并向未通过认证的客户U发送随机数RAS。
(3) 客户收到服务器响应, 用私钥Pri KU对RAS签名, 得到SIGNu (RAS) , 同时读取自己的证书Cert IU, 并产生随机数Ru。向验证服务器发送自己的用户证书Cert IU, 客户端随机数Ru和对RAS的数字签名SIGNu (RAS) 。
(4) 服务器收到信息后, 首先验证用户证书的合法性, 其中含有以下四步:
(1) 验证该证书是否由可信的CA颁发, 这里涉及到整个证书链的认证, 即如果不能直接信任该证书, 就一直向上查找, 一直到找到自己信任的或根CA为止;
(2) 如果证明是所信任的CA颁发的证书, 那么就要解析证书, 获得证书的内容;
(3) 验证证书的序列号是否有效, 在证书作废列表中CRL查询, 看证书是否作废;
(4) 验证证书是否过期。表1认证过程中所用符号定义
用户证书验证通过后, 使用用户公钥Pub Ku及RAS, 验证客户签名SIGNu (RAS) 是否正确。
(5) 验证不通过则拒绝用户登录。
(6) 验证通过后服务器从客户证书Cer Iu中提取身份信息, 如用户名称或证书序列号等, 查询LDAP服务器的用户列表, 判断用户是否为注册的合法用户。
(7) 如果不是合法用户, 则返回客户端拒绝登陆的信息。
(8) 如果是合法用户, 认证服务器使用私钥Pri KAS签名RU, 得到SIGNAS (RU) , 返回Cert IAS, SIGNAS (RU) 。
(9) 客户端使用服务器端证书公钥Pub KAS、Ru验证服务器签名SIGNAS (Ru) 是否正确, 同时验证Cert IAS是否可信, 其验证过程与服务器端类似。验证通过, 用户可以根据服务器身份证书Cert IAS中标明的服务器身份信息, 如服务器名称、服务器域名或服务器IP地址判断是否为自己正在登录的服务器, 如果是则用户可以根据服务器响应进入系统。如果验证不通过, 或者服务器的身份信息与用户希望访问的服务器身份不符, 客户可退出登录。
上述的认证流程实现了一个完整的双向身份认证。该认证过程包含了2个方面, 步骤第 (1) ~第 (7) 完成了认证服务器对用户的认证, 步骤第 (8) ~第 (9) 则完成的是用户对认证服务器的认证, 认证过程采用了冲击/响应认证模式, 这样可以完整地解决网络应用系统中通信双方的身份认证问题, 避免假冒网站或恶意服务器伪装等安全问题。
2.5 票据服务器的设计
票据服务器包括票据签发模块、票据解析模块。当用户通过身份验证后, 票据签发模块将生成用户的一个认证凭据ticket (即票据) , 该票据中包含用户的基本信息 (对个人用户有姓名、性别、证件类型、证件号码、电话、Email等) 和系统需要的一些关于用户登录的信息, 同时还包含用户可以访问的系统列表、用户所具有的权限等信息, 该信息存储在用户信息库中。用户的登录票据分别针对具体的应用系统, 并使用对应于该应用系统的数字证书的公钥进行数字签名, 保障只有该应用系统才能对其进行解密, 防止用户信息泄漏给无关的应用系统。系统将用户的票据信息存放在身份验证平台的session中, 当用户退出系统时, 身份验证平台自行销毁该session, 并清空所有关于该用户的票据信息。当用户在不同的系统间切换时, 应用系统会使用Web Service技术, 向统一身份认证系统申请验证用户当前票据是否合法, 如果是合法用户则可以登录该系统。该系统使用根数字证书进行解密, 以获得该用户的具体信息否则返回登录界面。
3 结论
基于PKI的统一身份认证系统有效的解决了信息网络空间中的信任问题, 确定信息网络空间中各种经济、军事和管理行为主体 (包括组织和个人) 身份的唯一性、真实性和合法性, 从而保护了信息网络空间中各种主体的安全利益。用户能够直接访问各个应用系统, 并在各个应用系统之间进行快速安全切换, 不需要进行多次身份认证, 为用户提供了从事复杂业务管理活动的方便性和安全性。
参考文献
[1]谢冬青, 冷健.PKI原理与技术[M].北京:清华大学出版社, 2004.
[2]冯登国, 卿斯汉.信息安全—核心理论与实践[M].北京:国防工业出版社, 2000:12-18.
[3]潘娟.基于PKI的身份认证技术的研究和实现[D].北京:华北电力大学, 2002.25, 9.
[4]马臣云, 王彦.PKI网络安全认证技术与编程实现[M].北京:人民邮电出版社, 2008.
PKI认证技术 篇5
目前, 在网络安全领域出现很多种安全技术, 它们从不同层次和角度入手, 解决网络安全问题, 本文以电子政务系统为例, 研究如何利用公钥基础设施 (public key infrastructure, PKI) 技术进行身份认证[1], 系统采用JAVA技术开发, 解决了身份认证和用户授权问题, 保证了电子政务系统的信息安全。
1 公钥基础设施PKI
1.1 PKI框架
PKI主要包括认证中心CA、注册机构RA、证书库/CRL和PKI用户四部分构成[2]。图1给出了PKI的应用模型。
存放证书库/CRL的服务器称之为证书服务器, 目前常用的是基于LDAP协议的系统, LDAP是以C/S方式对X.500目录进行操作, 用于存放和读取证书和CRL列表。
PKI用户是PKI的使用者, 包括持证者和验证者, 持证者就是证书的申请者, 可以对证书进行更新和销毁, 利用证书证明自己的身份或者加密数据;验证者需要验证证书的有效性等信息, 一般是应用系统, 通过验证决定是否给持证者相应的权限。
认证中心CA为每个使用公钥的用户发放数字证书, 数字证书中的用户名称和证书中的公钥相对应, 使持有者、持有者的密钥对以及持有者其他相关信息和证书中心建立一种联系, 从而保证用户真实性和证书相一致。认证中心允许管理员撤消和更新证书, 可以周期性地发布CRL列表[3]。
注册中心RA是数字证书的审批机构, 对申请者的信息进行身份认证和登记等工作, 同时对生成的证书进行相应的管理。
1.2 证书的产生方式
证书的产生方式有两种[4]:一是由用户生成密钥对, 然后将公钥传给CA, CA审核通过后会生成证书, 然后将证书传送给用户, 同时将证书存放到证书库中;二是密钥对由CA生成, CA利用公钥直接生成证书并存放到证书库中, 然后利用安全信道将私钥传送给用户, 同时将私钥销毁;以上两种方式CA在发放证书的时候都要进行数字签名, 本系统的设计是基于第二种方法。
2 电子政务认证系统设计
2.1 系统结构
电子政务认证系统主要分为四个模块, 分别是认证模块、用户模块、RA注册模块和CA证书服务模块。系统结构如图2所示。
认证模块主要是针对访问电子政务系统的用户进行身份验证。验证采用的是用户数字证书和电子政务系统用户账号相绑定的方式, 认证模块在验证用户名和口令的同时, 根据用户名获取用户的数字证书, 通过“挑战-应答”协议确认用户的合法身份, 极大地增强系统的安全性, 是本系统的核心模块。
用户模块负责用户登录电子政务系统和申请数字证书两项功能。首先用户登录电子政务系统页面输入用户名和口令, 如果验证通过, 系统会跳转到证书验证界面, 要求用户导入含有私钥的数字证书, 若用户没有申请数字证书, 则用户可点击用户证书申请界面, 进行数字证书的申请操作。
CA证书服务模块主要负责用户密钥对和数字证书的生成。根据RA模块的用户信息, 利用RSA算法生成密钥对和X.509V3数字证书并颁发给用户, 定期更新和废除证书, 并存储到证书库中, 是本系统的基础模块。
RA注册模块主要负责证书用户申请信息的注册和审核, 用户模块将用户信息发送给RA注册模块, RA注册模块审核通过后发送给CA证书服务模块, 证书生成后, 负责证书的发送和下载等。
证书服务器是以X.500目录的形式存放证书和CRL的, 利用LDAP轻型目录协议对证书和CRL进行查询、修改、增加和删除等操作。
2.2 数字证书的申请流程
本系统利用CA模块生成密钥对和数字证书, 并将其封装成文件, 通过安全通道传送给用户, 该过程具体流程如下:
1) 用户端通过URL访问注册中心RA模块, 得到web页面, 它提供表单来让申请者输入指定的注册信息;
2) 输入完信息后提交表单, 服务器端的RA模块负责申请者的信息登记和审核等, 审核通过后将信息发送给CA认证模块;
3) 当CA模块收到RA模块的申请信息后, 自动生成公/私密钥对, 根据证书操作管理规范定义的规则生成X.509数字证书, 并将其保存到证书数据库中, 然后将私钥和数字证书文件传送给用户模块;
4) 为了保证证书文件的安全, 需要在用户模块和CA模块之间建立安全的传输通道, 具体过程如下:
用户下载认证中心CA的可信证书, 同时产生会话密钥key;
用户利用CA的公钥PKca对会话密钥key加密, 形式为Epkca (key) , 然后将加密的文件传送给CA;
CA利用自己的私钥SKca对加密的文件进行解密, 形式为Dskca[Epkca (key) ], 得到会话密钥key;
用户和CA之间就可以利用会话密钥key进行安全通信, 安全通道建立完毕。
5) CA将证书文件数字签名后发送给用户;
6) 申请过程结束。
2.3 身份认证流程
本系统身份认证机制采用的是“系统用户+数字证书”方式, 用户和口令认证通过后, 利用数字证书通过“挑战-应答”协议进行身份验证, 该协议由用户模块和认证模块通过几次对话来完成, 其工作流程如图3所示。
1) 当用户登录时, 认证模块首先核对用户名和口令, 只有用户名和口令通过, 系统才会要求用户导入私钥, 同时在证书库中查询该用户的数字证书;
2) 若证书库中没有该用户的数字证书, 则系统会自动跳转到证书申请页面, 要求用户申请数字证书;
3) 若在证书库中查询到该用户的数字证书Pcert, 则会检查数字证书的路径、完整性以及是否存在于CRL表中, 如果数字证书有效, 认证模块会生成一个随机数Rb, 反馈给用户模块作为“挑战”;
4) 用户模块利用用户私钥对随机数Rb进行数字签名, 结果为Eska (Rb) , 并将该结果提交给认证模块进行验证;
5) 认证模块从数字证书P c e r t中获取用户的公钥, 利用公钥对数字签名解密, 结果为Rep=Dpka[Eska (Rb) ], 认证模块将之前生成的随机数Rb和Rep比较, 如果相等, 则用户的身份合法, 否则为非法用户。
3 系统实现
3.1 系统开发技术
本系统的开发采用Java EE框架, 使用了Java.Security包和Javax.Crypto包, 它们能够为安全框架提供类和接口, 实现消息摘要算法、加密与解密等功能, 这里列出几个关键的类和接口:
Provider类能提供加密算法、密钥的生成、管理和转换等功能, 可使用的算法如DES、RSA、MD5或SHA-1等;
Java.Security.Cert提供用于解析和管理证书、证书撤消列表 (CRL) 和证书路径的类和接口;
Message Digest类实现了消息摘要算法, 它继承于Message Digest Spi类, 是Java安全提供者体系结构中最为简单的一个引擎类;
Key接口是所有密钥接口的顶层接口, 一切与加密解密有关的操作都离不开Key接口。Secret Key、Public Key、Private Key三大接口继承于Key接口, 定义了对称密钥和非对称密钥接口。
3.2 系统关键代码
本系统的关键部分是CA模块和认证模块, CA模块主要功能是生成密钥对, 将私钥prikey保存到myprikey.dat文件中, 通过安全通道传送给用户;将公钥保存到mypubkey.dat文件中, 利用Certificate Factory和Certificate两个对象生成数字证书, 并将公钥绑定其中, 数字证书文件是pcert cer, 将数字证书存储到证书数据库中, 下面列出生成密钥对的关键代码:
用户模块实现的是用户申请证书和数字签名的功能, 用户存放CA模块传送来的私钥文件myprikey.dat, 当用户登陆电子政务系统进行验证时, 认证模块发送随机数Rb给用户模块, 用户模块对Rb进行数字签名, Rb存放在数组info[]中, 关键代码如下:
认证模块根据用户名和口令在证书库中获取数字证书pcert.cer, 利用数字证书中的公钥对收到的数字签名sig Result进行验证, 同存放于info[]数组中的Rb随机数进行比较, 得到验证结果, 部分关键代码如下:
4 结束语
以PKI为基础的公钥认证技术是当前认证技术的主流, 本文设计的基于PKI的电子政务身份认证系统, 可以有效地保护用户的身份安全和应用系统的数据安全, 系统采用Java语言实现, 满足了电子政务信息安全的应用需求。
参考文献
[1]刘建伟, 王育民.网络安全-技术与实践[M].北京:清华大学出版社, 2007:89-92.
[2]邓志宏, 颜君彪, 蔡悦华.基于PKI的网络信息安全模型的研究与设计[J].计算机工程与设计, 2007, 28 (2) :349-350.
[3]Housley R, Polk W, Solo D.Internet X.509 publicKey infrastruc-ture, certificate and CRL Profile[S].RFC2459, 2009.
PKI认证技术 篇6
随着网络信息技术的迅速发展以及Internet的不断普及,在网络传递信息时,信息的机密性、完整性、身份鉴别和不可否认性显得越来越重要。PKI是信息安全领域一种成熟的解决方案,遵循了既定的标准,能够为所有的网络应用提供密码服务。PKI信任模型是PKI整体架构的抽象,它决定了域内不同实体的组织结构,是建立PKI的首要问题。信任模型决定了在网络上采用信任的形式与该形式带来的信任风险,提供了建立和管理信任关系的框架,PKI作为一个传播信任关系的系统,信任模型是至关重要的,它显示了PKI中信任是怎样被建立的。
针对校园网络的实际特点,建立内部CA,不但可以满足校园内部人员访问的安全需要,还可以节约成本、便于管理和进行扩展。但是在越来越庞大和复杂的网络环境中,对PKI体系的要求也会越来越高,特别是在PKI体系的互操作问题上。各高校和部门会采用不同信任模型,这就涉及到各种PKI域的互连,组件之间的交互等问题。本文在各种传统的信任模型的基础上,根据校园网的应用环境,提出一种复合结构的模型,既可以很好解决这些问题,又能提高系统的安全性能。
1 PKI体系
PKI即公钥基础设施,简单地说就是利用公钥理论和技术建立的提供信息安全服务的基础设施,它是国际上解决开放式互联网络信息安全需求的一套体系。
PKI是随着计算机和互网的发展而产生的,可以满足人们对网络交易安全保障的需求,它基于数学的密码理论,其中最基础的理论是公钥密码技术。公钥基础设施PKI采用了证书管理公钥,通过第三方的可信任机构认证中心,把用户的公钥和用户的其他标识信息捆绑在一起,在Intemet上验证用户的身份,保证网上数据的安全传输。
如图1所示,终端实体即用户向RA提出申请证书,并提供自己的身份信息,RA则验证用户信息,若正确RA向CA提示可以颁发证书,CA便存储用户信息,生成证书和密匙,备份证书到证书库,并将证书信息传给用户,用户得到证书和密钥便可使用。
CA(Certification Authority)认证中心是PKI的核心,是具有权威性、可信任性及公正性的第三方机构,通过CA向用户颁发公钥证书,将用户身份信息与用户所持有的公钥相互绑定,从而实现对用户身份的证明。并且需要管理证书和发布证书。
RA(Registration Authority)注册中心,相当于CA之间的一个代理机构。主要是负责收集用户信息和确认用户身份,接受用户的注册申请,审查用户的申请资格。当用户获得RA的认可后,才能得到CA颁发的证书。
证书存储库,用来存放用户已经申请颁发了的证书。这个证书库是面向公众开放的数据库,主要提供查询功能,目的一般来说有两个:(1)用户可以查询得到通信对方的公匙;(2)是要验证通信对方的证书是否已进入CRL列表里。
终端实体是指一个数字证书的持有者,即证书主体(certificate subject)。终端证书的主体可以是一个人,或者某个应用程序,如一个Web服务器、一个主机系统等。在应用证书的场合,终端实体总是要使用自己的私钥(证明自己的身份,解密发给自己的信息等),因此,保证终端实体安全访问自己的私钥非常重要。
交叉认证隶属于PKI互操作问题的一部分,是指两个CA互相为对方的公钥进行数字签名,形成交叉认证证书(Corss Certfiicaets),使得各自签发的用户证书可以被对方的用户(应用软件)正确校验。交叉认证证书就是CA证书与用户证书之间的中间级证书。PKI的交叉认证问题,就是解决PKI互操作性的一般性框架技术,实际上就是扩展的PKI信任模型。
2 常见的CA信任模型
在PKI体系中,信任模型是指CA与用户以及CA与CA之间的信任关系,并且包括如何建立信任关系,搜寻和遍历信任关系的规则。不同的网络环境对信任模型有不同的需求。
2.1 单CA结构
单一CA结构的信任模型是最基本的信任模型,也是在企业环境中比较常用的一种模型。顾名思义,此模型只有一个CA来签发和管理所有证书和信息。整个PKI体系只有一个CA,它为整个体系中的所有终端用户签发和管理证书。PKI体系下的所有终端用户都信任这个CA。每个证书路径都起始于该CA的公开密钥,该CA的公开密钥成为PKI体系中所有用户惟一的信任锚。其结构图如图2所示。这种模型对于大型网络,面向大量的用户和终端时,单一CA就很难满足需要了。
2.2 层次结构
层次结构信任模型是一个倒状的树型结构,树根是根CA中心,由上向下各树枝部位有一个CA,叶子节点是用户。层次结构模型的根CA为它的直接后代节点发放证书;中间节点CA中心为它的直接后代节点CA发放证书;中间节点CA都可以为最终用户发放证书,但为最终用户发放证书的CA中心不能有下一级CA中心。其结构示意图如图3所示。
在这种模型中,所有节点都信任根CA中心,且保存一份根CA中心的公钥证书。任何两个用户之间进行通信时,为验证对方的公钥证书,都必须通过根CA中心才能实现。
在层次结构的信任模型中,根CA中心是所有用户的信任中心,一旦根CA中心出现信任危机,则整个PKI体系出现信任危机。这种模型不适合在Internet这样的开放环境中使用,当然电子商务系统也不适合,但它适合于局域网中,行业内部这种上下级关系明确的部门使用,譬如高校,政务部门,公司内部等。
2.3 网状结构
网状结构的信任模式如图4所示,这种模式没有明确的信任中心,各个CA之间是平等的。由于具有多个信任点,因此这种模式具有很好的灵活性,CA扩展容易。它不存在惟一的信任中心,因此当一个信任点出现信任问题之后,不会造成整个PKI体系的崩溃。此模型可以比较容易的在各个独立的CA之间建立信任关系,信任链的节点数目最多为加入该信任体系CA的数量。
网状结构也具有一些缺点:(1)证书验证路径难以确定。(2)由于有多种验证途径可供选择,因此容易产生验证路径过长的情况(即无法估计验证路径的长度),并且如果存在单方信任的情况下,有些信任路径无法建立双向信任关系。(3)在这种模式下的用户必须根据证书中的内容确认证书能够在什么应用中使用,而不能根据证书是那一个CA签发的来确定。
2.4 桥结构
在该信任模型中,各根CA只和处于中心地位的桥CA(Bridge Certificate Authority)之间存在信任关系。其中,桥CA的作用类似于网络中的集线器(HUB),它无管理职能仅起到连接作用。原有各信任域的根CA必须和桥CA执行交叉认证。如图5所示,在这种信任关系中,含N个根CA的系统只需颁发N个交叉证书。
对于网状信任结构来说,各根CA之间两两相互信任,在N个根CA中心的系统中,每个根CA中心必须保存其余N-1个根CA中心的公钥证书,需建立N2个信任关系。而且,CA数量越多,证书路径的构造就越复杂,很可能导致两个端实体之间出现多条证书路径,甚至出现死循环。证书验证也会因此变得非常困难,用户开销也急剧增加。
与网状结构相比,桥CA结构的证书路径惟一,构造相对简单。但是,在使用桥CA进行系统扩展时,需要使用证书内容约束PKI系统之间的信任关系。因此,证书内容的生成较为复杂。另外,桥CA结构也存在单点故障的隐患。一旦桥CA出现问题(如私钥泄露等),将导致跨域交叉认证无法进行。
3 新型校园CA信任模型设计
校园网是一个包括教学、科研、生活等多方面内容为一体的综合性网络,由许多应用系统组成。校园网作为极具代表性的局域网,有确定的可信任区域边界,通过行政管理方式,可以制定一个权威的CA管理中心,大大简化了CA认证中心的证书审核等程序。通过自己开发一套CA认证系统,一方面节省了成本;另一方面又可以满足校园网内教务管理、学生选课管理、办公自动化和财务管理等系统对身份认证和信息保密的要求。并且对于整个认证系统,部门的系统扩展,运行的效率,还有应对遭受一定程度的破环都应有较稳定的能力。
3.1 新型信任模型的设计
在学校内部,学院与本校之间是从属关系,且学院数量有限,可以采用层次结构的信任模型,从而达到需要。而各高校之间则是同位体关系,而且是不同PKI域,则可使用交叉认证和桥CA来实现交互。模型设计图如图6所示。
3.2 对新型模型的结构分析
此信任模型中的根CA代表了不同的高校的CA。每个学校向下有自己的下级子CA,即各个学院CA。学校内部采用了层次结构的信任模型,此模型符合校园网络结构的需要。
在各学校之间,首先采用的桥CA的信任结构,然后再以环形交叉认证方式。这种模型即利用了桥CA结构路径简单的优点,又采用了环形交叉认证加强了保护机制。此模型与网状信任模型有些相似,但技术上稍复杂,结构上更简单。下面从三个方面来分析此种结构的模型:
(1)信任路径
此模型首先采用的是桥CA来进行交叉认证,有N个根CA,就只需要N个交叉认证证书。每个根CA又与之相邻的根CA建立信任关系,因此再需要N-1个证书即可。因此,在寻找认证路径的时候,首先可选择桥CA的单一认证路径,然后也可通过环形路径进行认证。比如根CA1要与根CA2进行认证,有三条路径可以选择:(1)根CA1—BCA—根CA2;(2)根CA1—根CA2;(3)根CA1—根CA4—根CA3—根CA2。
根据实际应用情况,我们可以选取最短路径。比如,与相邻的根CA交互,则可以直接进行交叉认证,每个根CA保存有两个与之相邻的根CA的交叉认证证书,这样,只需要进行一次交叉认证即可完成交互。若是与其他根CA交互,则采用桥CA来认证,只需要两次交叉认证即可完成。另外通过环形路径交叉认证一般不采用。所以,任意两个根CA交互,最多只需要两次交叉认证即可完成。
(2)CA保护机制
单一的桥CA结构的关键就是桥CA,若桥CA出现信任危机或是故障,那整个信任域都会遭受影响。而网状模型的特点就是它强大的CA保护机制,而此新型信任模型的便是汲取了它的这个特点。
若是桥CA出现问题,各根CA还可以通过环形交叉认证方式来交互。若是单个根CA出现问题,其他根CA还是可以通过桥CA实现交互,整个信任域并无影响,只是环形结构截断而已。这样的结构有着双重保护,安全性能大大加强。
(3)信任域的扩展
对于这种复合结构的信任模型,CA的扩展也很简单。首先选取两个相邻的根CA,其间作为插入点。先取消两者交叉认证,再与新插入的根CA建立新的信任关系,环形结构的CA扩展完成。在桥结构中的,扩展更为简单,只需与BCA建立信任关系即可。这样相当于只增加了两个交叉认证,就可完成扩展。
4 总结
目前很多行政部门,大型企业都已经采用PKI来进行内部事务处理、实现虚拟专用网(VPN)并确保公司的系统安全。随着电子商务的蓬勃发展,各PKI之间互联互通的需求日益迫切。就我国目前PKI发展的现状看,区域性和行业性的CA中心繁多,而各家CA认证中心采用的体系结构、加密机制到安全策略和实现技术又各不相同,给PKI的互联互通带来很大困难。桥CA结构以其很好的弹性连接能力,将各种体系结构的PKI系统桥接起来建立信任关系,实现不同PKI的互联,并与交叉认证的环形结构组合使整个系统的安全性能更有保证。但是这种复合式的结构在实际建设中就比较繁琐。比如各种不同结构的PKI域通过桥CA连接,这已经是一项有相当难度的技术,而且各种证书的管理也会比较复杂。
参考文献
[1]John Linn.Trust Model and Management in Public-Key Inrfrastructures[EB/OL],Technical Report,6November.2000.ftp://ftp.rsasecurity.com/pub/pdfs/PKIPaper.pdf.
[2]卢开澄.计算机密码学[M].北京:科学出版社.1999.
[3]关振胜.公钥基础设施PKI与认证机构CA.电子工业出版社.2002.
[4]D.Bruschi,A.Curti,E.Rosti.A quantitative study of Public Key Infrastructure[J].Computers&Security.2003.
[5]Burr W.E.Public Key Infrastructure(PKI)Technical Specification:Part A–Technical Concept of Operations[DB/OL].Working Draft,4September1998.http://csrc.nist.gov/pki/twg/baseline/pkicon20b.pdf.
[6]Ray Hunt,Technological Infrastructure for PKI and Digital Certification[J].Computer Communications,2001.
PKI认证技术 篇7
随着网络与通信技术的发展,无线局域网(WLAN)应运而生,且发展迅速。然而,使用无线技术存在着一定的风险,有些风险在有线网络中就存在,还有些风险是无线网络所特有的,它由无线网络传输介质的开放性所导致,这就需要专门研究适用于无线网络的安全策略。在无线局域网的IEEE 802.11系列标准中,规定了数据加密和用户认证的有关措施,但是随后研究者揭示了这些安全措施中的种种设计缺陷,这使得用户对于无线局域网的安全性缺乏信心[1]。因此影响了无线局域网的应用范围和发展前景。
目前,安全问题已经成为阻碍无线局域网技术普及的主要原因,所以针对无线局域网安全问题的研究就显得更加重要。
2. 身份认证改进方案的研究
2.1 问题的提出
目前,公钥基础设施PKI在信息安全领域日益受到重视,符合X.509的证书认证在网络中的应用逐渐普及。在此,本文研究提出了一个基于PKI的无线局域网认证,并且通过密钥分发实现网络安全的设计方案。
有线等价协议规定了对无线通信数据进行加密的方法,并对无线网络的访问和密钥管理等方面做了具体化的规定。但该协议机制的实现原因是单向认证,因此存在一定的安全隐患。另一常用的认证方案是802.1x,它加入了认证支持,能实现一定的双向认证服务,也就是认证服务器和用户之间的双向性。但是均没有考虑到用户对无线访问接入点的认证,这对网络的安全构成一定的威胁[2]。在本文所研究的方案中,借鉴现在认证机制优点,充分考虑了用户对无线访问接入点的认证。
2.2 身份认证方案的实现
整个身份认证系统由用户MT、接入点无线访问接入点和认证服务器组成。其中,认证服务器的主要功能是负责证书的发放、验证与吊销等;用户与无线访问接入点上都安装有认证服务器发放的数字证书,证书包括认证服务器的公钥以及证书持有者的身份和公钥,作为自己的数字身份凭证。当用户登录至无线访问接入点时,在使用和访问网络之间必须通过认证服务器进行双向身份验证。根据验证的结果,只有持有合法证书的用户才能接入持有合法证书的无线访问接入点。具体的认证实现过程如图1所示。
(1)当用户MT登录到无线访问接入点时,无线访问接入点向用户发送随机数RA。
(2)用户收到RA后生成随机数RB,向无线访问接入点发送请求帧,其中包括用户的数字证书及RA、RB,数字证书中有用户的身份信息和公钥,RA由用户私钥签名。
(3)无线访问接入点接收到用户的请求后验证随机数RA,阻塞所有其它请求,验证RA成功后,无线访问接入点向认证服务器发送自己的数字证书,用户的数字证书和RB,并使用自己的私钥进行签名。
(4)认证服务器接收到无线访问接入点的请求后,首先使用无线访问接入点的公钥对无线访问接入点的数字证书解签名,然后对无线访问接入点的身份进行验证。若认证服务器验证其为合法的,则再对用户的数字证书和RB解签名,然后验明用户的身份。在无线访问接入点和用户的身份都认证成功后,认证服务器向无线访问接入点发送验证成功帧,其中有认证服务器的数字证书和随机数RC,认证服务器先用自己的私钥签名再使用无线访问接入点的公钥加密,从而使无线访问接入点与认证服务器建立信任关系。
(5)无线访问接入点收到验证成功帧后,先用自己的私钥解密,然后用认证服务器的公钥解签名,并将认证服务器的数字证书和RC先用自己的私钥签名,再用用户的公钥加密后发给用户。
(6)用户收到此回应后首先用自己的私钥解密,然后用认证服务器的公钥解签名,并对认证服务器的身份进行验证。验证成功后向认证服务器发送随机数RD,用自己的私钥签名,并用认证服务器公钥加密。
(7)认证服务器收到随机数RD后,用自己的私钥解密,并用用户的公钥解签名。用户和认证服务器用随机数RB、RC和RD为种子产生会话密钥Session Key。然后认证服务器产生临时密钥,用自己的私钥签名,并用无线访问接入点的公钥加密,发送给无线访问接入点。
(8)无线访问接入点接收到以后,先用自己的私钥解密,再用认证服务器的公钥解签名,得到临时密钥,并作出回应。
(9)认证服务器将临时密钥用自己的私钥签名,并用会话密钥加密发送给用户。
(10)用户用会话密钥解密,用认证服务器的公钥解签名,得到临时密钥,用户与无线访问接入点都得到了临时密钥,双方使用临时密钥和加密算法进行保密通信。
2.3 身份认证方案的要点
身份认证方案中,值得注意的是,当加密和数字签名相结合时,加密和数字签名过程的顺序不一样将导致不同的安全强度[3]。如果要求A给B发送信息时不仅要对消息进行签名而且还要对消息进行加密,那么在这种情况下,A可以采用如下两种方式发送消息:一种是先签名,后加密;另一种是先加密,后签名。假设给定明文消息x,在第一种方式中,A先对x进行签名y=SigA(x),然后使用B的公开加密变换对x和y进行加密z=EB(x,y),最后A将密文z传送给B。当B收到z时,首先利用它的解密变换对z进行解密获得(x,y),然后使用A的公开验证函数VerA{x,y}=真是否成立。在第二种方式中,A先利用B的公开加密变换对x进行加密z=EB(x),然后对z进行签名y=SigA(z),最后将(z,y)发送给B。B解密z获得x,然后使用VerA验证A对x的签名y。用第二种方式就会产生一个问题,如果一个敌手获得一对(z,y),他就可以用y’=Sig0(z)代替y得到一对(z,y’),将(z,y’)发送给B,先对z解密,然后使用O的验证算法Ver0验证签名的合法性。这样,B就会误认为消息x来自于O。由于存在这种潜在的危险,因而最好是先签名后加密。
2.4 身份认证方案的性能分析
本认证方案使用三级密钥机制:私钥、会话密钥和临时密钥,将认证密钥与加密密钥进行了分离。私钥只在认证过程中作签名和解密数据用,会话密钥在认证过程中第七步生成,用于向用户分发临时密钥时加密。在认证结束后的通信过程中,临时密钥对传输的数据进行加密,确保数据的机密性。在本文所研究的方案中,随机数RB、RC和RD作为种子在认证中产生会话密钥,它的产生机制决定了每一次认证过程都将产生不同的会话密钥,只要保证随机数的安全,则对会话密钥的攻击就是不可行的。临时密钥较多的暴露在攻击者面前,因此提高它的安全性的主要措施在于对临时密钥的及时更新,只要更新及时,攻击者就无法得到足够的“线索”攻破临时密钥。
3. 身份认证改进方案的优点
该方案采用基于公钥密码体系的数字证书机制,实现了用户与无线访问接入点间双向认证和证书--密钥双认证。双向认证不仅可以防止非法用户接入无线访问接入点而访问网络并占用网络资源,而且还可以防止用户登录至非法无线访问接入点而造成信息泄漏。通信密钥在每次会话时动态生成,而且具有较短的生命期,可以预防密钥长期不变带来的风险,还可以添加对新加密算法的支持。
该方案与有线等价保密协议(WEP)机制的安全性相比,提供了更好的安全性保障,方案具备以下特点:
(1)提供用户与认证服务器的双向认证,防止攻击者利用有线等价保密协议的单向认证机制进行假冒攻击和插入中间人攻击;(2)实现了认证密钥与加密密钥的分离,会话密钥在认证中动态产生,临时密钥的及时更新,增强了密钥的安全性,防止密钥长期不变带来的安全隐患;(3)使用国际通行的分组密码算法,不使用流密码算法,防止密钥流复用问题;(4)使用数字签名机制,提供了防止篡改和不可否认性。
该方案与802.1x相比较,也具有以下一些优点:
(1)增加了认证服务器对无线访问接入点的认证,确保假冒无线访问接入点的攻击不可能实现;
(2)增加了临时密钥分发给无线访问接入点过程中的加密,确保只有合法的无线访问接入点才能解密得到临时密钥。
参考文献
[1]刘蕾,张建军.无线局域网的安全[J].互联网世界,2002,12(2):30-33.
[2]WA Arbaugh,N Shankar,Y JWan.Your.802.11wireless net-work has no clothes[J].IEEE Wireless Communications,2007,9(6):44-51.
PKI网络安全技术 篇8
1 网络安全的特点
网络安全是一门涉及计算机科学、网络技术、通信技术、密码技术、信息安全技术、应用数学、数论、信息论等多种学科的综合性学科。网络安全从其本质上来讲就是网络上的信息安全。从广义来说,凡是涉及到网络上信息的保密性、完整性、可用性、真实性和可控性的相关技术和理论都是网络安全的研究领域。
随着网络技术的发展,特别是Internet的全球化,各种基于互联网技术的网上应用,如电子政务、电子商务等得到了迅猛发展。网络正逐步成为人们工作、生活中不可分割的一部分。由于互联网的开放性和通用性,网上的所有信息对所有人都是公开的,因此应用系统对信息的安全性提出了更高的要求。
1.1 对身份合法性验证的要求
以明文方式存储、传送的用户名和口令存在着被截获、破译等诸多安全隐患。同时,还有维护不便的缺点。因此,需要一套安全、可靠并易于维护的用户身份管理和合法性验证机制来确保应用系统的安全性。
1.2 对数据保密性和完整性的要求
企业应用系统中的数据一般都是明文,在基于网络技术的系统中,这种明文数据很容易泄密或被篡改,必须采取有效的措施保证数据的保密性和完整性。
1.3 传输安全性要求
以明文方式在网上传输的数据,很容易被截获以至泄密,必须对通信通道进行加密保护。利用通信专线的传统方式已经远远不能满足现代网络应用发展的需求,必须寻求一种新的方法来保证基于互联网技术的传输安全需求。
1.4 对数字签名和不可否认的要求
不可抵赖性为了防止事件发起者事后抵赖,对于规范业务,避免法律纠纷起着很大的作用。传统不可抵赖性是通过手工签名完成的,在网络应用中,需要一种具有同样功能的机制来保证不可抵赖性,那就是数字签名技术。
PKI基于非对称公钥体制,采用数字证书管理机制,可以为透明地为网上应用提供上述各种安全服务,极大地保证了网上应用的安全性。
2 PKI的介绍
世界各国对其进行了多年的研究,并已经形成了几套解决方案,但技术最成熟、应用最广泛的解决方案当属公钥基础设施(Public Key Infrastructure)PKI技术。
PKI是建立在公开密钥技术之上的信息安全体系结构,它主要包括两方面的内容:一是数字签名,该技术可以保证传输信息的完整性和不可否认性;另一方面是加密,用户在使用公开密钥对信息加密后,解密私钥不在Internet上传输,这样避免了密钥被窃取。CA(Certificate Authority)是身份认证系统,它可以对网上身份的合法性进行效验。于是出现了PKI/CA这一完整的安全概念,它实现了公认的“身份认证、访问控制、数据保密、信息完整性、不可否认性”的安全准则。所以CA和PKI技术会被同时应用,本文中指的CA系统就是基于PKI/CA技术的认证系统。
PKI(Publie Key Infrastucture)技术就是利用公钥理论和技术建立的提供安全服务的基础设施。PKI技术是信息安全技术的核心,也是电子商务的关键和基础技术。由于通过网络进行的电子商务、电子政务、电子事务等活动缺少物理接触,因此使得用电子方式验证信任关系变得至关重要。而PKI技术恰好是一种适合电子商务、电子政务、电子事务的密码技术,他能够有效地解决电子商务应用中的机密性、真实性、完整性、不可否认性和存取控制等安全问题。一个实用的PKI体系应该是安全的易用的、灵活的和经济的。它必须充分考虑互操作性和可扩展性。它是认证机构(CA)、注册机构(RA)、策略管理、密钥(Key)与证书(Certificate)管理、密钥备份与恢复、撤消系统等功能模块的有机结合。
3 PKI的原理
公钥基础设施PKI的原理,就是通过发放和维护数字证书来建立一套信任网络,在同一信任网络中的用户通过申请到的数字证书来完成身份认证和安全处理。下面简单介绍一下密码学知识。对于普通的对称密码学,加密运算与解密运算使用同样的密钥。通常,使用的加密算法比较简便高效,密钥简短,破译极其困难,由于系统的保密性主要取决于密钥的安全性,所以,在公开的计算机网络上安全地传送和保管密钥是一个严峻的问题。正是由于对称密码学中双方都使用相同的密钥,因此无法实现数据签名和不可否认性等功能。而与此不同的非对称密码学,具有两个密钥,一个是公钥一个是私钥,它们具有这种性质:用公钥加密的文件只能用私钥解密,而私钥加密的文件只能用公钥解密。公钥顾名思义是公开的,所有的人都可以得到它;私钥也顾名思义是私有的,不应被其他人得到,具有唯一性。这样就可以满足电子商务中需要的一些安全要求。比如说要证明某个文件是特定人的,该人就可以用他的私钥对文件加密,别人如果能用他的公钥解密此文件,说明此文件就是这个人的,这就可以说是一种认证的实现。还有如果只想让某个人看到一个文件,就可以用此人的公钥加密文件然后传给他,这时只有他自己可以用私钥解密,这可以说是保密性的实现。基于这种原理还可以实现完整性。这就是PKI所依赖的核心思想,这部分对于深刻把握PKI是很重要的,而恰恰这部分是最有意思的。
比如在现实生活中,我们想给某个人在网上传送一个机密文件,该文件我们只想让那个人看到,我们设想了很多方法,首先我们想到了用对称密码将文件加密,而在我们把加密后的文件传送给他后,我们又必须得让他知道解密用的密钥,这样就又出现了一个新的问题,就是我们如何保密的传输该密钥,此时我们发现传输对称密钥也不可靠。后来我们可以改用非对称密码的技术加密,此时发现问题逐渐解决了。然而又有了一个新的问题产生,那就是如何才能确定这个公钥就是某个人的,假如我们得到了一个虚假的公钥,比如说我们想传给A一个文件,于是开始查找A的公钥,但是这时B从中捣乱,他把自己的公钥替换了A的公钥,让我们错误的认为B的公钥就是A的公钥,导致我们最终用B的公钥加密文件,结果A无法打开文件,而B可以打开文件,这样B实现了对保密信息的窃取行为。因此就算是采用非对称密码技术,我们仍旧无法保证保密性的实现,那我们如何才能确切的得到我们想要的人的公钥呢?这时我们很自然的想到需要一个仲裁机构,或者说是一个权威的机构,它能为我准确无误的提供我们需要的人的公钥,这就是CA。
在PKI中,为了确保用户的身份及他所持有密钥的正确匹配,公开密钥系统需要一个值得信赖而且独立的第三方机构充当认证中心(Certification Authority,CA),来确认公钥拥有人的真正身份。就象公安局发放的身份证一样,认证中心发放一个叫"数字证书"的身份证明。这个数字证书包含了用户身份的部分信息及用户所持有的公钥。象公安局对身份证盖章一样,认证中心利用本身的私钥为数字证书加上数字签名。任何想发放自己公钥的用户,可以去认证中心申请自己的证书。认证中心在鉴定该人的真实身份后,颁发包含用户公钥的数字。
证书。其他用户只要能验证证书是真实的,并且信任颁发证书的认证中心,就可以确认用户的公钥。认证中心是公钥基础设施的核心,有了大家信任的认证中心,用户才能放心方便的使用公钥技术带来的安全服务。
4 PKI组成
4.1 证书机构(Certificate Authority)
有时也叫认证中心。它在“信任模型”中作为一个可信任的第三方权威实体,通过对一个包含身份信息和相应公钥的数据结构进行数字签名来捆绑用户的公钥和身份,这个数据结构被称为公钥证书(简称证书)。证书机构主要负责对用户的密钥或证书发放、更新、废止、认证等管理工作。
4.2 证书库(Repository)
证书库必须使用某种稳定可靠的、规模可扩充的在线资料库,以便用户能找到安全通信需要的证书信息或证书撤消信息。实现证书库的方式有多种,包括X.500、轻量级目录访问协议LDAP、Web服务器、FTP服务器、域名解析服务器DNS、数据库服务器等。。
4.3 证书撤消
CA签发的证书捆绑了用户的身份和公钥,这种绑定在已颁发证书的生命周期里都是有效的。但在现实环境中,由于某些原因,必须存在一种机制撤消这种认可。这些原因包括:用户身份的改变、对密钥的怀疑(丢失或泄露)、用户工作的变动等。
4.4 密钥备份与恢复
在任何可操作的PKI环境中,在密钥或证书的生命周期内都会有部分用户丢失他们的私钥,可能有如下的原因:(1)遗失加密私钥的保护口令;(2)存放私钥的媒体被损坏,如硬盘、软盘或智能卡遭到破坏。在很多环境下,由于丢失密钥造成被保护数据的丢失或不可访问所造成的损失非常巨大,因此通行的办法是备份并能恢复私钥(在加密证书和签字证书双证书模型中,只能备份加密私钥而不能备份签字私钥)。
4.5 自动密钥更新
一个证书的有效期是有限的,这既可能是理论上的原因也可能是基于安全策略上的考虑。用手工操作定期更新自己的证书是件令人头疼的工作,用户常忘记自己证书的过期时间。如果忘了定期更新,他们就无法获得PKI的相关服务。因此,PKI本身应能自动完成密钥或证书的更新,而无需用户的干预。
4.6 客户端软件
客户端软件是一个全功能的、可操作PKI的重要组成部分。没有它,PKI无法有效地提供很多服务,因为我们无法有效地去使用这些服务。开发程序时要注意:客户端软件应当独立于所有应用程序,完成PKI服务的客户端功能。应用程序通过标准接入点与客户端软件连接。
4.7 交叉认证
交叉认证就是多个PKI域之间实现互操作。交叉认证实现的方法有多种:一种方法是桥接CA,即用一个第三方CA作为桥,将多个CA连接起来,成为一个可信任的统一体;另一种方法是多个CA的根CA(RCA)互相签发根证书,这样当不同PKI域中的终端用户沿着不同的认证链检验认证到根时,就能达到互相信任的目的。
5 结束语
个人感觉PKI/CA技术很有发展前途,只是在我国的应用才刚刚起步。另外CA作为电子商务的特殊实体,它必须具有权威性,这种权威性来自政府或公共组织的授予;它必须使公众所依赖的机构,它颁发的证书可信;它必须是公正的,不参与交易双方的。本文仅是停留在比较简单的理论介绍,希望此文能让更多人了解PKI,投入到PKI的研究中来。
随着Internet应用的不断普及和深入,政府部门需要PKI支持管理;商业企业内部、企业与企业之间、区域性服务网络、电子商务网站都需要PKI的技术和解决方案;大企业需要建立自己的PKI平台;小企业需要社会提供的商业性PKI服务。从发展趋势来看,PKI的市场需求非常巨大,基于PKI的应用包括了许多内容,如WWW服务器和浏览器之间的通信、安全的电子邮件、电子数据交换、Internet上的信用卡交易以及VPN等。因此,PKI具有非常广阔的市场应用前景。
参考文献
[1][美]Merike Kaeo.网络安全性设计[M].人民邮电出版社.
[2]王宇.计算机网络安全与控制技术[M].科学出版社出版社.
[3]王常杰,张方国,王育民.一种改进的公钥证书系统[J].电子与信息学报,2001(11).
[4]佘智勇,郑有才.一个简单PKI证书系统的实现[J].计算机安全,2005(10).
[5]王舜燕,江红.一种基于加密算法分析的PKI身份认证方案[J].鄂州大学学报,2005(6).
[6]杨尔明.数字证书技术的进展[J].计算机安全,2004(9).
[7]周恒.使用电子证书增强信息安全性[J].华南金融电脑,2001(12).
【PKI认证技术】推荐阅读:
认证技术11-14
数字认证技术05-14
ASP技术用户认证12-01
信息系统中的认证技术10-21
物联网的安全认证技术06-09
通信系统中的认证技术11-19
建立技术标准和检测认证体系11-10
基于802.1x认证技术的应用分析11-26
产品质量检验机构计量认证技术考核规范08-25
PKI网络安全技术09-11