首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >3 3DES是如何简单地工作的?

3 3DES是如何简单地工作的?
EN

Cryptography用户
提问于 2018-01-24 19:02:06
回答 1查看 3.3K关注 0票数 -1

据我所知,DES56-bit key (欧洲央行)加密64-bit明文块。

那么,如果3DES三次应用DES,那么为什么在Phase 2中使用解密$(D)$来代替加密$(E)$?以及如何解密被不同密钥$( K_2 )$加密的密文$( [K_2,E] )$?

第一阶段:$E$

第二阶段:$D[K_2,E]$

第三阶段:$E[K_3,D[K_2,E]].$

3 3DES:$C=E[K_3,D[K_2,E]].$

有人能解释一下3 3DES是如何工作的吗?

据你所知,这与问题是并不完全相同,因为,

  1. 我想知道3 3DES是怎么工作的?不仅仅是第二阶段的工作。
  2. 上述问题的答案不能满足我的问题,因为这个答案说加密和解密是相同的方法。
EN

回答 1

Cryptography用户

回答已采纳

发布于 2018-01-24 22:55:53

3 DES加密链用3个不同DES密钥$K_1$、$K_2$、$K_3$ (每个8-八进制,每八位忽略1位)共同构成3 DES的密钥(24-八进制和168位密钥),将明文$P$ (64-位)转换为密文$C$ (64位),如方程所定义的:$$C\gets\operatorname{E_3}(K_1|K_2|K_3,P)=\operatorname{E}(K_3,\operatorname{D}(K_2,\operatorname{E})(K_1),)$$,其中$\operatorname{E}$和$\operatorname{D}$是DES加密和解密,$\operatorname{E_3}$是新定义的3 DES加密。我们将严格地说明,在其中应用解密(在前面的步骤中使用与密钥$K_2$无关的密钥$K_1$ )是很好的定义(对于典型的非对称密码是不成立的)。

解密操作$\operatorname{D_3}$由方程定义:$$P\gets\operatorname{D_3}(K_1|K_2|K_3,C)=\operatorname{D}(K_1,\operatorname{E}(K_2,\operatorname{D}(K_3,C))。我们将严格地展示它回到原来的纯文本。

对于任何分组密码,我们的证明都是成立的,而不看DES的内部。

预告片:

  1. DES解密撤销加密;也就是说,对于任何密钥$K$和任何64位块$X$,使用密钥$K$解密$\operatorname{E}(K,X)$是非常明确的,$\operatorname{D}(K,\operatorname{E}(K,X))=X$。这是任何分组密码的基本性质。
  2. DES加密撤销解密,并且对任何输入都有很好的定义;也就是说,对于任何密钥$K$和任何64位块$Y$,$\operatorname{E}(K,\operatorname{D}(K,Y))=Y$。

证明:

  • 对于任何密钥$K$,使用64位块$X$的密钥$K$进行加密都会给出64位块。这是可逆的,因此不同的$X$和$X'$给出了不同的结果:$\operatorname{E}(K,X)$和$\operatorname{E}(K,X')$。对立面证明:
    • 如果结果相同,则$\operatorname{E}(K,X)=\operatorname{E}(K,X')$
    • 将密钥$K$解密应用于这个公共数量是很明确的,我们得到了$\operatorname{D}(K,\operatorname{E}(K,X))=\operatorname{D}(\operatorname{E}(K,X'))$
    • 应用两次,我们得到$X=X'$,通过对位完成证明。

  • 因此,对于任何密钥$K$,64位块的有限集都是通过$K$加密完全达到的,任何64位块$Y$都是由某些$X$实现的,$\operatorname{E}(K,X)=Y$。证明可以是一个计数参数,或者考虑到前一步证明了$X\to Y=\operatorname{E}(K,X)$是一个从有限集到同一有限集的内射函数,从而证明了双射
  • 应用属性,可以得到具有键$Y$的解密$K$是很好的定义,$\operatorname{D}(K,Y)=X$。
  • 通过用密钥$K$加密双方,得到上述$X$还验证了$\operatorname{E}(K,\operatorname{D}(K,Y))=\operatorname{E}(K,X)$。
  • 右手边与$Y$匹配。因此,$\operatorname{E}(K,\operatorname{D}(K,Y))=Y$,完成了

证明3 3DES解密$\operatorname{D_3}$撤消3 3DES加密$\operatorname{E_3}$:

  • 用公式中定义的$C$替换$$\operatorname{D_3}(K_1|K_2|K_3,\operatorname{E_3}(K_1|K_2|K_3,P))\ =\operatorname{D}(K_1,\operatorname{E}(K_2,\operatorname{D}(K_3,\operatorname{E}(K_3,\operatorname{D}(K_2,\operatorname{E}(K_1,P)
  • 应用$K=K_3$和$X=\operatorname{D}(K_2,\operatorname{E}(K_1,P))$,得到$$\operatorname{D_3}(K_1|K_2|K_3,\operatorname{E_3}(K_1|K_2|K_3,P))\ =\operatorname{D}(K_1,\operatorname{E}(K_2,\operatorname{D}(K_2,\operatorname{E}(K_1,P)$$
  • 应用$K=K_2$和$Y=\operatorname{E}(K_1,P)$,得到$$\operatorname{D_3}(K_1|K_2|K_3,\operatorname{E_3}(K_1|K_2|K_3,P))=\operatorname{D}(K_1,\operatorname{E}(K_1,P))$$
  • 应用$K=K_1$和$X=P$,我们得到所需的$$\operatorname{D_3}(K_1|K_2|K_3,\operatorname{E_3}(K_1|K_2|K_3,P))=P$

因此,3 DES解密是3 DES加密,DES解密是DES加密;3 DES和DES之间的主要外部区别是较大的密钥。

由于明文比在DES中转换得更彻底,并且使用更大的密钥,所以在不知道密钥的情况下逆转加密操作在3 DES中比在DES中更困难。

有关中间有解密的原因,请参见这个答案

票数 3
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/54996

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档