Skip to content

studying-notes/cryptography-notes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

密码学

学习笔记

现代密码学体制

现代密码学发展至今,主要分为密码编码学和密码分析学两个分支。

密码编码学

密码编码学致力于建立难以被敌手攻破的安全密码体制。

一个密码系统通常由明文空间、密文空间、密钥空间、加密算法和解密算法五部分组成。被加密的原始信息称为明文,加密后的信息称为密文。加密过程就是根据一系列的规则(称为加密算法)将明文转换为密文的过程。解密过程是加密过程的逆过程,是指根据另外一系列规则(称为解密算法),将密文转换为明文的过程。加密过程和解密过程往往需要使用一对密钥进行控制,分别称为加密密钥和解密密钥。

在密码编码学中,根据整个协议中的加密密钥和解密密钥是否相同可以将密码编码学算法划分为对称密码学算法公钥密码学算法

对称密码学算法的出现早于公钥密码学算法。在对称密码体制中,通信双方使用同一个密钥实现加密和解密。因此,对称密码体制也被称为是单钥密码体制。对称密码体制的安全性依赖于密钥的保密性,而不是算法的保密性。也就是说,即使加密算法是公开的,只要密钥没有公开,信息的保密性依然可以保证。

流密码和分组密码是对称密码算法中最常见的两类算法流密码采用逐字加密方式完成加密分组密码首先将信息分组,每个分组中包含多个字符,然后逐组进行加密

对称加密体制中最大的问题是密钥的分发和管理非常复杂且实施代价很高。尤其是大型网络中,当用户较为分散且数量较多时,对称加密体制的开销极高。但是,对称加密算法由于加密速度快,适用于高速保密通信

在公钥密码学算法中,通信双方使用不同的密钥分别实现加密和解密。因此,公钥密码体制也被称为是双钥密码体制或非对称密码体制。用于加密的密钥被称为公钥,是公开的。用于解密的密钥被称为私钥,是需要保密的。公钥密码学算法的安全性要求之一是通过公钥计算出私钥在计算上是困难的。相对于对称加密体制,公钥加密体制在密钥的分配和管理上容易得多。但是,由于公钥加密体制多数使用复杂的数学计算,多数公钥密码学算法的运算效率远远低于对称密码学算法的运算效率

密码分析学

密码分析学主要是研究如何根据已经收集到的信息获得明文。对密码进行分析的尝试称为攻击。当前,攻击的方法主要有穷举攻击、统计分析攻击和数学分析攻击三类。根据密码分析时所利用的数据来源不同,也可以将攻击分为唯密文攻击、已知明文攻击、选择明文攻击和选择密文攻击四类。

现代密码学已经同生物学、量子学等学科有效结合,形成了生物特征密码学、视觉密码学、量子密码学等多个子学科。