1、3.1 3.1 数据加密概述数据加密概述3.2 3.2 数据加密技术数据加密技术3.3 3.3 数字签名技术数字签名技术3.4 3.4 鉴别技术鉴别技术3.5 3.5 密钥管理技术密钥管理技术|密码编码学密码编码学(cryptography)是密码体制的设计学。是密码体制的设计学。|密码分析学密码分析学(cryptanalysis)则是在未知密钥的情况下从密则是在未知密钥的情况下从密文推演出明文或密钥的技术。密码编码学与密码分析学合文推演出明文或密钥的技术。密码编码学与密码分析学合起来即为起来即为密码学密码学(cryptology)。|如果不论截取者获得了多少密文,但在密文中都没有足够如果不论
2、截取者获得了多少密文,但在密文中都没有足够的信息来唯一地确定出对应的明文,则这一密码体制称为的信息来唯一地确定出对应的明文,则这一密码体制称为无条件安全的无条件安全的,或称为,或称为理论上是不可破的理论上是不可破的。|如果密码体制中的密码不能被可使用的计算资源破译,则如果密码体制中的密码不能被可使用的计算资源破译,则这一密码体制称为在这一密码体制称为在计算上是安全的计算上是安全的。l 理论上不可攻破的系统只有一次一密系统:密钥随机产生、理论上不可攻破的系统只有一次一密系统:密钥随机产生、与明文等长、只使用一次。与明文等长、只使用一次。sendhelp1841337411155131072201
3、6231714314655xrodogff明文明文明文序号明文序号随机密钥随机密钥密文密文密文序号密文序号n本处加密算法本处加密算法:(明文明文+密钥密钥)mod 26n可能的密钥序列有可能的密钥序列有268个,明文长度越大,破译难度越大。个,明文长度越大,破译难度越大。n穷举破译过程中,可能生成另外的有意义的明文,所以无穷举破译过程中,可能生成另外的有意义的明文,所以无论截获多少密文,都不能增加破译可能。论截获多少密文,都不能增加破译可能。ffgodorxllisimot111181881214192020242221234556143141723明文序号明文序号“破译破译”明文明文试探密钥
4、试探密钥截获密文截获密文密文序号密文序号n解密算法解密算法:(密文密文-密钥密钥)mod 26密码系统密码系统明文空间明文空间M密文空间密文空间C密钥空间密钥空间K=加密算法加密算法E解密算法解密算法D1、加密、加密/解密函数解密函数1221()()()kkkkEmcDcmDEmmSymmetric明文明文 X 密文密文Y加密密钥加密密钥 K明文明文 X密文密文YABE 运算运算加密算法加密算法D 运算运算解密算法解密算法因特网因特网解密密钥解密密钥 K密文密文Y E 运算运算加密算法加密算法D 运算运算解密算法解密算法加密加密解密解密明文明文 X明文明文 X ABB 的私钥的私钥 SKB密文
5、密文Y 因特网因特网B 的公钥的公钥 PKB用户用户1(保存用户(保存用户2、3、4密钥)密钥)用户用户4(保存用户(保存用户1、2、3密钥)密钥)用户用户3(保存用户(保存用户1、2、4密钥)密钥)用户用户2(保存用户(保存用户1、3、4密钥)密钥)网络中网络中4个用户之间使用对称加密技术个用户之间使用对称加密技术用户用户1(保存自己的私钥、公钥)(保存自己的私钥、公钥)用户用户4(保存自己的私钥、公钥)(保存自己的私钥、公钥)用户用户3(保存自己的私钥、公钥)(保存自己的私钥、公钥)用户用户2(保存自己的私钥、公钥)(保存自己的私钥、公钥)网络中网络中4个用户之间使用非对称加密技术个用户之
6、间使用非对称加密技术Internet公开密钥密码体制的优点公开密钥密码体制的优点:(1)密钥分配简单。由于加密密钥与解密密钥不同,且不)密钥分配简单。由于加密密钥与解密密钥不同,且不能由加密密钥推导出解密密钥,因此,加密密钥表可以像电能由加密密钥推导出解密密钥,因此,加密密钥表可以像电话号码本一样,分发给各用户,而解密密钥则由用户自己掌话号码本一样,分发给各用户,而解密密钥则由用户自己掌握。握。(2)密钥的保存量少。网络中的每一密码通信成员只需秘)密钥的保存量少。网络中的每一密码通信成员只需秘密保存自己的解密密钥,密保存自己的解密密钥,N个通信成员只需产生个通信成员只需产生N对密钥,对密钥,便
7、于密钥管理。便于密钥管理。(3)可以满足互不相识的人之间进行私人谈话时的保密性)可以满足互不相识的人之间进行私人谈话时的保密性要求。要求。(4)可以完成数字签名和数字鉴别。发信人使用只有自己)可以完成数字签名和数字鉴别。发信人使用只有自己知道的密钥进行签名,收信人利用公开密钥进行检查,既方知道的密钥进行签名,收信人利用公开密钥进行检查,既方便又安全。便又安全。对称密码体制算法比公钥密码体制算法快;公钥密码体对称密码体制算法比公钥密码体制算法快;公钥密码体制算法比对称密码体制算法易传递,因而在安全协议中(例制算法比对称密码体制算法易传递,因而在安全协议中(例如如SSL和和S/MIME),两种体制
8、均得到了应用。这样,既提),两种体制均得到了应用。这样,既提供保密又提高了通信速度。供保密又提高了通信速度。应用时,发送者先产生一个随机数(即对称密钥,每次应用时,发送者先产生一个随机数(即对称密钥,每次加密密钥不同),并用它对信息进行加密,然后用接收者的加密密钥不同),并用它对信息进行加密,然后用接收者的公共密钥用公共密钥用RSA算法对该随机数加密。接收者接收到信息后,算法对该随机数加密。接收者接收到信息后,先用自己的私人密钥对随机数进行解密,然后再用随机数对先用自己的私人密钥对随机数进行解密,然后再用随机数对信息进行解密。这样的链式加密就做到了既有信息进行解密。这样的链式加密就做到了既有R
9、SA体系的保体系的保密性,又有密性,又有DES或或IDEA算法的快捷性。算法的快捷性。明文:明文:HELLO 123451ABCDE2FGHIJK3LMNOP4QRSTU5VWXYZ密文:密文:2315313134例一例一 希腊密码(二维字母编码查表):希腊密码(二维字母编码查表):公元前公元前2世纪世纪 A B C D E F G X Y Z D E F G H I J A B C 明文:Hunan University密文:kxqdq xqlyhuvlwb公元前50年,古罗马的凯撒大帝在高卢战争中采用的加密方法。凯撒密码算法就是把每个英文字母向前推移K位(k=3)。例二例二 凯撒密码:公元
10、前凯撒密码:公元前50年年例三例三 多表代换密码多表代换密码n经典的维吉尼亚密码经典的维吉尼亚密码n仍能够用统计技术进行分析仍能够用统计技术进行分析n需选择与明文长度相同并与之没有统计关系的密钥需选择与明文长度相同并与之没有统计关系的密钥明文明文HellWorld密钥密钥EchoEchoe42714427144密文密文LgssAqyzh作业作业1:请用:请用C/C+实现实现vigenere密码密码例四例四 多字母替换密码多字母替换密码Playfair是以英国科学家是以英国科学家L.Playfair的名字命名的一种多字母替换的名字命名的一种多字母替换密码。英国曾在一战期间使用过二字母替换密码。每
11、一对明文字密码。英国曾在一战期间使用过二字母替换密码。每一对明文字母母m1和和m2,替换规则如下:,替换规则如下:若若m1和和m2在密钥方阵的在密钥方阵的同一行同一行,则密文字母,则密文字母C1和和C2分别是分别是m1和和m2右边的字母(第一列视为最后一列的右边)。右边的字母(第一列视为最后一列的右边)。若若m1和和m2在密钥方阵的在密钥方阵的同一列同一列,则,则C1和和C2分别是分别是m1和和m2下下边的字母(第一行视为最后一行的下边)。边的字母(第一行视为最后一行的下边)。若若m1和和m2位于位于不同的行和列不同的行和列,则,则C1和和C2是以是以m1和和m2为顶点为顶点的长方形中的另外两
12、个顶点,其中的长方形中的另外两个顶点,其中C1和和m1、C2和和m2处于同一处于同一行。行。若若m1=m2,则在,则在m1和和m2之间插入一个无效字母,如之间插入一个无效字母,如“x”,再,再进行以上判断和指定。进行以上判断和指定。若明文只有若明文只有奇数奇数个字母,则在明文末尾加上一个无效字母。个字母,则在明文末尾加上一个无效字母。HARPSICODBEFGKLMNQTUVWXYZ表表1 二字母替换密码方阵二字母替换密码方阵例如:明文为例如:明文为“bookstore”,求密文。,求密文。明文:明文:bo ok st or ex密文:密文:ID DG PU GX GV分组密码分组密码n按一定
13、长度对明文分组,然后以组为单位用同一个密钥进行加按一定长度对明文分组,然后以组为单位用同一个密钥进行加/解密。解密。n著名的分组密码算法有:著名的分组密码算法有:DES(Data Encryption Standard),),IDEA(International Data Encryption Algorithm),GOST(Gosudarstvennyi Standard),),AES(Advanced Encryption Standard)。)。流密码流密码n利用密钥利用密钥K产生一个密钥流,按字符逐位进行加产生一个密钥流,按字符逐位进行加/解密。解密。n密钥流密钥流z=z0,z1,其中
14、其中zi=f(K,i i),),i i是加密器中存储器在时是加密器中存储器在时刻刻i i的状态,的状态,f f是是K K和和 i i产生的函数。产生的函数。【DES加密过程加密过程】明文分组:将明文分成明文分组:将明文分成64位一组位一组初始变换初始变换IP:对:对64位码进行移位操作位码进行移位操作迭代过程。共迭代过程。共16轮运算,这是一个与密钥有关的对分组进轮运算,这是一个与密钥有关的对分组进行加密的运算。这是行加密的运算。这是DES加密算法的核心部分。加密算法的核心部分。逆初始变换(逆初始变换(IP-1)。是第)。是第步变换的逆变换,这一变换过步变换的逆变换,这一变换过程也不需要密钥,
15、也是简单的移位操作。程也不需要密钥,也是简单的移位操作。输出输出64位码的密文。位码的密文。置换码组置换码组 输入(输入(64位)位)40 8 48 16 56 24 64 3239 7 47 15 55 23 63 3138 6 46 14 54 22 62 3037 5 45 13 53 21 61 2936 4 44 12 52 20 60 2835 3 43 11 51 19 59 2734 2 42 10 50 18 58 2633 1 41 9 49 17 57 25输出(输出(64位)位)逆初始变换逆初始变换IP-1输入(输入(64位)位)58 50 42 34 26 18 10
16、 260 52 44 36 28 20 12 462 54 46 38 30 22 14 664 56 48 40 32 24 16 857 49 41 33 25 17 9 159 51 43 35 27 19 11 361 53 45 37 29 21 13 563 55 47 39 31 23 15 7输出(输出(64位)位)L0(32位)位)R0(32位)位)初始变换初始变换IPt1t2t3 t63 t64t58t50t42t15 t7t1t2t3 t63 t64t40t8t48t57 t25DES加密过程图加密过程图Li扩展运算扩展运算ERi密钥密钥+选择压缩选择压缩S置换运算置换运
17、算P+Ri+1Li+1=Ri移位移位移位移位压缩置换压缩置换PC-2密钥密钥一轮迭代过程示意图一轮迭代过程示意图32位位48位位32位位48位位28位位28位位56位密钥位密钥Ki扩展运算扩展运算E:经初始变换后的经初始变换后的64位序列右半位序列右半部分(部分(32位)经选择扩展运算位)经选择扩展运算E,将,将32位扩展成位扩展成48位二进制位二进制块:块:Ri-1=E(r1r2r3r31r32)=r32r1r2r3r31r32r1R032位位32 1 2 3 4 5 4 5 6 7 8 9 8 9 10 11 12 1312 13 14 15 16 1716 17 18 19 20 212
18、0 21 22 23 24 2524 25 26 27 28 2928 29 30 31 32 1选择运算选择运算E的结果的结果48位位E运算运算57 49 41 33 25 17 9 1 58 50 42 34 26 1810 2 59 51 43 35 2719 11 3 60 52 44 3663 55 47 39 31 23 15 7 62 54 46 38 30 2214 6 61 53 45 37 2921 13 5 28 20 12 4密钥(密钥(64位)位)C0(28位位)D0(28位位)置换选择函数置换选择函数PC-1 密钥密钥K K是一个是一个6464位二进制块,其中位二进
19、制块,其中8 8位是奇偶校验位,分别位于位是奇偶校验位,分别位于第第8 8,1616,2424,6464位。置换选择函数将这些奇偶校验位去掉,并位。置换选择函数将这些奇偶校验位去掉,并把剩下的把剩下的5656位进行换位,换位后的结果被分成两半。位进行换位,换位后的结果被分成两半。Ci(28位位)Di(28位位)14 17 11 24 1 5 3 28 15 6 21 1023 19 12 4 26 816 7 27 20 13 241 52 31 37 47 5530 40 51 45 33 4844 49 39 56 34 5346 42 50 36 29 32Ki(48位位)置换选择函数置
20、换选择函数PC-2选择压缩的例子选择压缩的例子 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 150 14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 71 0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 82 4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 03 15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 131 0 1 1 0 0 10=20 0 1 0输入输入6位位输出输出4位位=6【对称密码体制的不足对称密码体制的不足】密钥使用一段时间后就要更换,加密方每次启动新密码
21、密钥使用一段时间后就要更换,加密方每次启动新密码时,都要经过某种秘密渠道把密钥传给解密方,而密钥在时,都要经过某种秘密渠道把密钥传给解密方,而密钥在传递过程中容易泄漏。传递过程中容易泄漏。网络通信时,如果网内的所有用户都使用同样的密钥,网络通信时,如果网内的所有用户都使用同样的密钥,那就失去了保密的意义。但如果网内任意两个用户通信时那就失去了保密的意义。但如果网内任意两个用户通信时都使用互不相同的密钥,都使用互不相同的密钥,N个人就要使用个人就要使用N(N-1)/2个密钥。个密钥。因此,密钥量太大,难以进行管理。因此,密钥量太大,难以进行管理。无法满足互不相识的人进行私人谈话时的保密性要求。无
22、法满足互不相识的人进行私人谈话时的保密性要求。在在Internet中,有时素不相识的两方需要传送加密信息。中,有时素不相识的两方需要传送加密信息。难以解决数字签名验证的问题。难以解决数字签名验证的问题。n解决密钥分发的困难解决密钥分发的困难n数字签名的需要数字签名的需要n依据数学问题的不同,可分为三类:依据数学问题的不同,可分为三类:n基于整数分解问题:基于整数分解问题:RSAn基于离散对数问题:基于离散对数问题:DSA,DHn基于椭圆曲线点群上离散对数问题:基于椭圆曲线点群上离散对数问题:ECDSA【RSA密码体制密码体制】密钥产生密钥产生n假设假设Alice想要通过一个不可靠的媒体接收想要
23、通过一个不可靠的媒体接收Bob的一条私人讯息。她的一条私人讯息。她可以用以下的方式来产生一个公钥和一个私钥:可以用以下的方式来产生一个公钥和一个私钥:n随意选择两个大的质数随意选择两个大的质数p和和q,p不等于不等于q,计算,计算n=pq。n根据欧拉函数,不大于根据欧拉函数,不大于N且与且与N互质的整数个数为(互质的整数个数为(p-1)(q-1)n选择一个整数选择一个整数e与(与(p-1)()(q-1)互质,并且)互质,并且e小于(小于(p-1)(q-1)n用公式计算用公式计算d:d e 1(mod(p-1)(q-1)n将将p和和q的记录销毁。的记录销毁。ne是公钥,是公钥,d是私钥。是私钥。
24、d是秘密的,而是秘密的,而n是公众都知道的。是公众都知道的。Alice将她将她的公钥传给的公钥传给Bob,而将她的私钥藏起来。,而将她的私钥藏起来。加密消息加密消息n假设假设Bob想给想给Alice送一个消息送一个消息M,他知道,他知道Alice产生的产生的n和和e。他使用。他使用起先与起先与Alice约好的格式将约好的格式将M转换为一个小于转换为一个小于n的整数的整数m,比如他可以将,比如他可以将每一个字转换为这个字的每一个字转换为这个字的Unicode码,然后将这些数字连在一起组成一码,然后将这些数字连在一起组成一个数字。假如他的信息非常长的话,他可以将这个信息分为几段,然后个数字。假如他
25、的信息非常长的话,他可以将这个信息分为几段,然后将每一段转换为将每一段转换为m。用下面这个公式他可以将。用下面这个公式他可以将m加密为加密为c:mec(mod N)或或 c me(mod N)n计算计算c并不复杂。并不复杂。Bob算出算出c后就可以将它传递给后就可以将它传递给Alice。解密消息解密消息nAlice得到得到Bob的消息的消息c后就可以利用她的密钥后就可以利用她的密钥d来解码。她可以用以来解码。她可以用以下这个公式来将下这个公式来将c转换为转换为m:cd m(mod n)或)或 m cd(mod n)n得到得到m后,她可以将原来的信息后,她可以将原来的信息m重新复原。重新复原。R
26、SA示例示例n选择两个素数选择两个素数p=11,q=17(举例方便,实际应该为大素数)(举例方便,实际应该为大素数)nn=pq=1117=187,(n)=(p-1)(n)=(p-1)*(q-1)=160(q-1)=160n选择一个随机整数选择一个随机整数e=13160e=13160,且与,且与160160互素。互素。n求求d d:d d13 1(mod 160)13 1(mod 160)l160=12160=121313+4 4l1313=3=34 4+1+1l1=13-31=13-34=13-34=13-3(160-12160-121313)=)=*13-313-3*160160*13 1(
27、mod 160)13 1(mod 160)n设明文设明文M=9,则,则913=25(mod 187),密文密文C=25n接收密文接收密文C,2537=9(mod 187),明文,明文M=9n数字签名是通过一个单向哈希函数对要传送的报数字签名是通过一个单向哈希函数对要传送的报文进行处理,用以认证报文来源并核实报文是否发文进行处理,用以认证报文来源并核实报文是否发生变化的一个生变化的一个字母数字串字母数字串(MAC或消息摘要)。或消息摘要)。n接收者用发送者公钥对摘要解密得到哈希摘要,接收者用发送者公钥对摘要解密得到哈希摘要,对原始报文进行同样的哈希处理,比较两者是否相对原始报文进行同样的哈希处理
28、,比较两者是否相同,保证了完整性和不可否认性。同,保证了完整性和不可否认性。n著名的有著名的有RSA、ElGamal、DSS等数字签名体制。等数字签名体制。1、对数字签名的要求、对数字签名的要求(1)报文鉴别报文鉴别接收者能够核实发送者对报文的签名;接收者能够核实发送者对报文的签名;(2)报文的完整性报文的完整性发送者事后不能抵赖对报文的签名;发送者事后不能抵赖对报文的签名;(3)不可否认不可否认接收者不能伪造对报文的签名。接收者不能伪造对报文的签名。密文密文 D运算运算明文明文 X明文明文 X ABA 的私钥的私钥 SKA因特网因特网签名签名 核实签名核实签名E运算运算密文密文 A 的公钥的
29、公钥 PKA)(AXDSK核实签名解密 加密 签名 E 运算D 运算明文 X明文 X ABA 的私钥 SKA因特网E 运算B 的私钥 SKBD 运算加密与解密签名与核实签名B 的公钥 PKBA 的公钥 PKA密文2、具有保密性的数字签名、具有保密性的数字签名|许多报文并不需要加密但却需要数字签名,许多报文并不需要加密但却需要数字签名,以便让报文的接收者能够鉴别报文的真伪。以便让报文的接收者能够鉴别报文的真伪。|然而对很长的报文进行数字签名会使计算然而对很长的报文进行数字签名会使计算机增加很大的负担(需要进行很长时间的机增加很大的负担(需要进行很长时间的运算)。运算)。|当我们传送不需要加密的报
30、文时,应当使当我们传送不需要加密的报文时,应当使接收者能用很简单的方法鉴别报文的真伪。接收者能用很简单的方法鉴别报文的真伪。1、报文鉴别、报文鉴别报文摘要的实现报文摘要的实现A比较签名 核实签名报文 XHD 运算D(H)A 的私钥报文 XD(H)B报文摘要报文 XD(H)发送 E 运算H签名的报文摘要HA 的公钥报文摘要运算报文摘要报文摘要因特网报文摘要运算2、实体鉴别、实体鉴别|报文鉴别是对每一个收到的报文都要鉴别报文的发送者,实体鉴别在报文鉴别是对每一个收到的报文都要鉴别报文的发送者,实体鉴别在系统接入的全部持续时间内对和自己通信的对方实体系统接入的全部持续时间内对和自己通信的对方实体只需
31、验证一次只需验证一次。(1)简单鉴别)简单鉴别|最简单的实体鉴别方法是:最简单的实体鉴别方法是:A使用对称密钥使用对称密钥 KAB加密发送给加密发送给 B 的报文,的报文,B 收到此报文后,用共享对称密钥收到此报文后,用共享对称密钥 KAB 进行解密,因而鉴别了实体进行解密,因而鉴别了实体 A 的身份。的身份。|易受到易受到重放攻击重放攻击(C截获握手报文,发送给截获握手报文,发送给B,让,让B误认为误认为C是是A)和)和IP欺骗欺骗(截获(截获A的的IP,冒充,冒充A)ABEKAB(“我是A”)CABA,RARBKABRARBKAB,时间(2)使用随机数进行鉴别)使用随机数进行鉴别AB我是
32、A中间人 C我是 ARBRBSKC请把公钥发来PKCRBRBSKA请把公钥发来PKADATAPKCDATAPKA时间(3)中间人攻击)中间人攻击n管理密钥从产生到销毁的全过程,包括系统初始化,密钥产管理密钥从产生到销毁的全过程,包括系统初始化,密钥产生、存储、备份、装入、分配、保护、更新、控制、丢失、生、存储、备份、装入、分配、保护、更新、控制、丢失、吊销、销毁。吊销、销毁。n密钥一般分为:基本密钥、会话密钥、密钥加密密钥、主机密钥一般分为:基本密钥、会话密钥、密钥加密密钥、主机密钥。密钥。n基本密钥:又称初始密钥,由用户选定或系统分配,可基本密钥:又称初始密钥,由用户选定或系统分配,可在较长
33、时间由一对用户专门使用的秘密密钥。在较长时间由一对用户专门使用的秘密密钥。n会话密钥:用会话密钥:用 户在一次通话或交换数据过程中使用的密户在一次通话或交换数据过程中使用的密钥。与基本密钥一起启动和控制密钥生成器,生成用于加钥。与基本密钥一起启动和控制密钥生成器,生成用于加密数据的密钥流。密数据的密钥流。n密钥加密密钥:用于对传送的会话或文件密钥进行加密密钥加密密钥:用于对传送的会话或文件密钥进行加密是采用的密钥,也称辅助密钥。是采用的密钥,也称辅助密钥。n主机密钥:对密钥加密密钥进行加密的密钥,存放于主主机密钥:对密钥加密密钥进行加密的密钥,存放于主机中。机中。|目前常用的密钥分配方式是设立
34、目前常用的密钥分配方式是设立密钥分配中心密钥分配中心 KDC(Key Distribution Center)。|KDC 是大家都信任的机构,其任务就是给需要进行秘是大家都信任的机构,其任务就是给需要进行秘密通信的用户临时分配一个会话密钥(仅使用一次)。密通信的用户临时分配一个会话密钥(仅使用一次)。|用户用户 A 和和 B 都是都是 KDC 的登记用户,并已经在的登记用户,并已经在 KDC 的服务器上安装了各自和的服务器上安装了各自和 KDC 进行通信的进行通信的主密钥主密钥(master key)KA 和和 KB。1、对称密钥的分配、对称密钥的分配AB密钥密钥分配中心分配中心KDCA,B,
35、KABKB用户专用主密钥用户专用主密钥用户用户 主密钥主密钥 A KA B KB A,B,KABKABKBKA,时间时间A,BABKerberosAASTGSTKAB,A,KABKBT+1KABA,KSTKS,B,KTGA,KABKB,B,KABKSKTGKAA,KSKS,2、公钥的分配、公钥的分配需要有一个值得信赖的机构需要有一个值得信赖的机构即认证中心即认证中心CA(Certification Authority),来将公钥与其对应的实体,来将公钥与其对应的实体(人或机器)进行绑定(人或机器)进行绑定(binding)。认证中心一般由政府出资建立。每个实体都有认证中心一般由政府出资建立。每
36、个实体都有CA 发来发来的证书的证书(certificate),里面有公钥及其拥有者的标识信,里面有公钥及其拥有者的标识信息。此证书被息。此证书被 CA 进行了数字签名。任何用户都可从进行了数字签名。任何用户都可从可信的地方获得认证中心可信的地方获得认证中心 CA 的公钥,此公钥用来验的公钥,此公钥用来验证某个公钥是否为某个实体所拥有。有的大公司也提证某个公钥是否为某个实体所拥有。有的大公司也提供认证中心服务。供认证中心服务。下面给出几个认证机构的网址:下面给出几个认证机构的网址:(1)VeriSign CA,(2)BankGate CA,(3)Thawte Consulting,(4)Glo
37、balSign CA,(5)中国金融认证中心,中国金融认证中心,(6)广东电子商务认证中心,广东电子商务认证中心,(7)上海认证中心,上海认证中心,(8)天威诚信认证服务中心,天威诚信认证服务中心,(9)北京数字证书认证中心,北京数字证书认证中心,(10)中国数字认证网,中国数字认证网,3、密钥共享、密钥共享 所谓密钥共享方案是指:将一个密钥所谓密钥共享方案是指:将一个密钥 k分成分成n个子密钥个子密钥,并,并秘密分配给秘密分配给n 个参与者。需满足下列两个条件:个参与者。需满足下列两个条件:(1)用任意用任意t 个子密钥计算密钥个子密钥计算密钥k 是容易的;是容易的;(2)若子密钥的个数少于
38、若子密钥的个数少于 t个,要求得密钥个,要求得密钥 k是不可行的。是不可行的。称这样的方案为称这样的方案为(t,n)门限方案门限方案(Threshold Schemes),t为门限值。为门限值。由于重构密钥至少需要由于重构密钥至少需要t 个子密钥,故暴露个子密钥,故暴露r(r t1)个子个子密钥不会危及密钥。因此少于密钥不会危及密钥。因此少于 t个参与者的共谋也不能得到个参与者的共谋也不能得到密钥。另外,若一个子密钥或至多密钥。另外,若一个子密钥或至多 n-t个子密钥偶然丢失或个子密钥偶然丢失或破坏,仍可恢复密钥。破坏,仍可恢复密钥。4、密钥托管、密钥托管l 所谓密钥托管,是指为公众和用户提供
39、更好的安全通信同时,也所谓密钥托管,是指为公众和用户提供更好的安全通信同时,也允许授权者允许授权者(包括政府保密部门、企业专门技术人员和用户等包括政府保密部门、企业专门技术人员和用户等)为为了国家、集团和个人隐私等安全利益,监听某些通信内容和解密了国家、集团和个人隐私等安全利益,监听某些通信内容和解密有关密文。所以,密钥托管也叫有关密文。所以,密钥托管也叫“密钥恢复密钥恢复”,或者理解为,或者理解为“数数据恢复据恢复”和和“特殊获取特殊获取”等含义。等含义。l 密钥由所信任的委托人持有,委托人可以是政府、法院或有契约密钥由所信任的委托人持有,委托人可以是政府、法院或有契约的私人组织。一个密钥也可能在数个这样的委托人中分拆。授权的私人组织。一个密钥也可能在数个这样的委托人中分拆。授权机构可通过适当程序,如获得法院的许可,从数个委托人手中恢机构可通过适当程序,如获得法院的许可,从数个委托人手中恢复密钥。复密钥。l 第三方保管密钥的加密标准第三方保管密钥的加密标准美国政府的美国政府的EES标准(标准(Escrow Encryption Standard)公布之后,在社会上引起很大的争议。)公布之后,在社会上引起很大的争议。