《第6章电子商务安全技术.ppt》由会员分享,可在线阅读,更多相关《第6章电子商务安全技术.ppt(52页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第6章电子商务安全技术 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望6.1 6.1 电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术 n n6.1.1 6.1.1 电子商务安全问题电子商务安全问题电子商务安全问题电子商务安全问题 n电子商务安全威胁n买方n卖方n电子商务应具备的安全保障n保密性(Confidentiality)n完整性(Integrity)n可用性(Availability)与可靠性(reliability
2、)n不可抵赖性(non-reputation)与可控性(Controllability)6.16.1电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术n n6.1.2 6.1.2 电子商务安全保障体系电子商务安全保障体系电子商务安全保障体系电子商务安全保障体系 n信息安全n目前并没有统一的定义。从大的方面讲,是指国家的社会信息化状态不受外来的威胁与侵害;从技术层次上讲,就是防止或杜绝对信息安全属性的威胁,使得信息的主人在主观上对其信息的本源性放心n信息安全属性n信息保密性、完整与真实性、可用性、可靠性、不可否认性和可控性n信息安全保障体系分类分类说明说明监
3、察安全监察安全监控查验监控查验发现违规发现违规确定入侵确定入侵定位损害定位损害监控威胁监控威胁犯罪起诉犯罪起诉起诉起诉量刑量刑管理安全管理安全技术管理安全技术管理安全多级安全用户鉴别术的管理多级安全用户鉴别术的管理多级安全加密术的管理多级安全加密术的管理密钥管理术的管理密钥管理术的管理行政管理安全行政管理安全人员管理人员管理系统系统应急管理安全应急管理安全应急的措施组织应急的措施组织入侵的自卫与反击入侵的自卫与反击技术安全技术安全实体安全实体安全环境安全(温度、湿度、气压等)环境安全(温度、湿度、气压等)建筑安全(防雷、防水、防鼠等)建筑安全(防雷、防水、防鼠等)网络与设备安全网络与设备安全软
4、件安全软件安全软件的安全开发与安装软件的安全开发与安装软件的安全复制与升级软件的安全复制与升级软件加密软件加密软件安全性能测试软件安全性能测试网络安全网络安全安全协议安全协议安全体系结构安全体系结构安全产品安全产品数据安全数据安全数据加密数据加密数据隐藏数据隐藏数据存储安全数据存储安全数据备份数据备份运行安全运行安全访问控制访问控制审计跟踪审计跟踪入侵告警与系统恢复等入侵告警与系统恢复等立法安全立法安全有关信息安全的政策、法令、法规有关信息安全的政策、法令、法规认知安全认知安全办学、办班办学、办班奖惩与扬抑奖惩与扬抑信息安全宣传与普及教育信息安全宣传与普及教育技术安全涉及的学科:密码学理论与技
5、术信息隐藏理论与技术安全协议理论与技术安全体系结构理论与技术信息对抗理论与技术网络安全与安全产品核心:密码学 6.16.1电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术n n6.1.2 电子商务安全保障体系电子商务安全保障体系n密码学是技术安全的核心n保密性:直接加密n完整与真实性n可用性:使用密码技术进行系统登录管理、存取授权管理.明文数字摘要签名后的摘要密文散列算法发送方私钥加密(数字签名)接收方的公钥加密6.16.1电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术n n6.1.2 电子商务安全保障体系电子商
6、务安全保障体系n密码学是技术安全的核心n可信计算机系统(TrustedComputerSystem)可信计算机系统(TrustedComputerSystem)的概念是美国国防部首先提出来的,为了保证计算机系统的保密性,美国国防部于80年代提出了一套访问控制机制来增强系统的可信性,并制定了可信计算机系统评价准则(TCSEC)。TCSEC对信息系统的几个关键环节:计算机操作系统、数据库、计算机网络的安全性均提出了可信安全评价准则。准则中,从用户登录、授权管理、访问控制、审计跟踪、隐通道分析、可信通道建立、安全检测、生命周期保障、文本写作、用户指南均提出了规范性要求。并根据所采用的安全策略,将系统
7、分为A、B(B1、B2、B3)、C(C1、C2)、D四类七个安全级别。这些准则对研究导向、规范生产、指导用户选型、提供检查机关评价依据,都起了良好的推动作用。6.16.1电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术n n6.1.3 密码技术密码技术 n几个概念 一段待加密的消息被称作为明文明文(plaintext),用某种方法对它进行伪装或隐藏的过程称作加密加密(encryption),加密以后的消息称为密文密文,而把密文再转变成明文的过程称为解密解密(descryption)。加密通常要采用一些算法,而这些算法需要用到不同的参数,这些不同的参数称作
8、密钥密钥,密钥空间密钥空间是所有密钥的集合。6.16.1电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术n n6.1.3 密码技术密码技术 n几个概念n分类n历史发展 手工加密、机械加密、电子机内乱加密、计算机加密n保密程度 理论上保密的加密、实际上保密的加密、不保密的加密n密钥使用方式 对称式加密、非对称式加密方法描述对称加密DES()是美国国家标准局1970s开发的一种对称加密算法,采用分组乘积密码体制。数据块64位,密码64或56位。IDEA()由瑞士苏黎士联邦工业大学的赖学嘉和James L.Massey于1990年共同提出。数据块64位,密码长
9、128位。FEAL()日本NTT公司的清水和宫口设计Rijndael(荣代尔)一种高级的加密标准(AES),由比利时Joan Daemen和Vincent Rijmen提出,用于代替DES,其数据块长度和密钥长度可分别为128、192、256。RC非对称加密RSA由MIT的Ron rivest、Adi Shamir、Leonard Adleman于1978年提出。安全性基础是数论和计算复杂性理论中的下述论断:“求两个大素数(10100)的乘积在计算上是容易的,但若要分解两个大素数的积而求出它的因子则在计算上是困难的”EL Gamal1985年由EL Gamal提出,安全性基于“在有限域上计算离
10、散对数比计算指数更高的困难”(DLP)。背包系统第一种出现的公开钥加密算法,由Ralph Merkle和Martin Hellman于1978年基于求解背包问题的难解性而提出的。McEliece1978年由McEliece提出。基于“将一个译码容易的线性码经过变换而伪装成一个译码困难的线性码”原理。Diffe-Hellman1976年出现,安全性基于“在有限域上计算离散对数比计算指数更高的困难”椭圆曲线密码(FEE、ECC)1985年由N.Koblitz和V.Miller提出,利用有限域上的椭圆曲线上点集所构成的群,在其上定义离散对数系统。安全性基于“在有限域上计算离散对数比计算指数更高的困难
11、”。6.16.1电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术n n6.1.4 RSA加密加密 nRSA算法原理 设p和q是两个大素数,a和b是两个整数,定义密钥空间为(p,q,a,b)|n=pq,(n)=(p-1)(q-1),ab=1(mod(n)。把(n,b)作为公开密钥,而(p,q,a,(n)作为秘密密钥。若对明文信息x(0=xn)加密,其加密算法是y=E(x)=xb mod n,而解密算法是D(y)=ya mod n。Euler定理:对于任何与n互素的正整数x,x(n)mod n=1下面证明D(y)=x:D(y)=ya mod n=(xb mo
12、d n)a mod n=xab mod n=xk(n)+1 mod n=x xk(n)mod n mod n=x mod n(根据Euler定理)=x 实际上,X=0,1,n-1与Y=0,1,n-1中的元素是一一对应的,也就是E(x)与D(y)的算法是互逆的。由于RSA加密算法是指数运算,因此当密钥越大时,计算速度越慢。RSA算法比通常的DES算法慢了1500倍。并且RSA的计算量很大,为了要达到较高的安全程度,RSA的密钥位数比其它的密码体制大的多,现在一般需要1024位的密钥。所以一般对速度要求较高的数字签名或智能卡中的身份验证不太使用。通常对明文可使用加密速度较快的对称钥来加密,至于如何
13、将对称钥传给接收方,可按照PKI安全体系的规定,用接收方的公钥来加密对称钥,这样可解决对称钥的分发问题。6.16.1电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术n n6.1.5 散列算法与数字签名散列算法与数字签名nMD散列算法n简介 MD的全称是Message-Digest Algorithm(信息摘要算法),在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc的Ronald L.Rivest开发出来,经MD2、MD3和MD4发展到MD5。算法的描述和C语言源代码在RFCs
14、 1321中有详细的描述(http:/www.ietf.org/rfc/rfc1321.txthttp:/www.ietf.org/rfc/rfc1321.txt),它是一份权威的文档,由Ronald L.Rivest在1992年8月向IEFT提交。一个安全的散列算法应满足两个要求:一是输入两个不同的明文(一段原始的数字信息)不应得到相同的输出值(数字摘要);二是根据输出值,不能得到原始的明文,即过程不可逆。MD算法就能满足这二个要求。只要明文稍有改动,哪怕是只改动一个字母,生成的数字摘要就不一样。6.16.1电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全
15、技术n n6.1.5 散列算法与数字签名散列算法与数字签名nMD散列算法n简介n应用实例实例实例1 1:用于文件完整性验证用于文件完整性验证 UNIX系统下,当下载软件的时候常伴有一个文件名相同,扩展名为.md5的文件,在这个文件中通常只有一行文本,结构如下:MD5(tanajiya.tar.gz)=0ca175b9c0f726a831d895e269332461 这是tanajiya.tar.gz文件的数字摘要。MD5将整个文件当作一个大文本信息,通过其不可逆的字符串变换算法,产生了这个唯一的MD5信息摘要。如果在以后传播这个文件的过程中,无论文件的内容发生了何等形式的改变,只要对这个文件重
16、新计算MD5摘要,就会发现信息摘要不会相同,由此可以确定得到的文件是否正确。实例实例2 2:用于授权访问控制:用于授权访问控制(可结合密码技术)在UNIX系统中,用户的密码是以MD5(或其它类似的算法)散列后的摘要存储到文件系统中。当用户登录的时候,系统再把用户输入的密码散列成MD5值,去与文件系统中的值进行比较,进而确定输入的密码是否正确。这样,系统在并不知道用户密码的明码的情况下就可以确定用户登录系统的合法性。这样既可避免用户的密码被具有系统管理员权限的用户知道,也在一定程度上增加了密码被破译的难度。实例实例3 3:用于数字签名:用于数字签名 在安全协议SSL、PGP中,用MD5来数字签名
17、6.16.1电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术n n6.1.5 散列算法与数字签名散列算法与数字签名nMD散列算法n简介n应用nMD5算法描述 MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。算法:1)对信息进行填充,使其字节长度对512求余的结果等于448。因此,信息的字节长度(Bits Length)将被扩展至N*512+448,即N*64+56个字节(Bytes),N为一个正整数。填充的方法如下,在信息
18、的后面填充一个1和无数个0,直到满足上面的条件时才停止填充。2)在这个结果后面附加一个以64位二进制表示的填充前信息长度。经过前两步的处理,现在的信息长度=N*512+448+64=(N+1)*512字节,即长度恰好是512的整数倍。3)设置四个链接变量的值。在MD5中有四个32位被称作链接变量(Chaining Variable)的 整 数 变 量,分 别 为:A=0 x01234567,B=0 x89abcdef,C=0 xfedcba98,D=0 x76543210。4)对信息中的每一个512字节块进行四轮循环运算:将上面四个链接变量复制到四个临时变量中:A到a,B到b,C到c,D到d。
19、进行四轮循环运算(共64步)在四轮循环中进行如下的函数运算操作:FF(a,b,c,d,Mj,s,ti),表示a=b+a+F(b,c,d)+Mj+ti GG(a,b,c,d,Mj,s,ti),表示a=b+a+G(b,c,d)+Mj+ti HH(a,b,c,d,Mj,s,ti),表示a=b+a+H(b,c,d)+Mj+ti II(a,b,c,d,Mj,s,ti),表示a=b+a+I(b,c,d)+Mj+ti其中,F()、G()、H()、I()为四个非线性函数,分别为:F(X,Y,Z)=(X&Y)|(X)&Z)G(X,Y,Z)=(X&Z)|(Y&(Z)H(X,Y,Z)=XYZ I(X,Y,Z)=Y(
20、X|(Z)(&是与,|是或,是非,是异或)Mj表示512字节数据块中的第j个子分组(j=0,.,15),ti为一整常数,其取值为:在第i步中,ti=4294967296*abs(sin(i)的整数部分,i的单位是弧度。(4294967296等于2的32次方)由此可见,每次操作对a、b、c和d中的其中三个作一次非线性函数运算,然后将所得结果加上第四个变量,文本的一个子分组和一个常数。再将所得结果向右环移一个不定的数,并加上a、b、c或d中之一。最后用该结果取代a、b、c或d中之一。第一轮 FF(a,b,c,d,M0,7,0 xd76aa478)FF(d,a,b,c,M1,12,0 xe8c7b7
21、56)FF(c,d,a,b,M2,17,0 x242070db)FF(b,c,d,a,M3,22,0 xc1bdceee)FF(a,b,c,d,M4,7,0 xf57c0faf)FF(d,a,b,c,M5,12,0 x4787c62a)FF(c,d,a,b,M6,17,0 xa8304613)FF(b,c,d,a,M7,22,0 xfd469501)FF(a,b,c,d,M8,7,0 x698098d8)FF(d,a,b,c,M9,12,0 x8b44f7af)FF(c,d,a,b,M10,17,0 xffff5bb1)FF(b,c,d,a,M11,22,0 x895cd7be)FF(a,b,
22、c,d,M12,7,0 x6b901122)FF(d,a,b,c,M13,12,0 xfd987193)FF(c,d,a,b,M14,17,0 xa679438e)FF(b,c,d,a,M15,22,0 x49b40821)第二轮 GG(a,b,c,d,M1,5,0 xf61e2562)GG(d,a,b,c,M6,9,0 xc040b340)GG(c,d,a,b,M11,14,0 x265e5a51)GG(b,c,d,a,M0,20,0 xe9b6c7aa)GG(a,b,c,d,M5,5,0 xd62f105d)GG(d,a,b,c,M10,9,0 x02441453)GG(c,d,a,b,M
23、15,14,0 xd8a1e681)GG(b,c,d,a,M4,20,0 xe7d3fbc8)GG(a,b,c,d,M9,5,0 x21e1cde6)GG(d,a,b,c,M14,9,0 xc33707d6)GG(c,d,a,b,M3,14,0 xf4d50d87)GG(b,c,d,a,M8,20,0 x455a14ed)GG(a,b,c,d,M13,5,0 xa9e3e905)GG(d,a,b,c,M2,9,0 xfcefa3f8)GG(c,d,a,b,M7,14,0 x676f02d9)GG(b,c,d,a,M12,20,0 x8d2a4c8a)第三轮 HH(a,b,c,d,M5,4,0
24、xfffa3942)HH(d,a,b,c,M8,11,0 x8771f681)HH(c,d,a,b,M11,16,0 x6d9d6122)HH(b,c,d,a,M14,23,0 xfde5380c)HH(a,b,c,d,M1,4,0 xa4beea44)HH(d,a,b,c,M4,11,0 x4bdecfa9)HH(c,d,a,b,M7,16,0 xf6bb4b60)HH(b,c,d,a,M10,23,0 xbebfbc70)HH(a,b,c,d,M13,4,0 x289b7ec6)HH(d,a,b,c,M0,11,0 xeaa127fa)HH(c,d,a,b,M3,16,0 xd4ef308
25、5)HH(b,c,d,a,M6,23,0 x04881d05)HH(a,b,c,d,M9,4,0 xd9d4d039)HH(d,a,b,c,M12,11,0 xe6db99e5)HH(c,d,a,b,M15,16,0 x1fa27cf8)HH(b,c,d,a,M2,23,0 xc4ac5665)第四轮II(a,b,c,d,M0,6,0 xf4292244)II(d,a,b,c,M7,10,0 x432aff97)II(c,d,a,b,M14,15,0 xab9423a7)II(b,c,d,a,M5,21,0 xfc93a039)II(a,b,c,d,M12,6,0 x655b59c3)II(d
26、,a,b,c,M3,10,0 x8f0ccc92)II(c,d,a,b,M10,15,0 xffeff47d)II(b,c,d,a,M1,21,0 x85845dd1)II(a,b,c,d,M8,6,0 x6fa87e4f)II(d,a,b,c,M15,10,0 xfe2ce6e0)II(c,d,a,b,M6,15,0 xa3014314)II(b,c,d,a,M13,21,0 x4e0811a1)II(a,b,c,d,M4,6,0 xf7537e82)II(d,a,b,c,M11,10,0 xbd3af235)II(c,d,a,b,M2,15,0 x2ad7d2bb)II(b,c,d,a,M
27、9,21,0 xeb86d391)将A、B、C、D的值分别加上a、b、c、d。用下一数据块继续进行四轮循环,直到结束5)输出A、B、C和D的级联值。几个实例几个实例:MD5()=d41d8cd98f00b204e9800998ecf8427e MD5(a)=0cc175b9c0f1b6a831c399e269772661 MD5(abc)=900150983cd24fb0d6963f7d28e17f72 MD5(message digest)=f96b697d7cb7938d525a2f31aaf161d0 MD5(abcdefghijklmnopqrstuvwxyz)=c3fcd3d7619
28、2e4007dfb496cca67e13b 6.16.1电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术电子商务安全与安全技术n n6.1.5 散列算法与数字签名散列算法与数字签名nMD算法n数字签名n原理.明文数字摘要签名后的摘要密文散列算法发送方私钥加密(数字签名)接收方的公钥加密进一步的读物进一步的读物进一步的读物进一步的读物n nBruce Schneier,Bruce Schneier,Applied Cryptography:Protocols,algorithms and Applied Cryptography:Protocols,algorithms and
29、 source code in Csource code in C,1996,1996n nSimon Singh,Simon Singh,The Code BookThe Code Book,1999,1999n n冯登国,裴定一冯登国,裴定一冯登国,裴定一冯登国,裴定一,密码学导引密码学导引密码学导引密码学导引,科学出版社科学出版社科学出版社科学出版社,1999,1999n n王育民,刘建伟王育民,刘建伟王育民,刘建伟王育民,刘建伟,通信网的安全通信网的安全通信网的安全通信网的安全 -理论与技术理论与技术理论与技术理论与技术,西安电子科技大学出西安电子科技大学出西安电子科技大学出西安电子科
30、技大学出版社版社版社版社,1999,1999n n梁晋,施仁,王育民等梁晋,施仁,王育民等梁晋,施仁,王育民等梁晋,施仁,王育民等,电子商务核心技术电子商务核心技术电子商务核心技术电子商务核心技术 安全电子易协议的理论安全电子易协议的理论安全电子易协议的理论安全电子易协议的理论与设计与设计与设计与设计,2000,2000n nWilliam StallingsWilliam Stallings著,杨明,胥光辉,齐望东等译著,杨明,胥光辉,齐望东等译著,杨明,胥光辉,齐望东等译著,杨明,胥光辉,齐望东等译,密码编码学与网络密码编码学与网络密码编码学与网络密码编码学与网络安全:原理与实践安全:原理
31、与实践安全:原理与实践安全:原理与实践(第二版第二版第二版第二版),电子工业出版社,电子工业出版社,电子工业出版社,电子工业出版社,200120016.26.2公钥体系结构公钥体系结构公钥体系结构公钥体系结构(PKIPKI)n n6.2.1 使用公钥体系结构使用公钥体系结构(PKI)的必要性的必要性n使用数字证书进行信息的交换,不能完全保证信息交易的安全。n使用时钟服务使其具有不可否认性,也不能完全保证信息交易的安全。因此,在开放的Internet网上要能真正实现安全的电子商务,必须有一种安全环境,能提供加密、数字摘要、数字证书、时间戳服务、强口令等安全措施,这种环境就是PKI架构。PKIPK
32、IPKIPKI是生成、管理、存储、分发和吊销基于公钥密码学的公钥是生成、管理、存储、分发和吊销基于公钥密码学的公钥是生成、管理、存储、分发和吊销基于公钥密码学的公钥是生成、管理、存储、分发和吊销基于公钥密码学的公钥证书所需要的硬件、软件、人员、策略和规程的总和。证书所需要的硬件、软件、人员、策略和规程的总和。证书所需要的硬件、软件、人员、策略和规程的总和。证书所需要的硬件、软件、人员、策略和规程的总和。6.26.2公开钥体系结构(公开钥体系结构(公开钥体系结构(公开钥体系结构(PKIPKI)n n6.2.1 使用公开钥体系结构使用公开钥体系结构(PKI)的必要性的必要性n n6.2.2 6.2
33、.2 PKIPKI简介简介 PKI(Public Key Infrastructure)是一个用公钥概念和技术来实施和提供安全服务的具有普适性的安全基础设施。它能够为所有网络应用提供加密和数字签名等密码服务及所必需的密钥和证书管理体系,通过第三方的可信任机构-CA认证中心把用户的公钥和用户的其他标识信息捆绑在一起,在互联网上验证用户的身份,利用PKI平台提供的服务可进行安全的电子交易、通信和互联网上的各种活动。PKI的基础技术包括加密、数字签名、数字信封、双重数字签名、时间戳服务、强口令等。一个典型、完整、有效的PKI应用系统至少应具有以下部分:公钥密码证书管理。黑名单的发布和管理。密钥的备份
34、和恢复。自动更新密钥。自动管理历史密钥。支持交叉认证。6.26.2公钥体系结构公钥体系结构公钥体系结构公钥体系结构 (PKIPKI)n n6.2.1 使用公钥体系结构使用公钥体系结构(PKI)的必要性的必要性n n6.2.2 6.2.2 公钥体系结构介绍公钥体系结构介绍nPKI的操作模型端实体端实体目录服务器证书库RACARARACA是认证中心的英文CertificationAuthority的缩写。CA中心,又称为数字证书认证中心。CA中心作为电子交易中受信任的第三方,负责为电子商务环境中各个实体颁发数字证书,以证明各实体身份的真实性,并负责在交易中检验和管理证书;数字证书的用户拥有自己的公
35、钥/私钥对。证书中包含有证书主体的身份信息、其公钥数据、发证机构名称等。发证机构验证证书主体为合法注册实体后,就对上述信息进行数字签名,形成证书。在公钥证书体系中,如果某公钥用户需要任何其它已向CA注册的用户的公钥,可直接向该用户索取证书,而后用CA的公钥解密解密即可得到认证的公钥;由于证书中已有CA的签名来实现认证,攻击者不具有CA的签名密钥,很难伪造出合法的证书,从而实现了公钥的认证性。数字证书认证中心是整个网上电子交易安全的关键环节,是电子交易中信赖的基础。他必须是所有合法注册用户所信赖的具有权威性、信赖性及公正性的第三方机构。CA的核心功能就是发放和管理数字证书。概括地说,CA认证中心
36、的功能主要有:证书发放、证书更新、证书撤销和证书验证。具体描述如下:(1)接收验证用户数字证书的申请。(2)确定是否接受用户数字证书的申请,即证书的审批。(3)向申请者颁发(或拒绝颁发)数字证书。(4)接收、处理用户的数字证书更新请求。(5)接收用户数字证书的查询、撤销。(6)产生和发布证书的有效期。(7)数字证书的归档。(8)密钥归档。(9)历史数据归档。VeriSign 是最大的公共 CA,也是最早广泛推广 PKI 并建立 公 共 CA 的公司之一。VeriSign 除了是公认的最可信公共 CA 之 一,还提供专用 PKI 工具,包括称为 OnSite 的证书颁发服 务,这项服务充当了本地
37、 CA,而且连接到了 VeriSign 的公 共 CA。Baltimore Technologies 提供了名为 UniCERT 的 PKI 产品系 列,这些产品在管理多个 CA 之间的交互操作方面建立了良好的声誉。这使得它们特别适合于公共 CA 和非常大型的组织。Microsoft 已经提供了一个证书管理服务作 为 Windows NT 的 一个附加件,并且现在已经把完整的 CA 功能都合并到了 Windows 2000 中。低 成本(特别是对于那些拥有 Windows 2000 服务器的用户)使得它们的工具对于严格意义上的内部使 用极具吸引力。ntrust Technologies 的 E
38、ntrust/Authority 产品系列以其自 动密钥管理的工具而著称。这对于内部的 CA 操作非常有意义,并且可以通过减少与 CA 的手工交互操 作来降低 PKI 的某些实 际成本。Thawte 是紧跟在 VeriSign 后的第二大公共 CA,并且它为 内 部的 PKI 管理提供了一个入门级 PKI 程序(Starter PKI Program)6.26.2公开钥体系结构公开钥体系结构公开钥体系结构公开钥体系结构 (PKIPKI)n n6.2.1 使用公开钥体系结构使用公开钥体系结构(PKI)的必要性的必要性n n6.2.2 6.2.2 PKIPKI简介简介nPKI的操作模型n数字证书
39、数字证书是一种电子文档。它提供了一种在Internet上验证身份的方式,其作用类似于司机的驾驶执照或日常生活中的身份证。它是利用数字签名技术由一个权威机构CA证书认证(Certificate Authority)中心签发。在数字证书认证的过程中,证书认证中心(CA)作为权威的、公正的、可信赖的第三方,其作用是至关重要的。数字证书概念最早由MIT的Kohnfelder于1978年在他的本科毕业论文中提出,内容是通过数字签名来保护命名的证书(名字密钥对),从而可将公钥分散存放和访问,克服将公钥集中存放到一个数据库中而带来的访问性能问题。数字证书必须具有唯一性和可靠性。6.26.2公开钥体系结构公开
40、钥体系结构公开钥体系结构公开钥体系结构 (PKIPKI)n n6.2.1 使用公开钥体系结构使用公开钥体系结构(PKI)的必要性的必要性n n6.2.26.2.2公钥体系结构介绍公钥体系结构介绍nPKI的操作模型n数字证书n证书颁发过程 用户向注册中心RA提出申请,注册中心首先为用户产生密钥对,然后生成一个csr文件,内含公共密钥及部分用户身份信息;认证中心收到RA的csr文件后,将执行一些必要的步骤,以确信请求真实,然后进行签名,生成数字证书。这样该证书内包含有用户的个人信息和他的公钥信息,同时还附有认证中心的签名信息。数字证书各不相同,可用于不同的目的,每种证书可提供不同级别的可信度。6.
41、26.2公开钥体系结构公开钥体系结构公开钥体系结构公开钥体系结构 (PKIPKI)n n6.2.1 6.2.1 使用公开钥体系结构使用公开钥体系结构使用公开钥体系结构使用公开钥体系结构(PKI)PKI)的必要性的必要性的必要性的必要性n n6.2.26.2.26.2.26.2.2公钥体系结构介绍公钥体系结构介绍公钥体系结构介绍公钥体系结构介绍nPKI的操作模型n数字证书n证书颁发过程n数字证书类型n按用途:个人数字证书、单位数字证书、单位员工数字证书、服务器证书、VPN证书、WAP证书、代码签名证书和表单签名证书。n按协议:SSL证书、SET证书n按格式:X.509,PGP,SDSI/SPKI
42、,X9.59(AADS),AC等6.26.2公开钥体系结构公开钥体系结构公开钥体系结构公开钥体系结构 (PKIPKI)n n6.2.1 使用公开钥体系结构使用公开钥体系结构(PKI)的必要性的必要性n n6.2.26.2.2公钥体系结构介绍公钥体系结构介绍nPKI的操作模型n数字证书n证书颁发过程n数字证书类型nX.509证书格式X.509数字请求的格式(csr,Certification Service Request):Version:Version:0(v1)、1(v2)、2(v3)SubjectSubject:用DN表示,表示谁的公钥将被认证SubjectPublicKeyInfoSu
43、bjectPublicKeyInfo:包含将被认证的公钥AttributesAttributes:在pkcs#9中定义的属性SignatureAlgorithmSignatureAlgorithmSignatureValueSignatureValue:用被认证的对象的私钥进行签名的值,目的是以防他人冒用此公钥来申请证书X.509数字证书的格式:VersionSerialNumber:由所产生的唯一正整数SignatureAlgorithm:(与上面的一致)Issuer:CA的DNValidity:有效期SubjectPublicKeyInfoIssuerUniqueIDSubjectUniq
44、ueIDExtensions:TbsCertificateTbsCertificateSignatureAlgorithmSignatureAlgorithmSignatureValueSignatureValue:用CA私钥签名所产生的值6.26.2公开钥体系结构公开钥体系结构公开钥体系结构公开钥体系结构 (PKIPKI)n n6.2.1 6.2.1 使用公开钥体系结构使用公开钥体系结构使用公开钥体系结构使用公开钥体系结构(PKI)PKI)的必要性的必要性的必要性的必要性n n6.2.26.2.26.2.26.2.2公钥体系结构介绍公钥体系结构介绍公钥体系结构介绍公钥体系结构介绍n n6.2
45、.3 6.2.3 6.2.3 6.2.3 公钥密码标准公钥密码标准公钥密码标准公钥密码标准PKCS(public-Key cryptography PKCS(public-Key cryptography PKCS(public-Key cryptography PKCS(public-Key cryptography Standard)Standard)Standard)Standard)http:/ http:/ http:/ http:/ 虽然公钥密码技术已被广泛接受,但真正要在Internet网上广为使用,还必须有支持互操作的标准。互操作性要求应用程序严格按照一个认可的标准来表示、传输
46、数据,这个标准就是公钥密码标准PKCS。PKCS是由RSA实验室与其它安全系统开发商为促进公钥密码的发展而制定的一系列标准,是最早的公钥密码标准,也是公钥密码发展过程中最重要的标准之一。PKCS标准涵盖了RSA密码、Diffie-Hellman密钥交换、基于口令的加密、扩展证书语法、密码报文语法、私钥信息语法、认证请求语法、选择性属性、密码令牌以及椭圆曲线密码等内容。PKCS目前共发布过15个标准:PKCS#1、CS#2:RSA Cryptography Standard RSA密码标准PKCS#3、PKCS#4:Diffie-Hellman Key Agreement Standard DH
47、密钥交换标准PKCS#5:Password-Based Cryptography Standard 基于口令的密码标准PKCS#6:Extended-Certificate Syntax Standard 证书扩展语法标准PKCS#7:Cryptography Message Syntan Standard 密文信息语法标准PKCS#8:Private-Key Information Syntax Standard 私钥信息语法标准PKCS#9:Selected Attribute TypesPKCS#10:Certification Request Syntax Standard 认证请求语
48、法标准PKCS#11:Cryptographic Token Interface Standard 密码令牌接口标准PKCS#12:Personal Information Exchange Syntax Standard 个人信息交换语法标准PKCS#13:Elliptic Curve Cryptography Standard 椭圆曲线密码标准PKCS#14:Random Number Generation Standards 伪随机数生成标准PKCS#15:Cryptography Token Information Format Standard 密码令牌信息格式标准PKCS#其它标准
49、135678910111215自由算法语法:数字签名信息xx数字信封加密信息x认证请求xx数字证书X.509,RFC1422扩展证书xx证书撤消列表X.509,RFC1422私钥加密信息xx密码令牌xx个人交换信息x密钥交换信息ISO90a,ISO90b特定算法语法:RSA公钥xRSA私钥x算法:消息摘要:MD2,5RFCs1319,1321私钥加密:DESRFC1423,NIST92a公钥加密:RSAx签名:MD2,4,5w/RSAx基于口令的加密xD-H密钥交换x6.26.2公开钥体系结构公开钥体系结构公开钥体系结构公开钥体系结构 (PKIPKI)n n6.2.1 6.2.1 使用公开钥体
50、系结构使用公开钥体系结构使用公开钥体系结构使用公开钥体系结构(PKI)PKI)的必要性的必要性的必要性的必要性n n6.2.2 6.2.2 6.2.2 6.2.2 PKIPKIPKIPKI简介简介简介简介n n6.2.3 6.2.3 6.2.3 6.2.3 公钥密码标准公钥密码标准公钥密码标准公钥密码标准PKCS(public-Key PKCS(public-Key PKCS(public-Key PKCS(public-Key cryptography Standard)cryptography Standard)cryptography Standard)cryptography Stan