密码学基本概念与古典密码

Posted owhaaatsup

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了密码学基本概念与古典密码相关的知识,希望对你有一定的参考价值。

注:内容来自《密码编码学与网络安全——原理与实践(第七版)》,部分页码已标出。

复习大纲

密码算法与协议的四个主要领域:

  • 对称加密
  • 非对称加密
  • 数据完整性算法
  • 认证协议

密码学基本概念(第1章)

  • 网络和Internet安全涉及阻止、防止、检测、纠正信息传输中出现的安全违规行为的措施。
  • 计算机安全:对于一个自动化的信息系统,采取保护措施确保信息系统资源的完整性、可用性和保密性

CIA三元组+AA 【P3】

  • 保密性 Confidentiality:授权用户才可获得信息(缺失:信息非授权泄露)。
  • 完整性 Integrity:信息不被非授权改变、操纵(缺失:非授权修改和毁坏)。
  • 可用性 Availability:不能拒绝服务(缺失:对系统访问中断)。
  • 真实性 Authenticity:实体、信息的真实性可被验证。
  • 可追溯性 Accountability:实体的行为可唯一追溯到该实体。

OSI安全框架【P6】

安全攻击

任何危及信息系统安全的行为。

威胁:破坏安全的潜在可能
攻击:来源于智能威胁,对系统安全的攻击

  • 分为被动攻击和主动攻击(根据是否影响或改变系统运行区分)
    • 被动攻击:窃听、检测——重在预防而非检测
      • 信息泄露
      • 流量分析
    • 主动攻击:对数据流进行窜改或产生假的数据流
      • 拒绝服务:阻止或禁止对通信设施的正常使用或管理。

        对系统可用性进行攻击

      • 消息修改:未经授权地将截获的信息再次发送,或延迟消息的传输,或改变消息的顺序。

        对完整性进行攻击

      • 伪装:某实体假装成其他实体。

        对真实性进行攻击

      • 重放:攻击者未经授权地将截获的信息再次发送。

安全机制

用来检测、阻止攻击或从攻击状态恢复到正常状态的过程。
共同点:密码技术
安全机制的四个方面:

  1. 加密、认证算法
  2. 用于算法的秘密信息:密钥,秘密参数等
  3. 秘密信息的分发与共享:存在秘密信息分发的安全通道(多数情况通过可信第三方来实现)
  4. 使用加密算法和秘密信息以获得安全服务所需要的协议:解决如何安全通信加密和认证协议

安全服务

  • 加强数据处理系统和信息传输的安全性的一种处理过程或通信服务,目的在于利用一种或多种安全机制进行反攻击。
  • 是一种由系统提供的对系统资源进行特殊保护的处理或通信服务;安全服务通过安全机制来实现安全策略。

5种安全服务对应CIA+AA五元组

  • 数据保密性:防止消息内容泄露或被窃听。(防止被动攻击)
  • 认证:发出消息者的身份认证。(保证通信真实性)
  • 数据完整性:用于消息流:保证所接收的消息未经复制、插入、篡改、重排、或重放。即保证接收的消息和发送的消息完全一样。

    注意:满足完整性业务,不一定同时满足认证性,因为敌手可以假冒合法用户发送满足完整性的数据包

  • 不可否认性:一个消息发出后,接收者能够证明消息的真实来源,发送者能够证明接收者确已接收了该消息。
  • 访问控制:防止对网络资源的非授权访问,控制的实现方式是认证,检查用户是否有对某一资源的访问权。

传统加密技术(第3-5章)

对称密码模型

传统密码/常规密码/私钥密码/单钥密码

对称密码的基本特征:发送方和接收方共享同一个密钥。

五个基本成分

  • 明文

  • 加密算法

  • 密钥

    可能的取值叫密钥空间。

  • 密文

  • 解密算法

密码编码学

转换明文为密文的运算

  • 代替:明文中的每个元素映射为另一元素。将明文字母替换成其他字母、数字或符号的方法。
  • 置换:明文中的元素重新排列。

对称密码和公钥密码对比

  • 对称密码:
    • 发送方和接收方使用相同密钥
    • 优点:运行速度快,具有可靠的保密强度
    • 不足:不便密钥交换和管理
    • 单钥密码体制(包括分组、序列密码)都是基于计算安全性的
  • 公钥密码:
    • 收发双方使用不同密钥
    • 优点:便于密钥交换和管理,还可用于消息认证(数字签名)
    • 不足:运行速度缓慢,其安全性所依赖的数学难题的复杂性一般都未能证明
    • 双钥密码体制是基于可证明安全性的

处理明文的方法

  • 分组(块)密码:按组处理,每次处理一组元素

    特点:适合数据库加密,组内有错误扩散;一般用于公开的理论研究

  • 序列(流)密码:连续处理输入元素,每次输出一个元素

    特点:加解密速度快,无错误扩散;一般用于实际的安全产品

密码分析学

典型目标:得到密钥 ,而不是仅仅得到单个密文对应的明文。

攻击传统密码体制的一般方法

  • 密码分析:利用算法的性质和明文的特征或某些明密文对
  • 穷举攻击:对一条密文尝试所有可能的密钥,直到把它转化为可读的有意义的明文

攻击类型

代替密码

代替密码包括:单表代替、多表代替、转轮密码

单表代替

每个明文字母映射到一个不同的随机密文字母 ,这种方法称为单表代替密码。

Caesar密码【P52】

加法代替密码/移位代替密码

  • 加密: C = E ( k , p ) ≡ ( p + k )   ( m o d   26 ) C=E(k,p)\\equiv (p+k)\\ (mod\\ 26) C=E(k,p)(p+k) (mod 26)
  • 解密: p = D ( k , C ) ≡ ( C − k )   ( m o d   26 ) p=D(k,C)\\equiv (C-k)\\ (mod\\ 26) p=D(k,C)(Ck) (mod 26)
采样密码【P53】

乘法代替密码

  • 加密: E k ( m ) = m k ≡ C ( m o d   q ) E_k(m)=mk\\equiv C(mod\\ q) Ek(m)=mkC(mod q)
  • 解密: D k ( C ) = C × k − 1 ≡ m ( m o d   q ) D_k(C)=C\\times k^{-1}\\equiv m(mod\\ q) Dk(C)=C×k1m(mod q)
仿射密码【P53】

以上两种的结合

Playfair密码【P55】

多字母代替密码


单表代替密码的缺陷

多表代替

目的:降低单表代替密码中的字母统计规律

Hill密码【P57】


  • 明文1个字母改变,密文m个字母受到影响。

  • 抗唯密文攻击能力强,不能抗已知明文攻击。

Vigenere密码【P60】



Vernam密码【P61】

一次一密

存在缺陷

置换密码

置换:对明文字母的某种置换

栅栏密码

栅栏技术:按对角线的顺序写出明文,以行的顺序读出作为密文

以上是关于密码学基本概念与古典密码的主要内容,如果未能解决你的问题,请参考以下文章

密码学浅尝辄止

密码学浅尝辄止

密码学浅尝辄止

[CTF从0到1学习] 二CTF 密码学

[CTF从0到1学习] 二CTF 密码学

[CTF从0到1学习] 二CTF 密码学