我编写了一个以这种方式加密文本的应用程序:
获取输入文本
反转文本
转换为十六进制
用密钥进行异或
Base64编码
现在,我自己没有做很多加密/编码,所以我的问题可能听起来很愚蠢,但是,假设我得到一个包含上述算法内容的文件,而我不知道这个算法。如何开始“打破”文本,有什么指导方针、原则、规则可以遵循吗?
我的问题与这 5 个步骤无关,那是一个纯粹的例子。
作为另一个示例,请使用文本:A751CD9E1F99。我该如何开始调查这可能意味着什么?
为了破解密码,密码分析者使用他们能收集到的所有信息。根据已知的情况,攻击可以分为多种类别。一些主要攻击(从最难到最简单)是
- 仅密文:这是最难的攻击。分析师尝试收集尽可能多的加密消息,并对其进行分析以查找符号频率的模式或偏差。然而,对于好的现代密码来说,没有任何模式。对于正确使用的良好密码来说,这是不可行的。
- 已知明文:拥有与某些密文相对应的明文是从新密文恢复未知明文的一大进步。这就是“逆向工程”真正开始的地方,因为他可以根据已知的输入和输出来测试他对算法的假设。在第二次世界大战中,密码分析学家努力建立广泛的“婴儿床”列表(可能出现在敌人消息中的单词)以利用已知的明文攻击。例如,某一天的天气情况,或者战斗的地名等,都可能以加密信息的形式报告给总部。
- 选择明文:更好的是密码分析者可以欺骗他的敌人加密密码分析者创建的消息。在战时,有时虚假信息会泄露给敌人,希望其被加密并帮助密码分析者破译密码。
- 自适应选择明文:这是一种对已知明文的迭代方法。密码分析者可以反复让系统对他选择的明文进行加密,并查看结果来调整他的下一次尝试。
如今,破解密码的可能方法是通过系统中的缺陷。例如,可能会使用不良的密钥管理,导致密钥被盗或被猜测。在其他情况下,可能会使用“旁路”攻击。例如,通过仔细测量某些加密操作所需的时间,攻击可能能够猜测密钥的某些位或字节为零,从而导致通过某些算法的快速路径。
靠近“锡箔帽”一端的方法是拦截计算设备的无线电发射。 http://en.wikipedia.org/wiki/TEMPEST这允许远程代理“查看”监视器上显示的内容。甚至有专门设计的字体来尝试破坏这种窃听行为。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)