第三章 信息加密与 PKI
第 3章 信息加密与 PKI
内容提要:
信息加密与 PKI概述
加密技术原理
信息加密技术应用
认证技术
公开密钥基础设施 ( PKI)
本章小结第三章 信息加密与 PKI
信息加密与 PKI概述加密技术是保障信息安全的基石,它以很小的代价,对信息提供一种强有力的安全保护 。
近年来密码学得到了前所未有的重视并迅速普及,
同时其应用领域也广为拓展,不仅服务于信息的加密和解密,还是身份认证,访问控制,数字签名等多种安全机制的基础 。 理论上,信息加密技术是利用密码学的原理与方法对传输数据提供保护的手段,它以数学计算为基础,信息论和复杂性理论是其两个重要组成部分 。
返回本章首页第三章 信息加密与 PKI
返回本章首页其中,信息论主要包括 Shannon关于保密系统的信息理论和 Simmoms关于认证系统的信息理论 。 密码学复杂性理论主要讨论算法复杂性和问题复杂性两个方面的内容 。 在构成上,密码技术主要由密码编码技术和密码分析技术两个既相互对立又相互依存的分支组成,密码编码技术主要解决产生安全有效的密码算法问题,实现对信息的加密或认证,密码分析技术主要解决破译密码或伪造认证码问题,从而窃取保密信息或进行破坏活动 。
第三章 信息加密与 PKI
返回本章首页
PKI是一个用公钥密码算法原理和技术来提供安全服务的通用性基础平台,用户可利用
PKI平台提供的安全服务进行安全通信 。 PKI采用标准的密钥管理规则,能够为所有应用透明地提供采用加密和数字签名等密码服务所需要的密钥和证书管理 。
第三章 信息加密与 PKI
3.1 加密技术原理相关的基本概念加密技术的基本思想就是伪装信息,使非法接入者无法理解信息的真正含义 。 称伪装前的原始信息为明文 ( Plaintext),经伪装的信息为密文 ( Ciphertext),伪装的过程为加密
( Encryption) 。 加密在加密密钥 ( Key) 的控制下进行,用于对信息进行加密的一组数学变换称为加密算法 ( Encryption Algorithm) 。 与加密相逆的变换操作就是解密 ( Decryption) 。
返回本章首页第三章 信息加密与 PKI
传统密码体制所用的加密密钥和解密密钥相同,或实质上等同,从一个可以推出另外一个,
我们称其为单钥或对称密码体制 ( One-Key or
Symmetric Cryptosystem) 。 若加密密钥和解密密钥不相同,从一个难以推出另一个,则称为双钥或非对称密码体制 ( Two-Key or Asymmetric
Cryptosystem),这是 1976年由 Diffie和 Hellman
等学者所开创的新密码体制 。
返回本章首页第三章 信息加密与 PKI
密 钥 源密 钥 源加 密 器非 法 接 入 者信 源
M
密 码 分 析 员
( 窃 听 者 )
收 信 端解 密 器
1K 2K
m m?m2k1k
信 道搭 线 信 道
( 主 动 攻 击 )
搭 线 信 道
( 被 动 攻 击 )
图 3 - 1 保 密 系 统 模 型
)(2 mDm k? )(1 mEc k?
cc
图 3-1是保密系统模型的示意图,它由明文消息空间、密文消息空间、密钥空间组成。
返回本章首页第三章 信息加密与 PKI
为了保护信息的机密性,抗击密码分析行为,保密系统需满足下列要求:
( 1) 系统即使在理论上不是可靠的,也应当是实际上不可攻破的 。 也就是说,从截取的密文或某些已知明文密文对,要决定密钥或任意明文在计算上是不可实现的 。 ( 2) 系统的保密性不依赖于对加密体制或算法的保密,而依赖于密钥 。 这就是著名的 Kerckhoff原则 。 ( 3) 加密和解密算法适用于所有密钥空间中的元素 。 ( 4)
系统便于实现和使用方便 。
返回本章首页第三章 信息加密与 PKI
认证理论和技术是近 20年来随着计算机通信的普遍应用而迅速发展起来的,它已成为密码学研究的重要领域 。
一般地,安全的认证系统应满足下列条件:
( 1) 意定的接收者能够检验和证实消息的合法性和真实性 。 ( 2) 消息的发送者对所发送的消息不能抵赖 。 ( 3) 除了合法消息发送者外,其他人无法伪造出合法的消息 。 即使在已知合法密文和相应消息的情况下,要确定加密密钥或系统地伪装合法密文在计算上也是不可行的 。 ( 4) 必要时可由第三者作出仲裁 。 返回本章首页第三章 信息加密与 PKI
3.1.1 常用加密体制及算法密码体制从原理上可分为两大类,即单钥体制 ( One-Key System) 和双钥体制 ( Two-Key
System) 。
单钥体制不仅可用于数据加密,也可用于消息的认证,因其加密密钥和解密密钥相同,故也称私钥密码体制,最有影响的单钥密码是 1977年美国国家标准局颁布的 DES算法 。 单钥系统对数据进行加解密的过程如图 3-2所示,其中系统的保密性主要取决于密钥的安全性 。
返回本章首页第三章 信息加密与 PKI
加 密 器密 钥 产 生 器解 密 器
kE kDkk
密 钥 信 道密 文图 3 - 2 单 钥 密 钥 体 制明 文 解 密 后 明 文如何将密钥安全可靠地分配给通信对方,包括密钥产生、分配、存储、销毁等多方面的问题统称为密钥管理( Key Management),这是影响系统安全的关键因素。
返回本章首页第三章 信息加密与 PKI
古典密码作为密码学的渊源,其多种方法充分体现了单钥加密的思想,典型方法如代码加密,
代替加密,变位加密,一次性密码薄加密等 。
单钥密码体制的优点是安全性高且加解密速度快,其缺点是进行保密通信之前,双方必须通过安全信道传送所用密钥,这对于相距较远的用户可能要付出较大的代价,甚至难以实现 。
对于单钥体制存在的问题,采用双钥体制则可以完全克服,特别是多用户通信网,双钥体制可以明显减少多用户之间所需的密钥量,从而便于密钥管理 。 返回本章首页第三章 信息加密与 PKI
双钥体制是由 Diffie和 Hellman于 1976年提出的,双钥密码体制的主要特点是将加密和解密能力分开,它既可用于实现公共通信网的保密通信,
也可用于认证系统中对消息进行数字签名。为了同时实现保密性和对消息进行确认,在明文消息空间和密文消息空间等价,且加密、解密运算次序可换情况下,可采用双钥密码体制实现双重加、
解密功能,如图 3-3所示。m 2kAD 公 开图 3 - 3 双 钥 保 密 和 认 证 体 制用 户 A
保 密用 户 Bm
1kBE 1kAE2kBD 公 开保 密保 密认 证返回本章首页第三章 信息加密与 PKI
双钥密码体制的优点是可以公开加密密钥,
适应网络的开放性要求,且仅需保密解密密钥,
所以密钥管理问题比较简单 。 此外,双钥密码可以用于数字签名等新功能 。 最有名的双钥密码体系是 1977年由 Rivest,Shamir和 Adleman人提出的 RSA密码体制 。 双钥密码的缺点是双钥密码算法一般比较复杂,加解密速度慢 。
实际应用时多采用双钥和单钥密码相结合的混合加密体制,即加解密时采用单钥密码,密钥传送则采用双钥密码 。 这样既解决了密钥管理的困难,又解决了加解密速度的问题 。 返回本章首页第三章 信息加密与 PKI
前面已述及保密系统以及密码体制的基本知识,我们将在本章随后讨论各种密码体制涉及的常用加密算法及其应用问题 。
加密算法就其发展而言,共经历了古典密码,
对称密钥密码 ( 单钥密码体制 ),公开密钥密码
( 双钥密码体制 ) 三个发展阶段 。
返回本章首页第三章 信息加密与 PKI
3.1.2 古典密码算法密码体制从原理上可分为两大类,即单钥体制 ( One-Key System) 和双钥体制 ( Two-Key
System) 。
单钥体制不仅可用于数据加密,也可用于消息的认证,因其加密密钥和解密密钥相同,故也称私钥密码体制,最有影响的单钥密码是 1977年美国国家标准局颁布的 DES算法 。 单钥系统对数据进行加解密的过程如图 3-2所示,其中系统的保密性主要取决于密钥的安全性 。
返回本章首页第三章 信息加密与 PKI
古典密码大都比较简单,可用手工或机械操作实现加解密,虽然现在很少采用,但研究这些密码算法的原理,对于理解,构造和分析现代密码是十分有益的 。 古典密码算法主要有代码加密,
代替加密,变位加密,一次性密码薄加密等几种算法 。
下面,我们讨论代替加密的几种算法实现 。
返回本章首页第三章 信息加密与 PKI
1,简单代替密码或单字母密码简单代替密码就是将明文字母表 M中的每个字母用密文字母表 C中的相应字母来代替 。
这一类密码包括移位密码,替换密码,仿射密码,乘数密码,多项式代替密码,密钥短语密码等 。
返回本章首页第三章 信息加密与 PKI
2,多名或同音代替该方法与简单代替密码类似,只是映射是一对多关系的,每个明文字母可以加密成多个密文字母 。
3,多表代替由于单字母出现频率分布与密文中相同,因此多表代替密码使用从明文字母到密文字母的多个映射来隐藏单字母出现的频率分布,每个映射是简单代替密码中的一对一映射 。 维吉尼亚
( Vigenere) 密码和博福特 ( Beaufort) 密码是多表代替密码的例子 。 返回本章首页第三章 信息加密与 PKI
4,多字母或多码代替不同于前面介绍的代替密码都是每次加密一个明文字母,多字母代替密码将明文字符划分为长度相同的消息单元,称为明文组,对字符块成组进行代替,这样一来使密码分析更加困难 。
多字母代替的优点是容易将字母的自然频度隐蔽或均匀化,从而有利于抗击统计分析 。
Playfair密码,Hill密码都是这一类型的密码 。
返回本章首页第三章 信息加密与 PKI
3.1.3 单钥加密算法单钥密钥体制的加密密钥与解密密钥相同或等价,其加密模式主要有序列密码 ( 也称流密码 )
和分组密码两种方式 。
流密码 ( Stream Cipher) 是将明文划分成字符 ( 如单个字母 ),或其编码的基本单元 ( 如
0,1数字 ),字符分别与密钥流作用进行加密,
解密时以同步产生的同样的密钥流解密 。 根据密钥流是否依赖于明文流,可将流密码分为同步流密码和自同步流密码,目前,同步流密码较为多见 。 在流密码研究方面,我国处于国际领先地位 。返回本章首页第三章 信息加密与 PKI
分组密码 ( Block Cipher) 是将明文消息编码表示后的数字序列 x1,x2,…,xi,…,划分为长为
m的组 χ =(x0,x1,…,xm-1),各组 ( 长为 m的矢量 )
分别在密钥 k=(k0,k1,…,kl-1)控制下变换成等长的输出数字序列 y=(y0,y1,…,yn-1)( 长为 n的矢量 ),其加密函数 E,Vn× K→ Vn,Vn是 n维矢量空间,K为密钥空间,如图 3-4所示 。
加 密 算 法
0 1 1(,,,)lk k kk
图 3 - 4 分 组 密 码 原 理 框 图密 钥密 文
0 1 1(,,,)lk k kk密 钥解 密 算 法
0 1 1(,,,)ny y yy0 1 1(,,,)mx x xx明 文 0 1 1(,,,)mx x xx明 文返回本章首页第三章 信息加密与 PKI
围绕单钥密钥体制,密码学工作者已经开发了众多行之有效的单钥加密算法,并且对基于这些算法的软硬件实现进行了大量的工作 。 下面我们将介绍其中的典型代表算法 DES和 IDEA。
返回本章首页第三章 信息加密与 PKI
1,数据加密标准 DES
DES即数据加密标准 ( Data Encryption
Standard),它于 1977年由美国国家标准局公布,
是 IBM公司研制的一种对二元数据进行加密的分组密码,数据分组长度为 64bit( 8byte),密文分组长度也是 64bit,没有数据扩展 。 密钥长度为 64bit,其中有效密钥长度 56bit,其余 8bit为奇偶校验 。 DES的整个体制是公开的,系统的安全性主要依赖密钥的保密,其算法主要由初始置换
IP,16轮迭代的乘积变换,逆初始置换 以及 16
个子密钥产生器构成,见图 3-5所示 。 返回本章首页第三章 信息加密与 PKI
图 3 - 5 D E S 算 法 框 图输 入
6 4 b i t 明 文 数 据乘 积 变 换
( 在 密 钥 控 制下 1 6 次 迭 代 )
初 始 置 换 I P
逆 初 始 置 换 I P
- 1
6 4 b i t 密 文 数 据标准数据加密算法返回本章首页第三章 信息加密与 PKI
2,国际数据加密算法 IDEA
IDEA 是 International Data Encryption
Algorithm的缩写,即国际数据加密算法 。 它是根据中国学者朱学嘉博士与著名密码学家 James
Massey于 1990年联合提出的建议标准算法 PES
( Proposed Encryption Standard) 改进而来的 。
它的明文与密文块都是 64bit,密钥长度为 128bit,
作为单钥体制的密码,其加密与解密过程雷同,
只是密钥存在差异,IDEA无论是采用软件还是硬件实现都比较容易,而且加解密的速度很快 。
IDEA算法的加密过程如图 3-10所示 。 返回本章首页第三章 信息加密与 PKI
图 3 - 1 0 I D E A 加 密 算 法 原 理 框 图
( 1 )
1Z
1X (1)2Z
( 9 )
1Z
( 9 )
2Z
2X 3X (1)4Z 4X
(1)
3Z
( 9 )
4Z
( 9 )
3Z
(1)
5Z
(1)
6Z
表 示 1 6 b i t 子 块 间 诸 位 做 异 或 运 算表 示 1 6 b i t 的 整 数 做 的 加 法 运 算表 示 1 6 b i t 的 整 数 做 的 乘 法 运 算
16m od( 2 1 )?
16m od 2
返回本章首页第三章 信息加密与 PKI
3,单钥算法性能分析其他一些有意义的单钥密码体制算法有
SAFER K-64( Secure And Fast Encryption
Routine),GOST,RC-4,RC-5,Blowfish、
CAST-128等 。
为了提高单钥密码的安全性,人们还将分组密码算法通过组合以得到新的分组密码算法,但其安全性必须经仔细检验后才能付诸实用,如二重 DES加密,三重 DES加密等 。 由于各种加密算法的具体实现互不相同,因此其性能也存在较大差异,具体详见教材中表 3-1的比较 。 返回本章首页第三章 信息加密与 PKI
3.1.4 双钥加密算法这些体制的加解密密钥不同,一个是可公开的公钥,另一个则是需要保密的私钥 。 双钥密码体制的特点是加密和解密能力是分开的 。
双钥密码体制大大简化了复杂的密钥分配管理问题,但公钥算法要比私钥算法慢得多 ( 约
1000倍 ) 。 在实际通信中,双钥密码体制主要用于认证 ( 比如数字签名,身份识别等 ) 和密钥管理等,而消息加密仍利用私钥密码体制 。
下面介绍双钥密码体制的杰出代表 RSA加密算法 。 返回本章首页第三章 信息加密与 PKI
1,RSA算法
RSA体制是由 R.L,Rivest,A,Shamir和 L.
Adleman设计的用数论构造双钥的方法,它既可用于加密,也可用于数字签名 。 国际标准化组织
ISO,ITU以及 SWIFT等均已接受 RSA体制作为标准 。 在 Internet中所采用的 PGP( Pretty Good
Privacy) 也将 RSA作为传送会话密钥和数字签名的标准算法 。
RSA算法的安全性建立在数论中,大数分解和素数检测,的理论基础上 。 返回本章首页第三章 信息加密与 PKI
RSA算法表述:
假定用户 A欲送消息给用户 B,则 RSA算法的加 /解密过程为:
① 首先用户 B产生两个大素数 p和 q( p,q是保密的 ) 。
② B计算 和 ( 是保密的 ) 。
③ B选择一个随机数 e( ),使得
,即 e和 φ互素 。
pqn? )1)(1()( qpn? )(n?
)(0 ne
1))(,(?ne?
返回本章首页第三章 信息加密与 PKI
④ B通过计算得出 d,使得 ( 即在与 n互素的数中选取与 互素的数,可以通过 Eucliden
算法得出 。 d是 B自留且保密的,用作解密密钥 ) 。
⑤ B将 n及 e作为公钥公开 。
⑥ 用户 A通过公开渠道查到 n和 e。
⑦ 对 m施行加密变换,即 。
⑧ 用户 B收到密文 c后,施行解密变换:
。
1)(m od?nde?
)(n?
cnmmE eB m o d)(
nmnmnnmnccD eddedB m o dm o dm o d)m o d(m o d)(
返回本章首页第三章 信息加密与 PKI
2,ElGamal算法
RSA算法是基于素数因子分解的双钥密码,
而 ElGamal算法则是基于离散对数问题的另一种类型的双钥密钥,它既可用于加密,也可用于签名 。 ElGamal的算法方案如下:
令 zp是 一个有 p个元素的有限域,p是素数,
令 g是 zp*( zp中除去 0元素 ) 中的一个本原元或其生成元 。 明文集 m为 zp*,密文集 e为 。
公钥为:选定 p( g<p的生成元 ),计算公钥;私钥为,。
** pp zz?
pg a m o d p
返回本章首页第三章 信息加密与 PKI
3,双钥算法性能分析双钥密钥体制因其密钥管理和分配较为简单,
尤其可方便地用于数字签名和认证,但其算法都较为复杂,运算量十分浩大,但其仍不失为一种非常有前途的加密体制,它的出现是密码学发展史上的划时代事件 。 此外,还有一些有意义的双钥算法,如 LUC密码,Rabin密码,以及 DSA密码等 。
双钥密码体制主要算法在总体实现,速度,
安全性能和改进措施等几个方面的比较详见教材表 3-2。 返回本章首页第三章 信息加密与 PKI
3.2 信息加密技术应用在网络安全领域,网络数据加密是解决通信网中信息安全的有效方法 。 有关密码算法已在本章前面内容中加以介绍,这里主要讨论通信网中对数据进行加密的方式 。
网络数据加密常见的方式有链路加密,节点加密和端到端加密 。
返回本章首页第三章 信息加密与 PKI
3.2.1 链路加密链路加密 ( 又称在线加密 ) 是对网络中两个相邻节点之间传输的数据进行加密保护,如图 3-
11所示 。 所有消息在被传输之前进行加密,每一个节点对接收到的消息解密后,再使用下一个链路的密钥对消息进行加密,然后才进行传输 。 到达目的地之前,消息可能经多条通信链路的传输 。
图 3 - 1 1 链 路 加 密
X
E
1
结 点 0
结 点 1
结 点 n
E
2
D
1
X
链 路 1
链 路 n
)(1 XE )(2 XE )(3 XE )( XE n结 点 2
E
3
D
2
X
链 路 2
D
n
X
.,,
返回本章首页第三章 信息加密与 PKI
3.2.2 节点加密节点加密是指在信息传输路过的节点处进行解密和加密 。 尽管节点加密能给网络数据提供较高的安全性,但它在操作方式上与链路加密是类似的:两者均在通信链路上为传输的消息提供安全性,都在中间节点先对消息进行解密,然后进行加密 。 因要对所有传输的数据进行加密,故加密过程对用户是透明的 。 与链路加密不同的是,
节点加密不允许消息在网络节点以明文形式存在,
它先把收到的消息进行解密,然后采用另一个不同的密钥进行加密,这一过程在节点上的一个安全模块中进行 。 返回本章首页第三章 信息加密与 PKI
3.2.3 端到端加密端到端加密 ( 又称脱线加密或包加密 ) 是指对一对用户之间的数据连续地提供保护,如图
3-12所示 。 它允许数据在从源点到终点的传输过程中始终以密文形式存在 。 消息在到达终点之前不进行解密,因为消息在整个传输过程中均受到保护,所以即使有节点被损坏也不会使消息泄露 。
图 3-12 端 到 端 加 密
X
E
k
结 点 0
结 点 1
结 点 n
链 路 1
链 路 n
)( XE k )( XE k结 点 2
链 路 2
D
k
X
...,..
)( XE k
返回本章首页第三章 信息加密与 PKI
加密技术在其他领域也经常发挥作用,如电子商务 和 VPN。
电子商务 ( E-business) 要求顾客可以在网上进行各种商务活动,不必担心自己的信用卡会被人盗用,因 RSA加密技术来提高信用卡交易的安全性 。
虚拟专用网 ( Virtual Private Network,
VPN) 通过 使用加密技术可将跨国公司分布在多个国家的办事机构或销售中心安全地连接起来 。
返回本章首页第三章 信息加密与 PKI
3.3 认证技术数据加密是密码技术应用的重要领域,在认证技术中,密码技术也同样发挥出色,但应用目的不同 。 加密是为了隐蔽消息的内容,而认证的目的有三个:一是消息完整性认证,即验证信息在传送或存储过程中是否被篡改;二是身份认证,
即验证消息的收发者是否持有正确的身份认证符,
如口令,密钥等;三是消息的序号和操作时间
( 时间性 ) 等的认证,其目的是防止消息重放或延迟等攻击 。 认证技术是防止不法分子对信息系统进行主动攻击的一种重要技术 。 返回本章首页第三章 信息加密与 PKI
3.3.1 认证技术的分层模型如教材图 3-13所示,认证技术分为三层:安全管理协议,认证体制和密码体制 。 安全管理协议是在安全体制的支持下,建立,强化和实施整个网络系统的安全策略;认证体制在安全管理协议的控制和密码体制的支持下,完成各种认证功能;密码体制是认证技术的基础,它为认证体制提供数学方法支持 。
返回本章首页第三章 信息加密与 PKI
3.3.2 认证体制的要求与模型一个安全的认证体制应该至少满足以下要求:
( 1) 意定的接收者能够检验和证实消息的合法性,真实性和完整性 。
( 2) 消息的发送者对所发的消息不能抵赖,
有时也要求消息的接收者不能否认收到的消息 。
( 3) 除了合法的消息发送者外,其他人不能伪造发送消息 。
返回本章首页第三章 信息加密与 PKI
认证体制的基本模型 ( 又称纯认证系统模型 )
如图 3-14所示 。
返回本章首页第三章 信息加密与 PKI
3.3.3 数字签名技术数字签名技术是一种实现消息完整性认证和身份认证的重要技术 。
一个数字签名方案有安全参数,消息空间,
签名,密钥生成算法,签名算法,验证算法等成分构成 。 从接收者验证签名的方式可将数字签名分为真数字签名和公证数字签名两类 。
真数字签名如图 3-15所示,公证数字签名如图 3-16所示 。
返回本章首页第三章 信息加密与 PKI
返回本章首页第三章 信息加密与 PKI
3.3.4 身份认证技术身份认证的目的是验证信息收发方是否持有合法的身份认证符 ( 口令,密钥和实物证件等 ) 。
从认证机制上讲,身份认证技术可分为两类:一类是专门进行身份认证的直接身份认证技术,另一类是在消息签名和加密认证过程中,通过检验收发方是否持有合法的密钥进行的认证,称为间接身份认证技术 。
下面介绍一些常用的身份认证技术 。
返回本章首页第三章 信息加密与 PKI
1,身份认证方式身份认证常用的方式主要有两种,通行字
( 口令 ) 方式和持证方式 。 通行字方式是使用最广泛的一种身份认证方式 。 通行字一般为数字,
字母,特殊字符等组成长的为 5~ 8的字符串 。 通行字识别的方法是:被认证者先输入其通行字,
然后计算机确定它的正确性 。 当采用单向函数克服通行字文件暴露缺陷时,认证过程为,( 1)
被认证者将其通行字输入计算机; ( 2) 计算机完成通行字的单向函数值计算; ( 3) 计算机把单向函数值和机器存储值进行比较 。 返回本章首页第三章 信息加密与 PKI
2,身份认证协议目前认证协议多采用询问-应答式协议,其基本工作过程是:认证者提出问题 ( 通常是随机选择一些随机数,称作口令 ),由被认证者回答,
然后认证者验证其身份的真实性 。 询问-应答式协议可分为两类:一类是基于私钥密码体制的,
在这类协议中,认证者知道被认证者的秘密;另一类是基于公钥密码体制的,在这类协议中,认证者不知道被认证者的秘密,因此,它们又称为零知识身份认证协议 。
返回本章首页第三章 信息加密与 PKI
3.3.5 消息认证技术消息认证是指通过对消息或消息相关信息进行加密或签名变换进行的认证,其目的可能是多方面的,包括消息内容认证 ( 即消息完整性认证 ),消息的源和宿认证 ( 即身份认证 ) 及消息的序号和操作时间认证等 。
返回本章首页第三章 信息加密与 PKI
3.3.6 数字签名与消息认证数字签名可以实现消息认证的功能 。 它与消息认证的区别在于:消息认证使收方能验证消息发送者的身份及其所发消息是否被篡改 。 当收发者之间没有利害冲突时,这对于防止第三者破坏来说是足够的,但当收发者之间有利害冲突时,
单纯用消息认证技术就无法解决他们之间的纠纷,
这时就要借助于公证数字签名技术 。
返回本章首页第三章 信息加密与 PKI
3.4 公开密钥基础设施( PKI)
随着互联网技术的推广和普及,各种网络应用如电子商务,电子政务,网上银行,网上证券交易等也迅猛发展 。 但如何保障这些应用的安全性,已成为发展网络通信需要解决的重要任务 。
在公开密钥加密技术基础上发展起来的 PKI
( Public Key Infrastructure,公钥基础设施 )
很好地适应了互联网的特点,可为互联网以及网络应用提供全面的安全服务如认证,密钥管理,
数据完整性检验和不可否认性保证等 。 今天互联网的安全应用,已经离不开 PKI的支持 了 。返回本章首页第三章 信息加密与 PKI
从参与电子政务与电子商务的用户实体出发,
应用系统常规的安全需求通常包括:
( 1) 认证需求:提供某个实体 ( 人或系统 )
的身份保证 。 ( 2) 访问控制需求:保护资源,
以防止被非法使用和操作 。 ( 3) 保密需求:保护信息不被泄漏或暴露给非授权的实体 。 ( 4)
数据完整性需求:保护数据以防止未经授权的增删,修改和替代 。 ( 5) 不可否认需求:防止参与某次通信交换的一方事后否认本次交换曾经发生过 。
返回本章首页第三章 信息加密与 PKI
3.4.1 PKI的基本概念
PKI是一个用公钥密码算法原理和技术来提供安全服务的通用性基础平台,用户可利用 PKI
平台提供的安全服务进行安全通信 。 PKI采用标准的密钥管理规则,能够为所有应用透明地提供采用加密和数字签名等密码服务所需要的密钥和证书管理 。
PKI首先是适用于多种环境的框架,这个框架避免了零碎的,点对点的,特别是那些没有互操作性的解决方案,它引入了可管理的机制以及跨越多个应用和多种计算平台的一致安全性 。返回本章首页第三章 信息加密与 PKI
3.4.2 PKI认证技术的组成
PKI是一个用公钥密码算法原理和技术来提供安全服务的通用性基础平台,用户可利用 PKI
平台提供的安全服务进行安全通信 。 PKI采用标准的密钥管理规则,能够为所有应用透明地提供采用加密和数字签名等密码服务所需要的密钥和证书管理 。
PKI首先是适用于多种环境的框架,这个框架避免了零碎的,点对点的,特别是那些没有互操作性的解决方案,它引入了可管理的机制以及跨越多个应用和多种计算平台的一致安全性 。返回本章首页第三章 信息加密与 PKI
公钥基础设施主要包括认证机构 CA,证书库,密钥备份 ( 即恢复系统 ),证书作废处理系统,PKI应用接口系统等 。
1,CA
它是数字证书的签发机构,是 PKI的核心,
并且是 PKI应用中权威的,可信任的,公正的第三方机构 。
2,证书库它是 CA颁发证书和撤销证书的集中存放地,
是网上的一种公共信息库,供广大公众进行开放式查询 。 返回本章首页第三章 信息加密与 PKI
3,证书撤销认证机构 CA通过签发证书来为用户的身份和公钥进行捆绑,但因种种原因,还必须存在一种机制来撤销这种捆绑关系,将现行的证书撤销 。
4,密钥备份和恢复为了避免解密密钥丢失带来的不便,PKI提供了密钥备份与解密密钥的恢复机制,即密钥备份与恢复系统,它由可信任的 CA来完成 。 值得强调的是,密钥备份与恢复只针对解密密钥,而签名密钥不能做备份 。 返回本章首页第三章 信息加密与 PKI
5,自动更新密钥证书有效期是有限的,该规定既有理论上的原因,又有实际操作因素 。 因此,在很多 PKI环境中,一个已颁发的证书需要有过期的措施,以便更换新的证书 。 为解决密钥更新的复杂性和人工操作的麻烦,PKI自动完成密钥或证书的更新 。
6,密钥历史档案密钥更新的概念告诉我们,经过一段时间后,
每个用户都会形成多个,旧,证书和至少一个
,当前,证书 。 这一系列旧证书和相应的私钥就组成了用户密钥和证书的历史档案 。 返回本章首页第三章 信息加密与 PKI
7,交叉认证在全球范围内建立一个容纳所有用户的单一
PKI是不太可能实现的 。 现实可行的模型是:建立多个 PKI域,进行独立的运行和操作,为不同环境和不同行业的用户团体服务 。 为了在不同
PKI之间建立信任关系,产生了,交叉认证,的概念 。 在没有一个统一的全球的 PKI环境下,交叉认证是一个可以接受的机制,因为它能够保证一个 PKI团体的用户验证另一个团体的用户证书 。
交叉认证是 PKI中信任模型的概念 。 它是一种把以前无关的 CA连接在一起的机制,从而使得它们在各自主体群间实现安全通信 。 返回本章首页第三章 信息加密与 PKI
8,不可否认性
PKI的不可否认性适用于从技术上保证实体对他们行为的不可否认性,即他们对自己发送出和接收到数据的事实的不可抵赖性 。 如甲签发了某份文件,若干时间后,他不能否认他对该文件进行了数字签名 。
返回本章首页第三章 信息加密与 PKI
9,时间戳时间戳或称安全时间戳,是一个可信的时间权威用一段可认证性的完整数据表示的时间戳
( 以格林威治时间为标准的 32比特值 ) 。 重要的不是时间本身的精确性,而是相关日期时间的安全性 。 支持不可否认性服务的一个关键措施,就是在 PKI中使用时间戳 。 也就是说时间源是可信的,它赋予的时间值必须被安全地传送 。
返回本章首页第三章 信息加密与 PKI
10,客户端软件客户端软件是一个全功能,可操作 PKI的必要组成部分 。 熟悉客户/服务器结构的人都知道,
只有客户端提出请求服务,服务器端才会对此请求作相应处理 。 这个原理同样适用于 PKI。 客户端软件的主要功能有,( 1) 询问证书和相关的撤销信息 。 ( 2) 在一定时刻为文档请求时间戳 。
( 3) 作为安全通信的接收点 。 ( 4) 进行传输加密或数字签名 。 ( 5) 执行取消操作 。 ( 6) 证书路径处理 。 返回本章首页第三章 信息加密与 PKI
3.4.3 PKI的特点
PKI是一个用公钥概念与技术来提供一套具有通用性的安全服务,其特点是:
( 1) 节省费用 。 在一个大型的应用系统中,
实现统一的安全解决方案,比起实施多个有限的解决方案,费用要少得多 。
( 2) 互操作性 。 在一个系统内部,实施多个点对点的解决方案,无法实现互操作性 。 在 PKI
中,每个用户程序和设备都以相同的方式访问和使用安全服务功能 。 返回本章首页第三章 信息加密与 PKI
( 3) 开放性 。 任何先进技术的早期设计,
都希望在将来能和其它系统间实现互操作,而一个专有的点对点技术方案不能处理多域间的复杂性,不具有开放性 。
( 4) 一致的解决方案 。 一致解决方案在一个系统内更易于安装,管理和维护,并且开销小 。
( 5) 可验证性 。 PKI在所有应用系统和设备之间所采用的交互处理方式都是统一的,因此,
它的操作和交互都可以被验证是否正确 。
( 6) 可选择性 。 PKI为管理员和用户提供了许多可选择性 。 返回本章首页第三章 信息加密与 PKI
3.5 本章小结信息加密是保障信息安全最核心的技术措施和理论基础,它采用密码学的原理与方法对信息进行可逆的数学变换,从而使非法接入者无法理解信息的真正含义,
达到保证信息机密性的目的 。
信息加密算法共经历了古典密码,单钥密码体制 ( 对称密钥密码 ) 和双钥密码体制 ( 公开密钥密码 ) 三个阶段 。
返回本章首页第三章 信息加密与 PKI
在网络安全领域,网络数据加密是解决通信网中信息安全的有效方法,网络数据加密常见的方式有链路加密,节点加密和端到端加密三种 。
在认证技术领域,通过使用密码手段,一般可实现三个目标,即消息完整性认证,身份认证,
以及消息的序号和操作时间 ( 时间性 ) 等的认证 。
认证技术模型在结构上由安全管理协议,认证体制和密码体制三层组成 。
返回本章首页第三章 信息加密与 PKI
PKI是一个采用公钥密码算法原理和技术来提供安全服务的通用性基础平台,用户可利用
PKI平台提供的安全服务进行安全通信,PKI采用标准的密钥管理规则,能够为所有应用透明地提供采用加密和数字签名等密码服务所需要的密钥和证书管理 。
PKI在组成上主要包括认证机构 CA,证书库,密钥备份 ( 即恢复系统 ),证书作废处理系统,PKI应用接口系统等 。
返回本章首页第三章 信息加密与 PKI
本章到此结束,谢谢!
第 3章 信息加密与 PKI
内容提要:
信息加密与 PKI概述
加密技术原理
信息加密技术应用
认证技术
公开密钥基础设施 ( PKI)
本章小结第三章 信息加密与 PKI
信息加密与 PKI概述加密技术是保障信息安全的基石,它以很小的代价,对信息提供一种强有力的安全保护 。
近年来密码学得到了前所未有的重视并迅速普及,
同时其应用领域也广为拓展,不仅服务于信息的加密和解密,还是身份认证,访问控制,数字签名等多种安全机制的基础 。 理论上,信息加密技术是利用密码学的原理与方法对传输数据提供保护的手段,它以数学计算为基础,信息论和复杂性理论是其两个重要组成部分 。
返回本章首页第三章 信息加密与 PKI
返回本章首页其中,信息论主要包括 Shannon关于保密系统的信息理论和 Simmoms关于认证系统的信息理论 。 密码学复杂性理论主要讨论算法复杂性和问题复杂性两个方面的内容 。 在构成上,密码技术主要由密码编码技术和密码分析技术两个既相互对立又相互依存的分支组成,密码编码技术主要解决产生安全有效的密码算法问题,实现对信息的加密或认证,密码分析技术主要解决破译密码或伪造认证码问题,从而窃取保密信息或进行破坏活动 。
第三章 信息加密与 PKI
返回本章首页
PKI是一个用公钥密码算法原理和技术来提供安全服务的通用性基础平台,用户可利用
PKI平台提供的安全服务进行安全通信 。 PKI采用标准的密钥管理规则,能够为所有应用透明地提供采用加密和数字签名等密码服务所需要的密钥和证书管理 。
第三章 信息加密与 PKI
3.1 加密技术原理相关的基本概念加密技术的基本思想就是伪装信息,使非法接入者无法理解信息的真正含义 。 称伪装前的原始信息为明文 ( Plaintext),经伪装的信息为密文 ( Ciphertext),伪装的过程为加密
( Encryption) 。 加密在加密密钥 ( Key) 的控制下进行,用于对信息进行加密的一组数学变换称为加密算法 ( Encryption Algorithm) 。 与加密相逆的变换操作就是解密 ( Decryption) 。
返回本章首页第三章 信息加密与 PKI
传统密码体制所用的加密密钥和解密密钥相同,或实质上等同,从一个可以推出另外一个,
我们称其为单钥或对称密码体制 ( One-Key or
Symmetric Cryptosystem) 。 若加密密钥和解密密钥不相同,从一个难以推出另一个,则称为双钥或非对称密码体制 ( Two-Key or Asymmetric
Cryptosystem),这是 1976年由 Diffie和 Hellman
等学者所开创的新密码体制 。
返回本章首页第三章 信息加密与 PKI
密 钥 源密 钥 源加 密 器非 法 接 入 者信 源
M
密 码 分 析 员
( 窃 听 者 )
收 信 端解 密 器
1K 2K
m m?m2k1k
信 道搭 线 信 道
( 主 动 攻 击 )
搭 线 信 道
( 被 动 攻 击 )
图 3 - 1 保 密 系 统 模 型
)(2 mDm k? )(1 mEc k?
cc
图 3-1是保密系统模型的示意图,它由明文消息空间、密文消息空间、密钥空间组成。
返回本章首页第三章 信息加密与 PKI
为了保护信息的机密性,抗击密码分析行为,保密系统需满足下列要求:
( 1) 系统即使在理论上不是可靠的,也应当是实际上不可攻破的 。 也就是说,从截取的密文或某些已知明文密文对,要决定密钥或任意明文在计算上是不可实现的 。 ( 2) 系统的保密性不依赖于对加密体制或算法的保密,而依赖于密钥 。 这就是著名的 Kerckhoff原则 。 ( 3) 加密和解密算法适用于所有密钥空间中的元素 。 ( 4)
系统便于实现和使用方便 。
返回本章首页第三章 信息加密与 PKI
认证理论和技术是近 20年来随着计算机通信的普遍应用而迅速发展起来的,它已成为密码学研究的重要领域 。
一般地,安全的认证系统应满足下列条件:
( 1) 意定的接收者能够检验和证实消息的合法性和真实性 。 ( 2) 消息的发送者对所发送的消息不能抵赖 。 ( 3) 除了合法消息发送者外,其他人无法伪造出合法的消息 。 即使在已知合法密文和相应消息的情况下,要确定加密密钥或系统地伪装合法密文在计算上也是不可行的 。 ( 4) 必要时可由第三者作出仲裁 。 返回本章首页第三章 信息加密与 PKI
3.1.1 常用加密体制及算法密码体制从原理上可分为两大类,即单钥体制 ( One-Key System) 和双钥体制 ( Two-Key
System) 。
单钥体制不仅可用于数据加密,也可用于消息的认证,因其加密密钥和解密密钥相同,故也称私钥密码体制,最有影响的单钥密码是 1977年美国国家标准局颁布的 DES算法 。 单钥系统对数据进行加解密的过程如图 3-2所示,其中系统的保密性主要取决于密钥的安全性 。
返回本章首页第三章 信息加密与 PKI
加 密 器密 钥 产 生 器解 密 器
kE kDkk
密 钥 信 道密 文图 3 - 2 单 钥 密 钥 体 制明 文 解 密 后 明 文如何将密钥安全可靠地分配给通信对方,包括密钥产生、分配、存储、销毁等多方面的问题统称为密钥管理( Key Management),这是影响系统安全的关键因素。
返回本章首页第三章 信息加密与 PKI
古典密码作为密码学的渊源,其多种方法充分体现了单钥加密的思想,典型方法如代码加密,
代替加密,变位加密,一次性密码薄加密等 。
单钥密码体制的优点是安全性高且加解密速度快,其缺点是进行保密通信之前,双方必须通过安全信道传送所用密钥,这对于相距较远的用户可能要付出较大的代价,甚至难以实现 。
对于单钥体制存在的问题,采用双钥体制则可以完全克服,特别是多用户通信网,双钥体制可以明显减少多用户之间所需的密钥量,从而便于密钥管理 。 返回本章首页第三章 信息加密与 PKI
双钥体制是由 Diffie和 Hellman于 1976年提出的,双钥密码体制的主要特点是将加密和解密能力分开,它既可用于实现公共通信网的保密通信,
也可用于认证系统中对消息进行数字签名。为了同时实现保密性和对消息进行确认,在明文消息空间和密文消息空间等价,且加密、解密运算次序可换情况下,可采用双钥密码体制实现双重加、
解密功能,如图 3-3所示。m 2kAD 公 开图 3 - 3 双 钥 保 密 和 认 证 体 制用 户 A
保 密用 户 Bm
1kBE 1kAE2kBD 公 开保 密保 密认 证返回本章首页第三章 信息加密与 PKI
双钥密码体制的优点是可以公开加密密钥,
适应网络的开放性要求,且仅需保密解密密钥,
所以密钥管理问题比较简单 。 此外,双钥密码可以用于数字签名等新功能 。 最有名的双钥密码体系是 1977年由 Rivest,Shamir和 Adleman人提出的 RSA密码体制 。 双钥密码的缺点是双钥密码算法一般比较复杂,加解密速度慢 。
实际应用时多采用双钥和单钥密码相结合的混合加密体制,即加解密时采用单钥密码,密钥传送则采用双钥密码 。 这样既解决了密钥管理的困难,又解决了加解密速度的问题 。 返回本章首页第三章 信息加密与 PKI
前面已述及保密系统以及密码体制的基本知识,我们将在本章随后讨论各种密码体制涉及的常用加密算法及其应用问题 。
加密算法就其发展而言,共经历了古典密码,
对称密钥密码 ( 单钥密码体制 ),公开密钥密码
( 双钥密码体制 ) 三个发展阶段 。
返回本章首页第三章 信息加密与 PKI
3.1.2 古典密码算法密码体制从原理上可分为两大类,即单钥体制 ( One-Key System) 和双钥体制 ( Two-Key
System) 。
单钥体制不仅可用于数据加密,也可用于消息的认证,因其加密密钥和解密密钥相同,故也称私钥密码体制,最有影响的单钥密码是 1977年美国国家标准局颁布的 DES算法 。 单钥系统对数据进行加解密的过程如图 3-2所示,其中系统的保密性主要取决于密钥的安全性 。
返回本章首页第三章 信息加密与 PKI
古典密码大都比较简单,可用手工或机械操作实现加解密,虽然现在很少采用,但研究这些密码算法的原理,对于理解,构造和分析现代密码是十分有益的 。 古典密码算法主要有代码加密,
代替加密,变位加密,一次性密码薄加密等几种算法 。
下面,我们讨论代替加密的几种算法实现 。
返回本章首页第三章 信息加密与 PKI
1,简单代替密码或单字母密码简单代替密码就是将明文字母表 M中的每个字母用密文字母表 C中的相应字母来代替 。
这一类密码包括移位密码,替换密码,仿射密码,乘数密码,多项式代替密码,密钥短语密码等 。
返回本章首页第三章 信息加密与 PKI
2,多名或同音代替该方法与简单代替密码类似,只是映射是一对多关系的,每个明文字母可以加密成多个密文字母 。
3,多表代替由于单字母出现频率分布与密文中相同,因此多表代替密码使用从明文字母到密文字母的多个映射来隐藏单字母出现的频率分布,每个映射是简单代替密码中的一对一映射 。 维吉尼亚
( Vigenere) 密码和博福特 ( Beaufort) 密码是多表代替密码的例子 。 返回本章首页第三章 信息加密与 PKI
4,多字母或多码代替不同于前面介绍的代替密码都是每次加密一个明文字母,多字母代替密码将明文字符划分为长度相同的消息单元,称为明文组,对字符块成组进行代替,这样一来使密码分析更加困难 。
多字母代替的优点是容易将字母的自然频度隐蔽或均匀化,从而有利于抗击统计分析 。
Playfair密码,Hill密码都是这一类型的密码 。
返回本章首页第三章 信息加密与 PKI
3.1.3 单钥加密算法单钥密钥体制的加密密钥与解密密钥相同或等价,其加密模式主要有序列密码 ( 也称流密码 )
和分组密码两种方式 。
流密码 ( Stream Cipher) 是将明文划分成字符 ( 如单个字母 ),或其编码的基本单元 ( 如
0,1数字 ),字符分别与密钥流作用进行加密,
解密时以同步产生的同样的密钥流解密 。 根据密钥流是否依赖于明文流,可将流密码分为同步流密码和自同步流密码,目前,同步流密码较为多见 。 在流密码研究方面,我国处于国际领先地位 。返回本章首页第三章 信息加密与 PKI
分组密码 ( Block Cipher) 是将明文消息编码表示后的数字序列 x1,x2,…,xi,…,划分为长为
m的组 χ =(x0,x1,…,xm-1),各组 ( 长为 m的矢量 )
分别在密钥 k=(k0,k1,…,kl-1)控制下变换成等长的输出数字序列 y=(y0,y1,…,yn-1)( 长为 n的矢量 ),其加密函数 E,Vn× K→ Vn,Vn是 n维矢量空间,K为密钥空间,如图 3-4所示 。
加 密 算 法
0 1 1(,,,)lk k kk
图 3 - 4 分 组 密 码 原 理 框 图密 钥密 文
0 1 1(,,,)lk k kk密 钥解 密 算 法
0 1 1(,,,)ny y yy0 1 1(,,,)mx x xx明 文 0 1 1(,,,)mx x xx明 文返回本章首页第三章 信息加密与 PKI
围绕单钥密钥体制,密码学工作者已经开发了众多行之有效的单钥加密算法,并且对基于这些算法的软硬件实现进行了大量的工作 。 下面我们将介绍其中的典型代表算法 DES和 IDEA。
返回本章首页第三章 信息加密与 PKI
1,数据加密标准 DES
DES即数据加密标准 ( Data Encryption
Standard),它于 1977年由美国国家标准局公布,
是 IBM公司研制的一种对二元数据进行加密的分组密码,数据分组长度为 64bit( 8byte),密文分组长度也是 64bit,没有数据扩展 。 密钥长度为 64bit,其中有效密钥长度 56bit,其余 8bit为奇偶校验 。 DES的整个体制是公开的,系统的安全性主要依赖密钥的保密,其算法主要由初始置换
IP,16轮迭代的乘积变换,逆初始置换 以及 16
个子密钥产生器构成,见图 3-5所示 。 返回本章首页第三章 信息加密与 PKI
图 3 - 5 D E S 算 法 框 图输 入
6 4 b i t 明 文 数 据乘 积 变 换
( 在 密 钥 控 制下 1 6 次 迭 代 )
初 始 置 换 I P
逆 初 始 置 换 I P
- 1
6 4 b i t 密 文 数 据标准数据加密算法返回本章首页第三章 信息加密与 PKI
2,国际数据加密算法 IDEA
IDEA 是 International Data Encryption
Algorithm的缩写,即国际数据加密算法 。 它是根据中国学者朱学嘉博士与著名密码学家 James
Massey于 1990年联合提出的建议标准算法 PES
( Proposed Encryption Standard) 改进而来的 。
它的明文与密文块都是 64bit,密钥长度为 128bit,
作为单钥体制的密码,其加密与解密过程雷同,
只是密钥存在差异,IDEA无论是采用软件还是硬件实现都比较容易,而且加解密的速度很快 。
IDEA算法的加密过程如图 3-10所示 。 返回本章首页第三章 信息加密与 PKI
图 3 - 1 0 I D E A 加 密 算 法 原 理 框 图
( 1 )
1Z
1X (1)2Z
( 9 )
1Z
( 9 )
2Z
2X 3X (1)4Z 4X
(1)
3Z
( 9 )
4Z
( 9 )
3Z
(1)
5Z
(1)
6Z
表 示 1 6 b i t 子 块 间 诸 位 做 异 或 运 算表 示 1 6 b i t 的 整 数 做 的 加 法 运 算表 示 1 6 b i t 的 整 数 做 的 乘 法 运 算
16m od( 2 1 )?
16m od 2
返回本章首页第三章 信息加密与 PKI
3,单钥算法性能分析其他一些有意义的单钥密码体制算法有
SAFER K-64( Secure And Fast Encryption
Routine),GOST,RC-4,RC-5,Blowfish、
CAST-128等 。
为了提高单钥密码的安全性,人们还将分组密码算法通过组合以得到新的分组密码算法,但其安全性必须经仔细检验后才能付诸实用,如二重 DES加密,三重 DES加密等 。 由于各种加密算法的具体实现互不相同,因此其性能也存在较大差异,具体详见教材中表 3-1的比较 。 返回本章首页第三章 信息加密与 PKI
3.1.4 双钥加密算法这些体制的加解密密钥不同,一个是可公开的公钥,另一个则是需要保密的私钥 。 双钥密码体制的特点是加密和解密能力是分开的 。
双钥密码体制大大简化了复杂的密钥分配管理问题,但公钥算法要比私钥算法慢得多 ( 约
1000倍 ) 。 在实际通信中,双钥密码体制主要用于认证 ( 比如数字签名,身份识别等 ) 和密钥管理等,而消息加密仍利用私钥密码体制 。
下面介绍双钥密码体制的杰出代表 RSA加密算法 。 返回本章首页第三章 信息加密与 PKI
1,RSA算法
RSA体制是由 R.L,Rivest,A,Shamir和 L.
Adleman设计的用数论构造双钥的方法,它既可用于加密,也可用于数字签名 。 国际标准化组织
ISO,ITU以及 SWIFT等均已接受 RSA体制作为标准 。 在 Internet中所采用的 PGP( Pretty Good
Privacy) 也将 RSA作为传送会话密钥和数字签名的标准算法 。
RSA算法的安全性建立在数论中,大数分解和素数检测,的理论基础上 。 返回本章首页第三章 信息加密与 PKI
RSA算法表述:
假定用户 A欲送消息给用户 B,则 RSA算法的加 /解密过程为:
① 首先用户 B产生两个大素数 p和 q( p,q是保密的 ) 。
② B计算 和 ( 是保密的 ) 。
③ B选择一个随机数 e( ),使得
,即 e和 φ互素 。
pqn? )1)(1()( qpn? )(n?
)(0 ne
1))(,(?ne?
返回本章首页第三章 信息加密与 PKI
④ B通过计算得出 d,使得 ( 即在与 n互素的数中选取与 互素的数,可以通过 Eucliden
算法得出 。 d是 B自留且保密的,用作解密密钥 ) 。
⑤ B将 n及 e作为公钥公开 。
⑥ 用户 A通过公开渠道查到 n和 e。
⑦ 对 m施行加密变换,即 。
⑧ 用户 B收到密文 c后,施行解密变换:
。
1)(m od?nde?
)(n?
cnmmE eB m o d)(
nmnmnnmnccD eddedB m o dm o dm o d)m o d(m o d)(
返回本章首页第三章 信息加密与 PKI
2,ElGamal算法
RSA算法是基于素数因子分解的双钥密码,
而 ElGamal算法则是基于离散对数问题的另一种类型的双钥密钥,它既可用于加密,也可用于签名 。 ElGamal的算法方案如下:
令 zp是 一个有 p个元素的有限域,p是素数,
令 g是 zp*( zp中除去 0元素 ) 中的一个本原元或其生成元 。 明文集 m为 zp*,密文集 e为 。
公钥为:选定 p( g<p的生成元 ),计算公钥;私钥为,。
** pp zz?
pg a m o d p
返回本章首页第三章 信息加密与 PKI
3,双钥算法性能分析双钥密钥体制因其密钥管理和分配较为简单,
尤其可方便地用于数字签名和认证,但其算法都较为复杂,运算量十分浩大,但其仍不失为一种非常有前途的加密体制,它的出现是密码学发展史上的划时代事件 。 此外,还有一些有意义的双钥算法,如 LUC密码,Rabin密码,以及 DSA密码等 。
双钥密码体制主要算法在总体实现,速度,
安全性能和改进措施等几个方面的比较详见教材表 3-2。 返回本章首页第三章 信息加密与 PKI
3.2 信息加密技术应用在网络安全领域,网络数据加密是解决通信网中信息安全的有效方法 。 有关密码算法已在本章前面内容中加以介绍,这里主要讨论通信网中对数据进行加密的方式 。
网络数据加密常见的方式有链路加密,节点加密和端到端加密 。
返回本章首页第三章 信息加密与 PKI
3.2.1 链路加密链路加密 ( 又称在线加密 ) 是对网络中两个相邻节点之间传输的数据进行加密保护,如图 3-
11所示 。 所有消息在被传输之前进行加密,每一个节点对接收到的消息解密后,再使用下一个链路的密钥对消息进行加密,然后才进行传输 。 到达目的地之前,消息可能经多条通信链路的传输 。
图 3 - 1 1 链 路 加 密
X
E
1
结 点 0
结 点 1
结 点 n
E
2
D
1
X
链 路 1
链 路 n
)(1 XE )(2 XE )(3 XE )( XE n结 点 2
E
3
D
2
X
链 路 2
D
n
X
.,,
返回本章首页第三章 信息加密与 PKI
3.2.2 节点加密节点加密是指在信息传输路过的节点处进行解密和加密 。 尽管节点加密能给网络数据提供较高的安全性,但它在操作方式上与链路加密是类似的:两者均在通信链路上为传输的消息提供安全性,都在中间节点先对消息进行解密,然后进行加密 。 因要对所有传输的数据进行加密,故加密过程对用户是透明的 。 与链路加密不同的是,
节点加密不允许消息在网络节点以明文形式存在,
它先把收到的消息进行解密,然后采用另一个不同的密钥进行加密,这一过程在节点上的一个安全模块中进行 。 返回本章首页第三章 信息加密与 PKI
3.2.3 端到端加密端到端加密 ( 又称脱线加密或包加密 ) 是指对一对用户之间的数据连续地提供保护,如图
3-12所示 。 它允许数据在从源点到终点的传输过程中始终以密文形式存在 。 消息在到达终点之前不进行解密,因为消息在整个传输过程中均受到保护,所以即使有节点被损坏也不会使消息泄露 。
图 3-12 端 到 端 加 密
X
E
k
结 点 0
结 点 1
结 点 n
链 路 1
链 路 n
)( XE k )( XE k结 点 2
链 路 2
D
k
X
...,..
)( XE k
返回本章首页第三章 信息加密与 PKI
加密技术在其他领域也经常发挥作用,如电子商务 和 VPN。
电子商务 ( E-business) 要求顾客可以在网上进行各种商务活动,不必担心自己的信用卡会被人盗用,因 RSA加密技术来提高信用卡交易的安全性 。
虚拟专用网 ( Virtual Private Network,
VPN) 通过 使用加密技术可将跨国公司分布在多个国家的办事机构或销售中心安全地连接起来 。
返回本章首页第三章 信息加密与 PKI
3.3 认证技术数据加密是密码技术应用的重要领域,在认证技术中,密码技术也同样发挥出色,但应用目的不同 。 加密是为了隐蔽消息的内容,而认证的目的有三个:一是消息完整性认证,即验证信息在传送或存储过程中是否被篡改;二是身份认证,
即验证消息的收发者是否持有正确的身份认证符,
如口令,密钥等;三是消息的序号和操作时间
( 时间性 ) 等的认证,其目的是防止消息重放或延迟等攻击 。 认证技术是防止不法分子对信息系统进行主动攻击的一种重要技术 。 返回本章首页第三章 信息加密与 PKI
3.3.1 认证技术的分层模型如教材图 3-13所示,认证技术分为三层:安全管理协议,认证体制和密码体制 。 安全管理协议是在安全体制的支持下,建立,强化和实施整个网络系统的安全策略;认证体制在安全管理协议的控制和密码体制的支持下,完成各种认证功能;密码体制是认证技术的基础,它为认证体制提供数学方法支持 。
返回本章首页第三章 信息加密与 PKI
3.3.2 认证体制的要求与模型一个安全的认证体制应该至少满足以下要求:
( 1) 意定的接收者能够检验和证实消息的合法性,真实性和完整性 。
( 2) 消息的发送者对所发的消息不能抵赖,
有时也要求消息的接收者不能否认收到的消息 。
( 3) 除了合法的消息发送者外,其他人不能伪造发送消息 。
返回本章首页第三章 信息加密与 PKI
认证体制的基本模型 ( 又称纯认证系统模型 )
如图 3-14所示 。
返回本章首页第三章 信息加密与 PKI
3.3.3 数字签名技术数字签名技术是一种实现消息完整性认证和身份认证的重要技术 。
一个数字签名方案有安全参数,消息空间,
签名,密钥生成算法,签名算法,验证算法等成分构成 。 从接收者验证签名的方式可将数字签名分为真数字签名和公证数字签名两类 。
真数字签名如图 3-15所示,公证数字签名如图 3-16所示 。
返回本章首页第三章 信息加密与 PKI
返回本章首页第三章 信息加密与 PKI
3.3.4 身份认证技术身份认证的目的是验证信息收发方是否持有合法的身份认证符 ( 口令,密钥和实物证件等 ) 。
从认证机制上讲,身份认证技术可分为两类:一类是专门进行身份认证的直接身份认证技术,另一类是在消息签名和加密认证过程中,通过检验收发方是否持有合法的密钥进行的认证,称为间接身份认证技术 。
下面介绍一些常用的身份认证技术 。
返回本章首页第三章 信息加密与 PKI
1,身份认证方式身份认证常用的方式主要有两种,通行字
( 口令 ) 方式和持证方式 。 通行字方式是使用最广泛的一种身份认证方式 。 通行字一般为数字,
字母,特殊字符等组成长的为 5~ 8的字符串 。 通行字识别的方法是:被认证者先输入其通行字,
然后计算机确定它的正确性 。 当采用单向函数克服通行字文件暴露缺陷时,认证过程为,( 1)
被认证者将其通行字输入计算机; ( 2) 计算机完成通行字的单向函数值计算; ( 3) 计算机把单向函数值和机器存储值进行比较 。 返回本章首页第三章 信息加密与 PKI
2,身份认证协议目前认证协议多采用询问-应答式协议,其基本工作过程是:认证者提出问题 ( 通常是随机选择一些随机数,称作口令 ),由被认证者回答,
然后认证者验证其身份的真实性 。 询问-应答式协议可分为两类:一类是基于私钥密码体制的,
在这类协议中,认证者知道被认证者的秘密;另一类是基于公钥密码体制的,在这类协议中,认证者不知道被认证者的秘密,因此,它们又称为零知识身份认证协议 。
返回本章首页第三章 信息加密与 PKI
3.3.5 消息认证技术消息认证是指通过对消息或消息相关信息进行加密或签名变换进行的认证,其目的可能是多方面的,包括消息内容认证 ( 即消息完整性认证 ),消息的源和宿认证 ( 即身份认证 ) 及消息的序号和操作时间认证等 。
返回本章首页第三章 信息加密与 PKI
3.3.6 数字签名与消息认证数字签名可以实现消息认证的功能 。 它与消息认证的区别在于:消息认证使收方能验证消息发送者的身份及其所发消息是否被篡改 。 当收发者之间没有利害冲突时,这对于防止第三者破坏来说是足够的,但当收发者之间有利害冲突时,
单纯用消息认证技术就无法解决他们之间的纠纷,
这时就要借助于公证数字签名技术 。
返回本章首页第三章 信息加密与 PKI
3.4 公开密钥基础设施( PKI)
随着互联网技术的推广和普及,各种网络应用如电子商务,电子政务,网上银行,网上证券交易等也迅猛发展 。 但如何保障这些应用的安全性,已成为发展网络通信需要解决的重要任务 。
在公开密钥加密技术基础上发展起来的 PKI
( Public Key Infrastructure,公钥基础设施 )
很好地适应了互联网的特点,可为互联网以及网络应用提供全面的安全服务如认证,密钥管理,
数据完整性检验和不可否认性保证等 。 今天互联网的安全应用,已经离不开 PKI的支持 了 。返回本章首页第三章 信息加密与 PKI
从参与电子政务与电子商务的用户实体出发,
应用系统常规的安全需求通常包括:
( 1) 认证需求:提供某个实体 ( 人或系统 )
的身份保证 。 ( 2) 访问控制需求:保护资源,
以防止被非法使用和操作 。 ( 3) 保密需求:保护信息不被泄漏或暴露给非授权的实体 。 ( 4)
数据完整性需求:保护数据以防止未经授权的增删,修改和替代 。 ( 5) 不可否认需求:防止参与某次通信交换的一方事后否认本次交换曾经发生过 。
返回本章首页第三章 信息加密与 PKI
3.4.1 PKI的基本概念
PKI是一个用公钥密码算法原理和技术来提供安全服务的通用性基础平台,用户可利用 PKI
平台提供的安全服务进行安全通信 。 PKI采用标准的密钥管理规则,能够为所有应用透明地提供采用加密和数字签名等密码服务所需要的密钥和证书管理 。
PKI首先是适用于多种环境的框架,这个框架避免了零碎的,点对点的,特别是那些没有互操作性的解决方案,它引入了可管理的机制以及跨越多个应用和多种计算平台的一致安全性 。返回本章首页第三章 信息加密与 PKI
3.4.2 PKI认证技术的组成
PKI是一个用公钥密码算法原理和技术来提供安全服务的通用性基础平台,用户可利用 PKI
平台提供的安全服务进行安全通信 。 PKI采用标准的密钥管理规则,能够为所有应用透明地提供采用加密和数字签名等密码服务所需要的密钥和证书管理 。
PKI首先是适用于多种环境的框架,这个框架避免了零碎的,点对点的,特别是那些没有互操作性的解决方案,它引入了可管理的机制以及跨越多个应用和多种计算平台的一致安全性 。返回本章首页第三章 信息加密与 PKI
公钥基础设施主要包括认证机构 CA,证书库,密钥备份 ( 即恢复系统 ),证书作废处理系统,PKI应用接口系统等 。
1,CA
它是数字证书的签发机构,是 PKI的核心,
并且是 PKI应用中权威的,可信任的,公正的第三方机构 。
2,证书库它是 CA颁发证书和撤销证书的集中存放地,
是网上的一种公共信息库,供广大公众进行开放式查询 。 返回本章首页第三章 信息加密与 PKI
3,证书撤销认证机构 CA通过签发证书来为用户的身份和公钥进行捆绑,但因种种原因,还必须存在一种机制来撤销这种捆绑关系,将现行的证书撤销 。
4,密钥备份和恢复为了避免解密密钥丢失带来的不便,PKI提供了密钥备份与解密密钥的恢复机制,即密钥备份与恢复系统,它由可信任的 CA来完成 。 值得强调的是,密钥备份与恢复只针对解密密钥,而签名密钥不能做备份 。 返回本章首页第三章 信息加密与 PKI
5,自动更新密钥证书有效期是有限的,该规定既有理论上的原因,又有实际操作因素 。 因此,在很多 PKI环境中,一个已颁发的证书需要有过期的措施,以便更换新的证书 。 为解决密钥更新的复杂性和人工操作的麻烦,PKI自动完成密钥或证书的更新 。
6,密钥历史档案密钥更新的概念告诉我们,经过一段时间后,
每个用户都会形成多个,旧,证书和至少一个
,当前,证书 。 这一系列旧证书和相应的私钥就组成了用户密钥和证书的历史档案 。 返回本章首页第三章 信息加密与 PKI
7,交叉认证在全球范围内建立一个容纳所有用户的单一
PKI是不太可能实现的 。 现实可行的模型是:建立多个 PKI域,进行独立的运行和操作,为不同环境和不同行业的用户团体服务 。 为了在不同
PKI之间建立信任关系,产生了,交叉认证,的概念 。 在没有一个统一的全球的 PKI环境下,交叉认证是一个可以接受的机制,因为它能够保证一个 PKI团体的用户验证另一个团体的用户证书 。
交叉认证是 PKI中信任模型的概念 。 它是一种把以前无关的 CA连接在一起的机制,从而使得它们在各自主体群间实现安全通信 。 返回本章首页第三章 信息加密与 PKI
8,不可否认性
PKI的不可否认性适用于从技术上保证实体对他们行为的不可否认性,即他们对自己发送出和接收到数据的事实的不可抵赖性 。 如甲签发了某份文件,若干时间后,他不能否认他对该文件进行了数字签名 。
返回本章首页第三章 信息加密与 PKI
9,时间戳时间戳或称安全时间戳,是一个可信的时间权威用一段可认证性的完整数据表示的时间戳
( 以格林威治时间为标准的 32比特值 ) 。 重要的不是时间本身的精确性,而是相关日期时间的安全性 。 支持不可否认性服务的一个关键措施,就是在 PKI中使用时间戳 。 也就是说时间源是可信的,它赋予的时间值必须被安全地传送 。
返回本章首页第三章 信息加密与 PKI
10,客户端软件客户端软件是一个全功能,可操作 PKI的必要组成部分 。 熟悉客户/服务器结构的人都知道,
只有客户端提出请求服务,服务器端才会对此请求作相应处理 。 这个原理同样适用于 PKI。 客户端软件的主要功能有,( 1) 询问证书和相关的撤销信息 。 ( 2) 在一定时刻为文档请求时间戳 。
( 3) 作为安全通信的接收点 。 ( 4) 进行传输加密或数字签名 。 ( 5) 执行取消操作 。 ( 6) 证书路径处理 。 返回本章首页第三章 信息加密与 PKI
3.4.3 PKI的特点
PKI是一个用公钥概念与技术来提供一套具有通用性的安全服务,其特点是:
( 1) 节省费用 。 在一个大型的应用系统中,
实现统一的安全解决方案,比起实施多个有限的解决方案,费用要少得多 。
( 2) 互操作性 。 在一个系统内部,实施多个点对点的解决方案,无法实现互操作性 。 在 PKI
中,每个用户程序和设备都以相同的方式访问和使用安全服务功能 。 返回本章首页第三章 信息加密与 PKI
( 3) 开放性 。 任何先进技术的早期设计,
都希望在将来能和其它系统间实现互操作,而一个专有的点对点技术方案不能处理多域间的复杂性,不具有开放性 。
( 4) 一致的解决方案 。 一致解决方案在一个系统内更易于安装,管理和维护,并且开销小 。
( 5) 可验证性 。 PKI在所有应用系统和设备之间所采用的交互处理方式都是统一的,因此,
它的操作和交互都可以被验证是否正确 。
( 6) 可选择性 。 PKI为管理员和用户提供了许多可选择性 。 返回本章首页第三章 信息加密与 PKI
3.5 本章小结信息加密是保障信息安全最核心的技术措施和理论基础,它采用密码学的原理与方法对信息进行可逆的数学变换,从而使非法接入者无法理解信息的真正含义,
达到保证信息机密性的目的 。
信息加密算法共经历了古典密码,单钥密码体制 ( 对称密钥密码 ) 和双钥密码体制 ( 公开密钥密码 ) 三个阶段 。
返回本章首页第三章 信息加密与 PKI
在网络安全领域,网络数据加密是解决通信网中信息安全的有效方法,网络数据加密常见的方式有链路加密,节点加密和端到端加密三种 。
在认证技术领域,通过使用密码手段,一般可实现三个目标,即消息完整性认证,身份认证,
以及消息的序号和操作时间 ( 时间性 ) 等的认证 。
认证技术模型在结构上由安全管理协议,认证体制和密码体制三层组成 。
返回本章首页第三章 信息加密与 PKI
PKI是一个采用公钥密码算法原理和技术来提供安全服务的通用性基础平台,用户可利用
PKI平台提供的安全服务进行安全通信,PKI采用标准的密钥管理规则,能够为所有应用透明地提供采用加密和数字签名等密码服务所需要的密钥和证书管理 。
PKI在组成上主要包括认证机构 CA,证书库,密钥备份 ( 即恢复系统 ),证书作废处理系统,PKI应用接口系统等 。
返回本章首页第三章 信息加密与 PKI
本章到此结束,谢谢!