比方说长度或者首字母之类的, 一般的 MD5, SHA 能不能直接辨认出来呢?
8 回复
@hinode 大哥,您淡定一点好不好!! 1、这个正则的意思是,长度是16或者32,里面的字符只能是0123456789abcdefABCDEF 2、“符合这个规则”的意思是,如果是MD5加密后的字符串必须满足上面的条件,不是说满足这个条件就一定是MD5字符串
如果无论丢什么数据进去出来都是同样长度的,基本上就是HASH,不可逆。其中16位或者32位用16进制表示的“很有可能”是MD5,40位(忘了有没记错,没事都不会去数。。)用16进制表示的也“很有可能”是SHA1
如果长度会跟随内容的长度变化的:
- 如果是用0-9、A-Z、a-z表示的,并且末尾“有可能”包含
=
号的,“有可能”是base64,可以尝试用base64解码后看看能不能得到原文,如果不行,那就继续吧。。 - 如果密文(或者base64解码之后的密文)的字节数和原文的字节数有关(比如相等、2倍、3倍等等),有条件的话可以尝试丢组合进去,比如丢个“111”、“222”。。。进去观察出来的密文,样本足够多说不定能找到对应关系(好吧这是很弱智的加密算法。。不过我们学校的拨号器的确就是这么弱智)
对于“糕端”一点的加密算法,默哀把。。