base家族编码
plaintext(明文):hello,world.123456
base16: 68656C6C6F2C776F726C642E313233343635
特征:大写字母(A-Z)和数字(0-9),不用‘=’补齐。
base32: NBSWY3DPFR3W64TMMQXDCMRTGQ3DK===
特征:大写字母(A-Z)和数字(2-7),不满5的倍数,用‘=’补齐。
(重点)base64: aGVsbG8sd29ybGQuMTIzNDY1
特征:大小写字母(A-Z,a-z)和数字(0-9)以及特殊字符‘+’,‘/’,不满3的倍数,用‘=’补齐。
base58: 2smDFYXWKE8vc8XA8dadEYcSqcQb
特征:相比Base64,Base58不使用数字"0",字母大写"O",字母大写"I",和字母小写"l",以及"+"和"/"符号,最主要的是后面不会出现'='。
base85: BOu!rDst>tGAhM<A1fSl1GgsI
特征:特点是奇怪的字符比较多,但是很难出现等号
base91: TPwJh>go2Tv!,aRA2IbLmA
特征:由91个字符(0-9,a-z,A-Z,!#$%&()*+,./:;<=>?@[]^`{|}~”)组成
不支持中文。
base100: 👟👜👣👣👦📦💳💃👮👦👩👣👛🐥🐨🐩🐪🐫🐬🐭
特征:一堆Emoji表情
MD5、SHA1、HMAC、NTLM加密
1.MD5
特征:有固定长度,一般是32位或者16位
由数字“0-9”和字母“a-f”组成
plaintext:hello,world.123456
md5(hello,world.123456,32) = 5189503aae1b1c0a6fbf7ea9e3128ab0
md5(hello,world.123456,16) = ae1b1c0a6fbf7ea9
2.SHA1
特征:40位十六进制数
plaintext:hello,world.123456
sha1(hello,world.123456)= 0179303b8f08fbc3d16cd23a4be5828790e12375
3.HMAC
特征:和MD5类似,但是有秘钥
4.NTLM
特征:是Windows的哈希密码
AES、DES、RC4、Rabbit、3DES型加密(非对称加密)
主要是在base64基础上引入密钥
Unicode编码
特征:用两个字节来编码一个字符,字符编码一般用十六进制来表示
plaintext:hello,world.
&#x [hex]:hello,world.
&# [hex]:hello,world.
\u [hex]:\U0068\U0065\U006C\U006C\U006F\U002C\U0077\U006F\U0072\U006C\U0064\U002E
\u+ [hex]:\U+0068\U+0065\U+006C\U+006C\U+006F\U+FF0C\U+0077\U+006F\U+0072\U+006C\U+0064\U+002E
HTML实体编码
特征:
- 开始与结束符号:HTML实体通常以
&
符号开始,以;
符号结束。 - 命名实体:一些常用的字符有特定的名字,例如
<
代表小于号<
,>
代表大于号>
,&
代表和号&
。 - 数字实体:可以通过字符的Unicode码点来表示,使用
&#
后跟数字(十进制或十六进制),例如<
或<
都表示小于号<
plaintext:hello,world.
十进制:hello,world.
十六进制:hello,world.
Escape、Unescape编码
escape(转义):
特征:通常通过在字符前添加特定的前缀(如反斜杠
\
)或将字符转换为基于某种规则的编码(如 URL中的
%
编码)
unescape(反转义):
特征:识别特定的转义模式,并将其转换回原始字符
plaintext:hello,world.
密文:%u0068%u0065%u006c%u006c%u006f%uff0c%u0077%u006f%u0072%u006c%u0064%u002e
版权归原作者 承诺之时 所有, 如有侵权,请联系我们删除。