首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在欧洲央行模式下解密3 3DES (使用mode列表)?

如何在欧洲央行模式下解密3 3DES (使用mode列表)?
EN

Cryptography用户
提问于 2014-03-04 16:05:09
回答 2查看 2.4K关注 0票数 -2

我有一些加密的文本(在欧洲央行模式下用3 3DES加密,没有盐)。

我的问题:我如何使用单词列表解密它们?(或者没有)

示例:

加密文本:

代码语言:javascript
运行
复制
Xfi+h4Ir6l7zXCP+N4EPvQ==

用于此的单词列表:

代码语言:javascript
运行
复制
foo
bar
marketing

加密之前的原始文本是:“营销”(只是为了使示例完整)。

EN

回答 2

Cryptography用户

发布于 2014-03-05 19:05:23

您有一个密文(或多个),一个可能的明文列表,但没有密钥。因此,您的过程将是

  1. 产生随机解密密钥
  2. 用该密钥解密密文(base64首先解码CT )
  3. 查看结果是否出现在可能的明文列表中
  4. 如果是,则返回该明文;否则返回到1。

这是一种基本的蛮力攻击,不会在任何合理的时间内起作用。原因是3 3DES的密钥太大。欧洲央行的使用是不好的,但这并不一定意味着某些东西很容易被破坏,而且常常需要大量密文才能产生中断(至少在我们讨论的当前应用程序中,由于欧洲央行的使用,其他应用程序可能变得完全不安全)。

票数 3
EN

Cryptography用户

发布于 2014-03-05 20:10:48

经过base64解码,我们得到(十六进制) 5d f8 be 87 82 2b ea 5e f3 5c 23 fe 37 81 0f bd,它有两个块的大小。

在你的小单词列表中,只有市场营销需要两个块:m a r k e t i n作为第一个,g 07 07 07 07 07 07 07作为第二个(或另一个填充,但这是一个常见的),因此可以对应这些密文。

foo这样的单词适合块,例如:f o o 05 05 05 05 05,所以会给出一个8字节的结果。并不是说我们使用的是欧洲央行模式(没有像CBC那样的额外IV数据,块进入块,我们需要填充,不像CTR模式那样)。因此,如果从单词列表中选择明文,市场营销是唯一的候选人。

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

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

复制
相关文章

相似问题

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