您现在的位置是:首页 > 学习笔记 > 密码学密码学
密码
冰山2019-09-01【密码学】人已围观
简介1. 密码
1.1 发送者、接收者和窃听者
1.2 加密和解密
1.3 加密实现
1.3.1 密码算法
1.3.2 加密、解密及秘钥
1.4 凯撒密码
1.4.1 凯撒密码的加密
1.4.2 凯撒密码的解密
1.5 密码信息安全常识与威胁
1.5.1 密码信息安全常识
1. 密码
1.1 发送者、接收者和窃听者
请想象一个Alice向Bob发送电子邮件的场景。在这个场景中,发出邮件的Alice称为 发送者(sender),而收到邮件的Bob则称为 接收者(receiver),被发送的信息有时也统称为 消息(message)。

邮件是通过互联网从Alice的计算机发送到Bob的计算机的。在发送邮件时,邮件会经过许多台计算机和通信设备进行中转,在这个过程中,就存在被恶意窃听者(eavesdropper)偷看到的可能性。
这时一位靓仔Eve(窃听者)看到邮件的内容

注意这里Eve(窃听者)并不一定是人类,有可能是安装在通信设备上的某种窃听器,也可能是安装在邮件软件和邮件服务器上的某些程序。尽管邮件内容原本应该只有发送者和接收者两个人知道,但如果不采取相应的对策,就存在被第三方知道的风险。
1.2 加密和解密
Alice不想让别人看到邮件的内容,于是她决定将邮件进行加密(encrypt)后再发送出去。加密之前的消息称为明文(plaintext),加密之后的消息称为密文(cipher-text)。我们看到明文可以理解其中的含义,而看到密文则无法理解其中的含义。
明文加密之后就会变成看不懂的密文,如下图:

Bob收到了来自Alice的加密邮件,但作为接收者的Bob也是无法直接阅读密文的,于是Bob需要对密文进行解密(decrypt)之后再阅读。解密就是将密文恢复成明文的过程。
密文解密之后就变成了原来的明文,如下图:

采取这样的方式之后,将消息加密后发送的话,即使消息被窃听,窃听者得到的也只是密文,而无法得知加密前的明文内容,将消息加密后发送, 窃听者只能得到密文。

在上述场景中,Alice将邮件进行加密,而Bob则进行解密,这样做的目的,是为了不让窃听者Eve读取邮件的内容Alice和Bob通过运用密码(cryptography)技术,保证了邮件的机密性(confidentiality)。
1.3 加密实现
1.3.1 密码算法
用于解决复杂问题的步骤,通常称为算法(algorithm)。从明文生成密文的步骤,也就是加密的步骤,称为“加密算法",而解密的步骤则称为“解密算法"。加密、解密的算法合在一起统称为密码算法。
1.3.2 加密、解密及秘钥
密码算法中需要密钥(key)。现实世界中的“钥'',是像 这样的形状微妙而复杂的小金属片。然而,密码算法中的密钥,则是203554728568477650354673080689430768这样的一串非常大的数字。

无论是在加密时还是在解密时,都需要知道密钥。正如我们的日常生活中,保险柜的钥匙可以保护保险柜中存放的贵重物品一样,密码中的密钥可以保护你的重要数据,即使保险箱再坚固,如果钥匙被盗, 里面的贵重物品也会被盗,同样地我们也必须注意不要让密码的密钥被他人窃取。
1.4 凯撒密码
下面就来看一下早期的密码算法,,并更形象地解释上面的加密、解密及秘钥。
恺撒密码(Caesar cipher)是一种相传尤利乌斯·恺撒曾使用过的密码,恺撒于公元前100年左右诞生于古罗马,是一位著名的军事统帅,恺撤密码是通过将明文中所使用的字母表按照一定的字数“平移”来进行加密的。
为了可以更加形象地表达讲解方便,我们用小写字母(a,b,c,…)来表小明文,用大写字母(A,B,C,...)来表示密文。
微信扫一扫~
支付宝扫一扫~
很赞哦! ()
上一篇:返回列表
随机图文
消息认证码
1.消息认证码 1.1 什么是消息认证码 1.2 消息认证码的使用步骤 1.3 HMAC 1.3.1 HMAC介绍 1.3.2 Go中对HMAC的使用 1.4 消息认证码的密钥配送问题 1.5 消息认证码无法解决的问题 1.6 对第三方证明 1.7 防止否认 1.8总结单向散列函数
1. 单向散列函数 1.1 定义 1.2 关于术语 1.3 单向散列函数的性质 1.4 单向散列函数的实际应用 1.4.1检测软件是否被篡改 1.4.2消息认证码 1.4.3数字签名 1.4.4伪随机数生成器 1.4.5一次性口令 1.5 常用的单向散列函数 1.5.1 MD4、MD5 1.5.2 Golang中使用MD5 1.5.3 SHA-1、SHA-224、SHA-256、SHA-384、SHA-512标准分组密码
1. 分组密码的模式 1.1分组密码 1.2模式 1.3明文分组和密文分组 2.主要模式 2.1ECB 模式 2.2XOR运算 2.3CBC模式 2.4CFB 模式 2.5OFB 模式 2.6CTR 模式 2.7总结证书
1.证书 1.1 证书的应用场景 1.2 证书标准规范X.509 1.2.1 证书规范 1.2.2 证书格式 1.2.3 CA证书 1.3 公钥基础设施(PKI) 1.3.1 什么是公钥基础设施 1.3.2 PKI的组成要素 1.3.3 各种各样的PKI