数字签名
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章 数字签名
鲍勃拿到数字证书以后,就可以放心了。以后再给苏珊写 信,只要在签名的同时,再附上数字证书就行了。
苏珊收信后,用CA的公钥解开数字证书,就可以拿到鲍勃真实 的公钥了,然后就能证明“数字签名”是否真的是鲍勃签的。 最后苏珊用鲍勃的公钥解密数字签名来判断这封信是否被修改过
第三章 数字签名
第三章 数字签名
信息网络安全的威胁来自两个方面:一方 面是被动攻击,对手通过侦听和截取手段 获取数据;另一方面是主动攻击,对手通 过伪造、重放、篡改等手段改变数据或者 信息发送者抵赖自己所发送的信息。
第三章 数字签名
• 对于被动攻击,可采用信息加密技术;对 于主动攻击则采用数字签名技术。 • 数字签名技术是公开密钥技术和报文鉴别 技术的结合。与加密不同,数字签名是为 了保证信息的完整性和真实性。数字签名 必须保证以下三点
• 数字签名的应对网络环境中的主动攻击体现在: • 1 若信息在发送过程中被攻击者伪造、重放、篡 改,那么接收者对接收到的报文用报文摘要算法 计算所得结果和对接收到的摘要密文解密所得到 的结果相比较,如果发现两者的值不一样。接收 者就知道信息在发送过程中被修改,从而就拒绝 接收。 • 因为若接收到的明文被修改,用其计算得出的报 文摘要就和原来发送者发送的明文的报文摘要的 值不一样。
第三章 数字签名
• 报文摘要技术:将可变长度的报文M作为单向散 列函数(报文摘要算法)的输入,然后得出一个 固定长度的标志H(M),这个H(M)就是报文摘要 (Message Digest,MD)。单向散列函数(报文摘 要算法)的特点是: • 1 从一个报文生成一个报文摘要是容易的,但是 从一个报文摘要生成一个报文是不可能的。即任 给一个报文摘要x,要想找到一个报文 y,使得 H(y)是不可行的。 • 2 若想找到任意两个报文x,y 使得H(x)=H(y)是不 可能的。
第三章 数字签名
• 2 数字签名中,信息发送者用其私钥对报文 摘要进行加密,而接收者用发送者的公钥 对摘要密文进行解密。若接收者能用发送 者的公钥解密,那么就证明信息是相应的 发送者发送的。如发送者A用自己的密钥加 密所发信息的报文摘要,生成摘要密文, 接收者B如果能用A的公钥解密摘要密文, 则证明信息是A发送的,若不能,则证明信 息不是A发送的。
第三章 数字签名
• 在金融和商业等系统中,许多业务都要求 在单据上进行签名或加盖印章,证实其真 实性,以备日后检查,可是在利用计算机 网络来传送报文时,显然不能用手签的方 法,在计算机中我们可以采用数字签名的 方法,利用公开密钥来实现数字签名,从 而代替传统的签名
第三章 数字签名
鲍勃有两把钥匙,一把是公钥,另一把是私钥。
第三章 数字签名
• 每个用户都有自己的公钥和私钥,私钥自 己保留,不对外公开,用于加密报文摘要。 公钥对外公开,能被与其通讯的用户得到。 前面讲到的用户A用自己私钥加密报文摘要, 而得到摘要密文,摘要密文就是A的签名, 因为这个摘要密文只能用A的公钥才能解密, 就表示了信息是A发送的。A不能抵赖自己 所发的信息。
后来,苏珊感觉不对劲,发现自己无法确定公钥是否真的属于 鲍勃。她想到了一个办法,要求鲍勃去找"证书中心" (certificate authority,简称CA),为公钥做认证。证书中心用 自己的私钥,对鲍勃的公钥和一些相关信息一起加密,生成"数 字证书"(Digital Certificate)。
第三章 数字签名
• 。
鲍勃把公钥送给他的朋友们----帕蒂、道格、苏珊---每人一把。
第三章 数字签名
苏珊要给鲍勃写一封保密的信。她写完后用鲍勃的公 钥加密,就可以达到保密的效果。
第三章 数字签名
鲍勃收信后,用私钥解密,就看到了信件内容。这里要强调的是, 只要鲍勃的私钥不泄露,这封信就是安全的,即使落在别人手里, 也无法解密。
第三章 数字签名
• 我们将许多流行的报文摘要算法通称为 MDn,其中n为不同的值。当前使用最为广 泛的报文摘要算法是MD5. MD5算法可以对 任意长的报文进行计算,然后得出128位的 MD代码。MD5算法生成报文鉴别码的过程 与DES加密过程十分类似,不同的是, DES加密算法可以通过反向计算来解密, 而MD5算法不能进行反运算而得出原报文。
• 采用数字证书后,公钥和个人信息捆绑在 一起形成数字证书,就不可能用自己的公 钥冒充别人的公钥。假如到格用自己的公 钥和鲍拨的个人信息伪造一个鲍拨的数字 证书,因鲍拨之前就已经用自己的真实信 息做了数字证书,,CA认证中心会拒绝道 格做此数字证书。
发送者A
发送者B
报文 M 报文摘要算法
H(M) E
摘要密文 E(H(M))
E(H(M)) D
H(M)
报文M+摘要 密文E(H(M))
报文摘要算法 生成报文摘要 用密钥加密 报文摘要
报文 M
用密钥进行 解密
判断 H(M)与 H(M′)是否相等
报文摘要算法
H(M′)
报文摘要算法 生成报文摘要
第三章 数字签名
第三章 数字签名
• (1)接收者能够核实发送者对报文的签名; • (2)发送者事后不能抵赖对其报文的签名; • (3)接收者无法伪造对报文的签名。
第三章 数字签名
第三章 数字签名
• 为理解数字签名的流程,我们首先要学习 报名摘要技术。 • 报文:报文(message)是网络中交换与传输 的数据单元,即站点一次性要发送的数据 块。报文包含了将要发送的完整的数据信 息,其长短很不一致,长度不限且可变 。 • 在这里我们只要把报文理解为信息即可。
第三章 数字签名
鲍勃给苏珊回信,决定采用“数字签名”。他写完后先用报文摘 要算法,生成信件的摘要
第三章 数字签名
然后,鲍勃使用私钥,对这个摘要加密,生成"数字 签名"。
第三章 数字签名
鲍勃将这个签名,附在信件下面,一起发给苏珊。
第三章 数字签名
ห้องสมุดไป่ตู้
苏珊收信后,取下数字签名,用鲍勃的公钥解密,得到信 件的摘要。由此证明,这封信确实是鲍勃发出的。
第三章 数字签名
苏珊再对信件本身使用报文摘要算法,将得到的结果,与上一步得 到的摘要进行对比。如果两者一致,就证明这封信未被修改过。
复杂的情况出现了。道格想欺骗苏珊,他偷偷使用了苏珊的电 脑,用自己的公钥换走了鲍勃的公钥。此时,苏珊实际拥有的 是道格的公钥,但是还以为这是鲍勃的公钥。因此,道格就可 以冒充鲍勃,用自己的私钥做成"数字签名",写信给苏珊,让 苏珊用假的鲍勃公钥进行解密。