资源预览内容
第1页 / 共42页
第2页 / 共42页
第3页 / 共42页
第4页 / 共42页
第5页 / 共42页
第6页 / 共42页
第7页 / 共42页
第8页 / 共42页
第9页 / 共42页
第10页 / 共42页
亲,该文档总共42页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
网络安全技术实用教程网络安全技术实用教程第第7章章 数字签名技术应用数字签名技术应用 河南经贸职业学院信息管理系河南经贸职业学院信息管理系主要内容主要内容7.1数字签名概述数字签名概述 17.2数字签名技术原理数字签名技术原理 27.3数字证书数字证书 37.4认证中心认证中心CA 42数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.1.1数字签名的含义数字签名的含义1.什么是电子签名什么是电子签名电电子子签签名名指指数数据据电电文文中中以以电电子子形形式式所所含含、所所附附用用于于识识别别签签名名人人身身份份并并表表明明签签名名人人认认可可其其中中内内容容的的数数据据。通通俗俗地地说说,电电子子签签名名就就是是通通过过密密码码技技术术对对电电子子文文档档的的电电子子形形式式的的签签名名,并并非非是是书书面面签签名名的的数数字图像化,它类似于手写签名或印章,也可以说它就是电子印章。字图像化,它类似于手写签名或印章,也可以说它就是电子印章。电子签名主要有三个作用:电子签名主要有三个作用:(1)证明文件的来源,即识别签名人;证明文件的来源,即识别签名人;(2)表明签名人对文件内容的确认;表明签名人对文件内容的确认;(3)构构成成签签名名人人对对文文件件内内容容正正确确性性和和完完整整性性负负责责的的根根据据。与与传传统统商务活动中的签名盖章作用相同,具有同样的法律效力。商务活动中的签名盖章作用相同,具有同样的法律效力。3数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.1.1数字签名的含义数字签名的含义2.什么是数字签名什么是数字签名数字签名只有信息的发送者才能产生,别人无法伪造的一段数字数字签名只有信息的发送者才能产生,别人无法伪造的一段数字串,它同时也是对发送者发送的信息的真实性的一个证明。串,它同时也是对发送者发送的信息的真实性的一个证明。 ISO 7498-2标准对数字签名是这样定义的:附加在数据单元上的标准对数字签名是这样定义的:附加在数据单元上的一些数据,或是对数据单元所做的密码变换,这种数据或变换允许数一些数据,或是对数据单元所做的密码变换,这种数据或变换允许数据单元的接收者用以确认数据单元来源和数据单元的完整性,并保护据单元的接收者用以确认数据单元来源和数据单元的完整性,并保护数据,防止被人数据,防止被人(如接收者如接收者)伪造。伪造。4数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.1.2数字签名发展状况数字签名发展状况随随着着国国际际互互联联网网的的发发展展,电电子子商商务务已已经经逐逐渐渐成成为为人人们们进进行行商商务务活活动动的的新新模模式式。电电子子商商务务从从产产生生至至今今虽虽然然时时间间不不长长,但但发发展展十十分分迅迅速速。电电子子商商务务的的发发展展前前景景及及其其带带来来的的影影响响,已已经经引引起起世世界界各各国国政政府府和和企企业业的的广广泛泛关关注注和和积积极极参参与与。但但是是,由由于于电电子子商商务务交交易易平平台台的的虚虚拟拟性性和和匿匿名名性性,其其安安全全问问题题也也变变得得越越来来越越突突出出,电电子子签签名名技技术术的的应应用用及及其其立立法法为电子商务安全运行提供了重要保障。为电子商务安全运行提供了重要保障。数数字字签签名名是是目目前前电电子子商商务务、电电子子政政务务中中应应用用最最普普遍遍、技技术术最最成成熟熟、可可操操作作性性最最强强的的一一种种电电子子签签名名方方法法。所所谓谓数数字字签签名名就就是是通通过过某某种种密密码码运运算算生生成成一一系系列列符符号号及及代代码码组组成成电电子子密密码码进进行行签签名名,来来代代替替书书写写签签名名或或印印章章。它它采采用用了了规规范范化化的的程程序序和和科科学学化化的的方方法法,用用于于鉴鉴定定签签名名人人的的身身份份以以及及对对一一项项电电子子数数据据内内容容的的认认可可。它它还还能能验验证证出出文文件件的的原原文文在在传传输输过过程程中中有有无无变变动动,确确保保传传输输电电子子文文件件的的完完整整性性、真真实实性性和和不不可可抵抵赖性。赖性。5数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.1.3数字签名的作用与用途数字签名的作用与用途1.数字签名的作用数字签名的作用 1)信息传输的保密性信息传输的保密性交易中的商务信息均有保密的要求。如果信用卡的帐号和用户名交易中的商务信息均有保密的要求。如果信用卡的帐号和用户名被别人获悉,就可能被盗用:订货和付款的信息被竞争对手获悉,就被别人获悉,就可能被盗用:订货和付款的信息被竞争对手获悉,就可能丧失商机,因此在电子商务的信息传播中一般都有加密的要求可能丧失商机,因此在电子商务的信息传播中一般都有加密的要求。2)交易者身份的可鉴别性交易者身份的可鉴别性网上交易的双方很可能素昧平生,相隔千里。对于商家要确认客网上交易的双方很可能素昧平生,相隔千里。对于商家要确认客户端不是骗子,而客户也要相信网上的商店不是一个玩弄欺诈的黑店,户端不是骗子,而客户也要相信网上的商店不是一个玩弄欺诈的黑店,因此能方便而可靠地确认对方的身份是网上交易的前提。为顾客或用因此能方便而可靠地确认对方的身份是网上交易的前提。为顾客或用户开展服务的银行、信用卡公司和销售商店,为了做到安全、保密、户开展服务的银行、信用卡公司和销售商店,为了做到安全、保密、可靠地开展服务活动,都需要进行身份认证的工作。对有关的销售商可靠地开展服务活动,都需要进行身份认证的工作。对有关的销售商店来说,他们不知道顾客的信用卡号码,只能把信用卡的确认工作完店来说,他们不知道顾客的信用卡号码,只能把信用卡的确认工作完全交给银行来完成。银行和信用卡公司可以采用各种保密与识别方法全交给银行来完成。银行和信用卡公司可以采用各种保密与识别方法来确认顾客的身份是否合法、确认订货和订货收据信息同时还要注意来确认顾客的身份是否合法、确认订货和订货收据信息同时还要注意防止发生拒付款等问题。防止发生拒付款等问题。6数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.1.3数字签名的作用与用途数字签名的作用与用途3)数据交换的完整性数据交换的完整性交易的文件是不能被修改的。举个例子,比如订购黄金。供货方交易的文件是不能被修改的。举个例子,比如订购黄金。供货方在收到订单后,发现金价大幅上涨了,如果它能改动订单内容,将订在收到订单后,发现金价大幅上涨了,如果它能改动订单内容,将订购数购数1吨改为吨改为1克,则可大幅受益,而订货方就会因此而蒙受损失。克,则可大幅受益,而订货方就会因此而蒙受损失。因此电子交易文件也要做到不可修改,以保障交易的严肃性和公正性因此电子交易文件也要做到不可修改,以保障交易的严肃性和公正性。4)发送信息的不可否认性发送信息的不可否认性由于商情的千变万化,交易一旦达成是不能被否认的。否则必然由于商情的千变万化,交易一旦达成是不能被否认的。否则必然会损害一方的利益。再如订购黄金,订货时金价较低,但收到订单后,会损害一方的利益。再如订购黄金,订货时金价较低,但收到订单后,金价上涨了,如果供货方能否认收到订单的实际时间,甚至否认收到金价上涨了,如果供货方能否认收到订单的实际时间,甚至否认收到订单的事实,则订货方就会蒙受损失。因此电子交易通信过程的各个订单的事实,则订货方就会蒙受损失。因此电子交易通信过程的各个环节都必须是不可否认的。环节都必须是不可否认的。5)信息传递的不可重放性信息传递的不可重放性如在日常生活中,如在日常生活中,A向向B借了钱,同时写了一张借条给借了钱,同时写了一张借条给B;当;当A还还钱的时候,肯定要向钱的时候,肯定要向B索回他写的借条撕毁,不然,恐怕他会再次挟索回他写的借条撕毁,不然,恐怕他会再次挟借条要求借条要求A再次还钱。在数字签名中,如果采用了对签名报文添加流再次还钱。在数字签名中,如果采用了对签名报文添加流水号、时戳等技术,可以防止重放攻击。水号、时戳等技术,可以防止重放攻击。 7数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.1.3数字签名的作用与用途数字签名的作用与用途2.数字签名的用途数字签名的用途数字证书的用途很广泛,它可以用于方便快捷安全地发送电子邮数字证书的用途很广泛,它可以用于方便快捷安全地发送电子邮件、访问安全站点、网上招标投标、网上签约、网上订购、网上公文件、访问安全站点、网上招标投标、网上签约、网上订购、网上公文的安全传送、网上办公、网上缴费、网上缴税、网上购物等安全电子的安全传送、网上办公、网上缴费、网上缴税、网上购物等安全电子事务处理和安全电子交易活动。事务处理和安全电子交易活动。在网络应用中,数字签名比手工签字更具优越性,数字签名是进在网络应用中,数字签名比手工签字更具优越性,数字签名是进行身份鉴别与网上安全交易的通用实施技术。当然,网络环境还有很行身份鉴别与网上安全交易的通用实施技术。当然,网络环境还有很多其他威胁,要由其他专门技术解决,如防火墙技术、反病毒技术、多其他威胁,要由其他专门技术解决,如防火墙技术、反病毒技术、入侵检测技术等。在网络应用中,凡是要解决伪造、抵赖、冒充、篡入侵检测技术等。在网络应用中,凡是要解决伪造、抵赖、冒充、篡改与身份鉴别的问题,都可运用数字签名来处理。改与身份鉴别的问题,都可运用数字签名来处理。 8数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.1消息摘要消息摘要1.消息摘要含义消息摘要含义在信息安全技术中经常需要验证消息的完整性,消息摘要函数在信息安全技术中经常需要验证消息的完整性,消息摘要函数(Message Digest)就提供了这一服务。它是一种散列就提供了这一服务。它是一种散列(Hash)变换,能对变换,能对不同长度的输入信息产生固定长度的输出即一个单独的不同长度的输入信息产生固定长度的输出即一个单独的128256位的大位的大数。这个大数称为原消息的数。这个大数称为原消息的“消息摘要消息摘要”或或“散列散列”。一个安全的散。一个安全的散列函数列函数H具有以下的属性:具有以下的属性:(1)H能够应用到大小不一的数据上;能够应用到大小不一的数据上;(2)H对任何输入报文数据生成固定长度的输出;对任何输入报文数据生成固定长度的输出;(3)对于任意给定的对于任意给定的x,H(x)的计算相对简单;的计算相对简单;(4)对于任意给定的对于任意给定的h,要发现满足,要发现满足H(x)=h的的x在计算上是不可行在计算上是不可行的;的;(5)要发现满足要发现满足H(x)=H(y)的的(x,y)对在计算上是不可行的。对在计算上是不可行的。由于消息摘要函数比对称加密算法的速度还快,因此有着广泛的由于消息摘要函数比对称加密算法的速度还快,因此有着广泛的应用。消息摘要函数是数字签名和消息识别码应用。消息摘要函数是数字签名和消息识别码(MAC)的基础。的基础。9数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.1消息摘要消息摘要2.常用算法常用算法(1)MD5(Message Digest Algorithm-5)算法是由算法是由R.Rivest设计的,设计的,在在RFC1321中描述。中描述。MD5按按512位数据块为单位来处理输入,产生位数据块为单位来处理输入,产生128位的消息摘要。位的消息摘要。(2)SHA:(Secure Hash Algorithm)算法是由算法是由NIST开发,并在开发,并在1993年作为信息处理标准公布。年作为信息处理标准公布。SHA与与MD5的设计原理相似,同样也的设计原理相似,同样也按按512位数据块为单位来处理输入,但它产生位数据块为单位来处理输入,但它产生160位的消息摘要,具有位的消息摘要,具有比比MD5更强的安全性。更强的安全性。目前使用的消息摘要函数有:目前使用的消息摘要函数有:MD2、MD4、MDS、HMAC、SHA、SHA-1。10数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.2 数字签名原理数字签名原理数字签名技术是结合消息摘要函数和公钥加密算法的数字签名技术是结合消息摘要函数和公钥加密算法的具体加密应用技术。数字签名具体加密应用技术。数字签名(Digital Signature)指一个用指一个用自己的非对称密码算法自己的非对称密码算法(如:如:RSA算法算法)私钥加密后的信息私钥加密后的信息摘要,附在消息后面;别人得到这个数字签名及签名前的摘要,附在消息后面;别人得到这个数字签名及签名前的信息内容,使用该用户分发的非对称密码算法公钥,就可信息内容,使用该用户分发的非对称密码算法公钥,就可以检验签名前的信息内容在传输过程或分发过程中是否己以检验签名前的信息内容在传输过程或分发过程中是否己被篡改并且可以确认发送者的身份。被篡改并且可以确认发送者的身份。11数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.2 数字签名原理数字签名原理为了实现网络环境下的身份鉴别、数据完整性认证和抗否认的功为了实现网络环境下的身份鉴别、数据完整性认证和抗否认的功能,数字签名应满足以下要求:能,数字签名应满足以下要求:(1)签名者发出签名的消息后,就不能再否认自己所签发的消息;签名者发出签名的消息后,就不能再否认自己所签发的消息;(2)接收者能够确认或证实签名者的签名,但不能否认;接收者能够确认或证实签名者的签名,但不能否认;(3)任何人都不能伪造签名;任何人都不能伪造签名;(4)第三方可以确认收发双方之间的消息传送,但不能伪造这一过程,第三方可以确认收发双方之间的消息传送,但不能伪造这一过程,这样,当通信的双方关于签名的真伪发生争执时,可由第三方来解决这样,当通信的双方关于签名的真伪发生争执时,可由第三方来解决双方的争执。双方的争执。12数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.2 数字签名原理数字签名原理对于一个典型的数字签名体系而言,它必须包含对于一个典型的数字签名体系而言,它必须包含2个重要的组成个重要的组成部分:即签名算法部分:即签名算法(Signature Algorithm)和验证算法和验证算法(Verification Algorithm)。为了满足上述。为了满足上述4点要求,数字签名体系必须满足点要求,数字签名体系必须满足2条基本条基本假设:假设:(1)签名密钥是安全的,只有其拥有者才能使用;签名密钥是安全的,只有其拥有者才能使用;(2)使用签名密钥是产生数字签名的唯一途径。使用签名密钥是产生数字签名的唯一途径。13数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.2 数字签名原理数字签名原理1.发送方签名过程发送方签名过程发送方创建数字签名的过程如下:发送方创建数字签名的过程如下:(1)为保证签名的速度,为保证签名的速度,A先将原文进行单向先将原文进行单向HASH运算生成定长的消运算生成定长的消息摘要息摘要A 14数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.2 数字签名原理数字签名原理(2)利用自己的私钥加密消息摘要得到数字签名利用自己的私钥加密消息摘要得到数字签名A,并将数字签名附在原,并将数字签名附在原消息后面消息后面 15数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.2 数字签名原理数字签名原理(3)通讯时用户通讯时用户A将自己的原文和签名文一起通过网络送给通讯对方即用将自己的原文和签名文一起通过网络送给通讯对方即用户户B 16数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.2 数字签名原理数字签名原理2.接收方验证过程接收方验证过程接收方接收方B接收到发送方的签名消息后,对的签名消息进行验证的接收到发送方的签名消息后,对的签名消息进行验证的过程如下:过程如下:(1)将消息中的原消息与数字签名分离出来将消息中的原消息与数字签名分离出来 17数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.2 数字签名原理数字签名原理(2)使用使用A的公钥解密数字签名得到摘要的公钥解密数字签名得到摘要 18数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.2 数字签名原理数字签名原理(3)利用与发送方利用与发送方A相同的散列函数重新计算原消息的摘要相同的散列函数重新计算原消息的摘要 19数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.2 数字签名原理数字签名原理(4)比较解密后获得的消息摘要比较解密后获得的消息摘要A与重新计算产生的消息摘要与重新计算产生的消息摘要B,若相等则,若相等则说明消息在传输过程中没有被篡改,否则消息不可靠。说明消息在传输过程中没有被篡改,否则消息不可靠。20数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.3 数字签名算法数字签名算法1.DSA签名算法签名算法DSA(Digital Signature Algorithm)是是Schnorr和和ElGamal签名算法签名算法的变种。的变种。EIGamal方案基于有限域上的离散对数问题。方案基于有限域上的离散对数问题。DSA中涉及的中涉及的参数可以描述如下:参数可以描述如下:p是一个素数,满足是一个素数,满足2L-1p2L,其中,其中512L1024,L是是64的倍的倍数。数。q是一个是一个160比特的素数并且能够整除比特的素数并且能够整除p-1。g=h(p-l)/q mod p,其中,其中h是任意满足是任意满足1hl,即,即g的阶是的阶是q mod p。=gamod p,其中,其中a是随机或者伪随机生成的整数且满足是随机或者伪随机生成的整数且满足0aq。k是随机或者伪随机生成的整数且满足是随机或者伪随机生成的整数且满足kq。把。把p,q,g和和公公开而保密开而保密a和和k。对每一次签名都应该生成一个新的。对每一次签名都应该生成一个新的k值。值。21数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.3 数字签名算法数字签名算法1)签名过程签名过程对于给定的对于给定的k,消息,消息m的签名定义如下:的签名定义如下: sig(m,k)=(y,s)其中其中y = (gk mod p)mod qs = (k-1(MD5(m)+ay)mod q杂凑函数杂凑函数MD5用于把可变长度的消息用于把可变长度的消息m转变为一个转变为一个160比特的消比特的消息摘要,然后再用数字签名方案对它进行签名。息摘要,然后再用数字签名方案对它进行签名。22数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.3 数字签名算法数字签名算法2)验证过程验证过程设设ver(m,y,s)是验证算法,它以上述定义的消息是验证算法,它以上述定义的消息m和和y,s为输为输入。签名的验证通过下面的计算来完成:入。签名的验证通过下面的计算来完成:w = s-1 mod qd1 = (MD5(m)* w)mod qd2 = (y *w)mod qv=(gd1*d2)mod p)mod q若若v=y,则,则ver(m,y,s)的输出为真,否则为假。的输出为真,否则为假。消息消息m的签名是有效的当且仅当的签名是有效的当且仅当ver(m,y,s)的输出为真。如果的输出为真。如果ver(m,y,s)的输出为假,则说明或者消息的输出为假,则说明或者消息m被篡改,或者该签名不是签被篡改,或者该签名不是签名者的合法签名。名者的合法签名。3)安全性分析安全性分析由于由于DSA是基于有限域上离散对数问题,出于短期安全性考虑要是基于有限域上离散对数问题,出于短期安全性考虑要求域求域Zp的素数的素数p的长度至少为的长度至少为1024比特,而考虑到长期安全性则要求比特,而考虑到长期安全性则要求其长度至少为其长度至少为2048比特。比特。23数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.3 数字签名算法数字签名算法2.RSA签名算法签名算法Rivest、shamir和和Adleman于于1978年提出了年提出了RSA数字签名和公钥数字签名和公钥算法,这是第一个较完善的公开密钥算法,它既能用于加密也能用于算法,这是第一个较完善的公开密钥算法,它既能用于加密也能用于数字签名,而认证过程相当于保密过程的逆过程。数字签名,而认证过程相当于保密过程的逆过程。在已提出的公开密钥算法中,在已提出的公开密钥算法中,RSA是最容易理解和实现的,这个是最容易理解和实现的,这个算法也是最流行的。算法也是最流行的。RSA算法以它的三个发明者算法以它的三个发明者Ron Rivest、Adi Shamir和和Leonard Adleman的名字命名。的名字命名。RSA的安全性建立在大整数素因子分解困难的基础之上,其数字的安全性建立在大整数素因子分解困难的基础之上,其数字签名算法类似于签名算法类似于RSA密码算法,该算法的描述详见本书密码算法,该算法的描述详见本书6.2.3节。节。RSA数字签名算法可以描述如下:数字签名算法可以描述如下:24数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.3 数字签名算法数字签名算法1)签名过程签名过程消息消息m的签名的签名sig(m)通过下面的计算生成通过下面的计算生成 sig(m)=(h(m)e mod n其中其中h(m)是消息摘要,它由消息是消息摘要,它由消息m通过密码学中的杂凑函数通过密码学中的杂凑函数(如如MD5)得到。得到。2)验证过程验证过程验证算法验证算法ver(m,y)力以消息力以消息m和签名和签名y为输入,定义如下:为输入,定义如下: ver(m,y)=真,等价于真,等价于h(m)yd mod n其中,其中,(e,n)为公钥,为公钥,(d,n)为私钥。为私钥。验证算法使用了签名者的公钥,所以任何人都可以验证一个签名;验证算法使用了签名者的公钥,所以任何人都可以验证一个签名;然而由于签名需要签名者的私钥,故只有签名者本人才能产生有效的然而由于签名需要签名者的私钥,故只有签名者本人才能产生有效的签名。签名。25数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.2.3 数字签名算法数字签名算法3)安全性分析安全性分析正如正如RSA密码体制的情形一样,素数密码体制的情形一样,素数p和和q应该足够大,使得对应该足够大,使得对于给定了它们的乘积于给定了它们的乘积n,如果事先不知道,如果事先不知道p或者或者q,分解,分解n是计算上不可是计算上不可行的。对于短期安全性,行的。对于短期安全性,n的长度至少应该为的长度至少应该为1024比特,而长期安全比特,而长期安全性则要求性则要求n至少为至少为2048比特。比特。 26数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.3.1 数字证书的定义数字证书的定义1.证书的概念证书的概念数字证书如同我们日常生活中使用的身份证,它是持有者在网络数字证书如同我们日常生活中使用的身份证,它是持有者在网络上证明自己身份的凭证。在一个电子商务系统中,所有参与活动的实上证明自己身份的凭证。在一个电子商务系统中,所有参与活动的实体都必须用证书来表明自己的身份。证书是一个经证书授权中心数字体都必须用证书来表明自己的身份。证书是一个经证书授权中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件。证书一方面可签名的包含公开密钥拥有者信息以及公开密钥的文件。证书一方面可以用来向系统中的其它实体证明自己的身份,另一方面由于每份证书以用来向系统中的其它实体证明自己的身份,另一方面由于每份证书都携带着证书持有者的公钥,所以证书也可以向接收者证实某人或某都携带着证书持有者的公钥,所以证书也可以向接收者证实某人或某个机构对公开密钥的拥有,同时也起着公钥分发的作用。个机构对公开密钥的拥有,同时也起着公钥分发的作用。简单地说,证书的构成就是一个公钥,再加上公钥所有者的标识,简单地说,证书的构成就是一个公钥,再加上公钥所有者的标识,以及被信任的第三方对上述信息的数字签名。公证方的数字签名保证以及被信任的第三方对上述信息的数字签名。公证方的数字签名保证了公钥及其所有者的对应关系,同时也保证了证书中的公钥信息不会了公钥及其所有者的对应关系,同时也保证了证书中的公钥信息不会被篡改。被篡改。27数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.3.1 数字证书的定义数字证书的定义2.证书存放方式证书存放方式考虑到业务的终端类型的多样化以及业务应用的方便程度等因素,考虑到业务的终端类型的多样化以及业务应用的方便程度等因素,数字证书一般以两种方式存放:数字证书一般以两种方式存放:1)使用使用IC卡存放卡存放即把用户的数字证书写到即把用户的数字证书写到IC卡中,供用户随身携带。这样用户卡中,供用户随身携带。这样用户在所有能够读在所有能够读IC卡证书的电子商务终端上都可以享受电子商务服务。卡证书的电子商务终端上都可以享受电子商务服务。2)直接存放在磁盘或自己的终端上直接存放在磁盘或自己的终端上用户将从用户将从CA申请来的证书下载或复制到磁盘或自己的申请来的证书下载或复制到磁盘或自己的PC机或智机或智能终端上,当用户使用自己的终端享受电子商务服务时,直接从终端能终端上,当用户使用自己的终端享受电子商务服务时,直接从终端读入即可。读入即可。28数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.3.2 数字证书的类型数字证书的类型1)常用的几种数字证书常用的几种数字证书(1)SPKI是由是由IETF SPKI工作组指定的一系列技术和参考文档,包括工作组指定的一系列技术和参考文档,包括SPKI证书格式。证书格式。SPKI证书又叫授权证书,主要目的是传递许可权。证书又叫授权证书,主要目的是传递许可权。目前只有很少的目前只有很少的SPKI证书应用需求,而且缺乏市场需求。证书应用需求,而且缺乏市场需求。(2)PGP(Pretty Good Privacy)是一种对电子邮件和文件进行加密与数字签名的方法。它规范了是一种对电子邮件和文件进行加密与数字签名的方法。它规范了在两个实体间传递信息、文件和在两个实体间传递信息、文件和PGP密钥时的报文格式。密钥时的报文格式。PGP证书与证书与X.509证书之间存在着显著不同,它的信任策略主要证书之间存在着显著不同,它的信任策略主要是基于个人而不是企业。因此,虽然在是基于个人而不是企业。因此,虽然在Internet上的电子邮件通信中上的电子邮件通信中得到了一定范围内的应用,但对企业内部网来说,却不是最好的解决得到了一定范围内的应用,但对企业内部网来说,却不是最好的解决方案。方案。 29数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.3.2 数字证书的类型数字证书的类型(3)SET安全电子交易安全电子交易(SET)标准定义了在分布式网络上进行信用卡支付标准定义了在分布式网络上进行信用卡支付交易所需的标准。它采用了交易所需的标准。它采用了X.509第第3版公钥证书的格式,并指定了自版公钥证书的格式,并指定了自己私有的扩展。非己私有的扩展。非SET应用无法识别应用无法识别SET定义的私有扩展,因此非定义的私有扩展,因此非SET应用无法接受应用无法接受SET证书。证书。(4)属性证书属性证书属性证书是用来传递一个给定主体的属性以便于灵活、可扩展的属性证书是用来传递一个给定主体的属性以便于灵活、可扩展的特权管理。属性证书不是公钥证书,但它的主体可以结合相应公钥证特权管理。属性证书不是公钥证书,但它的主体可以结合相应公钥证书通过书通过“指针指针”来确定。来确定。 30数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.3.2 数字证书的类型数字证书的类型2)根据证书的安全级别可以将证书分为以下几类根据证书的安全级别可以将证书分为以下几类(1)一级证书。一级证书。这是最高级别的证书,由认证机构受理审核和发放,一般应用于这是最高级别的证书,由认证机构受理审核和发放,一般应用于系统内部的服务器和操作员证书。系统内部的服务器和操作员证书。(2)二级证书。二级证书。由业务受理点受理并审核。认证机构进行二次审核后发放,如商由业务受理点受理并审核。认证机构进行二次审核后发放,如商家证书、服务器证书等。家证书、服务器证书等。(3)三级证书。三级证书。如个人证书,通过业务受理点或网络进行证书申请,审核由业务如个人证书,通过业务受理点或网络进行证书申请,审核由业务受理点完成,必要时可由受理中心和注册机构进行二次审核。受理点完成,必要时可由受理中心和注册机构进行二次审核。(4)四级证书。四级证书。如测试证书或对安全要求不高的个人证书,可采用浏览器方式直如测试证书或对安全要求不高的个人证书,可采用浏览器方式直接通过网络向认证机构的证书签发服务器提出中请。接通过网络向认证机构的证书签发服务器提出中请。31数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.3.3 数字证书的结构数字证书的结构于于1988年公布的年公布的IS0鉴别框架提供了网间鉴别功能,也称鉴别框架提供了网间鉴别功能,也称X.509协议,它的最重要的部分就是公钥证书结构。在所有格式的证协议,它的最重要的部分就是公钥证书结构。在所有格式的证书中,书中,X.509证书应用范围最广。在许多网络安全应用,如证书应用范围最广。在许多网络安全应用,如VPN,S/MIME(Secure/Multipurpose Internet Mail Extension)中,都使用了中,都使用了X.509格式的证书。它规定每个用户都有格式的证书。它规定每个用户都有一个与其他用户不相同的名字,由一个与其他用户不相同的名字,由CA分配并签发一个包含用户惟一分配并签发一个包含用户惟一名字和该用户公钥的证书。名字和该用户公钥的证书。X.509的证书格式包括申请者的信息、证的证书格式包括申请者的信息、证书信息和证书颁发者的信息三部分。书信息和证书颁发者的信息三部分。32数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.3.3 数字证书的结构数字证书的结构数字证书的结构:数字证书的结构:33数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.3.3 数字证书的结构数字证书的结构1)申请者的信息申请者的信息用来刻画证书申请者的基本信息,其中包括:用来刻画证书申请者的基本信息,其中包括:(1)证书拥有者的可识别名,命名规则一般采用证书拥有者的可识别名,命名规则一般采用X. 500格式;格式;(2)证书所有人的公开密钥和算法识别符,包括公钥算法、公钥的位字证书所有人的公开密钥和算法识别符,包括公钥算法、公钥的位字符串表示;符串表示;(3)证书拥有者的唯一识别符。证书拥有者的唯一识别符。34数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.3.3 数字证书的结构数字证书的结构2)证书信息证书信息用来描述证书的一般属性,包括:用来描述证书的一般属性,包括:(1)证书的版本信息:证书版本号,不同版本的证书格式不同。用来与证书的版本信息:证书版本号,不同版本的证书格式不同。用来与X. 509的将来版本兼容;的将来版本兼容;(2)证书序列号,由证书颁发者分配的本证书的唯一标识符;证书序列号,由证书颁发者分配的本证书的唯一标识符;(3)证书的有效期限,现在通用的证书一般采用证书的有效期限,现在通用的证书一般采用UTC时间格式,它的计时间格式,它的计时范围为时范围为1950-2049;(4)证书扩展信息,是构建证书的可选的标准和专用扩展,包括证书策证书扩展信息,是构建证书的可选的标准和专用扩展,包括证书策略、策略映射、密钥标识符、主体及颁发者的别名和主体目录属性等。略、策略映射、密钥标识符、主体及颁发者的别名和主体目录属性等。35数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.3.3 数字证书的结构数字证书的结构3)证书颁发者的信息证书颁发者的信息用来描述颁发者及数字证书中签名算法的信息,数字证书包含颁用来描述颁发者及数字证书中签名算法的信息,数字证书包含颁发者的签名和用来生成数字签名的签名算法。任何人收到证书后都能发者的签名和用来生成数字签名的签名算法。任何人收到证书后都能使用签名算法来验证证书是否是由颁发者的签名密钥签发的。包括:使用签名算法来验证证书是否是由颁发者的签名密钥签发的。包括:(1)颁发者即身份验证机构的标识信息,命名规则一般采用颁发者即身份验证机构的标识信息,命名规则一般采用X.500格格 式;式;(2)颁发者唯一标识符;颁发者唯一标识符;(3)颁发者签名算法及相关参数。颁发者签名算法及相关参数。36数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.4.1 认证中心的定义认证中心的定义CA(Certificate Authority)认证机构,也称作认证中心,是一个实认证机构,也称作认证中心,是一个实体,它可以是人、群体、部门、公司或其他实体。它是证书的签发机体,它可以是人、群体、部门、公司或其他实体。它是证书的签发机关,是公钥基础设施关,是公钥基础设施PKI体系中的核心环节。它不仅为客户提供签发体系中的核心环节。它不仅为客户提供签发公钥证书、认证证书、分配证书和管理证书的服务,还为生命周期内公钥证书、认证证书、分配证书和管理证书的服务,还为生命周期内的密钥提供管理服务。它将客户的公钥与客户的名称及其它属性关联的密钥提供管理服务。它将客户的公钥与客户的名称及其它属性关联起来,并制定政策和具体步骤来验证、识别用户身份,再对用户证书起来,并制定政策和具体步骤来验证、识别用户身份,再对用户证书进行签名,以确保证书持有者的身份和公钥的拥有权,对客户之间的进行签名,以确保证书持有者的身份和公钥的拥有权,对客户之间的电子身份进行认证。电子身份进行认证。 (1)解决公钥体系中公钥的合法性问题。解决公钥体系中公钥的合法性问题。(2)为网上交易各方的信息安全提供有效的、可靠的保护机制。为网上交易各方的信息安全提供有效的、可靠的保护机制。这些机制提供机密性、身份验证特性这些机制提供机密性、身份验证特性(使交易的每一方都可以确认其它使交易的每一方都可以确认其它各方的身份各方的身份)、不可否认性、不可否认性(交易的各方不可否认它们的参与交易的各方不可否认它们的参与)。 37数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.4.2 认证中心的结构认证中心的结构CA认证中心的结构大致可分为以下几部分:接收用户证书申请认证中心的结构大致可分为以下几部分:接收用户证书申请的证书受理者的证书受理者(Registry Server,RS),证书发放的审核部门,证书发放的审核部门(Register Authority ,RA),证书发放的操作部门,证书发放的操作部门(Certificate Processor,CP),记录作废证书的证书作废表或证书撤销表记录作废证书的证书作废表或证书撤销表(Certificate Revocation List,CRL),提供人工服务的业务受理点以及证书使用者。各部分的功,提供人工服务的业务受理点以及证书使用者。各部分的功能说明如下:能说明如下: (1)RA系统是系统是CA的证书发放、管理的延伸,是证书发放的审核部的证书发放、管理的延伸,是证书发放的审核部门,负责对证书申请者进行资格审查。门,负责对证书申请者进行资格审查。RA也决定是否同意给该申请也决定是否同意给该申请者发放证书,因此它应由能够承担这些责任的机构担任。具体地讲,者发放证书,因此它应由能够承担这些责任的机构担任。具体地讲,它负责证书申请者的信息录入、审核以及证书发放等工作;同时,对它负责证书申请者的信息录入、审核以及证书发放等工作;同时,对发放的证书完成相应的管理功能。发放的数字证书可以存放于发放的证书完成相应的管理功能。发放的数字证书可以存放于IC卡、卡、硬盘或软盘等介质中。硬盘或软盘等介质中。RA系统是整个系统是整个CA中心得以正常运营不可缺少中心得以正常运营不可缺少的一部分。的一部分。 38数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.4.2 认证中心的结构认证中心的结构(2)RS是证书受理者,它用于接收用户的证书申请请求,转发给是证书受理者,它用于接收用户的证书申请请求,转发给CP和和RA进行相应的处理。它也可以和进行相应的处理。它也可以和RA合并在一起。合并在一起。(3)CP为证书发放的操作部门,负责为已授权的申请者制作,发为证书发放的操作部门,负责为已授权的申请者制作,发放和管理证书,并承当因操作运营错误所造成的一切后果,包括失密放和管理证书,并承当因操作运营错误所造成的一切后果,包括失密和为没有获得授权者发放证书等,它可以由审核授权部门自己担任,和为没有获得授权者发放证书等,它可以由审核授权部门自己担任,也可以委托给第三方担任。也可以委托给第三方担任。(4)CRL是证书作废表,其中记录尚未过期但已经声明作废的用是证书作废表,其中记录尚未过期但已经声明作废的用户证书序列号,或者记录的是一些已经有不良记录的用户证书序列号,户证书序列号,或者记录的是一些已经有不良记录的用户证书序列号,供证书使用者在认证与之通信的对方证书是否作废时查询。供证书使用者在认证与之通信的对方证书是否作废时查询。业务受理点就是以系统对外提供服务的一个窗口,由工作人员帮助用业务受理点就是以系统对外提供服务的一个窗口,由工作人员帮助用户录入、登记等。业务受理点可以担任用户证书发放的审核部门,当户录入、登记等。业务受理点可以担任用户证书发放的审核部门,当面审核用户提交的资料,从而决定是否为用户发放证书。面审核用户提交的资料,从而决定是否为用户发放证书。39数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.4.3 认证中心的功能认证中心的功能认证机构的主要功能有证书发放、证书更新、证书撤销和证书验认证机构的主要功能有证书发放、证书更新、证书撤销和证书验证。具体地说应该完成以下任务:证。具体地说应该完成以下任务:(1)能够验证并标识证书申请者的身份。认证机构要对证书申请能够验证并标识证书申请者的身份。认证机构要对证书申请者的信息进行验证和审核,对合乎要求的申请者颁发包含用户信息和者的信息进行验证和审核,对合乎要求的申请者颁发包含用户信息和认证机构签名的证书,否则拒绝颁发。认证机构签名的证书,否则拒绝颁发。(2)能够接受并处理终端用户数字证书的更新请求:比如用户的能够接受并处理终端用户数字证书的更新请求:比如用户的某项个人信息发生了改变,需要更新,认证机构应该能接受请求并对某项个人信息发生了改变,需要更新,认证机构应该能接受请求并对相关内容做出修改。相关内容做出修改。(3)能够使用户方便地查找各种证书及已经撤销的证书。用户在能够使用户方便地查找各种证书及已经撤销的证书。用户在验证发送方数字签名时需要验证发送方的身份,这就要检验发送方的验证发送方数字签名时需要验证发送方的身份,这就要检验发送方的数字证书。由于该证书可能在有效期限内被认证机构撤销,因此,用数字证书。由于该证书可能在有效期限内被认证机构撤销,因此,用户往往需要检查认证机构的已撤销证书。因此,能否给用户提供方便户往往需要检查认证机构的已撤销证书。因此,能否给用户提供方便的证书查询功能,是认证机构是否成功的重要标准之一。的证书查询功能,是认证机构是否成功的重要标准之一。40数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程7.4.3 认证中心的功能认证中心的功能(4)能根据用户请求或其它相关信息撤销用户证书。用户的身份能根据用户请求或其它相关信息撤销用户证书。用户的身份并不是一成不变的。如用户所在的服务处所改变后,用户的身份也就并不是一成不变的。如用户所在的服务处所改变后,用户的身份也就改变了。这时,原来的证书虽在有效期限内但已没有意义。故认证机改变了。这时,原来的证书虽在有效期限内但已没有意义。故认证机构应该根据用户的请求撤销该证书。构应该根据用户的请求撤销该证书。(5)能根据证书的有效期自动地撤销证书。每个证书都是有有效能根据证书的有效期自动地撤销证书。每个证书都是有有效期的,认证机构应该在证书到达有效期时自动将它们撤销。期的,认证机构应该在证书到达有效期时自动将它们撤销。(6)能够对证书序列号、能够对证书序列号、CA标识等证书信息进行管理。标识等证书信息进行管理。(7)能完成证书数据库的备份工作。包括数字证书、密钥、证书能完成证书数据库的备份工作。包括数字证书、密钥、证书撤销列表撤销列表CRL及历史数据的存档。及历史数据的存档。其中最重要的是其中最重要的是CA自己的一对密钥的管理,它必须确保私钥的自己的一对密钥的管理,它必须确保私钥的高度机密性,防止他人伪造证书。它的公钥在网上公布,整个网络系高度机密性,防止他人伪造证书。它的公钥在网上公布,整个网络系统必须保证完整性。统必须保证完整性。 41数字签名技术应用网络安全技术数字签名技术应用网络安全技术使用教程使用教程网络安全技术实用教程网络安全技术实用教程
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号