《【教学课件】第8章网络安全.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第8章网络安全.ppt(113页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 1/107第第8章章 网络安全网络安全v加密:防止信息落入非授权用户之手加密:防止信息落入非授权用户之手v认证:在对话前确认对方的身份认证:在对话前确认对方的身份v认可(签名):防止对方抵赖和伪造认可(签名):防止对方抵赖和伪造v完整性控制:确认所收到的信息在传完整性控制:确认所收到的信息在传输过程中没有被篡改输过程中没有被篡改Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 2/107本章将讨论:本章将讨论:v密码学密码学v对称密钥算法对称
2、密钥算法v公开密钥算法公开密钥算法v数字签名数字签名v公钥管理公钥管理v通信安全通信安全v认证协议认证协议vE-mail的安全的安全vWeb安全安全Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 3/107密码学密码学v传统的数据加密传统的数据加密 v替换密码替换密码v变位密码变位密码 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 4/107传统的数据加密模型传统的数据加密模型 Tnbm P725 Fig.8-2 加密模型(对称密钥)加密模型(对称密钥)E加密算法加密算法D解密算法解密
3、算法密钥源密钥源明文明文P明文明文P密文密文C=Ek(P)解密密钥解密密钥k另一安全通道另一安全通道入侵者入侵者被动入侵者被动入侵者只是监听只是监听主动入侵者主动入侵者可能修改可能修改加密密钥加密密钥kComputer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 5/107传统的数据加密模型说明传统的数据加密模型说明v明文明文P用加密算法用加密算法E和加密密钥和加密密钥K加密,得到密文加密,得到密文C=EK(P)v在传送过程中可能出现密文截取者在传送过程中可能出现密文截取者v到了接收端,利用解密算法到了接收端,利用解密算法D和解密密钥和解密密钥K,解出明
4、文为:,解出明文为:DK(C)=DK(EK(P)=Pv截取者又称为攻击者,或入侵者截取者又称为攻击者,或入侵者v在这里我们假定加密密钥和解密密钥都是一样的,但实际上它们可在这里我们假定加密密钥和解密密钥都是一样的,但实际上它们可以是不一样的(即使不一样,这两个密钥也必然有某种相关性)以是不一样的(即使不一样,这两个密钥也必然有某种相关性)v密钥通常是由一个密钥源提供,当密钥需要向远地传送时,一定要密钥通常是由一个密钥源提供,当密钥需要向远地传送时,一定要通过另一个安全信道通过另一个安全信道 vKerckhoff法则:算法是公开的,密钥是保密的法则:算法是公开的,密钥是保密的Computer N
5、etworks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 6/107密码学密码学v传统的数据加密传统的数据加密 v替换密码替换密码v变位密码变位密码 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 7/107替换密码替换密码(Substitution cipherSubstitution cipher)v凯撒密码(凯撒密码(Caesar cipher)a-D、b-E、c-F、d-G、e-H s-V 、z-C eg.明文:明文:access control 可变为:可变为:DFFHVV FRQWURO 密钥为:移密钥为
6、:移4位位 改进改进1:允许移位:允许移位k位,位,k为密钥,解密要尝试为密钥,解密要尝试25种可能种可能 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 8/107替换密码的再改进替换密码的再改进v用对照表用对照表 a b c d e f g h ij k l m n o p q r s t u v w x y zQ W E R T Y U I O P A S D F G H J K L Z X C V B N M第二行的第二行的26个字母次序即为密钥个字母次序即为密钥解密要尝试解密要尝试26!=4 x 1026 种情况,假设种情况,假设
7、1 s测试一个密测试一个密钥钥也需也需1010年年 但解密方法可用但解密方法可用 1:分布式计算:分布式计算2:用字频法:用字频法3:猜测字或短语:猜测字或短语 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 9/107密码学密码学v传统的数据加密传统的数据加密 v替换密码替换密码v变位密码变位密码 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 10/107变位密码变位密码(Transposition cipherTransposition cipher)v每个码不变,但位置改变,最常
8、用的是列变位每个码不变,但位置改变,最常用的是列变位加密加密例:例:密钥为密钥为MEGABUCK 明文为:明文为:pleasetransferonemilliondollarstomyswissbankaccountsixtwotwo密文为:密文为:AFLLSKSOSELAWAIATOOSSCTCLNMOMANTESILYNTWRNNTSOWDPAEDOBUOERIRICXB MEGABUCK74512836pleasetransferonemilliondollarstomyswissbankaccountsixtwotwoabcdTnbm P729 Fig.8-3 变位密码变位密码Comp
9、uter Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 11/107本章将讨论:本章将讨论:v密码学密码学v对称密钥算法对称密钥算法v公开密钥算法公开密钥算法v数字签名数字签名v公钥管理公钥管理v通信安全通信安全v认证协议认证协议vE-mail的安全的安全vWeb安全安全Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 12/107对称密钥算法对称密钥算法 v变换盒变换盒P盒和替换盒盒和替换盒S盒盒v乘积密码乘积密码 vDES数据加密数据加密vAES高高级加密标准级加密标准v加密模式加密模式Compute
10、r Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 13/107变换盒:变换盒:P盒盒 vP盒:实现变位盒:实现变位Tnbm P737 Fig.8-6 乘积密码的基本元素乘积密码的基本元素P盒盒0123456736071245方式:用电路改变输入线的方式:用电路改变输入线的输出排列,图中列出输出排列,图中列出8根线根线的变位,如这的变位,如这8位从上到下位从上到下指定为指定为01234567 则该则该P盒的输出为盒的输出为36071245(a)P盒盒Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 14/1
11、07替换盒:替换盒:S盒盒 vS盒:实现替换盒:实现替换 Tnbm P737 Fig.8-6 乘积密码的基本元素乘积密码的基本元素S盒盒(b)S盒盒按图中的替换,如按图中的替换,如果果8个八进制数个八进制数01234567一个接一一个接一个地输入,那么输个地输入,那么输出序列将变为出序列将变为24506713,即,即2替替换换0,4替换替换1,注,注意意n个个bit的输入需的输入需要要2n条交换线条交换线 解码解码3 8编码编码8 30 1 10 0 00123456701234567Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 15/1
12、07对称密钥算法对称密钥算法 v变换盒变换盒P盒和替换盒盒和替换盒S盒盒v乘积密码乘积密码 vDES数据加密数据加密vAES高高级加密标准级加密标准v加密模式加密模式Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 16/107乘积密码乘积密码 v将一串盒子连接起来,组成乘积密码将一串盒子连接起来,组成乘积密码 P1S1S2S3S4P2S5S6S7S8P3S9S10S11S12P4乘积密码乘积密码Tnbm P737 Fig.8-6 乘积密码的基本元素乘积密码的基本元素(c)乘积乘积Computer Networks V4 cs.sjtu 1/
13、9/2023ftp:/第8章 网络安全 17/107乘积密码的实现乘积密码的实现 第一站对第一站对12根输入线作变换处理,从理论上讲,第二根输入线作变换处理,从理论上讲,第二站可以为一个站可以为一个S盒,它把盒,它把12个个bit 映射为另一个映射为另一个12个个bit,但是,这样一个,但是,这样一个S盒的中段内需要盒的中段内需要212=4096根根跨接线,将跨接线,将12bit的输入分为的输入分为4个个3bit组,各组独立地组,各组独立地进行替换处理,尽管这种方法没有通用性,但它却非进行替换处理,尽管这种方法没有通用性,但它却非常有效,在乘积密码中配置足够多的站,可以使输出常有效,在乘积密码
14、中配置足够多的站,可以使输出成为输入的非常复杂的函数成为输入的非常复杂的函数 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 18/107对称密钥算法对称密钥算法 v变换盒变换盒P盒和替换盒盒和替换盒S盒盒v乘积密码乘积密码 vDES数据加密数据加密vAES高高级加密标准级加密标准v加密模式加密模式Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 19/107DES数据加密数据加密vDES(Data Encryption Standard)数据加密标准数据加密标准v加密算法固定,根据不同的
15、密钥产生加密算法固定,根据不同的密钥产生不同的结果不同的结果 明文按明文按64 bit块加密,生成块加密,生成64 bit的密文,此算法有的密文,此算法有一个一个56 bit的密钥作为参数(另加的密钥作为参数(另加8 bit的奇偶位)的奇偶位)Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 20/107DES算法的基本流程算法的基本流程v初始变换初始变换v16次迭代,这次迭代,这16站功能相同,但使站功能相同,但使用密钥的不同,用密钥的不同,v倒数第二站将左倒数第二站将左32 bit与右与右32 bit互换互换v最后作初始变换的最后作初始变
16、换的逆变换逆变换64b明文明文初始变换初始变换迭代迭代1迭代迭代2迭代迭代1632b交换交换反向变向反向变向56比比特特密密钥钥.64b密文密文(a)概况概况Li-1 f(Ri-1,Ki)Li-1 Ri-132b 32bLi Ri(b)16次迭代中一次的详况次迭代中一次的详况Tnbm P739 Fig.8-7 数据加密标准数据加密标准DES算法的解密密钥与加密密算法的解密密钥与加密密钥相同,但解密步骤正好相反钥相同,但解密步骤正好相反Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 21/107初始置换初始置换 v即第一站,即第一站,将将64
17、 bit明文明文作与密钥无作与密钥无关的变换,关的变换,得到一个乱得到一个乱序的明文序的明文 585042342618102605244362820124625446383022146645648403224168574941332517915951433527191136153453729211356355473931231571 2 3 63 64明文输入明文输入64bit1 2 3 63 64置换后的置换后的64bit1 2 321 2 32置换后的左置换后的左32bit置换后的右置换后的右32bitComputer Networks V4 cs.sjtu 1/9/2023ftp:/第8
18、章 网络安全 22/10716轮迭代的乘积变换轮迭代的乘积变换 v倒数第二站将倒数第二站将左左32 bit与右与右32 bit互换,互换,余下的余下的16站功站功能相同,但使能相同,但使用密钥的不同用密钥的不同函数,解密用函数,解密用的密钥与加密的密钥与加密密钥相同,只密钥相同,只是解密步骤正是解密步骤正好相反好相反 64b明文明文初始变换初始变换迭代迭代1迭代迭代2迭代迭代1632b交换交换反向变向反向变向56比比特特密密钥钥.64b密文密文(a)概况概况Li-1 f(Ri-1,Ki)Li-1 Ri-132b 32bLi Ri(b)其中一站的详况其中一站的详况Tnbm P739 Fig.8-
19、7 数据加密标准数据加密标准Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 23/107逆初始置换逆初始置换 v即最后一站是即最后一站是16轮迭代后的轮迭代后的64 bit组进行变组进行变换,得到输出换,得到输出的密文组,是的密文组,是第一站变换的第一站变换的逆变换逆变换 408481656246432397471555236331386461454226230375451353216129364441252206028353431151195927342421050185826331419491757251 2 3 63 64置换后的置换
20、后的64bit1 2 3 63 64输出密文的输出密文的64bitComputer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 24/107其中函数其中函数 f 执行的步骤执行的步骤1、2 v根据一个固定的变位和根据一个固定的变位和复制规则把复制规则把32比特的比特的Ri-1扩展成扩展成48比特的数比特的数Ev把把E与密钥与密钥Ki异或,并分异或,并分成成8组,每组组,每组6比特,分比特,分别送入别送入8个不同的个不同的S盒盒 3212345456789891011121312131415161716171819202120212223242524252
21、627282928293031321Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 25/107v每个每个S盒的盒的64种可能的输入,将被映射为种可能的输入,将被映射为4比比特的输出特的输出其中函数其中函数 f 执行的步骤执行的步骤3 8个个S盒中某一个的盒中某一个的6 bit输入映射为输入映射为4 bit的输出的过程的输出的过程 行行 列列0123456789101112 13 14 15014413121511831061259071015741421311061211953824114813621115 129731050315 12
22、824917511214 100613X5X4X3X2X1X0101011X5X0111001Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 26/107v8个个S盒,每个盒,每个S盒有盒有4个输出,将通过一个个输出,将通过一个32输入的输入的P盒,再进行置盒,再进行置换运算换运算 其中函数其中函数 f 执行的步骤执行的步骤4 167202129122817115232651831102824143227391913306221142532 bit作为作为P盒的输入盒的输入 P盒置换后的盒置换后的32 bit输出输出 置换后的置换后的32
23、bit输出将与左边的输出将与左边的32 bit异或,作为下一轮迭代的右边数字段异或,作为下一轮迭代的右边数字段 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 27/107f 函数的计算如下函数的计算如下 Ri-1(32位位)扩展和变序成扩展和变序成48位位XORKiS盒(变成盒(变成32位)位)P盒盒f(Ri-1,Ki)Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 28/107子密钥产生器子密钥产生器Ki的计算的计算 v子密钥产生器框图子密钥产生器框图 v置换选择置换选择1 v循环左
24、移循环左移 v置换选择置换选择2 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 29/107子密钥产生器框图子密钥产生器框图 Ci-1(28 bit)Di-1(28 bit)循环左移循环左移ti位位循环左移循环左移ti位位置换选择置换选择2Ki密密 钥(钥(64 bit 8 bit)置换选择置换选择1Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 30/107子密钥产生器子密钥产生器Ki的计算的计算 v子密钥产生器框图子密钥产生器框图 v置换选择置换选择1 v循环左移循环左移 v置换选
25、择置换选择2 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 31/107置换选择置换选择1 v64 bit中的中的8、16、24、32、40、48、56、64位为校验位,其余位为校验位,其余56位为有效位,用于子密位为有效位,用于子密钥的计算钥的计算 密密 钥(钥(64 bit 8bit)D0(28 bit)C0(28 bit)28 bit28 bit57494133251791585042342618102595143352719113605244366355473931231576254463830221466153453729211
26、352820124Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 32/107子密钥产生器子密钥产生器Ki的计算的计算 v子密钥产生器框图子密钥产生器框图 v置换选择置换选择1 v循环左移循环左移 v置换选择置换选择2 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 33/107循环左移循环左移 v在各次迭代时,寄存器在各次迭代时,寄存器C和和D的循环左移的循环左移次数如下表:次数如下表:第第i次迭代次迭代123456789 10 11 12 13 14 15 16循环左移次数循环左移次
27、数 1122222212222221Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 34/107子密钥产生器子密钥产生器Ki的计算的计算 v子密钥产生器框图子密钥产生器框图 v置换选择置换选择1 v循环左移循环左移 v置换选择置换选择2 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 35/107置换选择置换选择2 Ci(28 bit)Di(28 bit)Ki(48 bit)置置换换选选择择2141711241532815621102319124268167272013241523137
28、4755304051453348444939563453464250362932Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 36/1073重重DES(Triple DESTriple DES)v解决解决DES算法中密钥太短的问题,由算法中密钥太短的问题,由IBM公司公司提出提出v具体方法:用两个具体方法:用两个DES密钥、三个密钥、三个DES阶段阶段来完成加密,首先,用来完成加密,首先,用K1对明文进行对明文进行DES加加密,然后用密,然后用K2进行进行DES解密,最后再用解密,最后再用K1进进行行DES加密,产生最终的密文加密,产生最
29、终的密文v解密的方法正好相反解密的方法正好相反Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 37/1073重重DES图例图例EEDPCK1K1K2加密过程加密过程EDDPCK1K1K2解密过程解密过程Tnbm P741 Fig.8-8 DES的三重加密和解密的三重加密和解密Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 38/107对称密钥算法对称密钥算法 v变换盒变换盒P盒和替换盒盒和替换盒S盒盒v乘积密码乘积密码 vDES数据加密数据加密vAES高高级加密标准级加密标准v加密模式加
30、密模式Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 39/107AES高高级加密标准级加密标准The Advanced Encryption Standardv用来替代用来替代DES标准,从世界范围内征求方案标准,从世界范围内征求方案vAES要求:要求:对称块加密对称块加密设计是公开的设计是公开的必须支持必须支持128,192和和256三种密钥长度三种密钥长度必须可以用软件和硬件实现必须可以用软件和硬件实现算法必须是公开的,对所有人一视同仁算法必须是公开的,对所有人一视同仁Computer Networks V4 cs.sjtu 1/9/
31、2023ftp:/第8章 网络安全 40/107AES现有的方案现有的方案-Rijndaelv块长块长128位,密钥长位,密钥长128,192或或256位位v块长和密钥长度的选择是独立的,通常有块长和密钥长度的选择是独立的,通常有128/128和和128/256v与与DES相同,该算法也由多次的替换和变位组成,迭相同,该算法也由多次的替换和变位组成,迭代的次数取决于密钥长度和块长,代的次数取决于密钥长度和块长,128/128是十次,是十次,最多是最多是14次次v与与DES不同的是所有的操作都是施加在所有的字节上不同的是所有的操作都是施加在所有的字节上Computer Networks V4 c
32、s.sjtu 1/9/2023ftp:/第8章 网络安全 41/107Rijndael算法算法v设明文与密钥长度相同,迭代次数为设明文与密钥长度相同,迭代次数为R,将明,将明文和密钥看成文和密钥看成M行行N列的矩阵列的矩阵从原始密钥产生从原始密钥产生R+1个与原始密钥等长的子密钥个与原始密钥等长的子密钥将第将第0个子密钥与明文作异或运算,得到第一次结果个子密钥与明文作异或运算,得到第一次结果按字节对中间结果用一个按字节对中间结果用一个S盒进行替换盒进行替换按行进行左移操作,第按行进行左移操作,第J行左移行左移J个字节个字节按列与一个常量矩阵相乘生成一个新列按列与一个常量矩阵相乘生成一个新列将中
33、间结果与第将中间结果与第K个子密钥作异或运算生成下一个子密钥作异或运算生成下一个中间结果个中间结果循循环环K次次Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 42/107对称密钥算法对称密钥算法 v变换盒变换盒P盒和替换盒盒和替换盒S盒盒v乘积密码乘积密码 vDES数据加密数据加密vAES高高级加密标准级加密标准v加密模式加密模式Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 43/107加密模式加密模式1v电子代码本模式电子代码本模式(Electronic Code Book Mod
34、e):有一个明文和密文的对照本,同一明文总是对应同有一个明文和密文的对照本,同一明文总是对应同一密文,如一密文,如DES,入侵者可以通过猜测解密,也可,入侵者可以通过猜测解密,也可以通过分块特性篡改信息。如:以通过分块特性篡改信息。如:A d a m s,L e s li eC l e r k$1 0B l a c k,R o b i nB o s s$5 0 0,0 0 0C o lli n s,K i mM a n a g e r$1 0 0,0 0 0D a v i s,B o b b i eJ a n it o r$516 Byte8 Byte8 Byte姓姓 名名 职职 位位 津津
35、贴贴 Tnbm P746 Fig.8-11 用用16个个DES块加密的明文块加密的明文Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 44/107加密模式加密模式2v密码块连接模式(密码块连接模式(Cipher Block Chaining Mode):每个明文块在加密以前先与前一个):每个明文块在加密以前先与前一个密文块异或,第一块与一个随机选取的初始向密文块异或,第一块与一个随机选取的初始向量量IV异或,这样同样的明文将不再映射到同样异或,这样同样的明文将不再映射到同样的密文了,初始向量的密文了,初始向量IV(明文)随密文一起传(明文)
36、随密文一起传输,如输,如DES链就属于这种加密模式链就属于这种加密模式Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 45/107加密模式加密模式3v密码反馈模式密码反馈模式(Cipher Feedback Mode):DES链的缺点在于解密前必须完整地收到链的缺点在于解密前必须完整地收到64位的密文,位的密文,CFM用于按字节加密用于按字节加密C2C3C4C5C6C7C8C964-BIT移位寄存器移位寄存器Tnbm P748 Fig.8-13 密码反馈模式密码反馈模式(a)加密加密加密盒加密盒选择最左面的字节选择最左面的字节异或异或密钥密
37、钥P10C10C10Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 46/107加密模式加密模式4v流加密模式(流加密模式(Stream Cipher Mode):块加):块加密中,密中,1位传输错误将影响整个块,而流加密位传输错误将影响整个块,而流加密模式中,模式中,1位传输错误只影响位传输错误只影响1位位Tnbm P749 Fig.8-14 流加密模式流加密模式(a)加密加密初始向量初始向量加密盒加密盒密钥密钥异或异或明文明文密文密文密钥流密钥流Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章
38、网络安全 47/107加密模式加密模式5v计数器模式(计数器模式(Counter Mode):除了电子代码本):除了电子代码本模式外,上述的其他模式都有一个共同的问题模式外,上述的其他模式都有一个共同的问题不不能随机访问密文,必须顺序访问才能解密,在能随机访问密文,必须顺序访问才能解密,在CM中,初始化向量加上计数器的值被加密,然后与明中,初始化向量加上计数器的值被加密,然后与明文块异或,结果为密文文块异或,结果为密文初始向量初始向量加密加密密钥密钥异或异或P0C0初始向量初始向量+1加密加密密钥密钥异或异或P1C1初始向量初始向量+2加密加密密钥密钥异或异或P2C2Tnbm P750 Fig
39、.8-15计数加密模式计数加密模式Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 48/107本章将讨论:本章将讨论:v密码学密码学v对称密钥算法对称密钥算法v公开密钥算法公开密钥算法v数字签名数字签名v公钥管理公钥管理v通信安全通信安全v认证协议认证协议vE-mail的安全的安全vWeb安全安全Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 49/107公开密钥算法公开密钥算法 v密钥是成对产生的密钥是成对产生的 v加密密钥不能用来解密加密密钥不能用来解密 DSK(EPK(P)=P 但
40、但DPK(EPK(P)P v加密密钥和算法是公开的,解密密钥是保密的加密密钥和算法是公开的,解密密钥是保密的 v从从PK(加密密钥加密密钥)导出导出SK(解密密钥解密密钥)极其困难极其困难 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 50/107公开密钥算法模型公开密钥算法模型v公开密钥算法中公开密钥算法中RSA算法最有代表性算法最有代表性 vRSA算法:基于数论算法:基于数论 E加密算法加密算法D解密算法解密算法密密钥钥对对产生源产生源明文明文P明文明文P密文密文C=EPk(P)解密密钥解密密钥SK加密密钥加密密钥PK发送者发送者接收
41、者接收者Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 51/107密钥的选取密钥的选取 v选择两个大质数,选择两个大质数,p和和q(典型地为(典型地为1024 bit)v计算计算n=p*q和和z=(p-1)*(q-1)v选择一个与选择一个与z互质的数互质的数d,(d,n)为解密密钥为解密密钥 v找出找出e,使使e*d(mod z)=1 (e,n)为加密密钥为加密密钥 公开密钥(加密密钥公开密钥(加密密钥)为()为(e、n)私有密钥(解密密钥私有密钥(解密密钥)为()为(d、n)加密密钥和解密密钥可互换加密密钥和解密密钥可互换 n为可编码的
42、最大数为可编码的最大数 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 52/107加密和解密算法加密和解密算法 v把明文看成一个把明文看成一个bit串,并划分成每块串,并划分成每块k个个bit,满足,满足2k n,P=2k 对原始信息对原始信息P加密:加密:使用公开密钥为(使用公开密钥为(e、n),),计算密文计算密文C=Pe(mod n)对加密信息对加密信息C解密:解密:使用私有密钥为(使用私有密钥为(d、n),),计算明文计算明文P=Cd(mod n)Computer Networks V4 cs.sjtu 1/9/2023ftp:/
43、第8章 网络安全 53/107加密和解密算法举例加密和解密算法举例 v选择选择p=3,q=11(实际中(实际中p、q为大质数)为大质数)(Tnbm P754)n=p*q=33,z=(p-1)*(q-1)=20 因为因为7与与20互质,所以选择互质,所以选择d=7 7e(mod 20)=1的数有的数有21、41、61、81、101 可选可选e=3 对原始信息对原始信息P加密:加密:即计算密文即计算密文C=P3(mod 33)使用的公开密钥为()使用的公开密钥为(3、33)对加密信息对加密信息C解密:解密:即计算明文即计算明文P=C7(mod 33)使用的私有密钥为()使用的私有密钥为(7、33)
44、Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 54/107加密和解密算法举例加密和解密算法举例 vP=2k 1023 202.120.10.123telnetallow+1023 202.120.10.225SMTPallow212.5.32.61023 202.120.10.3119NNTPallow+ACK回答响应回答响应block hackers address+Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 85/107网络层防火墙网络层防火墙(续)(续)(续)(续)v可能存在
45、的漏洞可能存在的漏洞IP地址欺骗:冒充被授权或被信任的主机地址欺骗:冒充被授权或被信任的主机IP分段和重组:分段和重组:IP包的最大长度为包的最大长度为65535Byte,传输过程中允许分段,如重组后的长度超过传输过程中允许分段,如重组后的长度超过65535,则,则TCP/IP的协议栈将崩溃的协议栈将崩溃其他安全漏洞其他安全漏洞net1net2router外部网外部网盗用内部盗用内部IP地址地址PSTN内部网内部网外部网外部网防火墙防火墙Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 86/107防火墙防火墙 v防火墙的作用防火墙的作用 v
46、基于协议层的防火墙分类基于协议层的防火墙分类 v网络层防火墙网络层防火墙 v应用层防火墙应用层防火墙 内部网内部网外部网外部网Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 87/107应用层防火墙应用层防火墙 v采用代理网关,外部网委托代理执行相应的操作采用代理网关,外部网委托代理执行相应的操作 内部网内部网外部网外部网代理代理代理代理应用层防火墙应用层防火墙额外功能:额外功能:v代理可控制一些服务的子功能,如代理可控制一些服务的子功能,如FTP,可设置可设置服务器只提供服务器只提供get不提供不提供putv流量、计费等功能流量、计费等功
47、能v检查传输信息本身,如检查传输信息本身,如mail 对不同的应用,应建立不同的应用网关,开销较大,对不同的应用,应建立不同的应用网关,开销较大,所以通常仅开放几个常用的应用所以通常仅开放几个常用的应用 Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 88/107通信安全通信安全vIPSecv防火墙防火墙vVPNComputer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 89/107VPNv在公共网络中建立专用的数据通信网的技术,在公共网络中建立专用的数据通信网的技术,以取代原来的专线以取代原来的专
48、线vVPN可建在可建在ATM或帧中继上,但目前一般指的或帧中继上,但目前一般指的是建立在是建立在Internet上,通过防火墙和隧道技术上,通过防火墙和隧道技术保证安全保证安全Internet防火墙防火墙Tnbm P779 Fig.8-30 VPNInternet防火墙防火墙Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 90/107本章将讨论:本章将讨论:v密码学密码学v对称密钥算法对称密钥算法v公开密钥算法公开密钥算法v数字签名数字签名v公钥管理公钥管理v通信安全通信安全v认证协议认证协议vE-mail的安全的安全vWeb安全安全Com
49、puter Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 91/107认证协议认证协议v验证通信对方是约定的可信任者而验证通信对方是约定的可信任者而不是入侵者不是入侵者v两种认证方法两种认证方法基于公钥:用基于公钥:用PKI的机制的机制基于对称密钥基于对称密钥Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 92/107基于共享密钥的双向认证基于共享密钥的双向认证v通信双方通信双方A和和B事先已通过安全通道交换了一个共享密事先已通过安全通道交换了一个共享密钥钥KAB,此时认证可用,此时认证可用challe
50、nge-response协议协议Tnbm P787 Fig.8-32 使用使用challenge-response协议双向认证的方法协议双向认证的方法Alice Bob ARBKAB(RB)RAKAB(RA)12345Computer Networks V4 cs.sjtu 1/9/2023ftp:/第8章 网络安全 93/107双向认证过程说明双向认证过程说明事先事先A和和B已通过安全通道交换了一个共享密钥已通过安全通道交换了一个共享密钥KAB 1.Alice向向Bob发送自己的标识发送自己的标识A,Bob收到,但无法断定此标识收到,但无法断定此标识A是是Alice发的还是发的还是Trudy