必学的密码学基本知识

文章更新于:2020-04-02
注:本文参考自机械工业出版社《密码工程原理与应用》。

一、密码学研究范围

密码学是一门关于加密的艺术和科学。

1.1、密码学的作用

密码学是整个安全系统的一部分,但也是最关键的一部分。
密码学通常提供系统的访问控制功能。

1.2、木桶理论

每个安全系统的安全性都取决于它最脆弱的部分。

为了提高系统的安全性,我们需要提高系统最脆弱地方的安全性。所以我们必须先知道那些是最脆弱的。这可以用一个分层的树结构来完成,系统的每部分都是有哪些环节,同时每个环节还有哪些子环节。我们可以将这些环节组织成一颗攻击树(attack tree)

1.3、对手的设定

因为如果有攻击者想要攻击系统,它一定会攻击系统最薄弱的环节。

所以我们必须把对手设定为最狡猾的对手,这样我们才能更好的完善我们系统的安全性!

二、密码学简介

注1:密码学传统上为了方便举例称发送方为 Alice ,接收方为 Bob,窃听者为 Eve

注2:如果你查字典,你会发现密钥读(yue)。但是一些密码学的老教授读的时候会读 (yao)。所以在不致产生歧义(密钥(yue)和蜜月同音~))的时候,你读哪种应该都是可以的。

2.1、加密

  1. 为了不让我们发送的信息被窃听,我们可以选择在发送信息前,将明文 m 通过加密函数 E 用密钥 ke 进行加密成密文 c ,然后再发送。

  2. 接收方受到密文 c 以后通过解密函数 D 用密钥 ke 进行解密为明文 m ,至此,信息发送完成。

  3. 如果 Eve 进行了窃听,那么他只能得到密文,没有密钥 ke 它将无法得到明文。

  4. 那么问题来了,如何传送密钥吗?如果有安全的信道用来传送密钥,那么直接用来发送信息好了?

    这涉及到了密钥的分发问题,这里先不拓展。暂且认为 AliceBob 使用了另外一个安全的信道进行密钥的协商。比如上次见面的时候协商,或写在纸上邮寄过去等。

  5. kerckhoff原则

    加密方案的安全性必须仅仅依赖于对于密钥 ke 的保密,而不依赖于对于算法的保密。

    事实证明,不公开的算法往往是存在问题的,是经不起检验的。

2.2、认证

在上一章节中,我们解释了如何进行加密以防止 Eve 窃听到明文。但是这却防不住 Eve 对信息进行修改。

因为 Eve 既然可以窃听到信道,那么他相应的也有可能对信息进行修改、拦截删掉、或者改变几个信息的顺序,这些都是可能的。

而接收方却无法分辨信息是否被篡改。为了解决这个问题,我们引入了认证的概念。

  1. 和加密一样,认证也需要使用一个密钥,这里记为 ka

  2. 在发送信息之前,我们先使用 ka 对信息进行计算得到一个消息认证码(Mes

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值