目录
1.ASCII编码
在线转换工具http://www.hiencode.com/jinzhi.html
2.摩斯电码
摩斯电码是一种时断时续的信号代码,是一种早期的数字化通信形式。不同于只使用0和1的二进制编码,摩斯电码用点(.)和划(-)来编码范围0-9、A-Z的字符,字母不区分大小写,两个字母之间的空格用斜杠(/)或者三个点(.)或者一个划(-)表示,两个单词之间的间隔是七个点(.)。 根据摩斯编码的原理,CTF中也有出现过变种的摩斯编码,比如点(.)和划(-)用数字0和1来表示等此类变种的思路。
在线转换工具https://tool.bugku.com/mosi/
3.敲击码
敲击码(Tap code)是一种以非常简单的方式对文本信息进行编码的方法。因该编码对信息通过使用一系列的点击声音来编码而命名,
敲击码是基于5×5方格波利比奥斯方阵来实现的,不同点是是用K字母被整合到C中。
敲击码表:
1 2 3 4 5
1 A B C/K D E
2 F G H I J
3 L M N O P
4 Q R S T U
5 V W X Y Z
参考对照表:
( .. | . ):即2,1 对应敲击码表的第2行第一列,得到明文"f"
在线转换工具http://www.hiencode.com/tapcode.html
4.格雷编码
在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码(Gray Code),另外由于最大数与最小数之间也仅一位数不同,即“首尾相连”,因此又称循环码或反射码。格雷码(Gray Code)又称Grey Code、葛莱码、格莱码、戈莱码、循环码、反射二进制码、最小差错码等。
十进制数 | 4位自然二进制码 | 4位典型格雷码 | 十进制余三格雷码 |
十进制空六格雷码 | 十进制跳六格雷码 | 步进码 |
---|---|---|---|---|---|---|
0 |
0000 |
0000 |
0010 |
0000 |
0000 |
00000 |
1 |
0001 |
0001 |
0110 |
0001 |
0001 |
00001 |
2 |
0010 |
0011 |
0111 |
0011 |
0011 |
00011 |
...
表中典型格雷码具有代表性。若不作特别说明,格雷码就是指典型格雷码,它可从自然二进制码转换而来。
在线转换工具http://www.ab126.com/system/2780.html
5 base家族编码
5.1 base64
base 64 是一种基于64个可打印字符来表示二进制数据的表示方法。,所以每六个bit为一个单元,对应某个可打印字符。三字节有24bit,对应4个base64单元,即三字节任意二进制数据可由4个可打印字符表示。在base64 中,可打印字符包括字母A~Z,a~z,和0~9 ,共62个字符,以及+和/字符。
ABCDEFGHIJKLMNOPKRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
若原长不是3的倍数且剩下一个数据,加两个==,若剩下2个数据加一个等号
在线转换工具http://www.hiencode.com/base64.html
5.2base32
base32与base64目的一致,但编码规则不同,base32将二进制文本转换成32个ASCII字符组成的文本,转换表为
ABCDEFGHIJKLMNOPQRSTUVWXYZ234567
在线转换工具http://www.hiencode.com/base64.html
5.3 base16
base16编码则将二进制文本转换成由16个字符组成的文本
ABCDEF123456789
其实就是hex编码
在线工具http://www.hiencode.com/base64.html
5.4 base其他
在线工具https://ctf.bugku.com/tools.html
6 UTF-8
utf-8是一种可变长的字符编码,主要是为了节省存储空间,编码长度根据编码的字符集从1个字节到6个字节不等。
在线转换工具http://www.jsons.cn/utf8/
7 GBK/GBK2312编码
GBK编码,是对GB2312编码的扩展,因此完全兼容GB2312-80标准。GBK编码依然采用双字节编码方案,其编码范围:8140-FEFE,剔除xx7F码位,共23940个码位。共收录汉字和图形符号21886个,其中汉字(包括部首和构件)21003个,图形符号883个。GBK编码支持国际标准ISO/IEC10646-1和国家标准GB13000-1中的全部中日韩汉字,并包含了BIG5编码中的所有汉字。
在线转换工具https://www.23bei.com/tool-54.html
8 unicode编码
Unicode编码则是采用双字节16位来进行编号,可编65536字符,基本上包含了世界上所有的语言字符,它也就成为了全世界一种通用的编码,而且用十六进制4位表示一个编码,非常简结直观,为大多数开发者所接受,特别是十六进制编码后,可以解决汉字在js再编码过程中出现乱码问题,提高解释速度
在线转换工具http://www.jsons.cn/utf8/
9 URL编码
URL 编码又称为百分号编码。如果一个保留字符在特定上下文中具有特殊含义,且URI
中必须使用该字符用于其他目的,那么该字符必须进行编码。URL 编码一个保留字符,需要
先把该字符的 ASCII 编码表示为两个十六进制的数字,然后在其前面放置转义字符“%”,置
入 URI 中的相应位置(非 ASCII 字符需要转换为 UTTF-8 字节序,然后每字节按照上述方式表示
例如,如果“/”用于 URI 的路径成分的分界符,则是具有特殊含义的保留字符。如果该字符需要出现在URL一个路径成分的内部,用“%2f”来替换“/”;
在线转换工具http://www.jsons.cn/urlencode/
10 js
10.1 jjencode
将JS代码转换成只有符号的字符串
在线工具https://www.qtool.net/decode
10.2 aaencode
将JS代码转换成常用的表情
在线工具http://www.atoolbox.net/Tool.php?Id=703
10.3jsfuck
JSFuck 可以让你只用 6 个字符[ ]( ) ! +
来编写 JavaScript 程序。
在线转换工具http://www.hiencode.com/jsfuck.html
10.4jother
jother是一种运用于javascript语言中利用少量字符构造精简的匿名函数方法对于字符串进行的编码方式。其中8个少量字符包括:! + ( ) [ ] { }
。只用这些字符就能完成对任意字符串的编码
可以用控制台进行解码
11 ppencode
ppencode-Perl把Perl代码转换成只有英文字母的字符串。
在线工具http://www.atoolbox.net/Tool.php?Id=719
12 rrencode
暂时没找到工具
13 UUencode
UUencode是一种二进制到文字的编码,最早在unix 邮件系统中使用,全称:Unix-to-Unix encoding,UUencode将输入文本以每三个字节为单位进行编码,如果最后剩下的资料少于三个字节,不够的部份用零补齐。三个字节共有24个Bit,以6-bit为单位分为4个组,每个组以十进制来表示所出现的字节的数值。这个数值只会落在0到63之间。然后将每个数加上32,所产生的结果刚好落在ASCII字符集中可打印字符(32-空白…95-底线)的范围之中。
在线工具https://www.qqxiuzi.cn/bianma/uuencode.php
14 XXencode
XXencode将输入文本以每三个字节为单位进行编码。如果最后剩下的资料少于三个字节,不够的部份用零补齐。这三个字节共有24个Bit,以6bit为单位分为4个组,每个组以十进制来表示所出现的数值只会落在0到63之间。以所对应值的位置字符代替。它所选择的可打印字符是:+-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz,一共64个字符。跟base64打印字符相比,就是UUencode多一个“-” 字符,少一个”/” 字符。
在线解码
http://web.chacuo.net/charsetxxencode
15 Quoted-printable 编码
它是多用途互联网邮件扩展(MIME) 一种实现方式。有时候我们可以邮件头里面能够看到这样的编码,编码原理参考。
在线转换http://web.chacuo.net/charsetquotedprintable/
16 brainfuck and OOK
在线工具https://www.splitbrain.org/services/ook
17 中文电码
在线工具https://apps.chasedream.com/chinese-commercial-code/
待更新......