分组密码(block cipher)和流密码(stream cipher)的区别

了解分组密码和流密码的区别。比较的基础包括:描述、密钥使用、完整性、XOR函数、明文加密、速度、实现和算法模式。...

了解分组密码和流密码的区别。比较的基础包括:描述、密钥使用、完整性、XOR函数、明文加密、速度、实现和算法模式。

007Ys3FFgy1gwtsqgwiiaj30iq0dz0t8

什么是密码(a cipher)?

密码是一种通过替换或转置将原始字母替换为其他字母、数字和符号来加密隐藏单词或文本的方法。密码通常支持私人通信,并经常用于电子邮件中,因此,如果未经授权的用户接收到加密的消息,则无法读取该消息。

有多种密码类型,但有两种典型示例:

  • Baconian:这会将一条消息隐藏在另一条消息中,其中包含各种字体、字体或特征。
  • 阿特巴什:字母A改为A Z,B改为A Y,D改为Q,E改为W,F改为P,依此类推。

流密码

流密码是一种对称密钥密码(加密方法),其中明文数字和伪随机密码数字流相结合。流密码使用密钥和算法对明文进行加密,该密钥和算法应用于数据流中每一位的每个二进制数字(1和0)。伪随机密码数字是通过使用数字移位寄存器的多个随机种子值生成的。

在流密码中,文本被分成小的块,一位或一个字节长,每个块根据以前的许多块进行编码。

流密码的类型

  1. 同步流密码:同步流密码基于与明文或密文无关的内部状态生成密钥流。加密和解密要求同步状态密码处于相同的状态,否则无法解密消息。
  2. 自同步流密码:自同步流密码,也称为同步流密码或密文自动密钥(CTAK),是一种流密码,它使用前N个数字来计算用于下N个字符的密钥流。

分组密码

分组密码是一种加密方法,它使用一种非终结性算法和一个对称密钥对文本块进行加密,而不是像流密码那样一次加密一位。在分组密码中,文本被划分为相对较大的块,通常为64 0r 128字节长,并且每个块分别编码。加密过程中使用明文,生成的加密文本称为密文。

分组密码算法的对称性在于,在加密过程中,它使用共享密钥将其明文输入转换为密码文本(加密文本)。在解密过程中,它使用相同的密钥将密文转换回原始明文。输出的长度与输入的长度相同。

主要区别

  • 流密码是一种对称密钥密码(加密方法),其中明文数字与伪随机密码数字流相结合。另一方面,分组密码是一种加密方法,它应用确定性算法和对称密钥对文本块进行加密。
  • 流密码对每个字节使用不同的密钥;块密码使用相同的密钥加密每个块。
  • 流密码使用XOR函数将纯文本转换为密文,这就是很容易反转XORD位的原因。相比之下,分组密码不使用XOR函数。
  • 流密码使用混淆来加密明文,而分组密码使用混淆和扩散来将明文加密为密文。
  • 在流密码中一次转换1字节(8位),这使得过程更快,而在分组密码中,块的正常大小在分组密码中可能是64或128位,这使得分组密码比流密码慢。
  • 流密码使用CFB(密码反馈)和OFB(输出反馈)算法模式。另一方面,分组密码使用ECB(电子码本)和CBC(密码分组链)算法模式。
  • 流密码不需要很大的内存,因为它们一次只处理少量的数据,而块密码需要相对较大的内存,因为它们处理的数据量很大。
  • 流密码不提供完整性保护或身份验证。相反,一些分组密码(取决于模式)除了提供机密性外,还可以提供完整性保护。
  • 流密码更难正确实现,并且容易因使用情况而出现弱点。相反,分组密码相对容易实现。

Also Read: Difference Between Monoalphabetic And Polyalphabetic Cipher

分组密码(block cipher)和表格式流密码(stream cipher in tabular form)的区别

比较基础 流密码 分组密码
描述 流密码是一种对称密钥密码(加密方法),其中明文数字与伪随机密码数字流相结合。 分组密码是一种加密方法,它应用确定性算法和对称密钥对文本块进行加密。
关键用途 流密码对每个字节使用不同的密钥。 块密码使用相同的密钥加密每个块。
诚实正直 流密码不提供完整性保护或身份验证。 一些分组密码(取决于模式)除了提供机密性外,还可以提供完整性保护。
异或函数 流密码使用XOR函数将纯文本转换为密文,这就是很容易反转XORD位的原因。 分组密码不使用XOR函数。
明文加密 流密码使用混淆来加密明文。 分组密码使用混淆和扩散将明文加密为密文。
速度 在流密码中一次转换1字节(8位),这使过程更快。 在分组密码中,分组密码的正常大小可以是64位或128位,这使得分组密码比流密码慢。
实施 流密码更难正确实现,并且容易因使用情况而出现弱点。 相对容易实现。
算法模式 流密码使用CFB(密码反馈)和OFB(输出反馈)。 分组密码使用ECB(电子码本)和CBC(密码分组链)。

Also Read: Difference Between Linear And Differential Cryptanalysis

流密码相对于分组密码的优势

  1. 流密码通常比块密码快,适用于大数据块或小数据块。
  2. 流密码不需要大的内存,因为它们一次只能处理少量的数据,而块密码需要相对大的内存,因为它们处理的数据量很大。
  3. 流密码字节单独加密,与其他数据块没有连接,而块密码一次加密一个块。
  4. 流密码通常最适用于数据量未知或连续的情况,如网络流,而当数据量或长度已知(如文件、数据字段或响应协议)时,分组密码更有用。

  • 发表于 2021-11-27 16:38
  • 阅读 ( 287 )
  • 分类:IT

你可能感兴趣的文章

如何在ubuntu中加密文件和文件夹

...同的密钥用于加密和解密阶段。对称密钥加密也称为基于分组密码的加密,因为数据是以块或块的形式加密的。 ...

  • 发布于 2021-03-11 16:31
  • 阅读 ( 857 )

如何从闪存驱动器中永久删除数据

... Windows附带许多内置的命令行实用程序,其中一个称为密码。密码可以做很多与驱动器、文件系统和加密相关的事情,但是我们希望将它用于它所具有的一个特定特性:删除未使用的数据。 ...

  • 发布于 2021-03-16 14:51
  • 阅读 ( 194 )

如何使用linux的ar命令创建静态库

...何有价值的东西使用这种加密。它是世界上最简单的替换密码,其中A变成B,B变成C,依此类推。 相关:如何在Linux上使用tar命令压缩和提取文件 cipher\u encode()和cipher\u decode()函数 我们将在一个名为“library”的目录中工作...

  • 发布于 2021-04-03 09:35
  • 阅读 ( 307 )

什么是加密,它是如何工作的?

...方法来保护他们的电子通信。 路西法是几个最早的民用分组密码的名字,由Horst Feistel和他的同事在IBM开发。 数据加密标准(DES)是一种分组密码(共享秘密加密的一种形式),1976年被美国国家标准局选为美国的官方联邦信息...

  • 发布于 2021-04-09 04:40
  • 阅读 ( 169 )

如何更新windows server密码套件以提高安全性

...务器时,您可能没有为他们提供安全选项。 提供更好的密码套件是免费的,而且很容易设置。只需按照这个分步指南来保护您的用户和服务器。您还将学习如何测试您使用的服务,以了解它们到底有多安全。 为什么密码套件...

  • 发布于 2021-04-10 09:48
  • 阅读 ( 162 )

隐藏在windows命令行中的最佳工具

...网络连接问题,但无法通过名称访问某些计算机或网站。密码cipher命令主要用于在Windows中处理NTFS卷上的加密文件夹和文件。坦率地说,如果您使用的是这种类型的加密,那么您就有了一个图形界面,可以完成大部分需要的工作...

  • 发布于 2021-05-21 15:59
  • 阅读 ( 142 )

流密码(stream cipher)和分组密码(block cipher)的区别

流密码和分组密码的主要区别在于,流密码通过每次取一字节的纯文本将纯文本转换为密文,而分组密码通过每次取一块纯文本将纯文本转换为密文。 密码是一组数学规则或算法,有助于将纯文本转换成不可读的格式,即密文...

  • 发布于 2021-07-02 00:32
  • 阅读 ( 827 )

密码学(cryptography)和密码分析(cryptanalysis)的区别

...行解码。现代攻击者从90年代开始使用差分和线性攻击对分组密码标准DES进行攻击。 因此,密码学和密码分析是两个不同的过程。在密码学中,对信息进行编码,使可能误用信息的人无法读取。另一方面,密码分析是由入侵者进...

  • 发布于 2021-07-12 06:46
  • 阅读 ( 390 )

使用内置命令行技巧安全地覆盖文件

...做的只是指定/W开关以及删除后要覆盖的文件或文件夹。密码/W:C:\Path\To\Folder使用此方法覆盖数据需要相当长的时间,而且它肯定不像其他一些实用程序那么容易使用,但它是一种不用第三方实用程序就可以安全地覆盖数据的好...

  • 发布于 2021-07-27 01:00
  • 阅读 ( 141 )

混乱(confusion)和举例说明(diffusion with example)的区别

...现混淆技术。 扩散技术可以通过传输算法实现。 使用分组密码和流密码都使用混淆技术。 扩散技术仅用于分组密码。变化如果密钥中的一个位被更改,密文中的所有位也必须更改。 如果明文中的一个符号被更改,密码...

  • 发布于 2021-11-27 16:39
  • 阅读 ( 325 )
YA8555446
YA8555446

0 篇文章