CTF中的密码学¶
现代密码学前置知识¶
常用工具¶
通用工具¶
CyberChef
Hashcat
John the Ripper
sage¶
代数运算、因数分解、椭圆曲线计算
算力一般低于在线网站 factordb
python¶
最常用的工具,也最具有普适性
常用函数库:
math
:基本数学运算。random
和secrets
:随机数生成。hashlib
:计算散列值。pycryptodome
:实现对称加密和非对称加密算法。gmpy2
:
yafu¶
基于python的工具,常用来在整数域内进行
chatgpt¶
用于辅助作用,而非直接参与密码学核心计算
编码与转换¶
Base64
URL编码
Hex编码
相关工具
随机数与伪随机数¶
随机数生成原理与伪随机数预测
对称加密¶
使用相同密钥进行加密和解密
优点:高效快速,适合处理大数据
缺点:密钥管理困难
AES(高级加密标准)¶
加密模式:ECB、CBC、CFB、OFB、GCM
分组长度固定为128位,密钥长度为128、192、256位
DES(数据加密标准)¶
分组长度为64位,密钥长度为56位
安全性不足,易受暴力破解,常用于历史遗留系统
3DES(三重数据加密标准)¶
使用三个不同的DES密钥,提高安全性;但性能较差
Blowfish¶
分组长度为64位,密钥长度1-448位,速度快且灵活
常用于密码保护工具。
非对称加密¶
一对密钥,公钥加密,私钥解密。
优点:密钥分发简单
缺点:计算效率较低
算法¶
RSA(Rivest–Shamir–Adleman)¶
基于的数学困难问题:基于大整数因数分解的困难性
ECC(椭圆曲线密码学)¶
基于的数学困难问题:椭圆曲线离散对数问题(ECDLP)
ElGamal¶
由DH(Diffie-Hellman密钥交换)产生的加密算法
常见攻击¶
RSA-直接分解¶
RSA-低密度指数攻击¶
RSA-维纳攻击¶
散列密码¶
前置知识¶
抗碰撞安全性和不可逆安全性
具体算法¶
MD5
SHA系列
碰撞与破解¶
生日攻击、彩虹表
工具与脚本实现
后量子密码学¶
背景:量子计算对传统加密算法的威胁
基于格的密码学(如NTRU、LWE)
哈希签名方案
代码密码学
-
- 常用解密工具(如CyberChef、Hashcat、John the Ripper等)
- 编写自己的脚本(Python与常用密码库)
- 自动化脚本化破解方法
- 案例分析
- 国内外经典CTF比赛的密码学题目解析
- 解题流程与思维分享