嫦娥奔月是我们熟悉的神话传说。接下来,我们将通过嫦娥和后羿的神话故事与您分享信息安全技术的基本知识。假设嫦娥想告诉后羿他在 "9一起去看电影,月20日一起看电影" 消息,让这个消息通过网络发给后羿,我们如何保证消息的安全传递?
首先,我们需要考虑的问题是:
- 如何保证信息安全,只有后羿能解密,读取加密内容?
- 如何确保消息是完整的,不能被篡改,如果日期或地点被改变,后羿找不到嫦娥怎么办?
- 如何保证消息是嫦娥发的,而不是玉兔调皮冒充嫦娥发的?
网络可以作为信息传输的媒介,但如果所有信息都以明确的方式传输,如果我们的网络被监控或劫持。如果我们的聊天记录和电话信息被泄露,我们的生活将失去隐私;如果我们的账户密码被盗,我们的财产安全将得不到保障。因此,也有必要学习基本的安全知识。
对称加密
常用的对称加密算法:
1.DES:替换 位移,56位密钥,64位数据块,速度快,密钥容易生成。
2.RC-5: RSA 数据安全公司的许多产品都使用 RC-5
3.IDEA 算法: 128 位密钥,64位数据块DES加密性好,计算机功能要求低,PGP。
4.AES 算法:先进的加密标准,又称 Rijndael 加密法,是每个政府采用的一种区块加密标准。
缺陷:
特点:加密解密钥相同
非对称加密
常用的非对称加密算法有:
1.RSA :2048 位(或1024位)密钥,计算量大,难以破解
2.Elgamal :安全性取决于计算机上有限域的离散对数
3.ECC:椭圆曲线算法
缺点:加密速度慢 特点:
1.公钥可以公开,私钥不能公开。
2.私钥加密解密,私钥加密解密。
image.png
消息摘要
信息摘要:单向散列函数的散列值。
常用的新闻摘要算法有 MD5,SHA 等,广泛应用于市场上MD5,SHA 算法的散列值长度分别为 128 和 160位,由于SHA 通常使用较长的加密长度,因此安全性高于 MD5。
例如,我们在某个网站下载 “镜像文件”上面也会给 MD5 摘要值。我们可以通过文件下载 MD5 值和官方给出的 MD5 值进行比较。检查文件是否完整正确,避免安装错误。
数字签名
数字签名(也称为公钥数字签名)是只有信息发送者才能生成的数字串,这也是信息发送者发送信息真实性的有效证明。它是一种普通的物理签名,类似于写在纸上,但使用公钥加密技术来识别数字信息。一套数字签名通常定义两种互补操作,一种用于签名,另一种用于验证。数字签名是非对称密钥加密技术和数字摘要技术的应用。
我们还是用嫦娥告诉后羿,“9.20 我们去看电影”以数字签名过程为例。整个过程如下图所示:
图示解读:
1.嫦娥需要通过网络传递给后羿 “9.20 我们去看电影” 这个消息首先生成加密消息“V7btGj2ZhQsdada /..... T1Ram6AzforA==”,发送密文;
2.然后在原文中生成 消息摘要 “2d43abe9ec71c90952101bc0d8241fba” ;
3.最后,嫦娥通过 自己的私钥 加密生成数字签名。“EDadada3432f#CC1”。然后发送数字签名。
4.后羿收到秘密文本后解密,然后获得原始文本,计算摘要信息,然后通过数字签名解密摘要信息。最后,比较两个摘要信息。如果这个消息是嫦娥发送的(防止抵制),则该消息没有被篡改。
5.在这个例子中,我们将新闻加密、新闻摘要、数字签名等技术联系起来,实现新闻安全传输。
综合实践
安全邮件系统的设计要求如下:邮件通过加密传输,邮件的最大附件可达 2G,如果邮件被三方截获,三方不能篡改,发送者不能否认。
答:参考上一个案例即可实现。
本文转载自微信公众号「运维开发故事」