网工干货知识

超全学习笔记
当前位置:首页 > 干货知识

密码学及其类型

更新时间:2026年03月27日   作者:spoto   标签(Tag):

密码学是一门利用数学技术来保护信息安全的科学,其目的是确保信息的保密性、完整性和真实性。它可以将可读的数据转化为不可读的形式,从而防止未经授权的访问和篡改行为。

  • 使用算法和密钥将明文转换为密文。
  • 确保信息的保密性、完整性、真实性以及不可抵赖性。
  • 用于安全的通信、数字签名、密码以及在线交易。

这些算法被用于加密密钥的生成、数字签名以及数据验证,从而保护数据的隐私性。同时,它们也被用于互联网上的网页浏览,以及保护诸如信用卡和借记卡交易等机密信息的安全。

密码学的特性/特点

密码学所具有的那些特性,使其成为各种应用中受欢迎的选择。这些特性可以列举如下:

  1. 保密性:这些信息只能被其 intended 的那个人访问,除了他之外,没有任何其他人可以访问这些信息。
  2. 不可否认性:信息的创建者/发送者无法否认自己后来确实想要发送该信息这一意图。
  3. 诚信:如果不在存储过程中对信息进行修改,或者信息在发送者和接收者之间传输时发生变化,那么这种修改是会被检测到的。也就是说,任何对信息的修改都会被及时发现。
  4. 适应能力:密码学不断进化,以跟上安全威胁和技术发展的步伐。
  5. 互操作性:密码学使得不同系统和平台之间能够实现安全的通信。
  6. 认证:发送者和接收者的身份已经得到确认。同时,信息的发送和接收地点也已经被确定。

密码学的工作原理

众所周知,密码学技术用于将明文转换为密文。这一过程是通过密码密钥来完成的。实际上,密码密钥本质上是一串字符,它被用来对数据进行加密和解密操作。

在这里,

“Hello”是一段明文,在加密密钥的帮助下,它被转换为密文“jknnq”。之后,再将其解密回“Hello”。
  • 明文被创建出来。
    原始的可读取信息或数据。
  • 选择了一个加密算法。
    例如:AES、RSA、SHA-256等。
  • 已经应用了密钥。
    这个关键参数决定了加密或哈希运算的执行方式。
  • 加密过程可以将明文转换为密文。
    这些数据对于未经授权的用户来说是无法被读取的。
  • 密文被安全地传输或存储起来。
    即使被截获了,如果没有正确的密钥的话,也无法理解其中的内容。
  • 解密过程是将密文转换为明文。
    接收器使用正确的键位(对于对称加密来说,使用的是相同的键位;而对于非对称加密来说,则使用不同的键位)。
  • 可以使用完整性检查来发挥作用。
    哈希算法可以确保消息没有被篡改。

加密技术的类型

密码学可以分为三种类型:对称密钥密码学、非对称密钥密码学以及哈希函数。下面将对这三种类型进行详细的说明:

对称密钥加密

对称密钥加密算法这是一种加密系统,其中消息的发送者和接收者都使用同一个共享密钥来加密和解密消息。

  • 对称密钥加密方式更为快速且简单,但问题在于,发送方和接收方必须以某种方式安全地交换密钥。
  • 目前最受欢迎的对称密钥加密系统包括数据加密系统(DES)和高级加密系统(AES)。
对称密钥加密技术

示例:

数据加密标准(DES)

DES(数据加密标准)是一种较老的加密算法,它用于将64位的明文数据转换为48位的加密后的密文。

  • 它使用对称密钥,也就是说,加密和解密都使用相同的密钥。
  • 按照当今的标准来看,它已经有些过时了。不过,它仍然可以作为学习新型加密算法的基础。

DES加密与解密工具的示例:

高级加密标准(AES):

AES是一种常用的加密算法,它使用相同的密钥来进行加密和解密操作。

  • 这是一种对称的块密码算法,其块大小可以是128位、192位或256位。
  • AES算法被广泛认为是一种用于替代DES(数据加密标准)算法的加密算法。

AES加密和解密工具的示例。

2. 哈希函数

哈希函数不需要密钥。相反,它们使用数学算法来将任意长度的消息转换为固定长度的输出结果,这个输出结果被称为哈希值或摘要。

哈希函数被设计为单向的,也就是说,原始的输入信息无法从输出的结果中推导出来。

下面列出了一些使用最广泛的哈希函数:

SHA-1:

  • SHA-1指的是安全哈希算法1。
  • 这是一种由美国国家安全局开发的加密哈希函数。该函数于1995年由美国国家标准与技术研究院正式发布。
  • 该算法的设计目的是确保数据的完整性,它可以将任何输入数据转换为固定大小的160位(即20字节)哈希值。
SHA-1

SHA-1哈希生成器的示例

示例/例子

SHA-256:

  • SHA-256算法属于SHA 2系列算法的一部分。
  • 它可以从任何长度的输入数据中生成固定的256位(32字节)哈希值。
  • 由于其强大的性能以及能够抵抗各种已知的密码学攻击,它被广泛应用于各种安全领域,比如数据完整性验证、数字签名、区块链技术以及密码哈希等。
SHA-256
例如:
数据来源:思博网络
SHA256:f8d59362da74ffe833332dc20508f12de6da6a9298c98b3b42873e7298fced78

MD5:

  • MD5可以将任意大小的输入数据转换为128位的哈希值(即一个由32个字符组成的十六进制数)。
  • MD5最初是为了验证数据的完整性而设计的。后来,它被广泛应用于校验和、数字签名以及文件验证等领域。
MD5

MD6:

  • MD6是一种加密哈希函数,由Ronald Rivest及其团队在2008年设计出来。它旨在作为MD5和MD4算法的替代方案。
  • 它被设计成非常安全且适用于现代计算系统,包括多核处理器。
MD6哈希算法

MD6哈希生成器的示例

示例/例子

3. 非对称密钥加密技术

在非对称密钥加密中,使用一对密钥来进行信息的加密和解密。发送方的公钥用于加密信息,而接收方的私钥则用于解密信息。公钥和私钥是分开的。即使所有人都知道公钥,但只有持有私钥的接收方才能成功解密信息。目前最流行的非对称密钥加密算法就是……RSA算法。

非对称密钥加密

示例:

RSA(Rivest-Shamir-Adleman算法):

RSA是一种基本的不对称加密算法,它使用两种不同的密钥来进行加密和解密操作。RSA算法基于块密码的概念,它将明文转换为密文,反之亦然。

RSA中的加密技术

示例:

选择 p = 3 和 q = 11。
计算 n = p × q = 3 × 11 = 33
这个“n”是公钥的一部分,同时它也用于加密和解密过程中。
计算机计算欧拉函数φ(n)的方法
ϕ(n) = (p−1)(q−1) = (3−1)(11−1) = 2 × 10 = 20
请选择满足 1 < e < φ(n) 的e值,并且e与φ(n)互质。这里,我们取e=7。
需要计算出一个满足条件的 d 值,使得 (d * e) % φ(n) = 1。其中一个解为 d = 3,因为 (3 * 7) % 20 = 1。
公钥为 (e, n) = (7, 33)。
私钥为 (d, n) = (3, 33)。
加密:
假设消息M的值为4(且必须小于n)。
密文 C = M^e mod n = 4^3 mod 33 = 64 mod 33 = 31
加密后的消息 = 31
解密:
M = C^d mod n = 31^7 mod 33
使用模块化指数模型
  • 31的平方等于961。当用33去除961时,得到的余数是4。
  • 31^4 = (31^2)^2 = 16
  • 31^7 = 31 × 31^2 × 31^4 = 31 × 243 × 1,561 = 1984 mod 33

现在,1984除以33的结果等于4。

解密后的消息 = 4

ECC(椭圆曲线密码学):

椭圆曲线密码学是一种非对称加密算法。与RSA相比,其使用的密钥规模更小,因此能够提供更强的安全性。这种加密方式既高效又快速,非常适合那些资源有限的设备,比如智能手机、物联网设备以及区块链钱包。由于其轻量级且功能强大的特点,椭圆曲线密码学被广泛用于TLS/SSL等安全通信协议以及加密货币领域。

椭圆曲线

方程式:

我们使用标准的椭圆曲线方程:y^2 = x^3 + ax + b (mod p)
让我们来选一个吧:
  • 素数域:p = 23
  • 曲线参数:a = 1,b = 1

因此,曲线可以表示为:y² ≡ x³ + x + 1 (mod 23)

密码学的应用

密码学在现代社会中有着广泛的应用,而且这一技术仍在不断发展和进步。以下是密码学的一些常见应用:

应用程序/软件

密码安全性在存储密码之前,会对其进行哈希处理,这样可以防止即使数据库被泄露时,密码仍然能够被获取。

2. 数字货币比特币和其他加密货币利用密码学技术来确保交易的完整性和交易参与者的身份安全性。

3. 安全的网页浏览(HTTPS)SSL/TLS协议能够加密浏览器与服务器之间的通信内容。

4. 电子签名:使用公钥加密技术生成的法律上有效的数字签名。

5. 认证系统用于银行登录、安全网络以及访问控制系统中。

6. 端到端加密像WhatsApp和Signal这样的消息应用可以确保只有预期的用户能够阅读这些消息。

经典密码学

密码是一种用于将可读数据(明文)转换为不可读数据(密文)的方法。这样,只有授权人员才能理解原始内容。

密码/加密

示例/例子

  • 军事/间谍活动——早期的秘密通信方式(例如,Enigma机)
  • CTF/Hack Challenge——这些谜题通常会使用经典加密算法来隐藏标志。
  • 遗留恶意软件——通过简单的 XOR 或 Caesar 密码来隐藏恶意程序的执行过程。

密码的类别:

主要有两种类型的经典密码。

替换密码使用定义的规则,将字符替换为其他字符。

示例/例子:

在“Caesar Cipher”这种加密方式中,A对应D,B对应E,以此类推。

实际应用场景简单的密码混淆、CTF挑战以及谜题挑战。

2. 转置密码:请重新排列这些字符的顺序,但不要改变它们的原始顺序。

例如:

“Rail Fence Cipher”是一种密码方式,其中字符以之字形排列,并且需要逐行进行阅读。

实际应用场景:这种编码方式的目的是为了迷惑读者。

经典密码的类型

经典密码学中有一些基本类型的密码。

密码名称描述/说明现实生活中的/CTF使用
凯撒密码每个字母都发生了固定的位移。隐藏在简单的恶意软件、游戏或电子邮件中的信息。
维吉纳密码使用关键词来替换字母;这种方式比凯撒密码更安全。常用于古老的秘密消息和CTF谜题之中。
阿特巴什密码A → Z, B → Y… 字母顺序被颠倒了。这种技巧在基础的隐藏/加密挑战中经常会出现。
ROT13一个移位量为13的凯撒密码。用于隐藏剧透内容,或者对网络上的信息进行轻微的混淆处理。
栅栏密码一种通过重新排列字符顺序来实现加密的密码算法。非常适合用于简单的谜题和密码隐藏功能。

隐写术

隐写术是一种隐藏信息的技术。它指的是将信息隐藏在普通、不引人注目的文件或消息中,以避免被发现。这些隐藏的信息可以在接收端被提取出来。通常,隐写术会与加密技术结合使用,从而为隐藏的数据提供额外的安全保障。借助隐写术,我们可以隐藏各种数字内容,比如文本、图像、视频等。

常见的隐写技术类型:

以下是关于隐写技术的各种类型:

图像加密技术(LSB)

  • 数据隐藏在像素的最低有效位中。
  • 实际应用场景恶意软件通信、CTF挑战。

              马上抢免费试听资格
意向课程:*必选
姓名:*必填
联系方式:*必填
QQ:
思博SPOTO在线咨询

上一篇: 网络跟踪/网络骚扰

下一篇: Kerberos

相关资讯

即刻预约

免费试听-咨询课程-获取免费资料