- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
信息安全技术-数字签名与密钥管理技术
2004年12月1日 Technology of Electronic Business Security 2004年12月1日 第三章 信息安全技术 本章学习内容: 加密技术 数字签名 密钥管理技术 验证技术 数字证书技术 3.3 数字签名技术 数字签名: 在数据电文中,以电子形式所含、所附或在逻辑上与数据电文有联系的数据,和与数据电文有关的任何方法,它可以用于数据电文有关的签字持有人和表明此人认可数据电文所含信息。(联合国国际贸易法委员会《电子商务示范法》) 目的: 身份鉴别:接收方通过发送方的数字签名能确认发送方的确切身份,但无法伪造。 完整性:信息内容无法篡改。 机密性:信息内容保密,第三方无法知道。 不可抵赖:发送方对已发送的信息无法否认。 3.3 数字签名技术(Cont.) 3.3 数字签名技术(Cont.) 数字签名特点(与书面签名比较) 由签名者随信息发出,与信息不可分离。 签名随信息内容改变而不同,可确认信息自发出至接收未做过任何修改。 不可假冒、不可篡改、不可抵赖。 电子签名相关法律仲裁的依据。 3.3 数字签名技术(Cont.) 数字签名类型 基于数学难题的签名类型 DSA数字签名:基于离散对数问题的签名。 RSA数字签名:基于质因数分解问题的签名。 基于签名用户的签名类型 单个用户的数字签名 多个用户的数字签名 基于数字签名所涉及角色的签名类型 直接数字签名(通信双方) 需仲裁的数字签名(通信双方+第三方/仲裁方) 3.3 数字签名技术(Cont.) 有限域上的离散对数问题 设F为有限域,g∈F是F的乘法群F*,并且对任意整数x,计算gx是容易的,但是已知g和y求x使y=gx,在计算上几乎是不可能的。 3.3 数字签名技术(Cont.) 其他签名类型 消息自动恢复的签名 无消息自动恢复的签名 3.3 数字签名技术(Cont.) 散列函数(摘要函数、哈希/Hash函数): 计算简单但很难逆运算的函数。 作用:对任意长度的消息内容,生成固定长度的消息摘要。 特点 任意长度的消息。 固定长度的消息摘要。 单向函数,不能根据摘要计算出原文信息。 不能对不同的信息生成相同的摘要。 3.3 数字签名技术(Cont.) 常用数字签名方法: RSA数字签名 简化RSA数字签名 签名与验证过程 发送方用私钥对消息加密,形成数字签名。 发送方将消息附上数字签名发送给接收方。 接收方用发送方的公钥对数字签名解密,得到消息明文。 接收方将解密得到的消息明文与接收到的消息对比,验证消息是否篡改。 3.3 数字签名技术(Cont.) 特点 防篡改,防假冒。验证性。 效率低。摘要长,摘要生成、解密、验证效率低,传输成本高。 3.3 数字签名技术(Cont.) 3.3 数字签名技术(Cont.) RSA+Hash函数数字签名 签名与验证过程 发送方对消息用Hash函数加密,形成固定长度的数字摘要。 发送方用自己的私钥对数字摘要加密,形成数字签名。 发送方将消息附上数字签名发送给接收方。 接收方用发送方的公钥对数字签名解密,得到数字摘要。 接收方对收到的消息用Hash函数加密,得到数字摘要,并将该摘要与解密得到的数字摘要对比,验证消息是否篡改。 3.3 数字签名技术(Cont.) Hash函数:累加消息的二进制码,取其中最后的若干位。对发送、接收双方公开。 3.3 数字签名技术(Cont.) 3.3 数字签名技术(Cont.) 数字签名算法DSA(Digital Signature Algorithm) 1991, 美国国家标准技术研究所NIST颁布数字签名标准DSS。1994,作为联邦信息处理标准FIPS-186发布。DSS利用安全散列函数算法(SHA)实现数字签名。 数字签名算法 参数说明 p: L bit的质数,L: 64的倍数, 取值范围512~1024。 q: p-1 因子, 160 bit。 g: g = j(p-1) mod p,1 j p-1整数, j(p-1)/q mod p 1。 x : 1 x q, x 为随机数,作为私钥。 y: y = gx mod p, (p, q, g, y)为公钥。 3.3 数字签名技术(Cont.) 签名 用SHA函数H(m)产生消息M的数字摘要h: h = H(M). 产生一个随机数 k,0 k q。 计算: r = (gk mod p) mod q s = (k-1(h+xr)) mod q. 其中,k –1是模数为q的k的反函数,(k –1 k)mod q = 1 用 r、s (各160 bit)构成数字签名。 3.3 数字签名技术(Cont.) 验证 检查: 0 r q,且 0 s q。 用SHA函数H(m)产生消息M 的
文档评论(0)