密码学简介

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

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

  • 单表替换加密
  • 多表替换加密
  • 奇奇怪怪的加密方式

而现代密码学则起源于 20 世纪末出现的大量相关理论,这些理论使得现代密码学成为了一种可以系统而严格地学习的科学。现代密码学又可以简单的分为以下几个方面

  • 对称密码,以 DES,AES,RC4 为代表
  • 非对称密码,以 RSA,椭圆曲线加密为代表
  • HASH,以 MD5,SHA1,SHA512 等为代表
  • 数字签名,以 RSA 签名,ElGamal 签名,DSA 签名为代表

其加密方式主要有两种方式

  • 块加密
  • 流加密

一般来说,密码设计者的基本想法是确保密码框架的

  • 保密性
  • 完整性
  • 可用性
  • 不可否认性

其中,前三者又称为 CIA 三元组。

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

一般来说,我们都会假设攻击者知道要攻破的密码体制,一般来说会有如下几种攻击类型

  • 唯密文攻击
  • 已知明文攻击
  • 选择明文攻击
  • 选择密文攻击

results matching ""

    No results matching ""