第一章 与安全有关的概念
1.1 介绍
提供有关通信安全和密码学的基本介绍。
1.2 因特网威胁模型
1.2.1 第一件事就是定义威胁模型(thread model)。它描述了攻击者可望拥有的资源以及可
望采用的攻击。几乎每一种安全系统都受制于某种威胁。因此在定义安全威胁时,关心的不
止是定义所担心的各种攻击,还要定义我们不准备关心的攻击。使得保障的安全的代价切合
实际,物有所值。采用的安全措施应当以实现它们的花费不超过预期的风险为准。
1.2.2 判断不出可接受风险,也就设计不出可接受的系统。
1.2.3 风险计算的部份工作就是评估攻击者实施指定攻击所花费的努力,而每阻止一种攻击
类型通常都会增加开销。没有任何一种安全系统可以阻挡任何攻击。安全模型的功能就是让
设计者判断哪些攻击值得阻止。
1.2.4 准确估计所必须的安全需要对攻击者能力的准确估算。如果一种原先以为不切实际的
攻击现在被发现实施起来很简单,那么就会存在一个暴露安全缺陷的窗口,需调整自身的安
全模型和实现以弥补相应的缺陷。
1.3 角色
通信双方分别称作Alice and Bob ,它是沿用RSA论文[Rivest1979]中的名字,攻击者还是被
称为攻击者(the attacker)。
1.4 安全目标
通信安全由许多不同的但却又相互关联的特性构成。最为有用的划分是将其分成以下三个主
要类别:
1、保密性(confidentiality)
2、信息完整性(message integrity)
3、端点认证(endpoint authentication)
1.5 必要的装备
密码学(Cryptology)是一种设计各种用以提供安全的算法的理论。
密码术(Cryptography)研究使用这些算法来保证系统和协议的安全。
加密(Encryption)算法。其思想是简单的,它接收一些数据(称为明文),并在密钥(key)
的控制下将其转换成密文(ciphertext)。它被视为纯粹提供保密性。好的加密算法完全应当
由可能的密钥数量决定其安全与否。算法的安全应当只依赖于密钥的保密,算法的保密不应
当是安全性的必要条件。
由于发送者和接收者使用同一密钥(这个密钥必须保密),所以也称之为秘密密钥加密(secret
key cryptography),与公用密钥加密
(public key cryptography)形成对照。
最为流行的加密算法包括数据加密标准(DES)[NIST1993a],Triple-DES(三重DES)
[ANSI1985],RC2[Rivest1998]和RC4。
消息摘要
消息摘要(Message Digest)是一种函数,它接收一个任意长度消息为输入,并产生一个表
示消息特征的定长字符串。它的最重要属性就是不可逆性(irreversibility)。给字摘要什,要
想计算出它所对应的消息应当是极其困难的。第二个重要属性就是要想产生具有相同的两条
消息M and M'应当是困难的。该属性被称为抗冲突性(collision resistance)。实际上,任何
抵御冲突发生的消息摘要的强度只有摘要值的一半,因些一个128位的摘要值避免发生冲突
的强度只有64位,也就是说需要大约2的64次方次操作才会产生一次冲突。因此,在选择
摘要值长度时的限定常常是抵御冲突的强度,而不是抵御可逆性的强度。
消息摘要的首要用途是用于计算数字签名(digital signature)和信息验证码(MAC)。
使用最广泛的消息摘要算法为消息摘要5(MD5)[Rivest1992]和安全散列算法1(SHA-1)
[NIST1994a]。
MAC(message authentication codes信息验证码)
假设Alice与Bob共享一个密钥,Alice 想给 Bob发送一条消息,而Bob将会知道它是Alice
发送的,如果她加密的话,只需将他们共享的密钥用做加密密钥即可。但是,这种方法并不
能提供任何消息未被篡改的真正保证。只能保证消息来自Alice。我们需要一种新的工具。
这就是MAC。它类似于摘要算法,但它在计算的时候还要采用一个密钥,因此MAC同进
依赖于所使用的密钥以及要计算其MAC的信息。
尽管存在许多基于各种摘要
1.1 介绍
提供有关通信安全和密码学的基本介绍。
1.2 因特网威胁模型
1.2.1 第一件事就是定义威胁模型(thread model)。它描述了攻击者可望拥有的资源以及可
望采用的攻击。几乎每一种安全系统都受制于某种威胁。因此在定义安全威胁时,关心的不
止是定义所担心的各种攻击,还要定义我们不准备关心的攻击。使得保障的安全的代价切合
实际,物有所值。采用的安全措施应当以实现它们的花费不超过预期的风险为准。
1.2.2 判断不出可接受风险,也就设计不出可接受的系统。
1.2.3 风险计算的部份工作就是评估攻击者实施指定攻击所花费的努力,而每阻止一种攻击
类型通常都会增加开销。没有任何一种安全系统可以阻挡任何攻击。安全模型的功能就是让
设计者判断哪些攻击值得阻止。
1.2.4 准确估计所必须的安全需要对攻击者能力的准确估算。如果一种原先以为不切实际的
攻击现在被发现实施起来很简单,那么就会存在一个暴露安全缺陷的窗口,需调整自身的安
全模型和实现以弥补相应的缺陷。
1.3 角色
通信双方分别称作Alice and Bob ,它是沿用RSA论文[Rivest1979]中的名字,攻击者还是被
称为攻击者(the attacker)。
1.4 安全目标
通信安全由许多不同的但却又相互关联的特性构成。最为有用的划分是将其分成以下三个主
要类别:
1、保密性(confidentiality)
2、信息完整性(message integrity)
3、端点认证(endpoint authentication)
1.5 必要的装备
密码学(Cryptology)是一种设计各种用以提供安全的算法的理论。
密码术(Cryptography)研究使用这些算法来保证系统和协议的安全。
加密(Encryption)算法。其思想是简单的,它接收一些数据(称为明文),并在密钥(key)
的控制下将其转换成密文(ciphertext)。它被视为纯粹提供保密性。好的加密算法完全应当
由可能的密钥数量决定其安全与否。算法的安全应当只依赖于密钥的保密,算法的保密不应
当是安全性的必要条件。
由于发送者和接收者使用同一密钥(这个密钥必须保密),所以也称之为秘密密钥加密(secret
key cryptography),与公用密钥加密
(public key cryptography)形成对照。
最为流行的加密算法包括数据加密标准(DES)[NIST1993a],Triple-DES(三重DES)
[ANSI1985],RC2[Rivest1998]和RC4。
消息摘要
消息摘要(Message Digest)是一种函数,它接收一个任意长度消息为输入,并产生一个表
示消息特征的定长字符串。它的最重要属性就是不可逆性(irreversibility)。给字摘要什,要
想计算出它所对应的消息应当是极其困难的。第二个重要属性就是要想产生具有相同的两条
消息M and M'应当是困难的。该属性被称为抗冲突性(collision resistance)。实际上,任何
抵御冲突发生的消息摘要的强度只有摘要值的一半,因些一个128位的摘要值避免发生冲突
的强度只有64位,也就是说需要大约2的64次方次操作才会产生一次冲突。因此,在选择
摘要值长度时的限定常常是抵御冲突的强度,而不是抵御可逆性的强度。
消息摘要的首要用途是用于计算数字签名(digital signature)和信息验证码(MAC)。
使用最广泛的消息摘要算法为消息摘要5(MD5)[Rivest1992]和安全散列算法1(SHA-1)
[NIST1994a]。
MAC(message authentication codes信息验证码)
假设Alice与Bob共享一个密钥,Alice 想给 Bob发送一条消息,而Bob将会知道它是Alice
发送的,如果她加密的话,只需将他们共享的密钥用做加密密钥即可。但是,这种方法并不
能提供任何消息未被篡改的真正保证。只能保证消息来自Alice。我们需要一种新的工具。
这就是MAC。它类似于摘要算法,但它在计算的时候还要采用一个密钥,因此MAC同进
依赖于所使用的密钥以及要计算其MAC的信息。
尽管存在许多基于各种摘要
回复Comments
{commenttime}{commentauthor}
{CommentUrl}
{commentcontent}