DES算法全称为Data Encryption Standard,即数据加密算法,它是IBM公司于1975年研究成功并公开发表的。DES算法的入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密。
DES算法把64位的明文输入块变为64位的密文输出块,它所使用的密钥也是64位,其算法主要分为两步:
1�初始置换
其功能是把输入的64位数据块按位重新组合,并把输出分为L0、R0两部分,每部分各长3 2位,其置换规则为将输入的第58位换到之一位,第50位换到第2位……依此类推,最后一位是原来的第7位。L0、R0则是换位输出后的两部分,L0是输出的左32位,R0是右32位,例:设置换前的输入值为D1D2D3……D64,则经过初始置换后的结果为:L0=D58D50……D8;R0=D57D49……D7。
2�逆置换
经过16次迭代运算后,得到L16、R16,将此作为输入,进行逆置换,逆置换正好是初始置换的逆运算,由此即得到密文输出。
没有绝对不能破解的加密 *** ,只是在当前的技术下,破解需要很长的时间,比如1000台大型机100年的时间,这样破解就没有意义了
DES密文现在是可以被破解的,在wiki上就给出了3中暴力破解 *** :
引用于wiki百科DES条目
=======================================================================
快于暴力攻击的攻击 ***
有三种已知 *** 可以以小于暴力破解的复杂性破解DES的全部16回次:微分密码分析(DC),线性密码分析(LC),以及戴维斯攻击。然而,这些攻击都是理论性的,难以用于实践;它们有时被归结于认证的弱点。
微分密码分析在1980年代晚期由艾力·毕汉姆和阿迪·萨莫尔重新发现[36][37];1970年代IBM和NSA便发现了这种 *** ,但没有公开。为了破解全部16回次,微分密码分析需要247组选择明文。DES被设计为对DC具有抵抗性。
线性密码分析由松井充(Mitsuru Matsui)发现,需要243组已知明文[38];该 *** 已被实现[22],是之一种公开的实验性的针对DES的密码分析。没有证据显示DES的设计可以抵抗这种攻击 *** 。一般概念上的LC—“多线性密码分析”—在1994年由Kaliski和Robshaw所建议[39],并由比留科夫等人于2004年所改进[40]。线性密码分析的选择明文变种是一种类似的减少数据复杂性的 *** [2]。帕斯卡尔·朱诺德(Pascal Junod)在2001年进行了一些确定线性密码分析的实际时间复杂性的实验,结果显示它比预期的要快,需要约239–241次操作[1]。
改进的戴维斯攻击:线性和微分密码分析是针对很多算法的通用技术,而戴维斯攻击是一种针对DES的特别技术,在1980年代由唐纳德·戴维斯(Donald Davies)首先提出,并于1997年为毕汉姆和亚历克斯·比留科夫(Alex Biryukov)所改进[41][42]。其最有效的攻击形式需要250已知明文,计算复杂性亦为250,成功率为51%。
也有一些其它的针对削减了回次的密码版本,即少于16回次的DES版本。这些攻击显示了多少回次是安全所需的,以及完整版本拥有多少“安全余量”。微分线性密码分析于1994年为兰福德(Langford)和海尔曼所提出,是一种组合了微分和线性密码分析的 *** [43]。一种增强的微分线性密码分析版本可以利用215.8 组已知明文可以以229.2的时间复杂性破解9回次的DES[44]。
=========================================================================
DES二进制和十六进制区分,所有处理都会在bit单位,就算是16进制也会转成二进制处理,最多由于位数增多,划分的64bit加密快增多,但没有在算法复杂度上增加破解难度。如果破解二进制所需时间为N,破解十六进制所需时间为8N
=========================================================================
补充回答:
这是不可能的。如果你不知道密文,就算你有秘钥也没办法还原。AES的加密过程是把明文和秘钥混淆。
DES算法具有极高安全性,到目前为止,除了用穷举搜索法对DES算法进行攻击外,还没有发现更有效的办法。而56位长的密钥的穷举空间为256,这意味着如果一台计算机的速度是每一秒钟检测一百万个密钥,则它搜索完全部密钥就需要将近2285年的时间,可见,这是难以实现的。然而,这并不等于说DES是不可破解的。而实际上,随着硬件技术和Internet的发展,其破解的可能性越来越大,而且,所需要的时间越来越少。使用经过特殊设计的硬件并行处理要几个小时。
为了克服DES密钥空间小的缺陷,人们又提出了三重DES的变形方式。
密码算法的破解根据破译者掌握的信息不同,可分为唯密文攻击,已知明文攻击,选择明文攻击和选择密文攻击。
破解一个分组密码算法,是指根据掌握的信息,求出密钥。
这里,破译者也许只有密文,也许有了一定数量的明文-密文对,或者有了加密机,输入任意的明文,都可以得到密文,总之,破译的目标是“找到密钥”。
穷举法就是对56比特的所有可能密钥进行穷举,一个一个试,直到找出正确密钥。
用C#做加密相对其他语言而言,是比较容易被破解的
C#是一种中间语言,做加密有一个致命的问题,它可以被完全逆向成源代码
因此无论做什么加密,加密代码都可以呈现在破解者面前
算法本身并没有问题(当然AES安全性确实高于DES,不论是密钥长度、抗分析能力都远超后者),可是代码变成白盒,算法再厉害,解密的密钥直接可以从代码中分析出来,算法也就没有意义了。
因此算法部分更好是用C/C++这些可以直接运行的,目标文件为机器码级别的语言开发相对比较安全。
同样作为中间语言的java、python也有这种缺点。
DES算法的设计目的密码体制中的对称密码体制。
这意味着如果一台计算机的速度是每一秒钟检测一百万个密钥,则它搜索完全部密钥就需要将近2285年的时间,可见,这是难以实现的。
这并不等于说DES是不可破解的。而实际上,随着硬件技术和Internet的发展,其破解的可能性越来越大,而且,所需要的时间越来越少。使用经过特殊设计的硬件并行处理要几个小时。
DES与3DES:
DES向AES过渡的加密算法,它使用3条56位的密钥对数据进行三次加密。是DES的一个更安全的变形。它以DES为基本模块,通过组合分组 *** 设计出分组加密算法。比起最初的DES,3DES更为安全。
该 *** 使用两个密钥,执行三次DES算法,加密的过程是加密-解密-加密,解密的过程是解密-加密-解密。
橙光豪门迷情怎么攻略 第一章攻略:1.平静回话,龙锦墨好感+1/暗讽回话,龙锦墨好感-1;2.怒气冲冲地反问,龙锦墨好感-1/心平气和地反问, 龙锦墨好感+1;3.不知所措,无变化/安慰她,无变化;4...
怎样不用钱下载《侏罗纪世界》进化2 1、侏罗纪世界进化2在steam平台上进行下载,下载方式如下。下载steam软件。进入steam点击最上方的搜索。点击输入侏罗纪世界:进化2进行搜索。侏罗纪世界:进...
华为手表太空人表盘怎么设置 以华为WATCH GT 2为例:设备侧:1.在设备主屏幕长按即可进入表盘选择界面。2.在设备主屏幕下单击上键,选择 设置 屏幕显示 更换表盘或 设置 表盘 更换表盘...
一个手机游戏,是一个飞机打大蜘蛛的,然后大蜘蛛会变两个小的,在变四... 1、名字叫做“幻影蜘蛛”,发不了给你。你去乐讯网下载吧。2、蜘蛛侠破碎维度,里面有神奇蜘蛛侠(就是原版彼得帕克)未来蜘蛛侠(不...
怎么拒绝面试通知 怎么拒绝面试通知 怎么拒绝面试通知,人际交往能力强的人在职场上也非常吃得开,职场上的暗示要学着听懂,多看看优秀面试的视频也许能带来一些启发,职场的身体健康也是难能可贵的,怎么拒绝面...
现代海战(在线海战)邮箱登录是什么意思 您好亲,现代海战(在线海战)邮箱登录意思是可以用邮箱进行登录如果是电子邮件登录。应该填写你的电子邮箱的账号。如果你还没有注册过电子邮箱。你可以下载邮箱大师。邮箱...