|
![]() | 作者: ganjiawei [ganjiawei]
![]() |
登录 |
crypt是采用DEC加密技术加密的 但好像加密的结果中密匙是明的 如 crypt($string,a) 它的结果是aerrq23434 crypt($string,b) b54315346t 那它的密匙不是可以在加密后的结果中看出 如果得到密码文件不是可以破了 虽然麻烦了点 |
地主 发表时间: 08/14 08:43 |
![]() | 回复: yaochi [yaochi] ![]() |
登录 |
这是你的问题啊 为什么要用静态的钥匙呢 一般可以截取某个字符串(如用户名)的几位做钥匙啊 得到密码文件,似乎也只可以用暴力破解 |
B1层 发表时间: 08/14 10:01 |
![]() | 回复: xiean [xiean] ![]() |
登录 |
没错,首先说下,不是DEC,是DES(Data Encryption Standard) crypt 的加密结果的确是把key做为明文存放于最前的两个字节,当然,如果你用一个字符做为key的话,加密结果当然会变,而前面的两个字节则是重复该字母,比如用A做key的话,结果会是AA...... 话虽如此,你想key明文都给人家了,破解就是麻烦一点嘛,花点时间不就得了? 但暴力破解不是万能的,虽然总有结果出来的那天,可是如果一个密码足够强壮,我就认为你在一年内能破出来,要对方换了密码。。你怎么办? 另外,crypt也可以用其它算法的,比如MD5 这世上没有不可破的密码,更何况是这种加密方式都是公开的算法,解出的时间虽然长,但也是可以预见的,解出来了,也许保质期过了N久了,所以大家依然用DES/MD5/DSA/RSA等来加密 |
B2层 发表时间: 08/14 10:36 |
![]() | 回复: xiean [xiean] ![]() |
登录 |
另外,你这是 perl 下的 crypt(),你有空试试命令下的 crypt,嘿 选任意文档,比如现在就拿 encode.c 做为例子,运行 *nix$ crypt encode.c > encrypt 这时要求输入Key Enter key: 1234 (这儿你随便输,记得输的字符就好) 你再用 *nix$ crypt 1234 < encrypt 看看结果如何?再看看你的encode.c,再看看encrypt文件 |
B3层 发表时间: 08/14 11:04 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号