- 密码学教程
- 密码学 - 首页
- 密码学 - 起源
- 密码学 - 历史
- 密码学 - 原理
- 密码学 - 应用
- 密码学 - 优点与缺点
- 密码学 - 现代
- 密码学 - 传统密码
- 密码学 - 加密需求
- 密码学 - 双重强度加密
- 密码系统
- 密码系统
- 密码系统 - 组成部分
- 密码系统攻击
- 密码系统 - 彩虹表攻击
- 密码系统 - 字典攻击
- 密码系统 - 暴力破解攻击
- 密码系统 - 密码分析技术
- 密码学类型
- 密码系统 - 类型
- 公钥加密
- 现代对称密钥加密
- 密码学哈希函数
- 密钥管理
- 密码系统 - 密钥生成
- 密码系统 - 密钥存储
- 密码系统 - 密钥分发
- 密码系统 - 密钥撤销
- 分组密码
- 密码系统 - 流密码
- 密码学 - 分组密码
- 密码学 - Feistel 分组密码
- 分组密码操作模式
- 分组密码操作模式
- 电子密码本 (ECB) 模式
- 密码分组链接 (CBC) 模式
- 密码反馈 (CFB) 模式
- 输出反馈 (OFB) 模式
- 计数器 (CTR) 模式
- 经典密码
- 密码学 - 反向密码
- 密码学 - 凯撒密码
- 密码学 - ROT13 算法
- 密码学 - 换位密码
- 密码学 - 加密换位密码
- 密码学 - 解密换位密码
- 密码学 - 乘法密码
- 密码学 - 仿射密码
- 密码学 - 简单替换密码
- 密码学 - 简单替换密码加密
- 密码学 - 简单替换密码解密
- 密码学 - 维吉尼亚密码
- 密码学 - 维吉尼亚密码实现
- 现代密码
- Base64 编码与解码
- 密码学 - XOR 加密
- 替换技术
- 密码学 - 单字母替换密码
- 密码学 - 单字母替换密码破解
- 密码学 - 多字母替换密码
- 密码学 - Playfair 密码
- 密码学 - 希尔密码
- 多字母替换密码
- 密码学 - 一次性密码本
- 一次性密码本实现
- 密码学 - 换位技术
- 密码学 - 栅栏密码
- 密码学 - 列置换
- 密码学 - 隐写术
- 对称算法
- 密码学 - 数据加密
- 密码学 - 加密算法
- 密码学 - 数据加密标准
- 密码学 - 三重DES
- 密码学 - 双重DES
- 高级加密标准
- 密码学 - AES 结构
- 密码学 - AES 变换函数
- 密码学 - 字节替换变换
- 密码学 - 行移位变换
- 密码学 - 列混淆变换
- 密码学 - 轮密钥加变换
- 密码学 - AES 密钥扩展算法
- 密码学 - Blowfish 算法
- 密码学 - SHA 算法
- 密码学 - RC4 算法
- 密码学 - Camellia 加密算法
- 密码学 - ChaCha20 加密算法
- 密码学 - CAST5 加密算法
- 密码学 - SEED 加密算法
- 密码学 - SM4 加密算法
- IDEA - 国际数据加密算法
- 公钥(非对称)密码学算法
- 密码学 - RSA 算法
- 密码学 - RSA 加密
- 密码学 - RSA 解密
- 密码学 - 创建 RSA 密钥
- 密码学 - 破解 RSA 密码
- 密码学 - ECDSA 算法
- 密码学 - DSA 算法
- 密码学 - Diffie-Hellman 算法
- 密码学中的数据完整性
- 密码学中的数据完整性
- 消息认证
- 密码学数字签名
- 公钥基础设施
- 散列
- MD5(消息摘要算法 5)
- SHA-1(安全散列算法 1)
- SHA-256(安全散列算法 256 位)
- SHA-512(安全散列算法 512 位)
- SHA-3(安全散列算法 3)
- 散列密码
- Bcrypt 散列模块
- 现代密码学
- 量子密码学
- 后量子密码学
- 密码学协议
- 密码学 - SSL/TLS 协议
- 密码学 - SSH 协议
- 密码学 - IPsec 协议
- 密码学 - PGP 协议
- 图像与文件加密
- 密码学 - 图像
- 密码学 - 文件
- 隐写术 - 图像
- 文件加密和解密
- 密码学 - 文件加密
- 密码学 - 文件解密
- 物联网中的密码学
- 物联网安全挑战、威胁和攻击
- 物联网安全的密码学技术
- 物联网设备的通信协议
- 常用的密码学技术
- 自定义构建密码学算法(混合密码学)
- 云密码学
- 量子密码学
- 密码学中的图像隐写术
- DNA 密码学
- 密码学中的一次性密码 (OTP) 算法
- 区别
- 密码学 - MD5 与 SHA1
- 密码学 - RSA 与 DSA
- 密码学 - RSA 与 Diffie-Hellman
- 密码学与密码学
- 密码学 - 密码学与密码分析
- 密码学 - 经典与量子
- 密码学与隐写术
- 密码学与加密
- 密码学与网络安全
- 密码学 - 流密码与分组密码
- 密码学 - AES 与 DES 密码
- 密码学 - 对称与非对称
- 密码学有用资源
- 密码学 - 快速指南
- 密码学 - 讨论
密码学 - 流密码与分组密码
流密码和分组密码是对称密钥密码的变体,主要用于加密。它是将(明文转换为密文)更直接的服务必须在大多数情况下使用。
理解本章将使您了解流密码的构成以及它们与分组密码的不同之处。
什么是流密码?
流密码是一种加密方法,它将伪随机密码数字流与明文数字组合。此伪随机加密数字流一次应用于每个二进制数字的一个比特。这种加密方法为每个密钥使用无限量的伪随机密码数字。
- 流密码使用基于密钥的算法一次对任意数量的明文进行加密,每次一个比特。
- 对于这种类型的加密安全,伪随机密码数字应该是不可预测的,并且密钥永远不应该重复使用。
- 伪随机密码数字是使用数字移位寄存器和几个随机种子值创建的。
- 流密码也称为状态密码。“状态密码”这个名称源于每个数字的加密都取决于密码的当前状态这一事实。
- RC4 流密码广泛用于软件中。
使用经过适当设计的伪随机数生成器,流密码可以与密钥长度相同的分组密码一样安全。流密码的主要优点是它使用的代码更少,并且比分组密码快。
什么是分组密码?
分组密码是一种对称加密方法,它使用共享的秘密密钥加密固定大小的数据块。在加密过程中使用明文,生成的加密文本称为密文。相同的密钥用于加密明文和密文。
分组密码处理固定大小的数据块。消息的大小通常大于块大小。因此,长消息被分成多个连续的消息块,每个块由密码单独处理。
分组密码使用共享的秘密密钥一次加密和解密其输入一个块,而不是一次一个比特。由于块的大小是固定的,因此不需要填充。此算法是对称的。加密使用公共密钥将文本输入转换为密文(加密文本)。在解密期间,它使用相同的密钥将密文传输回原始明文。输入和输出的长度相同。
- 分组密码算法 (AES) 通常以数据加密标准 (DES)、三重 DES 和高级加密标准等名称而闻名。
- 流密码是分组密码的反向工作,使用共享密钥逐位处理其输入。
- 非对称或公钥密码学是分组密码的替代方案。这种方法使用公钥加密明文,并使用私钥解密密文。
分组密码有不同的操作模式 -
- 电子密码本 (ECB) 模式
- 密码分组链接 (CBC) 模式
- 密码反馈 (CFB) 模式
- 输出反馈 (OFB) 模式
- 计数器 (CTR) 模式
这些模式是通用分组密码的操作规则。值得注意的是,各种模式创造了不同的特性,从而提高了分组密码的整体安全性。
分组密码和流密码的区别
下表显示了分组密码和流密码的主要区别 -
密钥 | 分组密码 | 流密码 |
---|---|---|
定义 | 分组密码是一种加密类型,其中明文的转换是通过一次获取其块来执行的。 | 流密码是一种加密类型,其中明文的转换是通过一次获取明文的一个字节来执行的。 |
比特转换 | 由于分组密码一次转换块,因此它转换的比特数比流密码多,流密码可以转换 64 位或更多。 | 然而,在流密码的情况下,一次只能转换 8 位。 |
原理 | 分组密码使用“混淆”和“扩散”原理来执行加密所需的转换。 | 流密码仅使用混淆原理进行转换。 |
算法 | 对于明文加密,分组密码使用电子密码本 (ECB) 和密码分组链接 (CBC) 算法。 | 流密码使用 CFB(密码反馈)和 OFB(输出反馈)算法。 |
解密 | 由于在分组密码的情况下,更多的比特组合被加密,因此与流密码相比,反向加密或解密相对复杂。 | 流密码使用 XOR 进行加密,可以轻松地将其反转回明文。 |
实现 | Feistel 密码是最常见的分组密码实现。 | 流密码的主要实现是 Vernam 密码。 |
总结
分组密码用于加密和解密数据,它使用一个密钥以预定义的固定大小进行操作,这与逐位操作的流密码不同。在混淆和扩散方面,分组密码使用ECB和CBC等技术。另一方面,流密码对较少的比特进行操作,并且它们仅依赖于混淆;它们通常使用异或运算进行加密。
广告