密码学基础

Source

目录

一、密码学基本概念

1. 密码学形成与发展

2. 基本保密通信模型

3. 密码系统安全性

4. 密码系统实际安全性

二、对称密码算法

1. 基本概念

2. 算法优缺点

三、非对称密码算法

1. 基本概念

2. 特点

四、哈希与数字签名

1. 哈希函数

2. 数字签名

五、公钥基础设施

1. PKI架构

2. PKI架构-四类实体

3. 数字证书

4. CA ( certification Authority )认证权威

5. RA:证书注册机构

6. PKI定义及构成

7. PKI体系工作流程

8. PKI/CA技术的典型应用


一、密码学基本概念

1. 密码学形成与发展

(1)古典密码学(1949年之前):

主要特点:数据的安全基于算法的保密

(2)近代密码学(1949~1975年):

主要特点:密码学真正成为一门科学

(3)现代密码学( 1976年以后):密码学的新方向一公钥密码学

主要特点:解决了密钥分发和管理的问题

古典密码学

(1)凯撒密码:

(2)ENIGMA转轮机:

ENIGMA是由Arthur Scherbius(亚瑟·谢尔比斯)于1919年发明了密码转轮机,使用机电代替手工。在二次世界大战Enigma曾作为德国陆、海、空三军最高级密码机。

古典密码:

安全性在于保持算法本身的保密性:

(1)不适合大规模生产;

(2)不适合较大的或者人员变动较大的组织;

(3)用户无法了解算法的安全性。

主要分类:

(1)替代密码

(2)置换密码

(3)替代密码与置换密码的组合。

近代密码学:

1949年,Shannon(香农)发表论文“The Communication Theory of Secret Systems”、将信息论引入了密码,从而把已有数千年历史的密码学推向了科学的轨道,奠定了密码学的理论基础。

现代密码学:

(1)解决了密钥分发、管理问题,并提供更多服务

(2)1976年,Diffie & Hellman的“New Directions in Cryptography"提出了非对称密钥密码。

2. 基本保密通信模型

基本概念:

(1)密码编码学

(2)密码分析学

传统密码学主要用于保密通信,解决了在不安全的通道中安全的传递信息。

现代密码学涵盖了数据处理过程的各个环节(数据加密,密码分析,数字签名,身份识别,零知识证明,密码分享等)

密码学技术在信息安全中的应用:

(1)明文、密文

(2)加密、解密、加密密钥、解密密钥

3. 密码系统安全性

基本概念:

明文(Plain text):不需要任何解密工具就可以读懂内容的原始消息称为明文。

密文(Cipher text):明文变换成一种在通常情况下无法读懂的内容,这种隐蔽后的信息称为密文。

加密(Encryption): 由明文到密文的变换过程称作加密。

解密(Decryption):从密文到明文的变换过程称为解密。

加/解密算法:对明文进行加密时采取的一组规则称作加密算法,密文的接收方对密文进行解密时采取的一组规则称为解密算法。

密钥(Key)︰密钥在明文转换为密文或将密文转换为明文的算法中输入的参数。

影响密码系统安全性的基本因素:

密码算法复杂度、密钥机密性、密钥长度

科克霍夫(Kerckhoff)原则:

(1)密码体制可以对外公开,对密钥必须保密;

(2)如果一个密码系统需要保密的越多,可能的弱点也越多

4. 密码系统实际安全性

评估密码系统安全性:

(1)无条件安全

(2)计算安全性

(3)可证明安全性

密码系统要达到实际安全,就要满足以下准则:

(1)破译该密码系统的实际计算量无法实现

(2)破译该密码系统所需计算时间超过信息的生命周期

(3)破译该密码系统的费用超过被加密信息本身的价值

二、对称密码算法

1. 基本概念

也称传统密码算法、密钥算法或单密钥算法

加密密钥和解密密钥相同,或实质上等同

2. 算法优缺点

优点:

算法简单、计算量小、加密速度快、加密效率高,适合加密大量数据,明文长度与密文长度相等。

缺点:

(1)安全信道难以实现

(2)安全交换密钥问题及密钥管理复杂

(3)无法解决对消息的篡改、否认等问题。

典型的对称密码算法包括:

DES、3DES、IDEA、AES、RC4、RC5、Twofish、CAST-256、MARS等

三、非对称密码算法

1. 基本概念

也称双钥或公钥密码算法。其加密密钥和解密密钥不同,从一个很难推出另一个。

应用以上两个密钥,一个是可以公开的(称为公钥),一个是私有的(称为私钥),这两个密钥组成一个密钥对。使用公钥对数据进行加密,则只有用对应的私钥才能解密。

2. 特点

公钥密码的特点:

(1)公私钥成对出现

(2)公钥加密私钥解密一机密性

(3)私钥加密公钥解密一数字签名

公钥密码的优点:

(1)解决密钥传递问题

(2)大大减少了密钥持有量

(3)提供了对称密码技术无法或很难提供的服务(数字签名)

公钥密码的缺点:

(1)计算复杂、耗用资源大

(2)非对称会导致得到的密文变长

四、哈希与数字签名

1. 哈希函数

哈希函数也称单向散列函数,它可以将任意有限长度信息映射为固定长度的值。

主要用途:消息完整性检测和数字签名。

安全的哈希函数需要满足以下性质:

(1)单向性:对任意给定的码h,寻求x使得在计算上是不可行的;

(2)弱抗碰撞性:任意给定分组x,寻求不等于x的y,使得在计算上不可行;

(3)强抗碰撞性:寻求对任何的(x, v)对,使得在计算上不可行。

目前常用的哈希函数:

(1)MD5算法:

消息摘要算法(RFC1321)由Ron Rivest提出。该算法以一个任意长的消息作为输入,输出128bit的消息摘要。

(2)SHA-1算法:

安全Hash算法(Secure Hash Algorithm,SHA)由美国标准与技术研究所设计并于1993年作为联邦信息处理标准(FIPS 180)发布,修改版于1995年发布(FiPS 180-1),通常称之为SHA-1。SHA-1算法的输入是长度小于2^64的任意消息×,输出160位的散列值。

2. 数字签名

基本概念:

对数据进行加密、哈希可以避免第三方对数据进行窃取和篡改、破坏,但它无法防止通信双方的互相攻击。通信双方可能存在欺骗和抵赖,一种有效的解决方案是数字签名。

数字签名是指附加在数据单元上的一些数据,或是对数据单元所做的密码变换,这种数据或变换能使数据单元的接收者确认数据单元来源和数据单元的完整性,并保护数据,防止被人伪造。

数字签名是公钥加密技术与数字摘要技术相结合的应用。

基本特性:

  1. 不可伪造性:不知道签名者私钥前提下,很难伪造一个合法的数字签名;
  2. 比可否认性:对普通数字签名,任何人可用签名者公钥验证签名的有效性。由于签名的不可伪造性,签名者无法否认自己的签名。此性质使签名接收者可确认消息的来源;
  3. 保障消息完整性,即消息防篡改。

应用示例:发送过程、接收过程

五、公钥基础设施

1. PKI架构

公钥基础设施(Public Key Infrastructure,PKI) ,也称公开密钥基础设施。

基本概念:

(1)按照国际电联(ITU)制定的x.509标准,PKI"是一个包括硬件、软件、人员、策略和规程的集合,用来实现基于公钥密码体制的密钥和证书的产生、管理、存储、分发和撤销等功能。”

(2)PKI是一种遵循标准,利用公钥加密技术提供安全基础平台的技术和规范,是能够为网络应用提供信任、加密以及密码服务的一种基本解决方案。

(3)PKI的本质是实现了大规模网络中的公钥分发问题,为大规模网络中的信任建立基础。

2. PKI架构-四类实体

(1)CA:

PKI管理实体和服务的提供者;

管理用户数字证书的生成、发放、更新和撤销等工作。

(2)RA:

是数字证书的申请、审核和注册中心,同时也是CA认证机构的延申。

(3)证书:

符合一定格式的电子文件;

用来识别电子证书持有者的真实身份

(4)终端实体:

指拥有公私密钥对和相应公钥证书的最终用户,可以是人、设备、进程等。

3. 数字证书

什么是数字证书:

(1)一段电子数据,是经证书权威机构CA签名的、包含拥有者身份信息和公开密钥的数据体。

(2)数字证书和一对公私钥相对应,而公钥以明文形式放到数字证书中,私钥则为拥有者所秘密掌握。

数字证书的作用:

(1)经过了证书权威机构CA的签名,确保了数字证书中信息的真实性,数字证书可以作为终端实体的身份证明。

(2)在电子商务和网络信息交流中,数字证书常用来解决相互间的信任问题。

4. CA ( certification Authority )认证权威

CA是PKI的核心组成部分,PKI体系也往往称为PKI/CA体系。

证书权威机构CA专门负责数字证书的产生、发放和管理,以保证数字证书的真实可靠。

(1)签发数字证书:签发证书、更新证书

(2)管理数字证书:撤销、查询、审计、统计

(3)验证数字证书:黑名单认证(CRL)、在线认证(OCSP)

5. RA:证书注册机构

(1)又称数字证书注册中心

(2)是数字证书的申请、审核和注册中心,同时也是CA认证机构的延伸。

(3)在逻辑上RA和CA是一个整体,主要负责提供证书注册、审核以及发证功能。

6. PKI定义及构成

(1)证书/CRL库

证书/CRL库主要用来发布、存储数字证书和证书撤销列表(Certificate Revocation List,CRL),供用户查询、获取其他用户的数字证书和系统中的证书撤销列表所用。

(2)终端实体

指拥有公私密钥对和相应公钥证书的最终用户,可以是人、设备、进程等。

7. PKI体系工作流程

 

8. PKI/CA技术的典型应用