常见编码和加密

ASCII编码



ASCII码对应表

Base64/32/16编码


·16,32,64表示用多少个字符来编码

·特征:大部分base64后面有1-2个等号

·原理:https://www.tuicool.com/articles/2E3INnm

URL编码


·特征:含有%

莫尔斯电码


·特征:由点(.)、划(-)、每个字符间短的停顿( )、每个词之间中等的停顿(/)、句子之间长的停顿组成

栅栏密码


·特征:还是原来的字符,但顺序被打乱了

·原理:将加密的明文分为N个一组,然后每组的第k个字符组合(k=1,2,...N),最后把他们全部连接起来就是密文

凯撒密码


·特征:每个字符都按照字母表向前或向后移动了相同位数

ROT 5/13/18/47(特殊的凯撒密码)


·原理:

1)ROT 5

只对数字进行编码,用当前数字往前数的第5个数字替换当前数字

例如当前为0,编码后变成5,当前为1,编码后变成6,以此类推顺序循环

2)ROT 13

只对字母进行编码,用当前字母往前数的第13个字母替换当前字母

例如当前为A,编码后变成N,当前为B,编码后变成O,以此类推顺序循环

3)ROT 18

ROT 5 和 ROT 13 的结合

4)ROT 47

数字字母常用符号进行编码,按照它们的ASCII值进行位置替换,用当前字符ASCII值往前数的第47位对应字符替换当前字符

例如当前为小写字母z,编码后变成大写字母K,当前为数字0,编码后变成符号_。

用于ROT47编码的字符其ASCII值范围是33-126,具体可参考ASCII编码

简单替换密码


·每一个明文字母被与之唯一对应且不同的字母替换

·需要有一个密码字母表

猪圈密码(九宫格密码、朱高密码、共济会密码、共济会员密码)


猪圈密码

jjencode/aaencode


·特征:jjencode将JS代码转换为只有符号的字符串;aaencode将JS代码转换为常用的网络表情

·可以直接在控制台中执行解密

Jsfuck


·特征:只用[ ] ( ) ! +六个字符来编写JavaScript程序

jother


·特征:只用! + ( ) [ ] { }八个字符构造JavaScript匿名函数

·可以直接在控制台中执行解密

brainfuck


·特征:仅有八种符号组成( > < + - . , [ ] )

参考:

【从零开始学CTF】3、CTF中常见的编码和加密

CTF中那些脑洞大开的编码和加密

了解更多脑洞大开的编码和加密:

CTF中那些脑洞大开的编码和加密 

你可能感兴趣的:(常见编码和加密)