一文读懂密码基础,从零基础到精通,收藏这篇就够了!

佛系随性笔记,记录最好的自己!

个人水平比较有限,每篇都尽量以白话+图文的方式去说明原理。

01

什么是密码?

密码就是一种用于保护信息安全、确保信息机密性和完整性的加密方式。从广义上讲,密码可以是字符、数字、符号或它们的组合,通过特定的规则或算法进行变换,只有掌握密钥的人能够理解其真实含义。

举两个栗子:

1、藏头诗:引用《水浒传》中智取生辰纲一节,其中吴用通过一首藏头诗暗示了行动计划:

芦花丛中一扁舟,``俊杰黄昏独自游。``义士手提三尺剑,``杀人放火不等闲。



这里的藏头诗"芦俊义杀人"是一个暗号,暗示了行动计划的关键人物和行动内容。

2、阿塔兰塔密码:是一种古老的希伯来字母替换密码,其中明文的每个字母被其在字母表中的反向字母替换。例如,字母’A’会被替换为’Z’,‘B’会被替换为’Y’,依此类推。

H -> Z``   ``E -> I``   ``L -> S``   ``L -> S``   ``O -> N



这里加密后会显示"ZISSN",解密则显示"HELLO"。

02

密码学的基础概念

密码学的目标:保密性、完整性、可用性、认证性和不可否认性等核心目标。

**明文:**就是没加密的信息,能被直接理解读取的。(例如:张大炮寄快递)

**密文:**就是加密了,不能理解读取的。(例如:#¥%)

**加密:**就是将明文变成密文的一个过程,通过算法和密钥实现(发快递打包)

**解密:**就是将密文变成明文的一个过程,通过算法和密钥解密(取快递拆箱)

**密钥:**就是加解密都需要用到的一个参数。(拆快递的刀)

**对称加密:**就是使用同一个密钥对信息进行加解密。

**非对称加密:**使用一对密钥,公钥和私钥,公钥用于加密,私钥用于解密。(A给B发信息,B把自己的公钥给A,A用公钥加密信息发给B,B用自己的私钥解密)

Hash、数字签名、数字证书、随机数生成器,详解在后方。

03

对称加密

对称加密算法可以分为块密码和流密码两种:

块密钥示意-图1

**(一)块密码(block cipher):**单次只能处理特定长度的数据块。一个块的长度叫块长度(也叫分组长度)。

块(也叫分组)密码算法只能加密固定长度的分组,如果需要加密的明文长度,超过块密码的分组长度,就需要对块密码算法进行迭代,将一段很长的明文全部加密。而块与块之间进行迭代的方法就称为块密码的模式(mode)。常用模式有:ECB、CBC、OFB、CFB、CTR等。这边就不详细介绍了,自行了解下,比较复杂和繁琐。

常见的有DES、3DES、SM4、IDEA、AES等等。

主要适用在硬盘加密和数据库加密等、安全性比流密码高,效率偏低。

流密码示意-图2

**(二)流密码(stream cipher):**对数据进行连续处理的一类密码算法。一般以1bit、8bit或32bit为单位进行加密和解密。

常见的有RC4、ZUC(祖冲之)算法、A5等。主要适用在无线通信和VPN连接等、安全性低于块密码、效率高。

04

非对称加密

非对称加密(公钥密码),公钥密码有两个密钥,一个公钥,一个私钥,公钥常常通过数字证书等方式进行发布,私钥仅由自己控制。公钥用于加密数据或验证签名,而私钥用于解密数据或进行数字签名。

常见的有:RSA、ECC、DSA、Diffie-Hellman、ELGamal、SM2、SM3、SM4等等。

主要适用在:安全通信、数字签名、身份认证、加密货币等等,安全线高、加解密速度较慢。

非对称加密示意-图3(此图引用于网络)

例如Bob要发信息给Alice,Bob用Alice的公钥对信息进行加密,然后发给Alice,Alice用自己的私钥进行解密。

05

Hash算法

Hash示意-图4

Hash算法(也叫散列、杂凑算法)是一种将任意长度的输数据通过特定的函数变换为固定长度输出的算法。这个输出值通常被称为哈希值或散列值,它是对输入数据的一种摘要或标记。

常见的有:MD5、SHA-1、SHA-2、SHA-3、SM3、SHTP等。

主要适用在:数据校验、数字签名、密码存储等等,安全性、完整性及加解密速率都相对较高。

MD5加密示意-图5

**举个例子:**Hash算法就像是给数据制作一个独一无二的“指纹”。无论你的数据多长,Hash算法都能快速地把它变成一个固定长度的摘要,这个摘要就是数据的“指纹”。这个过程有个特点,就是“指纹”一旦生成,就很难从“指纹”反推出原始数据是什么,这叫“单向性”。而且,即使是数据的微小变化,也会导致“指纹”大变样,这叫“敏感性”。

06

数字签名

数字签名主要用于验证数字信息的完整性和真实性。它通过使用私钥对数据进行加密生成签名,然后使用公钥对数字签名进行解密验证。数字签名确保了只有拥有相应私钥的发送者能够创建有效的签名,而其他人可以使用公钥验证签名的真实性。这样,数字签名可以防止信息在传输过程中被篡改,并提供了发送者身份的认证。

**举个栗子:**数字签名就像是电子世界里的印章,它能证明一份文件是你发出的,而且在传输过程中没有被人改动过。在我们日常的电子交易、合同签署、电子邮件等场景中非常重要。

数字签名示意-图5

工作原理:

**1、摘要生成:**首先用一种特殊的“摘要机”(哈希算法)把文件变成一个简短的“指纹”。

**2、签名制作:**然后用你的“秘密印章”(私钥)在“指纹”上盖个章,这个章就是数字签名。

**3、发送验证:**接收者用你的“公开印章”(公钥)检查你盖的章,如果章对得上,就说明文件没被改动,真的是你发出的。

07

数字证书

数字证书一个小文件,由权威的第三方机构(CA)颁发,它帮助我们确认网络上的个人或机构的真实身份。

**举个栗子:**数字证书就像是你在网络上的身份证,支付宝做认证的时候,它告诉别人“我就是我,而且我是安全可靠的”。就像在现实生活中,当你去银行或政府机关时,需要出示身份证来证明你是谁。

工作原理:

数字证书的核心是公钥基础设施(PKI),它使用一对密钥:公钥和私钥。公钥可以公开分享,用于加密数据或验证数字签名;私钥则保密,只由证书的所有者持有,用于生成签名。当你收到一个带有数字签名的信息时,你可以使用发送者的公钥来验证这个签名,确保信息是由拥有对应私钥的人发送的,并且在传输过程中没有被篡改。

常见的场景:网站身份验证、邮件加密、电子交易、VPN等等。

08

随机数生成器

随机数生成方法大致可以分为两类:真随机数生成器(HRNG)和伪随机数生成器(PRNG)。

09

总结

在网络的世界里,我们在传递重要信件时,既要保证信件不被偷看,又要确保信件内容不被篡改。就要一步步加强对信件(数据)的保护措施。

通过这一系列的技术升级和创新,我们建立了一个既安全又可靠的网络通信环境,就像我们在网络世界里建立了一个安全的信使系统,保护了我们的秘密和信任,同时也确保了信息的真实性、完整性和安全性。

👇👇👇

网络安全学习资源分享:

给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包,需要点击下方链接即可前往获取

读者福利 | 优快云大礼包:《网络安全入门&进阶学习资源包》免费分享 (安全链接,放心点击)

👉1.成长路线图&学习规划👈

要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

在这里插入图片描述
在这里插入图片描述

👉2.网安入门到进阶视频教程👈

很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。(全套教程文末领取哈)
在这里插入图片描述

在这里插入图片描述

👉3.SRC&黑客文档👈

大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录

SRC技术文籍:

在这里插入图片描述

黑客资料由于是敏感资源,这里不能直接展示哦!(全套教程文末领取哈)

👉4.护网行动资料👈

其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!

在这里插入图片描述

👉5.黑客必读书单👈

在这里插入图片描述

👉6.网络安全岗面试题合集👈

当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。
在这里插入图片描述
所有资料共282G,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,可以扫描下方二维码或链接免费领取~

读者福利 | 优快云大礼包:《网络安全入门&进阶学习资源包》免费分享 (安全链接,放心点击)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值