加密与编码识别

加密与编码识别
知闲加密与编码识别指南
第一部分:加密算法
哈希算法(不可逆)
1. MD5
- 特征:32位十六进制字符(128位)
- 示例:
5d41402abc4b2a76b9719d911017c592 - 可逆性:不可逆,可碰撞/彩虹表
- 安全性:已破解,不推荐使用
- 常见位置:旧系统密码存储、文件校验
2. SHA-1
- 特征:40位十六进制字符(160位)
- 示例:
aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d - 可逆性:不可逆,已找到碰撞
- 安全性:不安全
- 常见位置:Git提交、旧SSL证书
3. SHA-256
- 特征:64位十六进制字符(256位)
- 示例:
2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 - 可逆性:不可逆,目前安全
- 安全性:安全
- 常见位置:区块链、密码存储、数字签名
4. SHA-512
- 特征:128位十六进制字符(512位)
- 示例:
9b71d224bd62f3785d96d46ad3ea3d73319bfbc2890caadae2dff72519673ca72323c3d99ba5c11d7c7acc6e14b8c5da0c4663475c2e5c3adef46f73bcdec043 - 可逆性:不可逆,目前安全
- 安全性:安全
- 常见位置:Linux密码、高安全性应用
5. bcrypt
- 特征:以
$2a$、$2b$或$2y$开头,60字符 - 示例:
$2a$10$N9qo8uLOickgx2ZMRZoMyeIjZAgcfl7p92ldGxad68LJZdL17lhWy - 可逆性:不可逆
- 安全性:非常安全(自适应)
- 常见位置:现代Web应用密码存储
6. NTLM Hash
- 特征:32位十六进制字符
- 示例:
8846f7eaee8fb117ad06bdd830b7586c - 可逆性:不可逆,可彩虹表攻击
- 安全性:较弱
- 常见位置:Windows系统
7. LM Hash
- 特征:32位十六进制,通常以
AAD3B4开头 - 示例:
aad3b435b51404eeaad3b435b51404ee - 可逆性:不可逆,极易破解
- 安全性:非常弱
- 常见位置:旧版Windows系统
对称加密算法(可逆,需要密钥)
1. AES
- 特征:密文看起来像随机数据,Base64编码
- 示例:
U2FsdGVkX1+WvJ6VYwRL9VhX82Vk8L/pVD5TwuRtkVM= - 模式识别:CBC模式通常有IV,ECB模式无IV
- 可逆性:可逆,需要密钥
- 常见位置:文件加密、数据库加密、HTTPS
2. DES/3DES
- 特征:块大小为8字节,Base64编码
- 示例:
k3bJqO6mR1A=(DES) - 可逆性:可逆,需要密钥
- 安全性:DES已破解,3DES逐渐淘汰
- 常见位置:旧系统、金融系统
3. RC4
- 特征:流加密,无固定块大小
- 示例:随机字节流
- 可逆性:可逆,需要密钥
- 安全性:已破解
- 常见位置:旧版SSL/TLS、WEP
非对称加密算法(可逆,需要公钥/私钥)
1. RSA
- 特征:密钥以
-----BEGIN RSA PRIVATE KEY-----格式 - 示例:长Base64字符串
- 可逆性:可逆,需要私钥
- 常见位置:SSL证书、SSH密钥、数字签名
2. ECC(椭圆曲线加密)
- 特征:密钥较短,以
-----BEGIN EC PRIVATE KEY-----格式 - 示例:较短的Base64字符串
- 可逆性:可逆,需要私钥
- 常见位置:现代SSL证书、加密货币
特殊加密格式
1. JWT(JSON Web Token)
- 特征:三部分用点分隔,每部分Base64Url编码
- 示例:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c - 可逆性:头部和载荷可解码,签名需要密钥验证
- 常见位置:Web API认证
2. OpenSSL加密数据
- 特征:以
Salted__开头,Base64编码 - 示例:
U2FsdGVkX1+... - 可逆性:可逆,需要密码
- 常见位置:OpenSSL加密文件
第二部分:常见编码
1. Base64编码
- 特征:A-Z, a-z, 0-9, +, /, =(填充)
- 示例:
SGVsbG8gV29ybGQ= - 识别技巧:长度是4的倍数,常以=或==结尾
- 常见位置:邮件附件、HTTP认证、图片数据
2. Base32编码
- 特征:A-Z, 2-7, =(填充),不区分大小写
- 示例:
JBSWY3DP - 识别技巧:只有大写字母和数字2-7
- 常见位置:DNSSEC、双因素认证
3. Base16(Hex)编码
- 特征:0-9, A-F(或a-f)
- 示例:
48656c6c6f - 识别技巧:纯十六进制字符,长度通常为偶数
- 常见位置:颜色代码、内存地址、网络数据包
4. URL编码
- 特征:%后跟两个十六进制数字
- 示例:
%48%65%6c%6c%6f或Hello%20World - 识别技巧:包含大量%符号
- 常见位置:URL参数、表单数据
5. HTML实体编码
- 特征:
&实体名;或&#实体编号; - 示例:
<script>或<script> - 识别技巧:以&开头;结尾
- 常见位置:HTML页面、防XSS
6. Unicode编码
- 特征:
\u后跟4个十六进制数字 - 示例:
\u4f60\u597d(中文”你好”) - 识别技巧:
\u前缀 - 常见位置:JavaScript、JSON、Java
7. UTF-8编码
- 特征:多字节序列
- 示例:
你好=\xE4\xBD\xA0\xE5\xA5\xBD - 识别技巧:中文通常3字节,emoji通常4字节
- 常见位置:所有现代文本处理
8. 双重URL编码
- 特征:对%符号再次编码
- 示例:
%2548%2565%256c%256c%256f - 识别技巧:包含
%25(%的URL编码) - 常见位置:WAF绕过、安全测试
9. URL路径编码
- 特征:路径中的特殊字符编码
- 示例:
/path/%2E%2E%2F%2E%2E%2Fetc%2Fpasswd - 识别技巧:路径中包含%编码
- 常见位置:路径遍历攻击
10. ROT13编码
- 特征:字母移位13位,只影响字母
- 示例:
uryyb(hello) - 识别技巧:字母被替换,数字符号不变
- 常见位置:论坛剧透、简单混淆
11. ASCII编码
- 特征:十进制或十六进制表示
- 示例:
72 101 108 108 111或0x48 0x65 0x6c 0x6c 0x6f - 识别技巧:数字表示字符
- 常见位置:低级编程、调试
12. MIME编码
- 特征:
=?charset?encoding?encoded text?= - 示例:
=?utf-8?B?SGVsbG8gV29ybGQ=?= - 识别技巧:以
=?开头?=结尾 - 常见位置:电子邮件头
13. Uuencode
- 特征:以
begin开头,end结尾,每行以字符数开头 - 示例:
begin 644 file.txt |
- 识别技巧:明显的begin/end标记
- 常见位置:旧式邮件附件
14. XXencode
- 特征:类似Base64,但使用不同字符集
- 示例:
CJjPM0pM+JjP - 识别技巧:使用
+-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz - 常见位置:旧系统文件传输
15. Quoted-Printable
- 特征:非ASCII字符以=后跟两个十六进制数字表示
- 示例:
=48=65=6C=6C=6F - 识别技巧:包含大量=符号
- 常见位置:电子邮件
渗透测试实用技巧
快速识别流程
# 检查常见编码类型 |
在线工具推荐
- 综合工具: CyberChef (https://gchq.github.io/CyberChef/)
- 哈希识别: https://hashes.com/en/tools/hash_identifier
- 编码解码: https://www.urldecoder.org/
重要安全提示
- 永远不要在未知网站解密敏感数据
- 使用本地工具或可信的在线工具
- 注意法律和授权范围
- 加密数据需要密钥,不要尝试暴力破解生产系统
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果
