分组密码 编辑
密码学中,分组加密,又称分块加密或块密码,是一种对称密钥算法。它将明文分成多个等长的模块,使用确定的算法和对称密钥对每组分别加密解密。分组加密是极其重要的加密协议组成,其中典型的如高级加密标准3DES作为美国政府核定的标准加密算法,应用领域从电子邮件加密到银行交易转帐,非常广泛。
1
相关
密码学中,分组密码的工作模式允许使用同一个区块密码密钥对多于一块的数据进行加密,并保证其安全性。
区块密码自身只能加密长度等于密码区块长度的单块数据,若要加密变长数据,则数据必须先被划分为一些单独的密码块。通常而言,最后一块数据也需要使用合适填充将数据扩展到符合密码块大小的长度。一种工作模式描述了加密每一数据块的过程,并常常使用基于一个通常称为初始化向量的附加输入值以进行随机化,以保证安全。
密码学中,分组密码的工作模式允许使用同一个区块密码密钥对多于一块的数据进行加密,并保证其安全性。
区块密码自身只能加密长度等于密码区块长度的单块数据,若要加密变长数据,则数据必须先被划分为一些单独的密码块。通常而言,最后一块数据也需要使用合适填充将数据扩展到符合密码块大小的长度。一种工作模式描述了加密每一数据块的过程,并常常使用基于一个通常称为初始化向量的附加输入值以进行随机化,以保证安全。
在加密学中,密文填塞攻击是指使用密文的填充来进行解密的攻击方法。密码学中,可变长度的明文信息通常需要经填充后才能兼容基础的密码原语。此攻击方式依赖对密文是否被正确填充的反馈信息。密文填塞攻击常常与分组密码内的分组密码工作模式有关。非对称加密算法,如最优非对称加密填充,也可能易受到密文填充攻击。
密码学中,分组密码的工作模式允许使用同一个区块密码密钥对多于一块的数据进行加密,并保证其安全性。
区块密码自身只能加密长度等于密码区块长度的单块数据,若要加密变长数据,则数据必须先被划分为一些单独的密码块。通常而言,最后一块数据也需要使用合适填充将数据扩展到符合密码块大小的长度。一种工作模式描述了加密每一数据块的过程,并常常使用基于一个通常称为初始化向量的附加输入值以进行随机化,以保证安全。
密码学中,分组密码的工作模式允许使用同一个区块密码密钥对多于一块的数据进行加密,并保证其安全性。
区块密码自身只能加密长度等于密码区块长度的单块数据,若要加密变长数据,则数据必须先被划分为一些单独的密码块。通常而言,最后一块数据也需要使用合适填充将数据扩展到符合密码块大小的长度。一种工作模式描述了加密每一数据块的过程,并常常使用基于一个通常称为初始化向量的附加输入值以进行随机化,以保证安全。
密码学中,分组密码的工作模式允许使用同一个区块密码密钥对多于一块的数据进行加密,并保证其安全性。
区块密码自身只能加密长度等于密码区块长度的单块数据,若要加密变长数据,则数据必须先被划分为一些单独的密码块。通常而言,最后一块数据也需要使用合适填充将数据扩展到符合密码块大小的长度。一种工作模式描述了加密每一数据块的过程,并常常使用基于一个通常称为初始化向量的附加输入值以进行随机化,以保证安全。
在现代密码学中,对称密钥加密密码一般分为流密码和分组密码分组密码根据一个固定长度的位元串来进行操作。块大小就是这个位串的长度。输入和输出的长度是相同;输出不短于输入——鸽巢原理将导致逻辑上密码一定可逆的事实——并且不希望输出长于输入。
Twofish是布鲁斯·施奈尔带领的项目组于1998年研发的分组密码算法。美国国家标准技术研究所公开招募的高级加密标准AES决赛算法之一,但最终并未当选高级加密标准。Twofish的标志性特点是它采用了和密钥相关的S盒。密钥输入位的一半被用于“真正的”加密流程进行编排并作为费斯妥密码的轮密钥使用,而另一半用于修改算法所使用的S盒。Twofish的密钥编排非常复杂。
Blowfish是一个对称密钥加密分组密码算法,由布鲁斯·施奈尔于1993年设计,现已应用在多种加密产品。Blowfish算法由于分组长度太小已被认为不安全,施奈尔更建议在现代应用中使用Twofish密码。