《消息认证与数字签名幻灯片.ppt》由会员分享,可在线阅读,更多相关《消息认证与数字签名幻灯片.ppt(55页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、消息认证与数字签名消息认证与数字签名第1页,共55页,编辑于2022年,星期日1问题的提出问题的提出通信威胁通信威胁1.1.泄露:把消息内容发布给任何人或没有合法密泄露:把消息内容发布给任何人或没有合法密钥的进程。钥的进程。2.2.伪造:从一个假冒信息源向网络中插入消息。伪造:从一个假冒信息源向网络中插入消息。3.3.内容修改:消息内容被插入删除变换修改。内容修改:消息内容被插入删除变换修改。4.4.顺序修改:插入删除或重组消息序列。顺序修改:插入删除或重组消息序列。5.5.时间修改:消息延迟或重放。时间修改:消息延迟或重放。6.6.否认:接受者否认收到消息否认:接受者否认收到消息,发送者否认
2、发送过发送者否认发送过消息。消息。第2页,共55页,编辑于2022年,星期日25.1 信息认证信息认证回顾:前面讲述的对称密码(如回顾:前面讲述的对称密码(如DES和和AES)和公钥密码)和公钥密码体制(体制(RSA)都是围绕信息的保密性,即防止第三方获取)都是围绕信息的保密性,即防止第三方获取明文消息而展开的,但信息的完整性和抗否认性也是信息明文消息而展开的,但信息的完整性和抗否认性也是信息安全内容的重要特征。保证信息的完整性和抗否认性是通安全内容的重要特征。保证信息的完整性和抗否认性是通过信息认证和数字签名来实现的。过信息认证和数字签名来实现的。信息认证(消息认证)验证信息的完整性,当接收
3、方收信息认证(消息认证)验证信息的完整性,当接收方收到发送方的报文时,接收方能够验证收到的报文时真实到发送方的报文时,接收方能够验证收到的报文时真实的未被篡改的。的未被篡改的。(包括顺序和及时性)(包括顺序和及时性)它包含两方面的含义:它包含两方面的含义:(1)验证信息的发送者是真正的而不是冒充的,即数据起源)验证信息的发送者是真正的而不是冒充的,即数据起源验证;验证;(2)验证信息在传递过程中未被篡改、重放或延迟等。)验证信息在传递过程中未被篡改、重放或延迟等。第3页,共55页,编辑于2022年,星期日3信息认证检验的内容:证实报文的信源和信宿、信息认证检验的内容:证实报文的信源和信宿、报文
4、内容是否遭到偶然或有意地篡改、报文的报文内容是否遭到偶然或有意地篡改、报文的序号是否正确,报文到达的时间是否在指定的序号是否正确,报文到达的时间是否在指定的期限内。这种认证只在通信的双方之间进行,期限内。这种认证只在通信的双方之间进行,而不允许第三者进行上述认证。认证不一定实而不允许第三者进行上述认证。认证不一定实时的。时的。保密和认证同时是信息系统安全的两个方面,保密和认证同时是信息系统安全的两个方面,但它们是两个不同属性的问题,认证不能自动但它们是两个不同属性的问题,认证不能自动提供保密性,而保密性也不能自然提供认证功提供保密性,而保密性也不能自然提供认证功能。一个纯认证系统的模型如下图所
5、示:能。一个纯认证系统的模型如下图所示:第4页,共55页,编辑于2022年,星期日4认证系统的模型认证系统的模型第5页,共55页,编辑于2022年,星期日5认证函数认证函数可用来做认证的函数分为三类可用来做认证的函数分为三类(1)(1)信息加密函数信息加密函数(Message encryption)(Message encryption):将明文加密后以将明文加密后以密文密文作为认证作为认证(2)(2)信息认证码信息认证码MAC(Message Authentication MAC(Message Authentication Code)Code):用一个密钥控制的公开函数作用后,:用一个密钥
6、控制的公开函数作用后,产生固定长度的数值作为认证符,也称密码校产生固定长度的数值作为认证符,也称密码校验和。验和。(3)(3)散列函数散列函数(Hash Function)(Hash Function):是一个公开的函数它将任意长的信息映射成一是一个公开的函数它将任意长的信息映射成一个固定长度的散列值,以散列值作为认证符。个固定长度的散列值,以散列值作为认证符。常见的散列函数有:常见的散列函数有:MD4MD4、MD5MD5、SHASHA和和 SHA-1SHA-1第6页,共55页,编辑于2022年,星期日65.1.1 信息加密认证信息加密认证信息加密函数分两种,一种是常规的对称密钥加密函数,信息
7、加密函数分两种,一种是常规的对称密钥加密函数,另一种是公开密钥的双密钥加密函数。下图的通信双方是,另一种是公开密钥的双密钥加密函数。下图的通信双方是,用户用户A A为发信方,用户为发信方,用户B B为接收方。用户为接收方。用户B B接收到信息后,通过接收到信息后,通过解密来判决信息是否来自解密来判决信息是否来自A,信息是否是完整的,有无窜扰。信息是否是完整的,有无窜扰。1.1.对称密码体制加密:对称密码体制加密:对称加密:具有机密性,可认证对称加密:具有机密性,可认证,不提供签名不提供签名第7页,共55页,编辑于2022年,星期日7 如何自动确定是否收到的明文可解密为可懂的明文如何自动确定是否
8、收到的明文可解密为可懂的明文?一种解决办法是强制明文有某种结构一种解决办法是强制明文有某种结构.差错控制:差错控制:Error ControlError Control第8页,共55页,编辑于2022年,星期日82.公钥密码体制加密认证:公钥密码体制加密认证:(1)公钥加密:具有机密性,不能提供认证(任何人都可)公钥加密:具有机密性,不能提供认证(任何人都可以得到公钥)以得到公钥)(2)私钥加密:认证和签名,没有保密性私钥加密:认证和签名,没有保密性第9页,共55页,编辑于2022年,星期日9(3 3)公钥加密体制:机密性,可认证和签名)公钥加密体制:机密性,可认证和签名第10页,共55页,编
9、辑于2022年,星期日105.1.2 消息认证码(消息认证码(MAC)消息认证码(消息认证码(MAC)是在密钥的控制下将任)是在密钥的控制下将任意长的消息映射到一个简短的定长数据分组,意长的消息映射到一个简短的定长数据分组,并将它附加在消息后。并将它附加在消息后。MAC进行消息的认证进行消息的认证过程如图:过程如图:消息认证算法K消息MAC消息MAC认证算法KMAC比较认证码的使用认证码的使用MACMAC的基本用法的基本用法(a)a)第11页,共55页,编辑于2022年,星期日11A B:M|CK(M)即即A使用双方共享的密钥使用双方共享的密钥K对明文进行计算,产生一个对明文进行计算,产生一个
10、短小的数据块,即消息验证码短小的数据块,即消息验证码 MAC=CK(M)。发送给。发送给接收方接收方B时,将它附加在报文中。时,将它附加在报文中。接收方收到报文使用相同的密钥接收方收到报文使用相同的密钥K执行相同的计算,得执行相同的计算,得到新的到新的MAC。接收方将收到的。接收方将收到的MAC与计算得到与计算得到MAC进行进行比较,如果相匹配,那么可以保证报文在传输过程中维持了比较,如果相匹配,那么可以保证报文在传输过程中维持了完整性:完整性:(1)报文未被更改过)报文未被更改过 (2)接收者确信报文来自真实的发送者。(无人知晓密)接收者确信报文来自真实的发送者。(无人知晓密钥)钥)注意:上
11、述认证过程只提供认证、不提供保密性。注意:上述认证过程只提供认证、不提供保密性。第12页,共55页,编辑于2022年,星期日12MACMAC的基本用法的基本用法(b)b)提供消息认证与保密,认证码与明文连接提供消息认证与保密,认证码与明文连接Provides authentication-only A and B share K1Provides authentication-only A and B share K1Provides confidentiality-only A and B shareProvides confidentiality-only A and B share K
12、KK2K2 2 2A B:EK2(M|CK1(M)第13页,共55页,编辑于2022年,星期日13MACMAC的基本用法的基本用法(c)c)提供消息认证与保密,认证码与密文连接提供消息认证与保密,认证码与密文连接Provides authentication-Using K1Provides authentication-Using K1Provides confidentiality-Using K2Provides confidentiality-Using K2A B:EK2(EK2(M)|CK1(EK2(M)第14页,共55页,编辑于2022年,星期日14消息认证消息认证 VS 常规加
13、密常规加密MAC函数类似于加密函数,主要区别在于函数类似于加密函数,主要区别在于MAC函数不需函数不需要可逆而加密函数必须是可逆的,因此,认证函数比加要可逆而加密函数必须是可逆的,因此,认证函数比加密函数更不易破解。密函数更不易破解。保密性与真实性是两个不同的概念保密性与真实性是两个不同的概念根本上根本上,信息加密提供的是保密性而非真实性信息加密提供的是保密性而非真实性加密代价大加密代价大(公钥算法代价更大公钥算法代价更大)认证函数与保密函数的分离能提供功能上的灵活性认证函数与保密函数的分离能提供功能上的灵活性某些信息只需要真实性某些信息只需要真实性,不需要保密性不需要保密性 广播的信息难以使
14、用加密广播的信息难以使用加密(信息量大信息量大)网络管理信息等只需要真实性网络管理信息等只需要真实性 政府政府/权威部门的公告权威部门的公告第15页,共55页,编辑于2022年,星期日155.2 散列(散列(Hash)函数)函数散列函数(又称杂凑函数)是对不定长的输入产生定长散列函数(又称杂凑函数)是对不定长的输入产生定长输出的一种特殊函数:输出的一种特殊函数:h=H(M)M:变长消息变长消息 h=H(M)是定长的散列值(或称消息摘要)是定长的散列值(或称消息摘要)H:散列函数,是公开的;:散列函数,是公开的;H(M)又称为:哈希函数、数字指纹(又称为:哈希函数、数字指纹(Digital fi
15、nger print)、压缩(压缩(Compression)函数、数据鉴别码函数、数据鉴别码(Dataauthentication code)等)等散列值在信源处被附加在消息上,接收方重新计算散列值散列值在信源处被附加在消息上,接收方重新计算散列值来确认消息未被篡改。由于函数本身公开,传送过程中需来确认消息未被篡改。由于函数本身公开,传送过程中需要对散列值加密保护(如果没有对散列值的保护,篡改者要对散列值加密保护(如果没有对散列值的保护,篡改者可以在修改消息的同时修改散列值,从而使散列值的认证可以在修改消息的同时修改散列值,从而使散列值的认证功能失效)。功能失效)。第16页,共55页,编辑于2
16、022年,星期日165.2.1 散列函数的性质散列函数的性质 散列函数的目的是为文件、消息或其他的分组数据产生散列函数的目的是为文件、消息或其他的分组数据产生“指指纹纹”。用于消息认证的散列函数。用于消息认证的散列函数H具有如下性质具有如下性质:(1)H能用于任何大小的数据分组,都能产生定长的输出。能用于任何大小的数据分组,都能产生定长的输出。(2)对于任何给定的)对于任何给定的x,H(x)要相对易于计算。要相对易于计算。(3)对任何给定的散列码)对任何给定的散列码h,寻找寻找x使得使得H(x)=h在计算上不在计算上不可行(单向性)。可行(单向性)。(4)对任何给定分组)对任何给定分组x,寻找
17、不等于,寻找不等于x的的y,使得,使得H(x)=H(y)在计算上不可行(弱抗冲突)。在计算上不可行(弱抗冲突)。(5)寻找任何的()寻找任何的(x,y),使得),使得H(x)=H(y)在计算上不可行在计算上不可行(强抗冲突)。(强抗冲突)。第17页,共55页,编辑于2022年,星期日17注意:前两个性质使得散列函数用于消息认证成为可能。注意:前两个性质使得散列函数用于消息认证成为可能。第二和第三个性质保证第二和第三个性质保证H的单向性,保证攻击者无法通过散的单向性,保证攻击者无法通过散列值恢复消息。列值恢复消息。第四个性质保证了攻击者无法在不修改散列值的情况下替换第四个性质保证了攻击者无法在不
18、修改散列值的情况下替换消息而不被察觉。消息而不被察觉。第五个性质比第四个更强。保证了一种被称为生日攻击的第五个性质比第四个更强。保证了一种被称为生日攻击的方法无法凑效。方法无法凑效。生日问题:一个教室中,最少应有多少学生,才使至少生日问题:一个教室中,最少应有多少学生,才使至少有两人具有相同生日的概率不小于有两人具有相同生日的概率不小于1/2?实际上只需实际上只需23人人,即任找即任找23人,从中总能选出两人具有相同人,从中总能选出两人具有相同生日的概率至少为生日的概率至少为1/2。第18页,共55页,编辑于2022年,星期日18通过以下方式使用散列函数常提供消息认证通过以下方式使用散列函数常
19、提供消息认证(1)使用对称加密算法对附加消息摘要的报文进行加密)使用对称加密算法对附加消息摘要的报文进行加密A B:EK(M|H(M)提供保密、认证提供保密、认证(2)使用对称加密方法对消息摘要加密)使用对称加密方法对消息摘要加密A B:M|EK(H(M)提供认证提供认证(3)使用发方的私钥对消息摘要进行加密)使用发方的私钥对消息摘要进行加密A B:M|EKRa(H(M)提供数字签名、认证提供数字签名、认证(4)在()在(3)的基础上,使用对称加密方法进行加密)的基础上,使用对称加密方法进行加密A B:EK(M|EKa(H(M)提供数字签名、认证和保密提供数字签名、认证和保密(5)假定双方共享
20、一个秘密值)假定双方共享一个秘密值S,与消息,与消息M串接,计算散列值串接,计算散列值A B:M|(H(M|S)提供认证提供认证(6)假定双方共享一个秘密值)假定双方共享一个秘密值S,使用散列函数,对称加密方法,使用散列函数,对称加密方法A B:EK(M|H(M|S)提供数字签名、认证和保密提供数字签名、认证和保密第19页,共55页,编辑于2022年,星期日19认证和保密认证认证和数字签名第20页,共55页,编辑于2022年,星期日20认证保密和数字签名认证S:双方共享的秘密值双方共享的秘密值认证保密和第21页,共55页,编辑于2022年,星期日21Hash vs MACMAC需要对全部数据进
21、行加密MAC速度慢Hash是一种直接产生认证码的方法第22页,共55页,编辑于2022年,星期日225.2.2 散列函数的结构散列函数的结构 为了对不定长的输入产生定长的输出,并且最后的结果要与为了对不定长的输入产生定长的输出,并且最后的结果要与所有的字节有关,大多数的散列函数的结构都采用了分块填所有的字节有关,大多数的散列函数的结构都采用了分块填充链接的模式,其结构是迭代型的。充链接的模式,其结构是迭代型的。以以MD4为例讲解散列函数的结构为例讲解散列函数的结构 MD4散列函数将输入数据分为散列函数将输入数据分为L个固定长度为个固定长度为b比特的分比特的分组。组。输入数据包括:消息、填充数据
22、和消息的长度值(消输入数据包括:消息、填充数据和消息的长度值(消息长度值用息长度值用64比特表示)。比特表示)。说明:说明:填充数据的目的是使输入数据为填充数据的目的是使输入数据为b比特的倍数;增加比特的倍数;增加消息长度值将增加攻击者攻击的难度。消息长度值将增加攻击者攻击的难度。散列函数的结构如图所示:散列函数的结构如图所示:第23页,共55页,编辑于2022年,星期日23fbnVi=CV0CV1fbnCV2fbn CVL-1CVLnnY0Y1YL-1迭代型散列函数的结构迭代型散列函数的结构MD4MD4算法如下:算法如下:CVCV0 0=V=Vi iCVCVi i=f(CV=f(CVi-1i
23、-1,Y,Yi-1i-1)h=H(M)=CVh=H(M)=CVL L=f(CV=f(CVL-1L-1,Y,YL-1L-1)V Vi i:初始链接变量初始链接变量CVCVi-1i-1:连接变量;连接变量;f f:压缩函数压缩函数(由若干轮处理组成由若干轮处理组成);通常通常bnbn第24页,共55页,编辑于2022年,星期日245.2.3 MD5算法算法Ron Rivest于于1990年提出了一个称为年提出了一个称为MD4的散列函数。他的的散列函数。他的设计没有基于任何假设和密码体制,不久,他的一些缺点也被设计没有基于任何假设和密码体制,不久,他的一些缺点也被提出。为了增强安全性和克服提出。为了
24、增强安全性和克服MD4的缺陷,的缺陷,Rivest于于1991年年对对MD4作了六点改进,并将改进后的算法称为作了六点改进,并将改进后的算法称为MD5.MD5算法:将明文按算法:将明文按512比特进行分组,即比特进行分组,即MD5中的中的b=512bit,经填充后信息长度为,经填充后信息长度为512的倍数(包括的倍数(包括64比特比特的消息长度)。的消息长度)。填充:首位为填充:首位为1,其余补,其余补0至满足要求,即填充后的比特数至满足要求,即填充后的比特数为为512的整数倍减去的整数倍减去64,或使得填充后的数据长度与,或使得填充后的数据长度与448模模512同余。同余。第25页,共55页
25、,编辑于2022年,星期日251000消息K比特比特Lx512比特1到512 比特的填充消息长度Y0512bitHMD5512128CVCV0 0=V=VI IY1512bitHMD5512128CVCV1 1Yq512bitHMD5512128CVCVq qYL-1512bitHMD5512128CVCVlL-1lL-1消息摘要128bitMD5的框图的框图第26页,共55页,编辑于2022年,星期日265.2.4 安全散列算法安全散列算法(SHA)举例:举例:MD5算法:已知消息为算法:已知消息为“河北工业大学河北工业大学分校电子分校电子Z08级的信息安全技术是一门专业基级的信息安全技术是
26、一门专业基础课,我们必须学好。础课,我们必须学好。”计算填充长度为多少计算填充长度为多少?(标点符号为全角)(?(标点符号为全角)(392)目前,目前,MD5MD5被认为是易受攻击的(很容易遭遇强碰被认为是易受攻击的(很容易遭遇强碰撞的生日攻击),因此,有必要用一个具有更长散撞的生日攻击),因此,有必要用一个具有更长散列码和更能抗击已知密码分析攻击的散列函数来代列码和更能抗击已知密码分析攻击的散列函数来代替现在流行的替现在流行的MD5MD5。现在已经有两个散列码长度为现在已经有两个散列码长度为160160比特的替代者比特的替代者SHA-1SHA-1和和RIPEMD-160RIPEMD-160。
27、我们了解我们了解SHA-1SHA-1即可。即可。第27页,共55页,编辑于2022年,星期日27第28页,共55页,编辑于2022年,星期日28安全散列算法安全散列算法SHA(Secure Hash Algorithm)是由美国国是由美国国家标准和技术协会提出的,并作为联邦信息处理标准家标准和技术协会提出的,并作为联邦信息处理标准在在1993年公布。年公布。1995年又发布了一个修订版,通常称为年又发布了一个修订版,通常称为SHA-1。SHA是基于是基于MD4算法的。算法的。MD5与与SHA-1对比对比 MD5 SHA-1消息长度消息长度 128bit 160bit分组长度分组长度 512bi
28、t 512bit步骤数步骤数 64 80消息最大长度消息最大长度 264-1速度速度 较快较快 慢慢第29页,共55页,编辑于2022年,星期日29Hash 函数函数MD5 :对输入消息(任意长)按照:对输入消息(任意长)按照 512位进行分组处理,输出位进行分组处理,输出128位消息摘要位消息摘要SHA-1:输入长度小于:输入长度小于264位消息,按位消息,按 512位进行分组处理,输出位进行分组处理,输出160位消息摘位消息摘要。要。RIPEMD-160:对输入消息(任意长):对输入消息(任意长)按照按照 512位进行分组处理,输出位进行分组处理,输出160位消位消息摘要息摘要第30页,共
29、55页,编辑于2022年,星期日305.3 数字签名体制数字签名体制数字签名是电子商务安全的一个非常重要的分支,在大数字签名是电子商务安全的一个非常重要的分支,在大型网络安全通信中的型网络安全通信中的密钥分配密钥分配、安全认证安全认证、防否认防否认等方等方面具有重要作用。面具有重要作用。1999年美国参议院已通过了立法,规定数字签名与手写签年美国参议院已通过了立法,规定数字签名与手写签名的文件、邮件在美国具有同等的法律效力。名的文件、邮件在美国具有同等的法律效力。前面我们讲述的消息认证是保护通信双方之间不受第三方的前面我们讲述的消息认证是保护通信双方之间不受第三方的攻击,但却无法防止通信双方中
30、一方对另一方的欺骗。如攻击,但却无法防止通信双方中一方对另一方的欺骗。如A伪伪造一个消息并使用与造一个消息并使用与B共享的密钥产生该消息的认证码,共享的密钥产生该消息的认证码,然后声称该消息来自于然后声称该消息来自于B,同样,同样,B也可以对自己给也可以对自己给A发送发送的消息予以否认。因此,除了认证之外还需要其他机制的消息予以否认。因此,除了认证之外还需要其他机制来防止通信双方的抵赖行为,最常见的是数字签名技术。来防止通信双方的抵赖行为,最常见的是数字签名技术。第31页,共55页,编辑于2022年,星期日315.3.1 数字签名原理数字签名原理传统的军事、政治、外交活动中的文件、命令和条约及
31、商传统的军事、政治、外交活动中的文件、命令和条约及商业中的契约等需要人手工完成签名或印章,以表示确认和业中的契约等需要人手工完成签名或印章,以表示确认和作为举证等。随着计算机通信网络的发展,人们更希望通作为举证等。随着计算机通信网络的发展,人们更希望通过电子设备实现快速、远距离交易,数字签名就由此应运过电子设备实现快速、远距离交易,数字签名就由此应运而生,并被用于商业通信系统。而生,并被用于商业通信系统。数字签名:在公钥体制下的签名,用户用自己的私钥对原数字签名:在公钥体制下的签名,用户用自己的私钥对原始数据的哈希摘要进行加密,然后信息接收者使用信息发始数据的哈希摘要进行加密,然后信息接收者使
32、用信息发送者的公钥对附在原始信息后的数字签名进行解密后获得送者的公钥对附在原始信息后的数字签名进行解密后获得哈希摘要,并通过与用自己收到的原始数据产生的哈希摘哈希摘要,并通过与用自己收到的原始数据产生的哈希摘要对照,便可确信原始信息是否被篡改,这样就保证了数要对照,便可确信原始信息是否被篡改,这样就保证了数据传输的不可否认性。据传输的不可否认性。第32页,共55页,编辑于2022年,星期日32案例案例 中国首例电子邮件案例中国首例电子邮件案例 1996年年7月月9日日,北京市海淀区法院审理国内第一起电子邮北京市海淀区法院审理国内第一起电子邮件侵权案。件侵权案。此案的原、被告均系北大心理学系此案
33、的原、被告均系北大心理学系93级女研究生。级女研究生。4月月9日。原告薛燕戈收到美国密执安大学教育学院通过互联网日。原告薛燕戈收到美国密执安大学教育学院通过互联网发给她的电子邮件。内容是该学院将给她提供发给她的电子邮件。内容是该学院将给她提供1.8万美元金万美元金额奖学金的就学机会,她非常高兴。因为这是唯一一所答额奖学金的就学机会,她非常高兴。因为这是唯一一所答应给她奖学金美国名牌大学。此后,她久等正式通知,但应给她奖学金美国名牌大学。此后,她久等正式通知,但杳无音训,蹊跷之中委托在美国的朋友去密执安大学查询。杳无音训,蹊跷之中委托在美国的朋友去密执安大学查询。4月月27日朋友告知,密执安大学
34、收到一封北京时间日朋友告知,密执安大学收到一封北京时间4月月12日日10时时16分发出的署名薛燕戈的电子邮件,表示拒绝该校的邀请。因此密执分发出的署名薛燕戈的电子邮件,表示拒绝该校的邀请。因此密执安大学以将原准备给薛的奖学金转给他人。安大学以将原准备给薛的奖学金转给他人。第33页,共55页,编辑于2022年,星期日33 法庭上,薛燕戈说法庭上,薛燕戈说,密执安大学发来的电子邮件,是她,密执安大学发来的电子邮件,是她和被告张男一起去北大心理学认知心理学实验室看到的,并和被告张男一起去北大心理学认知心理学实验室看到的,并且存放在张男的电子信箱里。薛燕戈认为,是张男在且存放在张男的电子信箱里。薛燕戈
35、认为,是张男在4月月12 日日10时时16分用薛的名义给密执安大学发了一封邮件,谎称分用薛的名义给密执安大学发了一封邮件,谎称薛已接受其他学校的邀请,故不能去该校学习。薛从北大计薛已接受其他学校的邀请,故不能去该校学习。薛从北大计算中心取得算中心取得4月月12日的电子邮件记录,与美国取证回来日的电子邮件记录,与美国取证回来的材料完全吻合。因此,薛提出诉讼请求:被告承认的材料完全吻合。因此,薛提出诉讼请求:被告承认并公开道歉,又被告承担原告的调查取证以及和美国并公开道歉,又被告承担原告的调查取证以及和美国学校交涉的费用、医疗费和营养费用、精神损失补偿学校交涉的费用、医疗费和营养费用、精神损失补偿
36、等人民币等人民币1.5万元。张男在法庭上称,事实上她从未以薛的万元。张男在法庭上称,事实上她从未以薛的名义给密执安大学发过电子邮件,对此事没有丝毫责任。名义给密执安大学发过电子邮件,对此事没有丝毫责任。第34页,共55页,编辑于2022年,星期日34 此案在开庭审理后,尽管到底谁借原告之名向密执安此案在开庭审理后,尽管到底谁借原告之名向密执安大学发出拒绝接受入学邀请的电子邮件,使原告丧失了大学发出拒绝接受入学邀请的电子邮件,使原告丧失了一次出国深造的机会,并没有得出确切结论。但是在休一次出国深造的机会,并没有得出确切结论。但是在休庭之后,被告终于向原告承认,该电子邮件时她所为,庭之后,被告终于
37、向原告承认,该电子邮件时她所为,并愿意就此向原告道歉并赔偿因其侵权行为给原告造成并愿意就此向原告道歉并赔偿因其侵权行为给原告造成的精神及财产损失。经过法院调解,原、被告双方当事的精神及财产损失。经过法院调解,原、被告双方当事人自愿达成协议:被告以书面形式向原告赔礼道歉,并人自愿达成协议:被告以书面形式向原告赔礼道歉,并赔偿原告精神损害、补偿经济损失共计赔偿原告精神损害、补偿经济损失共计1.2万元。万元。如果邮件的发送附加了可防伪如果邮件的发送附加了可防伪 和可追踪的数字签和可追踪的数字签名,也许本案就不会发生了。名,也许本案就不会发生了。第35页,共55页,编辑于2022年,星期日351.1.
38、数数字字签名的设计要签名的设计要求求依赖性:签名依赖性:签名必须必须是是依赖依赖于被签名信息的比特于被签名信息的比特模式(依赖性)模式(依赖性)唯一性:签名唯一性:签名必须必须使用使用某些某些对发送者是对发送者是唯唯一的一的信息,以防止双方的伪造信息,以防止双方的伪造与与否认否认可用性:必须可用性:必须相相对容对容易生易生成成该该数数字字签名,在存签名,在存储器中保存一个数储器中保存一个数字字签名签名副副本本是现是现实实可行的可行的可验证:必须可验证:必须相相对容对容易易识别和验证识别和验证该该数数字字签名,签名,抗伪造:伪造抗伪造:伪造该该数数字字签名在计签名在计算上算上具有不可行具有不可行
39、性,性,既既包括包括对一个对一个已已有的数有的数字字签名构造签名构造新新的消的消息,也息,也包括包括对一个给定消息伪造一个数对一个给定消息伪造一个数字字签名签名第36页,共55页,编辑于2022年,星期日362.数字签名与手写签名的区别数字签名与手写签名的区别签名:手签是被签文件的物理组成部分,而数签名:手签是被签文件的物理组成部分,而数字签名不是被签文件的物理组成部分,因而需字签名不是被签文件的物理组成部分,因而需要将签名连接到被签文件上。要将签名连接到被签文件上。验证:手写签名是通过将它与真实的签名进行验证:手写签名是通过将它与真实的签名进行比较来验证;而数字签名是利用已经公开的算比较来验
40、证;而数字签名是利用已经公开的算法来验证。法来验证。数字签名消息的复制品与其本身是一样的;而数字签名消息的复制品与其本身是一样的;而手写签名的复制品与原品是不同的。手写签名的复制品与原品是不同的。第37页,共55页,编辑于2022年,星期日373.数字签名应满足的基本条件数字签名应满足的基本条件签名者不能否认自己的签名签名者不能否认自己的签名接收者能够验证签名,而其他任何人都不接收者能够验证签名,而其他任何人都不能伪造签名能伪造签名当关于签名的真伪发生争执时,存在一个当关于签名的真伪发生争执时,存在一个仲裁机构或第三方能够解决争执仲裁机构或第三方能够解决争执第38页,共55页,编辑于2022年
41、,星期日384.数字签名的分类数字签名的分类按明文、密文对应关系划分:确定性数字签名(按明文、密文对应关系划分:确定性数字签名(RSA体制)体制)和非确定数字签名(和非确定数字签名(ElGamal体制)体制)按照签名方式:直接数字签名和需仲裁的数字签名按照签名方式:直接数字签名和需仲裁的数字签名按照签名内容的多少划分:对整个消息签名和对压缩消息的按照签名内容的多少划分:对整个消息签名和对压缩消息的签名签名安全性安全性:无条件安全的数字签名和计算上安全的数字签名无条件安全的数字签名和计算上安全的数字签名可签名次数可签名次数:一次性的数字签名和多次性的数字签名。一次性的数字签名和多次性的数字签名。
42、第39页,共55页,编辑于2022年,星期日39直接数字签名直接数字签名直接数字签名可通过四种方法实现直接数字签名可通过四种方法实现 直接数字签名仅涉及通信方。假设接收方知道发方的公直接数字签名仅涉及通信方。假设接收方知道发方的公钥。数字签名通过使用发方的私钥对整个消息进行加密钥。数字签名通过使用发方的私钥对整个消息进行加密或使用发方的私钥对消息的散列码(消息摘要)进行加或使用发方的私钥对消息的散列码(消息摘要)进行加密来产生。密来产生。(1)AB:EKRaM提供了认证与签名提供了认证与签名只有只有A A具有具有KRaKRa进行加密进行加密;传输中无法被篡改传输中无法被篡改需要某些格式信息需要
43、某些格式信息/冗余度冗余度任何第三方可以用任何第三方可以用KUa KUa 验证签名验证签名第40页,共55页,编辑于2022年,星期日40直接数字签名直接数字签名(2 2)A B:EKUb EKRa(M)提供了保密提供了保密(KUb)(KUb)、认证与签名、认证与签名(KRa)(KRa)(3)AB:M|E3)AB:M|EKRaKRaH(M)H(M)提供认证及数字签名提供认证及数字签名-H(M)-H(M)受到密码算法的保护受到密码算法的保护-只有只有A A 能够生成能够生成E EKRaKRaH(M)H(M)4)AB:E4)AB:EKM|EM|EKRaH(M)H(M)提供保密性、认证和数字签名提供
44、保密性、认证和数字签名第41页,共55页,编辑于2022年,星期日41直直接数接数字字签名的签名的缺缺点点验证模式验证模式依赖依赖于发送方的保密密钥于发送方的保密密钥 (1 1)发送方要)发送方要抵抵赖赖发送发送某某一消息时,可能一消息时,可能会声会声称其称其私私有有密钥密钥丢失丢失或被或被窃,窃,从而从而他他人伪造了人伪造了他他的签名。的签名。(2 2)通常)通常需需要要采采用用与与私私有密钥安全性有密钥安全性相关相关的行的行政管政管理控理控制制手手段段来来制制止或止或至少至少是是削削弱弱这种这种情况,情况,但威胁在但威胁在某某种程度种程度上依上依然存在。然存在。(3 3)改进的方式:)改进
45、的方式:例例如可以要如可以要求求被签名的信息被签名的信息包含包含一个一个时间戳(日期与时间),并要求将已暴露的密钥报告时间戳(日期与时间),并要求将已暴露的密钥报告给一个授权中心。给一个授权中心。X X的某些私有密钥确实在时间的某些私有密钥确实在时间T T被窃取,敌方可以伪造被窃取,敌方可以伪造X X的签的签名及早于或等于时间名及早于或等于时间T T的时间戳的时间戳第42页,共55页,编辑于2022年,星期日42仲裁仲裁数数字字签签名名引入仲裁者引入仲裁者 通常的做法是所有从发送方通常的做法是所有从发送方X X到接收方到接收方Y Y的签的签名消息首先送到仲裁者名消息首先送到仲裁者A A,A A
46、将消息及其签名将消息及其签名进行一系列测试,以检查其来源和内容,然后进行一系列测试,以检查其来源和内容,然后将消息加上日期并与已被仲裁者验证通过的指将消息加上日期并与已被仲裁者验证通过的指示一起发给示一起发给Y Y。仲裁者在这一类签名模式中扮演敏感和关键的仲裁者在这一类签名模式中扮演敏感和关键的角色角色 所有的参与者必须极大地相信这一仲裁机制所有的参与者必须极大地相信这一仲裁机制工作正常(工作正常(trusted systemtrusted system)第43页,共55页,编辑于2022年,星期日43仲裁仲裁数数字字签名技术签名技术(a)单密钥加密方式仲裁者可以看见消息X与与A之间之间共享共
47、享密钥密钥Kxa,Y与与A之间之间共享共享密钥密钥Kay;X:准准备备消息消息M,计计算算其散列码其散列码H(M),用用X的的标标识识符符IDx和散列和散列值值构成签名,构成签名,并并将消息将消息及及签名经签名经Kxa加密后发送给加密后发送给A;A:解密签名,用解密签名,用H(M)验证消息验证消息M,然后将然后将Idx,M,签名和时间签名和时间戳戳一一起起经经Kay加密后发送给加密后发送给Y;Y:解密解密A发来的信息,发来的信息,并并可将可将M和签名保存和签名保存起起来。来。第44页,共55页,编辑于2022年,星期日44解决解决纠纷:纠纷:Y Y:向向A A发送发送EKayIDx|M|EKx
48、aIDx|H(M)EKayIDx|M|EKxaIDx|H(M)A A:用用KayKay恢复恢复IDxIDx,M M 和签名(和签名(EKxaIDx|H(M)EKxaIDx|H(M)),然后),然后用用KxaKxa解密签名并验证散列码解密签名并验证散列码注意:注意:在这种模式下在这种模式下Y Y不能直接验证不能直接验证X X的签名,的签名,Y Y认为认为A A的的消息已认证,只因为它来自消息已认证,只因为它来自A A,因此双方都需要高度相,因此双方都需要高度相信信A A:X X必须信任必须信任A A没有暴露没有暴露Kxa Kxa 并且没有生成错误的签名,并且没有生成错误的签名,EKxaIDx|H
49、(M)EKxaIDx|H(M)Y Y必须信任必须信任A A仅当散列值正确并且签名确实是仅当散列值正确并且签名确实是X X产生的产生的情况下才发送的情况下才发送的EKayIDx|M|EKxaIDx|H(M)|TEKayIDx|M|EKxaIDx|H(M)|T双方都必须信任双方都必须信任A A处理争议是公正的。处理争议是公正的。第45页,共55页,编辑于2022年,星期日45解决解决纠纷:纠纷:只要只要A A遵循上述要求,则遵循上述要求,则X X相信没有人可以伪造相信没有人可以伪造其签名;其签名;Y Y相信相信X X不能否认其签名。不能否认其签名。上述情况还隐含着上述情况还隐含着A A可以看到可以
50、看到X X给给Y Y的所有信息,的所有信息,因而所有的窃听者也能看到。因而所有的窃听者也能看到。第46页,共55页,编辑于2022年,星期日46(b)(b)单密钥加密方式,仲裁者不可以看见消息单密钥加密方式,仲裁者不可以看见消息在这种情况下,在这种情况下,X X与与Y Y之间共享密钥之间共享密钥KxyKxy,X X:将标识符:将标识符IDx,IDx,密文密文EKxyM EKxyM,以及对,以及对IDxIDx和密文消和密文消息的散列码用息的散列码用KxaKxa加密后形成签名发送给加密后形成签名发送给A A。A A:解密签名用散列码验证消息,这时:解密签名用散列码验证消息,这时A A只能验证消息只