Skip to content Skip to footer

密码学简介¶

密码学简介¶ 密码学(Cryptography)一般可分为古典密码学和现代密码学。

其中,古典密码学,作为一种实用性艺术存在,其编码和破译通常依赖于设计者和敌手的创造力与技巧,并没有对密码学原件进行清晰的定义。古典密码学主要包含以下几个方面:

单表替换加密(Monoalphabetic Cipher) 多表替换加密(Polyalphabetic Cipher) 奇奇怪怪的加密方式 而现代密码学则起源于 20 世纪中后期出现的大量相关理论,1949 年香农(C. E. Shannon)发表了题为《保密系统的通信理论》的经典论文标志着现代密码学的开始。现代密码学主要包含以下几个方面:

对称加密(Symmetric Cryptography),以 DES,AES,RC4 为代表。 非对称加密(Asymmetric Cryptography),以 RSA,ElGamal,椭圆曲线加密为代表。 哈希函数(Hash Function),以 MD5,SHA-1,SHA-512 等为代表。 数字签名(Digital Signature),以 RSA 签名,ElGamal 签名,DSA 签名为代表。 其中,对称加密体制主要分为两种方式:

分组密码(Block Cipher),又称为块密码。 序列密码(Stream Cipher),又称为流密码。 一般来说,密码设计者的根本目标是保障信息及信息系统的

机密性(Confidentiality) 完整性(Integrity) 可用性(Availability) 认证性(Authentication) 不可否认性(Non-repudiation) 其中,前三者被称为信息安全的 CIA 三要素 。

而对于密码破解者来说,一般是要想办法识别出密码算法,然后进行暴力破解,或者利用密码体制的漏洞进行破解。当然,也有可能通过构造虚假的哈希值或者数字签名来绕过相应的检测。

一般来说,我们都会假设攻击者已知待破解的密码体制,而攻击类型通常分为以下四种:

攻击类型 说明 唯密文攻击 只拥有密文 已知明文攻击 拥有密文与对应的明文 选择明文攻击 拥有加密权限,能够对明文加密后获得相应密文 选择密文攻击 拥有解密权限,能够对密文解密后获得相应明文 Note

注:之前在这里曾写过这些攻击常见的场景,随着不断地学习,渐渐意识到这些攻击类型侧重描述攻击者的能力,有可能适用于各种各样的场景。故进行修正。

这里推荐一些资料

可汗学院公开课 深入浅出密码学——常用加密技术原理与应用 https://cryptopals.com/,一堆密码学的练习题目。 Note

推荐在看完公开课的情况下,以及简单看看电子书的情况下在考虑是否要购买书,因为书买回来一般都被闲置起来了。

参考¶ 维基百科-密码学 Info

本节大部分定义与例子参考了维基百科。

Copyright © 2088 2006年德国世界杯_世界杯歌曲凯歌 - lt795.com All Rights Reserved.
友情链接