首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >攻击密码,不知道明文应该是什么样子-你怎么知道你已经成功解密了密文?

攻击密码,不知道明文应该是什么样子-你怎么知道你已经成功解密了密文?
EN

Cryptography用户
提问于 2017-12-16 22:30:00
回答 1查看 119关注 0票数 2

我仔细考虑过数据被破解的风险,我认为最大的风险仍然是关键的绝对安全。在假定钥匙将被保密的前提下:

  1. 当黑客攻击数据时,你如何决定什么时候你成功地解密了它,而不知道它是什么--它是第一位的?
  2. 如果这是一个文本文档,你需要知道它使用的是哪种语言吗?
  3. 在使用它加密数据之前,让用户的密钥变得更加复杂值得吗?

好吧,我绝对不是数学家,我想这是不言而喻的。我使用一个库(Lockbox 3,https://sourceforge.net/projects/tplockbox)进行en/解密,所以我依赖于实现是坚如磐石的,另一个潜在的漏洞,但我不会对开发人员施加任何限制。

如果有人试图破解这些数据,有没有数学机制可以用来解密而不知道数据呢?我不是在要求算法,是或否就行了。

我要求把一个复杂的问题变得简单,但我只想得到广泛的答案。

EN

回答 1

Cryptography用户

发布于 2017-12-17 00:55:50

当黑客攻击数据时,你如何决定什么时候你成功地解密了它,而不知道它是什么--它是第一位的?

在实践中,总是有大量的数据可用。例如,大多数数据都在一定的结构内,例如JPEG,它有一个JPEG头来区分。

只有当数据是随机的或接近随机和小大小(只有几个街区),它将很难测试你是否有正确的密钥。

如果这是一个文本文档,你需要知道它使用的是哪种语言吗?

不,绝对不是。结构化格式的文本文档(PDF、Word、OpenDocument等)很容易被发现。ASCII文本通常不包含任何20十六进制以下的数据,除了行终止符或任何超过80十六进制的数据。频率分析很容易在其他地方进行。

了解这种语言只会稍微容易地判断你是否成功了。

在使用它加密数据之前,让用户的密钥变得更加复杂值得吗?

一个真正的256位密钥应该具有256位的随机性。如果是这样的话,就不可能使它变得更加复杂。

密码必须非常强才能用作源,才能导出具有256位随机性的密钥。基于密码的密钥派生函数(或密码散列,如果必须的话)只能使密钥材料增强恒定的数量。

然而,128位真正的密钥强度已经不可能被蛮力所打破;256位关键材料在量子计算机过时之前是过度消耗的。当然,密码的复杂性越高越好。

即使AES允许使用大于256位的密钥,也是非常荒谬的。

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

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

复制
相关文章

相似问题

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