第五章公钥密钥课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第五章公钥密钥课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第五 章公钥 密钥 课件
- 资源描述:
-
1、1第五章 公钥密码技术2n一、公钥密码体制的提出n对称密钥密码体制存在的问题n密钥分配与管理问题密钥分配与管理问题n密钥空间大:传统密钥管理两个用户之间分别用一密钥空间大:传统密钥管理两个用户之间分别用一对密钥时,则对密钥时,则n个用户需要个用户需要C(n,2)=n(n-1)/2个密钥,个密钥,当用户量很大时,密钥空间急剧增大,如当用户量很大时,密钥空间急剧增大,如 n=100时,时,c(100,2)=4,950 n=1000时,时,c(1000,2)=499,500n密钥通过网络进行密钥分配时容易被截获或冒领。密钥通过网络进行密钥分配时容易被截获或冒领。n签名验证问题签名验证问题n传统加密算
2、法无法实现抗抵赖的需求传统加密算法无法实现抗抵赖的需求5.1概述34n一、公钥密码体制的提出n19761976年年,斯坦福大学的博士生斯坦福大学的博士生DiffieDiffie和其导和其导师师HellmanHellman在在密码学的新方向中首次提出了公钥密码的观点,标志密码学的新方向中首次提出了公钥密码的观点,标志着公钥密码学研究的开始着公钥密码学研究的开始。W.Diffie and M.E.Hellman,New direction in W.Diffie and M.E.Hellman,New direction in cryptography,IEEE Trans.on Informat
3、ion Theory,1976,cryptography,IEEE Trans.on Information Theory,1976,IT-22.(6),pp.644-654.IT-22.(6),pp.644-654.n19771977年由罗纳德年由罗纳德李维斯特李维斯特(Ron Rivest)(Ron Rivest)、阿迪、阿迪萨莫尔萨莫尔(Adi Shamir)(Adi Shamir)和伦纳德和伦纳德阿德曼阿德曼(Leonard Adleman)(Leonard Adleman)一起提一起提出了第一个比较完善的公钥密码算法,即出了第一个比较完善的公钥密码算法,即RSARSA算法,并且算法,
4、并且在在19781978年首次公布。年首次公布。n公钥密码体制的出现在密码学历史上是迄今为止最大的、公钥密码体制的出现在密码学历史上是迄今为止最大的、而且是惟一真正的革命。而且是惟一真正的革命。5.1概述5n二、公钥密码体制的原理n公钥密码体制也称非对称密码体制;公钥密码体制也称非对称密码体制;n公钥密码算法是基于数学函数(如单向陷门函数)而不是公钥密码算法是基于数学函数(如单向陷门函数)而不是基于代替和置换基于代替和置换n公钥密码算法要求每个参与方拥有一对相关的密钥公钥密码算法要求每个参与方拥有一对相关的密钥K K=(=(P PK K,S SK K):n一个公开,称为公开密钥一个公开,称为公
5、开密钥P PK K ,用于加密,用于加密 n另一个保密,称为私有密钥另一个保密,称为私有密钥S SK K ,用于解密,用于解密n在计算上由在计算上由P PK K推出推出S SK K是困难的是困难的.n加密和解密会使用两把不同的密钥,因此称为非对称加密和解密会使用两把不同的密钥,因此称为非对称5.1概述6n二、公钥密码体制的原理n公钥密码算法具有以下重要特性:公钥密码算法具有以下重要特性:n仅仅知道密码算法和加密密钥而要确定解密密钥,仅仅知道密码算法和加密密钥而要确定解密密钥,在计算上是不可能的;在计算上是不可能的;n两个相关密钥中任何一个都可以用作加密而让另两个相关密钥中任何一个都可以用作加密
6、而让另外一个用作解密。外一个用作解密。n公钥可以被任何人知道,用于加密消息以及验证公钥可以被任何人知道,用于加密消息以及验证签名;签名;n私钥仅仅自己知道的,用于解密消息和签名私钥仅仅自己知道的,用于解密消息和签名n例如,例如,RSARSA算法。算法。5.1概述7n二、公钥密码体制的原理5.1概述消息加密算法解密算法消息MMC攻击者接收方B发送方A密钥源SKBPKB图5-1 公钥密码体制的加解密原理图8n二、公钥密码体制的原理5.1概述消息加密算法解密算法消息MMC攻击者接收方B发送方A密钥源PKASKA图 公钥认证模型95.1概述消息加密算法解密算法消息MXC接收方B发送方A密钥源PKASK
7、A图图 公钥密码体制的保密和认证公钥密码体制的保密和认证加密算法X解密算法M密钥源SKBPKB接收方:接收方:C=EPKBESKAM发送方:发送方:C=EPKBESKAM1011n公开密钥加密既可以使用本方的私有密钥,也可以使用对方的公开密钥。n加密加密n使用对方使用对方B的公开密钥的公开密钥KUB进行加密可以实进行加密可以实现数据的加密。现数据的加密。n鉴别鉴别n而使用本方而使用本方A的私有密钥的私有密钥KRA进行加密实现进行加密实现鉴别。鉴别。n加密与鉴别加密与鉴别5.1概述12n公钥密码体制的特点n新用户的增加只需要产生一对公共新用户的增加只需要产生一对公共/私有密钥,私有密钥,密钥分配
8、过程简单。密钥分配过程简单。n只有在用户的私有密钥被破坏时,才需要进行只有在用户的私有密钥被破坏时,才需要进行密钥重建;密钥重建;n非对称密钥加密提供了认证功能。非对称密钥加密提供了认证功能。n加密和解密较常规密钥密码体制慢。加密和解密较常规密钥密码体制慢。5.1概述13常规加密与公钥密码的比较需要澄清的问题:需要澄清的问题:公开密钥加密方法要比传统的加密方法公开密钥加密方法要比传统的加密方法更加安全?更加安全?事实上,任何加密方案的安全程度都依赖于密钥的长度和事实上,任何加密方案的安全程度都依赖于密钥的长度和破译密码所需要的工作量。破译密码所需要的工作量。145.1概述n三、三、Diffie
9、-Hellman密钥交换算法密钥交换算法nDiffie-Hellman密钥交换是密钥交换是W.Diffie和和M.Hellman于于1976年提出的第一个公开密钥算法。年提出的第一个公开密钥算法。n该算法的安全性基于求离散对数的困难性。该算法的安全性基于求离散对数的困难性。n算法的惟一目的是使得两个用户能够安全地交换算法的惟一目的是使得两个用户能够安全地交换密钥,得到一个共享的会话密钥。密钥,得到一个共享的会话密钥。n算法本身不能用于加、解密。算法本身不能用于加、解密。155.1概述n三、Diffie-Hellman密钥交换算法16本原元并不唯一(本原元并不唯一(1919本原元还有本原元还有2
10、 2,3 3,1010,1313,1414,1515),不是所有的整数都有本原元。,不是所有的整数都有本原元。175.1概述n三、Diffie-Hellman密钥交换算法离散对数的离散对数的难解性:难解性:离散对数的离散对数的概念:概念:18三、Diffie-Hellman密钥交换算法19三、Diffie-Hellman密钥交换算法Diffie-Hellman密钥交换20三、Diffie-Hellman密钥交换算法21三、Diffie-Hellman密钥交换算法22三、Diffie-Hellman密钥交换算法23nRSA算法是罗纳德罗纳德李维斯特李维斯特(Ron Rivest)(Ron Riv
11、est)、阿、阿迪迪萨莫尔萨莫尔(Adi Shamir)(Adi Shamir)和伦纳德和伦纳德阿德曼阿德曼(Leonard Adleman)(Leonard Adleman)于1977年研制并于1978年首次发表的一种算法。n它是第一个既能用于数据加密,也能用于数字签名的公开密钥密码算法。5.2 RSA公钥密码24n依据的依据的原理是原理是:寻求两个大素数的乘积比寻求两个大素数的乘积比较简单,而将它们的乘积分解开较简单,而将它们的乘积分解开(因式分解因式分解)则极其困难。则极其困难。5.2 RSA公钥密码7310713911391可以分解成哪两个素数的积?25nRSA算法包括三个部分:n密钥
12、的产生密钥的产生n加密加密n解密解密算法描述26n密钥的产生n选择两个大素数选择两个大素数p,q(p,q保密);保密);n计算计算n=pq(n公开);公开);n计算计算(n)=(p-1)(q-1),(n)是是n的欧拉函数;的欧拉函数;n选择整数选择整数e,使得,使得gcd(n),e)=1,1 e(n)(e公开);公开);n计算计算d,使得,使得ed=1 mod(n),即,即d是是e在模在模(n)下的乘法逆元;下的乘法逆元;n公钥公钥KU=e,n,私钥,私钥KR=d,n或或d,p,q算法描述27n加密/解密n明文以分组为单位加密,每个分组是小于明文以分组为单位加密,每个分组是小于n的的二进制值二
13、进制值nM表示明文,表示明文,C表示密文表示密文n加密形式如下:加密形式如下:nC=Me mod n 用公钥用公钥e,nn解密形式如下:解密形式如下:nM=Cd mod n 用私钥用私钥d,n 算法描述28n例子:例子:n选择两个素数选择两个素数p=3,q=17;n计算计算n=pq=317=51;n计算计算(n)=(p-1)(q-1)=32;n选择选择e,使,使1 e (n)且与且与(n)互素,取互素,取e=13;n计算计算d,使得,使得ed=1 mod(n),即,即ed=k(n)+1,取,取k=2,则,则d=5。n最终,加密密钥为最终,加密密钥为13,51,解密密钥为,解密密钥为5,51。n
14、加密:令明文加密:令明文M=2,密文,密文C=Me mod n=213 mod 51=8192 mod 51=32n解密:解密:M=Cd mod n=325 mod 51=512 mod 51=2算法描述29算法描述n例子:设p=7,q=11,e=13,求n、(n)和d。n例子:设p=7,q=17,e=5,明文m=19求(n),d和密文C。30n使用RSA时的计算问题n加密与解密过程加密与解密过程nRSA密钥的产生密钥的产生 RSA算法中的计算问题31n加密与解密过程n加密与解密过程均涉及计算一个大整数的整数加密与解密过程均涉及计算一个大整数的整数次幂,然后取模。如果先对整数进行指数运算,次幂
展开阅读全文