识别各种不同的网页编码/加密方式【不定期更新】
2019/9/28 由于平时遇到的编码比较多且杂 记性实在太差 决定起草记录之
一,基础知识
1、ASCII码
美国标准信息交换码:ASCII ( American Standard Code for Information Interchange )
A在ascii中定义为01000001,也就是十进制65,有了这个标准后,当我们输入A时,计算机就可以通过ascii码知道输入的字符的二进制编码是01000001。
ASCII是使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符,ASCII码指的不是十进制,是二进制,只是用十进制表示习惯一点罢了,比如在ascii码中,A的二进制编码为01000001,如果用十进制表示是65,用十六进制表示就是41H
二,网页编码
1、以&#开头的是什么编码?
HTML实体:有些字符,像(<)这类的,对HTML(标准通用标记语言下的一个应用)来说是有特殊意义的,所以这些字符是不允许在文本中使用的。要在HTML中显示(<)这个字符,我们就必须使用实体字符。
组成结构:&# +ASCII码 +; 注意这里的ASCII码是十进制的,如果是 &#x 后面则是十六进制的ASCII码
例: KEY{J2sa42ahJK-HS11III}
利用米斯特CTF工具,直接将上段代码从Unicode转换为ASCIl即可,得到结果 KEY{J2sa42ahJK-HS11III}
三、加密方式
预备知识:
1、base64
aHVjdGZ7YjRzZTY0XzFzX3MwX2VAc3khfQ==
2、base32
NB2WG5DGPNRDI43FGMZF62LTL5ZTAXZTIBZXSIL5
3、base16
68756374667B6232736531365F6C735F73305F633030317D
4、url编码
huctf%7Bur%25_1s_s0_e@sy!%7D
5、unicode编码
\u0068\u0075\u0063\u0074\u0066\u007b\u0064\u0030\u005f\u0079\u0030\u0075\u005f\u006b\u006e\u0040\u0077\u005f\u0075\u006e\u0031\u0063\u0030\u0064\u0065\u003f\u007d
5、hex编码
68756374667b4865785f31735f6261733163217d
6、二进制编码
011010000111010101100011011101000110011001111011011001000011000001011111011110010011000001011111011010110110111001000000011101110101111101100010001100010110111001000000011100100111100101111101
Crypto:
1、凯撒密码
rxms{5pq1004q-86n5-46q8-o720-oro5on0417r1}
2、栅栏密码
fel_atgo{_WHeUlCcToFm}
3、培根密码
BAABBAABBBAABAAABABAAABAABBAAAABAAABAABAABAAAABABBABAAAABABAAABAAAAAABAAAAAAAABAABBBAABBAB
4、MD5
21232f297a57a5a743894a0e4a801fc3