之前玩ctf的时候就增长了不少见识,接触到了base家族,密码学里学过的算法的使用,还有一些奇形怪状的加密方式,哈哈。
下面是一些有用的资料
1.30余种加密编码类型的密文特征分析(建议收藏)
2.CTF中常见密码题解密网站总结(建议收藏)
https://blog.csdn.net/qq_41638851/article/details/100526839
3.CTF密码学常见加密解密总结(建议收藏)
https://blog.csdn.net/qq_40837276/article/details/83080460
做ctf的时候我可算是费劲脑子找了很多文章看特征了,印象最深还是那道emoji表情加密的题目,怎么都跑不出来,那种答案近在咫尺却拿不到的感觉十分难受。
借鉴迪哥的文档
密码存储加密:
MD5 SHA1 NTLM AES DES RC4
MD5值是32或16位位由数字”0-9″和字母”a-f”所组成的字符串 //多用在数据库加密
SHA1这种加密的密文特征跟MD5差不多,只不过位数是40
NTLM这种加密是Windows的哈希密码,标准通讯安全协议
AES,DES,RC4这些都是非对称性加密算法,引入密钥,密文特征与Base64类似
传输数据编码:
BASE64 URL HEX ASCII
BASE64值是由数字”0-9″和字母”a-f”所组成的字符串,大小写敏感,结尾通常有符号=
URL编码是由数字”0-9″和字母”a-f”所组成的字符串,大小写敏感,通常以%数字字母间隔
HEX编码是计算机中数据的一种表示方法,将数据进行十六进制转换,它由0-9,A-F,组成
ASCII编码是将128个字符进行进制数来表示,常见ASCII码表大小规则:0~9<A~Z<a~z
识别算法编码类型:
1、看密文位数
2、看密文的特征(数字,字母,大小写,符号等)
3、看当前密文存在的地方(Web,数据库,操作系统等应用)
有些加密是不可逆的,比如MD5,我们知道他的加密方式,但是不能根据密文倒退明文,但是因为每个字符的md5是固定的,所以md5是可以被破解的。破解的方法就是用碰撞法尝试解密。
当遇到加密方式是md5加盐类型的,网上找一下资料看一下salt藏在哪里,如果找不到就去翻数据库里跟salt相关的。
在cmd5.com里输入md5:salt