🎊crypto阶段学习
2023-8-13
| 2023-8-22
0  |  0 分钟
type
status
date
summary
password
category
slug
icon
🪐
密码阶段学习
 
一、知识进行针对性学习+写博客
二、刷题训练
三、打比赛,比赛复现
 
总结:
集训整个过程重点主要是对现代密码知识进行针对性学习,整个学习流程是学习原理(看文献),写博客总结,按照小师傅给的题单进行训练,然后去nss上搜相关知识点的题目练手;打比赛
比赛反思:
  • 前期自己写代码特别困难,后期尝试自己写脚本
  • 审代码能力还需要提高
  • 平常训练的都是一些常见的题型,对于新的题型,和改编的题还需要提高
  • 不会自己找文献,看的文献太少
  • 有部分知识点理解不是很深刻
  • sage文档

数学

数论
整除理论
了解
  • 素数
  • 合数
  • 因数
  • 倍数
  • 整除
掌握
  • 一分解定理
  • 裴蜀定理
  • 扩展欧几里得定理
  • 算数基本定理等基本定理
同余理论
(了解同余、原根、底数、指数、平方剩余、同余式、同余方程等基本概念,掌握欧拉定理、费马小定理、中国剩余定理、二次互反律、威尔逊定理等基本定理)
连分数理论
(了解连分数、无穷级数等基本概念,熟悉最佳有理数逼近、循环连分数展开、佩尔方程求解等运算过程)
不定方程
了解低次代数曲线所对应的不定方程的基本模型,熟悉二元一次不定方程、多元一次不定方程、掌握通过代数恒等变化、不等式估算、同余法、构造法、无穷递降法等常用的不定方程求解方法)
数论函数
了解欧拉函数、莫比乌斯函数、单位函数、恒等函数、除数函数等常用函数,掌握莫比乌斯反演、狄利克雷卷积等常用方法)
 
抽象代数
群论
群论(熟悉群代数结构,掌握群相关性质及其运算律)
环论
环论(熟悉群代数结构,掌握环相关性质及其运算律)
域论
域论(熟悉群代数结构,掌握域相关性质及其运算律)
格论
格论(熟悉格代数结构,掌握格相关性质及其运算律)
线性代数
线性代数(熟悉向量空间代数结构,掌握向量相关性质及其运算律)
逻辑学、几何学、拓扑学、泛函分析、概率论、数理统计等其他数学分支
 

古典密码学

古典密码
恩尼格玛机
古典密码出题
猜加密算法
特征检索
(如密文字符集中存在标志性的特殊字符)
题目暗示
(如题目名称、题目描述中出现了对加密算法的隐喻)
恢复出密钥
爆破(针对密钥空间较小的代换或置换密码,如栅栏、移位等)
数理统计(针对密钥空间较大的代换密码,如仿射、维吉尼亚等)
 
 

现代密码学

对称密码学、非对称密码学、哈希函数和数字签名

对称密码学

序列密码(流密码)
原型:一次一密
拓展:多次一密,XOR(异或运算加密)
伪随机数生成器
线性同余生成器(LCG)
 
六种题型+拓展:二元LCG+三元LCG
线性反馈移位寄存器(LFSR)
 
伪随机数生成算法
MT19937(梅森旋转算法)
分组密码(块密码)
分组模式
ECB,CBC,CFB,OFB,CTR
DES
3DES
AES
SM4

非对称密码学

RSA
ECC
DH(Diffie-Hellman密钥交换算法)
大整数分解问题
针对模数的攻击:如Pollard’s p -1算法(p-1光滑)、Williams’s p + 1(p+1光滑)、试除法(|p-q|过大)、费马分解(|p-q|过小)、共模攻击、模不互素攻击等。
针对公钥的攻击:如小公钥指数攻击、低加密指数广播攻击等。
针对私钥的攻击:如Wiener’s attack(基于连分数)、私钥低位泄露攻击等。
Coppersmith & LLL相关攻击:如已知m高位攻击、已知p高位攻击、Coppersmith’s short-pad attack、Boneh and Durfee attack等。
结合Oracle的攻击:有时题目当中除了提供给选手参数之外还会提供一个加密/解密Oracle,结合Oracle可以衍生出更多种攻击形式,如针对加密Oracle的公钥泄露攻击(选择明文),针对解密Oracle的RSA LSB parity Oracle攻击(选择密文)
离散对数求解问题
DLP攻击算法
Pohlig-Hellman algorithm(针对阶n是光滑且仅有小素因子)
Pollard’s Kangaroo algorithm(基于随机步)
Pollard’s Rho algorithm(基于Miller-Rabin算法,递归求解)
小步大步法(Baby-step giant-step,中间相遇攻击的思想)
ECDLP类问题
针对E(Fp)=p(Frobenius轨迹t=p+1−E(Fp)=1)的上非正规椭圆曲线的Smart’s attack。
针对p|q+1−E(Fq)(Frobenius轨迹t是p的倍数)的超奇异椭圆曲线的MOV攻击(借助Tate pairing或者Weil pairing)。
基于格的计算问题
NRTU格密码
隐子集和问题(HSSP)
隐藏数问题(HNP)
隐线性组合问题(HLCP)
LWE问题
GGH加密
 
 
 

数字签名

SM2数字签名
DSA数字签名
基于各种DSA的HNP问题
 

哈希函数

哈希碰撞
同谋碰撞攻击:生成任意两个不同的消息和x和y,使得哈希值f(x)=f(y)
 
 
刷题
Gröbner basis | Miao-25 Blog
Franklin–Reiter相关消息攻击 | Miao-25 Blog
DHKE | Miao-25 Blog
New attacks on RSA | Miao-25 Blog
循环移位异或加密 | Miao-25 Blog
RSA密钥格式 (yuque.com)
crypto交互题 (yuque.com)
 
 
 
🪐
下一阶段
  • 格密码大概过完
  • 数学(线性代数)
  • 多复现比赛
  • 文献
  • 脚本
  • sage文档
 
 
 
 
日常学习
WMCTF2023基于 LSTM 的智能合约可重入攻击漏洞检测系统
目录