常见密码类型解析与实用解码指南

由 敢让世界种满石楠花吗(¬_¬) 发布

一、base家族编码

核心特征:通过等号与字符类型快速定位

  1. base64
    特点:密文尾部常含1-2个等号(如YWRtaW4=, 明文过短时无等号)
    原理:将3字节转为4个6位字节,不足补零后=填充,如YWRtaW4tcm9vdA==(admin-root)

  2. base32
    特点:等号数量≥3个,密文长度常为10的倍数。
    如GEZDGNBVGY3TQOJQGE======

  3. base16
    特点:无等号,由数字和大写字母组成且数字占比高(如61646D696E→admin)

  4. base58
    特点:无等号,排除0、O、I、i及+/符号(比特币常用,如6tmHCZvhgfNjQu)

  5. base85/base100
    base85:含@#等特殊符号,极少出现等号。
    base100:密文为Emoji表情(如👘👛👤👠👥)

二、ROT密码

核心逻辑:按固定位数偏移ASCII值

  1. ROT5:仅处理数字,当前数字+5循环移位(如0→5,1→6,123→678)
  2. ROT13:仅处理字母,字母+13位(A→N,B→O,ABC→NOP)
  3. ROT18:数字按ROT5、字母按ROT13组合处理(如A1B2→N6O7)
  4. ROT47:处理数字/字母/符号(ASCII值+47,如z→K,0→_)

三、凯撒密码与变种

  1. 标准凯撒
    原理:字母按秘钥位移(如秘钥3时A→D)
    特征:flag格式前常见4字母(如flag{...}),SL格式前2字母。

  2. 变异凯撒
    破解:需脚本穷举位移量

    ciphertext = 'afZ_r9VYfScOeO_UL^RWUc'
    for j in range(26):
    print(f'秘钥{j}:' , ''.join(chr(ord(i)+j) for i in ciphertext))

四、栅栏密码

  1. 普通栅栏
    原理:将明文分N组,按组序取字符重组

    123456789abc分3组→15926a37b48c

  2. W 型栅栏
    原理:按W形状排列明文,按列取字符

    123456789分3栏→159246837

五、维吉尼亚密码

特征:需字母密钥,如密文fmcg{iglmq_wptd_123},当凯撒密码无法解密时优先考虑,密钥需通过频率分析等方法破解。

六、特殊密码类型与解码工具

密码类型 特征
摩斯密码 由.-组成(如.-.. --- ...-)
培根密码 仅含大写AB(如ABABAB)
与佛论禅 佛语(如南无阿弥陀佛)
百家姓密码 百家姓字符串(如赵钱孙李)
Uuencode 二进制转文本编码

七、补充密码类型与特征

  1. MD5哈希
    特征:32位16进制字符串
    79cfeb94595de33b3326c06ab1c7dbda,不可逆,常用于文件校验。

  2. Rabbit密码
    特征:以U2FsdGVkX1开头,含=+/符号(如U2FsdGVkX18a...)。

  3. JS相关编码
    JJEncode:含大量$、_符号及自定义变量。
    Jother/JSFuck:以!+[]()等符号组合编码,可通过F12解密。
    Brainfuck:有> < + - . , [ ]八种符号,有大量+号

  4. Quoted-printable
    特征:等号后跟两位十六进制数(如=E7=94=A8对应汉字“用”)。

  5. ook密码
    特征:有大量ook

八、实用破解流程建议

  1. 观察等号
    有等号:优先base64/base32(等号≥3个为base32)
    无等号:检查字符组成数字+大写字母→base16,大小写混合→base58,特殊符号→base85

  2. 字符类型判断
    纯数字→ROT5,纯字母→ROT13
    数字+字母→ROT18,含符号→ROT47

  3. 冷门密码处理
    base92、Rabbit等需专用工具包,JS类编码可通过在线平台或F12解密。


0条评论

发表评论